Страница 1 из 2

ModBus и Mach3

Добавлено: 09 авг 2018, 20:09
vala
Покопался в сети и нарыл кучу информации по интересующей меня теме, как управлять шпинделем по ModBus. За пару вечеров разобрался что к чему, естественно что не во всём досконально.
Далее описание того как я это реализовал.
Имеем ПЧ Е100 и преобразователь с RS 232 на RS485 (свисток). Эти железки могут быть любыми, но ПЧ должен поддерживать связь по RS485.
image22.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144242&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (19.39 КБ)</a>
image34.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144243&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (29.77 КБ)</a>
Далее необходимо найти нужную информацию в мануале частотника.
image7.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144244&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (54.52 КБ)</a>
image28.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144248&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (70.06 КБ)</a>
image17.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144245&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (74.86 КБ)</a>
image21.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144247&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (80.37 КБ)</a>
image18.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144246&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (70.96 КБ)</a>
Находим адреса интересующих нас регистров
500H; 502H; 503H
Это адреса регистров откуда будут читатса данные о состоянии ПЧ.
Преобразуем начальный адрес 500H из hex в dec - 1280, это нужно Mach3.
С адреса 502H читаетса частота (две цыфры после запятой читаютса в месте как целое число)

900H; 901H
Это адреса регистров для управления частотником. Начальный адрес также преобразуем в dec число - 2304.

Присвоим адрес частотнику - 1, так как он у нас подчинённый .

Как соединить комп с частотником через свисток расказывать не буду, там и так всё ясно.
Желательно скачать и установить QModBus http://qmodbus.sourceforge.net/ .

Перед тестированием необходимо изменить настройки в частотнике.
P0-055 на 1 ( адресс частотника)
P0-056 на 2 (скорость передачи данных, ставте какую хотите)
P0-057 на 0 (1 start bit, 8 data bit, no parity sheck, 1 stop bit)

У меня свисток сидит на COM1
Запускаем и конфигурируем QModBus.
image30.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144249&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (83 КБ)</a>
Запускаем частотник и кнопкой “send” делаем опрос.
Меняем потенцыометром частоту, включаем и выключаем шпиндель и т. д., делаем опросы.
Если цыферки и знаки в окне Bus Monitor меняютса, значит всё в порядке (свисток свистит частотник откликаетса).
image33.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144250&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (32.59 КБ)</a>
Закрываем QModBus.

Теперь меняем параметры управления частотником.
P0-000 на 2 (вид комуникацыи по вводу команд)
P0-002 на 6 (вид комуникацыи по изменению частоты)

Далее настраиваем Mach3 для работы с частотником.

Запускаем Mach3 и активируем комуникацыю по ModMus
image12.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144251&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (79.55 КБ)</a>
и делаем рестарт Mach3.

