Safety¶
The Spectral Micro is a bare circuit board that drives a motor from a supply of up to 29 V. Read this chapter before you connect anything; the few rules here are the ones that destroy a driver, a motor or a finger when they are ignored.
Electrical¶
Supply polarity
Reversing the polarity on DC+ and DC− destroys the driver at once. Check the polarity of every power cable before you plug it in, every time.
Cable orientation on the daisy chain
The CAN and power cables that link one driver to the next are keyed by their orientation, not by their connector: a cable plugged in the wrong way round puts the supply on the wrong pins and destroys the driver. Use the cables from the Source Robotics shop, or make yours exactly as shown in Power and the CAN daisy chain.
UART is 3.3 V
The UART port runs at 3.3 V. A 5 V serial adapter destroys the board. Use a 3.3 V adapter, such as the one from the shop.
Supply voltage
12 to 29 V DC. The driver raises a Vbus error below 9 V and above #Vmax, 29 V after #Default. 29 V is
also the hardware limit: do not connect a supply that can rise above it, and allow for the voltage a
decelerating motor pushes back into the supply. A bench supply with a current limit is the safest way to
start.
Do not disconnect a running motor
Never unplug a motor, or a power cable in the daisy chain, while the driver is powered. The inductive kick of the windings and the arcing at the connector damage the driver stage.
Static electricity
Static electricity damages the microcontroller, the encoder chip and the driver stage. Unplug the supply and touch earthed metal before you handle the board, and hold it by its edges, away from the chips and the pads.
Mechanical¶
Moving parts
A calibrating or running motor turns without warning, in both directions, and a motor in position mode pushes back hard against a hand. Keep fingers, hair and cables away from the shaft and whatever is mounted on it, fix the motor to the bench before the first test, and test without a load on the shaft.
A powered motor can move with nobody at it
The driver moves its motor whenever a command arrives, over UART or from any host on the CAN bus, and keeps
following the last one. A speed command goes on turning the motor after the program that sent it has crashed
or its cable has come out, unless the watchdog is set (Stopping the motor). Before you
reach for the motor or the mechanism it drives, put the driver in idle (#Idle, Send_Idle) or switch the
supply off.
The encoder magnet
The magnet sits about 1 mm above the encoder chip. A magnet that touches the chip, or sits far too close, can damage the microcontroller; a magnet too far away gives a wrong position. Mount it as described in The encoder magnet.
Hot motor and driver
A motor running at its rated current gets hot enough to burn, and so do the driver's chips and the board
around them. Switch off and let both cool for a few minutes before you touch them. Set the current limit for
your motor (Current limit and loop tuning), use the thermistor, and give the driver
airflow when it runs near 2.8 A. #Ilim is clamped to 2800 mA, but the current limit of Send_Limits over CAN
and the current of a gripper move are used as sent: a host must keep them within the motor's rating and
2800 mA.
Stopping the motor¶
Send_ESTOPover CAN, or#Idleover UART, stops the motor at once; the E-stop error stays until it is cleared.- Cutting the supply stops the motor as well; the motor then holds nothing, so a vertical axis drops.
- The watchdog (Send_Watchdog) stops the motor by itself when the host stops talking.
Nothing on the driver is a certified safety function. A machine that can hurt someone needs an emergency stop that cuts the motor supply, independent of the driver.
Firmware updates and programming¶
When you connect a programming adapter to the JTAG connector, disconnect the motor supply and the UART adapter first. Updating over the bootloader needs no adapter; see Firmware.
Liability¶
The Spectral Micro is sold as a component for people who build their own machines. Its hardware designs, firmware and this documentation are under development and may contain errors. Whoever builds a machine with it is responsible for its safe design, assembly and operation.
Comments
Found a mistake on this page? Edit it on GitHub · Report it · Get help · This page as Markdown · llms.txt · The whole manual as PDF