APP下载

基于Mindstorms的四轮智能机器人实时控制系统设计

2020-01-03

计算机测量与控制 2019年12期
关键词:转角摄像头驱动

(天津师范大学 软件学院,天津 300000)

0 引言

四轮智能机器人是一个集环境感知、行为控制与规划于一体的综合系统,随着计算机技术迅速发展,四轮智能机器人正朝着智能化方向发展[1]。四轮智能机器人具有智能感知作业能力和任务规划能力,从硬件层次上分析,四轮智能机器人具有多个传感器以及灵活精确驱动系统。四轮智能机器人是科学和技术发展演变必然结果,将机器人应用到焊接、喷漆以及搬运工作之中,能够成为工业领域重要的帮手[2]。将其应用到医疗保健和外太空之中,使其成为人类防御极限中不可替代的重要作用。正因为如此,很多国家机器人技术快速发展,具有速度快、效率高、质量稳定的优势,因此被广泛应用于娱乐、医疗和军事等领域之中。

以Mindstorms四轮智能机器人为研究内容,利用摄像头对四轮智能机器人实时控制系统进行设计,所设计的机器人包括视觉车道保持和紧急制动。利用手机摄像头采集道路图像,通过PC主机图像处理程序处理车道线,进而保证四轮智能机器人能够直接获取车道线,控制偏差信号并发送给机器人,以此完成换道避障功能。针对当前机器人运行状态,将无线网络通信与机器人相互结合,提出了基于Mindstorms的四轮智能机器人实时控制系统设计,使控制端与操作端双向移动。

1 四轮智能机器人结构搭建

四轮智能机器人在Mindstorms现有材料基础上,充分利用不同材料属性,设计出拥有前驱转向和独立悬架的系统结构,如图1所示。

图1 四轮智能机器人结构

转向系统负责控制转向电机,以此证实转向系统可靠性和可行性;驱动系统通过齿轮和万向轴传递,将电机电力提供给驱动轮,通过不断调整,使机器人齿轮转动,为机器人稳定运行提供保障。为了充分检测出机器人正常行驶中前方道路信息,需将手机放置在机器人正前方,保证摄像头视线良好[3]。

针对四轮智能机器人结构搭建,主要是由主控模块、传感器模块、无线通信模块、运动模块以及电源模块组成的。其中主控模块负责对四轮智能机器人大脑控制,及时处理传感器所采集的全部数据,并发送到远程平台之中,通过接收远程端全部指令,促使运动控制模块开始运动;传感器模块负责采集气体、温度、图像数据;无线通信模块负责接收来自主控模块所传输的全部数据,并将传输结果发送给主控模块之中;运动模块是机器人运动执行部分,负责接收主控模块发送的各种指令,通过直流电机驱动实现机器人前进、后退与转弯;电源模块是机器人能量来源,负责提供运动控制模块所需的各种能量[4]。

2 控制系统硬件设计

将运动单元、控制单元以及网络通讯单元都集中在四轮智能机器人上,保证摄像头能够监控多个动态场景,系统硬件设计如图2所示。

图2 系统硬件设计

该硬件是利用随车携带的主机采集周围环境图像信息,并在运动过程中,保证机器人能够随时与周围环境WiFi无线网络连接;远程操作者是根据机器人反馈的信息操控机器人的,一旦发生紧急状况,那么机器人就可直接通过无线网络向集控中心报警。随车携带电脑是系统重要核心设备,也是动力来源,利用智能手机进行双向通信,并通过USB接口将控制指令发送给控制板。伺服电机接收到控制指令后,四轮智能机器人实现双轮差动运动,进而保证硬件具有独立性[5]。

2.1 运动控制模块

运动控制模块电机驱动选用TMC236芯片,如图3所示。

图3 运动控制模块电机驱动芯片

TMC236驱动是一体机驱动,可以与主处理器、电机和编码器形成一个运动控制结构,用来驱动电机感性负载。该芯片采用标准TTL逻辑电平信号,控制两个端口,在不受到外界因素影响下,具备一个逻辑电源输入端,保证内部逻辑电路在低压工作条件下,能够将变化量实时反馈给控制电路之中[6]。

电机驱动芯片内部集成了多个dmos管,能够组成一个H型驱动桥。通过电路为桥臂上开关管提供控制电压,保持其工作频率为350 kHz左右。根据充电泵电路,使外接电容变大,电压上升时间变短[7]。通过电阻输出过流情况,保护电路设置的过电流阈值为15A,如果电流持续时间过长,那么过热保护将关闭整个输出装置,一旦结温达到150度时,引脚输出全部信号。

2.2 图像采集模块

