This slideshow requires JavaScript.

This year, we are using a MSP432 by Texas Instruments as our main micro controller.  First we start developing by writing code for a test board to ensure all of the firmware works as expected.  This acts as an early brains for our rover and allows us to troubleshoot and spot errors before we begin the PCB design process. We also use various off the shelf parts to be able to test certain functions of the rover.  From here we can develop better electronics to more closely fit our needs.

We use RFD900 radio modems to send commands and status to and from the rover using packetized serial.  Using our own packet structure allows us for greater flexibility and more efficient data usage.

All boards are written in C/C++ and the base station is written in C#.  C# is our language of choice for our base station this year since it is can be used to create a functional and aesthetically pleasing GUI for our mobile base station.

Board Design
Several custom boards are planned to be used on the rover, alongside off-the-shelf parts to keep costs and lead times down.  Our main planned boards are:

  • Main Board – Processes data sent to and from the rover, which can be used to control the rover, or gather feedback from the on board sensors.  Data may be further processed further and sent to other boards on the rover.  This board has an I²C bus, which can be used to add sensors or features without having to change the hardware.  The I²C bus can be used to control PWM drivers, ADC’s, DI/O pins, gather data from sensors – and more!  Our design features plug gable cards to expand or modify the features of the rover.
  • GPS Board – Parses GPS data so the communications micro controller doesn’t have to.
  • Life Support Board – Small boards placed in key places of the rover to monitor current consumption and temperature.
  • Power Board – Provides regulated 12v, 7.4v, 5v, and 3.3v power for the rover.  It has current sensing built in so that current draw may be monitored.  Using a mixture of solid state and mechanical relays, we can distribute power around the rover depending on its needs, to conserve power and allow more power to certain components. This also serves as a safety feature, where individual components can be turned off if too much current draw is detected.
  • Scientific Instrument Cluster (SIC) Board – Contains all circuitry needed to get readings from our scientific sensors.  Includes op-amps, instrumentation amplifiers, and an I2C bus with an ADC, so that additional sensors may be added to expand the soil sampling abilities of the rover.

It is important to test that the rover will function properly; making sure the software and hardware  work as they were designed to.  The electronics system must be tested in and above the operation conditions expected to be seen in a simulated Martian environment.  This means that the components must be designed with thermal management, temperature, mechanical shock, and dust in mind.