Вирусное видео, агаFLUKE писал(а):1.05
Частотник и Modbus. Универсальная заготовка.
- ScrewDriver
- Мастер
- Сообщения: 1942
- Зарегистрирован: 06 сен 2016, 01:44
- Репутация: 498
- Настоящее имя: Василий
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Промышленная автоматика, ПЛК, приводы, SCADA системы
Мой Ютуб канал.
Мой Ютуб канал.
- ScrewDriver
- Мастер
- Сообщения: 1942
- Зарегистрирован: 06 сен 2016, 01:44
- Репутация: 498
- Настоящее имя: Василий
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Разобрался с кнопками обороты шпинделя больше-меньше:
в разделе [Display] ini файла станка нужно написать строчку DEFAULT_SPINDLE_SPEED = 7200, обороты соответственно с которых стартует шпиндель и все будет ок.
С кнопок тогда сразу с минимальной скорости будет переменная инициализироваться и тыкать долго не придется.
в разделе [Display] ini файла станка нужно написать строчку DEFAULT_SPINDLE_SPEED = 7200, обороты соответственно с которых стартует шпиндель и все будет ок.
С кнопок тогда сразу с минимальной скорости будет переменная инициализироваться и тыкать долго не придется.
Промышленная автоматика, ПЛК, приводы, SCADA системы
Мой Ютуб канал.
Мой Ютуб канал.
- Sandr
- Опытный
- Сообщения: 108
- Зарегистрирован: 28 сен 2016, 12:07
- Репутация: 5
- Настоящее имя: Александр
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Блин ломаю голову уже третий час
Все делал по инструкции в первом посте:
- Во первых в разделе Быстрый старт не указанно что необходимо провести Make и Make install
потратил час на поиск моей криворукости - а оказалось что необходим make install
Теперь получаю ошибку
и снова час на перепроверку всех манипуляций и проверку установки auto_tool_measurement с которой все нормально!
Я в ступоре - почему при добавлении ModBus панели выдается ошибка на auto_tool_measurement ?
Все делал по инструкции в первом посте:
- Во первых в разделе Быстрый старт не указанно что необходимо провести Make и Make install
потратил час на поиск моей криворукости - а оказалось что необходим make install
Теперь получаю ошибку
Код: Выделить всё
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
custom_postgui.hal:9: Pin 'auto_tool_measurement.toolchange-change' does not exist
Я в ступоре - почему при добавлении ModBus панели выдается ошибка на auto_tool_measurement ?
Блог на моем сайте sandr.ru
- ScrewDriver
- Мастер
- Сообщения: 1942
- Зарегистрирован: 06 сен 2016, 01:44
- Репутация: 498
- Настоящее имя: Василий
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Покажите свои custom.hal и custom_postgui.hal
Промышленная автоматика, ПЛК, приводы, SCADA системы
Мой Ютуб канал.
Мой Ютуб канал.
- Sandr
- Опытный
- Сообщения: 108
- Зарегистрирован: 28 сен 2016, 12:07
- Репутация: 5
- Настоящее имя: Александр
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Тормознул.....
Надо было сразу приложить
Надо было сразу приложить
- Вложения
-
- CNC.ini.tar.gz
- (1.88 КБ) 1034 скачивания
-
- custom.tar.gz
- (361 байт) 989 скачиваний
-
- custom_postgui.tar.gz
- (711 байт) 1021 скачивание
Блог на моем сайте sandr.ru
- Sandr
- Опытный
- Сообщения: 108
- Зарегистрирован: 28 сен 2016, 12:07
- Репутация: 5
- Настоящее имя: Александр
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Так пока и не разобрался
Блог на моем сайте sandr.ru
- ScrewDriver
- Мастер
- Сообщения: 1942
- Зарегистрирован: 06 сен 2016, 01:44
- Репутация: 498
- Настоящее имя: Василий
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Я буду обязательно ставить и то и другое. Просто пока не до этого сейчас, потерпи недельку, может кто другой поможет.
Промышленная автоматика, ПЛК, приводы, SCADA системы
Мой Ютуб канал.
Мой Ютуб канал.
- ScrewDriver
- Мастер
- Сообщения: 1942
- Зарегистрирован: 06 сен 2016, 01:44
- Репутация: 498
- Настоящее имя: Василий
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Неделька затянулась, извиняюсь - не было времени.
У меня отдельно работали тач сенсор от Verser и модуль модбаса от BentScrew - я думаю с этим ни у кого проблем не возникло.
Заставил их работать вместе.
В ini файле станка я их прописал вот так:
#(инициализация модуля probe)
EMBED_TAB_NAME=Probe Screen
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade
#(инициализация модуля spindle)
EMBED_TAB_NAME=Spindle Screen
EMBED_TAB_COMMAND=halcmd loadusr -Wn spindle gladevcp -c spindle -x {XID} -u spindle-vfd.py spindle-vfd-panel.glade
Обратите внимание на то, что выделено - это для модуля Modbus, что управляет ПЧ.
Дальше! в модуле Custom_postgui.hal нужно поменять в правом столбце все gladevcp на spindle
Было:
net vfd-command-frequency <= spindle-vfd.command-frequency => gladevcp.command-frequency
Стало:
net vfd-command-frequency <= spindle-vfd.command-frequency => spindle.command-frequency
Т.е. везде, где встречаем gladevcp в данном файле меняем его на spindle (ну или что сами выберете)
P.S. я совсем не специалист в этих ваших Линуксах, так что если где-то не прав - пинайте.
Но оно работает. А первое правило - работает не лезь.
Говоря русским языком - проблема в том, что в модуле ПЧ имя создаваемой абстрации совпадает с именем gladevcp - отсюда и проблемы.
Auto tool measurement пока не подключал, как всегда нет времени.
У меня отдельно работали тач сенсор от Verser и модуль модбаса от BentScrew - я думаю с этим ни у кого проблем не возникло.
Заставил их работать вместе.
В ini файле станка я их прописал вот так:
#(инициализация модуля probe)
EMBED_TAB_NAME=Probe Screen
EMBED_TAB_COMMAND=halcmd loadusr -Wn gladevcp gladevcp -c gladevcp -u python/probe_screen.py -x {XID} probe_icons/probe_screen.glade
#(инициализация модуля spindle)
EMBED_TAB_NAME=Spindle Screen
EMBED_TAB_COMMAND=halcmd loadusr -Wn spindle gladevcp -c spindle -x {XID} -u spindle-vfd.py spindle-vfd-panel.glade
Обратите внимание на то, что выделено - это для модуля Modbus, что управляет ПЧ.
Дальше! в модуле Custom_postgui.hal нужно поменять в правом столбце все gladevcp на spindle
Было:
net vfd-command-frequency <= spindle-vfd.command-frequency => gladevcp.command-frequency
Стало:
net vfd-command-frequency <= spindle-vfd.command-frequency => spindle.command-frequency
Т.е. везде, где встречаем gladevcp в данном файле меняем его на spindle (ну или что сами выберете)
P.S. я совсем не специалист в этих ваших Линуксах, так что если где-то не прав - пинайте.
Но оно работает. А первое правило - работает не лезь.
Говоря русским языком - проблема в том, что в модуле ПЧ имя создаваемой абстрации совпадает с именем gladevcp - отсюда и проблемы.
Auto tool measurement пока не подключал, как всегда нет времени.
Промышленная автоматика, ПЛК, приводы, SCADA системы
Мой Ютуб канал.
Мой Ютуб канал.
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Подцепил частотник через Ethernet-RS485 адаптер с адресом 10.10.10.7. Mesa 7i92, подключенная к тому же хабу, имеет адрес 10.10.10.10.
Виртуальный порт в ОС создается через socat:
socat pty,link=/tmp/sppty,raw,echo=0,waitslave udp:10.10.10.7:12345 &
При запуске LinuxCNC вижу ошибку
После чего socat вываливается вместе с виртуальным портом.
Я так понимаю, здесь проблема в том, что ethernet захвачен rt-компонентом, в то время как управление шпинделем происходит в user-space.
Пробовал шпиндельный компонент загружать не через loadusr, а через loadrt, появились ошибки, после чего я решил, что это не особо правильный вариант.
Что делать? Неужели еще один сетевой адаптер втыкать и кидать второй провод? А проще нет варианта?
Пока обдумывал написанное, появилась мысль, что это реально, если создать 2 виртуальных хоста (или как оно там называется), к-рые будут работать через прокси в виде единственной сетевухи. Один хост пусть будет захвачен реалтаймом, второй - юзерспейсом. Правильно/не?
Виртуальный порт в ОС создается через socat:
socat pty,link=/tmp/sppty,raw,echo=0,waitslave udp:10.10.10.7:12345 &
При запуске LinuxCNC вижу ошибку
Код: Выделить всё
spindle-vfd: device='/tmp/sppty', baud=9600, bits=8, parity='none', stopbits=1, slave=1, verbose=0, debug=0
2018/10/01 16:48:35 socat[9443] E write(6, 0x562dc75dba50, 8): Operation not permitted
note: MAXV max: 100.000 units/sec 6000.000 units/min
note: LJOG max: 100.000 units/sec 6000.000 units/min
note: LJOG default: 16.667 units/sec 1000.000 units/min
Я так понимаю, здесь проблема в том, что ethernet захвачен rt-компонентом, в то время как управление шпинделем происходит в user-space.
Пробовал шпиндельный компонент загружать не через loadusr, а через loadrt, появились ошибки, после чего я решил, что это не особо правильный вариант.
Что делать? Неужели еще один сетевой адаптер втыкать и кидать второй провод? А проще нет варианта?
Пока обдумывал написанное, появилась мысль, что это реально, если создать 2 виртуальных хоста (или как оно там называется), к-рые будут работать через прокси в виде единственной сетевухи. Один хост пусть будет захвачен реалтаймом, второй - юзерспейсом. Правильно/не?
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Попробовал выделить 2 разных ip на сетевую карту, соответственно меса и адаптер попали в разные подсети. Результат тот же, "operation not permitted".Argon-11 писал(а):Правильно/не?
Что еще попробовать в программном смысле?
Может проблема быть в тормознутости адаптера? Пинг до него порядка 1.5мсек, выше сервопериода месы.
- ScrewDriver
- Мастер
- Сообщения: 1942
- Зарегистрирован: 06 сен 2016, 01:44
- Репутация: 498
- Настоящее имя: Василий
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
а USB свисток чего не возьмешь?
RS485 линию можно параллельно ethernet кабелю кинуть (или заюзать 2 не используемые жилы)
RS485 линию можно параллельно ethernet кабелю кинуть (или заюзать 2 не используемые жилы)
Промышленная автоматика, ПЛК, приводы, SCADA системы
Мой Ютуб канал.
Мой Ютуб канал.
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Да идея понравилась - посоветовали по одному кабелю работать с месой и частотником.
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Интересный момент обнаружил, касающийся проблем со связью!
На частотнике 9600 бит/с + на адаптере Ethernet-RS485 9600 б/с: имеем периодические пропадания связи. Попробовал поиграться со скоростью адаптера и экспериментально обнаружил, что 9300 бит/с работает гораздо лучше (на частотнике по-прежнему 9600).
Не знаю уж, с чем это связано, разбираться не стал.
Адаптер - USR-TCP232-304, из дешевых, не исключено, что с времянками проблемы - на 19200 вообще не взлетело. Замена проводов и установка терминальных сопротивлений не помогла, как и манипуляции с битрейтом.
Взял бы Moxa, наверное, проблем бы не знал.
На частотнике 9600 бит/с + на адаптере Ethernet-RS485 9600 б/с: имеем периодические пропадания связи. Попробовал поиграться со скоростью адаптера и экспериментально обнаружил, что 9300 бит/с работает гораздо лучше (на частотнике по-прежнему 9600).
Не знаю уж, с чем это связано, разбираться не стал.
Адаптер - USR-TCP232-304, из дешевых, не исключено, что с времянками проблемы - на 19200 вообще не взлетело. Замена проводов и установка терминальных сопротивлений не помогла, как и манипуляции с битрейтом.
Взял бы Moxa, наверное, проблем бы не знал.
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Посмотрел исходник spindle-vfd... Мне кажется, опрос частотника там неоптимальный. Среди всех параметров есть те, к-рые есть смысл считывать почаще, есть которые нет смысла.
Из-за этой неоптимальности значение Default_Looptime не имеет смысла при величинах ниже 0.3сек (в моем случае 26 modbus фреймов на скорости 9600бит/с).
Будет время - перепишу...
А почему, кстати, после выхода из LCNC процесс spindle-vfd остается в списке процессов? И эта... если шпиндель был включен, он не выключается. Сходу не нашел причину.
Из-за этой неоптимальности значение Default_Looptime не имеет смысла при величинах ниже 0.3сек (в моем случае 26 modbus фреймов на скорости 9600бит/с).
Будет время - перепишу...
А почему, кстати, после выхода из LCNC процесс spindle-vfd остается в списке процессов? И эта... если шпиндель был включен, он не выключается. Сходу не нашел причину.
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2858
- Откуда: Тюмень
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Дренажный провод между адаптером и частотником присутствует?
Чудес не бывает. Бывают фокусы.
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Ну да, без него совсем худо было.
Вчера добавил ферритовые кольца на провода modbus и шпиндельные фазы, ошибки теперь бывают совсем редко. Сегодня ни одной не видел.
И провода modbus заменил на скрученную пару МГШВ-0.75, почему-то тоже помогло. А до этого были похожие, но другие (то же сечение, многожильные, луженые).
Вчера добавил ферритовые кольца на провода modbus и шпиндельные фазы, ошибки теперь бывают совсем редко. Сегодня ни одной не видел.
И провода modbus заменил на скрученную пару МГШВ-0.75, почему-то тоже помогло. А до этого были похожие, но другие (то же сечение, многожильные, луженые).
- Сергей Саныч
- Мастер
- Сообщения: 9116
- Зарегистрирован: 30 май 2012, 14:20
- Репутация: 2858
- Откуда: Тюмень
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Просто у некоторых инверторов не очевидно, куда его надо подключать. Например у Kinda двухконтактная колодка RS485 находится на одной стороне частотника, а зажим логического нуля - на противоположной. И пока не разобрал/прозвонил, не был уверен, что этот ноль - общий с приемопередатчиком интерфейса.Argon-11 писал(а):Ну да, без него совсем худо было.
Чудес не бывает. Бывают фокусы.
Re: Частотник и Modbus. Универсальная заготовка.
Шпиндель c ЧП SUNFAR E550 по Modbus
Если установить с Live CD http://www.linuxcnc.org/linuxcnc-2.7-wheezy.iso, то spindle-vfd компилиться без всяких проблем.
Но как только переходишь на Preempt-RT по инструкции в пункте 7.1 http://linuxcnc.org/docs/2.7/html/getti ... uxcnc.html вываливается куча ошибок, в том числе, что нет файла rtapi.h, в папке usr/include/. Почему это происходит я не могу объяснить, знаний не хватает. При этом всем, если поставить linuxcnc-dev, компиляция проходит но перестает работать linuxcnc-uspace и его приходиться переустанавливать.
Решил проблему по тупому, установил c Live CD Preempt-RT вот отсюда http://www.linuxcnc.org/testing-stretch-rtpreempt/ .
Дальше надо установить пакеты pkg-config и libglib2.0-dev (glib-2.0).
Стандартная процедура компиляции.
По частотнику SUNFAR E550 – приложены исправленные исходники.
По даташиту на частотник до и после чтения/записи регистра должен быть соблюден интервал больше 3.5 символов + запас. У меня заработало только при 3 000 000 нс.
У меня преобразователь ICPCON I-7561, при соединении GND на частотнике и преобразователе (экран кабеля RS-485), начинали сыпаться ошибки по Modbus при установке скорости шпинделя выше 3 000 об/мин. Оторвал все GND, связь изумительная и не одной ошибки.
Панель использовал только боковую, поэтому Tab правил.
Скорость на данный момент показывает в два раза меньше заданной, в даташите сказано, параметр «F2.19 This parameter is mainly used to calculate motor revolution». Установлено два полюса, как только найду тахометр, так сказать для очистки совести, проверю.
Все собрано пока только в тестовом режиме на столе.
Критика приветствуется, я начинающий по Linuxcnc.
Если установить с Live CD http://www.linuxcnc.org/linuxcnc-2.7-wheezy.iso, то spindle-vfd компилиться без всяких проблем.
Но как только переходишь на Preempt-RT по инструкции в пункте 7.1 http://linuxcnc.org/docs/2.7/html/getti ... uxcnc.html вываливается куча ошибок, в том числе, что нет файла rtapi.h, в папке usr/include/. Почему это происходит я не могу объяснить, знаний не хватает. При этом всем, если поставить linuxcnc-dev, компиляция проходит но перестает работать linuxcnc-uspace и его приходиться переустанавливать.
Решил проблему по тупому, установил c Live CD Preempt-RT вот отсюда http://www.linuxcnc.org/testing-stretch-rtpreempt/ .
Дальше надо установить пакеты pkg-config и libglib2.0-dev (glib-2.0).
Стандартная процедура компиляции.
По частотнику SUNFAR E550 – приложены исправленные исходники.
По даташиту на частотник до и после чтения/записи регистра должен быть соблюден интервал больше 3.5 символов + запас. У меня заработало только при 3 000 000 нс.
У меня преобразователь ICPCON I-7561, при соединении GND на частотнике и преобразователе (экран кабеля RS-485), начинали сыпаться ошибки по Modbus при установке скорости шпинделя выше 3 000 об/мин. Оторвал все GND, связь изумительная и не одной ошибки.
Панель использовал только боковую, поэтому Tab правил.
Все собрано пока только в тестовом режиме на столе.
Критика приветствуется, я начинающий по Linuxcnc.
- Вложения
-
- linuxcnc_modbas_sunfar_e550.tar.gz
- (361.46 КБ) 927 скачиваний
Последний раз редактировалось byba 29 янв 2019, 20:17, всего редактировалось 1 раз.
- Argon-11
- Мастер
- Сообщения: 2067
- Зарегистрирован: 07 июн 2017, 17:48
- Репутация: 461
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Могу выложить исходники с правильной скоростью, но в целом они не доделаны - ошибки частотника не обрабатываются + мои хотелки (выше писал) пока не реализованы.byba писал(а):Скорость на данный момент показывает в два раза меньше заданной,
Re: Частотник и Modbus. Универсальная заготовка.
По идеи расчет скорости правильный в исходниках такое ощущение что обороты соответствуют заданным в axis.
В даташите тоже сказано почти дословно, что параметр изменения полюсов служит для расчета оборотов.
В общем надо попробовать чисто физически проверить обороты, а потом разбираться с программой.
В даташите тоже сказано почти дословно, что параметр изменения полюсов служит для расчета оборотов.
В общем надо попробовать чисто физически проверить обороты, а потом разбираться с программой.