基于FPGA的无人机控制器设计与实现

时间:2022-03-17来源:佚名

无人机的飞行控制和机载电子设备的控制指令主要通过地面控制计算机中的软件或者无人机控制器产生,这两种相互独立的控制方式互为备份。而无人机控制器主要由硬件电路和嵌入式软件设计实现,不依赖于计算机,因此具有可靠性高、稳定性好等优点,是实现无人机远程遥控的主要方式之一。

传统的无人机控制器主要由单片机、ARM和8279等芯片设计实现,具有系统结构简单等优点,但是对于无人机控制系统对指令时延要求和测控系统时序同步等问题,该设计方法增加了测控设备软件的设计复杂度,特别针对滑跑起降型无人机遥控信道低延时数据传输的实际应用要求,传统无人机控制器产生的指令延时难以满足无人机起降控制要求。

采用基于FPGA设计的无人机控制器,充分利用了FPGA并行数据处理能力和同步设计优势,将键盘扫描、指令编码与显示、指令异步串行发送等功能模块都集成在FPGA内部,外围电路仅包含AD采样、电平转换和驱动芯片等简单电路,避免了MCU等单指令周期芯片的时序缺点,系统的硬件结构更为简单,扩展性更强,遥控指令的触发到输出的指令数据群延时小于80 ms,能够满足各种类型无人机的实时远程控制要求。

1 系统硬件设计方案

无人机控制器主要由控制键盘、数码显示板和控制器数据处理板组成。控制键盘由8x8开关矩阵键盘和航向控制器构成,主要实现无人机控制器键盘扫描代码和航向模拟量的产生。数码显示板由6个16进制数码管组成,主要实现控制指令代码和航向数据的同步显示。作为无人机遥控控制器的核心部件,控制器数据处理板采用Altera公司的低成本Cyclone4系列FPGA芯片EP4CE10作为指令和数据处理的核心芯片;为降低FPGA硬件资源消耗,AD芯片选用MAXIM公司的串行12Bits AD采样芯片MAX11105,理论航向传感器控制精度可达0.09°;UART电平转换芯片选用MAXIM公司的MAX3387芯片设计实现,具有良好的可扩展性。控制器信号处理板主要实现无人机控制指令的键盘扫描与AD采样、指令编码与显示和遥控指令异步串行发送等功能。系统硬件结构框图如图1所示。

如图1所示,控制器数据处理板上的FPGA分别对控制键盘上的8x8矩阵键盘和航向控制器模拟信号进行行列扫描与AD采样,以获取键盘扫描码和航向模拟量数据,并对采集到的指令和数据进行编码转换后得到指令控制代码和航向控制数据。FPGA将编码转换后的数据同时分成两路,一路驱动数码显示板实时显示,另一路进行遥控组帧后按照标准异步串行通信协议(UART)发送至MAX3387进行RS232电平转换,最后将含有控制指令的异步串行遥控数据通过测控设备发送至无人机,实现对无人机的远程控制功能。

2 系统软件设计方案

无人机控制器的软件都集成在FPGA内部,采用VHDL语言编程,并在Altera公司的QuartusII软件环境下进行编译和在线仿真。控制器主要包括键盘扫描、指令编码与显示、指令异步串行发送等功能模块,系统的信号流程如图2所示。系统加电后,FPGA每间隔40 ms对控制键盘和航向控制器进行一次行列扫描和AD数据采集,当检测到有控制按键被触发后,启动按键去抖识别程序,将有效的控制按键的键盘扫描码和AD采集数据转换成控制指令代码和航向控制数据,并将指令和数据分成相同两路,一路送入LED驱动模块产生16进制数码管显示驱动信号,另一路送入指令异步串行发送模块进行遥控组帧和控制数据加载,最后将包含指令数据的遥控帧数据按照异步串行数据通信协议(UART)发出。

2.1 键盘扫描和AD采集模块

根据控制指令的实时性要求,系统设计每隔40 ms分别对矩阵键盘和航向控制器进行一次行列扫描和AD采样,当键盘上的按键被触发时,启动按键去抖识别程序,输出满足响应时间要求的按键16 bits键盘扫描码。与此同时,将AD采集到的航向控制器模拟量串行数据进行串并转换后输出12 bits并行航向控制数据。该模块的SignalTapII在线仿真结果如图3所示。KB_RL和KB_Y分别为行扫描线和列扫描线,KB_SEN为键盘扫描使能信号,KEY_SCode为按键触发后输出的键盘扫描代码,SAD_CS为芯片的采集使能信号,SAD_SDT为芯片串行数据输入,SAD_PDT为串并转换后的航向控制器结果数据。由图3可知,一共有2个控制按键被顺序触发,共输出了2个键盘扫描码:7DFE和7EFE。航向控制器输出数据位2EB,对应航向控制角度值约为66°。

2.2 指令编码与显示模块

