PDA

Просмотр полной версии : ПЛК110, как правильно читать из порта RS485??



Pasha_99
03.04.2013, 14:47
Уважаемые коллеги!
Я тут начал разбираться в связке ПЛК110-ТРМ202.
Так вот.
1. Просмотрел демку (PLC154+TRM202), осознал, переписал... ничего не работает, естественно.
2. Решил не применять такие сложности, а просто добавил в конфигурации ПЛК "Owen (Master)", а в него, в свою очередь, "float variable(listen)", указал ей адрес ТРМа, ну и прочие установки сделал , потом написал простейший CFC со сравнением температуры с константой. Причем температуру брал сначала напрямую (%QD6.1.0), она получалась в неправильном виде, объявил переменную "t", дал ей тип REAL....
отлично всё заработало.
Теперь - вопрос:
1.А в чем, собственно, состоит смысл библиотек с "OWEN_GET_REAL" и прочими функциями? Должна ведь быть какая режиссерская задумка?
2. (в варианте с переделкой демки с использованием библиотек) Где прочитать про нумерацию COM-портов ПЛК110, тут вообще бред получается! Я ставлю номер порта "1" - ничего не читается, если ставлю номер порта "0" - отлично читаю температуру, но Кодесис выделяет эту переменную красным и говорит - "Инвалид".

Александр Приходько
03.04.2013, 15:23
Здравствуйте.
1) Задумка в том, что на одном интерфейсе могут быть различные устройства с различными параметрами связи. Для того что бы с ними работать, надо как минимум постоянно переключать настройки.
Помимо этого могут быть хитрые устройства, с которыми нужно общаться по определенному алгоритму.
2) ТО что COM0 подвечивается красным - это нормально. К сожалению наши разработчики изначально не учли этот нюанс, но это ни коим образом не сказывается на работу.

Pasha_99
03.04.2013, 15:59
Здравствуйте.
1) Задумка в том, что на одном интерфейсе могут быть различные устройства с различными параметрами связи. Для того что бы с ними работать, надо как минимум постоянно переключать настройки.
Помимо этого могут быть хитрые устройства, с которыми нужно общаться по определенному алгоритму.
2) ТО что COM0 подвечивается красным - это нормально. К сожалению наши разработчики изначально не учли этот нюанс, но это ни коим образом не сказывается на работу.

1. То есть если я вешаю пяток однотипных изделий типа ТРМ, которые работают по одинаковым настройкам, но с разными адресами - я просто делаю соответствующее количество входов в одном Owen(Master) и просто читаю их оттуда?
1.1. По одному адресу можно прочитать только одно значание? Не получается прочитать температуру и уставку внути ТРМ.
2. Жесть. Это типа как я заехал в одной сельской автомастерской прочитать ошибки мозгов, а мне "Чек Энжын" предложили кусочком черной изоленты заклеить, чтобы я не расстраивался.

---
Спасибо за оперативный ответ. Опыты продолжаются.

UPD
Уставку прочитал. пункт 1.1 решен.