Есть ли у кого-нибудь опыт связи панели Weintek с ПЛК 150 по драйверу CODESYS V2 (Symbolic Addressing)?
Хороший плюс - в EasyBuilderPro можно использовать файл переменных проекта Codesys/
Есть ли у кого-нибудь опыт связи панели Weintek с ПЛК 150 по драйверу CODESYS V2 (Symbolic Addressing)?
Хороший плюс - в EasyBuilderPro можно использовать файл переменных проекта Codesys/
Всем добрый день.
Возник такой же вопрос. Корректно ли все будет работать через Symbolic Addressing? И импорт тегов из Codesys в EasyBuilder?
Тэги импортируются. Правда с ними еще кучу всего, но это ладно. А вот как с ними будет происходить работа? Нормально ли ПЛК отнесется к этому?
Получается, что при таком способе нет необходимости создавать в конфигурации ПЛК модбас устройство? А обращаться напрямую, например, к созданным глобальным переменным.
Жаль, что проверить на живой железке сейчас нет возможности. А то потом много переделывать придется.
Здесь, как настроить символьную конфигурацию в ПЛК в Codesys 2.3
https://www.youtube.com/watch?v=uqRzRgkYQ7I&t=38s
Здесь как настроить Панель, в видео смотреть примерно с 7 мин 40 сек, вместо протокола V3 (Codesys 3.5) включить V2 ( Codesys 2.3)
https://www.youtube.com/watch?v=z3lIr7cyWb4
А вообще в ПЛК на Codesys 2.3, слейв в конфигурации набирается просто копированием 2Byte и зажатием Ctrl+ V, на 5-20 секунд. А в панели просто добавить регистры с 4х 0 по 4х 50 (сколько надо). Это проще чем разбираться в символьной конфигурации.
Последний раз редактировалось kondor3000; 07.09.2024 в 23:54.
Спасибо. Пошел смотреть,разбираться. Возможно это будет все же удобнее, чем, организовывать retain переменные и их инициализацию. Ибо так и не нашел нормального способа их создания.
Ибо сейчас делаю так:
Создаю в Codesys глобальную переменную retain. Например, так:
USTAVKA: REAL := 20.0;
Далее в программе использую ее.
Но так же создаю переменную в модбас слэйве, например slave_USTAVKA
И далее идут хитрожопые действия.
При старте контроллера первым же циклом (и один раз) пишу из
USTAVKA --> в slave_USTAVKA
И далее постоянный блок
из slave_USTAVKA --> в USTAVKA
Если не делаю первоначальную инициализацию, то переменная обнуляется.
Вообще то всё переменные в слейве и так retain. Достаточно их инициализировать 1 раз и всё.
А если она обнуляется, то либо из программы, либо мастером она перезаписывается, а должна только читаться. Даже если в панели есть запись уставки, то запись происходит только при вводе числа в дисплей и остальное время читается из слейва и при перезагрузке тоже только читается.
Вот скрин, создан загрузочный проект, в переменные слейва записаны числа 1 раз, ручками 1 Переменные в слейве.jpg
после перезагрузки по питанию, через 3 мин., все числа сохранились, в том числе ваша USTAVKA
Последний раз редактировалось kondor3000; 09.09.2024 в 19:12.
В этом и проблема.
Да, переменные слэва ретэйн. но их надо инициализировать. Вот, пример, когда это крайне неудобно.
Программа загружена в плк. Наладчик матерясь вводит полсотни уставок.
Проверяет алгоритм, и естественно возникают моменты, которые надо поправить.
Я правлю программу, наладчик ее заново загружает.... и вуаля-заново вводите полсотни уставок.
А как должно быть я знаю. Но почему то у ОВНА так не работает.
Есть возможность записать в файл на внутреннем флеш диске.
Ещё мне советовали использовать persistent переменные - они при изменении программы остаются без изменений, но их не успел попробовать.
По файлу делал так
https://www.cyberforum.ru/blogs/534277/blog7956.html
persistent не пробовал - поздно узнал даже такое слово.
Единственно, не знаю, имеется ли хоть одна из этих возможностей в ПЛК150, но проверить можете самостоятельно.
Ещё можете сделать программку на компьютере, которая считает Modbus переменные в виде дампа и потом обратно сможет из записать.
Последний раз редактировалось FPavel; 09.09.2024 в 20:20.
Спасибо! С сохранением в файл попробую, и про персистант надо почитать.
А в панели не очень люблю что то хранить, но как вариант - да.