指令编码与显示模块将接收到的16 bits键盘扫描码和12 bits航向控制器数据按照数据传输协议进行指令和数据编码,并将编码后控制指令和数据发送至指令发送模块,与此同时,为确保指令代码和航向控制器数据正确传输,模块驱动6个16进制数码显示管实时显示编码后的指令数据和航向控制器数据。指令编码与显示模块的SignalTapII在线仿真结果及数码管显示结果如图4所示。KB_INS为指令有效标志,KB_ EDAT为编码后的指令代码,SAD_EDT为编码后的角度值。LED_LE为数码管数据锁存信号,LED_BL为数码管使能信号,LED_DL为数码管数据输入端,由图4可知,编码后的控制指令代码和航向控制器角度分别为033H和66°,数码管显示结果为033和066。

2.3 指令发送模块

指令发送模块接收到编码后的控制指令和航向控制器数据后,将编码后的指令数据转换为遥控帧数据,并按照异步串行通信协议(UART)将遥控帧数据输出到MAX3387进行电平转换,遥控帧数据串行波特率选取19 200,8位数据位,1位起始位,1位停止位,无奇偶校验位。指令发送模块SignalTapII在线仿真结果及计算机接收到的遥控帧数据结果如图5所示。YK_SEND_EN为数据发送使能信号,Test_Vara为发送的8 bits并行遥控数据,YK_UART_Out为异步串行数据FPGA输出端波形信号。

3 实验应用

无人机控制器安装于某型无人机地面控制站中。地面站加电后,控制器数据处理板开始工作,每间隔40 ms分别对8x8矩阵键盘和无人机航向控制器进行键盘扫描与AD采样,并实时将采集到数据转换成相应的遥控指令代码,一路驱动数码显示管将指令代码实时显示,一路将指令代码转换成RS232异步串行数据通过测控设备发送至无人机,控制器数据处理板实物如图6所示。实际应用结果表明,采用基于FPGA设计的无人机控制器的各项技术指标满足使用要求,控制指令群时延小于80 ms,设备运行稳定可靠。

4 结论

根据无人机的控制特点,文中提出了一种基于FPGA的无人机控制器设计方案,该方法充分利用FPGA并行处理能力,简化了无人机控制器的硬件结构,降低了遥控指令群延时,解决了测控设备的时序匹配问题,并且具有较好的功能可扩展性,该控制器已经在某型无人机系统中得到成功应用。


    相关阅读

    城市亮化工程如何设计才能具有层次感?

    城市亮化工程 的主要目地是为夜间带来一体化照明,考虑基础的视觉识别规定,自然环境照明的光层级与光线总数的多少相关,假如空间中的自然环境照明比工作照明低许多 ,在工作...
    2022-10-11
    城市亮化工程如何设计才能具有层次感?

    城市道路照明工程主要有哪些?

    在城市建设中,道路照明 是必不可少的基础设施,也是城市夜景的重要组成部分。在某种程度上,它还反映了城市的经济实力,社会进步和现代化的标志。它为夜间在城市中的车辆和行...
    2022-07-12
    城市道路照明工程主要有哪些?

    安全出口指示标志灯为什么是绿色而不是红色?

    对于安全出口指示标志灯相信大家都不陌生,我们在日常生活中在任何公众场所的紧急疏散的安全出口都可以看到这个安全出口指示标志灯,大家有没有想过安全出口的指示标志为什么...
    2022-05-21
    安全出口指示标志灯为什么是绿色而不是红色?

    路灯照明合理的布置方式

    路灯的布置方式主要有单侧布置、双侧交错布置、双侧对称布置、中心对称布置、横向悬索布置五种形式,随着城市道路的不断拓宽,平交路口转弯半径越来越大,根据《城市道路亮化...
    2022-07-15

    泛光照明工程是什么?应用范围有哪些?

    很多人提及 泛光照明工程 会有一些生疏,不理解泛光照明包含哪些,也不知道 泛光照明工程 跟普通照明工程有哪些不一样。 实际上泛光照明工程便是归属于城市景观照明工程或环境...
    2022-10-17
    泛光照明工程是什么?应用范围有哪些?

    消防应急灯的寿命有多长?一般可以使用多长时间?

    对于消防应急灯的使用寿命相信很多人都想了解这个问题,因为消防应急灯安装了就不需要时时刻刻盯着,这需要定时检查就可以了,但是很多人都不知道消防应急灯的寿命有多长,不...
    2022-05-21
    消防应急灯的寿命有多长?一般可以使用多长时间?

    快投派智能无线投屏器,让无线互联更加简单便捷

    没有WiFi的情况下可以进行无线投屏吗? 长期使用投屏功能的人,或多或少都知道自己的手机可以通过【无线投屏】【屏幕镜像】功能,直接连接到智能电视或无线投屏器,下意识地认...
    2022-05-11
    快投派智能无线投屏器,让无线互联更加简单便捷

    广场照明的设计技巧

    广场照明设计 主要包括休闲广场、集会活动广场、商业广场的照明设计。 1)休闲广场。主要是为人们提供休息、社交和举行小型文化娱乐活动的地方,由于人们活动方式不同,有些区...
    2022-07-15

    网站栏目