Difference between revisions of "USB-step"

From BitWizard Wiki
Jump to navigation Jump to search
Line 31: Line 31:


When you insert the board into your PC, you will get a virtual com port (VCP).
When you insert the board into your PC, you will get a virtual com port (VCP).
Under Windows you should get a device for which "no driver could be found". install [http://forum.chibios.org/phpbb/download/file.php?id=968&sid=1ea558897dff1ee77df5aa87ad6a008a this driver], and you will get a virtual com port.
Under Windows you should get a device for which "no driver could be found". install [http://www.bitwizard.nl/software/cdc.zip this driver], and you will get a virtual com port.


Use your favorite serial-communciation program to connect to the VCP. (I suggest Minicom/Kermit for Linux users, putty for windows-users).
Use your favorite serial-communciation program to connect to the VCP. (I suggest Minicom/Kermit for Linux users, putty for windows-users).

Revision as of 16:57, 18 January 2016

The USB_stepper board
The USB_stepper board

USB-step

The USB stepper allows you to step a small stepper a certain number of steps at regular intervals.

The intended use is for example home-built clocks.

Overview

The usb-step has basically two connectors. The USB connector (micro USB), and a 5-pin JST for the stepper motor.

The board has a few other connectors for debugging (for us), for power (GND/3V3/5V between the motor and USB connector), for SPI (in the future we might make it possible to add an SPI display for example), and for selecting the voltage of the powerpin of the SPI connector. These connectors are unpopulated.

The board is 50x25.

pinout

The JST power connector is something like

1 - 5V
2 - A+
3 - B+
4 - A-
5 - B-

default

By default the board will step every second, and make a full revolution in 15 minutes.

programming/protocol

When you insert the board into your PC, you will get a virtual com port (VCP). Under Windows you should get a device for which "no driver could be found". install this driver, and you will get a virtual com port.

Use your favorite serial-communciation program to connect to the VCP. (I suggest Minicom/Kermit for Linux users, putty for windows-users).

you'll be presented with a commandline interface. The "help" command lists the available commands.

clock lists or sets the "steps-per-second" setting.

cal lists or sets the crystal calbration.

write writes the current settings to flash.

pat allows setting the activation pattern. For forward use: 4 1 2 4 8, for reverse use "4 8 4 2 1" as the arguments.

step allows setting the time that the motor is activated/stepping speed. Times are in ms.


For adjusting the clock setting you must know that the board uses microsteps. It won't drive the motor with better than "full step" resolution, but it uses very small steps internally. The motor will make a full revolution every 34190060316 of these internal steps. The motor is actually stepped when the accumulated number of steps internally exceeds 2^24 = 16777216. So at the slowest setting, 1 internal microstep per second, the motor wil be issued a step every 2^24 seconds (about twice a year), resulting in a full revolution every milennium.

The time required for each step limits the fastest possible stepping rate. You can experiment with reducing the "step" times with the step command to see what is the fastest possible step rate with your load.

current usage

the board uses about 120mA per motor-phase that is activated. Normally only one is activated at a time. The motor is powered off between the movements. We measured about 12mA "in rest", Add to that (by default) about 1% times 120mA, the total average power is around 13-14 mA.

future

In the future the interval between each group-of-steps will be configurable, currently fixed at "1s".