Открываем “Function Cfg’s” - “Setup Serial ModBus Control” и указываем которыми регистрами пользоватса.
Создаём две группы регистрацыи:
CFG#0 - для считывания данных
CFG#1 - для управления частотником
image4.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144252&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (131.27 КБ)</a>
если есть желание можно нажать кнопку “Test ModBus” или закрываем окно и рестарт Mach3.
Далее приступаем к созданию мозгов. Для этого открываем в меню “operator” - “ Brain Editor”
image19.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144253&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (12.98 КБ)</a>
и пишем название нами создаваемых мозгов. Сперва создаём долю (lobe) для считывания частоты. В следующем окне в меню “Commands” выбераем “Add”. В окне “Add Input” выбераем “ModBus”. В поле адреса пишем 2 (адрес регистра 502H) а в поле
CFG# пишем 0 (группа считывания данных) и активируем радио кнопки как на скрине.
image13.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144254&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (84.11 КБ)</a>
Получаем результат.
image14.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144255&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (26.1 КБ)</a>
Кликаем на новой рамке чтобы она стала зелёной. Продолжаем - “Commands” - “Add Input”, в окне “Input Lobe” выбераем “Formula”.
image24.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144256&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (66.62 КБ)</a>
Чтобы узнать число оборотов пишем формулу - А*0.6
image20.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144257&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (80.32 КБ)</a>
Результат.
image5.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144258&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (30.84 КБ)</a>
Активируем созданную формулу и закрываем долю выбирая “DRO’s”
ставим галку на доступ к номеру и записываем 1100.
image16.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144259&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (48.43 КБ)</a>
Результат.
image31.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144260&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (28.15 КБ)</a>
Продолжаем по такому же алгоритму.
Генерируем новую долю(lupu) для включения шпинделя. В окне “Add Input” выбераем “LEDs”, там выбираем” LED11 Spindle ON” который контролирует Mach3.
image23.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144261&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (61.67 КБ)</a>
Далее добавляем “No Operation” и закрываем долю(lupu) терминатором “ModBus” как показанно на скрине (почему настройки такие, кому интересно - разберётесь) .
image10.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144262&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (76.4 КБ)</a>
Результат.
image26.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144263&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (35.97 КБ)</a>
Генерируем новую”Lupu” для управления изменением частоты. В окне “ Add Input” выбераем “DROs”, там выбераем “202- Spin RPM - Overden” что тоже контролируетса Mach3.
image35.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144264&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (68.62 КБ)</a>
Далее “Imput Lobe”- “No Operation” и “Imput Lobe” - “Formula”. Записываем А/0.6 и закрываем долю(lupu) терминатором “ModBus” как показанно на скрине.
image1.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144265&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (39.38 КБ)</a>
Для смены направления вращения.
Новая “Lupa”
image11.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144266&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (70.99 КБ)</a>
и терминатор
labots_1.JPG (12904 просмотра) <a class='original' href='./download/file.php?id=151977&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (89.83 КБ)</a>
Для считывания силы тока
Новая “Lupa”,
image9.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144268&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (82.52 КБ)</a>
формула - А/10
и терминатор,
image27.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144269&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (81.52 КБ)</a>
результат
image32.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144270&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (53.02 КБ)</a>
сохраняем.
image6.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144271&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (111.94 КБ)</a>
Рестарт Mach3.

Открываем меню”Operators”- “Brain Control” перезагружаем ”Reload All Brains” и отмечаем “Enabled”,
image29.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144272&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (25.62 КБ)</a>
вибираем “ WievBrain”
image2.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144273&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (82.72 КБ)</a>
Запускаем шпиндель, меняем обороты и наблюдаем за изменениями в окне “BrainWiev”
image25.jpg (13442 просмотра) <a class='original' href='./download/file.php?id=144274&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (51.31 КБ)</a>
Теперь шпиндель управляется по “взрослому”.
Для того чтобы видеть обороты шпинделя и силу тока в окне Mach3 необходимо редактировать скринсет.
За граматику не пинайте, школу кончал пол века назад, да и писанина не моё.
В основном материал от сюда http://www.ubit-rc.de/en/modbus.php

Re: ModBus и Mach3

Добавлено: 19 авг 2018, 12:35
nickoass
Спасибо за подготовку мануала по этой щепетильной теме. Многм будет очень кстати.
Сам было озадачился этим вопросом не так давно. По крупицам собирал информацию везде. Все заработало. Доработал немного интерфейс Mach3, добавил индикаторы в которых отображается ток, частота, температура из частотника, передаваемые по модбасу. Ещё хочу собрать на ардуино измеритель температуры охлаждающей жидкости шпинделя и по модбасу закидывать их на индикацию в Mach3. Мануал писать на эту тему было лень.

Re: ModBus и Mach3

Добавлено: 19 авг 2018, 14:10
savo
На "шнайдере" такой мозг не скорее всего не заработает.

Re: ModBus и Mach3

Добавлено: 20 авг 2018, 00:33
nickoass
Почему не заработает ? Главное нащупать те регистры в которые нужно класть информацию запуска останова и скорости.

Re: ModBus и Mach3

Добавлено: 02 сен 2018, 10:27
msl272
Номера OEM DRO были выбраны чисто случайно ( 1100 и 1200) или в этом есть какой то смысл?.
Тема была бы полностью закрыта если сюда приписать пример настройки вывода информации.
Т.е. мы считали параметры с частотника. Как их вывести на экран?

Re: ModBus и Mach3

