Arduino -> ModBus -> LCNC

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 27 фев 2014, 10:46

Arduino Esplora - вроде бы еще не пробегала на форуме - недорогой конструктор для пульта ;)
http://arduino.cc/en/Main/ArduinoBoardEsplora#.Uw7sTIKOXoe
nkp
Мастер
 
Сообщения: 7672
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1385
Медальки:

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial » 27 фев 2014, 13:14

nkp писал(а):пробовать хочу в реал тайм ,так как драйвер именно такой(CL)

Я наверное что то пропустил. Если можно дай ссылку на исходник этого драйвера.
Impartial
Мастер
 
Сообщения: 915
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 30

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka » 27 фев 2014, 14:45

Хотите верьте, хотите нет, но на моей андруине с актуальным в этом треде скетчем почему-то при подключении к сканеру при считывании длинных сообщений например 100 регистров около 40%ошибочных сообщений.

Просьба к виндузятникам - Может проверите? Или это моя проблема или всё гораздо глубже.
Если встанет вопрос о валидности сканера - так с другим , на другом ПК та-же песня.
Может в этом причина лагов у активистов темы?
Вложения
Mtester.zip
(391.19 Кб) Скачиваний: 243
asutpka
Мастер
 
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial » 27 фев 2014, 15:05

asutpka писал(а):сообщений например 100 регистров около 40%ошибочных сообщений.

Скорее всего это ошибки связанные с таймаутом, если это RTU modbus.
Impartial
Мастер
 
Сообщения: 915
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 30

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka » 27 фев 2014, 15:30

Impartial писал(а):Скорее всего это ошибки связанные с таймаутом, если это RTU modbus.

протокол RTU modbus
почему-же таймауты не мешают коротким сообщениям?
Arduino -> ModBus -> LCNC 321_1.JPG
asutpka
Мастер
 
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial » 27 фев 2014, 16:01

asutpka писал(а):почему-же таймауты не мешают коротким сообщениям?

Это очевидно. Принцип работы RTU заключается в опознании конца пакета по таймауту. Никаких больше признаков конца пакета нет. Если в течении времени, определяемого задержкой, не пришел очередной байт в приемник считается, что это конец пакета. Происходит попытка расчитать циклический код, а его там нет. Отсюда и ошибка контрольной суммы. Поэтому в системах с непредсказуемым временем отклика применяют аски режим с символьным ограничением начала и конца пакета.
Вероятность того, что пришли неправильные биты очень мала.
Impartial
Мастер
 
Сообщения: 915
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 30

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka » 27 фев 2014, 16:06

эвон как у вас всё гладко, но не логично и не очевидно.
Опытным путём подобрал последнюю величину пакета, после которой резко повышается вероятность ошибочной ситуации.
Значение получилось равно 39 регистрам.
Последний раз редактировалось asutpka 27 фев 2014, 16:53, всего редактировалось 1 раз.
asutpka
Мастер
 
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial » 27 фев 2014, 16:14

Зачем спорить? Увеличь в 10 раз таймауты модбаса в компе и ардуине. И все станет на свои места.
Impartial
Мастер
 
Сообщения: 915
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 30

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka » 27 фев 2014, 16:35

Встало- как и предполагалось, только хуже.
asutpka
Мастер
 
Сообщения: 294
Зарегистрирован: 17 апр 2013, 14:27
Репутация: 78

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 27 фев 2014, 17:50

asutpka писал(а): но на моей андруине с актуальным в этом треде скетчем почему-то при подключении к сканеру

сканер - это программка , выступающая в роли мастера??
можно подробней - что это и зачем...
почему именно 100 регистров ардуины пытаемся читать?
nkp
Мастер
 
Сообщения: 7672
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1385
Медальки:

Re: Arduino -> ModBus -> LCNC

Сообщение asutpka » 27 фев 2014, 18:18

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

Re: Arduino -> ModBus -> LCNC

Сообщение UAVpilot » 28 фев 2014, 00:21

Impartial писал(а):Я наверное что то пропустил. Если можно дай ссылку на исходник этого драйвера.

http://wiki.linuxcnc.org/cgi-bin/wiki.p ... On_Xenomai
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 18358
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4509
Медальки:
Настоящее имя: Сергей

Re: Arduino -> ModBus -> LCNC

Сообщение Impartial » 28 фев 2014, 13:06

Спасибо, увидел.
Impartial
Мастер
 
Сообщения: 915
Зарегистрирован: 23 фев 2011, 01:50
Репутация: 30

Re: Arduino -> ModBus -> LCNC

Сообщение odekolon » 23 ноя 2014, 21:39

nkp писал(а):
aftaev писал(а):можно вернуть

configs.rar

тут конфиг - я в нем убрал панель во вкладке...

я очень извиняюсяь, а нельзя ли выложить полностью рабочую конфигурацию?
арудинку я запрограммировал, она явно работает
конфигурацию эту я пробовал, панели нет но сигналы с ардуинки видны и проходят (смотрел через hal конфигуратор)
но как только подключаю строчку #POSTGUI_HALFILE = modbus.hal
появляется ошибка "pin xxx does not exist"
есть у кого-нибудь полная тестовая конфигурация с панелью, файлом gs2_vfd и желательно с кодом ардуинки?
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
Аватара пользователя
odekolon
Мастер
 
Сообщения: 919
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 303
Медальки:
Настоящее имя: Борис

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 23 ноя 2014, 22:18

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

в нем ничего из настроек "нет" ,кроме строки:
loadusr gs2
она загружает компонент
gs2.rar
(22.78 Кб) Скачиваний: 200

прошивка
ModBusSlave.rar
(4.42 Кб) Скачиваний: 210
nkp
Мастер
 
Сообщения: 7672
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1385
Медальки:

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 23 ноя 2014, 22:22

здесь можно посмотреть изменение в назначении пинов в компоненте...
nkp
Мастер
 
Сообщения: 7672
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1385
Медальки:

Re: Arduino -> ModBus -> LCNC

Сообщение odekolon » 23 ноя 2014, 23:51

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" ?

панель есть но не работает, но это фигня, самое галавное есть доступные пины компонента ардуино
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
Аватара пользователя
odekolon
Мастер
 
Сообщения: 919
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 303
Медальки:
Настоящее имя: Борис

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 24 ноя 2014, 00:03

odekolon писал(а):и еще вопрос - для чего прошивка "pin_manipulator_ino" ?

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

Re: Arduino -> ModBus -> LCNC

Сообщение odekolon » 24 ноя 2014, 10:05

nkp писал(а):
odekolon писал(а):и еще вопрос - для чего прошивка "pin_manipulator_ino" ?

прошивка одна - для удобства(?) наверно автор разнес в два файла...
функции Config_IO и Kill_IO вызываются из "первого" файла...

так какой скетч заливать нужно?
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
Аватара пользователя
odekolon
Мастер
 
Сообщения: 919
Зарегистрирован: 05 ноя 2014, 14:53
Репутация: 303
Медальки:
Настоящее имя: Борис

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 24 ноя 2014, 10:12

odekolon писал(а):какой скетч заливать нужно?

когда выбираю папку проекта - окно выглядит так:
Arduino -> ModBus -> LCNC Выделение_100.png

(оба файла видны)
nkp
Мастер
 
Сообщения: 7672
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1385
Медальки:

Пред.След.

Вернуться в LinuxCNC

Кто сейчас на конференции

Зарегистрированные пользователи: 3aBDB, БРДМ-2, _taras_, Anfisa nor, Antony_, Bender, Bing [Bot], cncmybox, Darxton, Евжений, fishman, Google [Bot], iMaks-RS, ivanov777, Khassanov.i.g, Majestic-12 [Bot], Neptun, NikolayUa24, shura2000, sima8520, tehnic, ukr-sasha, vadoni, Vlad_Z, volatile, xenon-alien, Yandex [bot]

Reputation System ©'