Вопрос. как передать с/на ИП320 переменные типа REAL?
Вопрос. как передать с/на ИП320 переменные типа REAL?
АУ! Кто-нибудь из уважаемых ГУРУ может объяснить если я на контроллере MODBUS slave создаю Float и завязываю к ней переменную типа REAL (температуру), а в ИП320 создаю двойной регистр с соответствующим номером, почему у меня в этом регистре какая-то фигня на панели отображается??
благодарю всех за супероперативную помощь
скачал новый конфигуратор для ИП320, попробовал, вроде пока с float проблем нет. Посмотрим что дальше будет
Протокол ModBus не поддерживает передачу переменных с плавающей точкой. Поступить можно следующим образом: Преобразовать real_to_word (dword) и умножить число на 10 в степени знаков после запятой. А в панели указать сколько знаков после запятой Вам необходимо отображать.
С преобразованием типов я уже вариант тоже опробовал. Это понятно как работает.
Насчет поддержки Modbus переменных с плавающей точкой не совсем понял...
Метод научного тыка с конфигуратором ИП320 версии 6.4f показал, что при записи в регистр Modbus(slave) - float переменной REAL, на панели, работающей в режиме мастер, все вполне корректно отображается (например real=41.5686971467 -> на панели в регистре видим 41.6) как тогда это объяснить?
Для ПЛК и TraceMode и панели. Работа с float для панели ведётся.
теперь новая беда...
вставил в регистры панели float. загрузил проект. ПЛК 150И.М.
Связь устанавливается при включении питания. какие-то регистры на первом экране частично считываются и отображаются . потом появляется надпись "потеря связи" и больше ничего добиться не могу. на тестовом примере с одним экраном и одной переменной float связь работала, все показывало. Ничего вроде не менял. параметры связи уже на 5 раз проверил.
Может это быть связано с проектом или чисто в связи дело?