EarTh HOrizon Sensor Manufacturing Status Review Team Noah Buchanan Matthew Busby Matthew Cirbo Taylor Dean Jesse Keefer Patrick Klein Thomas Konnert Cole Oppliger Neal Stolz Customers Joe Breno Randy Owen Advisor Dr. John Farnsworth 7/12/2016 University of Colorado Aerospace Engineering Sciences 1 Outline • Overview • Schedule • Manufacturing – Software – Electrical – Algorithm – Mechanical • Budget Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 2 CONOPS REFERENCE PITCH DEFLECTION ROLL DEFLECTION Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 3 CONOPS Sensor Housing Camera Field of View Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 4 FBD Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 5 Levels of Success LEVEL TWO LEVEL THREE LEVEL FOUR SENSOR CAPABLE OF COLLECTING DATA FROM SIMULATED EARTH AT ALTITUDE OF 250-750 KM INTEGRATED IN BASIC HOUSING HOUSING MEETS WEIGHT AND VOLUME REQUIREMENTS POWER REQUIREMENTS MET. INPUT OF 22-34 V AND MAX DRAW OF 5 W SENSOR CAPTURES DATA AND RETURNS DISPLACEMENT VECTOR OUTSIDE OF ECLIPSE TEST DEVELOPED TO PROVE ECLIPSE FUNCTIONALITY CAPABLE OF RECORDING 200 MINUTES OF HEALTH TELEMETRY COMMUNICATION OVER CAN PROTOCOL AT <388 KBPS SOFTWARE CAPABLE OF DETERMINING DISPALCEMENT VECTOR TO WITHIN 0.5 DEGREES DISPLACEMENT VECTOR DETERMINED IN ECLIPSE REGION OF 35 MIN LEVEL ONE Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 6 Schedule MSR SPRING BREAK Financial Algorithm Test Mechanical Electrical Software Uncertainty Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 7 Schedule MSR Financial Algorithm Test Mechanical Electrical Software Uncertainty 7/12/2016 SPRING BREAK Mechanical Manufacturing Slightly ahead of schedule – 50% complete Planned finish date: 27 FEB University of Colorado Aerospace Engineering Sciences 8 Schedule MSR SPRING BREAK Powerboard Manufacturing Behind original schedule – 60% complete Planned finish date: 27 FEB Financial Algorithm Test Mechanical Electrical Software Uncertainty 7/12/2016 Health Sensor Code Planned finish date: 15 FEB Physical Camera Interface Board designed/ordered Planned finish date: 20 FEB University of Colorado Aerospace Engineering Sciences 9 Schedule MSR Financial Algorithm Test Mechanical Electrical Software Uncertainty SPRING BREAK 1 MAR Camera Interface Software Slightly behind schedule – 50 % Complete CAN Communications Code Begin 3 Feb Algorithm Production 100% complete Will require minor adjustments 7/12/2016 University of Colorado Aerospace Engineering Sciences 10 Schedule MSR SPRING BREAK 1 MAR Software/Algorithm Integration Passing variables and memory locations Memory allocation Timing adjustments and troubleshooting Financial Algorithm Test Mechanical Electrical Software Uncertainty Analog Video to USB connection Existing COTS parts Team experience with USB data transfer Visual camera via USB 12 March 7/12/2016 University of Colorado Aerospace Engineering Sciences 11 Schedule MSR 1 MAR SPRING BREAK 15 APR Financial Algorithm Test Mechanical Electrical Software Uncertainty Full System Testing 7/12/2016 University of Colorado Aerospace Engineering Sciences 12 Software Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 13 Software Data Flow 1. The IR sensor captures a frame and begins outputting to the DIO pins on the BeagleBone Black. 2. PRU0 acts as a software interface, and saves the data to a buffer in RAM. 3. Once an entire frame has been stored in RAM, the CPU is prompted to begin calculating the displacement vector. 4. After the displacement vector has been calculated, it is saved to an SD card with a time stamp and flag. Outline 2/2/2015 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 14 Software: Status & Future Work Task Testing Enable PRU & load code Write & test code with LED Feb 1st Load drivers to enable DDR access for PRU Save data to RAM, access from CPU Feb 8th Interrupt CPU from PRU Control LED based on CPU interrupt from PRU pin Feb 15th Configure and receive data from IR camera Correctly display images from IR camera on CPU Feb 25th Trigger horizon algorithm using PRU data Outline 2/2/2015 Projected Completion Date Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Mar 20th Budget 15 Software: Timing Diagram 0 1 2 3 Outline 7/12/2016 PRU Initialization Wait for first falling edge Save data to RAM Skip chroma byte Data is pulled from data lines Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 16 Software: Risk Mitigations Risk Mitigations Add instruction delay instead of waiting for falling edge 8-bit double-clocked YCbYCr 4:2:2 (45.73 ns) is too fast Mask data on CPU Try 14-bit or 16-bit YCbCr CMOS mode 4:2:2 (95.062 ns) Outline 2/2/2015 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 17 Electrical Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 18 Electrical System: Status Requirements: DR.2.2.1 – Monitor operating voltages and currents DR.3.5 – Use less than 5 W DR.3.6 – Accept 22 – 34 V - Must output 5 V for Tau 2 and BBB Vin 22 – 34 V Voltage Regulator Vin Vout GND Tau 2 Camera 5V BBB Von Vin R 3.3 V GPIO C Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 19 Electrical System: Status • All parts have been purchased • Built on breadboard – Tested to take in 22 – 34 V and outputs a constant 5.06 V Power Board Issues Solution Regulator chip needs Von (< 6 V) to let power through Add a capacitor that is charged via 3.3 V pin on BBB. This means the chip is always on Switching Regulators do NOT regulate until there is a load on them Use BBB controlled relays to prevent unregulated voltages from hitting camera Purchased adjustable regulator chip instead of fixed output Use resistors in feedback loop to control output voltage Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Implemented Yet? Yes No Yes Budget 20 Electrical System: Future Work Major Remaining Tasks • Integrate voltage/current sensors into circuit • Solder components onto a proto-board • Test for voltage transients upon initial power on – If no transients, relays may not be necessary • Planned completion 27 Feb Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 21 Algorithm Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 22 Algorithm Purpose: To receive and process images from the camera and output pitch and roll displacement angles. Major Requirements: – DR.2.1.1 Displacement outputs must be accurate to withing 0.5°. – DR.2.1.2 Displacement in pitch and roll must be determined. – DR.2.1.3 Displacement angles must be calculated at a rate of ≥ 12 Hz. Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 23 Algorithm: Status • • All major functions needed for attitude determination have been written and tested on the BeagleBone Black. Algorithm requirements are being met. Max Error [deg] Max Corrected Error [deg] Mean Error [deg] Mean Corrected Error [deg] Roll 0.8606 0.1256 0.1825 0.0257 Pitch 1.9207 0.0688 1.1090 0.0265 Requirements Current Status DR.2.1.1 – Accurate to within 0.5 degrees Successful: Max error = 0.1256 degrees DR.2.1.2 – Determine displacement in pitch and roll Successful DR.2.1.3 – Calculate displacement with a rate of >= 12 Hz Successful: Average rate = 400 Hz Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 24 Algorithm: Future Work Major Remaining Tasks: • Manually read image from memory locations • Add assertions to check for anomalous conditions Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 25 Mechanical System Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 26 Mechanical Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 27 Mechanical: Design Solution Housing • Machined out of Aluminum 6061 • Dimensions: 4.21 x 3.74” x 2.48” • Camera mount redesigned to allow access to back of camera Test Stand: • Custom 2 DOF Gimbal • Machined out of Aluminum 6061 • No major design changes Outline 7/12/2016 Schedule Power Regulator Board BeagleBone Black Camera 4.21” Camera Mount Manufacturing University of Colorado Aerospace Engineering Sciences Budget 28 Mechanical: Status Housing • Purchased: Metal • Manufactured: Top, Bottom, Left, and Right pieces. Mounting holes to be drilled. Top Test Stand • Purchased: Thin-Section ball bearing and pitch ball bearings • Manufactured: Roll Bracket – Critical Element: Interference fit with thin-section ball bearing Outline 7/12/2016 Schedule Bottom Manufacturing University of Colorado Aerospace Engineering Sciences Left Right Budget 29 Roll Bracket (Picture) • Machined on CNC mill to 0.0004” tolerance • Initial machining attempt unsuccessful • Allows sensor housing to roll Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 30 Mechanical: Future Work Housing: • Purchase: Metal for camera mount & screws – – • Lead time: 1 week Setback: None, already 1 week ahead of schedule Manufacturing: CNC Final 3 pieces – – 2.23” Front, Back, & Camera Mount Mount camera to within 1/32” in vertical direction Power Regulator Board BeagleBone Black Test Stand: • Purchase: L brackets and bolts – – • Manufacturing: – – – – • Lead time: 1 week Setback: none, planned into schedule CNC face mount for sensor housing to 0.0004” tol Manual milling machines for remaining pieces Measure assembled housing height to 1/32”and manufacture disk for calculated radius “Earth Disk” manufactured 4.21” Camera Camera Mount Planned finish 27 Feb Outline 7/12/2016 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 31 Budget Status Future Expenses ≈ $885 Sensor and Housing, $2,125.84 Margin, $1,985.00 Testing Materials, $626.54 Printing, $50.61 Outline 7/12/2016 Electronics, $212.01 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 32 Budget Progress $4,124.93 $3,230.92 $3,015.00 $215.92 Projected Total Outline 7/12/2016 Expected Actual Expenses Budget Variance Expenses for for Parts Parts Purchased Purchased Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 33 7/12/2016 University of Colorado Aerospace Engineering Sciences 34 Backup Slides This page intentionally left blank 7/12/2016 University of Colorado Aerospace Engineering Sciences 35 Upcoming Testing • Power Regulation Board (DR.3.6) Sensor – Ensure 22-34V can be input and converted into two 5V outputs • Algorithm (DR.2.1) 22-34V 5V Power Regulation Board CONOPs Inclinometer – • Power Regulation Board Microcomputer – Verify algorithm functionality, speed, and accuracy meets requirements • 5V Verify the functionality and calibrate for use in manufacturing, camera/BBB, and full tests Inclinometer Boresight Manufacturing (DR.3.3) – Verify the dimensions of manufactured components as well as the initial focal point of the test stand on the disk α Focal Point Height Horizon Disk Radius Inclinometer and Manufacturing CONOPs 7/12/2016 University of Colorado Aerospace Engineering Sciences 36 Voltage Regulator Testing 7/12/2016 University of Colorado Aerospace Engineering Sciences 37 Ringing in Camera Lines Problem: Due to impedance differences between the camera and the BBB, ringing in lines may occur Testing for Problem: Connect BBB and camera and probe with o-scope Mitigating the Problem: -Keeping the lines short -Digital Line Drivers -Series resistors in lines to match impedances 7/12/2016 University of Colorado Aerospace Engineering Sciences 38 Power Board with Relays 7/12/2016 University of Colorado Aerospace Engineering Sciences 39 Algorithm Settings • • 7/12/2016 Algorithm settings are stored in shell environment variables Environment variables are loaded into globals to reduce the frequency of memory allocation to increase execution speed University of Colorado Aerospace Engineering Sciences 40 Software: Assembly Code Outline 2/2/2015 Schedule Manufacturing University of Colorado Aerospace Engineering Sciences Budget 41 All Test Plans • Power Regulation Board – Ensure 22-34V can be input and converted into two 5V outputs • Algorithm – Verify algorithm functionality, speed, and accuracy • Software – Verify BeagleBone correctly computes algorithm and uses specified components, communication with camera, health data, and CAN functionality • Inclinometer – • Verify the functionality and calibrate for use in manufacturing, camera/BBB, and full tests Manufacturing – Verify the dimensions and weight of manufactured components as well as the initial focal point of the test stand on the disk • Camera/BBB – Verify the reception and saving of camera data via the BBB, the functionality of the algorithm on the BBB • Full Test – Validate the functionality of all aspects of the project as an integrated unit and determine what level of success is met 7/12/2016 University of Colorado Aerospace Engineering Sciences 42 Power Regulation Board Test • Purpose: Ensure the Power Regulation Board takes an input of 2234V and outputs 5V for both the camera and microcomputer. The Board should output 5V regardless of input voltage. • Materials: – – – – Power Supply from Trudy’s lab Any lab with proper outlet Voltmeter Completed Power Regulation Board or prototype Measurement How it’s Verified Supply Output Voltmeter measured to be between 22-34V PRB Outputs 7/12/2016 Voltmeter measured to be 5V University of Colorado Aerospace Engineering Sciences Requirement DR.3.6 DR.3.6 43 Algorithm Test • Purpose: To verify the algorithm produces a reasonably accurate output less than .5แต at a rate between 12 and 30 Hz. To ensure its functionality prior to larger scale testing. • Resources Needed: – BeagleBone Black microcomputer loaded with algorithm – Other computer for microcomputer output – Group members to critique code 7/12/2016 Measurement How it’s Measured Requirement Pitch/Roll Angle Output Speed Image processing by the algorithm DR.2.1.2 Recorded after vector data is output DR.2.1.3 Error Calculated vector data is compared to actual vector DR.2.1.1 University of Colorado Aerospace Engineering Sciences 44 Manufacturing Test • Purpose: Verify the manufactured components of the project (test stand, Earth disk, and sensor enclosure) closely align to the calculated values. Calculate the error introduced by manufacturing. • Materials: – – – – – – – Sensor Enclosure Earth Disk Test Stand Level Inclinometer External Computer Tape Measure Measurement Enclosure Focal Point Height Disk Radius Experimental α α (16”) α (9.07”) 7/12/2016 Expected Value How it’s Verified 2.48” x 4.21” x 3.74” Measured value compared to expected value 4.52” ± .0625” Measured value compared to expected value 16” ± .11”;9.07” ± .11” Measured value compared to expected value Use for comparison to inclinometer angle for ๐๐๐๐๐ข๐ −1 90° − tan test stand error โ๐๐๐โ๐ก 15.79แต± .14แต Compared to calculated angle, yields error 26.52แต± .14แต Compared to calculated angle, yields error University of Colorado Aerospace Engineering Sciences 45 Inclinometer Test • Purpose: Verify the functionality and calibrate for use in manufacturing, camera/BBB, and full tests • Materials: • • • • Inclinometer (ADIS16209) BeagleBone Black External Computer Assembled Test Stand • Process: – Connect inclinometer to BeagleBone Black – Use written software to establish communication between inclinometer and BeagleBone Black – Run software to collect inclinometer data – Verify output is received by BBB with external computer – Calibrate inclinometer for zero degrees of displacement at test stand horizontal perturbation University of Colorado Aerospace Engineering Sciences 7/12/2016 46 Test Stand Scaling α Boresight Focal Point Height Horizon Disk Radius Altitude Scaled Horizon Radius Focal Point Height Alpha * Measured by inclinometer 250 km 16” ± 0.30” 4.52” ± 0.09” 15.79° 750 km 9.07” ± 0.11” 4.52” ± 0.09” 26.52° University of Colorado Aerospace Engineering Sciences 7/12/2016 University of Colorado Aerospace Engineering Sciences 47 Height Measurement Focal Point Distance Relative to Rear Distance From Front of Sensor Housing Measure distance between front of sensor box and Horizon disk Total distance of disk to focal point < 1/16th” University of Colorado Aerospace Engineering Sciences 7/12/2016 University of Colorado Aerospace Engineering Sciences 48 Error in Stand Height β Focal Point Height α Bore Sight • |α – β| = Angular Error • Stand Height = 4.52” • Focal point height must be known to 1/16” to keep total error below 0.5° 7/12/2016 Change in Height University of Colorado Aerospace Engineering Sciences Nominal Focal Point Height Test Horizon Half-Disk Radius 49 Error in Disk Radius α Focal Point Height φ • Disk Radius = 16.00” for 250 km = 9.07” for 750 km • φ is smaller than pixel resolution for both 250 and 750 km disks • Manufacturing tolerance governed by pixel resolution • 0.30” for 250 km • 0.11” (a little less than 1/8” )for 750 km Error in Radius University of Colorado Aerospace Engineering Sciences 7/12/2016 Camera Focal Point Test Horizon Half-Disk Radius 50 Analog to Digital Test A cheap analog to digital converter has been tested and has shown that it is possible to use the BeagleBone Black to pull images from the converter. The converter used had the wrong chipset for use with linux, but an image was still received. Good images should be possible using the correct chipsets. 7/12/2016 University of Colorado Aerospace Engineering Sciences 51 Algorithm Settings • • 7/12/2016 Algorithm settings are stored in shell environment variables Environment variables are loaded into globals to reduce the frequency of memory allocation to increase execution speed University of Colorado Aerospace Engineering Sciences 52 Error Reduction Polynomials • Record output over roll and pitch angles between 0° and 20° at various altitudes • User polynomial interpolation to fit an equation to the measured angle vs actual angle data • Interpolate between the polynomial coefficients in order to come up with equations that give the error correction polynomial coefficients vs altitude 7/12/2016 University of Colorado Aerospace Engineering Sciences 53 Error Reduction Polynomials Provide pitch and roll error correction coefficients for a given altitude. 7/12/2016 University of Colorado Aerospace Engineering Sciences 54 Error Reduction Polynomials Given the measured pitch or roll and the error correction polynomial coefficients, determine the actual pitch or roll angle. 7/12/2016 University of Colorado Aerospace Engineering Sciences 55 Algorithm Overview 7/12/2016 University of Colorado Aerospace Engineering Sciences 56 Determining Roll Angle y Roll is the angle between the sensor y-axis and the vector from the center of the sensor frame to the center of the least squares circle, (xc, yc) x ฯ æ xc ö f = -tan ç ÷ è yc ø -1 (xc, yc) 7/12/2016 Center of Least Squares Circle University of Colorado Aerospace Engineering Sciences 57 Determining Pitch Angle y Calculate Height: Height = pixelPitch (Vc - Rc ) Calculate Pitch Angle: x æ Height ö q = -tan ç ÷ è FocalLength ø -1 Vc - Rc Pitch Angle Height FOV Vc Rc Focal Length Earth center 7/12/2016 University of Colorado Aerospace Engineering Sciences 58 Pitch and Roll Errors Pitch and roll errors are negligible after error reduction equation. DR.2.2.1 Displacements have errors less than 0.5o Error correction polynomial reduces errors to ≤ 0.06o 7/12/2016 University of Colorado Aerospace Engineering Sciences 59 Software: Line Timing, CMOS Protocol 8-bit Double-Clocked YCbCr CMOS mode (‘YCbYCr’ 4:2:2 Cosited) 2/1/2015 7/12/2016 University of Colorado Aerospace Engineering Sciences 60 Software: Frame Timing, CMOS Protocol 2/1/2015 7/12/2016 University of Colorado Aerospace Engineering Sciences 61 Software: Timing Scheme for CPU and PRU0 2/1/2015 7/12/2016 University of Colorado Aerospace Engineering Sciences 62 Software: FBD for CAN communication 1. A CAN message is received from the simulated satellite bus through the DIO pins, which interrupts the CPU. 2. The CPU determined if the message is intended for ETHOS, and saves the message to a buffer in RAM. 3. If the message is commanding a displacement vector output, the CPU will finish computing the displacement vector for the current frame. If the message is commanding a health telemetry output, the CPU will sample the voltage and current. 4. The CPU will send the commanded data over the CAN bus. 2/1/2015 7/12/2016 University of Colorado Aerospace Engineering Sciences 63 Mechanical: Face Mount ½“ Aluminum ¼“ Ø 2.48 ” 3.74” 5.00” 2/2/2015 University of Colorado Aerospace Engineering Sciences 64