Provided by: linuxcnc-uspace_2.9.0~pre1+git20230208.f1270d6ed7-1_amd64
NAME
mitsub_vfd - HAL userspace component for Mitsubishi A500 F500 E500 A500 D700 E700 F700-series VFDs (others may work) This uses the COMPUTER LINK protocol _not_ MODBUS. The connection is made through the PU connector.
SYNOPSIS
loadrt mitsub_vfd [--baud 4800] [--port /dev/ttyUSB0] name1=number1[,name2=numer2...] name1 is user selectable (usually a description of the controlled device). number1 is the slave number that was set on the VFD. Must be two digits (Parameter 117). name=number can be repeated for multiple VFD's connected together. --baud is optional as it defaults to 9600, all networked vfds must be set to the same baudrate. --port is optional as it defaults to ttyS0.
DESCRIPTION
The mitsub_vfd component interfaces a Mitsubishi VFD to LinuxCNC. The VFD is connected via RS-485 serial to the computer's USB or serial port using a RS-232/RS-485 converter.
HARDWARE SETUP
reference manual 'communication option reference manual' and A500 technical manual for 500 series. Fr-A700 F700 E700 D700 technical manual for the 700 series. The inverter must be set manually for communication (you may have to set PR 77 to 1 to unlock PR modification). You must power cycle the inverter for some of these, e.g. 79. VFD INTERNAL PARAMETERS: PARAMETER 79 - 1 or 0 PARAMETER 117 station number - 1 (can be optionally set 0 - 31) if component is also set PARAMETER 118 communication speed 96 (can be optionally set 48,96,192 if component is also set) PARAMETER 119 stop bit/data length - 1 (8 bits, two stop - don't change) PARAMETER 120 parity - 0 (no parity - don't change) PARAMETER 121 COM tries - 10 (if maximuim 10 COM errors then inverter faults- can change.) PARAMETER 122 COM check time interval 9999 (never check - if communication is lost inverter will not know (can change)) PARAMETER 123 wait time - 9999 No wait time is added to the serial data frame (don't change). PARAMETER 124 CR selection - 0 don't change PARAMETER 549 communication protocol - 0 computer link protocol - don't change - (not all VFDs have this) This driver assumes certain other VFD settings: -That the motor frequency status is set to show Hertz. -That the status bit 3 is up to speed -That the status bit 7 is alarm some models (eg E500) cannot monitor status. You must set set the monitor pin to false. In this case pins such as up-to-speed, amps, alarm and status bits are not useful.
PINS
[VFD NAME].fwd (bit, in):: forward/reverse pin [VFD NAME].run (bit, in):: run/stop pin [VFD NAME].debug (bit, in):: set debug mode pin This will print many messages to the terminal [VFD NAME].monitor (bit, in):: set monitor mode pin If false request-status command will not be sent to VFD. Status, amps, power, motor- feedback, and alarm would then not be useful. [VFD NAME].estop (bit, in):: set E-stop mode pin This will stop the VFD. Restarting requires the run pin to cycle. [VFD NAME].fwd (bit, out):: up-to-speed status pin Motor is at requested speed within VFD's settings tolerance. [VFD NAME].alarm (bit, out):: alarm status pin [VFD NAME].motor-cmd (float, in):: The requested motor speed, is Hertz [VFD NAME].motor-fb (float, out):: The motor feedback speed (from VFD) in Hertz (Hz) [VFD NAME].motor-amps (float, out):: The motor current, in amps [VFD NAME].motor-power (float, out):: The motor power [VFD NAME].scale-cmd (float, in):: Motor command's scale setting defaults to 1 [VFD NAME].scale-cmd (float, in):: Motor command's scale setting defaults to 1 [VFD NAME].scale-cmd (float, in):: Motor command's scale setting defaults to 1 [VFD NAME].stat-bit-0 (bit, out):: raw status bit [VFD NAME].stat-bit-1 (bit, out):: raw status bit [VFD NAME].stat-bit-2 (bit, out):: raw status bit [VFD NAME].stat-bit-3 (bit, out):: raw status bit set the VFD so this is motor-at-speed status [VFD NAME].stat-bit-4 (bit, out):: raw status bit [VFD NAME].stat-bit-5 (bit, out):: raw status bit [VFD NAME].stat-bit-6 (bit, out):: raw status bit [VFD NAME].stat-bit-7 (bit, out):: raw status bit Set the VFD so this in the alarm bit
SAMPLE HAL
loadusr -Wn coolant mitsub_vfd --port /dev/ttyUSB0 spindle=02 coolant=01 # **************** Spindle VFD setup slave 2 **************** net spindle-vel-cmd spindle.motor-cmd net spindle-cw spindle.fwd net spindle-on spindle.run net spindle-at-speed spindle.up-to-speed net estop-out spindle.estop # cmd scaled to RPM (belt/gearbox driven) setp spindle.scale-cmd .135 # feedback is in rpm (recipicale of command) setp spindle.scale-fb 7.411 # turn on monitoring so feedback works setp spindle.monitor 1 net spindle-speed-indicator spindle.motor-fb # *************** Coolant VFD setup slave 1 ***************** net coolant-flood coolant.run net coolant-is-on coolant.up-to-speed # cmd and feedback scaled to hertz setp coolant.scale-cmd 1 setp coolant.scale-fb 1 # command full speed setp coolant.motor-cmd 60 # allows us to see status setp coolant.monitor 1 net estop-out coolant.estop
ISSUES
Some models (eg E500) cannot monitor status, so set the monitor pin to false. In this case, pins such as up-to-speed, amps, alarm and status bits are not useful.