当前位置:首页 > 嵌入式软件
[导读]自主式水下机器人(Autonomous Underwater Vehicles,AUV)代表了未来水下机器人技术的发展方向,是当前世界各国研究工作的热点。对AUV的实时监测和控制是AUV能否安全高效执行任务的关键之一。本课题针对AUV的体系结构和实际应用,为其设计实现一套高可靠性,通信灵活,简单易用,具有模块化特点的监控系统软件。

0 引言

自主式水下机器人(Autonomous Underwater Vehicles,AUV)代表了未来水下机器人技术的发展方向,是当前世界各国研究工作的热点。对AUV的实时监测和控制是AUV能否安全高效执行任务的关键之一。本课题针对AUV的体系结构和实际应用,为其设计实现一套高可靠性,通信灵活,简单易用,具有模块化特点的监控系统软件。水下机器人实现实际应用的前提条件是具备自主导航能力,自主导航主要研究移动机器人在已知的环境当中,如何从指定起始位姿运动到指定目标位姿,并执行指定的任务。在这种情况下由于环境地图是已知的,所以导航过程始终依赖于先验的环境地图信息。但是随着移动机器人应用范围的不断扩大和移动机器人自主导航问题研究的不断深入,在未知地图环境下的自主导航成为一个需要解决问题。这就需要自主探索技术,以获得环境地图信息。可靠的定位是机器人自主导航的基础,自主导航中的路径规划、路径跟踪等任务的进行都需要机器人能够在运动过程中连续定位。也就是说,机器人在未知环境下的自主导航中:一方面机器人如何在位置环境下确定自身的位姿;另一方面,机器人如何准确描述环境特征建立环境地图。这2个问题成为导航领域的研究难点。为了解决这2个难点就需要移动机器人的同时定位与地图构建算法(Simultaneous Localization and Mapping,SLAM)。在SLAM中,移动机器人使用自身携带的传感器获得环境地图信息,识别标识未知环境中的特征标志,然后根据移动机器人与环境特征标志之间的相对位置和控制量等估计机器人和环境特征的全局坐标。SLAM算法具有重要的理论与应用价值,认为是实现真正的全自主移动机器人的关键。本文“C-RANG-ER”AUV试验平台便是为研究SLAM算法而搭建的,文中介绍了基于该算法的基于Qt的AUV监控系统软件的设计与实现。

1 C-RANGER AUV简介

C-RANGER AUV实验平台采用开架式设计,是一种小型试验用AUV,有2个电子舱和5个水下推进器,搭载有主动声纳、垂直陀螺仪、多普勒测速仪、数字罗盘等传感器2 C-RANGER体系结构 图1是C-RANGER系统的总体框架,主要包括决策控制系统、数据采集与处理系统、数据存储系统、底层控制系统、AUV实体,具体介绍如下:

(1)同时定位和地图构建系统。是机器人的核心算法部分。该系统对各种传感器数据进行分析,根据SLAM算法计算出机器人自身位姿并且构建环境地图。

(2)决策控制系统。包括路径规划与智能控制,利用SLAM算法提供的地图,规划一条从起始点到终点的路径,智能控制利用SLAM提供的位姿数据对比路径信息产生控制信息。

(3)底层控制系统。负责接收决策控制系统的控制指令以驱动推进器,控制AUV的航行姿态,并返回AUV的状态参数,如仓内参数参数、推进器状态等。

(4)数据采集与处理系统。负责采集AUV上搭载的各种传感器的数据和控制器的参数信息,经初步处理后传送到SLAM系统,并保存到数据存储系统。

(5)数据存储系统是AUV的数据中心。负责记录AUV航行过程中的各种数据,并为SLAM系统提供必要的数据。

2 Qt简介

Qt是诺基亚开发的一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。QtCreator是一个用于Qt开发的轻量级跨平台集成开发环境。Qt Creator可带来两大关键益处:提供首个专为支持跨平台开发而设计的集成开发环境(IDE),并确保首次接触Qt框架的开发人员能迅速上手和操作。Qt Creator包含了一套用于创建和测试基于Qt应用程序的高效工具,包括:一个高级的C++代码编辑器上下文感知帮助系统可视化调试器源代码管理项目和构建管理工具。本监控软件正是在Qt Creator开发环境中完成的。

3 AUV监控软件设计

AUV的监控以人机交互的形式实现(如图2所示),主要是对AUV各个模块工作状态的监视以及工作模式的设置,由图3可知,控制模块功能的划分可知AUV监控模块的主要功能包括底层数据处理、AUV状态监视、数据采集控制、手柄遥控、异常处理以及航行路线的设定。运用模块化技术,可以将错误局限在各个模块内部,避免错误蔓延,提高AUV系统的可靠性。还可以利用以前已经被证明是可靠的模块来构造新的系统,这就不但减少了新系统开发的工作量,也提高了系统的可靠性。

该监控模块(如图3所示)采用多线程技术和网络通信实现以及基于Qt的信号与槽机制。多线程技术主要是创建继承Qthread的多个类,实现对数据的接收与处理,手柄控制等多个线程。网络通信则是通过继承QtcpServet的服务器端与底层来实现实时通信,通过网络通信实现对AUV的实时监测。而基于Qt的信号与槽机制则用于通过岸基平台的人机交互界面对AUV实时状态进行监测和控制。三者结合,实现对AUV各个方面的监测和控制,以便AUV能高效准确的工作。

数据采集控制线程(如图4所示),其余的监控线程都采用类似的形式。


4 结语

本文简单介绍了Qt下的监控系统的开发和设计,程序设计上还有很多不足,有待进一步改善提高。基于Qt平台强大的可移植性及其库函数,使程序开发设计起来更具效率。

换一批

延伸阅读

[科技前线] Qt 5.15 RC 发布

Qt 5.15 RC 发布

Qt 5.15 首个 RC 版已发布,开发团队表示目前正在为 Qt 5.15 寻求最后的测试,希望用户在试用后能立即反馈错误。此外,团队希望在5月19日左右发布稳定版,同时确认Qt 5.15.1 将在稳定版发布不久之后推出,以修复 5.15...

关键字: QT

[触控感测] 人机交互将成为未来触控显示的新常态

人机交互将成为未来触控显示的新常态

第一块单色屏用于手机后,触控屏经历了无数次的换代与创新,成为目前最为尖端的工业产品之一,也是各国工业制造的必争之地。伴随5G商用、人工智能等新技术的发展,触控屏走出传统家电行业,更多应用到智能家居、智慧城市、新零售等全新领域。不远的将...

关键字: 人机交互 触控显示

[触控感测] 柔性透明导电膜助力柔性电子的未来发展

柔性透明导电膜助力柔性电子的未来发展

折叠屏手机的发布,让人机交互成为近期的热词。由于5G通信的商用,新技术的飞速发展,催生人们建立以柔性电子器件为媒介,建立人与外界的信息传输系统,实现人类生活娱乐的交互式应用场景。如今,柔性电子技术成为全球范围内电子技术领域的研究热点。...

关键字: 人机交互 折叠屏

[工业控制技术文库] 工控系统中工业数据采集的发展趋势

工控系统中工业数据采集的发展趋势

目前在工业数据采集领域,多种工业协议标准并存,各种工业协议标准不统一、互不兼容,导致协议解析、数据格式转换和数据互联互通困难。 协议转换技术就是将不同的工业通信协议通过协议解析、数据转换和地址空间重映射等技术手段转换成统一协议...

关键字: 工业控制 数据采集

[工业控制技术文库] 工控系统中工业数据采集的关键技术

工控系统中工业数据采集的关键技术

工业数据采集过程,包含多类工业设备接入、多种工业通信网络协议解析、多源工业数据格式转换、实时工业数据存储与预处理等多个环节,为实现多源设备、异构系统、运营环境、人等要素信息的实时高效采集,需要大量 IT、OT 与 CT 核心关键技术支...

关键字: 控制系统 数据采集

嵌入式软件

15479 篇文章

关注

发布文章

技术子站

关闭