Просмотр полной версии : ПЛК 110-60 и modbus OPC Lectus
Здравствуйте!
Необходимо получать данные из нескольких ПЛК в OPC Lectus.
Связь будет через ethernet порт ПЛК по ip адресу.
Как из лектуса достучаться до плк?
Разобрался с вопросом. Вопрос закрыт.
Появился новый.
Данные из плк нужно получать в Intouch.
Как будет лучше, качественнее, безглючнее?
плк->opc Lectus tcp-> Opclink-> intouch
или
плк->opcCodesys tcp-> Opclink-> intouch
Здравствуйте!
Как все таки настроить Лектус OPC сервер, на получение переменных из плк 110 60?
Соединение прописал, ip адрес забил.
Надо переменные добавлять но какая адресация ?
Гарчев Евгений
11.12.2014, 17:54
Здравствуйте!
Как все таки настроить Лектус OPC сервер, на получение переменных из плк 110 60?
Соединение прописал, ip адрес забил.
Надо переменные добавлять но какая адресация ?
http://www.owen.ru/uploads/rp_plk110.160.pdf - раздел 7.4.2.2.1
Добрый день!
Уважаемые форумчане, помогите разобраться в подключении ПЛК 110 к Lectus OPC!
Проблема в том что при настройке в Lectus OPC переменных типа "Boolen" в регистры ПЛК записываются биты неадекватно, не в те в которые нужно.
Делал выравнивание адресов согласно описанию адресного пространства, ничего не дало. Переделывал конфигурацию заново, вообщем все попытки тщетны.
Работает только в одном случае если задавать в Lectus переменным тип РЕГИСТР и рассчитывать какой необходим бит в регистре , вот таким образом и выходить на нужные сигналы, а вообще данная конфигурация не устраивает , так как хотелось бы все же разобраться почему так происходит и при установке одного записывается несколько бит или вообще не в тот регистр. Менять порядок следования данных пробовал, тоже ничего не дало кроме еще большей путаницы. Во вложении файлы конфигурации Lectus и CodeSys.
Гарчев Евгений
10.07.2015, 18:58
Здравствуйте!
У Вас в конфигурации ПЛК переменные 8bit начинаются с 58 адреса регистра (3A Hex). Если используете в лектусе типизированную переменную типа Boolean, то при записи будет записываться каждый бит соответствующего байта. Поэтому для записи используйте тип "регистр" с указанием значимых битов.
Здравствуйте!
У Вас в конфигурации ПЛК переменные 8bit начинаются с 58 адреса регистра (3A Hex). Если используете в лектусе типизированную переменную типа Boolean, то при записи будет записываться каждый бит соответствующего байта.
Я правильно понял, если в Lectus переменная установлена как типизированная типа Boolen и допустим имеет адрес 3A hex (2 байта) и номер бита 2, то первый байт и второй байт этой переменной будут использовать один и тот же (2й) бит данных?
Гарчев Евгений
14.07.2015, 19:04
Не совсем так. Если используете типизированную переменную, то при изменении состояния любого бита при записи поменяют свое состояние все биты соответствующего байта. Т.е. при изменении состояния бита с первого по восьмой, меняется состояние всех битов первого байта регистра, а при изменении состояния бита с девятого по шестнадцатый меняют свое состояние все биты второго байта регистра.
Не совсем так. Если используете типизированную переменную, то при изменении состояния любого бита при записи поменяют свое состояние все биты соответствующего байта. Т.е. при изменении состояния бита с первого по восьмой, меняется состояние всех битов первого байта регистра, а при изменении состояния бита с девятого по шестнадцатый меняют свое состояние все биты второго байта регистра.
Тогда не понятно зачем указывается в типизированной переменной номер бита, если меняют свое состояние все биты соответствующего байта?
А, кажется понял, видимо для того чтобы определить биты какого байта должны изменить свое состояние, верно?
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot