EnglishУкраїнськаmRussian
Login/New
Topic with many replies

Реализация протокола DCON модулей ввода-вывода I-7000 ICP DAS


Author Message
Written on: 18. 01. 2010 [17:05]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
Я тут улучшил транспорт Serial. Его поведение стало типичным и похожим на Sockets и SSL.

Кроме этого исправлен ряд ошибок. В модуль DCON внесены изменения для контроля за признаком окончания пакета, поскольку протокол это позволяет. Как результат должно стать более стабильным и оптимальным по затрачиваемому на обмен времени.

Также добавлен параметр количества повторов запроса, в случае не удачной отправки первого.

Проверьте пожалуйста при случае!

Learn, learn and learn better than work, work and work.
Written on: 09. 03. 2010 [21:49]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
Попробовали DCON на svn1070. Сходу установить связь не удалось. Меняли таймауты, все настройки проверены-перепроверены. Безрезультатно. Трафик есть и исходящий, и входящий. А на вкладке "Атрибуты" данных нет.
Вернулись пока на 0.6.4 - всё нормально. Видимо что-то поломалось.
Надо будет провести отладку кода...
PS Может где-то настройка транспорта теперь производится по другому и мы не знаем?

[This article was edited 1 times, at last 09.03.2010 at 22:15.]

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 10. 03. 2010 [09:15]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
almaz wrote:

PS Может где-то настройка транспорта теперь производится по другому и мы не знаем?

Настройки транспорта производятся там-же. Был только убран третий таймаут. Какие они у Вас, кстати?
Ошибки какие-то идут в атрибуте "err"?

Learn, learn and learn better than work, work and work.
Written on: 10. 03. 2010 [10:27]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
Таймауты первоначально были очень короткие. Подняли до 1000 100 1000. Постоянно присутствует "Ошибка длины пакета".

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 10. 03. 2010 [11:59]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
almaz wrote:

Таймауты первоначально были очень короткие. Подняли до 1000 100 1000. Постоянно присутствует "Ошибка длины пакета".

Это слишком большие таймауты. Да и последнее число уже не нужно.
Похоже это из-за длины ответа. Я убираю не нужный для разбора символ '\r' в ответе.
Попробуйте сейчас, я его оставляю.

Learn, learn and learn better than work, work and work.
Written on: 11. 03. 2010 [09:32]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
svn 1072 нормально работает. Спасибо за поддержку!!!

[This article was edited 1 times, at last 11.03.2010 at 09:44.]

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 18. 03. 2010 [10:50]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
Провёл глубокий анализ блоков ввода-вывода, работающих по протоколу DCON, от 3 производителей. Результат прикрепляю файлом.
Сделать универсальный параметр программного контроллера DCON вполне возможно. При этом на главной вкладке параметра будут присутствовать 5 полей (AI, AO, DI, DO, CI) для выбора количества точек соответствующего типа и одновременно метода обмена DCON.

Данные (инженерные и процентные) для AI и диапазоны выражаются при передаче 7-байтным текстом. Шестнадцатеричные 4-байтным текстом. При передаче через транспорт соответственно 14 и 8 байт. Можно использовать только инженерные и процентные единицы измерения, а можно добавить ещё одно поле выбора для смены на шестнадцатеричные.

Данные для AO требуют контроля диапазона поэтому тут поле выбора диапазона обязательно. Там же может присутствовать выбор шестнадцатеричной передачи.

С DI и DO всё задаётся при выборе метода передачи, то есть больше полей не нужно. С CI (счётные входы) аналогично.

Настройку параметров блоков ввода-вывода придётся оставить на усмотрение пользователя. Слишком уж они разнообразны для различных блоков. Настройку можно производить штатными средствами производителя или передачей по последовательному интерфейсу кодов.

PS Хотелось бы успеть сделать модуль DCON с поддержкой всего возможного оборудования до выхода финальной версии OpenSCADA icon_rolleyes.gif

[This article was edited 1 times, at last 18.03.2010 at 10:52.]

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Attachment

DCON_Table.ods (File type: application/vnd.oasis.opendocument.spreadsheet, Size: 14.93 kilobytes) — 770 downloads
Written on: 18. 03. 2010 [12:28]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
almaz wrote:

PS Хотелось бы успеть сделать модуль DCON с поддержкой всего возможного оборудования до выхода финальной версии OpenSCADA icon_rolleyes.gif

Выпуск 0.7.0 ещё не скоро будет. Думаю не ранее чем через пять месяцев.

Learn, learn and learn better than work, work and work.
Written on: 18. 03. 2010 [14:41]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
almaz wrote:
Данные (инженерные и процентные) для AI и диапазоны выражаются при передаче 7-байтным текстом. Шестнадцатеричные 4-байтным текстом. При передаче через транспорт соответственно 14 и 8 байт. Можно использовать только инженерные и процентные единицы измерения, а можно добавить ещё одно поле выбора для смены на шестнадцатеричные

Запутался немного со всякими форматами. При передаче через транспорт 7 и 4 байт.

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 19. 07. 2010 [22:25]
bakum
Владимир Аввакумов
registered since: 21.10.2009
Posts: 25
Роман и Алмаз, доброго вечера! Продвигаюсь по ступеням знаний в Опенскаде. На виртуальные контроллеры с наборами моделей ТОУ имеются планы развития. Интересное направление. Третий день подключаю АДАМ4018 и ИКОС7018. Поначалу начинается опрос, выдается ошибка длины пакета, затем система подвисает. Весь форум перелопатил, шаманство!, нашел подсказку об увеличении тайм-аутов до 1000:200:1000. Завтра попробуем. Скорость с 115 тыс снизил до 19200, есть возможность понизить до 9600, Полагаю опрос пойдет. По протоколам - присмотрелся, ошибок не выявил, кроме как упор на исходящий Modbus. Если, что - подправте.

Дорогу осилит идущий!



13761