基于直流电机驱动的电脑鼠设计

2016-01-29 08:49
关键词:驱动

詹 杰,刘学兵,张 浩

(湖南科技大学物理与电子科学学院,湖南 湘潭 411201)



基于直流电机驱动的电脑鼠设计

詹杰,刘学兵,张浩

(湖南科技大学物理与电子科学学院,湖南 湘潭 411201)

摘要:电脑鼠是一种由微处理器控制的,集环境感知、动态决策与规划、行为控制与执行等多种功能于一体的微型机器人.传统的电脑鼠采用步进电机驱动的设计方案,易于控制但转速较慢.提出了一种基于直流电机驱动的电脑鼠设计方案,该电脑鼠具有成本低、可靠性高等特点.仿真测试结果表明,该系统能成功地完成迷宫竞赛所有任务.

关键词:电脑鼠;驱动;直流电动机

电脑鼠由微控制器、传感器、驱动电机等组成,集感知、判断、行走等功能于一体,能够在迷宫中自动寻找最佳路径的微型机器人,国际电工和电子工程学会每年举办一次国际性的赛事[1-3].该项赛事对于提升团队的动手能力、协作能力、创新能力非常有益.中国已成功地举办了4届电脑鼠走迷宫竞赛,参与比赛的高校和学生人数逐届增多,影响越来越大.

根据IEEE电脑鼠竞赛规则,电脑鼠的传感器、控制器、电机等硬件选型上没有任何限制,只要求电脑鼠外形尺寸不得超过竞赛迷宫的单个单元空间,因而现有电脑鼠种类较多,其最大区别体现在电机驱动设计方案.[6-7]以周立功公司研发的步进电机驱动电脑鼠是国内参与竞赛的首选,控制精度高,但存在力矩小、转速慢等缺点.笔者采用直流电机驱动设计方案,成功地完成了其硬件与软件的设计,系统测试达到了预期目标.该电脑鼠具有转速高、调速方便、负载能力强等特点.

1硬件系统设计

图1 电脑鼠硬件结构

该电脑鼠硬件系统结构如图1所示.系统由电机、红外线传感器、陀螺仪、无线通信及按键、LED、电源等部分构成.无线通信部分主要用来传输数据供调试时使用;按键和LED灯完成控制和状态显示作用;电源采用锂电池,分别为电机、传感器和微控制器等供电.电脑鼠在运行过程中,直流电机启动频繁,将会产生高频谐波.为保证系统工作电压稳定,连续降压2次得到3.3 V直流电压.为消去高频干扰,降低纹波,提高系统电压稳定性,电路设置CP1和PC1等高频电容.系统直流电源设计如图2所示.

图2 直流电源电路

1.1 行走电路

该电脑鼠的行走电路采用直流电机驱动方式,电机型号为Faulhaber-2224.电机自带1个16线双相编码器,5 V直流电源供电,具有A与B这2个输出通道.驱动电机减速比为5∶1,即轮子转动1圈,每个编码器通道可获得80个脉冲信号,具有控制精度较高等特点.电机驱动控制电路如图3所示.

图3 电机驱动控制电路

图3中L293DD为直流电机驱动芯片.在芯片输入信号中,IN1和IN2为电机转向控制信号,使能端EN1接入一路PWM信号,通过改变IN1、IN2电平和PWM占空比即可改变电机的转速和方向.由于L293DD无内置保护二极管,在驱动电路的每个输出端均设置了2个1N4148二极管,以释放电机停止瞬间产生的反向电流,起到保护电路的作用.

1.2 红外线传感电路

电脑鼠在迷宫中行走时需要检测周边墙壁信息.系统的红外线传感器探测墙壁信息,由红外线发射管发射信号,根据接收管接收信号的强度来获得墙壁信息和距墙壁距离.红外线传感器电路如图4所示.

图4 红外线传感器电路

图5 硬件布局

为保证电脑鼠在单元格间距为18.5 cm的迷宫中顺利行进,设计采用功率为0.3 W、发射角为20°的大功率红外线发射二极管.为防止分布集中的传感器相互之间干扰,引入了反向驱动器MC1413,其分时信

号分别对每个发射管进行单独控制.在信号接收上,采用和发射管波长相同的红外线接收二极管,串接电阻,并将此电阻两端电压输入至控制器AD端,从而将迷宫墙壁信息转换成电压信号.

1.3 系统布局设计

电脑鼠设计要求结构紧凑,对电路布局提出了较高要求.由于探测范围较宽(5~15 cm),单个红外线传感无法满足动态范围,因此设计中引入了6个红外线传感器,分别探测电脑鼠左前、右前、左斜、右斜、正左和正右等6个方位信息(图5).

2软件系统设计

