APP下载

管道探测蛇形机器人控制系统设计及仿真

2020-06-05邢利辉王亚慧

小型微型计算机系统 2020年6期
关键词:蛇形舵机上位

邢利辉,王亚慧,邓 蕊

(北京建筑大学电气与信息工程学院,北京100044)

1 引 言

蛇形机器人是一种新型的柔性机器人,可用在各种探测任务中.目前燃气管道正在日益增加,而燃气管道往往深埋地下,经过长期的土壤腐蚀或不可抗拒的自然灾害必将老化,出现泄漏、爆炸等安全事故,鉴于此,我们开发的这款蛇形机器人可在各类燃气管道中进行检测任务.燃气管道的直径从200mm-500mm 不等,有的管道的直径甚至更小.目前可以在管道中进行巡查的机器人多为轮式机器人,这种机器人只适合在较粗的管道中进行探测,而在较细管道中无法进入,并且在竖直管道中也显的无能为力.

为克服上述技术和环境适应性的不足,我们提出了一种利用蛇形机器人检测燃气管道内部环境的方法.蛇形机器人因身体细长,横截面小,灵活性强,适应环境等优点[1,2],可以灵活地进出各种管径和角度的管道,当管径较小时以直线方式探测,在较大的管道中以螺旋方式探测[3].收集实时内部图像和监测数据,因此它可以很好地应用于各种管道检测领域.该蛇形机器人可以对姿态、管道内部图像,温湿度等信息的获取和处理,以达到对传输管道内部的检测和维护.

2 蛇形机器人模块化设计与建模

2.1 蛇形机器人关节设计

与以往管道外部的蛇形机器人不同,该机器人在管道内部运动对本身的关节不可见,所以行走机构有所不同.首先为了适应燃气的圆形管道,蛇关节外部为圆形,其圆形关节外部两端装有两组小车轮,均为从动轮,在模块中添加一个电机并使用齿轮传动,带动后端车轮转动,进而推动机器人前进.其从动轮主要是为了能平滑行走[4].其关节刨面图1 所示.

关节内部主要包括俯仰舵机、旋转舵机、控制器和一些连接件.图中俯仰舵机通过U 型连接件固定后准备与下一个关节相连,另一侧也为一个U 型连接件,该连接件与电机相连,最终电机带动主动轮向前或向后运动,而舵机通过旋转角度控制整个蛇以螺旋方式前进.在不影响舵机旋转的情况下,控制器放置在舵机与电机连接的侧面,为了保证蛇关节较小,经测控制器大小(6.24cm×6.24cm)为预留的空隙大小.经输出的PWM 信号控制俯仰舵机和旋转舵机,在旋转舵机下方是固定件,固定舵机在关节内不晃动,我们可以看到在其下方有预留位置,可以放置传感器和一些连接器件.

图1 蛇关节剖面图Fig.1 Snake joint planing

2.2 ADAMS 建模及仿真

在建立ADAMS 仿真环境后,针对不同管径的竖直管道进行了建模分析,由于我们的蛇关节是可拆卸的,在不同管径中,使用不同多少的单元模块即可完成在管道内部的检测任务,最终使关节按照一定的角度螺旋前行.

和水平运动的管道中比较,在竖直管道中蛇的所有关节重量都是蛇向上攀爬的阻力,所以比水平管道有更大的竖直向上动力才能推动蛇向上爬.

图2 250mm 管道蛇姿态图Fig.2 250mm pipe snake attitude diagram

如图2 是蛇形机器人在250mm 的竖直管道中,从下向上依次将关节起名为J1-J7,选取特殊的关节进行受力分析,规定蛇向上运动方向为Z 轴,垂直于显示面为X 轴,同时垂直于X 和Z 轴方向为Y 轴.首先选取J1 进行受力分析,如图3所示,J1 共受四个力的作用,地面对J1 的引力G1(方向沿Z轴负方向竖直向下),管壁对J1 的支持力Fz1(方向垂直指向于接触面凹面)和管壁对J1 的摩擦力Ff1(方向沿着蛇运动趋势的反方向),相邻关节 J2 对 J1 的作用力 FJ2-J1.其中每个关节共重为380g,所有受力在全局坐标系下进行受力分解得到静力学平衡方程:

