一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于高速总线架构的无人机控制系统

2022-09-07 15:05:27 来源:中国专利 TAG:


1.本技术涉及电子技术领域,尤其涉及一种基于高速总线架构的无人机控制系统。


背景技术:

2.随着全球蜂窝网络覆盖需求的增加,无人机结合蜂窝网络能够以低成本、高移动性的方式支持无人机通信,同时也为建立新的专用地面网络提供了可能性。在城市中流量热点密集的地区,传统蜂窝基站的覆盖范围不能满足需求时,无人机可依据其高灵活性与部署方便的特点快速对热点区域进行覆盖和业务分流,具有广阔的应用场景。
3.无人机激增的应用场景对内部数据传输频率的需求不断增加,在微控处理器时钟频率受限的条件下,提高内部数据传输频率是无人机内部数据通信的核心问题。
4.应用串行外设接口(serial peripheral interface,spi)高速数据总线技术作为一种增加数据通信可靠性并且显著提高数据传输频率的技术,成功应用于设备与设备之间的高速通信系统,但由于飞行控制系统内部数据通信具有极强的实时性,且无人机在进行姿态飞行控制、姿态飞行数据采集等不同操作的实时性要求较高,这些因素对无人机飞行控制系统的内部数据传输频率提出了严格要求,使得传统的高速通信架构无法适用于无人机飞行控制系统。


技术实现要素:

5.本技术提供一种基于高速总线架构的无人机控制系统,以在保证数据通信可靠性的前提下,内部数据传输频率得到有效率提升。
6.本技术的技术方案如下:
7.根据本技术实施例的第一方面,提供一种基于高速总线架构的无人机控制系统,包括:
8.主处理器、传感器组件、电源驱动模块、以及动力驱动模块;
9.其中,所述传感器组件至少包括姿态检测模块、视觉处理模块、蓝牙模块以及激光雷达模块;
10.所述姿态检测模块用于向所述主处理器提供加速计、磁强计、陀螺仪、以及加速度的数据信息;
11.所述视觉处理模块用于向所述主处理器提供所述多旋翼无人机对应上位机的控制数据信息;
12.所述蓝牙模块用于向所述主处理器提供当前视觉数据信息;
13.所述激光雷达模块用于向所述主处理器提供当前的的高度数据信息;
14.所述姿态检测模块的输出端通过第一高速数据传输通道连接到所述主处理器的第一输入端;所述视觉处理模块的输出端通过第二高速数据传输通道连接到所述主处理器的第二输入端;所述蓝牙模块的输出端通过第一uart串口连接到所述主处理器的第三输入端,所述激光雷达模块的输出端通过第二uart串口连接到所述主处理器的第四输入端;所
述主处理器的输出端通过pwm(脉冲宽度调制)线连接到电源驱动模块的输入端,所述电源驱动模块的输出端连接到所述动力驱动模块,所述动力驱动模块中包含预设数量个电机。
15.在一些实施例中,所述无人机控制系统进一步被配置为:
16.主处理器接收到所述传感器组件传输的多个数据信息后,对所述多个数据信息进行滤波处理、提高可信度处理以及双环串级pid控制处理,生成与所述动力驱动模块中的预设数量个电机相对应数量的pwm波信号,并传输至所述电源驱动模块。
17.在一些实施例中,所述无人机控制系统还包括动力电池,所述动力电池通过第一模数转换器连接到电源驱动模块的一端,所述电源驱动模块的另一端在通过第二模数转换器连接到所述主处理器;
18.其中,所述主处理器通过所述第一模数转换器和第二模数转换器检测当前动力电池的电压值,以检测所述当前电量是否高于所述多旋翼无人机的最低运行水平。
19.在一些实施例中,所述无人机控制系统的软件架构基于μc/os
‑ⅱ
实时操作系统建立,用于执行对所述传感器组件数据采集、多旋翼无人机姿态解算、飞行控制计算以及数据通信。
20.在一些实施例中,所述第一高速数据传输通道包括第一spi总线和fifo模块;所述姿态检测模块的输出端连接到所述第一spi总线的一端,所述第一spi总线的另一端连接fifo模块的一端,所述fifo模块的另一端连接到所述主处理器的第一输入端;
21.其中,在所述第一高速数据传输通道下,所述主处理器配置为主机模式,用于设置spi数据通信协议接口并连接fifo模块,以获取所述姿态检测模块中的数据信息。
22.在一些实施例中,所述第二高速数据传输通道包括第二spi总线和dma模块,所述视觉处理模块的输出端连接到所述第二spi总线的一端,所述第二spi总线的另一端连接dma模块的一端,所述dma模块的另一端连接到所述主处理器的第二输入端;
23.其中,在所述第二高速数据传输通道下,所述主处理器配置为从机模式,用于设置spi数据通信协议接口并连接到dma模块,以获取所述视觉处理模块采集的外部图像信息。
24.在一些实施例中,所述视觉处理模块采集的外部图像信息后进行数据处理的速度,在任务的触发方式上采用μc/os
‑ⅱ
实时操作系统中的中断触发。
25.在一些实施例中,所述姿态检测模块包括mpu6500芯片和lsm303d芯片。
26.本技术实施例的第二方面,提供一种多旋翼无人机,包括:如第一方面及第一方面任意一种可能设计中的无人机控制系统。
27.本发明的效果是:
28.本技术所涉及的一种基于高速总线架构的无人机控制系统,包括主处理器、传感器组件、电源驱动模块、以及动力驱动模块;其中,所述传感器组件至少包括姿态检测模块、视觉处理模块、蓝牙模块以及激光雷达模块。本技术中所述姿态检测模块的输出端通过第一高速数据传输通道连接到所述主处理器的第一输入端;所述视觉处理模块的输出端通过第二高速数据传输通道连接到所述主处理器的第二输入端;所述蓝牙模块的输出端通过第一uart串口连接到所述主处理器的第三输入端,所述激光雷达模块的输出端通过第二uart串口连接到所述主处理器的第四输入端;所述主处理器的输出端通过pwm(脉冲宽度调制)线连接到电源驱动模块的输入端,所述电源驱动模块的输出端连接到所述动力驱动模块,所述动力驱动模块中包含预设数量个电机。本技术针对主处理器与不同模块的通信分别设
计了对应的spi高速数据传输通道,采用spi高速通信总线为技术基础,设计了具有主动读取和被动接收的内部数据通信无人机优化系统,解决了传统无人机内部数据的通信速率低,外部设备扩展性差,实时性不足的问题,进而使得无人机主控器在整个无人机系统中即可做内部数据通信主机又可以做内部数据通信从机,实现了保证数据通信可靠性的前提下,内部数据传输效率的有效提升。
29.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
30.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理,并不构成对本技术的不当限定。
31.图1是根据一示例性实施例示出的基于高速总线架构的无人机系统的框架示意图;
32.图2是根据一示例性实施例示出的另一种基于高速总线架构的无人机系统的框架示意图;
33.图3是根据一示例性实施例示出的第一高速数据传输通道中信号传输流程图;
34.图4是根据一示例性实施例示出的第二高速数据传输通道中信号传输流程图;
35.图5是根据一示例性实施例示出的无人机软件系统结构示意图;
36.图6是根据一示例性实施例示出的另一种第一高速数据传输通道的数据处理流程图;
37.图7是根据一示例性实施例示出的另一种第二高速数据传输通道的数据处理流程图;
38.图8是根据一示例性实施例示出的的第二高速数据传输通道的数据信令格式示意图;
39.图9是根据一示例性实施例示出的第二高速数据传输通道的软件处理流程示意图。
具体实施方式
40.为了使本领域普通人员更好地理解本技术的技术方案,下面将结合附图,对本技术实施例中的技术方案进行清楚、完整地描述。
41.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
42.如图1所示,本技术示例性示出了基于高速总线架构的无人机系统的框架示意图。
43.该基于高速总线架构的无人机系统的框架主处理器100、传感器组件200、电源驱动模块300、以及动力驱动模块400;
44.其中,所述传感器组件200至少包括姿态检测模块201、视觉处理模块202、蓝牙模块203以及激光雷达模块204;所述姿态检测模块201用于向所述主处理器100提供加速计、磁强计、陀螺仪、以及加速度的数据信息;所述视觉处理模块202用于向所述主处理器100提供所述多旋翼无人机对应上位机的控制数据信息;所述蓝牙模块203用于向所述主处理器100提供当前视觉数据信息;所述激光雷达模块204用于向所述主处理器100提供当前的的高度数据信息。
45.所述姿态检测模块201的输出端通过第一高速数据传输通道连接到所述主处理器100的第一输入端;所述视觉处理模块202的输出端通过第二高速数据传输通道连接到所述主处理器的第二输入端;所述蓝牙模块203的输出端通过第一uart(universal asynchronous receiver/transmitter,通用异步收发器)串口连接到所述主处理器的第三输入端,所述激光雷达模块的输出端通过第二uart串口连接到所述主处理器的第四输入端;所述主处理器的输出端通过pwm(脉冲宽度调制)线连接到电源驱动模块的输入端,所述电源驱动模块的输出端连接到所述动力驱动模块,所述动力驱动模块中包含预设数量个电机。
46.在一些实施例中,姿态检测模块201包括lsm303d传感器和mpu6500传感器。lsm303d传感器为主处理器提供3轴加速计和3轴磁强计的数据信息,
47.mpu6500传感器为主处理器提供3轴陀螺仪和3轴加速度的数据信息。
48.在一些实施例中,主处理器接收到所述传感器组件传输的多个数据信息后,对所述多个数据信息进行滤波处理、提高可信度处理以及双环串级pid控制处理,生成与所述动力驱动模块中的预设数量个电机相对应数量的pwm波信号,并传输至所述电源驱动模块。
49.在一些实施例中,所述无人机控制系统还包括动力电池,所述动力电池通过第一模数转换器连接到电源驱动模块的一端,所述电源驱动模块的另一端在通过第二模数转换器连接到所述主处理器。其中,所述主处理器通过所述第一模数转换器和第二模数转换器检测当前动力电池的电压值,以检测所述当前电量是否高于所述多旋翼无人机的最低运行水平。
50.如图2所示的另一种基于高速总线架构的无人机系统的框架示意图。第一高速数据传输通道和第二高速数据传输通道属于两种不同的数据传输策略。具体的,
51.方案一:
52.第一高速数据传输通道包括第一spi总线和fifo模块。姿态检测模块的输出端连接到第一spi总线的一端,第一spi总线的另一端连接fifo模块的一端,fifo模块的另一端连接到所述主处理器的第一输入端。在所述第一高速数据传输通道下,所述主处理器配置为主机模式,用于设置spi数据通信协议接口并连接fifo模块,以获取所述姿态检测模块中的数据信息。
53.如图3所示,为本技术示例性示出的第一高速数据传输通道中信号传输流程图,多旋翼无人机当前状态数据信息,先通过姿态检测模块201部分进行采集,然后模数转换得到旋翼无人机状态的数字数据信息。再由主处理器识别数字数据信息,以及通过逻辑控制器将数字数据信息进行打包处理,以便有格式的排列输出。
54.姿态检测模块通过spi数据通信协议接口向主处理器的第一fifo(first input first output,先进先出)模块进行spi数据交换,完成姿态检测模块在spi高速数据总线的
操作。主处理器从fifo模块中接收多旋翼无人机状态数据信息与发送操作指令,将接受的数据从fifo存储在第一存储器之中,以便后续操作使用。
55.该方案由于以主处理器作为整个第一spi高速数据传输通道中主机,因此主处理器更为主动的读取多旋翼无人机的各项数据参数,以达到更稳定的飞行控制操作。
56.方案二:
57.第二高速数据传输通道包括第二spi总线和dma模块,所述视觉处理模块的输出端连接到所述第二spi总线的一端,所述第二spi总线的另一端连接dma(direct memory access,直接存储器访问)模块的一端,所述dma模块的另一端连接到所述主处理器的第二输入端。
58.在一些实施例中,在所述第二高速数据传输通道下,所述主处理器配置为从机模式,用于设置spi数据通信协议接口并连接到dma模块,以获取所述视觉处理模块采集的外部图像信息。
59.如图4,为本技术示例性示出的第二高速数据传输通道中信号传输流程图。图像信息首先通过摄像头获取,通过mipi协议接口向图像处理器传递原始图像的数字数据信息。在图形处理器处理后得到了图像数据之后,开始根据程序执行中值滤波、相关图像处理等操作;为了方便主处理器可以正确读取图像数据处理结果,需要对结果数据进行数据打包,将打包的数据传递给第二fifo模块,并同时读取第二fifo模块中上一次主处理器传递的操作指令。结果数据通过spi数据通信协议接口,传递给主处理器的dma数据通道直接发送给对应的存储器位置,也可以从对应存储器位置取出对视觉处理模块的操作指令,通过dma数据通道传递给spi数据通信协议接口。
60.如图5所示,为本技术示例性实施方式中的无人机软件系统结构示意图。所述无人机控制系统的软件架构基于μc/os
‑ⅱ
实时操作系统建立,至少用于执行对所述传感器组件数据采集、多旋翼无人机姿态解算、飞行控制计算以及数据通信。
61.在一些实施例中,对所需的具体任务进行划分之后,当有多个任务需要运行时,μc/os
‑ⅱ
实时操作系统采用抢占优先级规则,按照其任务的重要性分配一个唯一的任务优先级,优先级顺序前面的先执行,优先级顺序后面的后执行。在一个cpu情况下运行多个任务时,这样的优先级规则保证了软件系统结构的稳定性和可靠性。由于μc/os
‑ⅱ
实时操作系统最多可以创建64个任务,因此任务的优先级最多有64级,每个级别的任务对应一个整型数字,即64、63、

、2、1。其中任务优先级的数字越小,则该任务越重要,优先级级别越高,任务的执行越靠前。
62.在一些实施例中,主处理器为tms320f28379d芯片。
63.对于方案一的第一spi高速数据传输通道,,spi高速数据总线的主机为tms320f28379d,从机为lsm303d和mpu6500两个传感器。tms320f28379d通过所搭载的软件系统通过任务的方式去主动地读取lsm303d和mpu6500的数据信息。
64.如图6为本技术示例性输出的另一种第一高速数据传输通道的处理流程图。
65.第一spi高速数据传输通道的软件系统处理流程,以app_taskimu任务函数为主体,该任务的优先等级为3u,对应的任务堆栈大小为256u,并且该任务的触发方式为μc/os
‑ⅱ
实时操作系统中的延时触发。该软件系统处理流程,分为6层。l0层为第一spi高速数据传输通道的任务层,即对应的任务函数层;l1层位为第一spi高速数据传输通道的任务内容
层。l2层为spi高速数据总线a的任务具体操作层,即该任务会执行哪些具体行为操作等等。imu_getvalues为获取传感器各项数据信息,mahonyahrsupdate为更新姿态算法;l3层、l4层、l5层为最底层,主要面向硬件操作,通过对应接口函数对lsm303d和mpu6500传感器进行主动读取数据和发送数据。
66.如图6所示,lsm303_csl表示激活lsm303d的线选信号,即主机tms320f28379d准备向从机lsm303d进行spi数据交换;lsm303d_readregs表示主机向从机发送操作指令,并读取从机lsm303d采集的数据信息;lsm303_csh表示抑制lsm303d的线选信号,即主机tms320f28379d结束与从机lsm303d的spi数据交换。mpu6500_csl表示激活mpu6500的线选信号,即主机tms320f28379d准备向从机mpu6500进行spi数据交换;mpu6500_readregs表示主机向从机发送操作指令,并读取从机mpu6500采集的数据信息;mpu6500_csh表示抑制mpu6500的线选信号,即主机tms320f28379d结束与从机mpu6500的spi数据交换,其中lsm303d_readregs和mpu6500_readregs函数会调用spi的接口函数spi_readwrite_byte。
67.如图7为本技术示例性输出的另一种第二高速数据传输通道的处理流程图。在第二高速数据传输通道的部分,spi高速数据总线的主机为视觉处理模块,(如bcm2835芯片),而从机为tms320f28379d芯片。tms320f28379d通过所搭载的软件系统通过任务的方式去被动地读取bcm2835芯片的数据信息。
68.在一些实施例中,第二高速数据传输通道是基于spi数据通信协议配合dma数据通道的基础上,理论上spi高速数据总线的传输数据直接由主机bcm2835芯片所提供的spi同步时钟信号决定,因此第二高速数据传输通道在数据传输速度上要快于spi高数数据总线a。但为了适配tms320f28379d处理bcm2835芯片所提供视觉结果的数据处理速度,在任务的触发方式上采用μc/os
‑ⅱ
实时操作系统中的中断触发。
69.tms320f28379d芯片通过dma模块触发dma中断函数,在dma中断函数完成中断响应之后,产生processspidata_proc的信号量。l0层为spi高速数据总线b的任务层,即对应的任务函数层;l1层为spi高速数据总线b的任务内层。l3为最底层,主要是面向如何处理视觉信息结果的层,根据数据信息结果和相关指令进行对应处理。
70.如图8所示,为本技术示例性示出的第二高速数据传输通道的数据信令格式示意图。
71.数据信令长度为16,其中每一个数据为一个8位数据,即0x00到0xff的范围。其中数据信令的第一和第二位,为数据信令的包头,用于检查数据包头是否正常,从而判断数据信令中真正数据是否正常。其中可以真正自由加载数据的位置为信令的3到15,在整个第二高速数据传输通道规定,第3位数据表示当前运行的视觉处理模块模式,默认模式:0x00,黑点模式:0x10,光流模式:0x20。根据第三位的数值设置整个多旋翼无人机软件系统的飞行模式;第3、4位数据表示bcm2835芯片处理得到x坐标值的高8位和低8位;第5、6位数据表示bcm2835芯片处理得到y坐标值的高8位和低8位;第16位表示数据信令的校验位,校验原理为数据信令的16位等于前15位数据相加得到数据的低8位。
72.如图9所示,为本技术示例性示出的第二高速数据传输通道的软件处理流程示意图,其中:
73.黑点模式是无人机飞行控制系统的控制策略采用黑点控制策略,无人机视觉端通过spi高速数据总线向无人机飞行控制系统传输当前的黑点位置x、y数值,无人机飞行控制
系统通过卡尔滤波算法进行数据校正。将校正之后的数据通过pid自动控制算法(黑点模式的pid参数)计算出所有电机对应的pwm数值,进行电机转速控制,最终实现无人机飞行控制系统的黑点悬停模式。
74.光流模式是无人机飞行控制系统的控制策略采用视觉光流算法的控制策略,无人机视觉端将通过视觉光流算法得到的光流飞行向量。视觉端通过spi高速数据通信向无人机飞行控制系统传输光流飞行向量,无人机飞行控制系统通过卡尔曼滤波算法进行数据校验。将校正之后的数据通过pid自动控制算法(光流模式的pid参数)计算出所有电机对应的pwm数值,进行电机转速控制,最终实现无人机飞行控制系统的光流飞行模式。
75.bcm2835芯片通过spi数据协议配合第二fifo模块,主动地向tms320f28379d芯片进行spi数据交换,由于bcm2835芯片作为主机,无需多线程操作,因此整个软件处理流程是一个单线程程序流程。因此只需要将视觉结果按照如同从极端数据信令格式打包之后,bcm2835芯片将数据信令通过第二高速数据传输通道与tms320f28379d芯片进行spi数据交换即可。
76.与现有的无人机控制技术相比,本技术基于spi高速数据通信总线下的设计结构,可以有效的提高无人机的内部传输数据与通信的效率,避免出现数据传输速度不够导致的无人机系统错误问题,有效地提高无人机的内部数据通信效率。
77.本技术实施例描述的应用场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
78.所属技术领域的技术人员能够理解,本技术的各个方面可以实现为系统、方法或程序产品。因此,本技术的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
79.在一些可能的实施方式中,根据本技术的无人机可以包括至少一个处理器、以及至少一个存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器和其他部件组成无人机控制系统。
80.应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
81.此外,尽管在附图中以特定顺序描述了本技术方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
82.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
83.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程图像缩放设备的处理器以产生一个机器,使得通过计算机或其他可编程图像缩放设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
84.这些计算机程序指令也可存储在能引导计算机或其他可编程图像缩放设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
85.这些计算机程序指令也可装载到计算机或其他可编程图像缩放设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
86.尽管已描述了本技术的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术范围的所有变更和修改。
87.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献