根据竞赛规则,电脑鼠必须完成3个阶段性任务,即迷宫搜寻、最优路径计算和最后冲刺.[8-10]电脑鼠从起点至终点,再从终点回到起点对迷宫进行2次搜寻,找到最优路径.程序控制对象为驱动电机的转速和方向,电脑鼠分别采集红外线传感器和编码器数据,计算当前电脑鼠运行运行状态,并在软件算法指令下修正状态.程序具体执行过程如图6所示.

图6 软件系统设计流程

3系统调试

电脑鼠的系统调试工作分为硬件调试和软件调试.硬件调试主要包括红外线传感器控制、电脑鼠行走控制,软件调试主要是迷宫搜索和最优路径规划.

3.1 红外线检测调试

图7 红外线接收二极管信号幅值响应曲线

红外线接收二极管信号幅值响应曲线如图7所示.二极管对高频信号有一定的响应延迟,控制器发出红外线发射信号,约0.5 ms后接收端开始出现变化,并经过2 ms后信号达到峰值,进入稳定状态.这表明单个红外线传感器完成1次数据采集至少需要2 ms时间.在实际传感器测试中,还需考虑AD采样保持时间.为提高控制器效率,本设计利用定时器提供定时信号并完成数据采集任务.

红外线传感器采样规则如图8所示.定时器中断6次为1个采样周期,每次中断采样1个传感器数据,关闭对应的发射管,同时开启下一个将要检测的发射管.红外线传感器数据经采样处理后,运用阈值判断方法获得当前电脑鼠坐标点的四周墙壁信息及距墙壁间的距离信息.前者用来标记迷宫信息,后者用来校正电脑鼠的姿态.

图8 红外线传感器采样规则

3.2 行走控制调试

图9 内环速度控制的PID算法

调试过程由2个控制环组成:内环控制驱动电机的速度,保持目标速度与给定速度一致;外环计算给定的速度.内环速度控制采用PID算法,如图9所示.红外线传感器采样规则在每个控制周期内测量轮子速度,并与给定速度作比较,然后根据PID公式计算新的电机参数,直至电机运行速度和给定速度相等.

图10 外环速度给定控制流程

外环速度给定控流程如图10所示.新的迷宫区域判断取决于2个条件:电脑鼠当前坐标状态信息(有无墙壁)和行进距离超过1个迷宫单元格距离.当行进到新的迷宫区域时,给上层迷宫算法一个反馈,然后根据迷宫算法,决定电脑鼠下一步动作(前进或转弯),并给出2轮的预定速度,直到到达下一个坐标区域.电脑鼠如未到达新区域则按照之前运行状态继续运行.若电脑鼠处于执行状态且两侧有墙,则校准姿态,以消除行进过程中产生的直线误差.

图11 单个电机驱动信号示意

单个电机驱动信号示意如图11所示.为实现上述运动状态,单个电机运转需要3个控制信号,直流电机驱动芯片L293DD的EN1端输入一路PWM信号,IN1和IN2端输入高低电平.

由于EN1控制着OUT1和OUT2的输出使能,当PWM信号占空比发生变化时,输出响应亦发生改变.当占空比高时电机转速快,反之则慢.同时,IN1和IN2电平控制直流电机的转向,当两者电平相反且IN1为高电平时电机正转,IN1为低电平时反转.反之,当两者电平相同时电机停止转动.

根据电脑鼠硬件系统设计结构,其轮胎直径设定3 cm,电机与轮子的转速比为5∶1,编码器规格为16线,由此可以得出编码器单位数据脉冲对应的实际距离为0.12 cm.此外,由于标准迷宫单元格之间距离为18.5 cm,所以电脑鼠在迷宫中直行时,当编码器累计达到154个脉冲计数,则其移动了1个单元格.

由于电脑鼠两轮机械结构存在差异,直行过程中左右轮会产生一定偏差,在速度较快情况下还可能出现轮子打滑现象,导致编码器计数误差的产生.为此,设计借助陀螺仪进行了数据校准,行走误差修正流程如图12所示.

图12 行走误差修正流程

由于实测和理论数据存在一定误差,必须对模型进行修正.表1,2分别给出了实际测量单位编码器脉冲行进距离误差和电脑鼠原地转90°弯编码器的计数值.由此可见,实际计算时需把测量数据拟合到理论计算公式中,从而可以降低误差.

表1 单位编码器脉冲行进距离误差

表2 原地转90°弯编码器计数值

3.3 迷宫最佳路径优化策略

竞赛迷宫由16×16的小方格组成,为此建立一个8位16×16的二维数组,分别表示每个坐标信息,用低4位记录该坐标四面墙壁信息,高4位记录离开该坐标的动作(直行或转弯)和有无搜索该区域信息等.迷宫坐标和方位示意如图13所示,数据表示方法及含义见表3.

