Open Source Stepper Motor Controller Problem Statement

From Open Source Ecology
Jump to: navigation, search

See also Stepper Motor and Stepper Motor Controller.

News

Nov. 12, 2012 OSE Open Source Stepper Motor Controller is coming along. It is built upon the new Steppernug open source stepper drivers: File:Osestepper.jpg

Problem Statement

To date, there is no open source variant of the respected Gecko G540 stepper motor controller. Smaller ones are available for RepRap, but is there an open source option that could be used on a larger device such as the Torch Table Build? The problem statement involves driving the cost of these stepper controllers down to about $10 or so per axis by the ability to mill them on a bootstrapping CNC Circuit Mill. Thus, the problem statement is threefold:

  1. What is the best bootstrapping CNC circuit mill available that could produce not only the stepper motor controller but also the microcontroller (Arduino equivalent)?
  2. What is the best open source stepper controller that can be used, and can it be adapted to higher voltage power supplies that would allow sufficient power to drive a torch table?
  3. If the above is not possible, then we move on to an Open Source Stepper Motor Controller designed from the ground up

See Stepper Motor on Wikipedia for a high level description and a nice animation of how one works.
A Tutorial on Control of Stepping Motors.

Requirements

The stepper motor being considered is the Xylotex Nema 23 Double Stack/Double Shaft Bipolar Stepper Motor. See [1].

Specifications are:

Holding Torque 269 oz.in
Rated Current 2.8A/phase
Phase Resistance 1.13 Ohms
Phase Inductance 3.6mH
Step Angle 1.8 degree (200 spr)
Motor Body Length 3 inches
Shaft width .25 inch
Front Shaft length .75 inch
Back Shaft length .62 inch
Wire lead length ~12 inches

Possible Solutions

A possible solution is to use an existing open source driver option and a CNC mill to build them.:

  1. http://reprap.org/wiki/StepperMotor#Stepper_drivers
  2. Mantis Machine 9 - appears to have a boot-strappable stepper controller and microcontroller design that could be made on this $100 mill. Good points - $20 spindle; $100 for everything. Modify this to metal for stability, and this would make a great universal bootstrapping circuit mill to last a lifetime.
  3. SnapLock appears to be a robust bootstrapping mill, but cost is $600
  4. MyDIYCNC - $580 for complete kit
  5. RepRap Prusa Mendel - simplified version of RepRap Mendel. What's the cost for just circuit milling?
  6. News - Open Capitalist Controller is making a custom version of their open source controller, capable of handling 3.5A and 40V power, as a CNC circuit-millable version, design files to be provided by May 1, 2011
  7. Dr Iguana's open source stepper driver - this is an open source microprocessor controller using a dsPic microcontroller. Check out the video - it is FAST!!! All source code, schematics, gerber files & BOM are available at the same link.

KitsRUs

  1. KitsRUs Kit 94 Digital Rotary Control of a Unipolar Stepper Motor
    1. Picture of PCB
    2. encoder.zip Kit 94 source code 2K
    3. ecw1j.pdf Kit 94 Bourn Grey Switch encoder Data Sheet
  2. KitsRUs Kit 109 Unipolar Stepper Motor Driver Kit
    1. Drives any 5, 6 or 8 lead unipolar stepper motor. Based on the UCN5804 IC. All features of this IC (direction, on/off, pins 9 & 10) are brought out to SPDT PCB-mounted switches. Pulses from a 555 setup as an astable oscillator are used to rough position the motor. Switch to manual single-step mode for final positioning using a tact switch. 4 LED's give visual indication that step has been made. Three run modes supported. Full explanation
  3. KitsRUs Kit 113
    1. March 14, 2005. Kits 113 158 179. Peter Simmonds has developed a visual basic program with source code which can interface a PC running windows to the stepper motor kits K113, K158 and K179 via the parallel port. It uses a high speed timer component RSTimer. Both the source code and RSTimer are available for free at here. Two Stepper Motors Driven from a PC. Connects to the PC parallel port & will drive two stepper motors up to max. 3A each. All contained in an RS232, extended D-shell case. Software will accept 4 inputs from external switches. Software will also single step motors. Three run modes supported. All components supplied except the stepper motors. This kit uses a Grey switch aka bit switch, to single step a unipolar stepper motor in either direction. Uses a PIC 16C54 plus UCN5804 stepper driver IC. PCB is 4 in square, single sided.
  4. KitsRUs Kit 158, Bi-polar Stepper Motor Driver kit
    1. March 14, 2005. Kits 113 158 179. Peter Simmonds has developed a visual basic program with source code which can interface PC running windows to the stepper motor kits K113, K158 and K179 via the parallel port. It uses a high speed timer componentRSTimer. Both the source code and RSTimer are available for free at here
  5. KitsRUs Kit 187 Stepper Motor Drive
    1. The Stepper Motor Chopper Driver is a Bipolar Stepper Motor Drive with easily adjustable current control up to 2A, based on the SGS-Thompson L297 and L298 stepper motor controller and driver IC’s. Stepper motors are rated by current and and not by voltage. A chopper driver because it is switching on and off current allows a set current to be fed to the coils and not be dependent on the voltage of the power supply. The Chopper Driver also allows for the use of higher voltage power supplies (up to 36V) to overcome the effects of the inductance of the coils giving better performance and a higher top speed.