从ADAMS 中可输出各个力在X 轴、Y 轴和Z 轴上分力的大小,其中 Ff1x=5.6N,Fz1x=8.6N,FJ2-J1x=-14.2N.Ff1y=15.8N,Fz1y=-9.7N,FJ2-J1y=-6.1N.Ff1z=-12.1N,G1=0.38* 9.8=-3.7N,Fz1z=4.8N,FJ2-J1z=11N,由以上输出的力大小可以看出蛇形机器人满足静力学平衡方程.

图3 关节J1 静力学分析Fig.3 Static analysis of joint J1

通过对管道蛇形机器人的建模仿真,设置好关节的质量、关节之间的扭矩,还可以得到关节之间力矩、旋转的相对角速度等,另外也可以得到蛇在管道内部运动的位移、速度、加速度、相对角速度、相对加速度等值.在250mm 的管道中对蛇形机器人进行仿真得到运动的速度、加速度、位移、角速度,由仿真结果图可以看出机器人在管道内重复的以螺旋方式缓慢前行.

3 控制系统整体结构设计

探测机器人控制系统的功能是将各个执行机构如舵机、电机等的控制以及各类传感器采集的数据传输控制整合到上位机中,实现操作人员的远程控制功能[5].控制系统贯穿整个探测机器人的控制信号传输及数据采集信号传输[6].根据探测机器人的特点,文章设计采用CAN 总线技术设计探测机器人的控制系统[7].

在操作人员电脑端,设计使用组态王软件编译上位机监控系统,并与机器人主控制系统相联,由操作人员在上位机监控系统中,发送控制指令,控制探测机器人的姿态及运动等,如控制各单元模块中舵机的转角,达到控制机器人姿态的目的;控制电机的转动,达到控制器机器人的前进后退旋转等目的;控制传感器数据传输,达到采集管道内各项信息的目的等.上位机向下连接由微控制器控制的主控器单元,主控器通过CAN 总线连接多个从控制器,使探测机器人具备良好的可扩展性,每个模块均由一个俯仰舵机和一个旋转舵机组成,所以每个模块中有两个从控制器分别控制俯仰舵机和旋转舵机,同时CAN 总线也能够满足探测机器人的实时性要求.探测机器人的从控制器采用嵌入式单片机技术,并将探测机器人中应用到的执行机构,如伺服舵机,电机,以及传感器设备搭载在从控制器上,使得每个嵌入式单片机可以独立处理单个单元模块的运动,提高系统的稳定性和实时性.形机器人控制系统整体框架如图4.

3.1 基于CAN 总线的控制方法

根据蛇形机器人的特点,文章构建了以CAN 总线为基础的蛇形机器人控制系统.控制系统的上层设计为上位机监控系统[8],通过在PC 上位机上,构建机器人控制的上位机人机交互界面,作为探测机器人的控制监控平台;上位机再与机器人的主控制器相联,主控制器接收上位机发送的动作指令,并将指令通过CAN 总线系统,发送给挂载在总线上的从控制器.在探测机器人的从控制器上,带载着可由微控制器发出PWM(Pulse-Width Modulation,脉宽调制 )脉冲信号控制的伺服电机及伺服舵机[9].从控制器接收到控制探测机器人运动的指令,即对从控制器各自控制的执行机构发送控制指令,已使机器人做出变换姿态,改变运动状态的动作.

图4 控制系统整体框架Fig.4 Control system overall framework

在蛇形机器人的蜿蜒运动控制中为例,分析它的控制方法.图5 是蜿蜒运动的模型,蛇体相邻关节的相对转角可用公式(1)表示机器人的运动状态:

图5 蛇形机器人蜿蜒运动模型Fig.5 Snake-shaped robot turn motion model

式中α0表示蜿蜒运动的初始角度,n 代表机器人的单元模块数量,l 表示单元模块长度,L 表示机器人的整体长度,Kn表示蜿蜒运动时传播的波的个数,K1表示蛇形机器人运动曲线的曲率偏差,s 表示蛇形机器人后部尾关节沿运动曲线轴线方向的虚位移,i 表示蛇形机器人中的任意关节,VL 表示扰动速度,Vd 表示目标速度.