北西(0,0) (0,1)…(0,15)(1,0) (1,1)……︙ ︙︙︙(15,0) … …(15,15)东南

图13 迷宫坐标和方位示意

搜索原则指出了电脑鼠在迷宫中行进方向的优先选择原则,常见有左(右)手法则和向心法则.左(右)手法则要求电脑鼠在迷宫中遇到前进方向选择时,优先选择左(右)边方向搜索,直到左(右)边方向进入死胡同,才选择中间方向或相反方向.向心法则以左(右)手法则为基础,其优先方向并不固定,而是以当前电脑鼠坐标为基准,选择距迷宫中心坐标(迷宫终点)最近的方向,当左中右方向均等同时,再按照左中右顺序选择,具体流程如图14所示.在竞赛迷宫中,到达终点路径可能不止1条,由于搜索法则具有一定概率性,实际搜索的迷宫路径可能不是最优的,因此采用堆栈方法尽可能地搜索出所有迷宫路径.多路径搜索原则流程如图15所示.

图14 搜索算法流程

图15 多路径搜索原则流程

4结语

依据IEEE电脑鼠竞赛规则,基于电脑鼠的灵活性和稳定性的考量,为克服传统异步电机驱动电脑鼠转速慢和力矩小等缺陷,笔者提出了直流电机驱动电脑鼠设计方案.在硬件系统设计上,完成了系统各功能模块的设计,软件系统设计上,提出了直流电机驱动电脑鼠的控制算法,实现了迷宫搜索和最优路径规划.与异步电机驱动电脑鼠方案相比,笔者设计的电脑鼠在系统结构的尺寸和性能上优势明显.

参考文献:

[1] IEEE国际电工和电子工程学会.IEEE 电脑鼠(迷宫)竞赛规则和介绍[EB/OL].[2014-10-25].http://www.embedream.com/xgzl/2007 ̄08 ̄28/24.html.

[2] IEEE UCSD.Micromouse Rules R6[EB/OL].[2014-10-25].http://ieee.ucsd.edu/projects/micromouse/rules.php.

[3] 周立功.IEEE电脑鼠开发指南[M].广州:广州致远电子有限公司,2008.

[4] 王磊.基于IEEE电脑鼠走迷宫算法分析与实现[D].济南:山东大学,2013.

[5] 林国恩.电脑鼠的设计与实作[D].台湾:龙华科技大学,2010.

[6] 万玉琼,梁俊有.基于嵌入式微处理器的走迷宫机器人的设计[J].洛阳理工学院学报:自然科学版,2010(4):36-39.

[7] 付秀伟,张骅.基于ARM-M3的电脑鼠硬件设计[J].吉林化工学院学报,2012,29(1):47-49.

[9] 陈锋.环境搜索与路径规划算法的研究[D].吉林:吉林大学,2012.

[8] 李亚洲,严石.电脑鼠软件系统关键技术研究[J].单片机与嵌入式系统应用,2011(5):72-73.

[10] 张新谊.一种电脑鼠走迷宫的算法[J].单片机与嵌入式系统应用,2007(5):84-85.

(责任编辑陈炳权)

Design of DC Drive Micromouse Based on STM32F103

ZHAN Jie,LIU Xuebing,ZHANG Hao

(College of Physics and Electronic Science,Hunan University of Science and Technology,Xiangtan 411201,Hunan China)

Abstract:Micro ̄mouse is a microprocessor controlled micro robot that integrates the multiple functions of environment perception,dynamic decision ̄making and planning,behavior control and implementation.The traditional design of micro ̄mouse uses a stepping motor which is easy to control but has low rotate speed.The paper introduces the design of DC ̄drive micro ̄mouse with low cost and high reliability which fully considers the requirements of competition.Simulation tests shows that this system can complete the task of maze contest successfully.

Key words:micromouse;drive;DC motor

作者简介:詹杰(1973—),男,湖南常德人,湖南科技大学物理与电子科学学院副教授,博士,主要从事传感器网络、移动通信、嵌入式系统等研究.

基金项目:国家自然科学基金资助项目(61377024)

收稿日期:2014-11-25

中图分类号:TP368.1

文献标志码:A

DOI:10.3969/j.issn.1007-2985.2015.02.010

文章编号:1007-2985(2015)02-0039-06

猜你喜欢
驱动
基于模糊PI控制的驱动防滑仿真系统分析
屈宏斌:未来五年,双轮驱动,砥砺前行
Osgood条件下G-Brown驱动的倒向随机微分方程
轨旁ATC系统门控柜接收/驱动板改造
在808DA上使用WIFI进行驱动数据同步
创新驱动·乡村振兴
一种推挽式驱动Ⅶ型弯张换能器的探讨
基于S3C6410的Wi-Fi驱动移植实现
创新驱动 攻坚克难
特刊驱动,不断实现“弯道超越”