Getting Started with the AutoDriver - v13
Compared to traditional step/direction motor controllers, it offers a number of advantages:
- The L6470 tracks the current position of the motor, so the application level doesn't have to.
- "Fire-and-forget" motion control, which allows the application to continue working while the motor autonomously completes the desired motion.
- Acceleration and deceleration curves without complex software algorithms.
- Microstepping for extra smooth movements.
- Configurable currents for acceleration, deceleration, run, and hold, which give greater control to the user over power consumption.
- SPI interface, which allows for a greater number of motors to be driven from a single processor.
The primary disadvantage of the L6470 is that it requires a great deal more configuration and adds software complexity to your system. This hookup guide will attempt to relieve some of that difficulty.
Differences in v13 of the hardware
Version 13 of the hardware is slightly different to the previous revision. It has been modified to make it easier to daisy-chain multiple boards together with simple 10-conductor ribbon cables for data and 6-conductor ribbon cables for control.
The library has changed as well, although it is possible to use the new library with the old revisions. The main addition to the library is an index parameter which is passed to the class constructor, allowing the user to specify where each Autodriver board is in a chain. Pin and SPI configuration were moved out of the library, as well, allowing for the use of SPI ports other than the main port on devices with more than one SPI port.
Before you get started, you may want to look at these other tutorials to get you headed in the right direction:
- SPI - The Serial Peripheral Interface is the means by which the L6470 chip, and therefore the AutoDriver board, communicates with the system master CPU.
- Motors - Understanding stepper motors is important to driving them.
- Installing an Arduino Library - The AutoDriver has an Arduino library; if you don't already know how to install a new library, check out this tutorial to get you pointed in the right direction.