Difference between revisions of "ABB ACS550 VFD"

From CNC Wiki
Jump to navigation Jump to search
(added another mbpoll command)
(updated dead link)
 
(One intermediate revision by the same user not shown)
Line 7: Line 7:
 
== Software ==
 
== Software ==
  
[http://www.baldormotion.com/support/SupportMe/Downloads/DocsLib/AN00236-001%20Configuring%20ACSM1%20for%20use%20with%20BSM%20series%20servo%20motors.pdf#page=3 Page 3] shows the pin mapping from the DB9 to the RJ45.
+
<del>[http://www.baldormotion.com/support/SupportMe/Downloads/DocsLib/AN00236-001%20Configuring%20ACSM1%20for%20use%20with%20BSM%20series%20servo%20motors.pdf#page=3 Page 3] shows the pin mapping from the DB9 to the RJ45.</del> (dead link)
 +
 
 +
[https://web.archive.org/web/20190712212905if_/http://www.baldormotion.com:80/support/SupportMe/Downloads/DocsLib/AN00236-001%20Configuring%20ACSM1%20for%20use%20with%20BSM%20series%20servo%20motors.pdf#page=3 Page 3] shows the pin mapping from the DB9 to the RJ45. (Wayback Machine)
  
 
[https://datasheet.datasheetarchive.com/originals/library/Datasheets-UD8/DSARS0030351.pdf#page=11 Page 11] mentions DriveWindow Light 2
 
[https://datasheet.datasheetarchive.com/originals/library/Datasheets-UD8/DSARS0030351.pdf#page=11 Page 11] mentions DriveWindow Light 2
Line 23: Line 25:
 
<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 36:
 
./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 52:
  
 
# 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 ==

Latest revision as of 05:35, 5 January 2023

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. (dead link)

Page 3 shows the pin mapping from the DB9 to the RJ45. (Wayback Machine)

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