During the preliminary design stages, the team was divided into two groups, one for the mechanical subsystems (chassis and mobility), and one for the electrical subsystems (controls, power, communications, software). Members of each of these groups independently explored options for the subsystems; the options were discussed, refined, and optimal designs were selected. Our selection paradigm is described below:
- Completely independent platform (on board power, wireless communication, etc)
- Maximum rover mass: 50 kg
- Must return sufficient information for teleoperation
- Must be capable of traversing up to a 15° slope
- All components must be use processes suitable for Martian operation
- Communication methods must comply with all Federal Communication Commission requirements
- 900MHz communications are limited to one of three 8MHZ subbands
- Communications range of at least 1 km
- The rover must be able to provide its location using GPS
- Operate for up to an hour without charging
- System must cost less than 15000 USD
The chassis consists of a four-compartment box frame of welded square aluminum tubing. Each compartment can hold large components, like batteries and the experiment, while small components can easily be fixed to the frame. The chassis was designed late in the process, to ensure that all of the other components would fit without making the frame oversized. The modular design facilitates flexibility in equipment load out while maintaining structural rigidity well beyond the maximum 50kg total mass.
Our suspension is a rocker-bogie system constructed from aluminum tubing and machined joints. The suspension arms are connected to the chassis by a bevel gear differential. The rocker-bogie and differential system ensures that all six wheels are touching the ground at all times, improving traction. The goal of this design is to maintain a level chassis and improve straight-line navigation over uneven terrain by keeping all six wheels firmly planted on the terrain. Many of the machined joints and wheel mounts are assembled with bolts and can be easily replaced in the field with minimal equipment.
Six pneumatic wheels are employed and are driven by high speed electric DC motors through 104:1 planetary gearboxes. This allows for high torque delivered on demand while keeping power requirements, size, and weight to a minimum. Each motor is speed controlled through an individual Parallax HB-25 motor controller. The individual control allows the rover to take advantage of skid-steering and high current delivery for challenging terrain. Additionally, software control allows the operator to switch between different driving modes, and limits the power delivery as deemed appropriate for the terrain. All motor controller commands are sent as servo pulses using a Raspberry Pi and PWM output board over I2C.
The rover’s robotic arm allows for six degrees of freedom control. Two actuators with position feedback through an analog to digital converter (ADC) are used along with a mathematical model to facilitate easy translation controls or exact orientation changes through manual control. A base servo, geared up by roughly 5:1 through a sprocket and chain system, provides high torque rotation for the base. The base supports the arm using a series of low friction bearings and spacers. High strength servos oriented similarly to a human wrist, allow for intuitive control gestures. A gripper terminates the arm, consisting of a 3D printed structure (FIgure #) as well as two powerful servos. The gripper may be outfitted with a shovel, rubber grip, or other appropriate attachment through a simple exchange in parts. When not in use, the arm is stowed away in a secure position and powered off to conserve power.
/Power and Distribution/
The power system design called for the use of batteries as a power supply. Valence Electronics U1-12RT and A123 ALM 12V7 were selected as candidates. Both of these were lithium-based batteries, which have good capacity and current characteristics, along with the lowest mass of available chemistries. Comparing the other components showed that the main power draw was going to be the motors and servos, while the other electronic components drew far less. Knowing this, it was decided to use one of the larger and more powerful Valence batteries to power the motors and servos, while the smaller ALM was used to power the Pis. The Pis offer 5V and 3.3V outputs which were used to power the logic for the remaining boards. A second Valence battery was eventually connected in parallel to the first, after testing indicated a current shortfall.
Not all of the components used take 12V. While an effort was made to select parts which did, several of the servos, as well as the remaining Raspberry Pi micro-computers, have other requirements. This necessitated the use of voltage regulators to supply the needed level. The boards holding these regulators also served as distribution boards, giving a central location to attach the power leads, rather than further clutter the battery leads. The Raspberry Pis made use of Dimension Engineering SWADJ3A to provide their power, while the servos used LM2674 regulators, which can handle higher currents. Sadly, the LM2174 regulators required a network of other components to function properly, which is why the DE regulators were used where possible. Both batteries possess power switches, which can physically isolate the batteries from the rest of the rover.
Robot control is facilitated by 900 MHz wireless radios. The rover radio uses an AvaLAN AW900XTR omnidirectional
Robot control is facilitated by 900MHz wireless radios. The rover radio uses an AvaLAN AW900XTR omnidirectional antenna, and communicates with a GPS pointed AvaLAN AW900XTP antenna at the base station. The wireless hardware uses the standard IP protocol - a low level socket connection is used to establish connection and communicate with the robot through simple and lightweight packets. All control data and navigation information can be sent at concurrently, however due to bandwidth limitations, only one video stream can be viewed at a time. However, this current communications hardware cannot be used within Europe due to differing frequency limitations. New hardware, and frequencies will be determined accordingly.
Three Raspberry Pi microcontrollers are used for controlling the various parts of the rover: the arm (arm Pi), wheels (drive Pi), and mast (mast Pi). The arm Pi runs a serial clock (SCL) line and a serial data (SDA) line to the servo control board which allows the Pi to communicate with the servo board. The servo board then controls the arm servos via pulse width modulation (PWM). SDA and SCL lines are also sent to an ADC which is used to obtain position feedback for the linear actuators. The arm Pi also runs a line from a transmit digital (TXD) pin on the Pi to a receive digital (RXD) input on the Sabertooth 2X12 motor controller. This line allows the Pi to send commands to the Sabertooth which controls the actuators in the arm by adjusting the voltage fed to the actuators. A general purpose input/output (GPIO) pin on the PI along with a FET and relay system allows the operator to turn the power to the servos and actuators on and off. The drive Pi is connected to an identical servo board in the same manner as the arm Pi. However, the PWM outputs on the servo board are fed to six motor controllers for controlling the wheel motors. Although the wheel motors are not servos, they were selected because the Pis can communicate with them as if they were servos. The wheel motor controllers vary the voltage applied to the wheel motors which allows for speed control of the wheels. The mast Pi also has a servo board attached. However, it is not loaded nearly as heavily as the others, only controlling the mast camera’s pan and tilt. The mast Pi’s main purpose is to operate the mast camera.
/Sensors and Cameras/
Operator navigation is aided by a collection of sensors placed on the robot. This 'awareness package' allows the driver to determine where to go, where to dig and where to place items with confidence.
The primary device is the cameras. There are three cameras mounted on the rover. One on the end of the arm, another mounted at the front of the rover, and a third camera at the top of the rover mast beside the communication antenna. These cameras are capable of taking 5MP photos and streaming video back to the command station. The front fixed camera allows for fine navigation of terrain near the rover. Depending on the challenge a wide angle lense can be mounted to this camera. The second camera is mounted on rover arm enables the driver to "see from the perspective of the hand" allows the completion of dexterous tasks with greater ease. The third camera is mounted onto a custom made gimbal that allows the driver to look around and observe the surroundings and rover without having to turn the rover.
Additionally, a GPS receiver and compass provide location and orientation information. This information is relayed back to the driver and navigator enabling them to travel from point to point with a "top down" perspective.
As these compose one of the most critical components of the system the USST is investing considerable amounts of time and energy into increasing situation, and surrounding awareness for the operator. This enables the driver and operators in the command room to make better informed decisions based on the information they are being provided with. Watch out for the announcement of the 2015 year rover and all the advances the team has made in this regard.
/Graphical User Interface (GUI)/
Rover control is presented to the operator using a GUI (Figure #) designed with Python and Pygame. The GUI facilitates the use of onscreen buttons and readouts as well as an Xbox 360 controller for easy access to rover motor and arm control as well as advanced functions. This was all designed with the idea that a single operator could control the entire rover.
The arm control software was set up so each servo and actuator is controlled individually. Also, another control system was created where the linear actuators are controlled together to move the arm along a more intuitive cylindrical coordinate system. The ability to toggle between the two was added in case there is a error in one of the systems.
The main feature of the base station is a 9 meter steel mast. The AW900XTP antenna is mounted on top of the mast to allow signals to be sent to the rover over long ranges. The antenna is attached to a servo to allow it to be pointed more directly at the rover. Connected to the antenna through a ethernet cable is a laptop that will be used to run the GUI that will control the rover.
University Rover Challenge 2014 was the first year the USST participated in a rover focused competition. The team jumped into a pool of candidates that had many experienced returning teams, and teams similar to the USST in which it was their first year.
After a 2100 km drive the team arrived in Hanksville, Utah on the evening of Tuesday May 27, 2014 the team rolled into Hanksville ready to compete. Wednesday was spent prepping for the competition, testing, fixing last minute bugs and doing a test run of the tower set up. Thursday morning the rover, 'MARCO' was ready for action and the tower set up team was ready to have 'POLE-O' set up and functioning within the allotted 20 minute set up time. The team's favorite comment from the judges regarding the tower was ".. that looks like it was taken off of a battleship".
Despite numerous challenges, both those set forth from the competition, and the technical challenges experiences from the competition the team placed well. Everyone was satisfied with the results as it was the first year competing. The USST placed seventh overall, second among the Canadian teams, and first among the teams new to the competition that year.