PDA

Просмотр полной версии : PLC 154 (I-M) -> [eth0] -> Lectus



emopwnz
23.09.2011, 06:20
Настроил связь между плк и лектусом через ethernet.
Плк подключен в общестанционную ЛВС

http://s1.ipicture.ru/uploads/20110923/GL5g1UM4.jpg


Соответственно сделал проект в Codesys и создал переменную типа FLOAT

http://s1.ipicture.ru/uploads/20110923/03S6UcPI.jpg


Создал подключение в LectusOPC, описал переменную

http://s2.ipicture.ru/uploads/20110923/B294dT2S.jpg


Вот результат, все работает

http://s2.ipicture.ru/uploads/20110923/JR34jyOs.jpg



Однако я столкнулся со следующей проблемой:

Когда я добавил в проект Codesys еще одну переменную такого же типа, и аналогичного действия

http://s1.ipicture.ru/uploads/20110923/NqEO3o5P.jpg


Получилась в итоге какая то непонятная штука :)

http://s1.ipicture.ru/uploads/20110923/fMlzzDU1.jpg

Перестала читаться даже первая переменная, и в логе пишет вот это:


08:19:07.069 [3656] (10.169.160.225:502)Tx: [12] 00 0E 00 00 00 06 02 03 00 01 00 02
08:19:07.069 [3656] (10.169.160.225:502)Rx: [9] 00 0E 00 00 00 03 02 83 02
08:19:07.069 [3656] Ошибка приема-передачи (10.169.160.225:502 Адрес:2)


Может кто подскажет и поможет, заранее спасибо

lara197a
23.09.2011, 07:55
адрес второй переменной 2, а не один. Float занимает 4 байта

emopwnz
23.09.2011, 11:07
адрес второй переменной 2, а не один. Float занимает 4 байта

пробовал, и 2 и 3 и так до 10, обе переменные - "ошибка соединения"
непонятно только почему первая перестает читаться

capzap
23.09.2011, 11:52
Попробуйте вернуться к варианту с одной переменной, перебирая адреса найдите значение второго Float, когда найдете добавте уже то что получилось в первый раз. И скорее всего получатся адреса 0 и 2

lara197a
23.09.2011, 11:56
Вы опять вернитесь к одной переменной, если будет работать, то нужно Вам выложить файлы. Если нет, то ищите, где внесли неверные изменения.
Вообще, зачем на ТСР лектус?
Лучше используйте ОРС КДС или Овен.

emopwnz
23.09.2011, 12:13
Вы опять вернитесь к одной переменной, если будет работать, то нужно Вам выложить файлы. Если нет, то ищите, где внесли неверные изменения.
Вообще, зачем на ТСР лектус?
Лучше используйте ОРС КДС или Овен.

Не знаю, привычка работать с лектусом наверное :D
Вообще с него удобнее передавать данные дальше, в данном случае в Simatic WinCC

C проблемой разобрался, надо было указать "старшим байтом вперед", но все равно непонятно почему тогда переставала читаться первая переменная, при добавлении второй )