基于远程控制的双轮安防机器人系统设计

2018-01-18 03:27潘小琴钦盼琛
自动化与仪表 2017年5期
关键词:服务器控制器传感器

李 森 ,潘小琴 ,钦盼琛 ,张 普 ,闫 琦

(1.西南科技大学 智能机器人创新实践班,绵阳 621010;2.西南科技大学 工程技术中心,绵阳 621010)

安防产业在保障公共安全方面起着举足轻重的作用,传统安防分为人防措施和视频监控两大类。人防措施存在监守自盗、玩忽职守、防盗值班和危险环境巡逻时人身安全风险高等隐患[1];视频监控则因其固定安装,存在死角,易于遭受破坏,且采用有线方式传输致使视频图像布线复杂,后期维护成本高。

双轮机器人属于轮式移动机器人WMR(wheeled mobile robot),具有体积小、行动灵活、结构简单、适应性强等特点[2],在短途代步、军事、环境侦察、安防等领域有着广泛的应用[3]。针对传统安防的不足,将双轮机器人应用于安防系统,值班人员可以使用智能手机或者电脑等终端设备,通过无线方式控制机器人在工厂车间、仓储库房、危险环境和家庭空间等区域活动,监视设备运行、环境变化、人员活动等情况,及时发现设备故障、火灾警情、煤气泄漏及非法入侵等安全隐患。同时,值班人员通过远程操控机器人,可避免进入危险环境作业,保障自身安全。

安防机器人系统,采用STM32系列芯片作为双轮机器人的处理器,控制各模块之间的相互配合,实现机器人对现场状况的采集和自动报警。值班人员通过登录远程服务器实时获取现场情况的视频和感知数据,同时可以控制机器人抵近观察并主动介入。

1 安防机器人系统总体设计

安防机器人系统,采用客户端/服务器(C/S)结构,以双轮机器人作为服务器,智能终端设备作为客户端,系统结构示意如图1所示。机器人使用摄像头采集视频图像,通过各种传感器采集环境数据,值班人员通过智能手机或者电脑等终端设备自带的WiFi技术接入Internet网络,使用域名访问服务器,可查看机器人传输的视频图像及数据,同时可以通过网页中的控件控制机器人的行动,进行重点观察。为了实现该双轮机器人远程监控等功能,机器人需要实现车体平衡控制、视频采集、传感器控制等功能。

图1 系统结构示意Fig.1 System structure diagram

2 系统的硬件设计

安防机器人主控制器选用STM32F103系列芯片,外接电源模块、电机驱动模块、编码器、温湿度传感器、烟雾传感器、热释传感器、六轴运动处理组件及视频采集模块等,硬件结构如图2所示。

图2 安防机器人硬件结构Fig.2 Security robot hardware structure

主控制器为STM32F103系列芯片,连接各子模块,对各子模块采集的数据进行运算和处理,产生控制信号。利用MPU6050六轴运动处理组件采集姿态信息,计算出当前倾斜角度,结合编码器获取的当前速度,产生相应的脉冲宽度调制PWM波,实现双路电机正反转,最终实现小车的平衡直立、前进、后退、左转及右转等动作。

机器人搭载有多种传感器功能模块,用于检测环境参数,预报警情。其中,温湿度传感器DHT11可以检测当前环境的温、湿度,湿度测量误差为5%,温度测量误差为2℃;烟雾传感器MQ-2可以监测是否有火灾发生,标准环境下灵敏度S≥5,设置相对浓度超过100%时触发报警;HC-SR501人体热释传感器用于夜间巡逻时检测是否有人闯入,感应距离3~7 m可调;HC-SR04超声测距模块用于非接触式距离感测,测量距离为2~400 cm,防止人为操作失误导致机器人碰撞事件的发生。

视频采集通过罗技C270网络摄像头实现,采用了MT7620N主控芯片运行网络视频服务器MJPG-streamer[4-5],MT7620N和STM32之间通过串口通信,视频服务器可以实现智能手机或PC端远程登录,查看视频信息及发送控制命令。

