Filip Maksimovic Viliam Klein Peter Zhang Corrina Gibson Brandon Benjamin Vicki Hsu Elliott Richerson Tyson Wolach John Jakes Aerospace Advisor: Scott Palo Critical Design Review February 2, 2011 XROVER CDR Introduction • JPL funded project with the Aerospace department • Goals are to explore feasibility of using multi-rover configurations for extraterrestrial exploration • Our system architecture has one mother rover and two deployable child rovers • Continuation of a project started two years ago Objectives Objective The system maintains former capabilities from REMUS and R3 Description • CRs can deploy and dock from MR. • CRs can drive to LOI and capture images that are transmitted back to the GS. Relaying between MR and CRs for data transfer • Mission CR will explore behind locations where maintaining communication with MR will be through relay. MR and CR can traverse defined terrain • CRs will maintain communication with MR at various orientations and altitudes. • CRs will deploy and dock on flat terrain. Terrain Definition • 20 degree slopes (CR only) • 1 inch rises/discontinuities • 2 inch depth pea gravel surface (slipping assumed) Concept of Operations Location of Interest (LOI) Identified Relay Ability Confirmed Rover Mission Sent to MR MR to deployment location CR Status and Data Evaluated Relay CR Commands Sent to CRs dock & undock Mother Rover (MR) Ground Station Mother Rover C&DH Child Rovers Relay Area Terrain Location of Interest Concept of Operations Location of Interest (LOI) Identified Relay Ability Confirmed Rover Mission Sent to MR C&DH Relay Waypoint Relay CR and MR Communication CR Status and Data Evaluated Relay CR Commands Sent to CRs dock & undock Mother Rover (MR) Ground Station Mother Rover C&DH Child Rovers Relay Area Terrain Location of Interest Concept of Operations Location of Interest (LOI) Identified Relay Ability Confirmed Rover Mission Sent to MR C&DH Relay Waypoint Relay CR and MR Communication CR Status and Data Evaluated Relay CR Commands Sent to CRs dock & undock Mission CR Mother Rover (MR) Ground Station Mother Rover C&DH Child Rovers Relay Area Terrain Location of Interest Concept of Operations boundary of communication Location of Interest (LOI) Identified LOI C&DH Image Obtained by Mission CR Relay Ability Confirmed Mission CR Position Evaluated Rover Mission Sent to MR Terrain isolated travel Mission CR and Relay CR Comm. Relay Waypoint Relay CR and MR Communication CR Status and Data Evaluated Relay CR Commands Sent to CRs dock & undock Mission CR Mother Rover (MR) Ground Station Mother Rover C&DH Child Rovers Relay Area Terrain Location of Interest Electronics Functional Block Diagram Ground Station Mother Rover GUI Computer User inputs ‘waypoints’ to control child rovers Child Rover Motor Control, Interrupt Desired Location CDH Wireless Router Power Position Navigation Power Wireless Router CR Drive MR Drive CDH Wireless Router USB RS232 Wireless Network Wireless Router Motor Control, Interrupt User Input Power Child Rover Desired Location CDH Power Position Navigation CR Drive Child Rover Functional Block Diagram Child Rover 5V Wireless Router Power Interrupt, Request Data Desired Location Data 5V CDH Navigation Data Sensors Power 5V/12V CR Drive RS232 Motor Drive Child Rover Drive Subsystem Functional Decomposition Module Child Rover Drive Inputs • 5V @ 50mA from power system • 12V @ 2A max from power system • OneRS232 drive signal from CDH board Outputs • Child Rover movement Functionality This drive subsystem receives an RS232 motor control command. The motor controllers have convert the serial command to rotate the 12V motors. Child Rover Drive Subsystem Block Diagram RS232 5V/12V Motor voltages Child Rover Drive Subsystem Further Functional Decomposition Module Motor Controller (Pololu qik2s9v1) Inputs • 5V @ 50mA from power system • 12V @ 2A max from power system • One RS232 drive signal from CDH board Outputs • Motor Voltages @ 1A max each Functionality Two controllers can control two motors each. They can be daisy-chained along the same RS232 line and commands are issued to each motor individually. The motor voltages determine speed. Module DC Motor (Pololu 19:1 Metal Gearmotor) Inputs • Motor Voltages @ 1A each Outputs • Child Rover movement Functionality The DC motor receives a voltage and spins. The stall current is 5A, but the controller has a current limiter to prevent excessive draw. Sensors Functional Decomposition Module Child Rover Navigation Sensors Inputs • 5V from battery • The world Outputs • 4x quadrature from encoders • 2x indexed quadrature from encoders • 3-axis accelerometer ±18g (IMU) • Triaxial digital gyroscope ±75 o/sec (IMU) • 3-axis magnetometer (cheating) • Range from 2 ultrasonic crickets Functionality The child rover sensors provide data to the CDH for processing to determine the CR’s position and orientation. Further Sensor Functional Decomposition Module Inputs Outputs Functionality Module Inputs Outputs Functionality Module Inputs Outputs Functionality Analog Devices IMU • 5V from Power system • Configuration settings from CDH • 3-axis accelerometer, gyro, and magnetometer (unused) • All available on an SPI line (depending on configuration settings) The IMU provides highly accurate angular and linear acceleration experienced by the child rover. Downsides are thermal noise and (usually) linear gyro drift US Digital 100CPR Free Wheel Encoder • 5V from Power system • Indexed quadrature related to the distance that one of the two free wheels has travelled These optical encoders spin when the wheels move. Based on this movement, the output is a quadrature line that can easily be converted to a count. These encoders also include an index line which goes high for one cycle when the encoder detects one revolution. Pololu 64CPR 19:1 Encoder (comes with motor) • 5V from Power system • Quadrature related to the distance that one of the corner wheels has travelled These encoders spin when the wheels move. Based on this movement, the output is a quadrature line that can easily be converted to a count. Because of the gear ratio, these encoders spin 19 times faster that the motor shafts. A o em D n Ge Ge n D em o 1 e Tim TimeGen Demo Tim eG en De mo Quadrature 2 e Tim TimeGen Demo Tim eG en De mo mo De en eG Tim TimeGen Demo Tim e mo De en eG Tim TimeGen Demo Tim e Index 4 mo De n Ge o m e en D Ge n De mo G e m i T B 3 5 6 7 8 9 10 o m e en D G e m i T TimeGen Lite • Quadrature encoders have an A line and a B line 90o out of phase • Phase lead/lag is used to determine whether shaft is rotating clockwise or counter-clockwise • Frequency of signals can be used to determine rotation rate • If encoder spins too quickly, sometimes counter will miss a count resulting in erroneous reading • Index line signals whenever one revolution has completed and can be used to “zero out” the encoder count to remedy the missedcounts problem Rangefinding Crickets Power System Functional Decomposition Module Child Rover Power Inputs • 14.4V from Li-ion battery • 4x1.5V from AAA batteries Outputs • 5V to motor controllers • 5V to logic, sensors (separate) • 12V to motors Functionality The power system must provide regulated voltages to all of the electronic components on the child rover. It must also keep the motor lines voltages separate from the logic and sensor voltages Power System Block Diagram 5V 14.4V Li-ion Motor Controllers Pico PSU 12V 5V 5V Gumstix Crickets, Webcam Electronic Isolation 6V AAA Linear Regulator 5V 5V I/O Expander Sensors Onboard Optoisolator CDH Functional Decomposition Module Child Rover CDH Inputs • Desired waypoint from user (via wifi) • IMU, encoder, and cricket data • Webcam picture • 5V from power system Outputs • RS232 motor commands to controllers • Webcam picture to GS via wifi • CR position measurement Functionality The CDH acts as the brain of the child rover. It closes the navigation loop by providing a PID controller that moves the CR based on user input. CDH Block Diagram Crickets Range Image Camera Request Picture Interrupt CR Position, Image Gumstix Computer Interrupt, Motor Command Sensor Data I/O Expander IMU Data Encoder Data Requested Position, Mission Info Mesh Router USB SPI Bus I/O Expander Schematic (rev.1) I/O Expander Block Diagram Encoder Counter 5V Regulator Aux PSU Encoder Counter Encoder Counter SPI Atmega128 Encoder Counter RS232 Motor Control Encoder Counter USB IMU RS232 Encoder Counter To Gumstix I/O Expander PCB Layout Revision 2 plans: • Fix reset pin circuit • Add VCC, GND pins for all encoder and motor headers • Wire the USB properly • Change LED circuit so that they are off when line is high • Move USB and IMU connectors to same side of board mo De n Ge 4 5 6 7 o em nD e G 8 e Tim TimeGen Demo Tim eG en De mo mo De en eG Tim TimeGen Demo Tim e o m e en D mo De en eG Tim TimeGen Demo Tim e SS_IMU 3 G e nD em o SS_Encoder 2 G e nD em o 1 Clock e Tim TimeGen Demo Tim eG en De mo SPI Timing Diagram G e m i T 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 o m e en D G e m i T MISO TimeGen Lite • Both encoders and IMU have continuous data modes where they will release data while the SS line is held low • Each encoder has 4 bytes of data, and the IMU can provide 39 bytes of status registers and data Additional IMU Timing Information • Maximum SPI clock is 1MHz • Minimum stall time is 9 clock cycles (9 µs) • 600 µs delay between sync timer and data ready when specific data is requested Encoder Counter Circuit ATMega128 Free/Powered Wheel Encoder SPI Protocol Encoder to Counter Converter LS366R 32bit Counter Each component is powered by regulated 5V from the AUX battery Aux Battery PID Control Simulation • PID simulation run in Mathematica to determine effectiveness of controller in following waypoints • Input to simulation is actual CR position GUI Software – Finite State Machine Logic Docked mission started yes Conn? no Wait Conn? yes Rotate to Next Waypoint no Safe no Undock waypoint ? Calibrate Switch COMM Interface DEFCON1 no yes Relay rover? yes Wait for Mission CR Drive Waypoint Reached Returning ? no Reverse Waypoints yes no Returning ? yes File Update Final waypoint returning = true yes Rotate to Next Waypoint no Imaging Rotate to LOI no Returning ? yes Mission Complete Software – How to determine position x’’, y’’, z’’ θ‘, ψ’, φ’ r (crickets) V, r (encoders) The Black Box x, y, z, θ, ψ, φ Wireless Communication • Must provide communication between GS, MR, and CRs • Also must provide relay communication to a hidden CR • Solution is an ad-hoc mesh network to maximize throughput and minimize packet loss • These from Alfa Corporation are wireless mesh routers • They also come with nice software showing packet transfer and were free Budget Source JPL Funding EEF Confirmed? [Y/N] Y N Item Name / Description ASUS Eee PC 1015T-MU17-BK Black AMD V Series V105 (1.20GHz) MR Body Materials (aluminum, screws, nuts, bolts, bearings, etc.) CR Body Materials (aluminum, wheels, tires, screws, etc.) S5 Optical Shaft Encoders Polulu Qik 2s9v1 Dual Serial Motor Controller LFLS7366R-S 32-bit Quadrature Counter with Serial Interface 100:1 Metal Gear Motor 37Dx57Lmm with 64 CPR Encoder Atmega128A-AU-ND PCB Analog Devices IMU ADIS16360 Cabling and Miscellaneous Adapters Test Bed Materials (wood, gravel, screws, etc.) Shipping Costs Printing (fall and spring final reports) Margin Total Amount $5000 $2000 Unit Price Quantity Total Amount $350 1 $350 $800 1 $800 $800 2 $1600 $85 4 $340 $25 3 $75 $6 6 $36 $40 8 $320 $10 $80 $750 2 2 1 $20 $160 $750 $200 1 $200 $300 1 $300 $250 30% 2 Total $ $200 $500 $1670 $7321 Manufacturing Schedule Milestone 1 Milestone 2 Verification and Testing Schedule Milestone 1 Milestone 2 Milestone Goals Milestone 1 Milestone 2 • 2nd revision of board ordered and populated • Display functional interrupt-driven communication between Gumstix and I/O expander • Drive (not navigate) a child rover • Confirm reception of data by Gumstix from IMU, encoders, and crickets • Demonstrate wireless packet transfer over mesh network through intermediary node • Drive child rover with use input through GUI • Determination of absolute position within 10cm with sensor data and navigation algorithm • Complete all physical construction of electronics and mechanical hardware