基于μC/OS—II水下异物打捞操作机控制系统的设计
2015-12-08曾源李振卿
曾源 李振卿
摘 要:核电站大修过程中水池区域可能会出现一些需要打捞的异物。针对异物打捞,该文提出了一种基于?C/OS-II嵌入式操作系统的核用水下异物打捞操作机的设计方法。硬件上将各功能节点模块化,采用RS485总线通讯方式,便于系统扩展及维护;软件上将?C/OS-II嵌入式操作系统移植于微处理器中,实现了系统的实时性,同时增强了系统的冗余性。现场水下试验证明,该打捞操作机具有较强的可靠性,同时也验证了该设计方法的可行性和有效性。
关键词:水下机器人;通讯总线;嵌入式操作系统;异物打捞;微处理器
DOI:10.16640/j.cnki.37-1222/t.2015.23.247
1 引言
核电站在大修期间的工作过程中水池里可能有一些异物需要打捞,这些区域通常是人员无法到达的并且可能具有放射性。为此,电站有必要开发具有多自由度的操作机和智能系统应用于反应堆堆芯及构件水池等水下环境中精确打捞。
本文所论述的水下异物打捞操作机应用于核电站日常运行或停堆换料大修期间,乏燃料水池、传输池、构件池及堆芯水池满水情况下,对一些特殊位置进行视频检测及异物打捞,以消除异物对电站可能造成的影响,具有重量轻、可靠性高、操作灵活等特点。
2 总体系统设计
随着自动控制技术的应用和发展,控制系统越来越复杂。控制应用系统已从单机逐渐向多机联网的方向发展,这就需要单机之间或单机与微机之间组成网络以进行相互通信。现有的各种通讯网络总线产品,由于其兼容性差、造价高、维护不便等方面的原因,未能得到普遍应用。
RS485总线作为一种简易、廉价的通信技术,其收发器采用平衡驱动和差分接收,具有抑制共模干扰的能力。总线上允许带多个驱动器和接收器,最新的收发器可带128个节点,用于构建多点通信网络。由于RS485总线具有设备简单、价格低廉、能进行长距离通信的特点,故在工程中得到了广泛应用[1]。
本系统采用分布式控制系统(Distributed Control System,DCS),网络物理拓扑结构采用总线型结构,如图1所示。在这种结构中,所有节点连接到一条总线上,每个节点发送的数据可以同时被所有节点接收,但是每个节点只接收本节点目的地址的数据,所以每次只允许一台设备发送数据。这种网络结构简单,系统可大可小,易于扩展,是目前广泛应用的一种形式。
通过对分布式系统中不同节点进行功能层次划分,即得到了分层式体系结构,如图2所示。这种结构能很好的解决智能和控制精度的关系,但在灵活性、实时性和适应性方面存在缺陷。
该体系结构包括运动规划决策层、任务层和执行子模块三个层次。运动规划决策层完成一些高层的规划决策以及传递给用户必要的信息并接受用户的指令;任务层即协调层,包括对用户指令的解析以及一些可以不在上层控制下自主执行的行为,比如避碰、低电压保护、限位、预定动作等。控制子模块即执行控制层,则是把用户指令转化为实际功能执行动作,或者用自动控制理论和方法高速地控制执行器的运作。
图3为总体系统结构框图,其中控制机箱作为运动规划层,负责完成用户指令的读取、图像的采集压缩存储等;各通讯控制卡作为协调层,负责完成对规划层命令的解析、一些保护动作的自主执行以及各功能模块间的信息通信;驱动模块作为执行层,负责完成对执行机构的运动控制以及过流、过热等自我保护反馈的执行[2]。
3 系统电路设计
在设计过程中,发现各节点在接口以及功能特点上具有一定的相似性,节点控制器可以设计成一块通用的控制卡来完成各项功能,实现各节点模块化,同时具有方便扩展、适应性强等特点。
3.1 控制器的选取
控制器是整个控制系统的核心部件,直接影响到控制系统的功能和性能。因此,合理选用控制系统的核心控制器,对系统的设计至关重要。
根据各节点功能的要求,须要求控制器具备串口、PWM口、SPI口、多个I/O口、AD等常用接口。故此,选择了TI公司推出的MSP430F149作为主处理器,这是一类具有16位总线带Flash的单片机,由于其性价比和集成度高,受到了广大技术开发人员的青睐。该控制器可以在超低功耗模式下工作,可靠性能好,加强电干扰运行不受影响,适应工业级的运行环境[3]。
3.2 视频差分传输电路的设计
作为一类主要依据视频图像完成现场作业的机器人来说,视频图像的质量直接影响到了现场操作的准确性。视频信号在传输过程中对各种干扰信号非常敏感,又需要长距离传输,并且现场有多类大型设备运行,此处考虑采用双绞线方式传输视频信号。
能够用于视频信号传输系统中驱动双绞线的电路有多种形式,可以采用分立元件,也可以采用运算放大器,且有多种运算放大器可以完成单端信号到差分信号的转换。
Intersil公司的EL5171是一款250MHz低功耗集成差分宽带放大器,输入信号是单端而输出信号始终是差分形式,因而主要用于视频传输应用中驱动双绞线。其发送原理图如图4所示。
EL5171内部的IN-与REF连接在一起成为REF脚,REF脚的信号为共模信号的一部分,也是差模信号的一部分。为了达到真正的平衡差分输出,REF脚必须与IN+有相同的偏置电平。对5V供电,由于IN+脚使用一个R3=75Ω的终端电阻被偏置为0V,故REF脚也应下拉接地。
视频信号在双绞线中传输时,由于电阻损耗、介质损耗及辐射损耗,信号功率从进入传输线传送到负载时会衰减掉一些,且衰减量的大小与传输距离和信号频率有关,传输距离越远,信号频率越高衰减越大。经过一定距离的传输视频图像就会变得不清晰,尤其是高频部分,表现为图像的边缘处模糊不清,整体亮度偏暗。因此在发射端必须设置一定的增益,在接收端进行频率加权补偿,即频率越低增益越低,频率越高增益越高,对不同频率呈现不同的传输特性。R1、R2、C2、C3、R15、R16的作用就是设定放大器的基本增益。endprint
4 系统软件设计
控制系统的软件是整个控制系统正常运行的重要环节之一,系统软件的质量直接关系到系统功能的实现。传统的软件控制系统大多采用一个前后台系统,软件结构采用单任务的顺序机制,即应用程序是一个无限循环,循环中调用相应的函数来完成对应的操作,而与时间相关性较强的事件靠定时中断来保证。这种方式编程较为直观,但当系统功能较为复杂时,这种单任务机制很难保证系统的实时性与可靠性。
基于此问题,针对所设计系统功能的复杂性,本文将实时操作系统?C/OS-II应用于系统的软件编程,通过将系统功能细化为几个核心任务,由?C/OS-II实时内核进行调度,实现了多任务的并行运行,大大地提高了系统的实时性和可靠性。同时在软件设计时,采用了一种模块程序设计法,即把整个程序过程分成若干个部分、封装成独立的函数模块,这样易编写调试,并且一个模块可被多个任务在不同条件下调用。
4.1 ?C/OS-II在MSP430上的移植
嵌入式实时操作系统?C/OS-II是基于优先级的抢占式实时多任务操作系统,包含了实时内核、任务管理、时间管理、任务通信同步(信号量,邮箱,消息队列)和内存管理等功能[4]。绝大部分代码用C语言写成,与硬件相关部分用汇编语言编写,而且它的源代码是公开免费的。它是面向中小型嵌入式系统的,包含全部功能模块的内核大约为10K,如果经过裁减只保留核心代码,则可压缩到3K左右。
?C/OS-II是针对嵌入式系统编写的,移植起来十分方便,只需改动部分与硬件相关的代码即可。?C/OS-II的体系结构如图5所示。
?C/OS-II的移植主要集中在三个文件:OS_CPU.H、OS_CPU_C.C和OS_CPU.ASM。
(1)OS_CPU.H文件的修改:定义数据类型为?C/OS-II系统可用类型;定义开关中断两个宏为处理器相应得开关中断函数;设置堆栈增长方向与处理器相一致;任务级任务切换函数OS_TASK_SW()的定义; (2)OS_CPU_C.C文件的修改:声明10个C函数,除堆栈初始化函数*OSTaskStkInit()外,其余函数只需声明不必包含代码; (3)OS_CPU.ASM文件的修改:最高优先级任务开始函数OSStartHighRdy()的编写;任务级任务切换函数OSCtxSw()的编写;中断级任务切换函数OSIntCtxSw()的编写;时钟节拍中断服务程序的编写,根据实际编写一般定时器或看门狗定时器设置的时钟节拍。
4.2 软件系统的设计
软件是在IAR公司的Embedded Workbench下开发的,它提供了方便且功能丰富的界面,使开发和调试的效率大大提高。我们采用它作为开发平台,用C语言来设计系统软件。根据系统的性能指标和技术要求,将应用程序划分为以下几个任务块:
(1)与上位通讯任务:采用通用的RS485的通讯方式,实现上下位机间的控制及传感器信息的传递; (2)各传感器信息采集任务:主要对操作机本体上各传感器数据进行相应采集处理,实现上位机对操作机位姿及运动的控制; (3)车体运动控制任务:实现对操作机速度、位置的控制;(4)云台运动控制任务:实现对摄像机二维云台速度、位置的控制;(5)机械手运动控制任务:实现对机械手大臂、小臂、旋转、手指多自由度运动的控制,
通过划分任务,制定各任务的优先级,实现应用程序的调度过程,即各任务运行状态的切换、任务之间的通讯实现以及各任务相互配合以完成系统功能。
5 结论
该设计方法,为多功能、复杂系统提供了一种新的解决方案。硬件上采用总线方式通信、模块化设计,减少了系统配线,提高了可靠性,易于系统的维护及功能扩展[5];软件上采用嵌入式操作系统,实现了多任务的并行运行,大大地提高了系统的实时性和可靠性。据此方法投产的核用水下异物打捞操作机已成功应用于核电站,设备运行情况良好,满足实际工况需要,缩短了关键路径的时间,节约成本,为大修服务人员提供了便利,也为核电站的安全运行提供了保障。
参考文献:
[1]郝铭,刘景泰,卢桂章.基于RS485总线分布式智能控制系统的设计与实现[J].自动化与仪表,2005,20(02):23—25.
[2]窦普,蔡根,黄冰峰等.基于CAN总线移动机器人控制系统的设计[J].计算机测量与控制,2011,19(12):2975—2978.
[3]魏小龙.MSP430系列单片机接口技术及系统设计实例[M].北京:北京航空航天大学出版社,2002.
[4] 邵贝贝等译.Labrosse Jean J.嵌入式实时操作系统?C/OS-II(第2版)[M].北京:北京航空航天大学出版社,2003.
[5]李治洋,郭威,葛新.模块化水下机器人控制系统设计[J].机械设计与制造,2012(01):36-38.
作者简介:曾源,男,湖南人,工程师,本科,主要从事:换料设备维修。endprint