3 系统的软件设计

安防机器人系统的软件工作流程如图3所示。服务器程序启动后,首先进行初始化,完成后即开始自检,如果检测到有模块未正常工作则进行错误提示并报警。自检结束后等待终端连接,若入网失败则进行错误提示并报警,若超时或入网成功则进行视频传输、PID控制及各传感器模块的信息采集。客户端程序打开后,输入服务器的IP地址,登录连接到服务器,获取服务器拍摄的实时视频图像和其他传感器检测数据,并可以通过点击控件远程控制机器人的运动。

图3 安防机器人系统软件控制流程Fig.3 Security robot system software control flow chart

3.1 姿态采集与角度融合

安防机器人采用两轮行进,因此准确的姿态采集决定了机器人是否能平稳运行。系统采用MPU6050检测车体姿态,其内部集成了陀螺仪和加速度计组合的捷联式惯导系统。加速度计无累计误差,可长时间稳定运行,但是对振动非常敏感;陀螺仪受机器人振动影响较小,但其自身及放大电路有温漂,同时积分电路会产生累积误差[6-7],因此需要进行滤波和去除噪声处理。

本系统采用Kalman[8-9]滤波算法,对加速度计和陀螺仪的测量信号进行融合。Kalman滤波器作为一种有效的递归滤波器,通过预测某个值并评估预测值的不确定性,计算预测值与测量值的加权平均值,产生测量数据真值的估计值及其关联计算值。最大的权重给予不确定性最小的值。其输出的估计值与原始数据相比,更接近真值。此外,与批处理的滤波技术相比,Kalman滤波不需要历史的估计值和观测数据,能较好地用低成本主控芯片实现。

3.2 串级PID控制

机器人是本质不稳定系统,平衡问题对机器人至关重要。要使得系统稳定,必须采用适当的控制策略。控制分为静平衡和动平衡两方面,由PID控制器实现。

3.2.1 静平衡控制

机器人的实物属性和外界环境变化使其姿态采集的信号不可避免的存在噪声信号,这些噪声经过积分环节会不断地积累,使得积分器失去消除静差的功能并产生控制误差,故采用PD控制器。

传统线性PD控制器存在控制裕度小、鲁棒性低、易出现平衡点自激振荡等问题,因此最终构建了用于双轮机器人自平衡的非线性PD控制器,其表达式为

3.2.2 动平衡控制

动平衡控制包括了对前进、后退和左右转向的控制。对于前进和后退的控制,即双轮机器人的速度控制,利用编码器检测到电机当前转速和给定速度,比较两者的差值信号,构建PI控制器得到输出信号为

左右转向控制需要两轮的差速实现,对响应要求较低。为降低成本,简化程序,采用P控制。以垂直地面竖直向上建立转轴z,通过计算机器人绕z轴的角速度和预设值的偏差,改变转角。其表达式为

然而,双轮机器人的静平衡和动平衡存在着矛盾:系统需要控制机器人的行动,而行进和转弯使得机器人处于不平衡状态,为使机器人平衡而不得不减缓机器人的运动,因此必须设置相应的调节机理,如图4所示。

图4 串级PID控制Fig.4 Cascade PID controller block diagram

为了保证直立控制的优先级最高,把速度控制放在直立控制之前,将速度控制的输出作为直立控制的输入,直立控制的输出作为整个系统的输出。然后,在机器人能够平衡和行进的基础上,加入转向控制,即整个系统满足:

通过不断调试PID参数,最终得到一组较优的参数:

3.3 可视化远程控制软件设计

MJPG-streamer是一款视频流应用软件,用于从单一的输入端获取图像并转发到多个输出端,利用网络摄像头的硬件压缩功能进行图像处理,可有效减少CPU的负荷。处理器将摄像头采集到的图像存入缓存中,当PC或手机终端向视频Web服务器发出访问申请时,服务器会将缓存中的图像数据连续发送给视频监控终端,形成视频流。