Добавлено: 28 ноя 2018, 18:41
msl272
И в брайнах похоже ошибка.
Сигналы переменных включения шпинделя и направления вращения транслируются в один и тот же бит в частотнике. Чего в принципе быть не может.

Re: ModBus и Mach3

Добавлено: 28 ноя 2018, 20:42
vala
msl272 писал(а):И в брайнах похоже ошибка.
Сигналы переменных включения шпинделя и направления вращения транслируются в один и тот же бит в частотнике. Чего в принципе быть не может.
Так оно и есть, вот ту надо записать 1.
labots_1.JPG (12970 просмотров) <a class='original' href='./download/file.php?id=151425&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (81.4 КБ)</a>

Re: ModBus и Mach3

Добавлено: 02 фев 2020, 21:56
dr.elek72
Спасибо автору за очень полезную информацию по настройке ModBus в Mach3.
Сегодня получилось настроить управление для китайца H100.
частотник с али (10965 просмотров) <a class='original' href='./download/file.php?id=176081&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (76.4 КБ)</a>
частотник с али
Mach3 который высылают китайцы с али (Mach3VersionR3.041) оказался нерабочим в плане ModBus - ошибка CRC пакета данных ModBus.
Установка более свежей версии все ОК.

Вопрос знатокам по теме - как сделать останов/авар.стоп при потере связи с частотником (ошибке ModBus)?

Upd: Народ напишите кто нибудь автору этой темы в личку чтобы заглянул в эту ветку, сам пока еще не дорос :wik: .
Надеюсь он обладает необходимыми сведениями.

Re: ModBus и Mach3

Добавлено: 04 фев 2020, 08:42
dr.elek72
To vala спасибо за ответ в ЛС.

Вопрос собственно был по mach3, как обработать событие polling timeout на Com порте если таковое имеется в mach3.
В настройках модбас (у mach3) есть частота чтения параметров и timeout, но я обрываю rs485 и estop не происходит.
А насчет регистров - прежде чем обрабатывать их значения необходимо точно знать данные достоверные или нет.

polling timeout = false -> data valid := true

Upd: еще короче polling timeout -> Estop
Вечером съезжу к другу которому настраивал mach3, проверю что происходит при разрыве rs485 с данными от частотника, количество оборотов и ток которые я вывел на панель.
Если обнуляются то с этим можно еще жить и использовать в необходимых целях.

Re: ModBus и Mach3

Добавлено: 04 фев 2020, 12:37
Serg
dr.elek72 писал(а):А насчет регистров - прежде чем обрабатывать их значения необходимо точно знать данные достоверные или нет.
Если приняты/переданы, то достоверные - об этом сам протокол позаботится.

Re: ModBus и Mach3

Добавлено: 04 фев 2020, 19:59
dr.elek72
Доехал до местонахождения станка, что получилось.
Mach R3.043.053
Проверка обработки ModBus в Mach3 (для просмотра содержимого нажмите на ссылку)
Modbus cfg.jpg (10832 просмотра) <a class='original' href='./download/file.php?id=176221&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (316.74 КБ)</a>
Брайн у меня пока из всего пула данных читает и выводит на экран кол-во оборотов и силу тока, ну еще конечно устанавливает частоту, старт и cw.
Включил F5, на экране обороты и ток (ток дрожит +- 0.1 А), видно что данные живые, все ок. Останавливаю (F5) шпиндель все по нулям.
Опять стартуем, все живое. Отключаю rs485 (проводок витой пары, а не адаптер из компьютера) - данные замирают, не меняются, ток не дрожит...
Подсоединяю проводок rs485 - опять все оживает.
Возможно ждал недолго (секунд 10) и по таймауту не дошел опрос до нужного регистра.
Теперь к станку получится сьездить в выходные, прижму таймаут до 50 и опрос почаще до 100.
Если у Вас это не так напишите версию вашего mach3 и что происходит с данными при обрыве rs485.
Китайский Mach3VersionR3.041 - при тесте модбас - ошибка CRC.

Upd: В документе http://www.homanndesigns.com/pdfs/Using ... _Mach3.pdf на который есть так же ссылка с Machsupport написано следующее:
при истечении таймаута чтения данных происходит просто переход на чтение след.регистра - таймаут - след и т.д.
Соответственно данные уже не обновляются - то есть недостоверны... quality item := bad.