Electronics 123

Toll Free: 1-888-549-3749 (USA & Canada)
Tel: (330) 482-9944
Fax: (330) 266-7307
Web: http://www.electronics123.com 

General customer support questions:  E-mail: general@electronics123.com
Technical product questions/support:  E-mail: support@electronics123.com
 
Address:
Physical: 102 East Park Ave, Columbiana, OH 44408-1353, USA.
Mailing: PO Box 21, Columbiana, OH 44408-0021, USA. 

EasyDriver Stepper Motor Driver

  • A3967 microstepping driver
  • MS1 and MS2 pins broken out to change microstepping resolution to full, half, quarter and eighth steps (defaults to eighth)
  • Compatible with 4, 6, and 8 wire stepper motors of any voltage
  • Adjustable current control from 150mA/phase to 750mA/phase
  • Power supply range from 7V to 30V. The higher the voltage, the higher the torque at high speeds

Here is a simple motor controller for $14.25 at Electronics 123. Fully assembled, no less.

The EasyDriver is a simple to use stepper motor driver, compatible with anything that can output a digital 0 to 5V pulse (or 0 to 3.3V pulse if you solder SJ2 closed on the EasyDriver). EasyDriver requires a 7V to 30V supply to power the motor and can power any voltage of stepper motor. The EasyDriver has an on board voltage regulator for the digital interface that can be set to 5V or 3.3V. Connect a 4-wire stepper motor and a microcontroller and you've got precision motor control! EasyDriver drives bi-polar motors, and motors wired as bi-polar. I.e. 4,6, or 8 wire stepper motors. On this version (v4.4) we fixed the silk error on the min/max adjustment.

This is the newest version of EasyDriver V4 co-designed with Brian Schmalz. It provides much more flexibility and control over your stepper motor, when compared to older versions. The microstep select (MS1 and MS2) pins of the A3967 are broken out allowing adjustments to the microstepping resolution. The sleep and enable pins are also broken out for further control.

Advanced Microsystems, Inc.

Adr:   29 River Road Suite B, Essex Junction, VT 05452
TEL:   603-882-1447
Email: Sales@StepControl.com
Web:   [http://www.ams2000.com/]

AM IBC-400

.5A at 40 volts, non-inductive
RS-422 serial interface
[2]

SMC-40 Controller IC

http://www.ams2000.com/docs/DataSheets/smc40ds.pdf
http://www.ams2000.com/docs/TechManuals/smc40hwma.pdf
http://www.ams2000.com/docs/TechManuals/smc40swma.pdf

Alzanti

Telephone:    	+44 (0) 8707 700700, (UK)    08707 700700
Fax No:   	+44 (0) 8707 700699, (UK)    08707 700699
E-mail:   	Alzanti Sales, sales@mclennan.co.uk
Web:            [http://www.alzanti.com/]

PVP152 - Single Axis Stepper Controller, with integral 1 Amp per phase bipolar drive; "Stand Alone" & "Computer" modes, up to 15 axes may be "daisy chained" from one RS232 port. Format is 160 x 100 Eurocard with DIN41612 connector.
[3]

Arrick Robotics

Arrick Robotics
10768 Technology Dr. CR2335
Tyler, TX 75707 USA

Phone: 903.566.4700
Fax: 903.566.4709
Email: info@robotics.com
Web: [http://www.robotics.com/]

Motion control systems, robotics, etc.

C4 Controller

C4 is an intelligent motion controller that sends pulses to one or two MD2 drivers (4 motors). C4 accepts short, simple commands from the host via an RS232 serial port and handles all of the timing functions needed to coordinate and control motors.

Any host with an RS-232 port (or USB with the provided converter) can talk to C4. Normally the host is a PC, but it can also be a Mac or even a small microcontroller like a Basic Stamp.

Multiple C4's can be controlled by a single host, either by daisy-chaining the serial port, or by using multiple USB ports and converters.

C4 does not drive stepper motors directly, that is the job of the MD2 driver.

Learn about C4's simple, powerful command structure in the User Guide.

MD2 Controller

The MD2 contains the power supply and drive circuitry for 2 stepper motors. The MD2 must receive real-time control pulses from an intelligent controller such as C4 to operate.

The MD2 driver has been available for many years and in the past software was provided that turned a PC and its parallel printer port into a controller. Modern Windows operating systems and the demise of the printer port now require use of a separate controller such as C4, but that has many advantages including smoother motion and relieving the PC for other tasks.

Simple Step LLC

Phone:  1-973-948-2938 
Fax:  1-973-948-0182 
Adr:  12 West Owassa Turnpike, Newton, New Jersey 07860
Web: [https://www.simplestep.com]


SSMicroMC

Price: $261

  • RoHS compliant.
  • RTOS, 32 bit and 8K IEEPROM are standard.
  • 8K IEEPROM shared between axis
  • 60 MHz Microprocessor Controller.
  • Limit Switch Input (per axis).
  • Optical Motor Home input (per axis).
  • User programmable advanced acceleration and deceleration settings based on User Programmable Start Velocity, End Velocity and Slope. (per axis)
  • User Programmable Full, 1/2, 1/4, 1/8, 1/16 and 1/32 step control (per axis).
  • One (1) Bipolar Stepper motor drive (per axis).
  • Single 12.0 - 50.0VDC operation.
  • Up to 3.125 amps/phase, switching mode current controlled motor phase outputs (Software adjusted per axis).
  • User Programmable Baud Rates (9600, 19.2K, 38.4K, 57.6K (default), 115.2K, 230.4K and 460.8K).
  • Multiple boards on a single serial port and the ability to intermix Simple Step board types on the network
  • Software network address switch select on every board.
  • USB 2.0 virtual serial port interface.
  • Simple Step® Network RS232 and RS422/RS485 communications (jumper selectable).
  • RS422/485 120 ohm balance resistors on board (jumper selectable).
  • Two (2) User Controlled Open Collector Output Lines (2-500ma Sink) (per axis).
  • Three (3) User Input Lines (per axis).
  • Software Programmable Home Sensor Check (per axis).
  • Diode protected Home and Limit Sensor.
  • On Board 3.3VDC and 5.0VDC switchers with Power LED.
  • SSMicroMC board size 3.61" x 2.81" x 0.97" (Same form factor and hole mounts as the SSCB)
  • Large Dynamic Velocity range (from 1 step per second to 30,000 steps per second) per motor.
  • Prescaler installed on all units.
  • Software Programmable Motor Power Settings (256 power levels!) (per axis)
  • Synchronous Motor Movements with ALL Simple Step Controller Boards on the network (Up to 40 motors on 1 serial line)!
  • Up to +/- 2,147,483,647 steps of motion.
  • EMI (radiated) filtering on all boards to allow FCC and CE approvals.
  • Simple ASCII command set allowing use of standard PC communications packages.
  • Decimal or Hexadecimal ASCII numeric values can be used (per axis).
  • 8000 Character IEEPROM program buffer shared by all processors.
  • Jog control for each axis (per axis).
  • Single-ended Quadrature Encoder interface (per axis)
  • SSWin Program FREE with each purchase. (Windows 95/98/NT/2000/XP/Vista/7/8)


SSXYQE

Price: $340.00

  • 30 MHz Microprocessor Controllers.
  • User Programmable Baud Rates (9600, 19.2K, 38.4K, 57.6K (default), 115.2K).
  • Multiple boards on a single serial port and the ability to intermix Simple Step board types on the network
  • On Board network address switch select on every board.
  • Choice of the Simple Step® Network RS232 or RS422/RS485 communications.
  • Option Connector for later add-on or custom boards.
  • Two (2) User Controlled Open Collector Output Lines (1- 20 ma and 1-500ma).
  • Two (2) User Controlled Input Lines.
  • Software Programmable Home Sensor Check.
  • Diode protected Home Sensor.
  • On Board 5 volt Switcher and Power LED.
  • Heatsink Mounted to the PC Board.
  • Small Board Size 5.3" x 4.2" x 1.3" (with heat sink)
  • Large Dynamic Velocity range (from 1 steps per second to 15,000 steps per second with motors <= 5 mH per phase) per motor.
  • User Programmable Motor Power Settings (Full,1/4,OFF)
  • Synchronous Motor Movements with ALL Boards on the network (Up to 40 motors on 1 serial line)!
  • Limit Switch Input (per axis).
  • Optical Motor Home input (per axis).
  • EMI (radiated) filtering on all boards to allow FCC and CE approvals.
  • User programmable advanced acceleration and deceleration settings based on User Programmable Start Velocity, End Velocity and Slope.
  • User Programmable Half and Full step control (per axis).
  • Two (2) Bipolar Stepper motor drives.
  • Single 7.0 - 46.0VDC operation.
  • Up to 2 amp/phase, switching mode current controlled motor phase outputs (Hardware adjusted per axis).
  • Up to 65534 steps of motion (27.30625 feet with a user mechanical resolution of 0.005 inches per step).
  • Counting speeds up to 15,000 steps per second (each channel).
  • 2 Quadrature Encoders per board.
  • User programmable counting directions.
  • Counting from -2,147,483,648 to +2,147,483,647 steps.
  • User programmable x1 or x4 counting modes.
  • Simple ASCII command set allowing use of standard PC communications packages.
  • SSWin Program FREE with each purchase. (Windows 95/98/NT/2000/XP/Vista)
  • Optional Internal 2K, 4K, 8K and 16K of User Programmable on board EEPROM (Flash).
  • Programming language for EEPROM with decision branches based on User Input States (used with above Option).
  • Optional 32 bit movement (2,147,483,647 steps).
  • Optional RTOS (Real-Time Operating System).

SSXYZMicroMC

Price: $490.00

  • RoHS compliant.
  • RTOS, 32 bit and 8K IEEPROM are standard.
  • 8K IEEPROM shared between axis
  • 60 MHz Microprocessor Controller.
  • Limit Switch Input (per axis).
  • Optical Motor Home input (per axis).
  • User programmable advanced acceleration and deceleration settings based on User Programmable Start Velocity, End Velocity and Slope. (per axis)
  • User Programmable Full, 1/2, 1/4, 1/8, 1/16 and 1/32 step control (per axis).
  • One (1) Bipolar Stepper motor drive (per axis).
  • Single 12.0 - 50.0VDC operation.
  • Up to 3.125 amps/phase, switching mode current controlled motor phase outputs (Software adjusted per axis).
  • User Programmable Baud Rates (9600, 19.2K, 38.4K, 57.6K (default), 115.2K, 230.4K and 460.8K).
  • Multiple boards on a single serial port and the ability to intermix Simple Step board types on the network
  • Software network address switch select on every board.
  • USB 2.0 virtual serial port interface.
  • Simple Step® Network RS232 and RS422/RS485 communications (jumper selectable).
  • RS422/485 120 ohm balance resistors on board (jumper selectable).
  • Two (2) User Controlled Open Collector Output Lines (2-500ma Sink) (per axis).
  • Three (3) User Input Lines (per axis).
  • Software Programmable Home Sensor Check (per axis).
  • Diode protected Home and Limit Sensor.
  • On Board 1.8VDC, 3.3VDC and 5.0VDC switchers with Power LED.
  • SSXYZMicroMC board size 6.00" x 4.14" x 0.97"
  • Large Dynamic Velocity range (from 1 step per second to 30,000 steps per second) per motor.
  • Prescaler installed on all units.
  • Software Programmable Motor Power Settings (256 power levels!) (per axis)
  • Synchronous Motor Movements with ALL Simple Step Controller Boards on the network (Up to 40 motors on 1 serial line)!
  • Up to +/- 2,147,483,647 steps of motion.
  • EMI (radiated) filtering on all boards to allow FCC and CE approvals.
  • Simple ASCII command set allowing use of standard PC communications packages.
  • Decimal or Hexadecimal ASCII numeric values can be used (per axis).
  • 8000 Character IEEPROM program buffer shared by all processors.
  • Jog control for each axis (per axis).
  • Single-ended Quadrature Encoder interface (per axis)
  • SSWin Program FREE with each purchase. (Windows 95/98/NT/2000/XP/Vista/7/8)


Low Current Products

  • SSMicro, Price: $248.00
  • SSXYMicro, Price: $367.00
  • SSXYZMicro, Price: $460.00

Net Motion, Inc.

Adr: 4160 Technology Drive Fremont, CA 94538
Tel: 510-578-2808 
Fax: 510-743-4130
E-Mail: sales@netmotion.com
Web:  http://www.netmotion.com/

ACE-SDX Advanced single axis microstep Driver

  • 12 to 48 VDC voltage input
  • 100mA to 3.0A current setting
  • 2-500 microstep
  • 800K maximum pulse rate support
  • Opto-isolated differential Pulse/Dir (CW/CCW) inputs
  • Opto-isolated driver enable input
  • Opto-isolated over-temperature alarm output
  • Software Configurable

See Also

Stepper Motor