Как можно организовать программно (или сконфигурировать) работу с всеми дискретными выходами через переменную типа word, uint ? (для PLC 100)
Как можно организовать программно (или сконфигурировать) работу с всеми дискретными выходами через переменную типа word, uint ? (для PLC 100)
А не подскажете как можно перевести переменную word в массив boolean на 16 элементов?
Последний раз редактировалось Малышев Олег; 07.02.2007 в 14:22.
Область памяти в ПЛК, которая отвечает за ввод-вывод адресуется через т.н. МЭК адреса. %I... - адреса входов %Q... - адреса выходов, %IX0.0.0 - переменная типа bool (один битная )со смещением 0. %IX0.0.1 - тоже со смещением один бит. Кодесис поддерживает операции с использованием вместо переменных таких адресов. Вы можете написать %QX1.1:=%IX0.0 AND %IX0.1; Т.е. на второй бит первого байта области вывода записать результат операции "И" над битами со смещением 0 и 1 в области ввода.
Всем спасибо поразрядная адресация (my_var.x: где x - число -номер бита) - то что нужно.
Если выход/вход ПЛК типа dword, возможно ли эти входы/выходы интерпритировать в виде массива типа bool без конструкции вида my_var.x:=y ? а сразу перевести dword в массив?