Страница 16 из 17

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 23 ноя 2019, 20:14
Serg
iMaks-RS писал(а):юмор конечно же понятен.. но поддержки 7i96 из коробки в 2.7.14 нет.
А каким боком 7i96 к модбасу?

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 01 фев 2020, 18:23
schlank
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

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 02 фев 2020, 15:27
aekhv
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?
Hi,

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.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 08 мар 2020, 12:54
aekhv
Захотелось переписать компонент в Qt с заданием настроек из ini-файла, чтоб не нужно было ковыряться в исходниках. Возникли сомнения в правильности моих расчётов задержки в конце передачи. Помогите волшебным пенделем :)
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 потому что бит чётности
Для 19200, 8N1 получается 3500000 * (8 + 1 + 1) / 19200 = 1822 нс. Как-то не сходится с примером выше, каким образом получилось 1750 нс?

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 08 мар 2020, 15:19
aekhv
Почитал описание протокола: https://www.best-microcontroller-projec ... works.html

В общем, если бит чётности не используется, то и в передаче его нет. Но! Я забыл посчитать старт-бит, который сигнализирует о начале передачи. Таким образом, для 19200-8N1 всё равно минимальная задержка получается 1822 нс.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 08 мар 2020, 15:40
Serg
BentScrew писал(а):Не уверен, но, кажется, бит чётности всегда присутствует, даже если не используется? Тогда считаю так:
Нет, бит чётности, стоповые биты относятся к канальному уровню (сетевая модель OSI) и в спецификацию самого протокола не входят, ибо Modbus это уже уровни представления и приложения.
BentScrew писал(а):Для 19200, 8N1 получается 3500000 * (8 + 1 + 1) / 19200 = 1822 нс. Как-то не сходится с примером выше, каким образом получилось 1750 нс?
Тут ключевое слово "допускается".

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 11 апр 2020, 07:35
ССыч
Подскажите пожалуйста !
Имею частотник 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 


Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 17 апр 2020, 10:21
aekhv
ССыч писал(а):Решил настроить регистры для чтения, записи и управляющие значения. И тут затык... Тут не силен где именно в описании они указаны? Помогите а ?
Я так понял адреса регистров задания частоты - 0001h и 0002h (стр. 293). Используется только один или оба - непонятно.

Команды на запуск и останов подаются установкой бит (стр. 292). Это надо делать через modbus_write_bit(), а текущая версия компонента этого не умеет, надо допиливать...

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 17 апр 2020, 19:59
ССыч
BentScrew писал(а):
ССыч писал(а):Решил настроить регистры для чтения, записи и управляющие значения. И тут затык... Тут не силен где именно в описании они указаны? Помогите а ?
Я так понял адреса регистров задания частоты - 0001h и 0002h (стр. 293). Используется только один или оба - непонятно.

Команды на запуск и останов подаются установкой бит (стр. 292). Это надо делать через modbus_write_bit(), а текущая версия компонента этого не умеет, надо допиливать...
Спасибо за ответ , буду копать.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 июн 2021, 11:37
iMaks-RS
Ниид хелп ))

Кто бы смог реализовать одну доп. опцию? Либо подсказать что и куда прописать в конфигурационные файлы/исходники. (к ТС обращался, данным проектом он больше не занимается и врятли будет, если я правильно понял)

Нужно "через гланды" запускать шпиндель.. стартовать на максимальном напряжении/оборотах, после выхода на максимальные обороты / задержки на раскрутку - уже устанавливать обороты заданные в УП и выжидать паузу 5-7 секунд.

Причина - "ударный" аккустический звук при запуске на частотах ниже 200Гц - особенность запуска некоторых высоко-оборитистых китайских шпинделей в векторном режиме на ПЧ IEK Control A-310.

п.с.
Желательно иметь возможность отключать эту опцию по кнопке в интерфейсе.. особенно когда в шпинделе "сковородка", "балеринка", или механический краеискатель.
У ПЧ есть функции ПЛК, попробую в этом направлении глянуть, если ничего не найду в описании - напишу на суппорт iek.. может что подскажут.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 июн 2021, 12:34
steals_y2k
почему бы не сделать это через отдельный конфиг под подобную обработку и/или ремап команды М3?
либо поправить пост под это дело(оптимально)

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 06 июн 2021, 21:53
N1X
iMaks-RS писал(а): особенно когда в шпинделе "сковородка", "балеринка", или механический краеискатель.
Если неприятность в принципе может произойти - она произойдет.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 14 июн 2021, 18:10
iMaks-RS
Дистр: 9.9.0 _Stretch_
Сделал по мануалу, установил пакет, сгенерировал файлы и т.д. Но не удалось создать /dev/rs485, поэтому подравил postgui.hal и вместо rs485 прописал ttyUSB0, правда пришлось изменить права доступа на 666
(для просмотра содержимого нажмите на ссылку)
Debug file information:
Note: Using POSIX realtime
/usr/bin/gmoccapy:311: GtkWarning: Invalid icon size 48

self.widgets.window1.show()

(gmoccapy:4195): GtkSourceView-CRITICAL **: gtk_source_language_manager_set_search_path: assertion 'lm->priv->ids == NULL' failed
postgui.hal:6: Pin 'vfdmod.ttyUSB0.is-connected' does not exist
4145
4191
Stopping realtime threads
Unloading hal components
Note: Using POSIX realtime
Что подправить нужно для запуска?

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 14 июн 2021, 18:23
steals_y2k
закомментировать на пробу этот пин, разумеется-возможно, он называется иначе.
можно в исходниках посмотреть.

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 14 июн 2021, 20:17
iMaks-RS
iMaks-RS писал(а): Pin 'vfdmod.ttyUSB0.is-connected' does not exist
предположил, что раз в сгенерированном конфигурационном файле был имено rs485, начал бодаться с его данными.. у него оказывает 3 пары вендор и модель.. хорошо что один серийник.. на второй паре "заколосилось"
Выправил файл обратно. Интерфейс запустился.. а вот ПЧ ни как не хочет принимать команды скорости.. в старой версии хоть можно было выбрать.. как управлять - по частоте или по проценту... В новой версии - нужно подбирать числитель и знаменатель.. вроде бы просто.. для % нужно умножить на 1 и поделить на 240... но не работает.. ни в какую.. Запускается на 10 Гц и всё. Или я что-то не так делаю, или "лучшее - враг хорошего".

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 14 июн 2021, 21:39
steals_y2k
или регистры изменились

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 15 июн 2021, 07:51
iMaks-RS
частотник тот-же, как и его регистры.. перешел с lpt на mesa

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 14 мар 2024, 21:16
Evgeny1
Привет!
прошу помощи в прикручиванию 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



Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 14 мар 2024, 21:39
alex_sar
открываете atv12 modbus programming manual pdf
ищете там описание "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

Re: Частотник и Modbus. Универсальная заготовка.

Добавлено: 14 мар 2024, 21:53
Evgeny1
https://inverterdrive.com/file/Schneide ... omm-Manual
страница 19
ниче не пойму что именно переводить и во что

там как раз и даны значения 000F , 0002 и 0080

PS про кнопки +- сказал наверно неправильно
если запустить ПЧ с панели и наболтать скажем 10Гц, то тыкая кнопки +- в аксисе можно добиться того чтоб индикатор (скорость набрана) стал зеленым
на ПЧ при этом скорость не меняется