图像采集模块是通过USB摄像头进行图像采集的,经过USB接口实现图像数据传输。该模块包含单片机控制ISP-PLD器件的图片采集处理系统,通过PC主端与单片机串联,实现图像数据的高效传输;该模块用的组件包括图像采集卡、处理卡、智能相机以及嵌入式板卡和设备,其中采集卡是系统重要组成部分,负责控制摄像机拍照,能够实时采集数据,并为PC主机提供高速接口;处理卡为系统增加图像分析与处理功能,在提高图像信号实时处理能力基础上,大大降低系统对图像处理过程中对资源要求;智能相机是嵌入式系统集成化的设备,能够提高系统集成度,通过删减接口电路,能够提高系统稳定性;嵌入式板卡和设备为图像采集提供基础设备支持,保证采集结果能够达到最佳化[8]。

2.3 无线通信模块

无线通信模块具有GPRS、短消息双通道传输数据功能,支持远程参数设置与程序升级,相对而言,使用无线通信模块建立专用无线数据传输方式。采用由Nordic公司生产的nRF2401收发芯片,内部集成了大量模块,数据传输速率相对较快,耗电较慢[9]。无线通信模块可分为发送与接收两个部分,都是通过主控模块将数据代码传送到芯片之中,并由此代发,除此之外,该芯片能够接收数据代码,反之也是如此。

2.4 底层控制模块

设置转向电机为中型电机,负责机器人横向运动;设置驱动电机为两个大型电机,负责机器人纵向运动。对于底层控制模块应与应用层接口一致,共同为机器人提供运行方向与速率。其中机器人运行速度应由驱动电机提供,并由车轮半径推算出来,机器人前轮转角控制都是采用PID控制器进行控制的,机器人前轮转角控制器为电机期望转角与实际转角之间的差值,而输出内容为电机所占空比;机器人速度控制器输入值为驱动电机期望与实际转角差值,而输出为电机占空比。

2.5 硬件电路设计

四轮智能机器人硬件电路设计主要包括驱动控制、运动控制以及夜视照明这三个电路模块。

1)驱动控制:在嵌入式系统中,采用Arduino微处理器作为驱动电机核心控制器,以8位atm单片机作为核心处理器,具有大量传感器,并与USB直接通信烧写程序。四轮智能机器人运动机构主要包括两个驱动轮和一个摄像头,充分考虑驱动轮承载扭矩,可利用TMC236驱动芯片对两个驱动轮进行扩展。

驱动控制电路如图4所示。

图4 驱动控制电路

W1和W2分别是低端和高端电源,具有相同电压;E1和E2为反置图腾柱,能够实现隔离,并与Q3和Q4不会同时导通;R2和R3为电源提供电压基准,通过改变基准能够使电路工作信号波形呈现递增趋势;R5和R6为反馈电阻,通过对电压及时采样能够将基极所产生的负反馈形成一个有限数值,该数值能够通过R5和R6调节。

2)运动控制:四轮智能机器人电力驱动保证机器人在不受到外接电源影响下,可长时间持续工作,该机器人以PC主机为智能控制平台,不仅能够享受到主机上所有资源,还能为机器人提供5V电压。运动控制采用差动驱动,在机器人接到上层指令后,通过嵌入式系统控制能够对电机进行前后以及转向角的控制。

3)夜视照明:照明系统能够保障机器人在缺少外界光源照耀下,对周围环境进行控制,并及时识别周围目标。采用电脑子带的摄像头采集视觉信息,利用Mindstorms控制电机转向,以此改变摄像头转向角度。将USB供电的小灯泡安装在平台上,保证机器人能够在黑暗中正常工作。

夜视照明线路如图5所示。

图5 夜视照明线路

两个BG晶体管组成开关延迟线路,当BG晶体管处于截止状态,小电珠将不会发光。当需要照明时,值需按一下俺就,就可通过AN迅速将电荷充满。电容C1就会经过电阻向BG1发射结放电,因此,两个晶体管导通处于饱和状态,小电珠发光。待几秒钟后,电容C1电荷全部放完,两个晶体管将恢复到截止状态,小电珠不再发光。

利用Mindstorms作为四轮智能机器人平台基本优势,能够完成对该硬件驱动的初步设计。

3 软件部分设计

为实现控制系统稳定性,需要在主控芯片中嵌入操作系统软件,选用嵌入式Linux系统,具有一种源码开放操作系统,能够被不同用户使用,保证不同用户对特有资源设定权限。四轮智能机器人传感器主要由手机摄像头和超声波传感器组成,监测到的机器人与前方道路障碍物之间距离。

3.1 车道保持控制策略

车道保持功能主要是基于机器视觉控制实现的:

1)图像处理:将传感器获取的全部图像由GGB转变为灰色图像,设定特殊阈值,将二值化图像通过边缘检测得到车道线信息;

2)预估距离控制:根据模糊规则,模糊化处理输入机器人运行速度,经过模糊推理后,能够得到预估距离控制精确值;

3)转角模糊控制:模糊化处理输入机器人偏离中心线距离变化率,经过模糊推理后能够得到输出量预估瞄准距离精准值。

3.2 换道避障控制策略

