一款便携式AUV的遥控装置设计

2016-03-13 18:02沈阳理工大学自动化与电气工程学院董慧颖
电子世界 2016年15期
关键词:无线网树莓手柄

沈阳理工大学自动化与电气工程学院 曹 帅 董慧颖



一款便携式AUV的遥控装置设计

沈阳理工大学自动化与电气工程学院曹帅董慧颖

该文提出了一种基于MOOS-IvP结构体系的便携式AUV遥控装置设计方案。该遥控装置以树莓派微型计算机为主控制器,游戏手柄为按键模块,通过无线网桥实现与AUV的通信,并由锂电池经过分压模块集中供电。软件方面基于MOOS-IvP结构体系,采用ubuntu操作系统,并在code::block编译环境下通过C语言编写程序,完成遥控手柄按键数字信号的解析和控制指令的发送等功能。该遥控装置实现了便携式AUV的前进、后退、转弯、调速等遥控功能。实验表明该遥控装置实现了设计目标,且性能良好。

MOOS-IVP;遥控装置;AUV;树莓派控制器

便携式AUV代表了未来水下机器人技术的发展方向,是当前世界各国研究工作的热点[1]。传统的AUV作业通过计算机与AUV航行控制计算机建立通信实现对AUV进行控制。一方面,由于岸上计算机与AUV距离较远,在AUV完成使命回收过程中,不能有效的确定水面航行环境的安全性,可能发生安全事故。另一方面,考虑到AUV能源的有限,要求AUV尽可能高效的返回以节省能源。针对以上情况,该文提出了一种基于树莓派微型计算机的AUV遥控装置设计方案,通过手持式遥控手柄实现对AUV的控制。该装置可稳定运行于工作环境中,减少安全事故的发生,全面提升AUV的工作效率。

1.系统总体方案

AUV遥控装置的总体结构如图1所示,主要由手持式游戏手柄,树莓派微型计算机,无线网桥收发器等组成。遥控装置的设计目标为:遥控装置根据按键决定AUV的运行模式,通过无线发射接收装置发射指令,并由AUV本体接收指令后实现相应的启动/停止、转向和调速等操作。针对以上设计目标遥控装置分为按键模块、控制器模块、无线发射模块及电源模块等几个模块[2]。

2.硬件系统设计

2.1遥控手柄模块

按键模块由一个北通游戏手柄组成。主要包括四个方向键和六个按钮键,通过usb接口与树莓派控制器模块进行连接。四个方向键用来实现对AUV方向的控制,六个按钮键所实现的功能分别包括启动/停止按键、100转/秒、200转/秒、300转/秒、400转/秒四个速度档位按键。

2.2控制器模块

树莓派是一款基于ARM的微型电脑主板,以SD卡为内存硬盘,卡片主板周围有40个GPIO引脚,四个USB接口和一个网口,可连接键盘、鼠标和网线,同时拥有视频模拟信号的电视输出接口和HDMI高清视频输出接口[3],以上部件全部整合在一张仅比信用卡稍大的主板上,具备所有PC的基本功能。将装有ubuntu操作系统的SD卡插入树莓派的SD卡槽上,HDMI视频输出接口连接到显示器,供电后即可自动启动树莓派图形界面,并可在codeblocks编译环境下进行软件程序编译。

2.3通信模块

由于一般遥控装置的使用需要操作人员在橡皮艇上手动操作遥控装置对AUV进行控制,遥控的有效距离为300米-400米,故采用无线网桥进行通信即可以满足要求。无线网桥采用点对多点的通讯模式,实现AUV主控制仓与上位机和遥控装置的通信。在这种模式下工作的所有AP设备都一样,都选择点对多点桥接模式,所有AP使用相同的SSID。各AP的IP地址位于同IP段,在信道设置上,点对多点桥接模式下的所有AP必须使用相同的信道[4]。

2.4电源模块

遥控装置采用12V、6A的锂电池进行供电。由于12V的供电电压满足无线网桥的工作电压,可以通过锂电池直接对其供电。而树莓派的工作电压为5V,可通过一个电压转换模块将12V电压转换一路5V的电压来对树莓派进行供电。

3.软件系统设计

在整个AUV遥控装置中,控制任务的最终实现是靠软件程序完成的,程序设计的好坏,将直接决定整个遥控装置的质量和效率。程序设计的基本要求和原则主要是实时性、可靠性、简洁性和易修改性。基于以上原则,设计了遥控装置软件部分。

3.1MOOS结构体系

MOOS是一种分布式控制体系结构。其核心思想是将水下机器人的不同子系统抽象为功能相对独立的软件模块,为运行在水下机器人上的各个软件模块提供一个统一、高效、稳定的信息交互环境[5]。所有的信息交互以MOOSDB为中心,呈现星型通信结构,MOOSDB在整个体系结构中处于核心地位,负责协调各种信息在不同模块之间的交换。MOOSDB负责信息的统一分发,从而保证了信息的一致性。每个基本功能抽象为一个独立的模块,功能模块之间没有直接的联系,只能通过MOOSDB获得运算所必须的其他模块的信息。IvP实质上是一个MOOS进程,它的主要功能是使用多目标值最优化的方式来实现行为的自主控制[6][7]。

3.2遥控装置主程序

软件程序设计在ubuntu操作系统的code::blocks开发环境下,采用C语言编程实现。遥控装置的软件程序主要完成遥控手柄的初始化和循环检测按键是否按下[8],当有按键按下时,打开节点并判断是何种类型按键,若为坐标按键类型,将其设定为控制AUV方向的按键,再根据不同按键的不同数字信号值决定分别为上、下、左、右四个方向键;若为按钮按键类型,则将其设定为启动键、停止键和速度键。将各按键解析出来的数字信号映射成命令语句发射到主控制器的MOOSDB中。

3.3客户端程序

为了实现用遥控装置对AUV进行控制,需要在主控制器中添加一个客户端程序,用来订阅打包发送到主控制器MOOSDB中的数据,并解析成相应的控制指令,最后发送给电机实现对AUV的控制。为了避免误操作,只有先接收到启动键指令其他按键指令才会对AUV起到控制作用。在控制AUV过程中,首先需要接收到方向键信息指令,再根据接收到的不同档位速度信息指令控制AUV航行,若未接收到方向键指令则无论接收到何种速度指令均不执行,很好的避免误操的问题。

4.结语

通过调试与试验,由树莓派、无线网桥、遥控手柄等硬件设备,ubuntu操作系统,code::blocks编译环境等软件配置组成的便携式AUV遥控装置具有成本低,体积小,功耗低及性能稳定等特点。该装置可以实现对便携式AUV的启动、停止、前进、后退、转弯、调速等功能,在一定程度上提升了AUV的工作效率。

[1]蒋新松,封锡盛,王棣棠.水下机器人[M].沈阳:辽宁科学技术出版社,2000:304-311.

[2]吴立成,李霞丽,杨国胜等.一种水上行走机器人红外遥控器的设计与实现[J].东南大学学报2013,43(z1).

[3]汪鑫,彭雨薇.基于树莓派的网络监控系统的研究与实现[J].高科技产品研发,2014,(14).

[4]范海英.无线网桥的应用和安全[J].科技信息2010,(9).

[5]Paul M. Newman,“MOOS- A Mission Oriented Operating Suite,”MIT Department of Ocean Engineering, Tech. Rep. OE-2003-07,2003.

[6]M.R.Benjamin,“Interval Programming:A Multi-Objective Optimization Model for Autonomous Vehicle Control,” Ph.D. dissertation,Brown University, Providence, RI, May 2002.

[7]M.R.Benjamin, M. Ground, P.Newman,“Multi-objective Optimization of Sensor Quality with Efficient Marine Vehicle Task Execution,”in International Conference on Robotics and Automation(ICRA), Orlando,pp.3226-3232,2006.

[8]曹恒林.用JoyStick游戏手柄控制LED显示屏视频处理器及专用播放软件[J].现代显示2010,(11).

猜你喜欢
无线网树莓手柄
基于PLC控制的手柄座钻孔攻丝一体机的研发
战斧牛排
基于树莓派的骑行智能头盔设计
一种多功能无线手柄的设计
基于树莓派的远程家居控制系统的设计
让咖啡和无线网走开 伦敦独立书店回归阅读初心
响应面法优化红树莓酒发酵工艺
为什么厨具的手柄不是金属的?
银行家
北大无线网