2. 中国船舶集团有限公司第七一六研究所 江苏 连云港 222006
2. The 716 Research Institute of CSSC, Lianyungang 222006, China
水下作业主要依靠ROV等无人平台完成,在作业过程中,为保证作业任务顺利完成,操控人员需要同时对ROV的运动、观察操控、机械手作业等进行控制,这对作业操控设备提出了功能齐全、操作便捷等高要求。目前国内外主要基于手持控制单元、遥控手柄等操控设备完成作业操控,同时通过运行于操控台上的操控软件实现ROV状态监测,但目前的ROV操控设备及软件通常只能用于对特定型号ROV的操控。
深海空间站具有深海科学研究、深海资源勘探开发、海洋安全保障等多种使命任务,因此需要搭载多种用途和型号的ROV开展协同作业任务,实现各种型号ROV装备的统一操控。针对这一需求,本文开展ROV操控标准及通用操控技术研究,针对ROV操控的硬件,规范ROV操控的信息及电气接口,采用标准接口进行构件化定制,实现操控设备及模块的灵活更换,并通过上层应用软件与操控设备解耦的通用设计方案,满足不同作业任务多型操控设备的接入需求。
1 国外ROV操控技术发展现状PantherPlus型作业级ROV最大作业深度1000 m,水下重500 kg,能够携带105 kg负载,搭载10组无刷推进器、2组液压机械手,可执行包括海洋科考、搜索、打捞、发掘、水下防护等民事及探雷、排爆、搜救、海上安全保释等军事领域任务。该型ROV综合利用手持控制单元、机械手手持控制单元进行水下作业控制。手持控制单元集成了摇杆、电位器旋钮、按钮开关和拨动开关,可实现 ROV 航行操控、推力设置、速度调节、定深/定向运动模式切换、水下灯亮度调节、云台旋转、相机拍照、多相机视图切换、推进器使能、脐带缆收放等操作控制。手持控制单元通过6 m长的电缆与岸基控制单元连接,实现自身供电与信号传输。机械手手持控制单元集成了6组摇杆、1组拨动开关、2组指示灯,可完成2组六自由度液压机械手的作业操控。该单元通过防水接插件连接至岸基控制单元,实现自身供电与信息传输。
Sea-Wolf 2型ROV由加拿大Sharkmarine公司生产研制,最大作业深度600 m,重113kg,可搭载多种观导设备和机械手,配有4组高性能推进器,可实现在恶劣环境下的运动控制,用于水下搜索救援、调查取证、水下威胁排除等任务。该型ROV利用罗技Wingman无线遥控手柄完成水下作业控制。无线遥控手柄集成了多组摇杆和按键,可实现ROV航行操控、速度调节、定深/定向/定高运动模式切换、水下灯开关、云台旋转、多相机视图切换、两自由度机械手操控等操作控制。该手柄通过设置第二功能按键,实现了多个按键的功能复用,极大拓展了手柄功能。无线遥控手柄通过2.4G无线或USB与岸基控制单元连接,实现控制信号传输。无线遥控手柄具体功能描述如图1所示。
SeaBotixLBV200微小型观测用水下工业机器人由美国Teledyne公司开发,部署简单,安装便利,坚固耐用,便于水下工业机器人吊放利用,该类型的ROV最大作业水深达200 m,携带4台推进器、用于水下观测、水下简易打捞、水下事故调查等任务。该型ROV利用手持操控单元完成水下作业控制。手持操控单元集成了摇杆、旋钮和按键,可实现ROV航行操控、速度调节、定深/定向运动模式切换、水下灯亮度调节、云台旋转、多相机视图切换、单功能机械手操控等操作控制。该操控单元大部分功能均通过按键实现,并配合面板的指示灯提示用户ROV当前的运动模式。手持操控单元通过线缆与岸基控制单元连接,实现自身供电和控制信号传输。
2 ROV操控标准信息接口 2.1 航行控制类信息航行控制类信息用于控制ROV航行运动,主要包括ROV纵移、横移、转首、潜浮、定高、定深、定向、定速实时控制指令,以及推进器增益设置等参数配置指令。ROV航行控制类信息如表1所示。
观察控制类信息用于控制ROV水下观测活动,主要包括ROV相机变焦、相机切换、云台旋转、水下灯亮度调节等控制指令。观察控制类信息如表2所示。
作业控制类信息用于控制ROV机械手,主要包括机械手手爪开合、手爪旋转、小臂伸缩、大臂伸缩、大臂旋转等控制指令。作业操控信息如表3所示。
供电电控制类信息用于ROV各设备上断电控制,主要包括ROV上断电、推进器使能、水下灯上断电、声呐上断电、机械手上断电等控制指令。供电控制类信息如表4所示。
针对多种异构接口作业操控设备便捷接入需求,提出一套基于软件功能分层的通用操控设备软件设计思路,实现作业操控功能与操控设备硬件资源的解耦,从而解决由于操控设备的更换导致上层应用软件颠覆变动的问题,同时实现操控功能软件资产的持续积淀,形成作业操控功能软件库。
通用控制系统软件采用3层软件架构,即应用层、中间层和驱动层。应用层主要包含作业操控软件,该软件利用中间层转换的操控设备信息完成ROV等水下作业设备的操作控制。中间层是通用软件的核心,负责解析操控设备指令,执行操控逻辑,管理下层硬件设备,实现和操控设备硬件资源的映射。驱动层主要用于提供操控设备驱动API,供中间层调用,完成对操控设备的控制。3层软件架构做到了硬件与软件之间的彻底隔离,在更换硬件的同时,只需更换对应的硬件驱动层,其上的虚拟硬件接口不变,应用的程序也将完全感觉不到硬件的改变,也不需再对应用层进行修改,能极大节省了硬件平台转换的成本,并保证了ROV通用操作环境的可靠性与稳定性[1],该软件架构如图2所示。
中间层是3层设计中的关键一层,其相对于上层,可严格独立于应用,同样,对下层也可严格独立于操作系统以及硬件,代码完全可以进行移植,为应用层提供一组规范的通用服务和完备的API。中间层负责进行系统管理操作,确定具体的外设型号,管理产品驱动程序,分离上层和底层系统,为软件业务的实现建立规范的接口,适应上层应用的管理要求,完成对具体硬件的管理任务[2]。通过软件抽象技术,将对各种不同硬件的具体操作,抽象为相对应的标准模块,尽管硬件接口和对应的设备驱动程序不同,但提供给应用层调用都是一致的标准接口[3]。如图3所示,各操控手柄的硬件操作封装于驱动层,提供相应API供中间层调用。中间层完成各个设备的注册管理,获得驱动层上传的数据。应用层操作中间层的数据,从而将硬件操作与应用操作完全隔离开。
此外,中间层能够提供事件管理功能,实现对操控设备插入、操控设备拔出、操控设备故障等事件的处理。
4 设备免驱的ROV操控电气接口针对操控设备即插即用需求,需要解决操控设备免驱的问题。目前所有的操作系统都已经内置了通用的HID设备驱动程序[4],因此通过USB电气接口与HID协议,可解决因操作系统升级、跨平台使用带来的驱动升级改变问题。
4.1 HID设备HID (Human Interface Device)是一种常用的USB系统外设类型,通常用于与计算机互相通信。一般来说,USB HID协议定义了HID设备和主机之间的通信流程和通信协议,通用的HID设备可以直接使用HID设备类驱动程序与计算机进行通信,不需要额外安装驱动程序。根据HID设备的用途可以将它划分为以下4类[5 - 6]:
1)普通输入类型设备
包括键盘、鼠标、游戏手柄等。
2)面板控制类型设备
包括开关和按钮等。
3)控制器类型设备
包括遥控电话、遥控电视等。
4)数据接收类型设备
只通过HID协议接收数据,不需要人机交互,包括电压计、电流计等。
4.2 USB HID接口控制器设计参考USB HID协议,USB HID接口控制器和主机之间需建立控制传输和中断传输管道2种传输管道[7]。控制器使用控制的传输管道进行设备枚举,从设备中上传信息,并下发Get请求和Set请求,在设备资源方面占用默认的端点零。控制器使用中断传输管道进行实际的负载数据传输,其内部分配2个中断类型的端点,分别用于数据接收和发送。
在主机的USB接口中,D-和D+线间有下拉信号,当未接USB设备时为低电压信号。当外设接入主机后,会使主机USB接口的D+线电平升高,主机便在硬件上感知到有新的设备接入。主机的USB总线驱动程序便会为新接入的外设提供一个唯一的地址,但在分配新地址前,新新接入的外设的地址也将为0[8]。
主机检测到从机接入后,开始标准设备枚举过程,包括请求和接收设备描述符、设置从机地址、请求和接收配置描述符3个步骤。标准设备枚举之后,进行HID类设备枚举,主机向从机发送Get HID类描述符请求,然后接收到相关描述符。在控制器全部枚举后,系统进入正常的工作状态。在Windows环境下可以调用ReadFile()、WriteFile()函数实现USB HID通信,在Linux环境下可以调用libusb库实现USB HID通信。控制器USB HID接口主从机枚举工作和交互过程如图4所示。
本文规范了多型ROV统一操控的信息接口和电气接口,提出了ROV操控通用软件的设计架构。在此基础上研制ROV通用操控台,该操控台通过标准接口进行构件化定制,可实现操控设备及模块的灵活更换,满足深海空间站不同作业任务多型ROV装备的接入需求。
[1] |
陈波, 陈浩敏, 郭晓斌, 等. 一种通用继电保护软件平台的设计[J]. 自动化技术与应用, 2018(5): 77-80. |
[2] |
陈照宇. 通用性继电保护装置软件平台设计与开发[D]. 北京: 华北电力大学, 2013.
|
[3] |
陈浩敏, 郭晓斌, 陈波, 等. 基于四核ARM处理器的变电站智能电子设备平台设计[J]. 自动化技术与应用, 2018, 37(6): 97-101. |
[4] |
李春彪. USB 接口技术与研究[D]. 南京: 南京理工大学, 2004.
|
[5] |
滕鹏, 姜昌华, 王春慧, 等. 基于HID类的USB手势输入系统设计与实现[J]. 数字技术与应用, 2017(2): 180-181. |
[6] |
刘春林, 基于USB协议键盘信息快捷输入技术研究[D]. 哈尔滨: 哈尔滨工业大学, 2017.
|
[7] |
王晓东. 基于STM32的USB HID接口多功能控制器设计[J]. 唐山学院学报, 2020, 33(3): 21-26. |
[8] |
王允. 基于HID类的红外触摸屏的研究与实现[D]. 合肥: 安徽大学, 2014.
|