KR102233226B1 - FPGA-based drone flight control computer with LiDAR - Google Patents

FPGA-based drone flight control computer with LiDAR Download PDF

Info

Publication number
KR102233226B1
KR102233226B1 KR1020190082550A KR20190082550A KR102233226B1 KR 102233226 B1 KR102233226 B1 KR 102233226B1 KR 1020190082550 A KR1020190082550 A KR 1020190082550A KR 20190082550 A KR20190082550 A KR 20190082550A KR 102233226 B1 KR102233226 B1 KR 102233226B1
Authority
KR
South Korea
Prior art keywords
drone
flight control
control unit
fpga
control
Prior art date
Application number
KR1020190082550A
Other languages
Korean (ko)
Other versions
KR20210007064A (en
Inventor
이상창
Original Assignee
이상창
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이상창 filed Critical 이상창
Priority to KR1020190082550A priority Critical patent/KR102233226B1/en
Publication of KR20210007064A publication Critical patent/KR20210007064A/en
Application granted granted Critical
Publication of KR102233226B1 publication Critical patent/KR102233226B1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C39/00Aircraft not otherwise provided for
    • B64C39/02Aircraft not otherwise provided for characterised by special use
    • B64C39/024Aircraft not otherwise provided for characterised by special use of the remote controlled vehicle type, i.e. RPV
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENT OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D45/00Aircraft indicators or protectors not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENT OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D47/00Equipment not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U10/00Type of UAV
    • B64U10/10Rotorcrafts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U30/00Means for producing lift; Empennages; Arrangements thereof
    • B64U30/20Rotors; Rotor supports
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U50/00Propulsion; Power supply
    • B64U50/10Propulsion
    • B64U50/13Propulsion using external fans or propellers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U50/00Propulsion; Power supply
    • B64U50/10Propulsion
    • B64U50/19Propulsion using electrically powered motors
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • B64C2201/024
    • B64C2201/042
    • B64C2201/108
    • B64C2201/146
    • B64C2201/165
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • B64U2201/20Remote controls

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Chemical & Material Sciences (AREA)
  • Radar, Positioning & Navigation (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

본 발명은 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 관한 것으로, 자세하게는 FPGA 기반으로 작동하여 단일 칩으로 제어 가능하므로, 무게, 전력소모량 측면에서 효율이 상승하고, 호버링 및 충돌회피 기능을 가지는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 관한 것으로, FPGA를 기반으로 하여 용도 맞춤형 프로그램 설계가 가능하고, LiDAR센서가 적용되는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 있어서, 드론에 마련되어 상기 드론의 속도, 가속도, 각속도, 방위각, 장애물 위치를 센싱하는 센서부와, 상기 드론에 마련되어 항법연산, 자세제어연산, 로터제어, 서보모터제어를 실시하는 비행제어부와, 상기 드론이 자동비행, 목표지점 이동 또는 호버링 하도록 상기 비행제어부에 명령신호를 인가하는 지상관제부를 포함하고, 상기 비행제어부는 항법연산, 자세제어연산, 로터제어, 서보모터제어, 자동비행, 호버링을 기 설정된 방식으로 제어할 수 있게 알고리즘을 입력 받는 알고리즘입력모듈을 더 포함하여 구성된다.The present invention relates to an FPGA-based drone flight control system equipped with LiDAR, and in detail, since it operates based on an FPGA and can be controlled by a single chip, the LiDAR increases efficiency in terms of weight and power consumption, and has hovering and collision avoidance functions. It relates to an FPGA-based drone flight control system equipped with an FPGA, and in an FPGA-based drone flight control system equipped with LiDAR to which a purpose-customized program design is possible and a LiDAR sensor is applied. A sensor unit that senses speed, acceleration, angular velocity, azimuth, and obstacle position, a flight control unit that is provided in the drone to perform navigation calculation, attitude control calculation, rotor control, and servo motor control, and the drone automatically flies and moves to the target point. Or a ground control unit that applies a command signal to the flight control unit to hover, and the flight control unit is an algorithm to control navigation operation, attitude control operation, rotor control, servo motor control, automatic flight, and hovering in a preset manner. And an algorithm input module for receiving the input.

Description

LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템{FPGA-based drone flight control computer with LiDAR}FPGA-based drone flight control computer with LiDAR

본 발명은 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 관한 것으로, 자세하게는 FPGA 기반으로 작동하여 단일 칩으로 제어 가능하므로, 무게, 전력소모량 측면에서 효율이 상승하고, 호버링 및 충돌회피 기능을 가지는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 관한 것이다.The present invention relates to an FPGA-based drone flight control system equipped with LiDAR, and in detail, since it operates based on an FPGA and can be controlled by a single chip, the LiDAR increases efficiency in terms of weight and power consumption, and has hovering and collision avoidance functions. It relates to an FPGA-based drone flight control system equipped with.

현재 민수용(항공촬영용, 레저용) 및 군용(정찰용) 드론의 산업이 빠르게 성장하고 있으며, 드론은 새로운 상업용 및 소비자 시장에까지 진출하고 있다.Currently, the industry of civil (aircraft, leisure) and military (reconnaissance) drones is growing rapidly, and drones are entering new commercial and consumer markets.

또한, 드론 관련 기술은 3D 모델링, 군사, 택배 서비스 등 다양한 응용분야에 새롭게 적용되면서 지속적으로 확대되고 있다.In addition, drone-related technologies are continuously expanding as they are newly applied to various application fields such as 3D modeling, military, and parcel service.

하지만, 이러한 응용분야에 대한 적용이 점차 확대되면서 더욱 많은 프로세싱 파워와 I/O(Input/Output) 인터페이스를 필요로 하지만, 현재 이용할 수 있는 비행제어시스템(FCC, Flight Control Computer) 플랫폼은 이러한 발전 속도에 따라가지 못하고 있는 실정이며, 현재 대부분의 드론 비행제어시스템 플랫폼은 드론 운용에 필요한 소프트웨어와 하드웨어의 진화에 따라가지 못하고 한계에 다다르고 있는 상황이다.However, as the application to these applications gradually expands, more processing power and I/O (Input/Output) interfaces are required, but the currently available flight control system (FCC, Flight Control Computer) platform is at this rate of development. Currently, most of the drone flight control system platforms have not been able to keep up with the evolution of software and hardware required for drone operation and are approaching their limits.

현재 제공되는 대부분의 비행제어 플랫폼은 MCU(Microcontroller Unit)를 기반으로 하고 있으며, 이러한 형태의 아키텍처는 제한된 프로세싱 파워 및 I/O 인터페이스확장 성능으로 인해 센서를 융합하여 기능을 확장하는데 한계가 있다.Most of the flight control platforms currently provided are based on the microcontroller unit (MCU), and this type of architecture has limitations in expanding functions by fusing sensors due to limited processing power and I/O interface expansion capabilities.

이에 FPGA(Field Programmable Gate Array, 필드 프로그래머블 게이트 어레이)을 기반으로 하여 비행제어 시스템인 FCC를 개발하여, 이를 통해 경량화, 저 전력화, 처리속도 향상, 다수의 다향한 I/O 인터페이스를 통해 비행제어 컴퓨터의 확장성을 가지게 하는 기술이 필요한 실정이다.Accordingly, based on FPGA (Field Programmable Gate Array, Field Programmable Gate Array), a flight control system, FCC, was developed, and through this, light weight, low power consumption, improved processing speed, and flight control computer through a number of various I/O interfaces. There is a need for a technology that enables the scalability of the company.

FPGA는 설계 가능 논리 소자와 프로그래밍이 가능한 내부 회로가 포함된 반도체 소자이다. 설계 가능 논리 소자는 AND, OR, XOR, NOT, 더 복잡한 디코더나 계산기능의 조합 기능 같은 기본적인 논리 게이트의 기능을 복제하여 프로그래밍할 수 있다. 대부분의 FPGA는 프로그래밍 가능 논리요소 (FPGA 식으로는 논리 블록이라고도 함)에 간단한 플립플롯이나 더 완벽한 메모리 볼록으로 된 메모리 요소를 포함하고 있다.An FPGA is a semiconductor device that contains designable logic elements and programmable internal circuitry. Designable logic devices can be programmed by replicating the functions of basic logic gates, such as AND, OR, XOR, NOT, and more complex decoders or combinations of computational functions. Most FPGAs contain a simple flipplot or more complete memory convex memory element in a programmable logic element (also called a logical block in the FPGA way).

프로그램이 가능한 내부선 계층구조는 FPGA의 논리블록을 시스템 설계자가 요구하는 대로 단일 칩 프로그래밍가능한 브레드보드처럼 내부연결을 할 수 있다. 이 논리블록과 내부선은 제조공정 이후에 소비자/설계자가 프로그램 할 수 있으므로 요구되는 어떠한 논리기능도 수행할 수 있다.(그러한 이유로 “현장 프로그래머블”이라 불린다.)The programmable internal line hierarchy allows the logic blocks of the FPGA to be interconnected as a single chip programmable breadboard as required by the system designer. These logical blocks and internal lines can be programmed by the consumer/designer after the manufacturing process, so they can perform any required logical function (for this reason, they are called "field programmable").

또한, FPGA는 일반적으로 개발시간이 짧고, 오류를 현장에서 재수정할 수 있고, 초기 개발비가 저렴하다는 장점이 있다.In addition, FPGAs generally have short development times, errors can be corrected in the field, and initial development costs are low.

한편, 드론으로 불리는 무인항공기 보급이 크게 확대되면서 안전 비행에 대한 사회적 요구가 높아지고 있다. 무인항공기로 인한 사고가 해마다 급증하고 있는 추세이며 무인항공기 운용상에 발생하는 사고에 대한 분석이 활발히 이루어지고 있다. 미국에서는 사고 사례 중 운영상 주변 시설물과 충돌해서 발생하는 접촉사고가 대부분을 차지하였다.Meanwhile, as the supply of unmanned aerial vehicles called drones is greatly expanded, social demands for safe flight are increasing. Accidents caused by unmanned aerial vehicles are increasing year by year, and analysis of accidents occurring in the operation of unmanned aerial vehicles is being actively conducted. In the United States, most of the accident cases were contact accidents caused by collisions with nearby facilities.

최근에는 건물 및 공중 설치물과의 충돌을 비롯해 여객기와의 충돌 사고까지 우려되고 있다. 이를 해결하기 위한 충돌회피 기술에 대한 연구개발 활동도 점차 활발해지고 있다. 특허청에 따르면 무인항공기의 충돌회피 기술과 관련된 특허출원은 2009년부터 2011년까지는 8건에 불과했으나, 2012년부터 2014년까지는 21건으로 늘어났다. 2015~2017년에는 46건으로 출원 건수가 증가한 것을 알 수 있다.In recent years, there are concerns about collisions with buildings and aerial installations as well as collisions with passenger planes. Research and development activities on collision avoidance technology to solve this problem are also becoming increasingly active. According to the Korean Intellectual Property Office, patent applications related to collision avoidance technology for unmanned aerial vehicles were only 8 from 2009 to 2011, but increased to 21 from 2012 to 2014. From 2015 to 2017, it can be seen that the number of applications increased to 46.

또한, 최근에는 무인항공기 분야 차세대 핵심기술의 하나인 충돌 회피에 대한 기술 개발이 활발히 이루어지고 있다. 이와같이 장애물을 감지한 후 최적의 경로로 회피하는 알고리즘과 멀티콥터가 실제 상황에서 충돌 회피하여 임무를 수행하는 기술의 개발이 필요한 실정이다.In addition, in recent years, technology for collision avoidance, which is one of the next-generation core technologies in the field of unmanned aerial vehicles, is actively being developed. In this way, it is necessary to develop an algorithm that detects an obstacle and then avoids it in an optimal path, and a technology in which the multicopter performs its mission by avoiding collision in real situations.

또한, GPS가 지원되지 않거나 수신이 원활하지 않은 터널 내, 건축물 내, 건물 사이 좁은 공간에서 드론이 원활하게 임무를 수행하기 위한 기술을 포함하여 호버링 및 충돌회피 기술의 개발 역시 필요한 실정이다.In addition, it is necessary to develop hovering and collision avoidance technologies, including technologies for the drones to perform their duties smoothly in tunnels, buildings, and narrow spaces between buildings in which GPS is not supported or reception is not smooth.

종래의 기술인, 대한민국 등록특허 제10-1946429호는, 다중 에이전트 구조를 이용하는 임무형 플로킹 알고리즘에 의한 드론 비행 제어 시스템 및 방법에 관한 것으로, 임무형 플로킹 알고리즘을 이용한 드론비행 제어 시스템은, 대상드론에 관한 드론 정보 및 임무 여부에 기초하여 상기 대상드론의 상태를 인지하는 자기 추정 에이전트, 상기 대상드론의 주변을 센싱하여 상기 대상드론 주변의 물체에 대한 물체 정보를 인식하는 주변 인식 에이전트, 상기 대상드론의 상태 및 상기 물체 정보에 기초하여 상기 대상드론의 상황을 인식하는 상황 인식 에이전트, 상기 상황에 대응하는 상기 대상드론의 행동 방향을 결정하는 계획 에이전트 및 결정된 상기 행동 방향에 따라 상기 플로킹 알고리즘의 규칙에 기초하여 상기 대상드론을 제어하는 행동 에이전트를 포함하나, 상술한 문제점을 해결하기에는 어려움이 있었다.Korean Patent Registration No. 10-1946429, which is a conventional technology, relates to a drone flight control system and method using a mission-type flocking algorithm using a multi-agent structure. A drone flight control system using a mission-type flocking algorithm is provided in the target drone. A self-estimating agent that recognizes the state of the target drone based on drone information and mission status, a surrounding recognition agent that senses the surroundings of the target drone to recognize object information about objects around the target drone, and the target drone A context-aware agent that recognizes the situation of the target drone based on the state and the object information, a planning agent that determines the action direction of the target drone corresponding to the situation, and the flocking algorithm based on the determined action direction. Therefore, it includes an action agent that controls the target drone, but it is difficult to solve the above-described problem.

대한민국 등록특허 제10-1946429호Korean Patent Registration No. 10-1946429

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, FPGA 기반으로 비행제어를 실시하여 무게 및 전력소모 측면에서 효율이 높은 드론 비행제어 시스템을 제공하는 데 있다.An object of the present invention for solving the above problems is to provide a drone flight control system having high efficiency in terms of weight and power consumption by performing flight control based on FPGA.

본 발명의 다른 목적은, 충돌회피 기능을 가지는 드론 비행제어 시스템을 제공하는 데 있다. Another object of the present invention is to provide a drone flight control system having a collision avoidance function.

본 발명이 해결하고자 하는 과제들은 이상에서 언급한 과제로 제한되지 않으며, 여기에 언급되지 않은 본 발명이 해결하고자 하는 또 다른 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems to be solved by the present invention not mentioned here are those of ordinary skill in the technical field to which the present invention belongs from the following description. Will be clearly understood.

상기 과제를 해결하기 위한 본 발명의 일실시예에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템은, FPGA를 기반으로 하여 용도 맞춤형 프로그램 설계가 가능하고, LiDAR센서가 적용되는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 있어서, 드론에 마련되어 상기 드론의 속도, 가속도, 각속도, 방위각, 장애물 위치를 센싱하는 센서부와, 상기 드론에 마련되어 항법연산, 자세제어연산, 로터제어, 서보모터제어를 실시하는 비행제어부와, 상기 드론이 자동비행, 목표지점 이동 또는 호버링 하도록 상기 비행제어부에 명령신호를 인가하는 지상관제부를 포함하고, 상기 비행제어부는 항법연산, 자세제어연산, 로터제어, 서보모터제어, 자동비행, 호버링을 기 설정된 방식으로 제어할 수 있게 알고리즘을 입력 받는 알고리즘입력모듈을 더 포함하여 구성된다.The FPGA-based drone flight control system equipped with LiDAR according to an embodiment of the present invention for solving the above problems is capable of designing a customized program based on an FPGA, and is based on an FPGA equipped with a LiDAR to which a LiDAR sensor is applied. In the drone flight control system, a sensor unit provided in a drone to sense the speed, acceleration, angular velocity, azimuth angle, and obstacle position of the drone, and a navigation calculation, attitude control calculation, rotor control, and servo motor control provided in the drone. A flight control unit and a ground control unit for applying a command signal to the flight control unit to allow the drone to automatically fly, move to a target point, or hover, and the flight control unit includes a navigation operation, a posture control operation, a rotor control, a servo motor control, and an automatic It is configured to further include an algorithm input module that receives an algorithm to control flight and hovering in a preset manner.

본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템은, 드론의 FPGA 칩에 마련되는 비행제어부의 구성을 통해 무게 및 전력소모 측면에서 효율이 높은 드론 비행제어 시스템을 제공하는 효과가 있다.The FPGA-based drone flight control system equipped with LiDAR according to the present invention has an effect of providing a drone flight control system having high efficiency in terms of weight and power consumption through the configuration of a flight control unit provided in the FPGA chip of the drone.

본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템은, LiDAR센서를 통해 장애물의 위치를 센싱하여 충돌회피 성능이 높은 드론 비행제어 시스템을 제공하는 효과가 있다.The FPGA-based drone flight control system equipped with LiDAR according to the present invention has an effect of providing a drone flight control system with high collision avoidance performance by sensing the position of an obstacle through a LiDAR sensor.

도 1은, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 개념도를 나타낸 것이다.
도 2는, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 센서부의 구성을 나타낸 것이다.
도 3은, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 비행제어부의 구성을 나타낸 것이다.
도 4는, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 쿼드로터의 RoLL, Pitch, Yaw 움직임과 기체 고정 좌표계의 기준방향을 나타낸 것이다.
도 5는, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 PI 제어기 구조를 나타낸 것이다.
도 6은, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 PID 제어기 블록도를 나타낸 것이다.
도 7은, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 매트랩 시뮬레이션을 나타낸 것이다.
도 8은, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 드론 비행제어 시스템 유스케이스 다이어그램을 나타낸 것이다.
도 9는, 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템의 일실시예에 따른 드론 비행제어 시스템 액티비티 다이어그램을 나타낸 것이다.
1 shows a conceptual diagram according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.
2 is a diagram illustrating a configuration of a sensor unit according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.
3 shows a configuration of a flight control unit according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.
FIG. 4 is a diagram showing the movement of RoLL, pitch, and yaw of a quadrotor according to an embodiment of the FPGA-based drone flight control system equipped with a LiDAR according to the present invention, and a reference direction of a fixed coordinate system of the aircraft.
5 shows a structure of a PI controller according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.
6 is a block diagram of a PID controller according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.
7 shows a MATLAB simulation according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.
8 is a diagram showing a drone flight control system use case diagram according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.
9 is a diagram illustrating an activity diagram of a drone flight control system according to an embodiment of an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.

이상과 같은 본 발명에 대한 해결하고자 하는 과제, 과제의 해결수단, 발명의 효과를 포함한 구체적인 사항들은 다음에 기재할 실시예 및 도면들에 포함되어 있다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다.Specific matters, including the problems to be solved, means for solving the problems, and effects of the present invention as described above, are included in the following examples and drawings. Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described below in detail together with the accompanying drawings.

본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템은, 도 1 내지 도 9에 도시된 바와 같이, FPGA를 기반으로 하여 용도 맞춤형 프로그램 설계가 가능하고, LiDAR센서(13)가 적용되는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 있어서, 드론에 마련되어 상기 드론의 속도, 가속도, 각속도, 방위각, 장애물 위치를 센싱하는 센서부(1)와, 상기 드론에 마련되어 항법연산, 자세제어연산, 로터제어, 서보모터제어를 실시하는 비행제어부(2)와, 상기 드론이 자동비행, 목표지점 이동 또는 호버링 하도록 상기 비행제어부(2)에 명령신호를 인가하는 지상관제부(3)를 포함하고, 상기 비행제어부(2)는 항법연산, 자세제어연산, 로터제어, 서보모터제어, 자동비행, 호버링을 기 설정된 방식으로 제어할 수 있게 알고리즘을 입력 받는 알고리즘입력모듈(27)을 더 포함하여 구성될 수 있다.In the FPGA-based drone flight control system equipped with LiDAR according to the present invention, as shown in Figs. 1 to 9, it is possible to design a customized program based on an FPGA, and the LiDAR to which the LiDAR sensor 13 is applied is In the mounted FPGA-based drone flight control system, a sensor unit (1) provided in the drone to sense the drone's speed, acceleration, angular velocity, azimuth, and the position of an obstacle, and a navigation calculation, attitude control calculation, and rotor control provided in the drone , A flight control unit (2) that performs servo motor control, and a ground control unit (3) for applying a command signal to the flight control unit (2) so that the drone automatically flies, moves to a target point, or hovers, and the flight The control unit 2 may further include an algorithm input module 27 that receives an algorithm to control navigation operation, attitude control operation, rotor control, servo motor control, automatic flight, and hovering in a preset manner. .

FPGA는 Field programmable gate Array의 약자로 인류 역사상 가장 신뢰성이 높은 프로그래밍이 가능한 집적회로 반도체라 할 수 있다. 모든 신호가 하드웨어 레벨에서 실시간 처리될 수 있다. HDL(hardware description language)이라는 특수한 하드웨어 기술 언어를 통해 신서시스되고 업로드되어 하드웨어 내부의 논리연산과 배선이 재조정된다. 현대에는 VHDL과 Verilog라는 하드웨어 기술 언어를 주로 사용한다.FPGA stands for Field Programmable Gate Array and can be said to be the most reliable programmable integrated circuit semiconductor in human history. All signals can be processed in real time at the hardware level. It is synthesized and uploaded through a special hardware description language called HDL (hardware description language), and logical operations and wiring inside the hardware are readjusted. In modern times, the hardware description languages VHDL and Verilog are mainly used.

일반적인 프로세서는 메모리에 있는 프로그램을 불러와서 CPU에서 해독하여 작업을 실행하지만 FPGA는 아예 프로세서 내부 회로를 프로그램에 맞게 직접 설계해 놓고 곧바로 병렬적으로 실행시킴으로써 CPU보다 압도적인 계산 속도를 낼 수 있다.A typical processor loads a program in memory, decodes it in the CPU, and executes the task, but FPGAs can achieve an overwhelming computational speed compared to the CPU by directly designing the internal circuitry of the processor for the program and executing it in parallel.

또한, 칩셋 내부에 로직 게이트를 자유자재로 구현할 수 있도록 진리표를 이용해 로직을 만들어내는 RAM과 플립플롭이 빽빽이 박혀있고 내부 결선을 직접 변경할 수 있기 때문에 사용자의 용도에 맞게 온갖 칩을 설계 가능하다. 단순 MCU 대체 용도에서부터 시작해서 DSP나 아예 자기가 원하는 방식대로 새로운 논리소자나 CPU를 만드는것도 가능하며 동작 속도도 기가헤르츠까지 활용 가능하다.In addition, RAM and flip-flops that create logic using truth tables are tightly embedded in the chipset so that the logic gate can be freely implemented, and because the internal wiring can be changed directly, it is possible to design all kinds of chips according to the user's purpose. Starting from a simple MCU replacement, it is possible to create a new logic device or CPU in a DSP or any way you want, and the operation speed is also available up to gigahertz.

주요 성능의 지표로는 동작 속도가 아닌 논리 블록의 수로 평가되는데, 이는 게이트 간 결선을 통해 동시에 수만에서 수백만의 명령을 단 한 번에 병렬적으로 실행할 수 있기 때문이다. 이는 클럭신호에 맞추어 명령어를 차례대로 수행하는 프로세서와는 근본적으로 동작 방법이 다르다고 할 수 있다. 이러한 이점 때문에 FPGA는 로봇제어, 인공지능, 채굴기, 데이터센터 등을 위한 가속기, 우주선, 인공위성, 대부분의 현대전 무기, 전자전 무기, 미사일 등에 활용되고 있다.The main performance indicator is the number of logical blocks, not the speed of operation, because gate-to-gate wiring allows tens to millions of instructions to be executed in parallel at a single time. It can be said that the operation method is fundamentally different from a processor that sequentially executes instructions according to a clock signal. Because of these advantages, FPGAs are used in robot control, artificial intelligence, miners, accelerators for data centers, spacecraft, satellites, most modern warfare weapons, electronic warfare weapons, and missiles.

따라서, FPGA를 적용한 본 발명은 상기 드론의 비행제어 시스템을 SoC(System-on-Chip, 단일 칩 시스템) 형태로 제작하여 소형 경량화가 가능하고, 무게, 전력소모량 측면에서 종래의 드론보다 효율이 뛰어나다.Therefore, the present invention applying the FPGA makes the flight control system of the drone in the form of a System-on-Chip (SoC) type, so that it is possible to reduce size and weight, and is more efficient than conventional drones in terms of weight and power consumption. .

또한, 기존 여러 개의 모듈을 연결하는 커넥터, 배선 및 마운트용 부자재들이 제거되므로 추가적인 경량화가 가능하며, 시스템의 단순화로 생산성이 향상되어 대량생산에 적합하다. 또한, LRU(Line Replacement Unit)단위 부품교체가 용이하므로 정비성이 우수하다.In addition, since connectors, wiring and subsidiary materials for mounting are removed, additional weight reduction is possible, and productivity is improved through system simplification, making it suitable for mass production. In addition, since it is easy to replace parts by LRU (Line Replacement Unit), it has excellent maintenance.

본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에는 상기 센서부(1)가 마련된다.The sensor unit 1 is provided in an FPGA-based drone flight control system equipped with a LiDAR according to the present invention.

상기 센서부(1)는 상기 드론에 마련되어, 상기 드론의 속도, 가속도, 각속도, 방위각, 장애물 위치를 센싱할 수 있다.The sensor unit 1 is provided in the drone, and may sense the speed, acceleration, angular velocity, azimuth, and position of an obstacle of the drone.

또한, 도 2에 도시된 바와 같이, 상기 센서부(1)에는 GPS(Global positioning System)장치(11), AHRS(Attitude & Heading Reference System)장치(12), LiDAR(Light Detection And Ranging)센서(13)가 마련될 수 있다.In addition, as shown in Fig. 2, the sensor unit 1 includes a Global Positioning System (GPS) device 11, an Attitude & Heading Reference System (AHRS) device 12, and a Light Detection And Ranging (LiDAR) sensor ( 13) can be provided.

상기 GPS장치(11)는 상기 드론의 위치, 속도, 방위각 및 고도를 센싱하는데 활용될 수 있다.The GPS device 11 may be used to sense the location, speed, azimuth, and altitude of the drone.

상기 AHRS장치(12)는 상기 드론이 비행 시 3축(x, y, z)에 대한 속도, 가속도, 방위각 등의 자세정보를 취득할 수 있다.The AHRS device 12 may acquire attitude information such as speed, acceleration, azimuth angle, etc. for the three axes (x, y, z) when the drone is flying.

상기 AHRS장치(12)는 통상적으로 자동차나 항공기 등의 자세를 파악하기 위한 장치로서, 3축으로 측정대상이 기울어진 각도 및 방위각의 회전 정도를 센싱할 수 있다.The AHRS device 12 is a device for grasping the attitude of a vehicle or an aircraft in general, and may sense an angle at which a measurement object is inclined and a rotation degree of azimuth angle in three axes.

상기 LiDAR센서(13)는 상기 드론 주위의 장애물 위치를 센싱하기 위해 마련된다.The LiDAR sensor 13 is provided to sense the position of an obstacle around the drone.

상기 LiDAR센서(13)는 레이저 스캐너, 레이저 레이더 등으로 불리기도 하며, 물체를 감지해 거리를 맵핑하는 센싱 방식이다. 광학 펄스로 목표물을 비춘 후 반사된 반송 신호의 특징을 측정할 수 있다. 또한, 광학-펄스의 폭은 몇 나노초부터 몇 마이크로초까지 변동할 수 있다.The LiDAR sensor 13 is also called a laser scanner, a laser radar, or the like, and is a sensing method that detects an object and maps a distance. After illuminating the target with an optical pulse, the characteristics of the reflected carrier signal can be measured. Also, the width of the optical-pulse can vary from a few nanoseconds to a few microseconds.

상기 LiDAR센서(13)는 기 설정된 패턴으로 빛을 쏘아 수신 쪽의 반사광들을 바탕으로 정보를 추출할 수 있다. 또한, 상기 LiDAR센서(13)는 펄스 전력, 왕복 시간, 위상 변이, 펄스폭을 통해 장애물의 거리 및 위치 정보를 추출할 수 있다.The LiDAR sensor 13 may extract information based on reflected light from the receiving side by emitting light in a preset pattern. In addition, the LiDAR sensor 13 may extract distance and position information of an obstacle through pulse power, round trip time, phase shift, and pulse width.

또 다른 실시예로, 장애물 위치를 센싱하기 위해 상기 LiDAR센서(13), 초음파장치, 레이더시스템 또는 카메라 중 하나가 마련되어 구성될 수 있다. 또는, 상기 LiDAR센서(13), 초음파장치, 레이더시스템 및 카메라 중 적어도 둘 이상이 복합적으로 구성될 수 있다.In another embodiment, one of the LiDAR sensor 13, an ultrasonic device, a radar system, or a camera may be provided and configured to sense the position of an obstacle. Alternatively, at least two or more of the LiDAR sensor 13, an ultrasonic device, a radar system, and a camera may be configured in combination.

이는 각 센서장치들의 단점을 각 센서장치의 중복 설치를 통해 해결하기 위한 구성이다.This is a configuration for solving the shortcomings of each sensor device through redundant installation of each sensor device.

초음파는 몇 미터만 벗어나도 대기 중에서 크게 감쇠하게 된다. 따라서 초음파센서는 주로 단거리 물체 감지에 쓰인다. 카메라는 비용 효율적이고 쉽게 구할 수 있는 센서이지만, 유용한 정보를 추출하려면 상당한 프로세싱이 필요하며 주변의 광 조건에 크게 좌우된다.Ultrasound is greatly attenuated in the atmosphere even a few meters away. Therefore, ultrasonic sensors are mainly used to detect short-range objects. The camera is a cost-effective and readily available sensor, but it requires significant processing to extract useful information and is highly dependent on the ambient light conditions.

또한, 상기 LiDAR센서(13)는 상기 센서부(1)의 구성에 우선으로 포함하는 것이 바람직하다.In addition, the LiDAR sensor 13 is preferably included in the configuration of the sensor unit 1 first.

LiDAR는 레이저 광을 조준할 수 있는 능력과 905~1550nm의 짧은 파장 때문에 LiDAR의 적외선 공간 분해능은 0.1°단위까지 나눌 수 있다. 이는, 백-엔드 프로세싱 없이도 물체들의 특징을 한 장면으로 3D 묘사할 수 있는 것을 의미한다.Because of LiDAR's ability to aim laser light and its short wavelength from 905 to 1550 nm, the infrared spatial resolution of LiDAR can be divided by 0.1°. This means that objects can be characterized in 3D in one scene without back-end processing.

한편, 도 1에 도시된 바와 같이, 상기 센서부(1)는 상기 드론의 속도, 가속도, 각속도, 방위각, 장애물 위치를 포함한 센싱정보를 생성하여, 상기 비행제어부(2) 및 상기 지상관제부(3)에 전송할 수 있다.Meanwhile, as shown in FIG. 1, the sensor unit 1 generates sensing information including the speed, acceleration, angular velocity, azimuth angle, and obstacle position of the drone, and the flight control unit 2 and the ground control unit ( 3) can be transferred to.

LiDAR는 최근 소형 및 경량화 되었고, 임베디드 시스템을 통해 실시간으로 데이터 처리가 가능하여 드론에 적용되기 적합하다.LiDAR has recently become compact and lightweight, and is suitable for application to drones as it can process data in real time through an embedded system.

또한, 상기 LiDAR센서(13)로부터 획득된 측정치는 전 방위의 사물에 대해 거리를 획득할 수 있다. 즉, 도심과 같의 복잡한 환경에서 항법 시스템을 구성하기에 적합하다.In addition, a measurement value obtained from the LiDAR sensor 13 may obtain a distance to an object in all directions. In other words, it is suitable for configuring a navigation system in a complex environment such as a city center.

상기 LiDAR센서(13)는 측정치를 측정할 때 수평축에 대해서는 상기 드론을 중심으로 전방위(360°)에 대해 사용자가 설정한 간격 dψ로 거리를 측정하고, 수직축에 대해서는 수직축 범위(+15° 내지 -15°)에서 dθ(2°) 간격으로 총 16개 채널의 거리 측정치를 수집할 수 있다.When measuring the measured value, the LiDAR sensor 13 measures the distance with the distance dψ set by the user for all directions (360°) around the drone with respect to the horizontal axis, and the vertical axis range (+15° to -) with respect to the vertical axis. At 15°), distance measurements of a total of 16 channels can be collected at intervals of dθ (2°).

상기 LiDAR센서(13)은 측정치를 얻기 위해 상기 LiDAR센서(13)에서 레이저를 목표물로 조사(irradiation)하고 물체로부터 반사된 레이저를 수하여 거리를 측정할 수 있다.The LiDAR sensor 13 may measure a distance by irradiating a laser from the LiDAR sensor 13 to a target and receiving a laser reflected from the object to obtain a measurement value.

또한, 상기 LiDAR센서(13)는 상기 LiDAR센서(13)를 중심으로 주변의 장애물까지의 교점(node)을 찾아 거리를 획득할 수 있다.In addition, the LiDAR sensor 13 may obtain a distance by finding a node to an obstacle around the LiDAR sensor 13 as a center.

상기 LiDAR센서(13)의 특정 각도에서 조사된 레이저는 기 설정된 간격으로 진행하며 장매물의 유무를 판단하고, 장애물이 있다고 판단된다면 해당 지점과 상기 LiDAR센서(13)간의 거리를 구하여 측정치로 저장한다. 만약 조사된 레이저가 장애물을 만나지 못하면 해당 위치의 프로파일에 -1을 대입하여 데이터가 없음을 표시한다.The laser irradiated at a specific angle of the LiDAR sensor 13 proceeds at a preset interval to determine the presence or absence of a stolen object, and if it is determined that there is an obstacle, the distance between the corresponding point and the LiDAR sensor 13 is obtained and stored as a measurement value. . If the irradiated laser does not meet the obstacle, it indicates that there is no data by substituting -1 into the profile of the location.

상기 LiDAR센서(13)에서 측정되는 측정치 프로파일은 다음의 <계산식 1>과 같이 나타낼 수 있다. yt, xt, vt는 현재 위치에서의 상기 LiDAR센서(13) 측정치 프로파일, 현재 드론의 위치, 백색 가우시안 잡음을 나타낸다.The measured value profile measured by the LiDAR sensor 13 can be expressed as the following <Calculation Equation 1>. y t , x t , and v t denote the measured profile of the LiDAR sensor 13 at the current position, the position of the current drone, and white Gaussian noise.

<계산식 1><Calculation 1>

yt = z(xt) + vt y t = z(x t ) + v t

상기 LiDAR센서(13)를 통한 상기 드론의 충돌회피 알고리즘은 정지, 회피, 회피 방향 결정, 회피 포인트 생성의 단계를 포함한다.The collision avoidance algorithm of the drone through the LiDAR sensor 13 includes steps of stopping, avoiding, determining the avoidance direction, and generating an avoidance point.

정지 단계는 장애물을 감지하고 설정된 거리 앞에서 정지하여 호버링을 유지하고 3초 후 다시 탐지하여 장애물이 없으면 다시 자동 비행을 하는 것일 수 있다. 이때 정지 시간은 가변 가능하게 제한되지 않는 것이 바람직하다.The stop step may be to detect an obstacle, stop in front of a set distance, maintain hovering, detect again after 3 seconds, and automatically fly again if there is no obstacle. At this time, it is preferable that the stop time is not variably limited.

회피 단계는 장애물을 감지하고 설정된 거리 앞에서 정지하여 호버링을 유지하고 3초 후 다시 탐지되면 회피하는 포인트를 생성하며, 생성된 회피 포인트로 이동하면 원 설정된 목표점으로 이동할 수 있게 구성된다.The avoidance step is configured to detect an obstacle, stop in front of a set distance, maintain hovering, and generate an evasion point when detected again after 3 seconds, and move to the original set target point when moving to the generated avoidance point.

회피 방향 결정 단계는 상기 LiDAR센서(13)로 획득한 거리 값들을 이용하여 상기 드론이 이동할 수 있는 영역을 계산하고, 계산값을 바탕으로 최소 안전 영역을 설정하여 진행 방향에 대한 최적의 경로점을 설정하는 것을 포함한다.In the step of determining the avoidance direction, an area in which the drone can move is calculated using distance values obtained by the LiDAR sensor 13, and a minimum safe area is set based on the calculated value to determine the optimal path point for the direction of travel. Includes setting.

회피 포인트 생성 단계는 회피 포인트가 장애물을 감지하는 포인트에서 직선거리로 생성되는 것이 제일 짧기 때문에 장애물에서부터 떨어진 거리에 대해 생성할 수 있다.The avoidance point generation step can be generated for a distance away from the obstacle because it is the shortest that the avoidance point is generated as a linear distance from the point that detects the obstacle.

구체적인 일 실시예로, 상기 LiDAR센서(13)를 바탕으로 한 상기 드론의 충돌회피 알고리즘 순서는 다음과 같다.In a specific embodiment, the sequence of the collision avoidance algorithm of the drone based on the LiDAR sensor 13 is as follows.

(1) 장애물을 인식하고 상기 LiDAR센서(13)에서 얻은 장애물의 끝점의 거리와 각도 데이터를 이용하여 장애물과의 일정한 거리를 유지하여 생성한 정지 지점에서 상기 드론이 정지한다.(1) The drone stops at a stop point created by recognizing an obstacle and maintaining a constant distance from the obstacle using the distance and angle data of the end point of the obstacle obtained from the LiDAR sensor 13.

(2) 정지 후 장애물이 여전히 감지되면 목표물에 대한 장애물의 양 끝점의 위치에 따라 달라지는 회피 지점의 방향을 정한다.(2) If an obstacle is still detected after stopping, the direction of the avoidance point is determined according to the position of both ends of the obstacle relative to the target.

(3) 결정된 방향에 따른 장애물의 일정한 거리에 새로운 경로점인 회피 지점을 추가하여 회피 지점으로 이동한다.(3) Move to the avoidance point by adding a new route point, the avoidance point, at a certain distance of the obstacle according to the determined direction.

(4) 새로운 경로 점에 도달한 후에 원래 가려했던 목표 지점으로 이동한다.(4) After reaching the new path point, it moves to the target point that was originally intended to be covered.

다음으로, 상기 비행제어부(2)는 상기 드론에 마련되어 항법연산, 자세제어연산, 로터제어, 서보모터제어를 실시할 수 있다.Next, the flight control unit 2 may be provided in the drone to perform navigation calculation, attitude control calculation, rotor control, and servo motor control.

자세하게는, 도 3에 도시된 바와 같이, 상기 비행제어부(2)에는 항법연산모듈(21), 자세제어연산모듈(22), 로터제어모듈(23), 서보모터제어모듈(24)이 마련될 수 있다.In detail, as shown in FIG. 3, the flight control unit 2 includes a navigation calculation module 21, a posture control calculation module 22, a rotor control module 23, and a servo motor control module 24. I can.

또한, 상기 비행제어부(2)에는 통신모듈(25)이 더 마련될 수 있다. 상기 통신모듈(25)은 상기 센서부(1)가 생성한 센싱정보를 수신하고, 상기 지상관제부(3)에 전달할 수 있다.In addition, a communication module 25 may be further provided in the flight control unit 2. The communication module 25 may receive sensing information generated by the sensor unit 1 and transmit it to the ground control unit 3.

또한, 상기 통신모듈(25)은 항법연산, 자세제어연산, 로터제어, 서보모터제어를 포함한 제어이력신호를 생성하여 상기 지상관제부(3)에 전달할 수 있다.In addition, the communication module 25 may generate a control history signal including navigation operation, attitude control operation, rotor control, and servo motor control and transmit it to the ground control unit 3.

구체적인 실시예로 상기 센서부(1)에 의해 상기 센싱정보가 갱신되면 상기 비행제어부(2)의 상기 통신모듈(25)을 통해 갱신된 상기 센싱정보를 상기 지상관제부(3)로 전달한다. 동시에 상기 비행제어부(2)는 갱신된 상기 센싱정보에 따라 상기 항법연산모듈(21)과 자세제어연산모듈(22)을 활성화 시킨다. 상기 항법연산모듈(21)은 상기 로터제어모듈(23) 및 서보모터제어모듈(24)에 제어신호를 인가하고, 동시에, 상기 자세제어연산모듈(22)은 상기 로터제어모듈(23)과 상기 서보모터제어모듈(24)에 제어신호를 인가하여 상기 드론의 비행각을 수정할 수 있다. 이렇게 각 로터제어모듈(23)과 상기 서보모터제어모듈(24)에 인가된 각 제어신호는 상기 통신모듈(25)을 통해 상기 지상관제부(3)에 전송된다.In a specific embodiment, when the sensing information is updated by the sensor unit 1, the updated sensing information is transmitted to the ground control unit 3 through the communication module 25 of the flight control unit 2. At the same time, the flight control unit 2 activates the navigation calculation module 21 and the attitude control calculation module 22 according to the updated sensing information. The navigation calculation module 21 applies a control signal to the rotor control module 23 and the servo motor control module 24, and at the same time, the attitude control calculation module 22 comprises the rotor control module 23 and the The flight angle of the drone may be corrected by applying a control signal to the servo motor control module 24. In this way, each of the control signals applied to the rotor control module 23 and the servo motor control module 24 is transmitted to the ground control unit 3 through the communication module 25.

또한, 상기 비행제어부(2)에는 이상진단모듈(26)이 더 마련될 수 있다.In addition, an abnormality diagnosis module 26 may be further provided in the flight control unit 2.

상기 이상진단모듈(26)은 상기 드론의 속도, 가속도, 각속도, 방위각이 기 설정치를 벗어났을 때, 상기 드론을 자동비행 모드로 전환하고 호버링을 통해 소정의 시간동안 공중에 머물다가 소정의 시간이 지나면 지상으로 착륙하게 할 수 있다.When the speed, acceleration, angular speed, and azimuth of the drone are out of preset values, the abnormality diagnosis module 26 switches the drone to the automatic flight mode and stays in the air for a predetermined time through hovering, and then a predetermined time is reached. After that, you can make it land on the ground.

또한, 상기 이상진단모듈(26)은 상기 통신모듈(25)을 통해 상기 지상관제부(3)에 알림신호를 전송할 수 있다.In addition, the abnormality diagnosis module 26 may transmit a notification signal to the ground control unit 3 through the communication module 25.

상술한 상기 비행제어부(2)의 구성들은 FPGA 칩 하나를 통해 비행제어를 할 수 있으므로, 상기 드론의 경량화 및 전력소모 감소를 도모할 수 있다.Since the above-described configurations of the flight control unit 2 can perform flight control through one FPGA chip, it is possible to reduce the weight and power consumption of the drone.

다음으로, 상기 지상관제부(3)는 상기 드론이 자동비행, 목표지점으로 이동 또는 호버링 하도록 상기 비행제어부(2)에 명령신호를 인가 할 수 있게 마련된다.Next, the ground control unit 3 is provided to apply a command signal to the flight control unit 2 so that the drone can automatically fly, move to a target point, or hover.

상기 지상관제부(3)에는 모니터링모듈(미도시)이 더 마련될 수 있다.A monitoring module (not shown) may be further provided in the ground control unit 3.

상기 모니터링모듈(미도시)은 상기 통신모듈(25)을 통해 상기 센서부(1)에서 생성된 속도, 가속도, 각속도, 방위각, 장애물 위치를 포함한 센싱정보를 전송받을 수 있다.The monitoring module (not shown) may receive sensing information including a velocity, acceleration, angular velocity, azimuth, and an obstacle position generated by the sensor unit 1 through the communication module 25.

또한, 상기 모니터링모듈(미도시)은 상기 로터제어모듈(23)과 상기 서보모터제어모듈(24)에 인가되는 각 제어신호를 모니터링 할 수 있다.In addition, the monitoring module (not shown) may monitor each control signal applied to the rotor control module 23 and the servo motor control module 24.

호버링(Hovering)은 드론을 공중에 띄워서 움직이지 않고 그 자리에 머물게 하는 기술이다. 호버링은 드론이 공중에서 임무신호를 전송받거나, 안전하게 착륙하기 위해 필요한 기술이다.Hovering is a technique that allows a drone to float in the air and stay in place without moving. Hovering is a technology necessary for drones to receive mission signals or land safely in the air.

본 발명에 따른 상기 드론은 상기 지상관제부(3)와 통신 연결이 끊어질 경우 기 설정된 이동 값이 없을 경우 호버링을 통해 소정의 시간동안 공중에 머물다가 소정의 시간이 지나면 지상으로 착륙할 수 있다.When the communication connection with the ground control unit 3 is disconnected, the drone according to the present invention can stay in the air for a predetermined time through hovering when there is no preset movement value, and then land on the ground after a predetermined time. .

또한, 상기 자동비행은 적어도 하나 이상의 기 지정된 포인트를 향해 상기 드론이 별다른 조향 없이도 비행하여 이동하게 할 수 있다. 이때 이동 고도와 속도는 포인트 지정 시 함께 지정할 수 있다.In addition, the automatic flight may allow the drone to fly and move toward at least one predetermined point without special steering. At this time, the moving altitude and speed can be specified together when specifying the point.

한편, 상기 알고리즘입력모듈(27)은, 상기 비행제어부(2)에 마련되어, 항법연산, 자세제어연산, 로터제어, 서보모터제어, 자동비행, 호버링을 기 설정된 방식으로 제어할 수 있게 알고리즘을 입력 받을 수 있게 마련되는 구성이다.Meanwhile, the algorithm input module 27 is provided in the flight control unit 2 and inputs an algorithm to control navigation operation, attitude control operation, rotor control, servo motor control, automatic flight, and hovering in a preset manner. It is a structure that can be received.

본 발명의 구체적인 실시예로 상기 드론은 4방향으로 날개가 달린 쿼드로터형 드론일 수 있다. 또한, 상기 드론의 호버링 및 이동 알고리즘을 구현하기 위해 하기의 <계산식 2>을 이용한다.As a specific embodiment of the present invention, the drone may be a quadrotor type drone with wings in four directions. In addition, the following <Calculation Equation 2> is used to implement the drone's hovering and movement algorithm.

<계산식 2><Calculation Equation 2>

ξ=[ΓEθE]=[XYZΦθψ]T ξ=[Γ E θ E ]=[XYZΦθψ] T

ξ : 지구 관성 좌표계에서의 속도벡터ξ: velocity vector in the Earth's inertial coordinate system

ΓE : 지구 관성 좌표계의 직선운동 위치벡터Γ E : linear motion position vector of the earth's inertial coordinate system

θE : 지구 관성 좌표계의 회전운동θ E : rotational motion of the Earth's inertial coordinate system

XYZ : 쿼드로터의 위치XYZ: Quadrotor position

Φθψ : Roll, Pitch, YawΦθψ: Roll, Pitch, Yaw

상기 드론의 쿼드로터의 Roll, Pitch, Yaw 움직임과 기체 고정 좌표계의 기준방향은 도 4에 나타내었다.The roll, pitch, and yaw movements of the quadrotor of the drone and the reference direction of the fixed coordinate system of the aircraft are shown in FIG. 4.

또한, 상기 드론의 쿼드로터의 전달함수와 선형 상태모델 제어기 설계를 통해 PID 제어와 LQR 제어를 할 수 있다.In addition, PID control and LQR control can be performed through the transfer function of the quadrotor of the drone and the design of the linear state model controller.

PI 제어기는 P 제어기에 적분제어기가 추가된 구조이며, 적분기를 통해 시스템의 정상상태 오차를 줄여주지만 적분기에서 발생하는 적분연산 때문에 누적오차가 생가 actuator의 saturation이 일어나 step setpoint가 크게 변하거나 외란이 큰 경우 적분값이 급격히 증가하는 integral wind up 현상을 보상해 주어야 하므로 saturation의 최대한계치를 제한해 주었으며, PI 제어기의 구조는 도 5에 나타내었다.The PI controller is a structure in which an integral controller is added to the P controller, and it reduces the system's steady state error through the integrator. In this case, the maximum limit value of saturation has to be compensated for the integral wind up phenomenon in which the integral value increases rapidly, and the structure of the PI controller is shown in FIG. 5.

LQR(Liner Quadratic Regulator) 제어기의 설계를 위해 쿼드로터의 선형화된 모델을 유도하고 선형상태 모델은 호버링 상태를 가정하였다.For the design of the LQR (Liner Quadratic Regulator) controller, a linearized model of a quadrotor was derived and the linear state model assumed a hovering state.

도 6은, 쿼드로터의 고도, Roll, Pich, Yaw를 제어하기 위한 PID 제어기 블록도이며, 고도 제어를 위한 블록도에서 상수 블록을 추가하여 호버링 상태 값을 입력하게 된다.6 is a block diagram of a PID controller for controlling altitude, Roll, Pich, and Yaw of a quadrotor, and a hovering state value is input by adding a constant block in the block diagram for altitude control.

도 7은, 1m 고도 상승 입력에 따른 출력 응답으로 일정 시간이 흐른 뒤에 2m 근처에서 고도가 유지되는 매트랩 시뮬레이션 그래프이다.7 is a MATLAB simulation graph in which the altitude is maintained near 2m after a certain period of time has passed in response to an output response according to an elevation of 1m input.

매트랩 시뮬레이션을 근거로 하여 FPGA에 사용되는 VHDL 언어를 적용하여 비행 제어 엔진에 관련된 알고리즘 시뮬레이션 검증을 할 수 있다.Based on MATLAB simulation, it is possible to verify the algorithm simulation related to the flight control engine by applying the VHDL language used in the FPGA.

또한, 본 발명의 일 실시예에 따르면, 상기 알고리즘입력모듈(27)에 알고리즘을 입력할 수 있는 사용자단말기가 더 마련될 수 있다.In addition, according to an embodiment of the present invention, a user terminal capable of inputting an algorithm to the algorithm input module 27 may be further provided.

또한, 도 8에 도시된 바와 같이, 상기 사용자단말기는 상기 드론에 적용되는 비행제어 알고리즘을 구현하기 위해 유스케이스 다이어그램을 활용할 수 있다.In addition, as shown in FIG. 8, the user terminal may utilize a use case diagram to implement a flight control algorithm applied to the drone.

유스케이스 다이어그램은 비행제어 시스템의 필요사항을 충분히 반영하여 검증을 용이하게 할 수 있다.The use case diagram can facilitate verification by sufficiently reflecting the requirements of the flight control system.

또한, 도 9에 도시된 바와 같이, 상기 사용자단말기는 유스케이스 다이어그램을 바탕으로 액티비티 다이어그램을 도출할 수 있다.In addition, as shown in FIG. 9, the user terminal may derive an activity diagram based on a use case diagram.

또한, 상기 사용자단말기는 액티비티 다이어그램의 액션 스테이트를 Top-Down 방식으로 코딩하여 수정 및 시인성이 뛰어난 비행제어 알고리즘을 구현할 수 있다.In addition, the user terminal can implement a flight control algorithm with excellent correction and visibility by coding the action state of the activity diagram in a Top-Down method.

통상적으로 비행제어에 사용되는 실시간 운용체제 디바이스의 경우 높은 가격의 라이센스를 지불해야하기 때문에 높은 가격의 개발비용이 필요하지만, 상술한 예와 같이 본 발명에 따른 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템은, FPGA 칩을 탑재하여 별도의 라이센스 비용 없이 설계자 알고리즘을 이식하면 멀티태스킹을 통하여 실시간으로 제어가 가능한 효과를 가지고 있다.In the case of a real-time operating system device typically used for flight control, a high cost of development is required because a high-priced license is required, but as in the above example, an FPGA-based drone flight control system equipped with a LiDAR according to the present invention If the designer's algorithm is implanted without a separate license fee by mounting an FPGA chip, it has the effect of real-time control through multitasking.

이와 같이, 상술한 본 발명의 기술적 구성은 본 발명이 속하는 기술분야의 당업자가 본 발명의 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.As described above, it will be understood that the technical configuration of the present invention described above can be implemented in other specific forms without changing the technical spirit or essential features of the present invention by those skilled in the art.

그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해되어야 하고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Therefore, the above-described embodiments are to be understood as illustrative and non-limiting in all respects, and the scope of the present invention is indicated by the claims to be described later rather than the detailed description, and the meaning and scope of the claims and the All changes or modifications derived from the equivalent concept should be construed as being included in the scope of the present invention.

1 : 센서부
11 : GPS장치
12 : AHRS장치
13 : LiDAR센서
2 : 비행제어부
21 : 항법연산모듈
22 : 자세제어연산모듈
23 : 로터제어모듈
24 : 서보모터제어모듈
25 : 통신모듈
26 : 이상진단모듈
27 : 알고리즘입력모듈
3 : 지상관제부
1: sensor unit
11: GPS device
12: AHRS device
13: LiDAR sensor
2: Flight control unit
21: navigation calculation module
22: posture control calculation module
23: rotor control module
24: Servo motor control module
25: communication module
26: fault diagnosis module
27: algorithm input module
3: Ground control department

Claims (5)

FPGA를 기반으로 하여 용도 맞춤형 알고리즘 설계가 가능하고, LiDAR센서가 적용되는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템에 있어서,
드론에 마련되어 상기 드론의 속도, 가속도, 각속도, 방위각 및 장애물 위치를 센싱하는 센서부;
상기 드론에 마련되어 항법연산, 자세제어연산, 로터제어 및 서보모터제어를 실시하는 비행제어부;
상기 드론이 자동비행, 목표지점 이동 또는 호버링 하도록 상기 비행제어부에 명령신호를 인가하는 지상관제부;를 포함하고,
상기 비행제어부는 항법연산, 자세제어연산, 로터제어, 서보모터제어, 자동비행 및 호버링을 기 설정된 방식으로 제어할 수 있게 상기 드론의 비행제어 알고리즘을 입력 받는 알고리즘입력모듈;을 더 포함하며,
상기 센서부는 상기 LiDAR센서를 통해 장애물 위치를 센싱하며, 상기 드론의 속도, 가속도, 각속도, 방위각, 장애물 위치를 포함한 센싱정보를 생성하여 상기 비행제어부 및 상기 지상관제부에 전송하고,
상기 비행제어부에는 통신모듈이 더 마련되어, 상기 센서부가 생성한 센싱정보를 수신하여, 상기 지상관제부에 전달하고, 항법연산, 자세제어연산, 로터제어 및 서보모터제어를 포함한 제어이력신호를 생성하여 상기 지상관제부에 전달하고,
상기 비행제어 알고리즘은 정지, 회피, 회피 방향 결정, 회피 포인트 생성의 단계를 포함하는 충돌회피 알고리즘을 포함하고,
상기 비행제어부는 상기 드론의 속도, 가속도, 각속도, 방위각이 기 설정치를 벗어났을 때, 상기 드론을 자동비행 모드로 전환하고 호버링을 통해 소정의 시간동안 공중에 머물다가 소정의 시간이 지나면 지상으로 착륙하게 하고, 상기 통신모듈을 통해 상기 지상관제부에 알림신호를 전송하는 것을 포함하는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템.
In the FPGA-based drone flight control system equipped with LiDAR, which enables customized algorithm design based on FPGA, and LiDAR sensor is applied,
A sensor unit provided in a drone to sense a speed, acceleration, angular velocity, azimuth angle, and an obstacle position of the drone;
A flight control unit provided in the drone to perform navigation calculation, attitude control calculation, rotor control, and servo motor control;
Including; a ground control unit for applying a command signal to the flight control unit so that the drone will automatically fly, move to a target point, or hover,
The flight control unit further includes an algorithm input module for receiving a flight control algorithm of the drone so as to control navigation operation, attitude control operation, rotor control, servo motor control, automatic flight and hovering in a preset manner; and
The sensor unit senses the position of the obstacle through the LiDAR sensor, generates sensing information including the speed, acceleration, angular velocity, azimuth angle, and the position of the obstacle of the drone and transmits it to the flight control unit and the ground control unit,
The flight control unit is further provided with a communication module, receiving sensing information generated by the sensor unit, transmitting it to the ground control unit, and generating a control history signal including navigation operation, attitude control operation, rotor control and servo motor control. Delivered to the ground control unit,
The flight control algorithm includes a collision avoidance algorithm including the steps of stopping, avoiding, determining the avoidance direction, and generating an avoidance point,
When the speed, acceleration, angular velocity, and azimuth of the drone are out of preset values, the flight control unit switches the drone to automatic flight mode, stays in the air for a predetermined time through hovering, and lands on the ground after a predetermined time. And transmitting a notification signal to the ground control unit through the communication module.
삭제delete 삭제delete 제1항에 있어서,
상기 알고리즘입력모듈은,
드론의 비행제어 알고리즘을 구현하기 위해 유스케이스 다이어그램을 이용하는 것을 특징으로 하는 LiDAR가 탑재된 FPGA 기반 드론 비행제어 시스템.
The method of claim 1,
The algorithm input module,
An FPGA-based drone flight control system equipped with LiDAR, characterized by using a use case diagram to implement the drone's flight control algorithm.
삭제delete
KR1020190082550A 2019-07-09 2019-07-09 FPGA-based drone flight control computer with LiDAR KR102233226B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190082550A KR102233226B1 (en) 2019-07-09 2019-07-09 FPGA-based drone flight control computer with LiDAR

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190082550A KR102233226B1 (en) 2019-07-09 2019-07-09 FPGA-based drone flight control computer with LiDAR

Publications (2)

Publication Number Publication Date
KR20210007064A KR20210007064A (en) 2021-01-20
KR102233226B1 true KR102233226B1 (en) 2021-03-29

Family

ID=74304915

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190082550A KR102233226B1 (en) 2019-07-09 2019-07-09 FPGA-based drone flight control computer with LiDAR

Country Status (1)

Country Link
KR (1) KR102233226B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113734432A (en) * 2021-09-28 2021-12-03 淮南师范学院 Four rotor crafts and control system independently cruise

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080034548A (en) * 2006-10-17 2008-04-22 유선상 Automatic pilot system for model airplane
KR20190009103A (en) * 2017-07-18 2019-01-28 삼성전자주식회사 Electronic Device that is moved based on Distance to External Object and the Control Method
KR101946429B1 (en) 2017-09-14 2019-05-08 한국항공대학교산학협력단 Drone flight control system and method by mission based flocking algorithm using multi-agent architecture

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
배종윤, DSP기반의 비행제어컴퓨터/소프트웨어 개발, 학위논문(석사), 건국대학교 대학원 : 항공우주정보시스템공학과 2010.2.*

Also Published As

Publication number Publication date
KR20210007064A (en) 2021-01-20

Similar Documents

Publication Publication Date Title
Elbanhawi et al. Enabling technologies for autonomous MAV operations
Shim et al. Autonomous exploration in unknown urban environments for unmanned aerial vehicles
Beard et al. Autonomous vehicle technologies for small fixed-wing UAVs
ES2969707T3 (en) Control and navigation systems
Johnson et al. A comparison of automatic nap‐of‐the‐earth guidance strategies for helicopters
CN105892489A (en) Multi-sensor fusion-based autonomous obstacle avoidance unmanned aerial vehicle system and control method
Sabatini et al. A laser obstacle warning and avoidance system for unmanned aircraft sense-and-avoid
Montenegro et al. A review on distributed control of cooperating mini UAVs
CN112789672A (en) Control and navigation system, attitude optimization, mapping and positioning technology
Iwaneczko et al. A prototype of unmanned aerial vehicle for image acquisition
Al-Darraji et al. A technical framework for selection of autonomous uav navigation technologies and sensors
Malaek et al. Dynamic based cost functions for TF/TA flights
Keshmiri et al. Flight test validation of collision and obstacle avoidance in fixed-wing UASs with high speeds using morphing potential field
Bueno et al. Project AURORA: Towards an autonomous robotic airship
Tsintotas et al. The MPU RX-4 project: Design, electronics, and software development of a geofence protection system for a fixed-wing vtol uav
Bryson et al. Active airborne localisation and exploration in unknown environments using inertial SLAM
KR102233226B1 (en) FPGA-based drone flight control computer with LiDAR
Zhao et al. Autonomous exploration method for fast unknown environment mapping by using UAV equipped with limited FOV sensor
Guo et al. The usefulness of sensor fusion for unmanned aerial vehicle indoor positioning
Ariyur et al. Reactive inflight obstacle avoidance via radar feedback
Johnson et al. Flight testing of nap of-the-earth unmanned helicopter systems
KR20220083900A (en) Sensor system for autonomous driving, autonomous navigation and autonomous flight
Kharchenko et al. Minimization of unmanned aerial vehicle trajectory deviation during the complicated obstacles overfly
Zhao et al. Research on cooperative sense and avoid approaches based on ADS-B for unmanned aerial vehicle
Rondon et al. Optical flow-based controller for reactive and relative navigation dedicated to a four rotor rotorcraft

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant