기본 개념
This topic provides a basic introduction to drones and using PX4 (it is meant mostly for novice users but is also a good introduction for more experienced users).
기본 개념에 익숙하시면, 기본 조립편에서 자동비행장치의 배선 방법을 공부할 수 있습니다. To load firmware and set up the vehicle with QGroundControl, see Basic Configuration.
드론의 정의
A drone, or Unmanned Vehicles (UV), is an unmanned "robotic" vehicle that can be manually or autonomously controlled. They can travel in air, on the ground, on/under the water, and are used for many consumer, industrial, government and military applications, including aerial photography/video, carrying cargo, racing, search and surveying, and so on.
Drones are more formally referred to as Unmanned Aerial Vehicles (UAV), Unmanned Ground Vehicles (UGV), Unmanned Surface Vehicles (USV), Unmanned Underwater Vehicles (UUV).
INFO
The term Unmanned Aerial System (UAS) typically refers to a UAV and all of the other components of a complete system, including a ground control station and/or radio controller, and any other systems used to control the drone, capture, and process data.
Drone Types
There are many different vehicle frames (types), and within the types there are many variations. Some of the types, along with the use cases for which they are most suited are listed below.
- Multicopters — Multi-rotors offer precision hovering and vertical takeoff, at the cost of shorter and generally slower flight. They are the most popular type of flying vehicle, in part because they are easy to assemble, and PX4 has modes that make them easy to fly and very suitable as a camera platform.
- Helicopters — Helicopters similar benefits to Multicopters but are mechanically more complex and more efficient. They are also much harder to fly.
- Planes (Fixed-wing) — Fixed-wing vehicles offer longer and faster flight than multicopters, and hence better coverage for ground surveys etc. However they are harder to fly and land than multicopters, and aren't suitable if you need to hover or fly very slowly (e.g. when surveying vertical structures).
- VTOL (Vertical Takeoff and Landing) - Hybrid Fixed-wing/Multicopter vehicles offer the best of both worlds: take off in vertical mode and hover like a multicopter but transition to forward flight like an airplane to cover more ground. VTOL are often more expensive than either multicopters and fixed-wing aircraft, and harder to build and tune. They come in a number of types: tiltrotors, tailsitters, quadplanes etc.
- Airships/Balloons — Lighter-than-air vehicles that typically offer high altitude long duration flight, often at the cost of having limited (or no) control over speed and direction of flight.
- Rovers — Car-like ground vehicles. They are simple to control and often fun to use. They can't travel as fast as most aircraft, but can carry heavier payloads, and don't use much power when still.
- Boats — Water-surface vehicles.
- Submersibles — Underwater vehicles.
더 자세한 정보는 다음을 참고하십시오.
Autopilots
자율비행장치(오토파일럿)는 드론의 두뇌에 해당하는 장치입니다.
It minimally consists of flight stack software running on a real time OS ("RTOS") on flight controller (FC) hardware. The flight stack provides essential stabilisation and safety features, and usually also some level of pilot assistance for manual flight and automating common tasks, such as taking off, landing, and executing predefined missions.
Some autopilots also include a general-purpose computing system that can provide "higher level" command and control, and that can support more advanced networking, computer vision, and other features. This might be implemented as a separate companion computer, but in future it is increasingly likely to be a fully integrated component.
PX4 자동비행장치
PX4 is powerful open source autopilot flight stack running on the NuttX RTOS.
PX4의 주요 특징들은 아래와 같습니다.
- Supports many different vehicle frames/types, including: multicopters, fixed-wing aircraft (planes), VTOLs (hybrid multicopter/fixed-wing), ground vehicles, and underwater vehicles.
- Great choice of drone components for flight controller, sensors, payloads, and other peripherals.
- 유연하고 강력한 비행 모드와 안전 기능을 지원합니다.
- Robust and deep integration with companion computers and robotics APIs such as ROS 2 and MAVSDK).
PX4 is a core part of a broader drone platform that includes the QGroundControl ground station, Pixhawk hardware, and MAVSDK for integration with companion computers, cameras and other hardware using the MAVLink protocol. PX4는 드론코드 프로젝트의 지원을 받고 있습니다.
Ground Control Stations
Ground Control Stations (GCS) are ground based systems that allow UV operators to monitor and control a drone and its payloads. A subset of the products that are known to work with PX4 are listed below.
QGroundControl
The Dronecode GCS software is called QGroundControl ("QGC"). It runs on Windows, Android, MacOS or Linux hardware, and supports a wide range of screen form factors. You can download it (for free) from here.
QGroundControl communicates with the drone using a telemetry radio (a bidirectional data link), which allows you to get real-time flight and safety information, and to control the vehicle, camera, and other payloads using a point-and-click interface. On hardware that supports them, you can also manually fly the vehicle using joystick controllers. QGC can also be used to visually plan, execute, and monitor autonomous missions, set geofences, and much more.
QGroundControl desktop versions are also used to install (flash) PX4 firmware and configure PX4 on the drone's autopilot/flight controller hardware.
Auterion Mission Control (AMC)
Auterion Mission Control is a powerful and fully featured ground control station application that is optimized for pilots rather than vehicle configuration. While designed to work with Auterion products, it can be used with "vanilla" PX4.
For more information see:
Drone Components & Parts
Flight Controller
Flight controllers (FC) are the hardware onto which the PX4 flight stack firmware is loaded and run. They are connected to sensors from which PX4 determines its state, and to the actuators/motors that it uses to stabilise and move the vehicle.
PX4 can run on many different types of Flight Controller Hardware, ranging from Pixhawk Series controllers to Linux computers. These include Pixhawk Standard and manufacturer-supported boards. You should select a board that suits the physical constraints of your vehicle, the activities you wish to perform, and cost.
For more information see: Flight Controller Selection
센서
PX4 uses sensors to determine vehicle state, which it needs in order to stablise the vehicle and enable autonomous control. The vehicle states include: position/altitude, heading, speed, airspeed, orientation (attitude), rates of rotation in different axes, battery level, and so on.
PX4 minimally requires a gyroscope, accelerometer, magnetometer (compass) and barometer. This minimal set of sensors is incorporated into Pixhawk Series flight controllers (and may also be in other controller platforms).
Additional/external sensors can be attached to the controller. The following sensors are recommended:
A GNSS/GPS or other source of global position is needed to enable all automatic modes, and some manual/assisted modes.
Typically a module that combines a GNSS and Compass is used, as an external compass can be made less susceptible to electromomagnetic interference than the internal compass in the flight controller.
Airspeed sensors are highly recommended for fixed-wing and VTOL-vehicles.
Distance Sensors (Rangefinders) are highly recommended for all vehicle types, as they allow smoother and more robust landings, and enable features such as terrain following on multicopters.
Optical Flow Sensors can be used with distance sensors on multcopters and VTOL to support navigation in GNSS-denied environments.
For more information about sensors see: Sensor Hardware & Setup.
출력 장치: 모터, 서보, 액츄에이터
PX4 uses outputs to control: motor speed (e.g. via ESC), flight surfaces like ailerons and flaps, camera triggers, parachutes, grippers, and many other types of payloads.
The outputs may be PWM ports or DroneCAN nodes (e.g. DroneCAN motor controllers). 아래 그림은 Pixhawk 4와 Pixhawk 4 미니의 PWM 출력 포트를 설명합니다.
출력 장치는 크게 MAIN
포트와 AUX
포트로 나누며, 포트는 번호로 구분됩니다. MAINn
과 AUXn
의 n
에는 1 ~ 6 또는 1 ~ 8까지의 번호가 부여됩니다. They might also be marked as IO PWM Out
and FMU PWM OUT
(or similar).
WARNING
A flight controller may only have MAIN
PWM outputs (like the Pixhawk 4 Mini), or may have only 6 outputs on either MAIN
or AUX
. Ensure that you select a controller that has enough ports/outputs for your airframe.
You can connect almost any output to any motor or other actuator, by assigning the associated function ("Motor 1") to the desired output ("AUX1") in QGroundControl: Actuator Configuration and Testing. Note that the functions (motor and control surface actuator positions) for each frame are given in the Airframe Reference.
참고:
- Pixhawk controllers have an FMU board and may have a separate IO board. 별도의 입출력 보드가 있을 경우에는,
AUX
포트는 FMU 보드에 연결하고,MAIN
포트는 입출력 보드에 연결합니다. 다른 경우로는MAIN
포트를 FMU 보드에 연결하고,AUX
포트가 없을 수도 있습니다. - The FMU output ports can use D-shot or One-shot protocols (as well as PWM), which provide much lower-latency behaviour. FMU 출력 포트는 레이싱 드론처럼 높은 성능이 요구되는 기체에 사용됩니다.
MAIN
포트와AUX
포트에는 PWM/Dshot/OneShot 출력 제어에 충분한 6개에서 8개의 출력 포트를 가지고 있습니다. 이론적으로는, 보드 버스에서 더 많은 출력 포트를 제공할 수 있습니다. UAVCAN 버스에는 이러한 제한이 없습니다.
전기변속기(ESC)와 모터
Many PX4 drones use brushless motors that are driven by the flight controller via an Electronic Speed Controller (ESC) (the ESC converts a signal from the flight controller to an appropriate level of power delivered to the motor).
PX4가 지원하는 전기변속기와 모터 정보는 여기를 참고하십시오.
- 전기변속기와 모터
- 전기변속기 보정
- 전기변속기 펌웨어와 프로토콜 개요(oscarliang.com)
배터리와 전원
PX4 드론은 리튬-폴리머(LiPo) 배터리를 가장 많이 사용합니다. The battery is typically connected to the system using a Power Module or Power Management Board, which provide separate power for the flight controller and to the ESCs (for the motors).
배터리와 배터리 설정 정보는 배터리 설정과 기본 조립(예: 픽스호크 4 배선 빠른 시작 > 전원)를 참고하십시오.
Manual Control
Pilots can control a vehicle manually using either a Radio Control (RC) System or a Joystick/Gamepad controller connected via QGroundControl.
RC systems use a dedicated ground-based radio transmitter and vehicle-based receiver for sending control information. They should always be used when first tuning/testing a new frame design, or when flying racers/acrobatically (and in other cases where low latency is important).
Joystick systems use QGroundControl to encode the control information from a "standard" computer gaming joystick into MAVLink messages, and sent it to the vehicle using the (shared) telemetry radio channel. They can be used for most manual flight use cases such as taking off, surveys, and so on, provided your telemetry channel has a high enough bandwidth/low latency.
Joysticks are often used in integrated GCS/manual control systems because it is cheaper and easier to integrate a joystick than a separate radio system, and for the majority of use cases, the lower latency does not matter. 일부 RC에서는 자동조종장치에서 전송한 텔레메트리를 수신할 수 있습니다.
PX4 does not require a manual control system for autonomous flight modes.
안전 스위치
Vehicles may include a safety switch that must be engaged before the vehicle can be armed (when armed, motors are powered and propellers can turn).
This switch is almost always integrated into the GPS module that is connected to the Pixhawk GPS1
port — along with the buzzer and UI LED.
The switch may be disabled by default, though this depends on the particular flight controller and airframe configuration. You can disable/enable use of the switch with the CBRK_IO_SAFETY parameter.
INFO
Safety switches are optional. Many argue that it is safer for users never to approach a powered system, even to enable/disable this interlock.
Buzzer
Vehicles commonly include a buzzer for providing audible notification of vehicle state and readiness to fly (see Tune meanings).
This buzzer is almost always integrated into the GPS module that is connected to the Pixhawk GPS1
port — along with the safety switch and UI LED. You can disable the notification tunes using the parameter CBRK_BUZZER.
LEDs
Vehicles should have a superbright UI RGB LED that indicates the current readiness for flight.
Historically this was included in the flight controller board. On more recent flight controllers this is almost always an I2C peripheral integrated into the GPS module that is connected to the Pixhawk GPS1
port — along with the safety switch and buzzer.
텔레메트리 무선 통신
Data/Telemetry Radios can provide a wireless MAVLink connection between a ground control station like QGroundControl and a vehicle running PX4. 비행중인 기체의 매개변수 변경, 실시간 텔레메트로 통신, 임무 변경 등의 작업을 수행할 수 있습니다.
외부 보조 컴퓨터
A Companion Computer (also referred to as "mission computer" or "offboard computer"), is a separate on-vehicle computer that communicates with PX4 to provide higher level command and control.
The companion computer usually runs Linux, as this is a much better platform for "general" software development, and allows drones to leverage pre-existing software for computer vision, networking, and so on.
The flight controller and companion computer may be pre-integrated into a single baseboard, simplifying hardware development, or may be separate, and are connected via a serial cable, Ethernet cable, or wifi. The companion computer typically communicates with PX4 using a high level Robotics API such as MAVSDK or ROS 2.
관련 주제는 다음과 같습니다:
- Companion Computers
- 오프보드 모드 - PX4 외부의 지상 통제국이나 보조 컴퓨터로 제어하는 비행 모드
- 로보틱스 API
SD 카드 (휴대용 저장 장치)
PX4는 비행 로그를 SD 카드에 저장합니다. UAVCAN 주변 장치를 사용하거나 비행 임무 수행에는 SD 카드가 필수입니다.
기본적으로, PX4는 부팅 과정에 SD 카드가 없으면, 포맷 실패 경고음을 두 번 울립니다. 그리고, 위에서 설명한 다수의 기능들이 작동하지 않습니다.
TIP
픽스호크 보드에서 지원하는 SD 카드의 최대 용량은 32GB입니다. The SanDisk Extreme U3 32GB and Samsung EVO Plus 32 are highly recommended.
SD 카드는 선택 사항입니다. SD 카드가 없는 비행 콘트롤어는 다음의 작업들을 수행하여야 합니다.
- CBRK_BUZZER 매개변수로 알림음을 껍니다.
- 스트림 로그를 다른 보조 장치에 기록합니다.
- 비행 임무를 RAM/플래시에 저장합니다.
Payloads
Payloads are equipment carried by the vehicle to meet user or mission objectives, such as cameras in surveying missions, instruments used in for inspections such as radiation detectors, and cargo that needs to be delivered. PX4 supports many cameras and a wide range of payloads.
Payloads are connected to Flight Controller outputs, and can be triggered automatically in missions, or manually from an RC Controller or Joystick, or from a Ground Station (via MAVLink/MAVSDK commands).
For more information see: Payloads & Cameras
시동 및 해제
A vehicle is said to be armed when all motors and actuators are powered, and disarmed when nothing is powered. There is also a prearmed state when only servo actuators are powered, which is primarily used for testing.
A vehicle is usually disarmed on the ground, and must be armed before taking off in the current flight mode.
WARNING
Armed vehicles are dangerous because propellers can start spinning at any time without further user input, and in many cases will start spinning immediately.
Arming and disarming are triggered by default using RC stick gestures. On Mode 2 transmitters you arm by holding the RC throttle/yaw stick on the bottom right for one second, and to disarm you hold the stick on bottom left for one second. PX4에서 무선 조종 스위치로 시동을 걸 수 있도록 설정할 수 있습니다. 또한, 지상통제국에서 시동 명령을 MAVLink로 전송할 수 있습니다.
To reduce accidents, vehicles should be armed as little as possible when the vehicle is on the ground. By default, vehicles are:
- Disarmed or Prearmed (motors unpowered) when not in use, and must be explicitly armed before taking off.
- Automatically disarm/prearm if the vehicle does not take off quickly enough after arming (the disarm time is configurable).
- Automatically disarm/prearm shortly after landing (the time is configurable).
- 기체는 정상 상태가 아니면, 시동은 걸리지 않습니다.
- Arming is prevented if the vehicle has a safety switch that has not been engaged.
- 수직이착륙기는 고정익 모드에서는 시동이 걸리지 않습니다(기본 설정).
- Arming may be prevented due to a number of other optional arming pre-condition settings, such as low battery.
When prearmed you can still use actuators, while disarming unpowers everything. Prearmed and disarmed should both be safe, and a particular vehicle may support either or both.
TIP
Sometimes a vehicle will not arm for reasons that are not obvious. QGC v4.2.0 (Daily build at time of writing) and later provide an arming check report in Fly View > Arming and Preflight Checks. From PX4 v1.14 this provides comprehensive information about arming problems along with possible solutions.
시동 및 해제에 관한 자세한 내용은 시동 준비, 시동, 시동 해제를 참고하십시오.
비행 모드
비행 모드는 다양한 유형과 수준의 차량 자동화 기능을 제공합니다. Autonomous modes are fully controlled by the autopilot, and require no pilot/remote control input. 예를 들어 이륙, 복귀 및 착륙 등의 작업을 자동으로 제어할 수 있습니다. 또 다른 자율 모드에는 사전 프로그래밍된 임무 수행, GPS 위치 정보 비행, 외부 컴퓨터 또는 지상제어S/W 명령에 의한 비행 작업이 가능합니다.
Manual modes are controlled by the user (via the RC control sticks/joystick) with assistance from the autopilot. Different manual modes enable different flight characteristics - for example, some modes enable acrobatic tricks, while others are impossible to flip and will hold position/course against wind.
TIP
모든 기체마다 모든 비행 모드가 적용되지 않습니다. 비행 모드는 조건이 충족된 기체에만 적용할 수 있습니다. 대부분의 모드에서는 GPS 위치 정보가 필요합니다.
An overview of the available flight modes for each vehicle can be found below:
- Flight Modes (Multicopter)
- Flight Modes (Fixed-Wing)
- Flight Modes (VTOL)
- Drive Modes (Differential Rover)
- Drive Modes (Ackermann Rover)
Instructions for how to set up your remote control switches to enable different flight modes is provided in Flight Mode Configuration.
안전 설정(사고 방지)
PX4는 시스템 사고시에 기체을 보호하고 복구할 수 있는 안전 시스템이 있으며, 이와 관련된 여러가지 설정들이 있습니다. 안정 설정으로 안전 비행 지역과 조건을 지정하고, 안전 장치에서 수행하는 작업(예: 착륙, 위치 유지 또는 지정된 지점으로 복귀)을 설정할 수 있습니다.
You can only specify the action for the first failsafe event. 이벤트가 발생하면, 시스템은 특별한 처리 코드를 실행하여 안전 장치 트리거가 분리된 시스템에서 기체별 코드에 의해 관리되도록 합니다.
주요 안전장치는 다음과 같습니다.
- 배터리 부족
- RC(원격 제어) 신호 상실
- 위치 상실(GPS 전역 위치 추정 품질이 너무 낮음)
- 외부 보드 연결 손실(예: 보조 컴퓨터와의 연결이 끊어짐)
- 데이터 링크 손실(예: GCS에 대한 텔레메트리 연결이 끊어짐)
- 지리적 경계 위반(가상 실린더 내부로 기체 비행을 제한합니다)
- 미션 안전장치(재 이륙 시 이전 미션이 실행되는 것을 방지합니다)
- 트래픽 회피(예: ADSB 응답기에 의해 작동됩니다)
더 자세한 내용은 안전편을 참고하십시오.
전진 방향
차량, 보트 및 항공기에는 전진 방향이 정해져 있습니다.
INFO
For a VTOL Tailsitter the heading is relative to the multirotor configuration (i.e. vehicle pose during takeoff, hovering, landing).
차량의 전진 방향을 알아야만 차량의 이동 벡터와 정렬할 수 있습니다. 멀티콥터는 모든 방향에서 대칭인 경우에도 전진 방향이 정의됩니다. 제조사에서는 일반적으로 프로펠러나 팔(프레임)에 색깔을 사용하여 차량의 전진 방향을 표시합니다.
위 그림에서 전진 방향은 멀티콥터의 프로펠러에 빨간색으로 표시되어 있습니다.
비행 콘트롤러 방향에서 전진 방향에 대한 자세한 정보를 참고하십시오.