In the previous section of the drone flight control program article, Xiaobian I explained several industrial-grade, agricultural plant protection drone application examples, so today I will bring you several open source drones. A platform, software and hardware platform, technical features, use of sensors and their advantages and disadvantages are introduced for reference.
First, the open source Ardupilot / APM seriesAPM was launched in 2007 by the DIY Drones community. It is by far the most mature open source autopilot system that supports unmanned equipment such as multi-rotor, fixed-wing, helicopter and driverless vehicles.
Based on the open source platform of Arduino, APM has improved several hardware, including accelerometer, gyroscope and magnetometer combined inertial measurement unit (IMU). Due to the good customizability of APM, APM has spread rapidly within the reach of global model enthusiasts. Through the open source software Mission Planner, developers can configure APM settings, accept and display sensor data, use Google map to complete auto-driving and other functions, but Mission Planner only supports Windows operating system.
At present, APM flight control has become a mature benchmark for open source flight control. It supports a variety of four, six and eight-axis products for multi-rotor APM flight control, and can be stabilized after connecting external GPS sensors, and complete autonomous takeoff and landing, autonomous routes. Flight, home, height, fixed point and other rich flight modes. APM can connect external ultrasonic sensors and optical flow sensors to achieve fixed height and fixed-point flight indoors.
APM series has been developed so far, APM2.5 and APM2.6 are the final version of ardupilot flight control. APM brings us very powerful functions, is very mature and reliable, the potential is fully exploited, and the functions are very rich. However, the ability to calculate and store the APM series 8-bit CPU is far from meeting the future application requirements. The end of the APM series is also imperative.
The APM series supports the following automatic navigation boards.
· PX4 – a 32-bit ARM-based autopilot that supports many advanced features using the NuttX real-time operating system
· APM2 – a popular AVR2560 8-bit autopilot
· APM1 (developed discontinued) – an AVR2560-based autopilot with a separate structure
Since the ArduPilot/APM source code is written based on the AP-HAL hardware abstraction layer, it makes it possible for the code to support more auto-navigation boards.
APM development language and tools:
The main flight code for ArduPilot/APM is written in C++. Support tools are written in multiple languages, the most common being python.
Currently, the main vehicle code is written as a ".pde" file, which is derived from the Arduino build system. The pde file is part of the pre-processing for the .cpp file build. The declarations contained in the pde file also provide build rules that indicate which libraries need to be included and connected.
Ground station:
ArduPilot/APM supports a variety of ground stations for planning and controlling flights. The flight firmware uses the MAVLink protocol, which allows the aircraft to be controlled by any MAVLink compatible device.
· The most widely used ground station is the Mission Planner, written in C# for Windows. The source code for Mission Planner can be viewed on github. Mission Planner can also run on Linux and MacOS via mono.
· QGroundControl is also an option for ground stations, written in C++'s Qt library
· For face command lines and scriptable ground stations, you can use MAVProxy
· For android tablets, you can use ArdroPilot or DroidPlanner
Other features:
Main control chip: AvrAtmega1280/2560
Main sensors: Atmega168/328. Dual-axis gyro, IMU (single-axis gyro, three-axis accelerometer. Three-axis magnetometer module). Barometer. AD chip
Compilation environment: Arduino IDE
Development language: arduino
Development software: Arduino IDE interface is friendly and simple, Arduino language is similar to C language
Algorithm: Two-level PID control mode, the first level is the navigation level, and the second level is the control level.
Hardware platform: APM2.5: Onboard electronic compass; APM2.6: Electronic compass external and GPS integration
Advantages and disadvantages:
Advantage:
1. APM is used by a large number of people, and the information is rich and complete, especially the classic APM2.5.
2. The function is fully satisfied
3. apm firmware matures relative to PX4
4. There are vibrations, gestures, log records, and problems are well documented.
Disadvantages:
1. The processor is behind the F407, but enough
2. Sensors are scattered and the integration is not high
Online UPS,High Frequency UPS,PFC Technology,Tower Cabinets
Shenzhen Unitronic Power System Co., Ltd , https://www.unitronicpower.com