Цитата
Для передачи дискретных значений подойдет:
-SNVT_Switch (составная переменная из полей state (0;1;-1) и value (0.0 - 100.0))
-SNVT_State(16) (16 бит каждый со своим значением)
-SNVT_State(32) (32 бит каждый со своим значением)
-SNVT_lev_disc (0;1;-1)
Вообще если в SCADA передаете, то SNVT_State самая удобная.
Также можно использовать любую переменную SNVT, которая по сути своей является integer, хоть SNVT_lev_percent хоть SNVT_temp_p, но предварительно вы пакуете в биты этой переменной значения bool средствами PLC, а распаковываете в SCADA. Но это если PLC и SCADA позволяют свободно работать с данными.
Пробовали все эти типы для дискрентых значений - результат один и тот же - при изменении параметра в контроллере Vista не получает новое значение по LONу. Если установить аналоговый тип (SNVT_temp_p, SNVT_lev_percent...) - то же самое. Но тут еще возникает вопрос как CARE пакует булевский тип в SNVT аналоговую переменную (в какие биты). Мы с хонивелом столкнулись в первый раз и не имеем представления о его возможностях по этой части...
Для анлог. величин как раз используются типы SNVT_temp_p и SNVT_lev_percent - тут все в порядке. Подозреваем что проблема все-таки в хонивеле, т. к. при сопряжении висты с другим оборудованием проблем раньше не было... Надеюсь на помощь...