TWI830392B - UAV semi-open source control system and its design method - Google Patents

UAV semi-open source control system and its design method Download PDF

Info

Publication number
TWI830392B
TWI830392B TW111135593A TW111135593A TWI830392B TW I830392 B TWI830392 B TW I830392B TW 111135593 A TW111135593 A TW 111135593A TW 111135593 A TW111135593 A TW 111135593A TW I830392 B TWI830392 B TW I830392B
Authority
TW
Taiwan
Prior art keywords
function
open source
flight
data
processing
Prior art date
Application number
TW111135593A
Other languages
Chinese (zh)
Other versions
TW202414137A (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 TW111135593A priority Critical patent/TWI830392B/en
Application granted granted Critical
Publication of TWI830392B publication Critical patent/TWI830392B/en
Publication of TW202414137A publication Critical patent/TW202414137A/en

Links

Images

Abstract

本發明係有關一種無人機半開源控制系統及其設計方法,其係於無人機建置包括單晶片多核心處理器及共用暫存器。單晶片多核心處理器之第一處理核心建置包括用以控制無人機的半開源飛控模組。單晶片多核心處理器之半開源飛控模組建置包括閉源控制函數模組及開源控制程式模組,閉源控制函數模組建置有資料處理函數、通訊函數、飛控函數及硬體設定函數,使半開源飛控模組執行無人機的電能管理、對地通訊、航空感測、飛行控制、導航演算及飛行記錄的資訊處理。第二處理核心建置有第一使用者應用程式,以供使用者依其所需任務撰寫工作任務應用程式,使工作任務應用程式經由共用暫存器而與開源控制程式模組配組成無人機控制應用程式,以啟動半開源飛控模組來控制無人機,俾能將自動駕駛程式置於第一處理核心及提供飛行狀態與航點等暫存器,以供使用者發展其他處理核心的應用程式來存取作為導航或AI運算使用,因而具有可增加系統軟硬體的穩定性、減少空間與重量以及降低耗電流和成本等特點。 The invention relates to a semi-open source control system for an unmanned aerial vehicle and a design method thereof. The unmanned aerial vehicle is configured to include a single-chip multi-core processor and a shared register. The first processing core configuration of the single-chip multi-core processor includes a semi-open source flight control module used to control drones. The semi-open source flight control module configuration of the single-chip multi-core processor includes a closed source control function module and an open source control program module. The closed source control function module configuration includes data processing functions, communication functions, flight control functions and hardware The body setting function allows the semi-open source flight control module to perform the UAV's power management, ground communication, aviation sensing, flight control, navigation calculation and flight record information processing. The second processing core is equipped with a first user application for users to write task applications according to their required tasks, so that the task applications are combined with the open source control program module to form a drone through a shared register. Control the application to activate the semi-open source flight control module to control the drone, so that the autopilot program can be placed on the first processing core and provide flight status and waypoint registers for users to develop other processing cores. Applications can be used for navigation or AI calculations, which can increase the stability of system software and hardware, reduce space and weight, and reduce current consumption and cost.

Description

無人機半開源控制系統及其設計方法 UAV semi-open source control system and its design method

本發明係有關一種無人機半開源控制系統及其設計方法,尤指一種將自動駕駛程式置於第一處理核心並提供飛行狀態與航點等暫存器供使用者在第一核心外的核心發展無人機應用程式的半開源控制技術。 The invention relates to a semi-open source control system for unmanned aerial vehicles and a design method thereof. In particular, it refers to a core that places an autopilot program on a first processing core and provides temporary registers such as flight status and waypoints for users outside the first core. Developing semi-open source control technology for drone applications.

按,開源(Open source)概念最早被應用於軟體(像Linux),開源軟體的發展逐漸與硬體結合,產生開源硬體。開源硬體生產前須經原設計者核准和授權(如CUAV雷迅創新製造Pixhawk v3和Holybro Pixhawk 6C等),並沒使用任何原設計者擁有的商標。硬體設計源碼也需開放可被其他人獲取,以便進行修改,實現技術自由並提供知識共享。隨看linux和git的發展為無人機產業帶來了成熟的開源協作平臺如github、gitbook,使零散的無人機軟硬體開發資源得到整理,讓開發者與用戶得以迅速實現飛控系統的開發。於是開源平臺的共享機制促使無人機產業更快速地商業化,進而促進了無人機行業整體的發展。 Press, the concept of open source was first applied to software (like Linux). The development of open source software was gradually combined with hardware to produce open source hardware. Open source hardware must be approved and authorized by the original designer before production (such as CUAV Lei Xun Innovation Manufacturing Pixhawk v3 and Holybro Pixhawk 6C, etc.) and does not use any trademark owned by the original designer. The hardware design source code also needs to be open and accessible to others to make modifications, achieve technical freedom, and provide knowledge sharing. The development of Suikan Linux and git has brought mature open source collaboration platforms such as github and gitbook to the drone industry, which has organized scattered drone software and hardware development resources, allowing developers and users to quickly develop flight control systems. . Therefore, the sharing mechanism of the open source platform promotes the rapid commercialization of the drone industry, thereby promoting the overall development of the drone industry.

再者,無人機的開源飛控系統主要是控制無人機達到自動駕駛飛行的要求,以實現執行特定所需的任務之目的。依據所知,習知無人機的開源飛控系統有兩大社群: Furthermore, the open source flight control system of UAVs is mainly used to control UAVs to meet the requirements of autonomous flight, in order to achieve the purpose of performing specific required tasks. According to what we know, there are two major communities for the open source flight control system of Xi Zhi UAV:

1.Ardupilot:在2007年Chris Anderson基於Arduino的開源平台,成立DIYDrones.com推出飛控硬體和其飛控軟體APM(https://ardupilot.org/),處理器 是Microchip AVR系列的8-bit Mage2560,其並無任務電腦的配置,若需要配置則需另外以硬體方式來增設,以致硬體建置成本相對較高。 1. Ardupilot: In 2007, Chris Anderson established DIYDrones.com based on the Arduino open source platform to launch flight control hardware and its flight control software APM (https://ardupilot.org/), processor It is the 8-bit Mage2560 of the Microchip AVR series. It does not have the configuration of a task computer. If it needs to be configured, it needs to be added in the form of hardware, so the hardware construction cost is relatively high.

2.Pixhawk:採用ST的32位元單核心STM32處理器,其開源飛控軟體為PX4(https://pixhawk.org/),是2013年由蘇黎世理工大學推出來的高性能飛控硬體板(設計者Lorenz Meier),其並無任務電腦或AI運算電腦的配置,若需要配置則需要外接系統的方式來增設硬體,因而導致硬體建置成本相對較高,或重量、體積與耗電量增加,減少飛機的滯空時間。 2.Pixhawk: It uses ST's 32-bit single-core STM32 processor, and its open source flight control software is PX4 (https://pixhawk.org/), which is a high-performance flight control hardware launched by the Zurich University of Technology in 2013. board (designed by Lorenz Meier), which does not have the configuration of a task computer or an AI computing computer. If it needs to be configured, it requires an external system to add hardware, which results in a relatively high cost of hardware construction, or a weight, volume and The power consumption increases and the aircraft’s flight time is reduced.

3.Skynode是2020年重塑Pixhawk在無人機技術方面的產品,內部主要有一STM32F7飛控板、ARM Cortex-A53 Quad Core(13,800DMIPS)任務電腦板和LTE通訊模組,由於其任務電腦的配置為ARMCortex-A53四核板13,800DMIPS+Auterion OS(即3塊板組成),所以硬體建置成本相對較高;此外。 3. Skynode is a product that reshapes Pixhawk in drone technology in 2020. It mainly contains an STM32F7 flight control board, ARM Cortex-A53 Quad Core (13,800DMIPS) mission computer board and LTE communication module. Due to the configuration of its mission computer It is an ARM Cortex-A53 quad-core board with 13,800DMIPS+Auterion OS (that is, composed of 3 boards), so the hardware construction cost is relatively high; in addition.

由上述得知,習知無人機的開源飛控技術並無以多核心晶片作為自動駕駛的運算核心建置,以致無法將自動駕駛程式置於第一處理核心而提供飛行狀態與航點等暫存器供使用者在其他核心發展各自所需執行任務的應用程式,因而單核心系統軟硬體的穩定性較差、增加空間與重量、增加耗電流以及成本增加等缺失。 From the above, it can be seen that the open source flight control technology of conventional drones does not use multi-core chips as the computing core of autonomous driving, so it is impossible to place the autonomous driving program as the first processing core to provide temporary flight status, waypoints, etc. The memory allows users to develop applications that perform their own tasks on other cores. Therefore, single-core system software and hardware have disadvantages such as poor stability, increased space and weight, increased current consumption, and increased cost.

顯然,上述習知開源飛控技術於功能性建置上確實未臻完善,仍有再改善的必要性;有鑑於此,如何開發出一種以多核心晶片作為自動駕駛的運算核心而提供飛行狀態與航點等暫存器供使用者在其他核心發展各自所需之應用程式的無人機半開源控制技術,實已成為相關技術領 域產學業者所亟欲挑戰與解決的技術課題;緣是,本發明人乃經不斷的努力研發之下,終於研發出一套有別於上述習知技術的本發明。 Obviously, the above-mentioned conventional open source flight control technology is indeed not perfect in terms of functional construction, and there is still a need for further improvement. In view of this, how to develop a multi-core chip as the computing core of autonomous driving to provide flight status UAV semi-open source control technology with waypoints and other temporary registers for users to develop their own applications in other cores has actually become a relevant technology field. It is a technical issue that scholars in the field of industry and academia are eager to challenge and solve; because of this, the inventor has finally developed a set of inventions that are different from the above-mentioned conventional technology through continuous efforts in research and development.

本發明第一目的,在於提供一種無人機半開源控制系統,主要是以多核心晶片作為無人機自動駕駛的運算核心,並將自動駕駛程式置於第一處理核心以提供飛行狀態與航點等暫存器供使用者在其他核心發展所需的應用程式來存取作為導航或AI運算使用,因而具有可增加系統軟硬體的穩定性、減少空間與重量以及降低耗電流和成本等特點。達成本發明第一目的之技術手段,係於無人機建置包括單晶片多核心處理器及共用暫存器。單晶片多核心處理器之第一處理核心建置包括用以控制無人機的半開源飛控模組。單晶片多核心處理器之半開源飛控模組建置包括閉源控制函數模組及開源控制程式模組,閉源控制函數模組建置有資料處理函數、通訊函數、飛控函數及硬體設定函數,使半開源飛控模組執行無人機的電能管理、對地通訊、航空感測、飛行控制、導航演算及飛行記錄的資訊處理。第二處理核心建置有第一使用者應用程式,以供使用者依其所需任務撰寫工作任務應用程式,使工作任務應用程式經由共用暫存器而與閉源飛控程式模組配組成無人機的自主飛行系統控制應用程式來控制無人機。 The first purpose of the present invention is to provide a semi-open source control system for drones, which mainly uses multi-core chips as the computing core of autonomous driving of drones, and places the autonomous driving program in the first processing core to provide flight status and waypoints, etc. The register is used by users to access applications required for development in other cores for navigation or AI calculations. Therefore, it has the characteristics of increasing the stability of system software and hardware, reducing space and weight, and reducing current consumption and cost. The technical means to achieve the first object of the present invention is to configure the drone to include a single-chip multi-core processor and a shared register. The first processing core configuration of the single-chip multi-core processor includes a semi-open source flight control module used to control drones. The semi-open source flight control module configuration of the single-chip multi-core processor includes a closed source control function module and an open source control program module. The closed source control function module configuration includes data processing functions, communication functions, flight control functions and hardware The body setting function allows the semi-open source flight control module to perform the UAV's power management, ground communication, aviation sensing, flight control, navigation calculation and flight record information processing. The second processing core is equipped with a first user application for users to write task applications according to their required tasks, so that the task applications are combined with the closed-source flight control program module through a shared register. Drone autonomous flight system control app to control your drone.

本發明第二目的,在於提供一種無人機半開源控制系統的設計方法,主要是將多種函數保護核心技術開放給使用者來發展所需無人飛行任務的使用者應用程式,以輕易實現客製化程式之目的。由於使用者所需理解的相關程式確實可較開源飛控為少,所以可以減輕使用者設計自動 駕駛程式的負擔。達成本發明第二目的之技術手段,係於一無人機上建置包括有一單晶片多核心處理器及一共用暫存器,該單晶片多核心處理器至少包括有一第一處理核心及一第二處理核心;於該第一處理核心建置包括有一用以控制該無人機的一個半開源飛控模組;於該半開源飛控模組建置包括有一閉源控制函數模組及一開源控制程式模組;於該閉源控制函數模組建置至少或最多包括有一資料處理函數、一通訊函數、一飛控函數及一硬體設定函數,使該半開源飛控模組得以執行包含該無人機的電能管理、對地通訊、航空感測、飛行控制、導航演算及飛行記錄的資訊處理;於該第二處理核心建置有一第一使用者應用程式,該第一使用者應用程式供一使用者依其所需任務撰寫一工作任務應用程式,使該工作任務應用程式經由該共用暫存器而與該閉源飛控程式模組配組成一無人機控制應用程式,進而使該無人機飛控應用程式來控制該無人機。 The second purpose of the present invention is to provide a design method for a semi-open source control system for drones, which mainly opens multiple function protection core technologies to users to develop user applications for required unmanned flight tasks, so as to easily realize customization. The purpose of the program. Since the relevant programs that users need to understand are indeed fewer than open source flight controllers, it can ease the user's design of automatic The burden of driving a program. The technical means to achieve the second object of the present invention is to build a single-chip multi-core processor on a drone and a shared register. The single-chip multi-core processor at least includes a first processing core and a first Two processing cores; the first processing core is configured to include a semi-open source flight control module for controlling the drone; the semi-open source flight control module is configured to include a closed source control function module and an open source Control program module; the closed source control function module configuration includes at least or at most a data processing function, a communication function, a flight control function and a hardware setting function, so that the semi-open source flight control module can execute, including The drone's power management, ground communication, aviation sensing, flight control, navigation calculation and information processing of flight records; a first user application is built in the second processing core, and the first user application For a user to write a work task application program according to the required tasks, so that the work task application program is combined with the closed source flight control program module through the shared register to form a UAV control application program, thereby enabling the Drone flight control app to control the drone.

10:單晶片多核心處理器 10:Single chip multi-core processor

11:第一處理核心 11: First processing core

12:第二處理核心 12: Second processing core

13:半開源飛控模組 13: Semi-open source flight control module

130:閉源函數模組 130: Closed source function module

131:開源控制程式模組 131:Open source control program module

20:共用暫存器 20: Shared register

20a:記憶體 20a:Memory

圖1係本發明具體系統架構的實施示意圖。 Figure 1 is a schematic diagram of the implementation of a specific system architecture of the present invention.

圖2係本發明開源與閉源控制程式模組的主程式流程示意圖。 Figure 2 is a schematic flow diagram of the main program of the open source and closed source control program modules of the present invention.

圖3係本發明半開源飛控模組執行系列中斷即時收發資料的流程示意圖。 Figure 3 is a schematic flow chart of the semi-open source flight control module of the present invention executing a series of interrupts to send and receive data in real time.

圖4係本發明開源飛控模組的具體實施架構示意圖。 Figure 4 is a schematic diagram of the specific implementation architecture of the open source flight control module of the present invention.

為讓 貴審查委員能進一步瞭解本發明整體的技術特徵與達成本發明目的之技術手段,玆以具體實施例並配合圖式加以詳細說明: In order to allow your review committee to further understand the overall technical characteristics of the present invention and the technical means to achieve the purpose of the present invention, specific embodiments are described in detail with reference to the drawings:

請配合參看圖1、4所示,為達成本發明第一目之第一實 施例,主要係於一無人機上建置包括有一單晶片多核心處理器10及一共用暫存器20。該單晶片多核心處理器10至少包括有一第一處理核心11及至少一第二處理核心12;其中,該第一處理核心11建置包括有一用以控制無人機的一個半開源飛控模組13,該半開源飛控模組13建置包括有相配組的一閉源函數模組130及一開源控制程式模組131,該閉源函數模組130建置至少或最多包括有一資料處理函數、一通訊函數、一飛控函數及一硬體設定函數,使半開源飛控模組13得以執行包含無人機的電能管理(如對電池組的放電模式及用電量進行管理)、對地通訊(如圖1之無線電收發模組)、航空感測(如圖1之GPS定位模組、空速計、高度計、光強度計、電流電壓計、溫濕度計、三軸姿態儀等)、飛行控制(如圖1之伺服馬達)、導航演算及飛行記錄(如圖1之飛行記錄卡)的資訊處理。該第二處理核心12建置有一使用者應用程式,該使用者應用程式供使用者依其所需任務撰寫一工作任務應用程式,使工作任務應用程式經由共用暫存器20而與開源控制程式模組131配組成一無人機控制應用程式,進而使無人機控制應用程式得以啟動半開源飛控模組13來控制無人機。 Please refer to Figures 1 and 4. In order to achieve the first purpose of the present invention, the first practical The embodiment mainly includes a single-chip multi-core processor 10 and a shared register 20 built on a drone. The single-chip multi-core processor 10 at least includes a first processing core 11 and at least a second processing core 12; wherein, the first processing core 11 is configured to include a semi-open source flight control module for controlling a drone. 13. The semi-open source flight control module 13 is configured to include a matching set of a closed source function module 130 and an open source control program module 131. The closed source function module 130 is configured to include at least or at most one data processing function. , a communication function, a flight control function and a hardware setting function, allowing the semi-open source flight control module 13 to perform power management including the drone (such as managing the discharge mode and power consumption of the battery pack), ground control Communication (radio transceiver module in Figure 1), aviation sensing (GPS positioning module in Figure 1, airspeed meter, altimeter, light intensity meter, current and voltage meter, temperature and humidity meter, three-axis attitude meter, etc.), Information processing of flight control (servo motor in Figure 1), navigation calculation and flight record (flight record card in Figure 1). The second processing core 12 is built with a user application program. The user application program allows the user to write a task application program according to the required tasks, so that the task application program communicates with the open source control program through the shared register 20 The module 131 is configured into a drone control application, thereby enabling the drone control application to activate the semi-open source flight control module 13 to control the drone.

本實施例係基於上述第一實施例的第一具體應用實施例,請配合參看圖1所示,係將暫存器或記憶體設定為供使用者進行資料存取應用的暫存器資料區;主要是於無人機上建置包括有複數暫存器(如共用暫存器);或記憶體20a用以使單晶片多核心處理器10與第一處理核心11及至少一第二處理核心12資訊連結,該複數暫存器;或記憶體20a規劃設定為飛行控制與命令的複數暫存資料區,該複數暫存器資料區可供使用者應用程式執行時作為資料存取的應用。具體的,該複數暫存器或記憶體20a包含 複數唯讀暫存器或記憶體及複數讀寫暫存器或記憶體,該複數唯讀暫存器或記憶體包含GPS經度暫存資料區、GPS緯度暫存資料區、GPS高度暫存資料區、GPS速度暫存資料區、姿態角和角速度暫存資料區、氣壓高、氣溫和空速、電池電壓和電路電流、飛行模式以及航路點資訊暫存資料區,如圖4所示。 This embodiment is a first specific application embodiment based on the above-mentioned first embodiment. Please refer to Figure 1. The register or memory is set as a register data area for users to perform data access applications. ; Mainly built on the drone, including a plurality of registers (such as a shared register); or a memory 20a for connecting the single-chip multi-core processor 10 with the first processing core 11 and at least one second processing core 12 information links, the plurality of registers; or the memory 20a is designed to be a plurality of temporary data areas for flight control and commands, and the plurality of register data areas can be used as data access applications when the user application program is executed. Specifically, the plural register or memory 20a includes A plurality of read-only registers or memories and a plurality of read-write registers or memories. The plurality of read-only registers or memories include a GPS longitude temporary data area, a GPS latitude temporary data area, and a GPS altitude temporary data area. area, GPS speed temporary data area, attitude angle and angular velocity temporary data area, air pressure high, temperature and airspeed, battery voltage and circuit current, flight mode and waypoint information temporary data area, as shown in Figure 4.

本實施例係基於上述第一實施例的函數組成技術內容予以具體詳細界定的第二具體應用實施例,請配合參看圖4所示,該資料處理函數包含姿態感測器姿態資料處理函數(AHRS Sentence.o)、GPS資料處理函數(GPS Sentence.o)、大氣量測資料處理函數(AIR.0)、RC遙控命令資料處理函數(SBUS Sentence.o)、產生儲存飛行資料處理函數(SDCard Sentcnce.o)以及寫讀FLASH資料處理函數(Flash.o);該通訊函數包含姿態感測器位元組接收中斷處理函數(AHRS Byte.o)、RC遙控命令位元組接收中斷處理函數(SBUS_Byte.o)、飛行資料寫入位元組中斷處理函數(SDCard_Byte.o)、I2C介面位元組接收中斷處理函數(12C.o)、SPI介面位元組接收中斷處理函數(SPI.o)、DMA中斷處理函數(DMA.0)、通訊下傳位元組中斷處理函數(DownLink Byte.o)以及通訊上傳位元組中斷處理函數(UpLink Byte.o);該飛控函數包含飛行控制函數(Flight.o)、航路點管理函數(WayPoint.o)、飛行模式管理函數(Mode.o)以及控制量轉換為伺服器PWM訊號處理函數(PWM.o);該硬體設定函數包含串列介面初始化函數(iniUART.o)、I2C介面初始化函數(iniI2C.o)、SPI介面初始化函數(iniSPI.o)、直接記憶體存取初始化函數(iniDMA.0)、PWM輸出初始化函數(iniPWM.o)、A/D轉換初始化函數(iniADC.o)、計時器(iniTimer.o)以及埠接腳初始化函數(iniPort.o)。 This embodiment is a second specific application embodiment that is specifically defined based on the technical content of the function composition of the above-mentioned first embodiment. Please refer to Figure 4. The data processing function includes an attitude sensor attitude data processing function (AHRS). Sentence.o), GPS data processing function (GPS Sentence.o), atmospheric measurement data processing function (AIR.0), RC remote control command data processing function (SBUS Sentence.o), generated and stored flight data processing function (SDCard Sentcnce .o) and write and read FLASH data processing function (Flash.o); this communication function includes the attitude sensor byte reception interrupt processing function (AHRS Byte.o), RC remote control command byte reception interrupt processing function (SBUS_Byte .o), flight data writing byte interrupt processing function (SDCard_Byte.o), I2C interface byte receiving interrupt processing function (12C.o), SPI interface byte receiving interrupt processing function (SPI.o), DMA interrupt processing function (DMA.0), communication downlink byte interrupt processing function (DownLink Byte.o) and communication upload byte interrupt processing function (UpLink Byte.o); the flight control function includes the flight control function ( Flight.o), waypoint management function (WayPoint.o), flight mode management function (Mode.o) and control volume are converted into the server PWM signal processing function (PWM.o); this hardware setting function includes a serial interface Initialization function (iniUART.o), I2C interface initialization function (iniI2C.o), SPI interface initialization function (iniSPI.o), direct memory access initialization function (iniDMA.0), PWM output initialization function (iniPWM.o) , A/D conversion initialization function (iniADC.o), timer (iniTimer.o) and port pin initialization function (iniPort.o).

本實施例係基於上述第一具體實施例的的第三具體應用實施例,請配合參看圖1、4所示本,主要是將第二處理核心的數量界定為複數,以協助使用者發展出多種所需工作任務的無人機應用程式;其中,該至少一第二處理核心12的數量為複數,每一複數第二處理核心12建置有一個使用者應用程式;該複數第二處理核心12的使用者應用程式分別供使用者依其所需任務撰寫工作任務應用程式,使複數第二處理核心12的工作任務應用程式經由共用暫存器20而與開源控制程式模組131分別配組成無人機控制應用程式,進而使無人機控制應用程式得以啟動半開源飛控模組13來控制無人機,使其一無人機控制應用程式用以控制無人機的群組通訊、群飛協調與任務執行,使其二無人機應用程式用以控制無人機的影像擷取與處理,使其三無人機應用程式用以控制無人機的酬載控制、資料處理及目標辨識與追蹤。 This embodiment is a third specific application embodiment based on the above-mentioned first specific embodiment. Please refer to the examples shown in Figures 1 and 4. It mainly defines the number of second processing cores as a plural number to assist the user in developing UAV applications for a variety of required work tasks; wherein the number of the at least one second processing core 12 is a plurality, and each plurality of second processing cores 12 is built with a user application; the plurality of second processing cores 12 The user applications are respectively used for users to write task applications according to their required tasks, so that the task applications of the plurality of second processing cores 12 are configured with the open source control program module 131 through the shared register 20 to form an autonomous system. The drone control application can then activate the semi-open source flight control module 13 to control the drone, allowing the drone control application to control the drone's group communication, group flight coordination and mission execution. , its two drone applications are used to control the image capture and processing of the drone, and its three drone applications are used to control the payload control, data processing, and target identification and tracking of the drone.

本實施例係基於上述第一具體實施例的第四具體應用實施例,請配合參看圖2所示,主要是將開源控制程式模組131啟動時則執行即時資料的收發確認步驟的具體界定;其中,該半開源飛控模組13之開源控制程式模組131執行包含下列步驟: This embodiment is a fourth specific application embodiment based on the above-mentioned first specific embodiment. Please refer to Figure 2 for the specific definition of the real-time data sending and receiving confirmation steps when the open source control program module 131 is started. Among them, the execution of the open source control program module 131 of the semi-open source flight control module 13 includes the following steps:

第一步驟,依序呼叫閉源函數初始化複數硬體設定函數。 The first step is to sequentially call closed source functions to initialize complex hardware setting functions.

第二步驟,判斷姿態資料句是否接收完成,是,則呼叫閉源函數計算處理姿態資料句。 The second step is to determine whether the gesture data sentence has been received. If so, call a closed source function to calculate and process the gesture data sentence.

第三步驟,判斷GPS資料句是否接收完成,是,則呼叫閉源函數計算處理GPS資料句。 The third step is to determine whether the reception of the GPS data sentence is completed. If so, call the closed source function to calculate and process the GPS data sentence.

第四步驟,判斷靜壓和動壓是否取樣完成,是,則呼叫閉源函數計算 處理空速和靜壓高度數據資料。 The fourth step is to determine whether the static pressure and dynamic pressure sampling is completed. If so, call the closed source function calculation. Process airspeed and static pressure altitude data.

第五步驟,判斷RC手控資料句是否接收完成,是,則呼叫閉源函數計算處理SBUS資料句。 The fifth step is to determine whether the reception of the RC manual data sentence has been completed. If so, call the closed source function to calculate and process the SBUS data sentence.

第六步驟,判斷是否達到10ms飛行控制間隔,是,則呼叫閉源函數執行飛控函數。 The sixth step is to determine whether the 10ms flight control interval is reached. If so, call the closed source function to execute the flight control function.

第七步驟,判斷是否達到0.5s飛行資料記錄間隔,是,則呼叫閉源函數製造SD CARD資料句和儲存,並啟動下傳飛行資料至地面站軟體的接收和顯示。 The seventh step is to determine whether the 0.5s flight data recording interval has been reached. If so, call the closed source function to create and store the SD CARD data, and start the reception and display of the flight data downloaded to the ground station software.

本實施例係為基於上述第一具體實施例的的第五具體應用實施例,請配合參看圖3所,主要是界定半開源控制模組13於啟動則執行系列中斷即時收發資料的步驟;其中,該半開源飛控模組13係執行一系列中斷即時收發資料,其包含下列內容: This embodiment is a fifth specific application embodiment based on the above-mentioned first specific embodiment. Please refer to FIG. 3 . It mainly defines that the semi-open source control module 13 executes a series of steps of interrupting real-time sending and receiving of data when it is started; wherein , the semi-open source flight control module 13 performs a series of interrupts to send and receive data in real time, which includes the following:

第一步驟,中斷該單晶片多核心處理器10的UART介面RX2腳,呼叫閉源函數以接收GPS位元組資料,然後返回。 The first step is to interrupt the RX2 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to receive GPS byte data, and then return.

第二步驟,中斷該單晶片多核心處理器10的UART介面RX0腳,呼叫閉源函數以接收姿態儀(AHRS)位元組資料,然後返回。 The second step is to interrupt the RX0 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to receive the attitude sensor (AHRS) byte data, and then return.

第三步驟,中斷該單晶片多核心處理器10的UART介面TX2腳,呼叫閉源函數以傳送記憶卡(SD CARD)位元組資料,然後返回。 The third step is to interrupt the TX2 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to transmit memory card (SD CARD) byte data, and then return.

第四步驟,中斷該單晶片多核心處理器10的UART介面RX1腳,呼叫閉源函數以接收Up Link位元組資料,然後返回。 The fourth step is to interrupt the RX1 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to receive the Up Link byte data, and then return.

第五步驟,中斷該單晶片多核心處理器10的UART介面RX3腳,呼叫閉源函數以接收地面遙控接收機之SBUS位元組資料,然後返回。 The fifth step is to interrupt the RX3 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to receive the SBUS byte data of the ground remote control receiver, and then return.

第六步驟,中斷該單晶片多核心處理器10的UART介面TX1腳,呼叫閉源函數以傳送至地面站的Down Link位元組資料,然後返回。 The sixth step is to interrupt the TX1 pin of the UART interface of the single-chip multi-core processor 10, call the closed source function to transmit the Down Link byte data to the ground station, and then return.

請配合參看圖1、4所示,為達成本發明第二目之第二實施例,主要係於無人機上建置包括有一單晶片多核心處理器10及一共用暫存器20,該單晶片多核心處理器10至少包括有一第一處理核心11及一第二處理核心12。於第一處理核心11建置包括有一用以控制無人機的一個半開源飛控模組13;於半開源飛控模組13建置包括有一閉源函數模組130及一開源控制程式模組131;於閉源函數模組130建置至少或至多包括有一資料處理函數、一通訊函數、一飛控函數及一硬體設定函數,使該半開源飛控模組13得以執行包含無人機的電能管理、對地通訊、航空感測、飛行控制、導航演算及飛行記錄的資訊處理;於第二處理核心12建置有一使用者應用程式,該使用者應用程式供使用者依其所需任務撰寫一工作任務應用程式,使該工作任務應用程式經由該共用暫存器20而與該開源控制程式模組131配組成無人機飛控應用程式,進而使該無人機應用程式得以啟動半開源飛控模組13來控制無人機。 Please refer to Figures 1 and 4. In order to achieve the second object of the present invention, a second embodiment mainly includes a single-chip multi-core processor 10 and a shared register 20 built on a drone. The chip multi-core processor 10 at least includes a first processing core 11 and a second processing core 12 . The first processing core 11 is configured to include a semi-open source flight control module 13 for controlling the drone; the semi-open source flight control module 13 is configured to include a closed source function module 130 and an open source control program module. 131; The closed source function module 130 is constructed to include at least or at most a data processing function, a communication function, a flight control function and a hardware setting function, so that the semi-open source flight control module 13 can execute functions including the drone. Information processing of power management, ground communication, aviation sensing, flight control, navigation calculation and flight records; a user application is built in the second processing core 12, and the user application is used by the user to perform tasks according to their needs Write a task application program so that the task application program is matched with the open source control program module 131 through the shared register 20 to form a UAV flight control application program, so that the UAV application program can start the semi-open source flight control application program. Control module 13 to control the drone.

再請配合參看圖1、4所示為基於上述第二具體實施例的的第六具體應用實施例,本實施例主要是將第二處理核心的數量界定為複數,以協助使用者發展出多種所需工作任務的無人機控制應用程式;其中,該至少一第二處理核心12的數量為複數,每一複數第二處理核心12建置有一個使用者應用程式;該複數第二處理核心12的使用者應用程式分別供使用者依其所需任務撰寫工作任務應用程式,使複數第二處理核心12的工作任務應用程式經由共用暫存器20而與開源控制程式模組131分別配組成無 人機控制應用程式,進而使無人機控制應用程式得以啟動半開源飛控模組13來控制無人機,使其一無人機控制應用程式用以控制無人機的群組通訊、群飛協調與任務執行,使其二無人機控制應用程式用以控制無人機的影像擷取與處理,使其三無人機控制應用程式用以控制無人機的酬載控制、資料處理及目標辨識與追蹤。 Please refer to Figures 1 and 4 again, which shows a sixth specific application embodiment based on the above-mentioned second specific embodiment. This embodiment mainly defines the number of second processing cores as a plural number to assist the user in developing a variety of UAV control application program for required work tasks; wherein, the number of the at least one second processing core 12 is a plurality, and each plurality of second processing cores 12 is built with a user application program; the plurality of second processing cores 12 The user applications are respectively used for users to write task applications according to their required tasks, so that the task applications of the plurality of second processing cores 12 are configured with the open source control program module 131 through the shared register 20 to form independent programs. The human-machine control application enables the drone control application to activate the semi-open source flight control module 13 to control the drone, allowing the drone control application to control the group communication, group flight coordination and tasks of the drone. Execution, its two drone control applications are used to control the image acquisition and processing of the drone, and its three drone control applications are used to control the payload control, data processing, and target identification and tracking of the drone.

請配合參看圖4所示為基於上述第二實施例的第七具體應用實施例,本實施例係將第二處理核心12的使用者應用程式建置程式範例予以具體界定;其中,於每一複數個第二處理核心12的使用者應用程式建置有一程式範例,以程式碼開源方式提供使用者設計出其所需工作任務的使用者應用程式。 Please refer to FIG. 4 which shows a seventh specific application embodiment based on the above-mentioned second embodiment. This embodiment specifically defines the user application building program example of the second processing core 12; wherein, in each The user applications of the plurality of second processing cores 12 are built with a program example, which provides the user with a program code open source to design the user application for the required work tasks.

本實施例係基於上述第二實施例的第八具體應用實施例,本實施例係將暫存器或記憶體設定為供使用者進行資料存取應用的暫存器資料區;其中,係於無人機上建置包括有複數暫存器用或記憶體20a以使單晶片多核心處理器10與第一處理核心11及至少一第二處理核心12資訊連結,該複數暫存器或記憶體規劃設定為飛行控制與命令的複數暫存資料區,該複數暫存器資料區可供使用者應用程式執行時作為資料存取的應用。 This embodiment is an eighth specific application embodiment based on the above-mentioned second embodiment. In this embodiment, the register or memory is set as a register data area for users to perform data access applications; wherein, The UAV is equipped with a plurality of registers or memories 20a to enable information connection between the single-chip multi-core processor 10 and the first processing core 11 and at least one second processing core 12. The plurality of registers or memories are designed Configured as a multiple temporary data area for flight control and commands, this multiple register data area can be used as a data access application when the user application is executed.

經上述具體實施例的詳細說明後,本發明確實可以具有下列所述的特點: After the detailed description of the above specific embodiments, the present invention can indeed have the following characteristics:

1.本發明確實是以多核心晶片作為無人機自動駕駛的運算核心,並將自動駕駛程式置於第一處理核心以提供飛行狀態與航點等暫存器供使用者發展所需的應用程式來存取作為導航或AI運算使用,因而具有可增加系統軟硬體的穩定性、減少空間與重量以及降低耗電流和成本等諸 多特點。 1. The present invention indeed uses a multi-core chip as the computing core of the drone's autonomous driving, and places the autonomous driving program on the first processing core to provide temporary registers such as flight status and waypoints for users to develop required applications. It can be used for navigation or AI computing, so it can increase the stability of system software and hardware, reduce space and weight, and reduce current consumption and cost. Many features.

2.本發明確實可將多種閉源函數之核心技術保護起來,並開放給使用者呼叫來發展所需無人機的飛控和飛行任務的使用者應用程式,進而實現客製化程式之目的,由於使用者所需理解的相關程式確實可較開源飛控為少,所以確實可以減輕使用者開發程式的負擔。 2. The present invention can indeed protect the core technology of multiple closed source functions and open it to users to call user applications to develop the flight control and flight tasks of the required drones, thereby achieving the purpose of customized programs. Since the relevant programs that users need to understand are indeed fewer than open source flight controllers, it can indeed reduce the burden on users to develop programs.

以上所述,僅為本發明之可行實施例,並非用以限定本發明之專利範圍,凡舉依據下列請求項所述之內容、特徵以及其精神而為之其他變化的等效實施,皆應包含於本發明之專利範圍內。本發明所具體界定於請求項之結構特徵,未見於同類物品,且具實用性與進步性,已符合發明專利要件,爰依法具文提出申請,謹請 鈞局依法核予專利,以維護本申請人合法之權益。 The above are only possible embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent implementation of other changes based on the content, features and spirit described in the following claims shall be considered included in the patent scope of the present invention. The structural features specifically defined in the claim of the present invention have not been found in similar articles, and are practical and progressive. They have met the requirements for an invention patent. I file an application in accordance with the law. I sincerely request the Office to approve the patent in accordance with the law to protect this invention. The legitimate rights and interests of the applicant.

10:單晶片多核心處理器 10:Single chip multi-core processor

11:第一處理核心 11: First processing core

12:第二處理核心 12: Second processing core

20:共用暫存器 20: Shared register

20a:記憶體 20a:Memory

Claims (10)

一種無人機半開源控制系統,其係於一無人機上建置包括有一單晶片多核心處理器及一共用暫存器;該單晶片多核心處理器至少包括有一第一處理核心及至少一第二處理核心;其中,該第一處理核心建置包括有一用以控制該無人機的一個半開源飛控模組;該半開源飛控模組建置包括有相配組的一閉源函數模組及一開源控制程式模組,該閉源函數模組建置至少包括有一資料處理函數、一通訊函數、一飛控函數及一硬體設定函數,使該半開源飛控模組得以執行包含該無人機的電能管理、對地通訊、航空感測、飛行控制、導航演算及飛行記錄的資訊處理;該至少一第二處理核心建置有一使用者應用程式,該使用者應用程式供一使用者依其所需任務撰寫一工作任務應用程式,使該工作任務應用程式經由該共用暫存器而與該開源控制程式模組配組成一無人機飛控應用程式,進而使該半開源飛控模組依據使用者任務應用程式來控制該無人機飛行。 A semi-open source control system for an unmanned aerial vehicle, which is built on an unmanned aerial vehicle and includes a single-chip multi-core processor and a shared register; the single-chip multi-core processor at least includes a first processing core and at least a first Two processing cores; wherein, the first processing core configuration includes a semi-open source flight control module for controlling the drone; the semi-open source flight control module configuration includes a matching set of closed-source function modules And an open source control program module, the closed source function module configuration at least includes a data processing function, a communication function, a flight control function and a hardware setting function, so that the semi-open source flight control module can execute the UAV power management, ground communication, aviation sensing, flight control, navigation calculation and information processing of flight records; the at least one second processing core is equipped with a user application program, and the user application program is used by a user Write a task application program according to the required tasks, so that the task application program is combined with the open source control program module through the shared register to form a UAV flight control application program, so that the semi-open source flight control module The group controls the drone flight according to the user task application. 如請求項1所述之無人機半開源控制系統,其中,於該無人機上建置包括有複數暫存器或記憶體用以使該單晶片多核心處理器與該第一處理核心及該至少一第二處理核心資訊連結,該複數暫存器或記憶體規劃設定為飛行控制與命令的複數暫存資料區,該複數暫存器資料區可供該使用者應用程式執行時作為資料存取的應用;該複數暫存器或記憶體包含複數唯讀暫存器或記憶體及複數讀寫暫存器或記憶體,該複數唯讀暫存器或記憶體包含GPS經度暫存資料區、GPS緯度暫存資料區、GPS高度暫存資料區、GPS速度暫存資料區、姿態角和角速度暫存資料區、氣壓高度、氣溫和空速、電池電壓和電路電流、飛行模式和航路點資訊暫存資料區。 The semi-open source control system for an unmanned aerial vehicle as described in claim 1, wherein a plurality of registers or memories are built on the unmanned aerial vehicle to connect the single-chip multi-core processor with the first processing core and the At least one second processing core information link, the plurality of registers or memory is configured as a plurality of temporary data areas for flight control and commands, and the plurality of register data areas can be used as data storage when the user application is executed. The application of fetching; the plurality of read-only registers or memories include a plurality of read-only registers or memories and a plurality of read-write registers or memories, and the plurality of read-only registers or memories include a GPS longitude temporary data area , GPS latitude temporary data storage area, GPS altitude temporary data storage area, GPS speed temporary data storage area, attitude angle and angular velocity temporary data storage area, air pressure altitude, temperature and airspeed, battery voltage and circuit current, flight mode and waypoint Information temporary storage data area. 如請求項1所述之無人機半開源控制系統,其中,該資料處理函數包含姿態感測器姿態資料處理函數(AHRS Sentence.o)、GPS資料處理函數(GPS Sentence.o)、大氣量測資料處理函數(AIR.0)、RC遙控命令資料處理函數(SBUS Sentence.o)、產生儲存飛行資料處理函數(SD Card Sentcnce.o)以及寫讀FLASH資料處理函數(Flash.o);該通訊函數包含姿態感測器位元組接收中斷處理函數(AHRS Byte.o)、RC遙控命令位元組接收中斷處理函數(SBUS_Byte.o)、飛行資料寫入位元組中斷處理函數(SD Card_Byte.o)、I2C介面位元組接收中斷處理函數(12C.o)、SPI介面位元組接收中斷處理函數(SPI.o)、DMA中斷處理函數(DMA.0)、通訊下傳位元組中斷處理函數(DownLink Byte.o)以及通訊上傳位元組中斷處理函數(UpLink Byte.o);該飛控函數包含飛行控制函數(Flight.o)、航路點管理函數(WayPoint.o)、飛行模式管理函數(Mode.o)以及控制量轉換為伺服器PWM訊號處理函數(PWM.o);該硬體設定函數包含串列介面初始化函數(iniUART.o)、I2C介面初始化函數(iniI2C.o)、SPI介面初始化函數(iniSPI.o)、直接記憶體存取初始化函數(iniDMA.0)、PWM輸出初始化函數(iniPWM.o)、A/D轉換初始化函數(iniADC.o)、計時器(iniTimer.o)以及埠接腳初始化函數(iniPort.o)。 The UAV semi-open source control system as described in request item 1, wherein the data processing function includes an attitude sensor attitude data processing function (AHRS Sentence.o), a GPS data processing function (GPS Sentence.o), and an atmospheric measurement function. Data processing function (AIR.0), RC remote control command data processing function (SBUS Sentence.o), generating and storing flight data processing function (SD Card Sentcnce.o), and writing and reading FLASH data processing function (Flash.o); this communication The functions include the attitude sensor byte receiving interrupt processing function (AHRS Byte.o), the RC remote control command byte receiving interrupt processing function (SBUS_Byte.o), and the flight data writing byte interrupt processing function (SD Card_Byte. o), I2C interface byte receiving interrupt processing function (12C.o), SPI interface byte receiving interrupt processing function (SPI.o), DMA interrupt processing function (DMA.0), communication download byte interrupt Processing function (DownLink Byte.o) and communication upload byte interrupt processing function (UpLink Byte.o); the flight control function includes flight control function (Flight.o), waypoint management function (WayPoint.o), flight mode The management function (Mode.o) and control volume are converted into the server PWM signal processing function (PWM.o); the hardware setting function includes the serial interface initialization function (iniUART.o) and the I2C interface initialization function (iniI2C.o) , SPI interface initialization function (iniSPI.o), direct memory access initialization function (iniDMA.0), PWM output initialization function (iniPWM.o), A/D conversion initialization function (iniADC.o), timer (iniTimer .o) and port pin initialization function (iniPort.o). 如請求項1所述之無人機半開源控制系統,其中,該至少一第二處理核心的數量為複數,每一該複數第二處理核心建置有一個該使用者應用程式;該複數個第二處理核心的該使用者應用程式分別供使用者依其所需任務撰寫該工作任務應用程式,使該複數個第二處理核心的該工作任務應用程式經由該共用暫存器而與該開源控制程式模組配組成一無人機飛控應用程式,進而使該半開源飛控模組依據使用者任務應用程式來控制該無人機 飛行,使其一該無人機應用程式用以控制該無人機的群組通訊、群飛協調與任務執行,使其二該無人機應用程式用以控制該無人機的影像擷取與處理,使其三該無人機應用程式用以控制該無人機的酬載控制、資料處理及目標辨識與追蹤。 The semi-open source control system for drones as described in claim 1, wherein the number of the at least one second processing core is a plurality, and each of the plurality of second processing cores is equipped with one of the user applications; The user applications of the two processing cores allow users to write the task application programs according to their required tasks, so that the task application programs of the plurality of second processing cores are connected to the open source control through the shared register. The program module is configured to form a drone flight control application, so that the semi-open source flight control module controls the drone according to the user task application. Flying, one of the drone applications is used to control the group communication, group flight coordination and mission execution of the drone, and the other drone application is used to control the image capture and processing of the drone, so that Third, the drone application is used to control the payload control, data processing, and target identification and tracking of the drone. 如請求項1所述之無人機半開源控制系統,其中,該半開源飛控模組係執行一系列中斷即時收發資料,其包含下列內容:第一步驟,中斷該單晶片多核心處理器10的UART介面RX2腳,呼叫閉源函數以接收GPS位元組資料,然後返回;第二步驟,中斷該單晶片多核心處理器10的UART介面RX0腳,呼叫閉源函數以接收姿態儀(AHRS)位元組資料,然後返回;第三步驟,中斷該單晶片多核心處理器10的UART介面TX2腳,呼叫閉源函數以傳送記憶卡(SD CARD)位元組資料,然後返回;第四步驟,中斷該單晶片多核心處理器10的UART介面RX1腳,呼叫閉源函數以接收Up Link位元組資料,然後返回;第五步驟,中斷該單晶片多核心處理器10的UART介面RX3腳,呼叫閉源函數以接收地面遙控接收機之SBUS位元組資料,然後返回;及第六步驟,中斷該單晶片多核心處理器10的UART介面TX1腳,呼叫閉源函數以傳送至地面站的Down Link位元組資料,然後返回。 The semi-open source control system for drones as described in claim 1, wherein the semi-open source flight control module executes a series of interrupts to send and receive data in real time, which includes the following content: the first step is to interrupt the single-chip multi-core processor 10 The UART interface RX2 pin calls a closed source function to receive GPS byte data, and then returns; the second step is to interrupt the UART interface RX0 pin of the single-chip multi-core processor 10 and call a closed source function to receive the attitude sensor (AHRS). ) byte data, and then return; the third step is to interrupt the TX2 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to transmit the memory card (SD CARD) byte data, and then return; the fourth step The first step is to interrupt the RX1 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to receive the Up Link byte data, and then return; the fifth step is to interrupt the UART interface RX3 of the single-chip multi-core processor 10. pin, call a closed source function to receive the SBUS byte data of the ground remote control receiver, and then return; and the sixth step, interrupt the TX1 pin of the UART interface of the single-chip multi-core processor 10, call a closed source function to transmit to the ground Down Link byte data of the station and then returns. 如請求項5所述之無人機半開源控制系統,其中,該半開源飛控模組之該開源控制程式模組執行包含下列步驟:第一步驟,依序呼叫閉源函數初始化複數硬體設定函數;第二步驟,判斷姿態資料句是否接收完成,是,則呼叫閉源函數計算 處理姿態資料句;第三步驟,判斷GPS資料句是否接收完成,是,則呼叫閉源函數計算處理GPS資料句;第四步驟,判斷靜壓和動壓是否取樣完成,是,則呼叫閉源函數計算處理空速和氣壓高度數據資料;第五步驟,判斷RC手控資料句是否接收完成,是,則呼叫閉源函數計算處理SBUS資料句之手控操作命令;第六步驟,判斷是否達到10ms飛行控制間隔,是,則呼叫閉源函數執行飛控函數;及第七步驟,判斷是否達到0.5s飛行資料記錄間隔,是,則呼叫閉源函數製造SD CARD資料句和儲存,並啟動下傳飛行資料至地面站軟體的接收和顯示。 The UAV semi-open source control system as described in claim 5, wherein the execution of the open source control program module of the semi-open source flight control module includes the following steps: The first step is to sequentially call closed source functions to initialize complex hardware settings. function; the second step is to determine whether the gesture information sentence has been received. If yes, call the closed source function calculation. Process the attitude data sentence; the third step is to judge whether the reception of the GPS data sentence is completed. If so, call the closed source function to calculate and process the GPS data sentence; the fourth step is to judge whether the static pressure and dynamic pressure sampling is completed. If so, call the closed source function. The function calculation processes the airspeed and pressure altitude data; the fifth step is to determine whether the reception of the RC manual data sentence is completed. If so, the closed source function calculation is called to process the manual operation command of the SBUS data sentence; the sixth step is to determine whether the RC manual data sentence has been received. 10ms flight control interval, if yes, call the closed source function to execute the flight control function; and in the seventh step, determine whether the 0.5s flight data recording interval is reached, if yes, call the closed source function to create and store the SD CARD data, and start the next Transmit flight data to the ground station software for reception and display. 一種無人機半開源控制系統的設計方法,其包括:其係於一無人機上建置包括有一單晶片多核心處理器及一共用暫存器,該單晶片多核心處理器至少包括有一第一處理核心及一第二處理核心;於該第一處理核心建置包括有一用以控制該無人機的一個半開源飛控模組;於該半開源飛控模組建置包括有一閉源函數模組及一開源控制程式模組;於該閉源函數模組建置至少包括有一資料處理函數、一通訊函數、一飛控函數及一硬體設定函數,使該半開源飛控模組得以執行包含該無人機的電能管理、對地通訊、航空感測、飛行控制、導航演算及飛行記錄的資 訊處理; A design method for a semi-open source control system for an unmanned aerial vehicle, which includes: building a single-chip multi-core processor on an unmanned aerial vehicle and a shared register. The single-chip multi-core processor at least includes a first A processing core and a second processing core; the first processing core is configured to include a semi-open source flight control module for controlling the drone; the semi-open source flight control module is configured to include a closed source function module and an open source control program module; the closed source function module configuration includes at least a data processing function, a communication function, a flight control function and a hardware setting function, so that the semi-open source flight control module can be executed Including the UAV’s power management, ground communication, aviation sensing, flight control, navigation algorithm and flight record information information processing; 於該第二處理核心建置有一第一使用者應用程式,該第一使用者應用程式供一使用者依其所需任務撰寫一工作任務應用程式,使該工作任務應用程式經由該共用暫存器而與該開源控制程式模組配組成一無人機飛控應用程式,進而使該半開源飛控模組依據使用者任務應用程式來控制該無人機飛行。 A first user application is built on the second processing core. The first user application allows a user to write a task application according to the required task, so that the task application can be stored through the shared temporary storage. The device is combined with the open source control program module to form a drone flight control application, so that the semi-open source flight control module controls the flight of the drone according to the user task application. 如請求項7所述之方法,其中,於該單晶片多核心處理器更建置包括有複數個處理核心,並於每一該複數個處理核心建置有一使用者應用程式,該複數個處理核心的該使用者應用程式分別供一使用者依其所需任務撰寫一工作任務應用程式,使該複數個處理核心的該工作任務應用程式經由該共用暫存器而與該開源控制程式模組配組成一無人機飛控應用程式,進而使該半開源飛控模組依據使用者任務應用程式來控制該無人機飛行,使其一該無人機應用程式用以控制該無人機的群組通訊、群飛協調與任務執行,使其二該無人機應用程式用以控制該無人機的影像擷取與處理,使其三該無人機應用程式用以控制該無人機的酬載控制、資料處理及目標辨識與追蹤。 The method described in claim 7, wherein the single-chip multi-core processor is further configured to include a plurality of processing cores, and a user application is built in each of the plurality of processing cores. The user application program of the core allows a user to write a task application program according to the required tasks, so that the task application programs of the plurality of processing cores communicate with the open source control program module through the shared register. It is configured into a UAV flight control application, so that the semi-open source flight control module controls the flight of the UAV according to the user task application, so that the UAV application can control the group communication of the UAV. , group flight coordination and task execution, so that the second UAV application is used to control the image acquisition and processing of the UAV, and the third UAV application is used to control the payload control and data processing of the UAV and target identification and tracking. 如請求項8所述之方法,其中,於每一該複數個處理核心的該使用者應用程式建置有一程式範例,以程式碼開源方式提供該使用者設計出其所需工作任務的該使用者應用程式。 The method described in claim 8, wherein a program example is built in the user application program of each of the plurality of processing cores to provide the user with the application to design the required work tasks in a program code open source manner. or application. 如請求項8所述之方法,其中,於該無人機上建置包括有複數暫存器用或記憶體以使該單晶片多核心處理器與該第一處理核心及該至少一第二處理核心資訊連結,該複數暫存器或記憶體規劃設定為飛行控制與命 令的複數暫存資料區,該複數暫存器資料區可供該第一使用者應用程式執行時作為資料存取的應用。 The method of claim 8, wherein a plurality of registers or memories are installed on the drone to enable the single-chip multi-core processor to interact with the first processing core and the at least one second processing core. Information link, the complex register or memory configuration is configured for flight control and command The plurality of temporary data areas of the order can be used as data access applications when the first user application is executed.
TW111135593A 2022-09-20 2022-09-20 UAV semi-open source control system and its design method TWI830392B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW111135593A TWI830392B (en) 2022-09-20 2022-09-20 UAV semi-open source control system and its design method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW111135593A TWI830392B (en) 2022-09-20 2022-09-20 UAV semi-open source control system and its design method

Publications (2)

Publication Number Publication Date
TWI830392B true TWI830392B (en) 2024-01-21
TW202414137A TW202414137A (en) 2024-04-01

Family

ID=90459203

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111135593A TWI830392B (en) 2022-09-20 2022-09-20 UAV semi-open source control system and its design method

Country Status (1)

Country Link
TW (1) TWI830392B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201835784A (en) * 2016-12-30 2018-10-01 美商英特爾公司 The internet of things
US20210221506A1 (en) * 2018-10-02 2021-07-22 Robert S. Phelan Unmanned aerial vehicle system and methods
US20220100189A1 (en) * 2016-04-01 2022-03-31 Lntel Corporation Drone control registration
US20220147066A1 (en) * 2020-03-02 2022-05-12 Clrobur Co., Ltd. Drone control system and intelligent drone flight planning method thereof
US20220197312A1 (en) * 2020-12-18 2022-06-23 Microsoft Technology Licensing, Llc Event Camera Based Navigation Control

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220100189A1 (en) * 2016-04-01 2022-03-31 Lntel Corporation Drone control registration
TW201835784A (en) * 2016-12-30 2018-10-01 美商英特爾公司 The internet of things
US20210221506A1 (en) * 2018-10-02 2021-07-22 Robert S. Phelan Unmanned aerial vehicle system and methods
US20220147066A1 (en) * 2020-03-02 2022-05-12 Clrobur Co., Ltd. Drone control system and intelligent drone flight planning method thereof
US20220197312A1 (en) * 2020-12-18 2022-06-23 Microsoft Technology Licensing, Llc Event Camera Based Navigation Control

Similar Documents

Publication Publication Date Title
US20200285942A1 (en) Method, apparatus, accelerator, system and movable device for processing neural network
Ebeid et al. A survey on open-source flight control platforms of unmanned aerial vehicle
US8260479B2 (en) Modular software architecture for an unmanned aerial vehicle
US10809711B2 (en) Electronic device and method for controlling the same
US20190005184A1 (en) System and Method for Aircraft Design Optimization and Performance
CN106325289A (en) Renesas R5F100LEA master control-based four-rotor flight controller and control method thereof
CN108965124A (en) A kind of unmanned aerial vehicle control system
Van't Hof et al. Androne: Virtual drone computing in the cloud
CN109634184A (en) A kind of load sharing formula double-core flight-control computer
TWI830392B (en) UAV semi-open source control system and its design method
CN105676755A (en) Dual-core flight control computer
Hrishikeshavan et al. Refined lightweight inertial navigation system for micro air vehicle applications
WO2020238966A1 (en) Method and apparatus for transmitting reference navigation point data, and unmanned aerial vehicle
CN105955286B (en) A kind of more rotor flying controllers of double-core
Szolc et al. Hardware-in-the-loop simulation of a UAV autonomous landing algorithm implemented in SoC FPGA
CN216647176U (en) STM 32-based quad-rotor unmanned aerial vehicle platform for teaching experiment
CN110271685A (en) A kind of unmanned plane of taking photo by plane based on ARM and FPGA
US20200110424A1 (en) Geofencing of unmanned aerial vehicles
CN203101972U (en) Miniature unmanned plane flight control system based on microprocessor S3C2410
WO2022227092A1 (en) Movable platform, and verification apparatus and verification method for chip design
Chong et al. Design of flight control software for small unmanned aerial vehicle based on VxWorks
Liu A Do-It-Yourself Unmanned Aerial Vehicle for area monitoring and data collecting
Rafeeq A Development Platform to Evaluate UAV Runtime Verification Through Hardware-in-the-loop Simulation
TWI818361B (en) Dual Autopilot System with Control Transfer and Backup Aviation Sensors
Raheel et al. Top-Down Design Approach for the Customization and Development of Multi-rotors Using ROS