Rev 1 - S2020 - Cindy Li

Localization Board


Localization Rev 1 is an R&D project with the goal of replacing our COTS IMU + GPS module with a custom PCB. The board houses a 9-DOF IMU and a GPS receiver module, interfacing with an STM32 microcontroller. The ultimate purpose is to enable robot localization through UWRT custom hardware.

Block Diagram


Block_Diagram.png

Assembled PCB


Assembled PCB

Sensors


The IMU-GPS pair is commonly used to determine robot position using a technique called sensor fusion. Sensor fusion takes measurement data from multiple sensors and "fuses" them to produce an optimal estimate of the robot's state. A commonly used sensor fusion algorithm is the Kalman filter (learn more here!).

IMU

  • ICM-20948 - 9DOF IMU with Digital Motion Processor
    • Interface: I2C or SPI

Inertial measurement units (IMU) are sensors that measure angular velocity and linear acceleration through a combination of gyroscopes, accelerometers, and sometimes magnetometers. These are used to determine an object's position and orientation in some reference frame. A 9-DOF (degree-of-freedom) IMU means that it consists of a gyroscope, accelerometer, and a magnetometer to give 9 separate measurements:

  • Angular velocities (x,y,z)
  • Linear accelerations (x,y,z)
  • Magnetic field strength and directions (x,y,z)

GPS

  • SAM-M8Q - u-Blox GNSS antenna module
    • Interface: UART

A GPS receiver obtains GNSS satellite data to determine its geographical location on the Earth. The received data packets are timestamped data that includes the latitude, longitude, altitude, and various other information.

Level-Shifting


The IMU operates at 1.8V logic while the microcontroller operates at 3.3V logic. To allow communication between the two components, two 4-channel, bidirectional level shifters are used to translate between 1.8V and 3.3V logic levels.

USB Interface


The localization Rev 1 PCB includes a micro B USB connector and an FTDI circuit to convert differential USB to serial UART for the onboard microcontroller.

Power Delivery


The PCB can be powered by a 5V power supply (screw terminal connection) or through USB (at 5V). An onboard LDO steps the 5V rail down to 3.3V to power the MCU. Another LDO further steps down the 3.3V rail to 1.8V to power the IMU.

ORing Power Supply

Since the PCB can be powered through either a screw terminal power supply connection or through USB, an ORing configuration is implemented using two Schottky diodes. If one power supply fails and is shorted, the Schottky diode isolates the short from the other working power supply.

Real-Time Clock Backup Power


The GPS module has a real-time clock (RTC) which can be powered by an auxiliary power source if the main power supply is disconnected. This auxiliary source could be a coin battery, but a supercapacitor was chosen instead because why not (smile).


RTC Further Reading

SD Card


The PCB includes an SD card slot for purposes of storing GPS data.

Project Documents


Designers


Built With


Errata


  • Tent vias
  • Replace IMU with one that is easier to solder
  • Replace GPS with one that is easier to solder