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

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


Author Message
Written on: 19. 02. 2013 [15:21]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"almaz" wrote:

"roman" wrote:
Добавил для уровня "Отладка (0)" к функции "Диагностика"
Спасибо! Удобно стало наблюдать за запросами-ответами.

Пожалуйста

"almaz" wrote:

"Godzilla" wrote:
Кстати некоторые аналоги модулей ADAM не имеют команды #AA ,сняв все показания разом, а только #AAN ,где N номер аналогового порта(0-3) ,например GL ADAM от Геолинк.
Добавил методы считывания по одному аналоговому входу. Только такое считывание будет несколько медленнее, чем скопом.

Выкладываю модуль DCON целиком (изменились переводы). Прошу включить в рабочую ветку svn (можно и в LTS), после чего скорректирую таблицы совместимости блоков в wiki.

Форматирование зачем везде изменилось, а именно отступы?

Learn, learn and learn better than work, work and work.
Written on: 19. 02. 2013 [23:50]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
4 пробела подряд в отступах поменял на <Tab>. Машинально, без всякой цели. Не надо было, наверно.

[This article was edited 1 times, at last 20.02.2013 at 00:05.]

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 20. 02. 2013 [08:18]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"almaz" wrote:

4 пробела подряд в отступах поменял на <Tab>. Машинально, без всякой цели. Не надо было, наверно.

Tab это 8 пробелов обычно, а не 4!
После Ваших изменений исходный текст стал нечитаем редактором с типичными настройками.

Learn, learn and learn better than work, work and work.
Written on: 20. 02. 2013 [08:31]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
Пользуюсь Geany. Отображает таб шириной 4 пробела. Gedit отобразил таб шириной 8 пробелов. Заменил в исходнике таб на 4 пробела.

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

DCON_client.cpp (File type: text/x-c++src, Size: 43.71 kilobytes) — 805 downloads
Written on: 20. 02. 2013 [13:12]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
Вернул первоначальное форматирование (табы шириной 8 пробелов, 4 пробела отступы от табов)

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

DCON_client.cpp (File type: text/x-c++src, Size: 39.04 kilobytes) — 783 downloads
Written on: 20. 02. 2013 [16:52]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"almaz" wrote:

Выкладываю модуль DCON целиком (изменились переводы). Прошу включить в рабочую ветку svn (можно и в LTS), после чего скорректирую таблицы совместимости блоков в wiki.

Включил в рабочую ветку, в LTS будет позже.

Learn, learn and learn better than work, work and work.
Written on: 21. 02. 2013 [07:23]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
Поправил таблицу совместимости блоков:
http://wiki.oscada.org/Doc/DCON?v=4cw#h809-7
http://wiki.oscada.org/HomePageEn/Doc/DCON?v=16gx#h873-7

У кого есть блоки - проверяйте.

PS Данный модуль DCON, в основном, для старого парка блоков. Для новых применений лучше использовать блоки с Modbus. Уже два года как перешли на использование серии ET-7000 с интерфейсом Ethernet (Modbus/TCP).

[This article was edited 1 times, at last 21.02.2013 at 07:32.]

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 22. 03. 2013 [16:06]
punk
Василий Петров
registered since: 09.05.2011
Posts: 57
Попался мне в руки Adam-6050 (12DI+6DO). Он умеет Modbus/TCP(defaultPort:502) & DCON/UDP(defaultPort:1025). Пока не удавалось разобраться с первым, попробовал я соединиться по второму.
Первое, что не заработало -- DCON умеет общаться только с Serial, но не с Sockets. Ничего, грубо меняю все "Serial" на "Sockets" в DCON_client.cpp и (вроде бы) должно заработать.
Однако не тут то было. Обнаружилось, что у advantech слегка измененное (правда, документированное) представление о протоколе DCON. Функция чтения входов обычная ($aa6), а вот ответ - необычный $aa00[data]. Из-за этого длина ответа ушла на 2 байта и выдавало 20:Respond length error. Немного потыкав в кнопки нарисовал вариант, который меня устраивает. Посмотрите/поругайте. Собственно вопрос -- планируется ли поддержка протокола DCON на adam-60xx, особенно учитывая что они умеют modbus (у меня в конце концов и он заработал). Если да - могу разобраться и с выходами (мне сейчас они не нужны, модуль приобрели какой был на складе). И, если да, не могли бы вы убрать ограничение "только Serial".
Attachment

diff_DCON_a6050 (File type: application/octet-stream, Size: 2.71 kilobytes) — 761 downloads
Written on: 22. 03. 2013 [16:46]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"punk" wrote:

И, если да, не могли бы вы убрать ограничение "только Serial".

DCON через не Serial вижу впервые. :)
Раз так то расширю выбор на все транспорты.

Learn, learn and learn better than work, work and work.
Written on: 23. 03. 2013 [04:56]
almaz
Almaz Karimov
Contributor
Topic creator
registered since: 25.09.2008
Posts: 516
"punk" wrote:
Собственно вопрос -- планируется ли поддержка протокола DCON на adam-60xx, особенно учитывая что они умеют modbus (у меня в конце концов и он заработал).

ADAM-60xx почти полные аналоги модулей ET-70xx. При наличии нормально работающего MODBUS смысла в поддержке DCON не вижу. Если появятся похожие модули только с DCON или обмен по протоколу DCON окажется чем-то лучше - другое дело.
"punk" wrote:
Попался мне в руки Adam-6050 (12DI+6DO). Он умеет Modbus/TCP(defaultPort:502) & DCON/UDP(defaultPort:1025). Пока не удавалось разобраться с первым,

Ранее выкладывал настройки MODBUS для модулей ET-70xx, возможно подойдут и для ADAM-60xx
http://oscada.org/ru/forum/posts/vnedrenie/korziny_ipc_das_i87_i_moduli_i_70xxm_70xxet_70xx/%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B8%D1%86%D1%8B/1/#pid4876

[This article was edited 1 times, at last 23.03.2013 at 05:09.]

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



13600