Вход

Просмотр полной версии : Задание значений аналоговых входов при отладке в режиме эмуляции ПЛК 154



Hobbies
10.07.2008, 16:40
Отлаживаю программу 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кт, пожалуйста

Hobbies
11.07.2008, 09:43
Подскажите, пожалуйста, как технически загрузить проект ? какие файлы подцепить ?

Kirill
11.07.2008, 09:47
Подскажите, пожалуйста, как технически загрузить проект ? какие файлы подцепить ?

открываете в codesys файл с расширением *.pro. определяете тип и настройки интерфейса связи с ПЛК (online/communication parameters). Затем проверяете подключение проводов и связываетесь с ПЛК (online/login)

Все это подробнее описано в руководстве на ПЛК

Hobbies
15.07.2008, 08:41
Отлаживаю программу 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;

А в программе используйте имя переменной, а не адрес.

Hobbies
15.07.2008, 16:12
Владислав, спасибо -)

rmb
04.04.2017, 08:50
Всем доброго времени суток. задача: нужно передать по modbus значение температуры. вроде бы тривиальная задача, но... столкнулся с проблемой. мне нужно передать 4 байта(REAL). но значение не явно переводится в число с плавающей точкой. это не проблема, но почему-то значение портится. по крайней мере я не нашел алгоритмов по которым происходит это преобразование. буду очень признателен за помощь.30396

rmb
04.04.2017, 12:16
__________

petera
05.04.2017, 13:20
Всем доброго времени суток. задача: нужно передать по modbus значение температуры. вроде бы тривиальная задача, но... столкнулся с проблемой. мне нужно передать 4 байта(REAL). но значение не явно переводится в число с плавающей точкой. это не проблема, но почему-то значение портится. по крайней мере я не нашел алгоритмов по которым происходит это преобразование. буду очень признателен за помощь.30396

И зачем Вам все эти АТ %

Делать так
30404

Результат
30405