Re: ModBus и Mach3

Добавлено: 15 фев 2020, 12:53
Intenso_Sergey
Помогите с настройкой, привод dzb200, свисток USB-RS485. Какое значение вписывать в "# of Registers" И правильно ли вывод заполнен вывод адресов ??
IMG_20200215_112803.jpg (10681 просмотр) <a class='original' href='./download/file.php?id=176733&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (3.12 МБ)</a>
IMG_20200215_112814.jpg (10681 просмотр) <a class='original' href='./download/file.php?id=176734&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (2.94 МБ)</a>
3.png
3.png (10.17 КБ) 10681 просмотр
Для Spindle ON
Для Spindle ON
1.png (10.87 КБ) 10681 просмотр
Для Spin RPM
Для Spin RPM
2.png (10.85 КБ) 10681 просмотр
6.png (10681 просмотр) <a class='original' href='./download/file.php?id=176736&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (28.55 КБ)</a>

Re: ModBus и Mach3

Добавлено: 15 фев 2020, 13:49
vala
Anotācija 2020-02-15 124739.png (10674 просмотра) <a class='original' href='./download/file.php?id=176739&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (120.2 КБ)</a>

Re: ModBus и Mach3

Добавлено: 15 фев 2020, 13:51
Intenso_Sergey
vala писал(а):
Anotācija 2020-02-15 124739.png
Не внимательно прочитал мои вопросы, я там задал вопрос какие значение в эти пункты вписывать.

Re: ModBus и Mach3

Добавлено: 15 фев 2020, 14:08
vala
Intenso_Sergey писал(а):
vala писал(а):
Anotācija 2020-02-15 124739.png
Не внимательно прочитал мои вопросы, я там задал вопрос какие значение в эти пункты вписывать.
Полагаю, что определить количество нужных вам регистров вы способны и сами.

Re: ModBus и Mach3

Добавлено: 15 фев 2020, 14:18
Intenso_Sergey
vala писал(а):Полагаю, что определить количество нужных вам регистров вы способны и сами.
Если б мог не задавал вопрос, я не понял за что они отвечают, количество команд на определенный адрес?

Re: ModBus и Mach3

Добавлено: 15 фев 2020, 16:45
vala
Из группы с начальным адресом 1000H вы будете как я понял задействовать два регистра, значит пишите 2.

Re: ModBus и Mach3

Добавлено: 15 фев 2020, 17:47
Intenso_Sergey
vala писал(а):значит пишите 2
А для частоты 1 ?там значение от 0 до 10000 ?
А по этим настройкам всё так ??
1.png
1.png (10.87 КБ) 10625 просмотров
2.png
2.png (10.85 КБ) 10625 просмотров
3_1.png (10625 просмотров) <a class='original' href='./download/file.php?id=176745&sid=d92b3a38898bb42408a89dd41cbf8eca&mode=view' target=_blank>Загрузить оригинал (15.14 КБ)</a>

Re: ModBus и Mach3

Добавлено: 26 фев 2020, 21:08
msl272
Как показала практика полностью управлять частотником по модбасу слишком рискованно в плане безопасности.
Наилучшее решение - это отправлять и получать данные по модбасу, а для включения использовать все таки контакт релюшки с платы контроллера.
При таком решении все работает абсолютно корректно.

Re: ModBus и Mach3

Добавлено: 06 май 2020, 10:42
Shurup89
Здравствуйте, помогите, пожалуйста, не могу решить задачу по синхронизации осей на токарном станке.
Вкратце опишу свою проблему: имеется двухосевой токарный станок, управляемый mach3 через контроллер PLC230EU от purelogic и всё меня в нём устраивает, кроме того, что не могу резьбу на нём нарезать. Установил на шпиндель сервопривод, настроил на 0+10В - наткнулся на проблему с отсутствием возможности mach3 получать информацию от энкодера сервопривода; настроил на step/dir - оказалось, что mach3 не поддерживает синхронизацию осей или я чего-то не понимаю, однако заставить всю эту схему нормально работать у меня не получилось. Пожалуйста, помогите, кто может!!!