基于英伟达TX2处理器的无人机运动跟踪系统的制作方法

文档序号:13135702阅读:1128来源:国知局
基于英伟达TX2处理器的无人机运动跟踪系统的制作方法

本发明涉及无人机、机器视觉、运动跟踪、自动控制等技术领域,特别是涉及一种基于英伟达tx2处理器的无人机运动跟踪系统。



背景技术:

近年来,随着计算机技术,自动控制理论,嵌入式开发,芯片设计以及传感器技术的迅速发展,让uav能够在更加小型化的同时,拥有更多的处理能力,无人机上的相关技术也受到越来越多的关注。小型无人机拥有操控灵活,续航能力强等优势,从而能够在狭小环境中处理复杂任务,在众多领域都有广泛的应用前景。

但在目前,传统的无人机由于机载处理器计算性能的限制,需要离线进行数字图像处理,即使用无线发送模块讲无人机获取到的图像传到pc或其他高性能处理器中进行处理。然而,在有些对资源、功耗要求比较高的工程应用中,并没有加载这类设备的可行性。因此,急需一种搭载高清摄像头,并且能实时处理视频流的无人机平台,用于处理多种场景下的视觉信息。



技术实现要素:

为了克服现有的无人机控制系统的集成度较低、实时性较弱、性能较弱的不足,本发明为无人机平台提供一种集成度高、实时性强、拥有gpu处理能力的高性能小型的基于英伟达tx2处理器的无人机视觉跟踪系统。

本发明解决其技术问题所采用的技术方案是:

一种基于英伟达tx2处理器的无人机运动跟踪系统,由f450四旋翼机架(1000)、飞行控制板(1100)、处理器载板(1200)、英伟达tx2处理器(1300)组成;其中英伟达tx2处理器(1300)用于实现系统的运动目标检测与跟踪、无人机跟踪飞行等功能;处理器载板(1200)用于实现英伟达tx2处理器(1300)的数据接口扩展和面向系统的电源输出;飞行控制板(1100)用于实现四旋翼飞行器的电机控制和定位飞行;f450四旋翼机架(1000)作为系统的基础构架,用于负责执行英伟达tx2处理器(1300)和飞行控制板(1100)的控制命令,实现跟踪飞行。

进一步,所述f450四旋翼机架(1000)是系统的机械结构基础,1047二叶桨(1001)、直流无刷电机(1002)、飞行控制板(1100)、电机调速器(1101)、光流传感器(1102)、处理器载板(1200)、usb3.0摄像头(1201)、英伟达tx2处理器(1300)均设置在f450四旋翼机架(1000)上;其中,所述四旋翼机架采用轴距为450mm的四旋翼机架,材料为碳纤维和硬质塑料;1047二叶桨(1001)的直径为20.4cm,螺距为11.43cm,材质为塑料,本系统共含有四个二叶桨;所述直流无刷电机(1002)型号为x2212,该直流无刷电机在电压11.1v下的空载转速为10878转每分钟,本系统共含有四个直流无刷电机。

再进一步,所述飞行控制板(1100)中,电机调速器(1101)直接和飞行控制板的电机输出口相连,光流传感器(1102)直接和飞行控制板的i2c接口相连,处理器载板(1200)扩展出来的串行接口直接与飞行控制板的串行接口相连;该飞行控制板的硬件接口包括一个ppm信号输入接口、一个安全开关接口、一个gps信号输入接口、一个i2c信号输入接口、一个电源供电和监测接口、一个microusb接口、3个串型通信接口、一个蜂鸣器接口、四个电机输出接口、六路云台控制接口、一个jtag烧写接口、两个芯片电源指示灯、两个芯片烧写状态指示灯、一个系统活动心跳指示灯、一个系统状态主指示灯、一个microsd卡槽;该飞行控制板采用stm32f427作为主控芯片、stm32f100作为io扩展芯片,电源管理单元采用ltc4417芯片,传感器单元采用l3gd20h陀螺芯片、lsm303d加速度/磁场芯片、ms5611气压芯片、mpu600陀螺/加速度芯片组成具有冗余保护的传感器单元;该飞行控制板运行nuttx实时操作系统,使用px4开源飞控固件并且可以通过串口接收基于mavlink协议的飞行控制命令。

优选的,所述电机调速器(1101)用于实现系统中直流无刷电机(1002)的驱动,该模块接收飞行控制板(1100)输出的脉宽调制信号,通过硬件电路将脉宽调制信号转换为三相电压信号控制直流无刷电机的转速,该电机调速器的工作电流为30a,峰值电流为35a。

更进一步,所述光流传感器(1102)是px4平台发布的一种智能光学流动传感器,该传感器用于在室内或室外进行辅助定位飞行,该模块包含一个mt9v034图像传感器,一个mb1043声纳传感器,该传感器向下安装在f450四旋翼机架(1000)上,通过裁剪和光流法高速计算飞行器的水平位移量,加入声纳传感器采集的高度信息就可以通过i2c接口向飞行控制板(1101)反馈飞行器的相对三维坐标;

所述处理器载板(1200)用于实现英伟达tx2处理器(1300)的接口扩展和面向系统的电源输出;usb3.0摄像头模块(1201)直接与处理器载板的usb3.0接口连接,飞行控制板(1100)直接与处理器载板的串行接口连接,英伟达tx2处理器(1300)通过samtec的连接器ref-186138-02与处理器载板相连;该处理器载板的硬件接口包含一个ref-186138-02接口、一个usb3.0接口、一个电源输入接口、四个串行接口、一个hdmi视频输出接口;该处理器载板采用tps53015电源主控芯片,将12v系统输入电压转换为5v和3.3v,采用apw8805作为从控芯片,将5v转换为1.8v输出;

所述usb3.0摄像头(1201)是系统的视觉输入接口,负责进行图像获取;该摄像头模块与处理器载板(1200)的usb3.0接口相连;该模块使用mt9v034全局快门工业相机作为图像传感器,最大可以采集752x480分辨率下30帧每秒的图像数据;

所述英伟达tx2处理器(1300)是系统的核心处理模块,其包含了图像采集模块(1301)、数据协议转换模块(1302)、运动目标检测模块(1303)、目标坐标提取模块(1304)、飞行轨迹发布模块(1305);该处理器模块通过ref-186138-02连接器与处理器载板(1200)相连;该英伟达tx2处理器拥有2个英伟达denver核心、4个armcortexa57核心、256个pascal架构cuda核心、8gblpddr4内存、64gbemmc闪存;该处理器运行linuxubuntu16.04操作系统,在此之上使用机器人操作系统(ros)协同处理多个任务节点,使用opencv库进行图像运算。

所述图像采集模块(1301)用于负责采集usb3.0摄像头(1201)的实时图像数据,该模块基于cyusb和libusb驱动库进行开发,可以实时采集和控制系统摄像头模块,并且将采集到的图像转换为机器人操作系统标准图像消息发布在机器人操作系统中,本系统采集的图像为30帧每秒、320x240分辨率的图像;

所述数据协议转换模块(1302)是在机器人操作系统中针对mavlink协议的数据转换节点,该模块可以双向转换标准ros数据消息和mavlink数据,使用相关软件接口可以实时获取飞行数据和发布飞行控制命令;

所述运动目标检测模块(1303)用于负责提取场景图像中的被跟踪目标,该模块在机器人操作系统中订阅图像采集模块发布的图像信息,交替使用两个高斯模型进行背景建模,在不断更新背景的同时避免背景模型被前景污染,该模块在计算中将原始图像分割成10x10像素的网格,在每一个网格中提取特征点并且进行匹配和跟踪,根据随机抽样一致(ransac)方法回归获得的像素点对的单应矩阵对网格的高斯模型进行迭代更新,作为场景的背景模型,根据设定的背景与前景的方差阈值将运动目标提取出来;