蛇形机器人运动控制的基本方法是通过改变相邻单元关节之间的相对转角来控制蛇形机器人的运动姿态,上式表明了蛇形机器人虚位移与各相邻单元关节间相对转角φi的关系.当虚位移s 在蛇的运动过程中,随时间变化而改变时,各个模块的关节转角也随之发生改变,进而实现蛇形机器人的连续运动.在控制系统中,不断根据s 的变化来实时计算关节转角,后通过驱动信号使执行舵机完成角度变换.

分布式控制将各个关节的转角计算等运算问题分布在各自的从控制器上.主控制器将运动控制函数中的s 变量,通过CAN 总线网络传递给各个单元关节的从控制器,由各自关节的从控制器自主计算自身关节的变换角度,并在完成全部运算后向主控制器发送一个确认信号,如图6.根据蛇形机器人运动控制函数的特点,可以看出主要的计算变量是s 和i 在确定了单元关节中的硬件系统及各项参数之后,每个单元关节的i,对本关节从控制器来说是确定的,它只需要在CAN 总线上,获取主控制器发送的s 变量,即可由自己根据算法来计算所需改变的角度.主控制器在接收到总线上所有的单元关节的完成计算确认后,发送一个同步信号,各单元关节根据同步信号,统一开始调整自身姿态,以实现蛇形机器人的运动调整.

图6 分布式控制系统Fig.6 Distributed control system

采用分布式控制方式,将各关节的相对转动角度计算交由各自从控制器来完成,这样对主控制器的资源占用大大的降低,也可使节约出资源来处理如其他参数计算,运动规划等任务[10,11].分布式控制方式在机器人搭载的单元关节数越多时,表现的优越性越明显.依蛇形机器人搭载十六个单元关节为研究对象.当采用分布式控制,主控制器只传递变量s 至各个单元关节从控制器,由单元关节再根据自身的i 变量来计算所需变换的角度,所需时间约6ms,主控制器传递变量的周期可降低到37ms.

4 控制器的硬件设计

4.1 总体框架

管道探测蛇形机器人控制器主要由电源模块、STM32 微控制模块、摄像模块、姿态传感模块、可燃气体传感器模块、温湿度传感模块、CAN 总线通信模块组成[12,13].

控制器以STM32 微处理器为核心,姿态传感器将蛇形机器人实时的姿态解算并发送给STM32 主控芯片,主控芯片将信息上传到上位机并实时显示其俯仰角,横滚角和航向角,使管理者或使用者实时掌握蛇形机器人的运动情况[14].温湿度传感器将管道内部的温度、湿度信息采集并传送给主控芯片,经主控芯片进行处理后上传至上位机显示,供管理者判断是否符合温湿度要求.摄像头模块也是最重要的模块之一,将采集到的高清视频信息经主控芯片处理实时回传并显示到上位机界面,可以直观地了解管道中是否存在缺陷、裂纹等异常情况.控制器还设置有CAN 总线通信模块,方便主控制器与上位机的通信与控制[15].

4.2 舵机驱动模块

舵机是管道探测蛇形机器人构成中最重要的组成部分之一,其驱动信号是由主芯片输出的PWM 信号来控制,高低电平是一种周期一定,占空比可调的方波,可以通过一个低通滤波器进行解调,通过控制脉冲宽度即可控制舵机旋转角度,舵机通过外部供电,当接收到主控制器发送的PWM 信号时,蛇形机器人的各个关节开始运动.所选舵机型号为RDS3115MG,小巧且重量只有 60g,尺寸大小为 40×20×40.5mm,工作电压4.8-7.2v,堵转扭矩为15kg/cm.

蛇形机器人共有14 路舵机需要同时控制[16],所以占用定时器的14 路输出.而所选芯片包含12 个16 位的定时器和2 个32 位定时器,完全可以满足任务要求.该蛇形机器人的14路舵机驱动信号由TIM1-TIM4 产生,具体对应如表1 所示.

表1 定时器PWM 信号通道与舵机对应表Table 1 Timer PWM signal channel and servo correspondence table

5 舵机控制程序设计

