Показано с 1 по 7 из 7

Тема: ООП в CODeSys_v3

  1. #1

    По умолчанию ООП в CODeSys_v3

    Добрый день. Для реализации своей задачи решил воспользоваться нововведениями CoDeSys, а именно ООП. Задачка заключается в отображении и изменении на панели СПК207 задания частоты частотника VFD Delta. Как известно, в этих частотникак, запись и чтение частоты F (протокол Modbus) происходит в разных регистрах, поэтому организовал ФБ "PCh_VFD" на входы которого планировал завести регистры чтения частоты, выходы - на регистры записи частоты (все типа word), а в теле программы и визуализации планировал обращаться уже к свойству ФБ частота "F" типа real (между входами/выходами ФБ и его свойством организовал преобразование word_to_real и обратно).
    Однако, столкнулся с таким моментом: невозможно привязать к свойству "Text variable" визуального элемента свойство экземпляра функционального блока (в моём примере, почему-то?, св-во "F" не видимо, однако, локальные переменные ФБ rF, fH, которые должны быть доступны только внутри ФБ хорошо видны в ассистенте ввода). Кстати, очень не хватает вертикальной полосы прокрутки в ассистенте ввода (место выделено фиолетовым).
    В общем, пока не сообразил, как сделать, чтобы одна и та же переменная "частота F" читалась и записывалась в разных регистрах.
    Изображения Изображения

  2. #2
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    Вам лучше в этой ситуации не выпендриваться или используете вместо свойства метод, либо заведите еще одну отдельную переменную, в которую будете постоянно передавать значение свойства

  3. #3

    По умолчанию

    ООП !!! Что это такое, и, действительно ли нужная и полезная штука ?
    Методы,классы,свойства...Как-то не сразу всё доходит. Или их назвать по-другому,и
    станет понятнее. В чём отличие от функционального блока с определёнными входными
    и выходными переменными?

  4. #4
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    ооп необходимо для сокращения кода однотипных блоков, один раз написал, работает у всех, хотя и в содержании блоков могут быть индивидуальные особенности

    Лучше конечно почитать про ООП у языков высокого уровня, например по Яве

  5. #5

    По умолчанию

    Наверно как-то так, но всё равно не сильно понимаю. Основное в этом подходе, сделать комфортнее работу
    программисту или облегчить скомпилированный код программы для уменьшения нагрузки на ПЛК? И,например,если напишу классически
    функциональный блок с множеством входов,где число, поданное на первый вход будет задавать тип действий (01-управлять светом,02-управлять
    температурой,03-охраной),на второй вход подам число - номер комнаты,а на третий какой нибудь параметр (яркость,длительность...).А сам функциональный блок уже разберётся
    что ему делать в конкретном месте программы,где он поставлен,в зависимости от входных задач. Это будет объектное программирование или нет?

  6. #6
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    нет, из вышесказанного, есть пчв, у него будет старт, стоп, обратная связь и т.д. - это общая часть, есть овен,данфос и кто нибудь еще, у каждой компании есть какие то нюансы. Экземпляры одного ФБ не сдделаешь, из-за некоторых особенностей каждого производителя, но общая часть не меняется, поэтому придется плодить кучу ФБ с незначительными отклонениями из-за особенностей. В ООП же берем класс, к нему добавляем потомков, с одними и теми же базовыми методами и свойствами, и добавляем в потомки только особенности каждого производителя. Это упростит работу программиста, ну и возможно нагрузку на процессор, но очень незначительную,мне кажется

  7. #7

    По умолчанию

    Думаю,что это очень удобно.Надо попробовать. Наверное удачным воплощением данного подхода можно считать PLCopen.
    Там на вход функционального блока подаётся только имя конкретного ПЧ или сервопривода из конфигурации,а все остальные входа остаются
    типовыми. Получается даже начинающий может подключить почти любое количество разных ПЧ за короткое время,используя всего несколько стандартных
    ФБ.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •