Arduino -> ModBus -> LCNC

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

Re: Arduino -> ModBus -> LCNC

Сообщение Serb01 » 17 май 2019, 20:19

Для автоматической загрузки порта ttyACM0 вместо ttyUSB0 при запуске системы в файл /etc/rc.local строку
sudo ln -s /dev/ttyUSB0 /dev/ttyACM0
Для автоматического разрешения чтения-записи ttyUSB0 при подключении USB-устройства создать файл /etc/udev/rules.d/50-ttyusb.rules и вставить туда:
KERNEL=="ttyUSB[0-9]*",NAME="tts/USB%n",SYMLINK+="%k",GROUP="uucp",MODE="0666"
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
Аватара пользователя
Serb01
Опытный
 
Сообщения: 105
Зарегистрирован: 04 июн 2012, 09:58
Откуда: Новокузнецк
Репутация: 17
Настоящее имя: Сергей Беседин

Re: Arduino -> ModBus -> LCNC

Сообщение UAVpilot » 17 май 2019, 22:16

Нужно учитывать ещё такой момент: в случае реконекта USB, например из-за помехи, устройство может заново присоединиться быстрее, чем система освободит /dev/ttyUSB0 - в итоге устройство получит порт /dev/ttyUSB1 и ваша ссылка будет указывать в никуда.

Поэтому надо не изобретать велосипед с квадратными колёсами, а всё, и права и ссылку, делать штатными средствами только через udev. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 19941
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4802
Медальки:
Настоящее имя: Сергей

Re: Arduino -> ModBus -> LCNC

Сообщение Serb01 » 18 май 2019, 15:06

UAVpilot писал(а):Поэтому надо не изобретать велосипед


Это Гугл ... А как правильно сделать?
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
Аватара пользователя
Serb01
Опытный
 
Сообщения: 105
Зарегистрирован: 04 июн 2012, 09:58
Откуда: Новокузнецк
Репутация: 17
Настоящее имя: Сергей Беседин

Re: Arduino -> ModBus -> LCNC

Сообщение UAVpilot » 18 май 2019, 17:26

Serb01 писал(а):Это Гугл ... А как правильно сделать?

Я ж чуть выше написал:
UAVpilot писал(а):Я где-то тут на форуме подробно расписывал как средствами системы (udev) автоматически назначать таким устройствам желаемые имена и права доступа. Вроде в своей теме про управление частотником по Modbus.

Не думаю что поиск по таким критериям непосильная задача... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 19941
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4802
Медальки:
Настоящее имя: Сергей

Re: Arduino -> ModBus -> LCNC

Сообщение Serb01 » 18 май 2019, 21:32

Если знаешь - скажи, что знаешь - забыл - лучше промолчи, а не знаешь - не обращай внимание.
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
Аватара пользователя
Serb01
Опытный
 
Сообщения: 105
Зарегистрирован: 04 июн 2012, 09:58
Откуда: Новокузнецк
Репутация: 17
Настоящее имя: Сергей Беседин

Re: Arduino -> ModBus -> LCNC

Сообщение aftaev » 18 май 2019, 21:52

UAVpilot писал(а):Не думаю что поиск по таким критериям непосильная задача...

Re: Управление частотником через modbus. #219
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 31673
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5671
Медальки:

Re: Arduino -> ModBus -> LCNC

Сообщение Serb01 » 18 май 2019, 22:03

Пробовал. Серийного номера нет ...
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
Аватара пользователя
Serb01
Опытный
 
Сообщения: 105
Зарегистрирован: 04 июн 2012, 09:58
Откуда: Новокузнецк
Репутация: 17
Настоящее имя: Сергей Беседин

Re: Arduino -> ModBus -> LCNC

Сообщение UAVpilot » 19 май 2019, 01:36

Serb01 писал(а):Пробовал. Серийного номера нет ...

Дело не в серийном номере, а в принципе. Изображение
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 19941
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4802
Медальки:
Настоящее имя: Сергей

Re: Arduino -> ModBus -> LCNC

Сообщение Serb01 » 19 май 2019, 11:20

Можно было и не спрашивать. Как дитё малое.
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
Аватара пользователя
Serb01
Опытный
 
Сообщения: 105
Зарегистрирован: 04 июн 2012, 09:58
Откуда: Новокузнецк
Репутация: 17
Настоящее имя: Сергей Беседин

Re: Arduino -> ModBus -> LCNC

Сообщение UAVpilot » 20 май 2019, 02:15

Я знаю и помню, но мне лень и ещё раз это разъяснять и искать свой прошлый пост, особенно для тех, кому для себя любимого лень поискать по очевидным критериям. Видимо не так уж и нужно.
Хотя, скажем за 500 евро может будет и не лень... :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 19941
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4802
Медальки:
Настоящее имя: Сергей

Re: Arduino -> ModBus -> LCNC

Сообщение Serb01 » 20 май 2019, 21:36

UAVpilot писал(а):Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...

забыл добавить - за 500 евро.
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
Аватара пользователя
Serb01
Опытный
 
Сообщения: 105
Зарегистрирован: 04 июн 2012, 09:58
Откуда: Новокузнецк
Репутация: 17
Настоящее имя: Сергей Беседин

Re: Arduino -> ModBus -> LCNC

Сообщение UAVpilot » 21 май 2019, 04:21

Serb01 писал(а):забыл добавить - за 500 евро.

Скопируй подпись себе и добавь. У меня написано как надо.
И какое отношение к теме имеет обсуждение подписей?..
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
UAVpilot
Мастер
 
Сообщения: 19941
Зарегистрирован: 17 апр 2012, 14:58
Откуда: Москва
Репутация: 4802
Медальки:
Настоящее имя: Сергей

Re: Arduino -> ModBus -> LCNC

Сообщение Serb01 » 21 май 2019, 04:58

Я тебя ещё пять постов назад просил отойти и не раздувать ветку неподелу.
Значительно проще быть чуточку внимательней, чем долгое время пускать деньги на ветер
Аватара пользователя
Serb01
Опытный
 
Сообщения: 105
Зарегистрирован: 04 июн 2012, 09:58
Откуда: Новокузнецк
Репутация: 17
Настоящее имя: Сергей Беседин

Re: Arduino -> ModBus -> LCNC

Сообщение treyne » 05 апр 2020, 14:42

[quote="nkp"]
сам скрипт:
Вложение gs2_vfd.c больше недоступно

заменяем ним оригинальный в папка_с_lcnc/src/hal/user_comps
в терминале :
cd папка_с_lcnc/src
make
-----------------------------

Ребята, помогите пожалуйста, не хочет компилировать скрипт gs2_vfd.c
Выдаёт следующее.

cnc@LinuxCNC:~/LCNC/src$ make
Reading 187/187 dependency files
Done reading dependencies
Compiling hal/user_comps/gs2_vfd.c
hal/user_comps/gs2_vfd.c:110:16: error: unknown type name ‘modbus_param_t’
hal/user_comps/gs2_vfd.c:132:15: error: unknown type name ‘modbus_param_t’
hal/user_comps/gs2_vfd.c: In function ‘main’:
hal/user_comps/gs2_vfd.c:179:5: error: unknown type name ‘modbus_param_t’
hal/user_comps/gs2_vfd.c:294:5: warning: implicit declaration of function ‘modbus_init_rtu’ [-Wimplicit-function-declaration]
hal/user_comps/gs2_vfd.c:295:13: error: request for member ‘debug’ in something not a structure or union
hal/user_comps/gs2_vfd.c:297:5: warning: passing argument 1 of ‘modbus_connect’ from incompatible pointer type [enabled by default]
In file included from hal/user_comps/gs2_vfd.c:12:0:
/usr/include/modbus/modbus.h:158:5: note: expected ‘struct modbus_t *’ but argument is of type ‘int *’
hal/user_comps/gs2_vfd.c:412:9: warning: implicit declaration of function ‘read_data’ [-Wimplicit-function-declaration]
hal/user_comps/gs2_vfd.c:413:9: warning: implicit declaration of function ‘write_data’ [-Wimplicit-function-declaration]
hal/user_comps/gs2_vfd.c:426:5: warning: passing argument 1 of ‘modbus_close’ from incompatible pointer type [enabled by default]
In file included from hal/user_comps/gs2_vfd.c:12:0:
/usr/include/modbus/modbus.h:159:6: note: expected ‘struct modbus_t *’ but argument is of type ‘int *’
make: *** [objects/hal/user_comps/gs2_vfd.o] Ошибка 1

Скрипт gs2_vfd.c взятый отсюда компилируется БЕЗ ошибок, Но проект ардуины не компилируется. https://github.com/nkp216/Arduino----Modbus---Linuxcnc
Вложения
Arduino -> ModBus -> LCNC screen.png
Ошибка при компиляции проекта ModbusSlave.ino
treyne
Новичок
 
Сообщения: 9
Зарегистрирован: 04 апр 2020, 21:17
Откуда: Ростов-на-Дону
Репутация: 1
Настоящее имя: Илья

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 05 апр 2020, 15:31

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

Re: Arduino -> ModBus -> LCNC

Сообщение treyne » 05 апр 2020, 16:44

nkp писал(а):там библиотеки изменились
надо подправлять


Нашёл причитну, В архиве с проектом не хватало файла Pin_Manipulator.ino содержащего в себе недостающие функции.
Появилась другая проблема, Ардуина не отвечает на запросы от EMC. Светодиод (TX) на плате одиночно моргает, в консоли появляется сообщение о таймауте. Возможно не правильно сконфигурирована прошивка под мою ардуину.(У меня Arduino MEGA 2560) .