输入输出过程的数据通过Web服务器进行传输。使用lighttped,PHP建立Web服务器,运用PHP调用shell命令对串口数据进行收发,完成控制信息由服务器的接收端到串口缓冲区的传递。同时,将视频流的数据从MJPG-streamer的接收内嵌到用户的操作界面,保证在用户进行操作的同时可以实时查看视频画面,完成实时控制。在网页上通过调用已封装函数 Forward(),Backward(),TurnLeft(),TurnRight(),Stop()这 5 个函数来控制机器人的前进、后退、左转、右转和停止。调用已封装的传感器函数获取当前环境信息的数据。

4 试验结果

双轮机器人的运动是建立在其姿态准确的基础上,通过上位机得到经Kalman滤波后的角度基本稳定在0°上。机器人实物如图5所示。

图5 机器人实物Fig.5 Physical robot

通过手机或PC端浏览器登录服务器端网址(http://192.168.8.1:81), 即可获取机器人实时视频传输图像。登录界面如图6所示,输入正确账号密码信息即可登录。监控界面实时传输当前视频和各种环境信息,如图7所示。该视频图像清晰、无失真和抖动现象;触摸或点击相应按钮即可控制机器人前进、后退、左转、右转和停止。

图6 终端登录界面Fig.6 Terminal login interface

图7 手机和PC端监控界面Fig.7 Mobile phone and PC monitoring interface

5 结语

本文针对传统安防系统的不足,提出了一种用于安防的双轮机器人系统。系统采用客户端/服务器(C/S)结构,以 STM32F103为主控,采用 MPU6050对机器人姿态的采集并由Kalman滤波来得到最优测量角度,结合串级PID控制器优化策略,快速实现机器人的静平衡和动平衡控制。利用MJPG-streamer构建网络服务器,值班人员可以通过智能手机或PC终端远程实时查看视频和环境参数并控制机器人。试验结果表明,该系统稳定性好、可靠性高、拓展性强,有着广泛的应用前景。

[1]梅涛,陈剑,陈宏炬,等.安防机器人关键技术与产业化前景[J].高科技与产业化,2016,23(5):51-55.

[2]王利清.基于终端滑模控制的两轮移动机器人自平衡实现方法研究[J].制造业自动化,2015,37(13):16-18,30.

[3]梁文宇,周惠兴,曹荣敏,等.双轮载人自平衡控制系统研究综述[J].控制工程,2010,17(S2):139-144,190.

[4]陈恒鑫,林威,张钦宇.基于Mjpg-streamer的移动视频监控系统设计[J].计算机测量与控制,2014,22(11):3597-3599,3608.

[5]肖儿良,毛海军,鞠军平,等.基于开源软件MJPG_Streamer的智能视频监控系统设计[J].微电子学与计算机,2013,30(6):84-87.

[6]姜香菊,刘二林.两轮自平衡机器人角度检测数据融合算法[J].计算机工程与应用,2013,49(8):203-205.

[7]冯智勇,曾瀚,张力,等.基于陀螺仪及加速度计信号融合的姿态角度测量[J].西南师范大学学报:自然科学版,2011,36(4):137-141.

[8]吴友强,纪浩,邹力涵.基于卡尔曼滤波的四旋翼飞行器悬停控制研究[J].自动化与仪表,2013,42(11):1-5.

[9]Liu Kun,Bai Ming,Ni Yuhua.Two-wheel self-balanced carbased on Kalman filtering and PID algorithm[C]//Industrial Engineering and Engineering Management(IE&EM)2011 IEEE 18th International Conference,Part 1,2011:281-285.

猜你喜欢
服务器控制器传感器
工商业IC卡控制器改造为物联网控制器实践
康奈尔大学制造出可拉伸传感器
服务器组功能的使用
理解Horizon 连接服务器、安全服务器的配置
简述传感器在物联网中的应用
PLC可编程控制器相关外置的选择计算研究
“传感器新闻”会带来什么
PowerTCP Server Tool
跟踪导练(三)2
计算机网络安全服务器入侵与防御