舵机与外界连接线有三端,分别是电源线、地线和控制线,其中只有控制线与控制器相连,由上位机下传指令给控制器,控制器产生的PWM 信号传输给舵机,经电路板上的IC处理后计算出转动方向,再驱动马达转动,透过减速齿轮将动力传至摆臂,同时由位置检测器(电位器)返回位置信号,判断是否已经到设定位置.舵机控制需要一个高电平时基脉冲,该脉冲一般为0.5ms ~2.5ms 的角度控制脉冲.舵机转过的角度为输入脉宽控制,我们的舵机能在安装固定件和连接件之后以225 度的角度旋转,其对应的控制关系是这样的:0.5ms—0 度;1.0ms—45 度;1.5ms—90 度;2.0ms—135 度;2.5ms—180 度;3ms—225 度;舵机控制模块工作流程图如图7 所示.

图7 舵机控制流程图Fig.7 Steering gear control flow chart

舵机通电启动之后,定时器开始初始化,控制器开始检测舵机旋转标志位是否等于1.若为1,表示有控制舵机的信号传入,然后清零标志位,开始比较舵机实际位置与目标位置偏差,将偏差信号上传至控制器来调整PWM 信号,进而更好地控制舵机.

6 系统测试

6.1 蛇形机器人控制器测试

通过排针的端子与TJA1050 收发芯片相连,之后由接线端子(CAN)与外部的CAN 总线相连.由于CAN 和USB 是共用PA11 和PA12 端口,所以用 CAN 传输时,要将开发板 P9 上的PA11 和PA12 用跳线帽分别与CAN_RX 和CAN_TX 相接.

将所选舵机供电之后,并与控制器相连,由于我们设计的控制器是同时输出多路PWM,即控制多路舵机协调工作,设置控制舵机角度程序并下载到控制器,经测试控制器可精确控制舵机角度,基本实现蜿蜒运动.控制器如图8 所示.

图8 控制器Fig.8 Controller

6.2 整体功能测试及上位机界面显示

图9 蛇形机器人及上位机界面Fig.9 Serpentine robot and host computer interface

文章为分布式控制,将设计好的小型控制器嵌入到蛇的每一节关节中,其中蛇头为主控制器,其余关节为从控制器,蛇形机器人控制器通过CAN 总线连接到上位机,并根据需求完成上位机(组态王)显示界面设计.经调试后,在组态王按键和视频插件中编写脚本语言来实现所需功能,可在组态王视频显示区实时查看蛇形机器人拍摄的管内周围环境,并可以实现缩放、拍照及保存功能.随着蛇形机器人的运动,可以实时显示蛇关节的俯仰角、横滚角和航向角.同时,安装在蛇身上的温度传感器和甲烷浓度传感器等也将管内参数实时上传至上位机显示.由于在实验室测试并没有甲烷,所以甲烷浓度显示0%,另外可以将蛇身上面的温度传感器值上传到组态王并实时显示,如图9 所示为蛇形机器人实物及上位机界面.

7 结 论

利用蛇形机器人的灵活性和可拆卸性,通过控制调整舵机的转角,使蛇形机器人不仅可适应大管径也可适应小管径进行探测,不仅可以在管道内部进行水平探测,并通过螺旋方式可以向上攀爬达到探测竖直管道的效果,即使在管径较小的管道中,蛇形机器人也可以以直线的方式进行穿管并探测.文章对管道探测的蛇形机器人的控制系统进行了设计,对控制器进行了设计与开发,该控制器小巧、灵活,有效减小了蛇关节的大小,其上搭载的各类传感器和通信接口均合理分配,可实时控制蛇的姿态以及实时检测管道内的周围环境、温度等.

目前在燃气管道中的探测蛇形机器人是没有先例的,在燃气管道铺设越来越多的今天,利用蛇形机器人可以大大提高检测效率如燃气泄漏等问题.

猜你喜欢

蛇形舵机上位
能钻过柔软沙地的蛇形机器人
基于速度观测的双余度电液舵机系统容错同步控制
一场史无前例的乐队真人秀
丛林秘境
超音速舵机保护器
基础油“上位”
菜鸟看模型
舵机的应用
“蛇来了”
蛇形魔条凳子