Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Voltage optimisation wikipedia , lookup
Resilient control systems wikipedia , lookup
Telecommunications engineering wikipedia , lookup
Control system wikipedia , lookup
Mains electricity wikipedia , lookup
Variable-frequency drive wikipedia , lookup
Geophysical MASINT wikipedia , lookup
Immunity-aware programming wikipedia , lookup
Quad-Copter Group 3 Fall 2010 David Malgoza Engers F Davance Mercedes Stephen Smith Joshua West Project Description Design a flying robot Robot must be able to: ◦ ◦ ◦ ◦ ◦ Avoid Obstacles Navigate to GPS location Communicate Wirelessly Wireless Manual Control Stream Wireless Video Project Motivation The Big Question, WHY? Wanted to design an aerial vehicle for surveillance purposes Wanted to do a project with fair amount of hardware and software Most of all wanted to do something cool and fun! Project Overview To do this we must: Design and code a control system for the Quad-Copter (move up, avoid this, etc…) Design and code a sensor fusion algorithm for keeping the copter stable Design and code a wireless communication system (send commands) Design and build a power distribution system Design and build a chassis Goals/Objectives FLY The Quad-copter must be able to remain stable and balance itself. The copter must be able to move forward, rotate left and right, rise and descend The copter must be able to signal when power is running low (audible) Specifications/Requirements Lift at least 2 kg of mass Navigation accuracy within 3m The Quad-Copter must communicate wirelessly at least 100m The Quad-Copter must flight for a minimum of 5 minutes The Quad-Copter must be able to detect objects from at least 18 inches away The Quad-Copter must have video capabilities at 100m Quad-Copter Concept Frame Frame Goals: Create a lightweight chassis for the Quad-Copter The chassis must support all batteries, external sensors, motors, and the main board Cost Effective Requirements: Create a chassis with a mass of 800g or less The area the Quad-Copter cannot exceed a radius of 18in. Must be able to support at least a 1.2kg load Materials Comparison There were 2 lightweight materials we considered for the chassis: Aluminum and Carbon Fiber Both have capabilities of being entirely used as a chassis and meet the maximum mass requirements Carbon Fiber Aluminum Advantages Excellent Strength Easily and Stiffness. Replaceable. Durable. Less Costly. Disadvantages Can chip or shatter. More costly. Can easily bend or dent. Design of Frame 2 aluminum square plates will be used as the main structural support 4 rods will be screwed to the top square plate at and secured at the corners Below the 2 plates, a lower plate will be placed 1.5in below to support all batteries, as well as secure the range finder sensors and video system Landing gear will be shaped as standard helicopter legs. A layer of foam will be used for padding the landing gear Diagram of Frame Motors/ESC Motors Goals: To use lightweight motors for flight The motors must be cost effective Requirements: Use motors with a total mass of 300g Each motor must be able to go above 2700 rpm Each motor is to be controlled via PWM signal from the processor Brushless Motor 1. 2. Advantages 1. Less friction on the rotor 2. Typically faster RPM. 3. PWM or I2C controlled by an electronic speed control (ESC) module. Disadvantages 1. Require more power. 2. Sensorless motors are the standard 3. Typically more expensive TowerPro 2410-09Y BLDC • Minimum required voltage: 10.5V • Continuous Current: 8.4A • Maximum Burst Current: 13.8A • Mass: 55g • Speed/Voltage Constant: 840 rpm/V • Sensorless ESC required for operation. Sensorless ESC The ESC translates a PWM signal from the microprocessor into a three-phase signal, otherwise known as an inverter. Based on a duty cycle between 10% and 20%, the ESC will have operation. Based on the requirements given by the manufacturer, the PWM frequency will be 50Hz. Power Supply System Power Goals and Objectives: • The ability to efficiently and safely deliver power to all of the components of the quadcopter. Requirements: •The total mass of the batteries should be no more than 500g • A total of 3 low-power regulators are to be used. • Must be able to sustain flight for more than 5 minutes Batteries Type Advantages Disadvantages NiCd Easier and faster to recharge. Inexpensive Standard sizes below 10.5V. Reverse current issues. Lower expected battery life. Lower charge capacity. NiMH Easily rechargeable. Reliable. Inexpensive. Standard sizes below 10.5V. Longer charge time. Lower charge capacity. LiPo 3-cell standard voltage: 11.1V. Typically higher charge capacity. Easy to damage from overcharging. Longer charge time. Expensive. LiPo Battery Specifications on the EM-35 Rated at 11.1V Charge Capacity: 2200mAH Continuous Discharge: 35C, which delivers 77A, typically. Mass: 195g Power Distribution Digital Compass 6V – 4 AA LM7805 LD1117V33 GPS Main Processor Wireless Processor Transceiver 11.1V LiPo LM317 Ultrasonic Ultrasonic Gyroscope Accel. Motor Motor 11.1V LiPo Motor Motor LM7805 5V LDO regulator, rated at 1A maximum. The LM7805 regulator is used for the GPS, the main processor, and the digital compass module. 300mA required for all components. LD1117V33 3.3V LDO regulator, with 500mA maximum. Will be used for powering the transceiver and the wireless system, and most of the analog components. LM317 The regulator has a maximum current rating of 1A. TO-220 packaging is preferred if the application of a heat sink is later required. This will be used as a 3-V regulator for the gyroscope. Logic Converter Allows for step-up and step-down in voltage when data travels between a lower referenced voltage signal to a higher referenced voltage signal. This will be used to communicate the GPS and the wireless communication system with the main processor Source: http://www.sparkfun.com/commerce/product_info.php?products_id=8745 Sensors Sensor Subsystems/Functions Flight stability sensors ◦ Monitor, correct tilt Proximity sensors ◦ Detect obstacles, ground at low altitude High altitude sensor ◦ When higher than proximity sensor range Direction/Yaw sensor ◦ Maintain stable heading, establish flight path Navigation/Location sensor ◦ Monitor position, establish flight path *Minimize cost and weight for all choices Flight Stability Sensors Goals/Objectives ◦ A sensor system is needed to detect/correct the roll and pitch of the quad-copter, to maintain a steady hover. Specifications/Requirements ◦ Operational range 3.0 – 3.3 V supply ◦ Weigh less than 25 grams ◦ Operate at a minimum rate of 10 Hz Flight Stability Sensors Options (one or more) ◦ Infrared horizon sensing Expensive, unpractical, interesting ◦ Magnetometer (3-axis) Better for heading than tilt, little expensive Accelerometer Measures g-force, magnitude and direction Gyroscope Measure angular rotation about axes Flight Stability Sensors IMU (Inertial Measurement Unit) ◦ Combination of accelerometer and gyroscope ◦ ADXL335 - triple axis accelerometer (X,Y, Z) Analog Devices ◦ IDG500 – dual axis gyroscope (X and Y) InvenSense ◦ 5 DoF (Degrees of Freedom) IMU ◦ Sensor fusion algorithm Combines sensor outputs into weighted average More accurate than 1 type of sensor IMU Hardware ADXL335 - triple axis accelerometer ◦ ◦ ◦ ◦ +/- 3 g range – adequate 50 Hz bandwidth – adequate, adjustable 1.8 – 3.6 V supply Analog output IDG500 – dual axis gyroscope ◦ ◦ ◦ ◦ Measures +/- 500 º/s angular rate 2 mV/deg/s sensitivity 2.7 – 3.3 V supply Analog output ADXL335 – PCB Layout Surface mount soldered to main PCB 3.3 V supply filtered by .1µf cap .1µf caps at C2, C3, C4 that filter > 50Hz X,Y, Z outputs to MCU A/D converters S1 self test switch IDG500 – Board Layout Soldered to main PCB 3.0V supply X & Y gyro outputs with low pass filter, to A/D C5-C6 for internal regulation IMU – Algorithm Overview Accelerometer vector R projected onto the xz and yz planes forms angles Axz and Ayz (yellow), which represent current tilt Gyro yields instantaneous velocity and direction of the same angles at regular interval T Results merged into an improved estimated angular state The algorithm’s output is the input to the linear control system IMU – code progress IMU simulation in C ◦ Calculates improved angular estimation from simulated 12-bit A/D outputs ◦ Lacks port definitions, timing constraints Proximity Sensors Goals/Objectives Reliably detect different shapes, surfaces Under various light and noise conditions One facing down, one facing forward Specifications/Requirements Detect the ground at 1-15 feet Obstacles 30˚ arc forward 1- 8 feet 6 inches resolution Proximity Sensors Options ◦ Infrared proximity sensor Cheap, ineffective in sunlight ◦ Laser range finder Too expensive Ultrasonic range finder Affordable Reliable Good range Ultrasonic range finder Maxbotix LV-EZ2 ◦ ◦ ◦ ◦ $27.95 each 1 inch resolution Max range 20 feet Detection area depends on voltage, target shape person ≈ 8 ft. wall ≈ 20 ft. wire ≈ 2-3 ft. Ultrasonic – Board Layout 3 header pins on PCB ◦ 3.3 V supply ◦ Output to A/D ◦ Analog ground Low pass filter ◦ Reduce noise ◦ 100 uf cap, 100Ω res. 6 – 12 inches wire ◦ front sensor must have clear field i.e. no interference from propeller High altitude Measurement Goals/Objectives ◦ Measure higher altitudes, beyond the range of the ultrasonic sensor ◦ Ensure that the copter stays under control Quad-copter could fly beyond radio control range AI protocol to limit altitude ◦ Overridden by ultrasonic when applicable Requirements/Specifications ◦ Measure Altitude from 15 – 200 ft. ◦ 10 ft. or better resolution/accuracy High altitude Measurement Options: ◦ GPS vertical component unreliable Barometric altimeter Determines altitude from air pressure More effective at higher altitudes Won’t recognize uneven ground HDPM01 – Hoperf Electronic dual function altimeter/compass module with breakout board Cost efficient solution $19.90 vs. $45.00 (separate) Direction sensor (Compass) Goals/Objectives ◦ Establish an external reference to direction ◦ For maintaining a stable heading, turning, and establishing a flight path in autonomous mode ◦ The module should not suffer from excessive magnetic interference (compass) ◦ The module should be separate so that it can be placed away from interfering fields and metals (compass) Specifications/Requirements ◦ Accurate to within 3 degrees HDPM01 – Board layout 6 header pins from PCB ◦ Supply at 5 V ◦ Digital ground ◦ Master clock ◦ I2C serial data line ◦ I2C serial clock line ◦ XCLR – A/D reset ◦ Pull-up resistors High to transfer Navigation/Location sensor (GPS) Goals/Objectives ◦ Needed for autonomous flight mode ◦ The system should establish an external reference to position (latitude and longitude) ◦ The system should have a serial output compatible with the MCU, UART preferred. ◦ Should be compact, requiring minimal external support (internal antenna) Requirements/Specifications: ◦ The system should be accurate to within 3 meters (latitude and longitude). ◦ The update rate should be at least 1Hz. Navigation/Location sensor (GPS) Options ◦ No practical alternative to GPS module With a GPS system, the quad-copter can autonomously move toward a given coordinate And, return to point of origin MediaTek MT3329 GPS 10Hz $39.95 for module + adapter (special offer) Integrated patch antenna (6 grams total) 1-10 Hz update rate UART interface MT3329 GPS Module MediaTek chip ◦ Sensitivity: Up to -165 dBm tracking ◦ Position Accuracy: < 3m ◦ Coding/Library support available from DIYdrones Adapter board (wired to main PCB) ◦ Facilitates testing, easily switched from prototype board to final board ◦ Backup battery ◦ LED: blinks when searching, lit when locked MT3329 – Board Layout Main PCB will have an EM406 connector (6 pins) Rx and Tx to MCU 5.0 V supply, 3.0 V enable, digital ground 20 cm EM406 compatible connector cable Module can be attached to the frame (tape/Velcro) Microcontroller Goals/Objectives Able to produce PWM signal Send/Receive UART signals Hardware ADCs not just comparators I2C capability Specifications/Requirements 16-bit timers with 4 output compare registers 2 UART ports 8 ADC ports (minimum 10-bit accuracy) ATmega2560 Specs 0 – 16Mhz @ 4.5 – 5.5 volts 256 KB Flash memory 4 KB RAM 4 16-bit timers 16 10-bit ADC 4 UART TWI (I2C) Microcontroller Information The main MCU will be programmed through the SPI pins using the AVRISPMKII. AVRStudio 4.18 is the IDE that will be used for development The main MCU will be responsible for the obtaining sensor data, updating the control system, and talking to the wireless communication unit Code Code: Linear Control System struct PID_Status { desired_value; Kp_Gain; Ki_Gain; Kd_Gain; max_error; max_summation_error; } Init_PID(struct PID_Status *PID_S, Kp_Gain, Ki_gain, Kd_gain); updatePID(struct PID_Status *PID_S); Code: Motor Control A PWM signal will be produced by the MCU to control the motors Once the PWM signal is setup, they run independent of the MCU Functions: ◦ ◦ ◦ ◦ PWM_Setup( ); updateMotor(uint8_t motor, uint16_t speed); startMotors( ); stopMotors( ); Code: Analog Sensors The ADC will be used to retrieve data from the sensors. A switch statement will be used to gather data correctly Functions: ◦ ADC_Setup( ); ◦ ISR(ADC_vect); Code: Analog Sensors Possible sensor data structures to store sensor data: Struct struct sensors{ uint16_t accelX; uint16_t accelY; uint16_t accelZ; uint16_t gyroX; uint16_t gyroY; }; Array uint16_t sensors[5]; sensors[0] = accelX; sensors[1] = accelY; sensors[2] = accelZ; sensors[3] = gyroX; sensors[4] = gyroY; Code: Digital Sensors I2C will be used to retrieve data from the compass and barometer ◦ MCU – master ◦ Compass/Barometer – slave Functions: ◦ I2C_Setup( ); ◦ ISR(TWI_vect); Code: Communication UART is going to be used to retrieve data from GPS module and send/receive data from the wireless communication module Functions: ◦ ◦ ◦ ◦ ◦ UART_Setup( ); ISR(USART1_RX_vect); ISR(USART1_TX_vect); ISR(USART2_RX_vect); ISR(USART2_TX_vect); Computer Communication To communicate with the computer via UART, a UART to USB chip will be used ◦ The FT232RL will be used to create this link ◦ This chip creates a virtual communication port on the computer which can be accessed easily using C# Picture used with permission from Sparkfun.com Computer Communication Schematic of FT232RL: Picture used with permission from Sparkfun.com Code: C# GUI C# will be used for coding the GUI Standard Libraries for serial port communication Easy to learn Function of GUI ◦ Retrieve sensor data ◦ Monitor control system ◦ Send GPS locations to copter Code: Overview Wireless Comm Compass/ Barometer GPS UART I2C ADCs IMU PWM Update PIDs Wireless Communication Requirements Work on the 2.4 GHz band Data rate of minimum 56 Kbs To have a range of 100 meters To cost less than $70 Design The transceiver is TI’s CC2520 The CC2520 has a range of 100 meters The data rate of the CC2520 is 250 Kbs For the protocol TI’s SimpliciTI will be used The microcontroller to control the CC2520 will be the MSP430F2616 Antenna at 2.4 GHz Antenna Dipole Antenna Works at the 2.4 GHz frequency Has a gain of 5 dBi 50 ohm impedance The is big and heavy If weight becomes an issue a smaller antenna will be used The CC2520 Balun Design Interface the CC2520 with a 50 Ohm antenna Need to match the impedances of the CC2520 and the antenna Murata chip Balun LDB182G4510C-110 This design reduces the impact of the PCB design on performance CC2520 Balun Circuit Design CC2520 and MSP430F2616 Interfaced through a SPI connection MSP430 as master and CC2520 slave CC2520 Complete Circuit TI’s SimpliciTI Protocol Is a small and simple protocol 6 functions to get a basic peer to peer network Available for free for TI’s chips Programming will be through Eclipse using the open source MSPGCC compiler The MSP430 will be flashed using TI’s debugger MSP-FET430UIF SimpliciTI Functions SMPL_Init(&linkID) SMPL_Link(&linkID) SMPL_LinkListen(&linkID) SMPL_Send(&linkID, uint8_t *msg, uint8_t len) SMPL_Receive (&linkID, uint8_t *msg, uint8_t *len) SMPL_Ioctl() SimpliciTI Status Struct smplStatus_t. Name Description SMPL_SUCCESS Operation successful. SMPL_TIMEOUT A synchronous invocation timed out. SMPL_BAD_PARAM SMPL_NOMEM SMPL_NO_FRAME Bab parameter value in call. No memory available. Object depend on API No frame available in input frame queue. SMPL_NO_LINK No reply received for Link frame sent. SMPL_NO_JOIN No reply received for Join frame sent SMPL_NO_CHANNEL Channel scan did not result in response on at least 1 channel. SMPL_TX_CCA_FAIL Frames transmit failed because of CCA failure. SMPL_NO_PAYLOAD Frame received but with no application payload. SMPL_NO_AP_ADDRESS Should have previously gleaned an Access Point address but we none. Difficulty and Concerns Developing this is harder then using an Xbee Open source software TI’s Code Composer IAR Workbench Hardware is done Software will take time Video System Requirements Range of 100 meters Weight less then 20 grams Be powered by any of the powered by a standard battery Not interfere with the 2.4 GHz wireless communication Design of Video System Pre-packaged video system: 24ghzmiwicoc Mount camera with transmitter on QuadCopter Power Supply will be a 9 volts battery Receiver connects to TV or Display with composite connectors Project Management Project Distribution Subsystem Responsible Main Software Josh Linear Control System Engers Frame All Motors David Power Supply David Microcontroller Josh Sensors Steve Wireless Communication Engers Video System Steve PBC Board All Autonomous Algorithm All Project Finance Goal was to be under $700 Current spent $460.61 Difference $239.59 Parts Acquisition at 80% Doing well! Project Progress Research: 90% Design: 75% Hardware Acquisition: 80% Programming: 20% Testing: 20% Prototyping: 20% Overall: 30% Questions, Comments, Concerns?