Удалить на выходе ФБ
Вот уже проверил в работе 1 Работа блока.jpg и ещё Целое и REAL 1 Целое и REAL.jpg
Удалить на выходе ФБ
Вот уже проверил в работе 1 Работа блока.jpg и ещё Целое и REAL 1 Целое и REAL.jpg
Последний раз редактировалось kondor3000; 11.04.2024 в 15:46.
Вот что происходит
При нажатом Старт не работает
Давайте попробуем следующий вариант:
создадим всего один программный модуль на ST
Т.е. если измениться состояние бита в панели, то это состояние сдублируется в output-регистр ПЛК.Код:IF Start_tuning <> Start_tuning1 THEN Start_tuning1 := Start_tuning; END_IF
Огромное всем спасибо, нашел проблему
kondor3000 натолкнул на мысль, что, проблема в конфликте каких то параметров и регистров
Удалил все, кроме старт тюнинг и сет поинт, все работает
начал потихоньку добавлять оставшиеся параметры
В итоге, при добавлении значения выходной нагрузки возникала эта проблема
Решением оказалось создание нового модбас девацса и добавление этого параметра как глобального именно туда
И еще только потом заметил, что у меня уже был создан такой модбас девайс, но я не обратил на это внимание…
Еще раз всем большое спасибо, без вас бы точно не справился.
Это хорошо, что разобрались. Только передавать лучше не по 1 биту, а по 8 или по 16.1 Запись регистра.jpg
Для этого, всего то надо поменять в ФБ тип BOOL на тип BYTE или WORD.
Если сделаете WORD, то и 8 Bit (BYTE) надо заменить на Registr (WORD адрес например 256). А в панели вместо бита PSB256 используйте регистр PSW256, бит 0.....15
Последний раз редактировалось kondor3000; 12.04.2024 в 18:43.
А чем это лучше? Будет стабильнее работать? И не совсем понял, как Registr будет передавать булевые значения (или он будет передавать все 8 или 16 бит, но на панели будет читаться только 1 конкретный?). Где можно об этом почитать?
И еще подскажите, какой лучше язык изучать? Продолжить изучать ФБ или лучше учить тот же ST?
Последний раз редактировалось vvsluv; 15.04.2024 в 09:02.
А вы попробуйте сделать, хоть в эмуляции и посмотрите что разные биты дают разные числа, если вы в панели или в ПЛК назначите 3 бит, то он и сработает.
По поводу полезности. Сколько времени уйдёт на передачу 16 переменных и сколько на передачу одной? Сами подумайте.
А если у вас 160 булевых например, передать 160 шт или 10 регистров, есть разница?
ФБ- это функциональный блок, он может быть на любом языке. Вы уже поняли как сделать ФБ, надеюсь.
А язык конечно надо учить ST, это самый продвинутый язык для программирования ПЛК.
Начните со справки по F1 в Codesys. Примеры на сайте обычно выложены на 2 языках, CFC(FBD) и ST, ну и Гугл в помощь.
Последний раз редактировалось kondor3000; 15.04.2024 в 13:10.
Понял. Поизучаю.. спасибо за помощь!