Motor Analysis

Electrical pic

Stepper Specs

We started off experimenting with the Adafruit Shield and the JK57HS51-2804 bipolar stepper motor. However, these motors asked for 2.8A per phase at 12V, and the Adafruit shield could only provide up to 600mA continuous per motor, with 1.2A peak current. Moreover, the motor controllers on this shield are designed to run from 4.5V to 25V. Hence, these two items were not compatible with each other. Given the fact that any movement towards 1A would require a heatsink to be positioned on the motor driver, we decided to use a new bipolar stepper motor, NEMA 17, that required 350mA at 12V with 200 revolutions per step.

One Adafruit shield drove the xy-plane, while another one drove the AIRPO DC pump to pick up pieces and a servo motor to move in the z-axis.

Motor Shields and Raspberry Pi

Adafruit Motor Shields

We used the Adafruit motor shields to control our stepper motors. We decided to use Adafruit motor shields for several reasons. One of the reasons was because the Adafruit libraries were very well documented. The shields also can be mounted on the arduino easily. The stepper motors that we used also only required 350 mA so the Adafruit motor shields could sufficiently provide enough power for our stepper motors. It has to be noted that the shields were individually externally powered by a 12V, 5A, power supply and the Arduino itself, although powered through the Pi, had to be further powered by a battery, since the Pi didn't have enough power to keep the connection to Ethernet and at the same time power the Arduino.

Electrical pic

Limit Switches

Electrical pic

Defining Boundaries

To make sure that the gantry is fully calibrated and actually moves to the position that the Robot orders it to, we made our gantry go back to the origin, (0,0) after every move. This allowed the gantry to be re-calibrated every time the robot made a move . We set up limit switches at the end of the each axis so that when the limit switches are hit, the gantry will realize that it is at the origin.