Точно, не внимателен был.
Еще раз благодарю за помощь!
Вид для печати
Скажите пожалуйста, как в языке LD вызывается функция? С ФБ все ясно, создал, добавил через команду "Вставить->Функциональный блок". А с функцией как? В мануале вообще как-то непонятно написано :(
А какая разница?
Берете элемент с EN и вставляете, а там хоть функция, хоть ФБ.
https://www.youtube.com/watch?v=mdpbbRXIGj4
Ну вот, созданы у меня ФБ pump и функция A1. Я нажимаю "Вставит функциональный блок", в списке Фб есть, а функции нет.
Вложение 33130
UPD, ясно, спасибо.
Доброго времени суток!
Вот, использовал Ваш каскад на выходе и применил ПИД из рекомендованной библиотеки. Вроде не ругается. На неделе попробую вживую прогнать ПЛК73 на экспериментальном реакторе.
Вложение 33162
С уважением,
Контроллер ПЛК150 + панель СП307. Почему при использовании обмена по RS485 в основной программе, перестает идти опрос устройств ModBus в Конфигурации ПЛК? Как правильно программно опрашивать панель, так что бы не прекращался обмен с ней в Конфигурации ПЛК?
Опрашиваю один раз при включении
функция GET_POINT() считывает таблицу данных из панели по ModBus и после этого прекращается обмен в конфигурации ПЛК, все переменные объявлены как глобальные, потому что если объявляю их в функции, то не считывает таблицу.Код:IF POINT_FLAG THEN
IF GET_POINT() THEN POINT_FLAG:=FALSE;END_IF
END_IF
Код функции GET_POINT:
Подскажите как правильно "положить трубку" после опроса:) COM_SERVICE11.Delay; для этих целей добавил, но не помогло.
В сети один мастер - ПЛК. А то что в программе при открытии порта "ручками" затыкается автоматический обмен это не значит что мастера в сети 2, а скорее всего что такое использование не предусмотрено, а как запустить автоматический обмен после того как он заткнулся - я не знать)Цитата:
Продолжим издеваться, не приходило в голову что два мастера в сети ( конфигуратор и библиотечный) быть не должно?
В панели помимо переменных которые нужно считывать постоянно как это делает конфигуратор, есть еще большая таблица в ПЗУ(массив регистров PFW), которую нужно считывать очень редко (при загрузке, либо когда ее изменили в процессе работы). Даже один процесс задания переменных в количестве 50-100шт не очень прельщает. Может можно как то считать в массив в конфигураторе?