Просмотр полной версии : Задание значений аналоговых входов при отладке в режиме эмуляции ПЛК 154
Отлаживаю программу FBD в режиме эмуляции, target = PLC154 U-L.
Задаю входные значения на аналоговые входы (тип= U_0_10).
В режиме on-line в окне PLC_Conig задаю, например, значение входа=1, в окне PLC_Config справа от имени датчика высвечивается 1, а на схеме около входа отображается 1073741824. Похоже, во входной области Value представляется в формате DWORD.
Какие рекомендации ?
Филоненко Владислав
11.07.2008, 07:31
Не понятно, в каком формате Вы задаёте и показываете. Выложите проeкт, пожалуйста
Подскажите, пожалуйста, как технически загрузить проект ? какие файлы подцепить ?
Подскажите, пожалуйста, как технически загрузить проект ? какие файлы подцепить ?
открываете в codesys файл с расширением *.pro. определяете тип и настройки интерфейса связи с ПЛК (online/communication parameters). Затем проверяете подключение проводов и связываетесь с ПЛК (online/login)
Все это подробнее описано в руководстве на ПЛК
Отлаживаю программу FBD в режиме эмуляции, проект во вложении.
Задаю входные значения на аналоговые входы (тип= U_0_10).
В режиме on-line в окне PLC_Conig задаю, например, значение входа=1, в окне PLC_Config справа от имени датчика высвечивается 1, а на схеме около входа отображается 1073741824. Похоже, во входной области Value представляется в формате DWORD.
Какие рекомендации ?
Филоненко Владислав
15.07.2008, 08:52
Так всё правильно. Тип переменной - REAL, а в программе вы указываете физ. адрес. Компилятор не может разобраться, что это, DWORD, DINT или REAL и выводит в формате DWORD. Чтобы этого избежать, в области глоб. переменных создайте переменную типа REAL.:
aaa :REAL at %ID3.0;
А в программе используйте имя переменной, а не адрес.
Всем доброго времени суток. задача: нужно передать по modbus значение температуры. вроде бы тривиальная задача, но... столкнулся с проблемой. мне нужно передать 4 байта(REAL). но значение не явно переводится в число с плавающей точкой. это не проблема, но почему-то значение портится. по крайней мере я не нашел алгоритмов по которым происходит это преобразование. буду очень признателен за помощь.30396
Всем доброго времени суток. задача: нужно передать по modbus значение температуры. вроде бы тривиальная задача, но... столкнулся с проблемой. мне нужно передать 4 байта(REAL). но значение не явно переводится в число с плавающей точкой. это не проблема, но почему-то значение портится. по крайней мере я не нашел алгоритмов по которым происходит это преобразование. буду очень признателен за помощь.30396
И зачем Вам все эти АТ %
Делать так
30404
Результат
30405
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot