(南开大学滨海学院,天津 300270)
现今,随着先进技术装备的应用和普及,我国物流业正努力从劳动密集型向技术密集型转变,从传统模式向现代化、智能化升级。但一些具有搬运、码垛、分拣等功能的智能机器人的核心和高精度零件仍然过于依赖进口;在品牌影响力上,本土化民族品牌也相对缺乏。生产技术的主要任务是高效、快速。智能传感自主运输机器人可以代替人进行货物的分类、搬运和装卸,也可以代替人来搬运危险品,从而保证工人的人身安全。随着物联网时代的到来,无人驾驶汽车、无人机、自动售货机等产品的出现,预示着人类即将进入一种新的生活模式。对于工作量大且繁杂的物流分拣而言,智能感知自主运输机器人不仅可以解放人类的双手,也可以推动物流行业的发展。
机器人主要由三部分构成,即传感器检测系统、控制系统、动力系统。传感器检测系统包括OpenMV图像识别模块和超声波以及红外避障模块;控制系统将STM32F103C8T6作为主控芯片;动力系统采用L298N控制带有编码器的直流电机。机器人总体设计如图1所示。
图1 机器人总体设计
机器人利用OpenMV图像识别模块识别货物的条形码。条形码提供货物的路径信息,机器人经程序计算后规划行进路线。行进过程中,图像识别模块实时检测轨迹信息,STM32接收轨迹信息,通过PWM电机使机器人不偏离轨迹。红外数字避障传感器和US-100超声波传感器检测机器人前方是否有障碍物。如果有障碍物,则根据障碍物宽度计算转弯角度,躲开障碍物后回到预定路线继续工作[1-3]。
硬件原理如图2所示。
图2 硬件原理
OpenMV摄像机是一种小型、低功耗、低成本的电路板。它以STM32F427CPU为核心,集成了OV7725摄像机,可以由Python控制。该模块可以利用外部终端触发或执行算法,算法的结果可以用来控制I/O管脚。
HC-SR04超声波模块集成度高,稳定性好,测量距离精确且稳定。该模块利用单片机的I/O触发电平测距,单片机内部利用普通定时器产生一个高电平信号之后,超声波便可以自主发送频率为40 kHz的方波,然后等待信号返回。若有信号返回,单片机I/O口立刻输出高电平,利用高空作业产生的时间计算小车与障碍物之间的距离。
红外发射对管中的发射管发射红外光,机器人离前方障碍物越近,则反射红外光越强;红外接收管的EC电压接近0 V,小于LM3932脚的电压,因此LM393输出低电平,绿色指示灯亮。
实际使用中,红外接收管工作在放大区,即C点电压在不断变化。因此可通过调节LM3932脚的电压来改变灵敏度。
L298N是ST公司出品的芯片,其主要特点是工作电压高,最高工作电压可达46 V,可驱动两台电机,由0 V电源直接调节电压。单片机的I/O口可提供信号,电路简单,使用方便。
另外,我们选取了带有增量式编码器的直流电机。增量式编码器通常有2个输出信号,分别为A相和B相。每个信号都是一个由方波组成的脉冲串,A相和B相的相位差为90°。单片机在接收到A相与B相输入后,根据接收到的相位序列确定电机转向,根据脉冲串的频率确定电机转速,从而实现对机器人运动的精确控制[4-6]。
使用四轮驱动的机器人在运动控制方面非常流畅,4个轮子使整体更加稳定。麦克纳姆轮相对全向轮而言,可以通过其转速和安装方法合成任意方向的合力,能够让机器人全方向移动。80 mm超大麦轮负重可达6 kg,更好地满足了基础物流运输的要求。
机器人整体结构爆炸图如图3所示。
图3 机器人整体结构爆炸图
3.1.1 底盘运动分解
机器人做平面运动时可将其分解为3个独立分量:X轴平动、Y轴平动、yaw轴自转。如图4所示,底盘的运动可分解为3个量:表示X轴运动速度的Vtx,定义向右为正;表示Y轴运动速度的Vty,定义向前为正;表示yaw轴自转角速度的,定义逆时针为正。同时这3个分量一般看作4个轮子几何中心的速度。
图4 麦克纳姆轮车体
3.1.2 计算轮子轴心位置的速度
X、Y轴分量为vx=vtx-ω·ry,vy=vty+ω·rx。同理可以算出其他3个轮子轴心的速度。麦克纳姆轮速度分解图示如图5所示。
图5 麦克纳姆轮速度分解图示
3.1.3 计算辊子速度
图6 辊子速度分解图示
3.1.4 计算轮子速度
从辊子速度到轮子转速的计算使用如下公式:
结合以上步骤,可以根据底盘运动状态解算出4个轮子的转速:
以上方程组为O-长方形麦轮底盘的逆运动学模型,而正运动学模型可以根据逆运动学模型中的3个方程求解。
辊子速度到轮子转速的转换示意如图7所示。
图7 辊子速度到轮子转速的转换示意图
系统主要分为两部分,即避障和图像识别。图像识别又分为识别二维码和识别路径引导线。
系统上电进行自检和各个模块的初始化,此时检测摄像头窗口处是否为二维码,当检测到二维码并获取到相应值时,OpenMV识别对应轨迹,并沿着对应轨迹行驶。在行驶过程中,利用PID算法进行误差矫正,以确保机器人按照规定路线行驶。在机器人行驶的同时,避障传感器实时检测前方是否有障碍物,在检测到障碍物之后进行对应的规避处理,规避之后机器人返回之前的工作路径继续完成相应工作。程序流程如图8所示。
图8 程序流程
机器人采用的快速线性回归算法可以快速返回视野中一条回归直线,并得到直线的斜率、角度或偏移的距离,然后利用直线返回的角度控制机器人运动。若在OpenMV视野中看到的直线为竖直的,即正前方为一条直线,只需控制两侧电机转速相同即可;若在OpenMV视野中看到的直线为左偏,可以控制右边电机转速快于左边电机,向左前方向运动(右前方同理)。
OpenMV的二维码识别采用四元检测算法。同时为防止桶形畸变对识别二维码造成的影响,我们使用OpenMV内置的算法矫正畸变。
脉宽调制(PWM)的基本原理:其控制方式为控制逆变电路开关通断,用脉冲代替正弦波或所需波形。换言之,在输出波的半个周期内形成多个脉冲,令每个脉冲等效电压为正弦波形并且稳定输出。根据一定规律改变脉冲宽度进而改变逆变电路的输出电压和输出频率。
PID控制算法是工程实践中应用最广泛的自动控制器,其具有原理简单、稳定性好、控制参数独立、调整参数方便等特点。
对于机器人的运动控制采用离散位置式PID:
式中:e(k)为本次偏差;e(k-1)为上一次偏差;∑e(k)为e(k)偏差的累计和,k为1,2,...,k;Pwm代表输出。
本文最终实现了智能感知自主运输机器人的功能,其可以通过摄像头模块读取货物条形码并确定货物位置,在运输过程中避开机器人前方障碍物,在寻迹过程中机器人中心线不偏离标识线且能载重2.5 kg以内的物体。
机器人在正常运输过程中能通过摄像头进行图像识别扫描,读出相应信息,并且能够自主避障。通过线的粗细以及颜色的不同辨别货架的位置,并准确到达指定地点。
巡线时OpenMV采集的图像如图9所示。
图9 OpenMV采集的图像
随着电子商务的快速发展和人口红利的消失,快递业对快递和包裹自动分拣的需求越来越大。迄今为止,人力资源的需求相对企业的发展速度而言仍较慢,特别在类似“双十一”等时期,销售量剧增将导致物流延迟,而中小型分拣中心无力承受传统交叉带分拣系统占地面积大、成本高等带来的压力,因此物联网被应用于越来越多的领域。我们始终相信,未来物联网技术可以被物流行业广泛应用[7-10]。