Arduino -> ModBus -> LCNC

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение nkp »

Arduino Esplora - вроде бы еще не пробегала на форуме - недорогой конструктор для пульта ;)
http://arduino.cc/en/Main/ArduinoBoardE ... w7sTIKOXoe
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial »

nkp писал(а):пробовать хочу в реал тайм ,так как драйвер именно такой(CL)
Я наверное что то пропустил. Если можно дай ссылку на исходник этого драйвера.
asutpka
Мастер
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka »

Хотите верьте, хотите нет, но на моей андруине с актуальным в этом треде скетчем почему-то при подключении к сканеру при считывании длинных сообщений например 100 регистров около 40%ошибочных сообщений. Просьба к виндузятникам - Может проверите? Или это моя проблема или всё гораздо глубже.
Если встанет вопрос о валидности сканера - так с другим , на другом ПК та-же песня.
Может в этом причина лагов у активистов темы?
Вложения
Mtester.zip
(391.19 КБ) 440 скачиваний
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial »

asutpka писал(а):сообщений например 100 регистров около 40%ошибочных сообщений.
Скорее всего это ошибки связанные с таймаутом, если это RTU modbus.
asutpka
Мастер
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka »

Impartial писал(а):Скорее всего это ошибки связанные с таймаутом, если это RTU modbus.
протокол RTU modbus
почему-же таймауты не мешают коротким сообщениям?
321_1.JPG (3942 просмотра) <a class='original' href='./download/file.php?id=25314&mode=view' target=_blank>Загрузить оригинал (58.02 КБ)</a>
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial »

asutpka писал(а):почему-же таймауты не мешают коротким сообщениям?
Это очевидно. Принцип работы RTU заключается в опознании конца пакета по таймауту. Никаких больше признаков конца пакета нет. Если в течении времени, определяемого задержкой, не пришел очередной байт в приемник считается, что это конец пакета. Происходит попытка расчитать циклический код, а его там нет. Отсюда и ошибка контрольной суммы. Поэтому в системах с непредсказуемым временем отклика применяют аски режим с символьным ограничением начала и конца пакета.
Вероятность того, что пришли неправильные биты очень мала.
asutpka
Мастер
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka »

эвон как у вас всё гладко, но не логично и не очевидно.
Опытным путём подобрал последнюю величину пакета, после которой резко повышается вероятность ошибочной ситуации.
Значение получилось равно 39 регистрам.
Последний раз редактировалось asutpka 27 фев 2014, 16:53, всего редактировалось 1 раз.
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial »

Зачем спорить? Увеличь в 10 раз таймауты модбаса в компе и ардуине. И все станет на свои места.
asutpka
Мастер
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka »

Встало- как и предполагалось, только хуже.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение nkp »

asutpka писал(а): но на моей андруине с актуальным в этом треде скетчем почему-то при подключении к сканеру
сканер - это программка , выступающая в роли мастера??
можно подробней - что это и зачем...
почему именно 100 регистров ардуины пытаемся читать?
asutpka
Мастер
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka »

выступающая в роли мастера программа была поставлена для проверки функциональности устройства и интуитивно понятной визуализации.
Именно 100 регистров там установлено по умолчанию.
Всё вместе запущено исключительно в исследовательских целях.
Результат довёл до публики с высказанными предположениями о вероятной причине ранее озвученных притормаживаний ARDUINO - информация к размышлению, не более.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение Serg »

Impartial писал(а):Я наверное что то пропустил. Если можно дай ссылку на исходник этого драйвера.
http://wiki.linuxcnc.org/cgi-bin/wiki.p ... On_Xenomai
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Impartial
Мастер
Сообщения: 953
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 36
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial »

Спасибо, увидел.
Аватара пользователя
odekolon
Мастер
Сообщения: 1125
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение odekolon »

nkp писал(а):
aftaev писал(а):можно вернуть
configs.rar
тут конфиг - я в нем убрал панель во вкладке...
я очень извиняюсяь, а нельзя ли выложить полностью рабочую конфигурацию?
арудинку я запрограммировал, она явно работает
конфигурацию эту я пробовал, панели нет но сигналы с ардуинки видны и проходят (смотрел через hal конфигуратор)
но как только подключаю строчку #POSTGUI_HALFILE = modbus.hal
появляется ошибка "pin xxx does not exist"
есть у кого-нибудь полная тестовая конфигурация с панелью, файлом gs2_vfd и желательно с кодом ардуинки?
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение nkp »

делал это для aftaev , поэтому вышло : сделал-забыл))
сейчас залил код в дуину , запустил конфиг - работает...
а что до тонкостей - надо освежать в памяти...
вот конфиг :
ArduinoSlave.rar
(7.33 КБ) 391 скачивание
в нем ничего из настроек "нет" ,кроме строки:
loadusr gs2
она загружает компонент
gs2.rar
(22.78 КБ) 381 скачивание
прошивка
ModBusSlave.rar
(4.42 КБ) 369 скачиваний
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение nkp »

здесь можно посмотреть изменение в назначении пинов в компоненте...
Аватара пользователя
odekolon
Мастер
Сообщения: 1125
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение odekolon »

nkp писал(а):делал это для aftaev , поэтому вышло : сделал-забыл))
сейчас залил код в дуину , запустил конфиг - работает...
а что до тонкостей - надо освежать в памяти...
вот конфиг :
ArduinoSlave.rar
в нем ничего из настроек "нет" ,кроме строки:
loadusr gs2
она загружает компонент
gs2.rar
прошивка
ModBusSlave.rar
спасибо, компонент загрузился, прошивка в ардуинку не полезла:

Код: Выделить всё

  This report would have more information with
  "Show verbose output during compilation"
  enabled in File > Preferences.
Arduino: 1.0.6 (Linux), Board: "Arduino Mega 2560 or Mega ADK"
ModBusSlave.ino: In function ‘void setup()’:
ModBusSlave:80: error: ‘Config_IO’ was not declared in this scope
ModBusSlave.ino: In function ‘void loop()’:
ModBusSlave:106: error: ‘Kill_IO’ was not declared in this scope
ModBusSlave:112: error: ‘Update_Pin_States’ was not declared in this scope
ModBusSlave:113: error: ‘Update_AN_States’ was not declared in this scope

но при этом старая прошивка вроде рабтает (по крайней мере на входа цифровой\аналоговый)
выхода не проверял
отличий в коде визуально пока не нашел
и еще вопрос - для чего прошивка "pin_manipulator_ino" ?

панель есть но не работает, но это фигня, самое галавное есть доступные пины компонента ардуино
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение nkp »

odekolon писал(а):и еще вопрос - для чего прошивка "pin_manipulator_ino" ?
прошивка одна - для удобства(?) наверно автор разнес в два файла...
функции Config_IO и Kill_IO вызываются из "первого" файла...
Аватара пользователя
odekolon
Мастер
Сообщения: 1125
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 360
Настоящее имя: Борис
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение odekolon »

nkp писал(а):
odekolon писал(а):и еще вопрос - для чего прошивка "pin_manipulator_ino" ?
прошивка одна - для удобства(?) наверно автор разнес в два файла...
функции Config_IO и Kill_IO вызываются из "первого" файла...
так какой скетч заливать нужно?
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Arduino -> ModBus -> LCNC

Сообщение nkp »

odekolon писал(а):какой скетч заливать нужно?
когда выбираю папку проекта - окно выглядит так:
Выделение_100.png (2926 просмотров) <a class='original' href='./download/file.php?id=37061&mode=view' target=_blank>Загрузить оригинал (22.42 КБ)</a>
(оба файла видны)
Ответить

Вернуться в «LinuxCNC»