This is topic Modbus чтение отрицательного значения из регистра in forum TRACE MODE 7 профессиональная версия / TRACE MODE 7 professional version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/59/t/000098.html

Posted by ViktorMaleika (Участник № / Member № 9669) on :
 
Здравствуйте.
После нового релиза снова поднимаю этот вопрос, надеюсь появилось адекватное решение, а не через канал call. У меня есть регистр modbus, к примеру holding 1, он отображает температуру от - 500 до 500 (что соответствует -50.0 до 50.0 градусов). Соответственно это 16 bit signed (int 16).Как правильно сделать источник, чтобы он отображал отрицательную температуру? Перепробовал все форматы (246). Каналы создавал типа int(16), uint(16), real. Всегда когда температура становится меньше нуля, показания начинаются от 65535 и на уменьшение.
 
Posted by Nico (Участник № / Member № 5342) on :
 
канал ANALOG на который заведен источник MODDBUS
c командой(305) R_1HReg или R_1InReg
далее сами масштабируете
 
Posted by ViktorMaleika (Участник № / Member № 9669) on :
 
Не работает. Вычитывается цифра в районе 65000. Если у вас работает, напишите пожалуйста что вы указываете в источниках (какой тип канала у вас выбран) и непосредственно в МРВ в свойствах аналогового канала какой формат выбран
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
Можно сразу читать каналом Analog (см. Справочная Система Источники - Net/RS - Modbus - Команды)

ANALOG INPUT c (56, nBits)=Float или Double – чтение 1 регистра (16 бит). Полученное значение интерпретируется как целое без знака (если нижний предел (27, LL) канала ANALOG неотрицательный) или как целое со знаком (если (27, LL) < 0).
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2