所述目标坐标提取模块(1304)用于负责将运动目标检测模块获取到的目标图像坐标转换到三维世界坐标系下,该模块根据相机的内参数矩阵和图像内运动目标的尺度信息计算图像的单应矩阵,将运动目标的图像坐标转化到无人机所处的世界坐标系中并且将该坐标并发布到机器人操作系统中;

所述飞行轨迹发布模块(1305)用于负责将视觉跟踪的误差值转换为飞行命令控制飞行器跟踪飞行,该模块订阅机器人操作系统中的目标坐标,将目标坐标与被跟踪目标的历史坐标做差获得目标的位移并且计算当前的飞行器对应坐标,将该坐标作为飞行器航点发布到机器人操作系统中,控制无人机的跟踪飞行。

本发明的优点是:系统的集成度高,可以在小型化无人机上实现在线图像采集和运动跟踪飞行,提高了无人机在线视频图像处理系统的效率。

附图说明

图1为本系统的整体结构示意框图。

图2为本系统的运动目标跟踪飞行流程框图。

图3为本系统的工作流程示意框图。

具体实施方式

下面结合附图对本发明作详细说明:

参照图1~图3,一种基于英伟达tx2处理器的无人机运动跟踪系统,系统由f450四旋翼机架(1000)、飞行控制板(1100)、处理器载板(1200)、英伟达tx2处理器(1300)组成;其中英伟达tx2处理器(1300)用于实现系统的运动目标检测与跟踪、无人机跟踪飞行等功能;处理器载板(1200用于实现英伟达tx2处理器(1300)的数据接口扩展和面向系统的电源输出;飞行控制板(1100)用于实现四旋翼飞行器的电机控制和定位飞行;f450四旋翼机架(1000)作为系统的基础构架,用于负责执行英伟达tx2处理器(1300)和飞行控制板(1100)的控制命令,实现跟踪飞行。

进一步,所述f450四旋翼机架(1000)是系统的机械结构基础,1047二叶桨(1001)、直流无刷电机(1002)、飞行控制板(1100)、电机调速器(1101)、光流传感器(1102)、处理器载板(1200)、usb3.0摄像头(1201)、英伟达tx2处理器(1300)均设置在f450四旋翼机架(1000)上;其中,所述四旋翼机架采用轴距为450mm的四旋翼机架,材料为碳纤维和硬质塑料;所述1047二叶桨(1001)的直径为20.4cm,螺距为11.43cm,材质为塑料,本系统共含有四个二叶桨;所述直流无刷电机(1002)型号为x2212,该直流无刷电机在电压11.1v下的空载转速为10878转每分钟,本系统共含有四个直流无刷电机。

所述飞行控制板(1100)用于实现飞行器的飞行控制,电机调速器(1101)直接和飞行控制板的电机输出口相连,光流传感器(1102)直接和飞行控制板的i2c接口相连,处理器载板(1200)扩展出来的串行接口直接与飞行控制板的串行接口相连;该飞行控制板的硬件接口包括一个ppm信号输入接口、一个安全开关接口、一个gps信号输入接口、一个i2c信号输入接口、一个电源供电和监测接口、一个microusb接口、3个串型通信接口、一个蜂鸣器接口、四个电机输出接口、六路云台控制接口、一个jtag烧写接口、两个芯片电源指示灯、两个芯片烧写状态指示灯、一个系统活动心跳指示灯、一个系统状态主指示灯、一个microsd卡槽;该飞行控制板采用stm32f427作为主控芯片、stm32f100作为io扩展芯片,电源管理单元采用ltc4417芯片,传感器单元采用l3gd20h陀螺芯片、lsm303d加速度/磁场芯片、ms5611气压芯片、mpu600陀螺/加速度芯片组成具有冗余保护的传感器单元;该飞行控制板运行nuttx实时操作系统,使用px4开源飞控固件并且可以通过串口接收基于mavlink协议的飞行控制命令;

所述电机调速器(1101)用于实现系统中直流无刷电机(1002)的驱动,该模块接收飞行控制板(1100)输出的脉宽调制信号,通过硬件电路将脉宽调制信号转换为三相电压信号控制直流无刷电机的转速,该电机调速器的工作电流为30a,峰值电流为35a;

所述光流传感器(1102)是px4平台发布的一种智能光学流动传感器,该传感器用于在室内或室外进行辅助定位飞行,该模块包含一个mt9v034图像传感器,一个mb1043声纳传感器,该传感器向下安装在f450四旋翼机架(1000)上,通过裁剪和光流法高速计算飞行器的水平位移量,加入声纳传感器采集的高度信息就可以通过i2c接口向飞行控制板(1101)反馈飞行器的相对三维坐标;

所述处理器载板(1200)用于实现英伟达tx2处理器(1300)的接口扩展和面向系统的电源输出;usb3.0摄像头模块(1201)直接与处理器载板的usb3.0接口连接,飞行控制板(1100)直接与处理器载板的串行接口连接,英伟达tx2处理器(1300)通过samtec的连接器ref-186138-02与处理器载板相连;该处理器载板的硬件接口包含一个ref-186138-02接口、一个usb3.0接口、一个电源输入接口、四个串行接口、一个hdmi视频输出接口;该处理器载板采用tps53015电源主控芯片,将12v系统输入电压转换为5v和3.3v,采用apw8805作为从控芯片,将5v转换为1.8v输出;

所述usb3.0摄像头(1201)是系统的视觉输入接口,负责进行图像获取;该摄像头模块与处理器载板(1200)的usb3.0接口相连;该模块使用mt9v034全局快门工业相机作为图像传感器,最大可以采集752x480分辨率下30帧每秒的图像数据;

所述英伟达tx2处理器(1300)是系统的核心处理模块,其包含了图像采集模块(1301)、数据协议转换模块(1302)、运动目标检测模块(1303)、目标坐标提取模块(1304)、飞行轨迹发布模块(1305);该处理器模块通过ref-186138-02连接器与处理器载板(1200)相连;该英伟达tx2处理器拥有2个英伟达denver核心、4个armcortexa57核心、256个pascal架构cuda核心、8gblpddr4内存、64gbemmc闪存;该处理器运行linuxubuntu16.04操作系统,在此之上使用机器人操作系统(ros)协同处理多个任务节点,使用opencv库进行图像运算;

所述图像采集模块(1301)用于负责采集usb3.0摄像头(1201)的实时图像数据,该模块基于cyusb和libusb驱动库进行开发,可以实时采集和控制系统摄像头模块,并且将采集到的图像转换为机器人操作系统标准图像消息发布在机器人操作系统中,本系统采集的图像为30帧每秒、320x240分辨率的图像;

所述数据协议转换模块(1302)是在机器人操作系统中针对mavlink协议的数据转换节点,该模块可以双向转换标准ros数据消息和mavlink数据,使用相关软件接口可以实时获取飞行数据和发布飞行控制命令;

所述运动目标检测模块(1303)用于负责提取场景图像中的被跟踪目标,该模块在机器人操作系统中订阅图像采集模块发布的图像信息,交替使用两个高斯模型进行背景建模,在不断更新背景的同时避免背景模型被前景污染,该模块在计算中将原始图像分割成10x10像素的网格,在每一个网格中提取特征点并且进行匹配和跟踪,根据随机抽样一致(ransac)方法回归获得的像素点对的单应矩阵对网格的高斯模型进行迭代更新,作为场景的背景模型,根据设定的背景与前景的方差阈值将运动目标提取出来;

所述目标坐标提取模块(1304)用于负责将运动目标检测模块获取到的目标图像坐标转换到三维世界坐标系下,该模块根据相机的内参数矩阵和图像内运动目标的尺度信息计算图像的单应矩阵,将运动目标的图像坐标转化到无人机所处的世界坐标系中并且将该坐标并发布到机器人操作系统中;

所述飞行轨迹发布模块(1305)用于负责将视觉跟踪的误差值转换为飞行命令控制飞行器跟踪飞行,该模块订阅机器人操作系统中的目标坐标,将目标坐标与被跟踪目标的历史坐标做差获得目标的位移并且计算当前的飞行器对应坐标,将该坐标作为飞行器航点发布到机器人操作系统中,控制无人机的跟踪飞行。

无人机中的机器人操作系统作为无人机各个模块的统一管理平台,可以综合处理无人机系统中各个传感器的数据,通过接入系统的光流传感器(1102)、无人机飞行控制板(1100)中的imu传感器、usb3.0摄像头(1201),构成了无人机运动跟踪飞行系统的传感器系统,通过这些传感器数据的融合处理,可以实现在线处理的无人机的运动目标跟踪飞行。

无人机启动后处理器载板(1200)的电源模块检查到系统上电信号后开始工作,向英伟达tx2处理器(1300)、飞行控制板(1100)、电机调速器(1101)供电;英伟达tx2处理器进入工作模式后首先启动linux操作系统,同时飞行控制板(1100)开始工作,飞行控制板启动后首先对飞行控制系统进行自检和传感器校验,自检完成后同时完成以下工作:

(1)启动机器人操作系统内核,作为其他节点程序的基础系统;

(2)启动光流传感器(1102)开始工作,飞行控制板检测到光流传感器稳定后向机器人操作系统发布等待飞行命令信号并且进入待机状态;

(3)启动图像采集模块(1301)、运动目标检测模块(1303)和目标坐标提取模块(1304)开始采集图像并且提取运动目标的坐标;

在上述工作完成之后启动飞行轨迹发布节点(1305)在确认检测到等待飞行命令信号后向系统发布解锁电机命令,延时2s后发布起飞至1.5m命令,这些命令由数据协议转换模块接收后发布到飞行控制板,飞行控制板首先进行解锁电机操作,向电机调速器(1101)发出启动信号,电机进入怠速旋转状态,随后飞行控制板收到起飞命令,进入起飞状态,飞行器起飞并且达到设定的1.5m高度后进入悬停状态,无人机在悬停状态下开始等待英伟达tx2处理器的飞行航点命令。

飞行轨迹发布模块(1305)在检测到无人机处于悬停状态后就开始接收目标坐标提取模块发布的运动目标坐标信息,接收到后由目标的坐标信息计算出飞行器对应的跟踪航点坐标,将该航点由数据协议转换模块转换后发布给飞行控制板。

飞行控制板(1100)在飞行器悬停状态下第一次接收飞行器航点命令时会按照起飞位置作为原点坐标,将规划从原点坐标到航点坐标的最短轨迹进行飞行,达到设定的航点后继续悬停状态;飞行器在悬停状态下若不是第一次接收飞行器航点命令,按照上一次的航点坐标规划一条从上一次航点坐标到这一次航点坐标的最短轨迹进行飞行,达到设定的航点后继续悬停状态。

飞行轨迹发布模块(1305)在检测到运动目标静止超过20秒后自动发出飞行器降落命令,由数据协议转换模块转换后发布给飞行控制板,飞行控制板结束悬停状态,进入降落状态,在降落状态下,飞行器的降落速率由飞行器高度确定,飞行器高度超过2米下降速率为1米每秒,飞行器高度小于2米下降速率为0.5米每秒;飞行器在降落过程结束后会进行落地检测,若飞行器已经着陆则飞行控制板向电机调速器发出锁定电机信号,电机停转,飞行器结束飞行。

本次飞行任务结束后飞行控制板会将飞行日志写入飞行控制板的microsd卡当中,记录飞行器的传感器数据、传感器状态、错误信息、飞行模式、gps数据、电源信息等数据消息。

在飞行器正常飞行状态下若出现系统模块失败,飞行轨迹发布模块将检测到错误信息并且直接将飞行模式切换到降落模式,飞行控制板执行自动降落,检测到着陆后飞行控制板锁定电机,电机停转,结束当前飞行任务。

上述实施方式为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的修改、替代、组合、裁剪,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1