[ Vfdmod ] An easy VFD control over MODBUS RTU

More
6 years 5 months ago #168126 by aekhv
Documentation moved to Github Wiki: github.com/aekhv/vfdmod/wiki

Please Log in or Create an account to join the conversation.

More
6 years 4 months ago #170476 by aekhv
DEB packages also moved to GitHub: github.com/aekhv/vfdmod/releases

P.S. Build for Armbian Buster (armhf) added to releases, so vfdmod is ready to work with Orange Pi ! :woohoo:

Please Log in or Create an account to join the conversation.

More
6 years 4 months ago #170587 by bbsr_5a
starting to have 2 comps of the same workaround is quite challenging the helping people here
as most use the system internal mb2hal comp and now this jups in on a deb install only view are using B) B)

Please Log in or Create an account to join the conversation.

More
6 years 4 months ago - 6 years 4 months ago #172194 by taloot
Replied by taloot on topic [ Vfdmod ] not control

aekhv wrote: It seems communication settings wrong (error code 110), check parameters in RS485 group. And please show your ini file here.


i have same error i cant solve it...

I have VFD-E delta
i adjust the setting in the VFD for baudrate but still i m getting error 110... in my windows it work with Delta VFDsoft

there is ASCII and RTU
also RTU modbus,
and ASCII modbus,

which protocol should work with this
Code:
# ********************************************************** # # Predefined (required) groups start here! These groups are: # # [Common] # [RS485] # [Control] # [SpindleRpmIn] # [SpindleRpmOut] # # ********************************************************** [Common] # HAL component name. Default value is 'vfdmod'. ;ComponentName=vfdmod # A maximum spindle speed shall be greater than zero. MaxSpeedRPM=24000 # A minimum spindle speed shall be greater than zero # and lower than (or equal to) MaxSpeedRPM. MinSpeedRPM=1200 # A maximum allowed difference between command speed and output speed # to set HAL 'at-speed' output to TRUE. # 0.00 = 0% # 1.00 = 100% # Default value is 0.05 (5%). ;AtSpeedThreshold=0.05 [RS485] # VFD slave address. SlaveAddress=1 # Serial device system path. SerialDevice=/dev/ttyUSB0 # Communication speed. BaudRate=9600 # Data bits: always 8. ;DataBits=8 # Parity: 'N' for none (default), 'E' for even, 'O' for odd. ;Parity=E # Stop bits: 1 (default) or 2. ;StopBits=1 # Loop delay in milliseconds, default value is 200 ms. # Range: 0 ... 10000. ;LoopDelay=100 # Delay in characters at front of every MODBUS request. # MODBUS specification recommends at least 3.5 characters, # so default value must be 4. # Increase this value if communication errors happen. # Range: 0 ... 100. ;ProtocolDelay=1 # A minimum count of successfull requests to set HAL 'is-connected' output # to TRUE. Default value is 10. Range: 1 ... 100. ;IsConnectedDelay=10 # Comma separated critical errors that call reconnection event. # For example: error code 5 occures when SerialDevice has been # physically disconnected. ;ConnectionErrorList=5 # Delay in milliseconds between reconnection attempts, this parameter # is active when ConnectionErrorList is not empty. Default value is 1000 ms. # Range: 0 ... 10000. ;ConnectionDelay=1000 [Control] # Function code: # 0x06 - write single register (default). # 0x10 - write multiple registers. # 0x05 - write single coil. # 0x0F - write multiple coils. ;FunctionCode=0x06 # ********************************************************** # Values below are active when FunctionCode is 0x06 or 0x10. # ********************************************************** # An address of the control register. Address=0x2000 # A value to run spindle forward. RunForwardValue=0x0010 # A value to run spindle reverse. RunReverseValue=0x0020 # A value to reset a fault state. # If this parameter is commented then fault reset feature will be disabled. ;FaultResetValue=0x????? # A value to stop spindle. StopValue=0x0001 # ********************************************************** # Values below are active when FunctionCode is 0x05 or 0x0F. # ********************************************************** # An address of the coil that turns spindle on. ;RunCoil=0x???? # An address of the coil that sets spindle direction. ;DirectionCoil=0x???? # An address of the coil that resets a fault state. # If this parameter is commented then fault reset feature will be disabled. ;FaultResetCoil=0x???? [SpindleRpmIn] # Function code: # 0x06 - write single register (default). # 0x10 - write multiple registers. ;FunctionCode=0x06 # An address of the command speed (or frequency) register. Address=0x2001 # 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=1 ;Divider=1 [SpindleRpmOut] # An address of the output speed (or frequency) register. Address=0x210C # 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=1 ;Divider=1 # ********************************************************** # # User defined groups start here! # # Each user group can be named at user choice, spaces are # allowed. For example: # [User parameter 5] # [123] # [DC bus voltage] # [output-current] # # Please note: group names are case insensitive, it means # [My-Parameter] and [my-parameter] are the same. # # ********************************************************** [User parameter 1] # Function code: # 0x01 - read coils. # 0x03 - read holding registers (default). ;FunctionCode=0x03 # An address of the user parameter register or coil. Address=0x0001 # HAL pin type: 'bit', 'float', 's32' or 'u32'. # This parameter is active when FunctionCode is 0x03. PinType=float # See above. # These parameters are active when PinType is not 'bit'. ;Multiplier=1 ;Divider=1 # Bit mask value, default is 0xFFFF. # This parameter is active when PinType is 'bit'. ;BitMask=0xFFFF # HAL pin name. PinName=user-float-parameter [User parameter 2] Address=0x0001 ;Multiplier=1 ;Divider=1 PinType=s32 PinName=user-s32-parameter [User parameter 3] Address=0x0001 ;Multiplier=1 ;Divider=1 PinType=u32 PinName=user-u32-parameter [User parameter 4] Address=0x0001 PinType=bit ;BitMask=0xFFFF PinName=user-bit-parameter [User parameter 5] FunctionCode=0x01 Address=0x0001 PinName=user-coil-parameter
Last edit: 6 years 4 months ago by taloot.

Please Log in or Create an account to join the conversation.

More
6 years 4 months ago #172219 by aekhv
Hi taloot,

Vfdmod works in RTU mode, ASCII mode is not supported. According to your INI file I see communication speed is 9600 baud, 8N1. Be sure your VFD is configured on the same way: parameter 9.08 should be 1, and 9.09 should be 6. Also check VFD slave address, it should be set to 1 as it specified in your INI file.

Please Log in or Create an account to join the conversation.

More
6 years 4 months ago #172289 by taloot

aekhv wrote: Hi taloot,

Vfdmod works in RTU mode, ASCII mode is not supported. According to your INI file I see communication speed is 9600 baud, 8N1. Be sure your VFD is configured on the same way: parameter 9.08 should be 1, and 9.09 should be 6. Also check VFD slave address, it should be set to 1 as it specified in your INI file.


yeah i did same but no luck,,, i used the VFDB component and it works well i used ur generator to make the pyvcp and it work fine (after manually edit it ) ,,

i just need to add some monitoring parameter to source driver,, do u have any idea how can i compile the vfd , component submake file

Please Log in or Create an account to join the conversation.

Time to create page: 0.184 seconds
Powered by Kunena Forum