在实际场景中,根据换道动机,可分为强制性换道和选择性换道两种,强制性换道指的是车辆在指定区域内进行换道处理,而选择性换道指的是驾驶员为了追求更宽阔形式空间进行换道行为。为了实现传感器数据采集与传输,需要上位机控制软件和下位机控制软件同时对两种换道方式进行控制。

上位机控制软件和下位机控制软件如图6所示。

图6 控制软件

上位机负责收集下位机采集到的全部信息,在用户发出相关指令后,需将编译后的信息传递给下位机,进而实现机器人强制性换道;下位机主要实现传感器采集数据,并将全部数据传送到上位机之中,通过接收上位机发送的指令,能够实现机器人选择性换道,由此完成四轮智能机器人实时控制。

4 功能测试

为验证基于Mindstorms的四轮智能机器人实时控制系统的实际控制效果,利用PC主机上摄像头和麦克风,在局域网上测试控制效果。

4.1 机器人自主充电

充分考虑机器人与系统之间的电源系统,利用Windows自带的电池对电源感知,一旦感知到电能不足时,需通过已经生成的环境地图分析机器人自身电量,并利用栅格运动规划方法计算机器人当前位置和电源之间路径。在运动过程中,机器人传感器不断为其提供前方障碍情况,以此及时修正规划路径。

当充电电源与机器人之间距离仅为45 cm时,需通过充电渡口硬件实现机器人充电。当机器人在限定范围内存在特殊图表时,机器人会利用视觉方法匹配默认图表,并根据未知及时调整机器人自身姿势,引导机器人与充电接口连接,实现自主充电,为功能测试提供带有充足动力的机器人。

4.2 测试环境

测试环境是在Wi-Fi环境下进行的,测试相关参数如表1所示。

依据该参数,行控制与监测机器人不同时间段运行状态,以此测试分析机器人功能。

4.3 转向控制功能测试

以 Mindstorms 为平台设计四轮智能机器人实时控制系统,内部转向电机和驱动电机控制器输入的转角值为期望转角和实际转角差值,输出结果为电机所占的空比。图7所示两种电机转角情况。

图7 两种电机转角

由图7可知,当时间为0.4 s时,转向电机转角为3.8°,驱动电机转角为4°;当时间超过0.5 s时,两种电机转角基本保持不变。两种电机响应上升时间控制在0.1~0.2 s内,基本不超调,电机转角随着时间增加,电机转角基本保持不变,能够保证上层控制执行效果。

在两种电机支持下,分析机器人自动换道过程中,前轮转角情况,当其向左边换道时,机器人前轮转角变化如图8所示。

图8 机器人期望与实际前轮转角对比

由图8可知,机器人实际转角值与期望转角值相差较小,正是因为两种电机转角大致相同,所以实际转角与期望转角误差较小。当时间在1~1.5 s范围内时,机器人转角期望值由0°变为30°;当时间在2~2.5 s范围内时,机器人转角期望值由30°变为0°;当时间在3.5~4 s范围内时,机器人转角期望值由0°变为-30°;当时间在4.5~5 s范围内时,机器人转角期望值由-30°又变为0°。机器人在换道后基本处于道路中心线上,并且航角是保持不变的,因此,良好前轮转角与稳定车速能够保证机器人换道效果。即使后来出现机器人位置或航向角存在偏差,也能由机器人保持良好功能,并予以修正。

为了验证基于Mindstorms的四轮智能机器人实时控制系统的对转向实际控制效果,需将传统控制系统与该系统的转向控制效果进行对比分析,结果如表2所示。

表2 两种系统转向控制效果对比分析

由表2可知,当时间依次为1、2、3、4、5、6 s时,基于Mindstorms控制系统比传统控制系统控制效果依次高33%、30%、40%、40%、40%、39%。由此可知,基于Mindstorms控制系统转向控制效果较好。

5 结束语

以 Mindstorms 为平台设计四轮智能机器人实时控制系统,为结构设计更接近实际情况提供差速转向机构,通过手机摄像头和超声波传感器开发智能机器人辅助系统控制功能,进而实现机器人车道换道。以Mindstorms为操作平台,能够改变原有机器人笨重行动特点,顺应未来机器人灵活特点,使得机器人控制系统得到改变。

该系统的设计增强了系统稳定性,极大提高了系统实时性,但同时系统可靠性还无从验证。运行测试环境是在理论研究基础下进行的,因此研究结果还局限于理论方面。为了提高测试结果可靠性,需对实验数据进行重新采集,并设置优秀实验平台。待系统成熟后可广泛应用于实地勘测、小区巡逻和门禁系统等领域之中,具有较大经济效益。

猜你喜欢

转角摄像头驱动
浙江首试公路非现场执法新型摄像头
数据驱动世界。你得懂它 精读
基于模糊PI控制的驱动防滑仿真系统分析
摄像头连接器可提供360°视角图像
屈宏斌:未来五年,双轮驱动,砥砺前行
百花深处
深入实施创新驱动发展战略
一种门窗转角连接件
奔驰360°摄像头系统介绍
找出摄像头花屏的“罪魁祸首”