В файле standard_pinout.hal указал loadusr gs2_vfd -r 19200 -d /dev/ttyUSB0 -p none
Файл конфигурации во вложении.


cnc@LinuxCNC:~/LCNC$ linuxcnc
LINUXCNC - 2.7.14
Machine configuration directory is '/home/cnc/linuxcnc/configs/ArduinoSlave'
Machine configuration file is 'ArduinoSlave.ini'
Starting LinuxCNC...
.
Found file(REL): ./stepper_xyza.hal
Found file(REL): ./standard_pinout.hal
gs2_vfd: device='/dev/ttyUSB0', baud=19200, parity='N', bits=8, stopbits=1, address=1, enabled=1
Exception in Tkinter callback
Traceback (most recent call last):
File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1437, in __call__
return self.func(*args)
File "/usr/bin/axis", line 1325, in jogspeed_listbox_change
if isinstance(value, str): value = value.encode('utf-8', 'replace')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
failed to set register P0x0101 to 0x0064 (100): Connection timed out
Xlib.protocol.request.QueryExtension
Xlib.protocol.request.QueryExtension
modbus.hal:15: Pin 'arduino.Dout3-48' does not exist
Shutting down and cleaning up LinuxCNC...
/usr/bin/gladevcp:295: GtkWarning: GdkWindow 0x3c00003 unexpectedly destroyed
gtk.main()
**** GLADE VCP ERROR: X Protocol Error: 3
task: 159 cycles, min=0.000017, max=0.021514, avg=0.008979, 0 latency excursions (> 10x expected cycle time of 0.010000s)
failed to set register P0x0101 to 0x0064 (100): Connection timed out
LinuxCNC terminated with an error. You can find more information in the log:
/home/cnc/linuxcnc_debug.txt
and
/home/cnc/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
Вложения
ArduinoSlave.zip
Архив с конфигурацией
(9.05 Кб) Скачиваний: 36
treyne
Новичок
 
Сообщения: 9
Зарегистрирован: 04 апр 2020, 21:17
Откуда: Ростов-на-Дону
Репутация: 1
Настоящее имя: Илья

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 05 апр 2020, 16:57

treyne писал(а):Нашёл причитну,

какой дистрибутив?
какая версия емс?
всё компилировалось из исходников или был взят скомпилированный файл ?
nkp
Мастер
 
Сообщения: 8243
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1529
Медальки:

Re: Arduino -> ModBus -> LCNC

Сообщение treyne » 05 апр 2020, 17:13

nkp писал(а):какой дистрибутив?
какая версия емс?
всё компилировалось из исходников или был взят скомпилированный файл ?


1.дистрибутив Debian 7 wheezy скачаный с официального сайта linuxcnc.
2.версия емс 2.7.14. По крайней мере так пишет консоль. Хотя я скачивал версию исходников linuxcnc_2.7.15.2.g8a0a225.tar.gz (2.7-rtpreempt)
3.Всё компилировалось из исходников. Весь EMC и файл gs2_vfd.c
treyne
Новичок
 
Сообщения: 9
Зарегистрирован: 04 апр 2020, 21:17
Откуда: Ростов-на-Дону
Репутация: 1
Настоящее имя: Илья

Re: Arduino -> ModBus -> LCNC

Сообщение nkp » 05 апр 2020, 17:27

это делалось еще под Ubuntu 10.04
с тех пор несколько раз использовал ,но опять же - с U10.04
как то попробовал на более свежем дистре проделать - ругнулось на библиотеку modbus
дальше не рылся...
поэтому немного странно,что собралось (но может и не странно - а я не доглядел тогда :) )
nkp
Мастер
 
Сообщения: 8243
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1529
Медальки:

Re: Arduino -> ModBus -> LCNC

Сообщение treyne » 05 апр 2020, 17:39

nkp писал(а):поэтому немного странно,что собралось

Я целую тонну библиотек скачал что бы оно собралось, что то около 700мб.
Попробовал запустить EMC с подключеной ардуиной и без. Результат одинаковый. Т.е не приходят данные от ардуины в EMC. Хотя светодиод (TX) на плате при попытке запуска моргает.
nkp можешь написать мне в личку.
treyne
Новичок
 
Сообщения: 9
Зарегистрирован: 04 апр 2020, 21:17
Откуда: Ростов-на-Дону
Репутация: 1
Настоящее имя: Илья

Пред.След.

Вернуться в LinuxCNC

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

Зарегистрированные пользователи: Bing [Bot], Cat777, Сергей Саныч, CNC-Logic, Dimka, Gestap, Google [Bot], hmnijp, illusion, leon72, Loituma, MadRat, Makc31, Mikhgen, NikolayUa24, Ramunga, Sashalex24, shalek, sima8520, vladumur, Yandex [bot], шпиндель

Reputation System ©'