А каким боком 7i96 к модбасу?iMaks-RS писал(а):юмор конечно же понятен.. но поддержки 7i96 из коробки в 2.7.14 нет.
Частотник и Modbus. Универсальная заготовка.
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Новичок
- Сообщения: 2
- Зарегистрирован: 01 фев 2020, 18:20
- Репутация: 0
- Настоящее имя: Robert Henke
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Tanks BentScrew for the great work!
I want to use your code with a Altivar ATV320 VDF. Can you briefly describe how to do that? Do I need to pickt he device in the config somwehere?
Thanks in advance,
schlank
I want to use your code with a Altivar ATV320 VDF. Can you briefly describe how to do that? Do I need to pickt he device in the config somwehere?
Thanks in advance,
schlank
- aekhv
- Мастер
- Сообщения: 393
- Зарегистрирован: 17 окт 2014, 15:03
- Репутация: 218
- Настоящее имя: Александр
- Откуда: г.Хабаровск
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Hi,schlank писал(а):I want to use your code with a Altivar ATV320 VDF. Can you briefly describe how to do that? Do I need to pickt he device in the config somwehere?
I think Spindle-Vfd module should work perfectly if your Altivar VFD supports MODBUS RTU mode. A quick start guide you can find on the first page of this topic and inside the 'spindle-vfd.c' source file. Unfortunately all comments are in russian, but I believe Google translator will help.
- aekhv
- Мастер
- Сообщения: 393
- Зарегистрирован: 17 окт 2014, 15:03
- Репутация: 218
- Настоящее имя: Александр
- Откуда: г.Хабаровск
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Захотелось переписать компонент в Qt с заданием настроек из ini-файла, чтоб не нужно было ковыряться в исходниках. Возникли сомнения в правильности моих расчётов задержки в конце передачи. Помогите волшебным пенделем
Для 19200, 8N1 получается 3500000 * (8 + 1 + 1) / 19200 = 1822 нс. Как-то не сходится с примером выше, каким образом получилось 1750 нс?
Не уверен, но, кажется, бит чётности всегда присутствует, даже если не используется? Тогда считаю так:UAVpilot писал(а):Modbus RTU — компактный двоичный вариант. Сообщения разделяются по паузе в линии. Сообщение должно начинаться и заканчиваться интервалом тишины, длительностью не менее 3,5 символов при данной скорости передачи. Во время передачи сообщения не должно быть пауз длительностью более 1,5 символов. Для скоростей более 19200 бод допускается использовать интервалы 1,75 и 0,75 мс, соответственно. Проверка целостности осуществляется с помощью CRC.
Код: Выделить всё
unsigned long minimum_delay_ns = 3500000 * (conn.dataBits + 1 + conn.stopBits) / conn.baudRate; // +1 потому что бит чётности
- aekhv
- Мастер
- Сообщения: 393
- Зарегистрирован: 17 окт 2014, 15:03
- Репутация: 218
- Настоящее имя: Александр
- Откуда: г.Хабаровск
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Почитал описание протокола: https://www.best-microcontroller-projec ... works.html
В общем, если бит чётности не используется, то и в передаче его нет. Но! Я забыл посчитать старт-бит, который сигнализирует о начале передачи. Таким образом, для 19200-8N1 всё равно минимальная задержка получается 1822 нс.
В общем, если бит чётности не используется, то и в передаче его нет. Но! Я забыл посчитать старт-бит, который сигнализирует о начале передачи. Таким образом, для 19200-8N1 всё равно минимальная задержка получается 1822 нс.
- Serg
- Мастер
- Сообщения: 21923
- Зарегистрирован: 17 апр 2012, 14:58
- Репутация: 5181
- Заслуга: c781c134843e0c1a3de9
- Настоящее имя: Сергей
- Откуда: Москва
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Нет, бит чётности, стоповые биты относятся к канальному уровню (сетевая модель OSI) и в спецификацию самого протокола не входят, ибо Modbus это уже уровни представления и приложения.BentScrew писал(а):Не уверен, но, кажется, бит чётности всегда присутствует, даже если не используется? Тогда считаю так:
Тут ключевое слово "допускается".BentScrew писал(а):Для 19200, 8N1 получается 3500000 * (8 + 1 + 1) / 19200 = 1822 нс. Как-то не сходится с примером выше, каким образом получилось 1750 нс?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
-
- Новичок
- Сообщения: 17
- Зарегистрирован: 29 сен 2018, 11:35
- Репутация: 0
- Настоящее имя: Виталий
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Подскажите пожалуйста !
Имею частотник Omron MX2
Скачала компоненту, установил, настроил связь через RS232-Rs485 и spindle-vfd.c . Запустил тестовый кофниг. С частоника читает заданную частоту и момент.
Решил настроить регистры для чтения, записи и управляющие значения. И тут затык... Тут не силен где именно в описании они указаны? Помогите а ?
Вырезку из манула по части Modbus прикладываю
Сейчас в spindle-vfd так
Имею частотник Omron MX2
Скачала компоненту, установил, настроил связь через RS232-Rs485 и spindle-vfd.c . Запустил тестовый кофниг. С частоника читает заданную частоту и момент.
Решил настроить регистры для чтения, записи и управляющие значения. И тут затык... Тут не силен где именно в описании они указаны? Помогите а ?
Вырезку из манула по части Modbus прикладываю
Сейчас в spindle-vfd так
Код: Выделить всё
#define STATUS_Command_Frequency 0x0001
#define STATUS_Output_Frequency 0x0002
#define STATUS_Output_Current 0x0003
#define STATUS_Output_Voltage 0x0004
#define STATUS_Output_Power 0x0005
#define STATUS_Output_Torque 0x0006
#define STATUS_Motor_RPM 0x0007
#define STATUS_DC_Bus_Voltage 0x0008
#define STATUS_Temperature 0x0009
#define STATUS_Uptime 0x000A
#define STATUS_Fault_Code 0x000B
#define COMMAND_REGISTER 0x2000
#define SET_FREQUENCY_REGISTER 0x2001
#define CONTROL_Run_Fwd 0x000C
#define CONTROL_Run_Rev 0x000D
#define CONTROL_Stop 0x000E
#define CONTROL_Fault_Reset 0x000F
- Вложения
-
- MX2-ru-UsersManual_instrukcija_293.pdf
- Omron MX2 Modbus
- (531.44 КБ) 517 скачиваний
- aekhv
- Мастер
- Сообщения: 393
- Зарегистрирован: 17 окт 2014, 15:03
- Репутация: 218
- Настоящее имя: Александр
- Откуда: г.Хабаровск
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Я так понял адреса регистров задания частоты - 0001h и 0002h (стр. 293). Используется только один или оба - непонятно.ССыч писал(а):Решил настроить регистры для чтения, записи и управляющие значения. И тут затык... Тут не силен где именно в описании они указаны? Помогите а ?
Команды на запуск и останов подаются установкой бит (стр. 292). Это надо делать через modbus_write_bit(), а текущая версия компонента этого не умеет, надо допиливать...
-
- Новичок
- Сообщения: 17
- Зарегистрирован: 29 сен 2018, 11:35
- Репутация: 0
- Настоящее имя: Виталий
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Спасибо за ответ , буду копать.BentScrew писал(а):Я так понял адреса регистров задания частоты - 0001h и 0002h (стр. 293). Используется только один или оба - непонятно.ССыч писал(а):Решил настроить регистры для чтения, записи и управляющие значения. И тут затык... Тут не силен где именно в описании они указаны? Помогите а ?
Команды на запуск и останов подаются установкой бит (стр. 292). Это надо делать через modbus_write_bit(), а текущая версия компонента этого не умеет, надо допиливать...
- iMaks-RS
- Мастер
- Сообщения: 1733
- Зарегистрирован: 10 июл 2017, 09:25
- Репутация: 199
- Настоящее имя: Maks
- Откуда: От туда.
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Ниид хелп ))
Кто бы смог реализовать одну доп. опцию? Либо подсказать что и куда прописать в конфигурационные файлы/исходники. (к ТС обращался, данным проектом он больше не занимается и врятли будет, если я правильно понял)
Нужно "через гланды" запускать шпиндель.. стартовать на максимальном напряжении/оборотах, после выхода на максимальные обороты / задержки на раскрутку - уже устанавливать обороты заданные в УП и выжидать паузу 5-7 секунд.
Причина - "ударный" аккустический звук при запуске на частотах ниже 200Гц - особенность запуска некоторых высоко-оборитистых китайских шпинделей в векторном режиме на ПЧ IEK Control A-310.
п.с.
Желательно иметь возможность отключать эту опцию по кнопке в интерфейсе.. особенно когда в шпинделе "сковородка", "балеринка", или механический краеискатель.
У ПЧ есть функции ПЛК, попробую в этом направлении глянуть, если ничего не найду в описании - напишу на суппорт iek.. может что подскажут.
Кто бы смог реализовать одну доп. опцию? Либо подсказать что и куда прописать в конфигурационные файлы/исходники. (к ТС обращался, данным проектом он больше не занимается и врятли будет, если я правильно понял)
Нужно "через гланды" запускать шпиндель.. стартовать на максимальном напряжении/оборотах, после выхода на максимальные обороты / задержки на раскрутку - уже устанавливать обороты заданные в УП и выжидать паузу 5-7 секунд.
Причина - "ударный" аккустический звук при запуске на частотах ниже 200Гц - особенность запуска некоторых высоко-оборитистых китайских шпинделей в векторном режиме на ПЧ IEK Control A-310.
п.с.
Желательно иметь возможность отключать эту опцию по кнопке в интерфейсе.. особенно когда в шпинделе "сковородка", "балеринка", или механический краеискатель.
У ПЧ есть функции ПЛК, попробую в этом направлении глянуть, если ничего не найду в описании - напишу на суппорт iek.. может что подскажут.
-
- Мастер
- Сообщения: 941
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
почему бы не сделать это через отдельный конфиг под подобную обработку и/или ремап команды М3?
либо поправить пост под это дело(оптимально)
либо поправить пост под это дело(оптимально)
- iMaks-RS
- Мастер
- Сообщения: 1733
- Зарегистрирован: 10 июл 2017, 09:25
- Репутация: 199
- Настоящее имя: Maks
- Откуда: От туда.
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Дистр: 9.9.0 _Stretch_
Сделал по мануалу, установил пакет, сгенерировал файлы и т.д. Но не удалось создать /dev/rs485, поэтому подравил postgui.hal и вместо rs485 прописал ttyUSB0, правда пришлось изменить права доступа на 666
Что подправить нужно для запуска?
Сделал по мануалу, установил пакет, сгенерировал файлы и т.д. Но не удалось создать /dev/rs485, поэтому подравил postgui.hal и вместо rs485 прописал ttyUSB0, правда пришлось изменить права доступа на 666
Что подправить нужно для запуска?
-
- Мастер
- Сообщения: 941
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
закомментировать на пробу этот пин, разумеется-возможно, он называется иначе.
можно в исходниках посмотреть.
можно в исходниках посмотреть.
- iMaks-RS
- Мастер
- Сообщения: 1733
- Зарегистрирован: 10 июл 2017, 09:25
- Репутация: 199
- Настоящее имя: Maks
- Откуда: От туда.
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
предположил, что раз в сгенерированном конфигурационном файле был имено rs485, начал бодаться с его данными.. у него оказывает 3 пары вендор и модель.. хорошо что один серийник.. на второй паре "заколосилось"
Выправил файл обратно. Интерфейс запустился.. а вот ПЧ ни как не хочет принимать команды скорости.. в старой версии хоть можно было выбрать.. как управлять - по частоте или по проценту... В новой версии - нужно подбирать числитель и знаменатель.. вроде бы просто.. для % нужно умножить на 1 и поделить на 240... но не работает.. ни в какую.. Запускается на 10 Гц и всё. Или я что-то не так делаю, или "лучшее - враг хорошего".
-
- Мастер
- Сообщения: 941
- Зарегистрирован: 29 окт 2017, 14:08
- Репутация: 60
- Настоящее имя: Makc
- Откуда: Ярославль
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
или регистры изменились
- iMaks-RS
- Мастер
- Сообщения: 1733
- Зарегистрирован: 10 июл 2017, 09:25
- Репутация: 199
- Настоящее имя: Maks
- Откуда: От туда.
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
частотник тот-же, как и его регистры.. перешел с lpt на mesa
- Evgeny1
- Кандидат
- Сообщения: 71
- Зарегистрирован: 03 июл 2016, 07:35
- Репутация: 1
- Настоящее имя: Evgeny
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
Привет!
прошу помощи в прикручиванию ATV12 к модбасу
запутался в регистрах
отображение частоты работает, индикатор скорость набрана тоже, кнопки +- тоже работают
запуск и останов НЕ работает
прошу помощи в прикручиванию ATV12 к модбасу
запутался в регистрах
отображение частоты работает, индикатор скорость набрана тоже, кнопки +- тоже работают
запуск и останов НЕ работает
Код: Выделить всё
[Common]
MaxSpeedRPM=24000
MinSpeedRPM=1000
[RS485]
SlaveAddress=1
SerialDevice=/dev/ttyUSB0
BaudRate=19200
DataBits=8
Parity=E
StopBits=1
Range: 0 ... 10000.
LoopDelay=200
ProtocolDelay=90
IsConnectedDelay=10
[Control]
# An address of the control register.
# 50000-1
Address=0x219A
# A value to run spindle forward.
RunForwardValue=0x000F
# A value to run spindle reverse.
RunReverseValue=0x080F
# A value to reset a fault state.
# If this parameter is commented then fault reset feature will be disabled.
FaultResetValue=0x0080
# A value to stop spindle.
StopValue=0x0002
[SpindleRpmIn]
# An address of the command speed (or frequency) register.
# 50010-1
Address=0x219A
# Multiplier and Divider are integer values to correct command speed value
# before it will be written to command speed register.
# Corrected command speed = (command speed) x Multiplier / Divider.
# Use both (Multiplier & Divider) to reach float coefficient.
Multiplier=4000
Divider=24000
[SpindleRpmOut]
# An address of the output speed (or frequency) register.
Address=0x0C82
# Multiplier and Divider are integer values to correct output speed value
# after it has been read from output speed register.
# Corrected output speed = (output speed) x Multiplier / Divider.
# Use both (Multiplier & Divider) to reach float coefficient.
Multiplier=24000
Divider=4000
[User parameter 1]
Address=0x0C84
# HAL pin type: 'bit', 'float', 's32' or 'u32'.
PinType=float
Multiplier=1
Divider=100
PinName=output-current
#[User parameter 2]
#Address=0x4203
#PinType=u32
#Multiplier=1
#Divider=1
#PinName=fault-code
-
- Мастер
- Сообщения: 1730
- Зарегистрирован: 28 авг 2018, 17:13
- Репутация: 287
- Настоящее имя: Алексей
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
открываете atv12 modbus programming manual pdf
ищете там описание "command word"
берете битовый калькулятор в руки и считаете нужные значения для
ищете там описание "command word"
берете битовый калькулятор в руки и считаете нужные значения для
Код: Выделить всё
# A value to run spindle forward.
RunForwardValue=0x000F
# A value to run spindle reverse.
RunReverseValue=0x080F
# A value to stop spindle.
StopValue=0x0002
- Evgeny1
- Кандидат
- Сообщения: 71
- Зарегистрирован: 03 июл 2016, 07:35
- Репутация: 1
- Настоящее имя: Evgeny
- Контактная информация:
Re: Частотник и Modbus. Универсальная заготовка.
https://inverterdrive.com/file/Schneide ... omm-Manual
страница 19
ниче не пойму что именно переводить и во что
там как раз и даны значения 000F , 0002 и 0080
PS про кнопки +- сказал наверно неправильно
если запустить ПЧ с панели и наболтать скажем 10Гц, то тыкая кнопки +- в аксисе можно добиться того чтоб индикатор (скорость набрана) стал зеленым
на ПЧ при этом скорость не меняется
страница 19
ниче не пойму что именно переводить и во что
там как раз и даны значения 000F , 0002 и 0080
PS про кнопки +- сказал наверно неправильно
если запустить ПЧ с панели и наболтать скажем 10Гц, то тыкая кнопки +- в аксисе можно добиться того чтоб индикатор (скорость набрана) стал зеленым
на ПЧ при этом скорость не меняется