Difference between revisions of "ABB ACS550 VFD"

From CNC Wiki
Jump to navigation Jump to search
(added another mbpoll command)
(added more mbpoll commands)
Line 23: Line 23:
 
<code>mbpoll</code> commands to interact with the VFD:
 
<code>mbpoll</code> commands to interact with the VFD:
  
<pre># to turn the spindle on
+
<pre># reset a fault
 +
./mbpoll /dev/ttyUSB0 1 -b 9600 -s 1 -P none -a 1 -r 8 -t 0
 +
 
 +
# turn the spindle on
 
./mbpoll /dev/ttyUSB0 6 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
 
./mbpoll /dev/ttyUSB0 6 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
 
sleep 0.1
 
sleep 0.1
Line 31: Line 34:
 
./mbpoll /dev/ttyUSB0 111 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
 
./mbpoll /dev/ttyUSB0 111 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
  
# to turn the spindle off
+
# turn the spindle off
 
./mbpoll /dev/ttyUSB0 6 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
 
./mbpoll /dev/ttyUSB0 6 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
  
# to reset a fault (needs to be tested)
+
# write commanded "speed" percentage (-20000 to +20000) TODO: write signed 16-bit instead of signed 32-bit which clobbers another register
./mbpoll /dev/ttyUSB0 1 -b 9600 -s 1 -P none -a 1 -r 8 -t 0
+
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2 -t 4:int -- 20000
  
 
# monitor output frequency (displays Hz * 10)
 
# monitor output frequency (displays Hz * 10)
Line 47: Line 50:
  
 
# monitor output voltage (displays V)
 
# monitor output voltage (displays V)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 109 -t 4</pre>
+
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 109 -t 4
 +
 
 +
# fetch minimum frequency (displays Hz * 10) that the commanded frequency gets clipped to
 +
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 1104 -t 4
 +
 
 +
# fetch "maximum" frequency (displays Hz * 10) corresponding to a command "speed" of 20000 (to establish the scale)
 +
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 1105 -t 4
 +
 
 +
# fetch commanded "speed" percentage (-20000 to +20000) TODO: see if this value is clipped
 +
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2 -t 4
 +
 
 +
# fetch minimum speed limit (RPM) (has no effect when using Parameter 9904 = 3 aka "SCALAR:FREQ" mode)
 +
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2001 -t 4
 +
 
 +
# fetch maximum speed limit (RPM) (has no effect when using Parameter 9904 = 3 aka "SCALAR:FREQ" mode)
 +
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2002 -t 4
 +
 
 +
# fetch minimum frequency limit (displays Hz * 10) NOTE: can be negative to have asymmetric limits containing 0. If positive, it creates a deadband above and below 0 (not just above!)
 +
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2007 -t 4
 +
 
 +
# fetch maximum frequency limit (displays Hz * 10)
 +
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2008 -t 4</pre>
  
 
== Replacement Parts ==
 
== Replacement Parts ==

Revision as of 05:44, 3 September 2019

ABB ACS550 family stock photo

Overview

VFD made by ABB, has an option for encoder feedback for closed loop spindle speed.

Software

Page 3 shows the pin mapping from the DB9 to the RJ45.

Page 11 mentions DriveWindow Light 2

DriveWindow Light 2.95 (update?) installer

Modbus Control

mbpoll

There is an open source utility that can speak Modbus over a serial port (or USB to serial) that has an RS-485 adapter attached. It's called mbpoll:

https://github.com/epsilonrt/mbpoll

mbpoll commands to interact with the VFD:

# reset a fault
./mbpoll /dev/ttyUSB0 1 -b 9600 -s 1 -P none -a 1 -r 8 -t 0

# turn the spindle on
./mbpoll /dev/ttyUSB0 6 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
sleep 0.1
./mbpoll /dev/ttyUSB0 7 -b 9600 -s 1 -P none -a 1 -r 1 -t 4 
./mbpoll /dev/ttyUSB0 15 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
./mbpoll /dev/ttyUSB0 47 -b 9600 -s 1 -P none -a 1 -r 1 -t 4
./mbpoll /dev/ttyUSB0 111 -b 9600 -s 1 -P none -a 1 -r 1 -t 4

# turn the spindle off
./mbpoll /dev/ttyUSB0 6 -b 9600 -s 1 -P none -a 1 -r 1 -t 4

# write commanded "speed" percentage (-20000 to +20000) TODO: write signed 16-bit instead of signed 32-bit which clobbers another register
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2 -t 4:int -- 20000

# monitor output frequency (displays Hz * 10)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 103 -t 4

# monitor output current (displays A * 10)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 104 -t 4

# monitor output power (displays kW * 10)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 106 -t 4

# monitor output voltage (displays V)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 109 -t 4

# fetch minimum frequency (displays Hz * 10) that the commanded frequency gets clipped to
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 1104 -t 4

# fetch "maximum" frequency (displays Hz * 10) corresponding to a command "speed" of 20000 (to establish the scale)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 1105 -t 4

# fetch commanded "speed" percentage (-20000 to +20000) TODO: see if this value is clipped
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2 -t 4

# fetch minimum speed limit (RPM) (has no effect when using Parameter 9904 = 3 aka "SCALAR:FREQ" mode)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2001 -t 4

# fetch maximum speed limit (RPM) (has no effect when using Parameter 9904 = 3 aka "SCALAR:FREQ" mode)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2002 -t 4

# fetch minimum frequency limit (displays Hz * 10) NOTE: can be negative to have asymmetric limits containing 0. If positive, it creates a deadband above and below 0 (not just above!)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2007 -t 4

# fetch maximum frequency limit (displays Hz * 10)
./mbpoll /dev/ttyUSB0 -b 9600 -s 1 -P none -a 1 -r 2008 -t 4

Replacement Parts

OPCA-01

RJ45 to DE9 adapter used to program the VFD using PC based software:

ABB OPCA-01 eBay Photo.jpg $22.50 + $9.90 -- ASEA BROWN BOVERI OPCA-01 / OPCA01 (RQANS2)

OTAC-01

Pulse Encoder Interface

OTAC-01 Pulse Encoder Interface Module User's Manual

Online Resources

ACS550 - General purpose drives - (Low voltage AC) | ABB

ABB ACS550 User’s Manual Rev H 2014-07-04

ACH550-01/02/U1/U2 Embedded Fieldbus Control

Motion Control Products Application note Configuring ACSM1 for use with BSM series servo motors AN00236-001

ABB general machinery drives ACS350, 0.37 to 7.5 kW / 0.5 to 10 hp Technical catalogue

DriveWare DriveWindow Light 2.94 User's Guide