Gantry Robot Control System for Chemical Processing

MSU Logo

Project Overview
    The Mass Spectrometry Laboratory (MSL) at Montana State University has an Ettan Spot Picker (ESP), which is a gantry robotic arm system designed to extract molecules from an electrophoresis gel. This piece of laboratory equipment’s primary function is to move a probe to a specified location on a tray, collect a sample, and deposit it in a collection tube. The ESP’s current system setup is the following: a camera scans the gel tray placed below the robotic arm for location markers, and the arm calibrates to those. Then the spot picker analyzes the images to determine protein locations in the gel, and the user controls which spots to pick via a GUI connected to the ESP’s control software. Currently the equipment and analysis software is only compatible with one type of gel and probe, however the MSL would like to use the ESP for other types of sampling methods which require different gels, probes, and analysis. They would also like more direct control over the arm’s movements, because it currently can only travel to pre-determined locations chosen by the control software.


An Ettan Spot Picker in operation
 
 
   Ettan Spot Picker
Picture of an Ettan Spot Picker

Goals

Proposed Design
System schematic

        User Interface and Motion Language

        The GUI will allow the user to create his or her own script to control the arm's movement from a given set of commands, which are the following:
  • Non-safe linear move: This will move the arm from its current location to the designated one without checking if the arm is in the “safe plane.” The user will be allowed to specify a duration length to move the arm; however, if no inputs for this are given the machine will fall back to the default speed.
  • Safe move: This will first check to see if the arm is in the “safe plane.” If it is, the arm will move to its new designated location. If it is not, it will move the arm up and proceed the same as non-safe move.
  • Lower arm: This will lower the arm out of the “safe plane.”
  • Raise arm: This will raise the arm to the “safe plane."
  • Return to home: This will raise the arm and move it back to the start position.
  • Deposit into collection tube: This command moves the arm from its current location to a user-specified collection tube.

    Cyclone V

    In our design, we decided to completely remove the existing cotnrol system becasuse it was all on one board. We are replacing it with use a Cyclone V as our processing unit.  It has an ARM processor on the same chip as an FPGA. The ARM processor can run linux which allows for easier troubleshooting and allows the use of scripting languages such as Python.  The advantage of the FPGA is that is allows for customization of the I/O for future applications. For example the ESP has a camera which is used to determine the locations for sampling. The FPGA could do initial processing of the data from the camera. Also the FPGA would allow the control system to be adapted to control other applications with now redesigning of the system’s hardware. The  FGPA will  be connected to  commertial motor drivers. 

     

    Cyclone V development board


    The power system from the previous control system will be used for this design. It takes 120V AC and converts it to 24V and 5V DC. It was designed to handle the current necessary to drive the motors. The only addiction  to the power system that needs to be made is a 24V to 12V regulator to power the Cyclone V development board.

    Limit Switches

        The limit switches will be mounted to the system as shown below. These limit switches will allow the system to home and act as hardware safety interlocks. If a limit switch is pressed then the motor will not be allowed to move in the direction of the limit switch. To home the system the arms will be moved until X1 and Y1 are pressed, and the FPGA will set the memory locations that hold the current position for the x and y axes to zero. The z direction will use the existing optical switch in the column to determine the zero position. After the system is homed, it will record the outputs from the x and y encoders and add or subtract accordingly from the current position.

    Mounting positions for the limit switches
    Motors

    The gantry arm has 3 seperate stepper motors to control each axis of movement.  The X and Y axis drive the postion of the mechanical arm and is done so with a PK268-03B stepper motor.  The Z axis is driven with a PK266DA stepper motor.  They each step 1.8 degrees and both motors are 2 phase bipolar which will provide more torque when driven.

    Motor control

    Each motor will have its own driver which is the G213V Digital Step Drive.  This driver can connect 4, 6, or 8 lead wires into any desired configuration.  With a max current of 7 amps it can be used to drive each individual motor. The driver has twelve total pins; four pins for the motor connection, two for input power and grounding, four pins for communication with FPGA, and the final two for setting current.


Schedule for Spring 2014

Erin -       1/08 - 1/20: Write a program to get the hard processor to communicate to the computer over ethernet.

                1/20 - 2/3: Write a script to interpret commands sent over ethernet, start on C programs to read and change memory

                2/3 - 3/20: Finish C programs, troubleshoot errors in communication and on the hard processor

                3/20 - 3/28:  Develop the user interface

                3/31 - 4/18: Testing user interface with outside people

Brian -     1/8 - 1/20: Map all of the memory address and configure the bridge between the hard processor and FPGA using Qsys

                1/20 - 2/5: Program a square wave to be connected to the step input of the motor driver and a direction line in Quartus

                2/5 - 2/10: Verify output is correct for the motor drivers

                2/10 - 3/17: Program motor controller for the FPGA in Quartus and help program the C interface for the hard processor

                3/17 - 3/31: Test the motor controller

                3/31 - 4/18: Debug problems found during testing

Seth -       1/8 - 1/20: Test driver, and order drivers for each axis

                1/20 - 2/10: Build and test wiring harness

                2/10 - 2/17: Test the wiring harness with the Cyclone V

                2/17 - 3/3: Build mounting hardware for the electronics

                3/3 - 3/17: Mount the limit switches

                3/17 - 4/18: Debug problems found during testing

All -        4/18 - 4/24: Finish documentation and prepare for the design fair


Who We Are
Erin McDonald (EE) is a senior who loves reading classics in the bubble bath and lamenting the fact that 30 Rock has been cancelled forever. Her greatest weakness is the onion rings from Town & Country's deli, but she's really good at cracking sarcastic jokes and tying string into knots.

Brian Redman (EE)
    I am a senior in electrical engineering. For the last four years, I have been working with Optical Remote Sensing Labratory (ORSL) on a developing and testing a infrared cloud imager that uses a metal sphere, instead of a lense, to view the whole sky. In particular I have been working on removing the distortion introduced by the dome. I have also helped build and troubleshoot several other infrared cloud imagers. Through my work with the ORSL I have learned MATLAB programming and the basics of python and using linux. This project will be consierably different from the projects that I have previously worked on, but I am looking forwards to learning VHDL and other skill nesassary to complete this project.

Seth Wendt (EE) is a senior in electrical engineering with minors in math and mechatronics. A local boy born and raised in Bozeman, he would rather have school in the summer and 3 months off in winter for skiing/snowboarding (can do both and trust me skiing is more fun!), hockey, snowshowing, and sledding. He was part of a spectrograph team that analyzed changes in atmospheric water vapor. His team (RedShift) received best design and the civility award while participating in the NSSSC. Since he is pursuing a mechatronics minor his special interest are electromechanical systems making the robotic gantry arm an ideal system to work with. He is determining the hardware which needs to understand VHDL and works with current stepper motors and encoders that came from the system. His dream job is to build protocol droids in order to improve galactic relationships.

Our faculty advisor is Dr. Ross Snider of the ECE Department and our sponsor is Dr. Jonathan Hilmer, the facilities director for the Mass Spectrometry Laboratory.