То есть на всех 8 входах перебиваю регистры с 256 по 263. А второй блок расширения также? И почему в конфигураторе 8АС значения выше установленной верхней границы?
Вид для печати
То есть на всех 8 входах перебиваю регистры с 256 по 263. А второй блок расширения также? И почему в конфигураторе 8АС значения выше установленной верхней границы?
Именно так. Для первого входа читаете регистр 256, для второго -257, для третьего - 258 и так далее. Чтобы разобраться, что происходит с датчиками, я бы рекомендовал померить ток в измерительной цепи, тогда можно будет понять, правильно работает блок, или нет.
Еще один вопросик, для каждого переключателя на панели в контроллере нужно создавать отдельный подэлемент 8бит? или в настройках СП-307 нужного где-то указать какой именно бит считывать?
Совершенно не обязательно. Нужно использовать 1 элемент для 8 битовых переключателей. Можно адресоваться к отдельным битам, битовая адресация идет параллельно регистровой. При этом нужно помнить, что при комбинировании в слейве элементов с разной размерностью в контроллере происходит так называемое выравнивание, за которым нужно следить, чтобы получать корректные данные. Пошуршите поиском по слову "выравнивание", чтобы все стало понятно.
Еще раз добрый вечер.
Все никак не могу разобраться как сделать на панели кнопки.
Вот настройка кнопки в панели.
Вложение 34070
Вот настройка элемента 8bits в контроллере.
Вложение 34071
Но так не работает, я в принципе не особо удивлен. В контроллере с 1 по 34 все забито элементами 2byte, в панели соответственно с 0 по 33 тоже все занято.
Второй вопрос, ряд 2byte элементов с панели приходят на контроллер в виде уставок. При сбросе питания соответственно эти уставки сбрасываются. Где и как прописать уставки "по-умолчанию". То есть, при загрузке контроллера они считываются, в дальнейшем их можно менять с панели, если пропало питание то они снова считываются первоначальные.
1. Для кнопок адресация идет по битам. Т.е. 0x34 - это 34-й бит (а не регистр) слэйва, он в третьем по счету элементе 2byte.
2. Значения по умолчанию можно задать прямо в программе ПЛК - для этого сначала объявить переменные с начальными значениями (типа iVar:INT:=10), и потом эти переменные привязывать к каналам слэйва.
Если у вас 34 элемента 2 Byte, а 35-й - 8 bits, то номера его бит: 0x544-0x551.
Но, собственно, вы можете обратиться напрямую к битам регистра в стиле 4x34.0-4x34.7 (т.к. в Овен ПЛК все области modbus наложены друг на друга)
Напоминаю, нумерация регистров (и бит) в ПЛК ведется с 0, а не 1 - поэтому такие числа.
Евгений Кислов, спасибо, вроде понял. Документация у Вас все же подхрамывает.
Объявляем в глобальных переменных же?Если да, то вот что получается.
Вложение 34102
Это объявление переменной.
Вложение 34103
Это что я получаю на работающем контроллере.