Sensors - Pitt-RAS/iarc7_common GitHub Wiki
Cameras
We have up to 6 cameras facing all directions, which are used for a variety of purposes. The downward-facing camera is used for localization, tracking roombas, and detecting obstacles. The side cameras are used both for tracking roombas which are further away and for obstacle detection, and the top camera is used solely for detecting obstacles above the drone.
IMU (Inertial Measurement Unit)
This sensor is actually part of the flight controller, and contains an Accelerometer, Gyroscope, Magnetometer, and Barometer. The accelerometer measures acceleration, the gyroscope measures rate of rotation, the magnetometer measures the earth's magnetic field, and the barometer measures the atmospheric pressure. The accelerometer and gyroscope are used to measure the drone's orientation. The magnetometer can also be used to measure orientation, and the barometer can be used to measure altitude, but we are not using these sensors. The magnetometer is not necessarily reliable indoors because of the possibility of stray magnetic fields, and the resolution on the barometer is too bad to be very helpful for our use case.
Altimeters
We have two time-of-flight laser rangefinders which we use as altimeters. The first is a LidarLite v2, which gives good measurements from about 0.5m up to several tens of meters, and the second is a VL53L0X, which gives good measurements from 0 up to about 1.5m.
Contact Switches
We have limit switches triggered by plungers on each of our landing gear, as shown in this render. These allow us to know exactly when we leave the ground so that we can calibrate a thrust model which can calculate our acceleration from our throttle, battery voltage, and altitude.
Laser Scanner (RPLIDAR A2)
This is a standard planar laser scanner (essentially a laser rangefinder that takes lots of measurements while spinning very fast) which is used for obstacle detection.