Technique and Method 基于路径规划的室内小车定位系统 李佳佳,李 智,管四海 (西安电子科技大学机电工程学院,陕西西安710071) 摘 要:针对现有室内定位技术模型复杂、成本高等问题,设计了一种基于路径规划的室内小车定位系统。该系统的主控芯片 选用STM32FlO3ZET6,偏角测量模块基于HMC5883L,障碍处理模块选用HC.SR04;另外,采用极坐标的表示方法,给定室内初 始位置和目标点,测出各目标点相对于初始位置的偏角和距离,依据相对偏角和相对距离规划小车的行走路径。实际环境测试 表明,该系统不仅能使小车准确到达目标点,而且还能有效避障。 关键词:室内定位;路径规划;极坐标 中图分类号:TN96 文献标识码:A DOI:10.19358/j.issn.1674—7720.2017.07.025 引用格式:李佳佳,李智,管四海.基于路径规划的室内小车定位系统[J].微型机与应用,2017,36(7):84—87. Indoor vehicle positioning system based on path planning Li Jiajia,Li Zhi,Guan Sihai (School of Electromechanical Engineering,Xidian University,Xi an 710071,China) Abstract:In view of the existing model of indoor positioning technology is complex,high cost,this paper designs an indoor car positioning sys— tern based on path planning.The main control chip of the system is STM32FlO3ZET6,angle measurement is based on the HMC5883L module, obstacle processing module adopts HC—SR04.In addition,the location is expressed by polar coordinates,and indoor initial position and target points are given.Measuring the angle and distance of the target points relative to the initial position,based on the relative angle and relative distance to plan the path of the car.The actual environmental measurement shows that this system can not only make the car reach the target points accurately,but also avoid the obstacles effectively. Key words:indoor positioning;path planning;polar coordinates 0 引言 操作、成本低的特点,可以应用于餐厅服务机器人的设计, 以机器人代替人工送餐,给人们的生活带来便利。 GPS定位系统由于其快速、高效、全球覆盖等特点,被 广泛地应用于汽车导航、工程测量、飞机导航等领域。而 1 系统整体设计 系统整体结构设计如图1,流程如下: 在室内,由于建筑物的遮挡,GPS的信号会减弱,并且精度 满足不了室内定位的要求。现有的室内定位技术主要有 RFID、视频、ZibBee…、蓝牙 、WLAN 等,但由于室内物 体间距离较短,信号存在反射、衍射和绕射等非直线传播 首先需要事先测量小车的起点与各目标点的距离P., P:…P 和角度0。,0:…0 ,并将坐标表示为(P ,0。),(P , 0:)…(P ,0 );然后利用码盘和光电对管测出固定占空比 的情况,再加之现有设备分辨率不足,使得室内定位误差 较大 。 下的车轮转速,并通过LCD1602实时显示,从而通过控制 时间来达到控制小车前进指定距离的目的。利用 HMC5883L电子罗盘测量角度,将电子罗盘的测量数据通 在现有的室内路径规划定位系统中,大多使用栅格构 图法和路标法 进行室内定位,其中栅格构图法是在机器 人行走过程中,实时构建地图并规划路径,但在定位过程 过I c总线传输到主控芯片STM32F103ZET6,主控芯片将 传感器采集的数据进行分析处理,进而控制电机转动使车 中,需要搜索的空间范围很大,若没有很好的简化算法,实 时性很难保证。路标法的定位中,若有一个路标出现故 障,则系统的整体稳定性就会受到很大的影响。本文采用 二维极坐标的方式确定位置,根据各目标点的位置,事先 为智能小车规划好行走路线 ,避免了复杂算法的优化和 圃H 一 ll l -I':r ̄/4 'lZblrw[虻 il' i[ 一参照物的使用,还能有效避障。本系统具有设计简单、易 基金项目:国家自然科学基金(61673310) 84 网■L — 圆 《微型机与应用 ̄2017年第36卷第7期 Technique and Method 前进。在此期间,通过舵机带动HC-SR04超声波模块不 断地转动测距,当测得距离小于某一设定值时,控制小车 停止,并且继续不断检测距离。当撤去障碍物,再按事先 规划的路径继续前进,到达目标点。 2 硬件设计 2.1 主控芯片 源起到了保护作用。电机调速方式为PWM方式,即在周期 固定的前提下,通过控制输出脉宽的不同来进行速度的调 节。 2.4测速模块 测速模块电路设计如图3。其中,光电对管选用 ITR9608,在系统设计时,将码盘固定在电机上,并置于光 该系统的主控芯片选用STM32F103ZET6,此芯片作 为32位ARM微控制器,有着比l6位、8位处理器更强的 数据处理能力、更丰富的外设接口。在该系统设计中,由 于STM32系列微控制器的I c接口稳定性较差,因此采用 电对管的凹槽中,车轮带动码盘转动,将PWM的信号传 输至主控芯片,从而计算车轮的转速,并通过LCD1602实 时显示。 设车轮速度为 ,直径为d,光电码盘的齿数是n,即 IO口模拟I c总线的方式实现稳定的信息传输。选用 PB6和PB7模拟I c总线的SCL和SDA,实现了与 HMC5883L模块的稳定通信。 2.2 HMC5883L模块 车轮转动一周的计数次数为2n,单位时间高低电平的变 化次数为t,则车轮速度: = ×f (2) 霍尼韦尔HMC5883L是一种高集成模块,选其为偏角 测量模块,是因为其具有高达1。~2。的测量精度;同时采 用I c数字接口通信,高效、稳定,程序设计简单。需要特 别注意的是: (1)为防止干扰,使用时应避免该模块直接与金属物 体接触; (2)在电磁干扰较大的室内环境,要对该模块进行校 正 ,以确保测量的准确; (3)由于其测量灵敏,在设置转角时,可以用一个小 范围的值代替特定值。 该系统在设计时,向小车后方加装木板,将HMC5883L 图3测速模块设计 2.5超声波避障模块 该系统将超声波和舵机通过云台结合起来,放在车体 模块固定于木板上,以降低干扰,模块上的 和Y轴即为在 水平面上建立的二维坐标系。下面给出电子罗盘返回角度 0的计算,其中 和Y表示读出HMC5883L寄存器中的值。 的最前端,通过转动舵机获取小车各个方向的距离值,进 行障碍处理。在对舵机的控制中,用不同宽度的脉冲信 号,对应舵机转动的不同角度。选用的HC—SR04超声波 模块测量范围可达2 cm一400 cm,满足该系统对避障精度 的要求,并通过高电平的持续时间计算障碍物的距离,即: 距离=(高电平时间x声速)/2 (3) 0: t (y, )×f、 1+180。 1T, (1) 经过此运算后,将电子罗盘测得的数据范围转化为 0。~360。。即在0。时, 轴所指向的方位为南。 2.3电机驱动设计 3 软件设计 软件设计流程如图4所示,其主要部分包括系统初始 化、采集角度数据、角度的判断、避障等。系统选用Keil uVision5开发工具,选用c语言编程。其中,为了使智能 小车在行走的同时检测障碍,设计了 P7 V - 电机驱动模块电路设计如图2,驱动芯片采用L293, 一个芯片可以驱动两个直流电机,简化了系统电路的设 计,同时,在引脚电平低于一定水平时,芯片停止工作,对电 V P U3 drive en Dl1 RlA A1 12EN Vccl l6 J) Vcc_5V 一 P V 10 ms,计数法,同时定义Bum变量, 保存测距函数执行的次数,从而达到 2 D10 2 mote 1 right j A Y 4A I4Y 4 mote 4 ritht j1m4A D14 2 D13 记录距离的目的。在避障函数中,控 制舵机左转、居中、右转,不断地循 环,达到多方位检测距离的目的。具 40V/l A T1厂、 .-- 、】=】、 , .. 'fl ̄mote2 rig,ht …GNDl GND4 GND2 GND3 6 4OV/1 A 40V/1 D9MOTOR P2A p7V— 出-7 2Y 2Y lO R3A R 2A 3A q dri__Ilrote一.3ritht ’ U.=苎=上J。 。r Dl2 _。T - Vcc2 34EN L293 ve en Dl 0T0R 体程序设计如下: (1)先对系统的外设资源初始 化,然后判断当jiaodu≠预设角时, 2 40V/1 A 2 x40v,1 AF-- 40v,1 A 40V/1 l 100 F 执行右转函数Turn—Right(),直到 图2 电机驱动模块电路图 jiaodu=预设角,执行停止函数 《微型机与应用)2017年第36卷第7期 欢迎网上投稿www.pcachina.com 85 Technique and Method 图4软件设计流程图 Stop(),并使得标志位set:1。 jiaodu=read—HMC5883L(); if(jiaodo>:5&&jiaodu<=355) //预设角度为0 { while(jiaodu>:5&&jiaodu<=355) {Turn—Right(); jiaodu=read—HMC5883L(); { Stop(); set=1: Delayms(2000); l (2)当set:l时,表明已找到指定方向,执行直行函 数Go(),并延迟适当时间,该时间由目标距离和车速决 定。 if(set==1) { set=0; just—ear(); //前进中避障 Stop(); (3)接着获取角度值,判断是否为下一目标点所设角 度,不断循环,直到最后一个目标点停止。 (4)在直行过程中,用TIM2定时器产生1 ms时基信 号,每隔10 ms,执行一次距离检测函数Get—distance()和 障碍处理函数Handle—bar()。并定义一个num变量用来 计数,每过10 ms,num++。 void just—car(void) { int Rum=0; while(num<300) //延迟3 s { if(count一1ms>10) {count一1ms=0; Get—distance(); Handle—bar(); num++: } }} (5)当Get—distance()返回值小于10 cm时,则认为前 方存在障碍,执行障碍处理函数Handle—bar()。 86 void Handlebar() { if(juli—cm<10) { while(1) { 障碍处理 } else Go(); break; } (6)当距离检测函数Get—distance()返回值大于 10 cm时,则认为障碍已经撤走,此时程序通过nHm中保 存的值可以计算出剩余要走的路程。 (7)返回(3)。 4 实际测试 为了测试该系统能准确定位且能有效避障,设计实验 如下: 在室内环境,给定初始位置和各目标点,并假定预 设角为0。,即正南方向,对小车进行直行和转弯定位测 试。为了更易观察实验效果,设定直行距离为50 cm,转 角为90。,避障距离为10 cm。设置预设角时,由于电子 罗盘的灵敏度较高,因此用一定角度范围代替具体的角 50 cm,右转90。,到达点A; 图 目标点分布 接着前进50 cm,再右转90。,到达点B;最后前进50 CNI停 止于点c。在小车前进过程中,将手挡在小车的前方作 为障碍物,当手与小车距离小于10 cm时,小车停止前 进,同时舵机带动超声波模块左右转动测距,若障碍一 直存在,则会循环检测距离,直到将障碍物撤去,此后小 车继续前进剩余距离。实验中测量其运行时距离与角 度的对应关系,并将实际测得的轨迹与理想轨迹进行仿 真,结果如图6。从图6中可知,基于路径规划的室内小 车定位系统,能够在有效误差范围内到达各目标点,完 成室内定位任务。 参考文献 [1]何海平,郭杭,方爽.基于模糊聚类的ZigBee室内定位系统 设计[J].电子技术应用,2016,42(5):7l一77. [2]陈国平,马耀辉,张百珂.基于指纹技术的蓝牙室内定位系 统【J].电子技术应用,2013,39(3):104—107. 《微型机与应用)2017年第36卷第7期 [4]宋婷.室内移动机器人路径规划与定位技术研究[D].西 安:西安电子科技大学,2011. [5]JARVIS R.Distance transform based path planning for robot navigation[M].Singapore:World Scientific,1993. [6]刘诗斌,冯小毅,李宏.基于椭圆假设的电子罗盘误差补偿 方法[J].传感器技术,2002,21(1O):28—33. (收稿日期:2016—11—10) 作者简介: 李佳佳(1992一),男,硕士研究生,主要研究方向:嵌入式系 p/cm 统设计与应用。 图6实际轨迹与理论轨迹对比 李智(1961一),通信作者,男,博士,教授,主要研究方向:复 杂网络,博弈演化,自适应滤波算法。E-mail:jiali—xd@163.com。 [3]刘溜辛,孙建利.基于能效的WLAN室内定位系统模型设 计与实现[J].仪器仪表学报,2014,35(5):1169-1178. 管四海(1990一)男,博士研究生,主要研究方向:自适应信 号处理。 (上接第77页) [10]米尔萨德・卡普塔诺维克.高压断路器[M].王建华,闫 静,译.北京:机械工业出版社,2015. [1 1]GAMMON T,MATTHEWS J.The historical evolution of ar— cing—fauh models for low--voltage systems[C].IEEE Industri— al and Commercial Power Systems Technical Conference, 1999:1108—1117. 作者简介: 陈凯(1992一),男,硕士,主要研究方向:小电流接地系统故 障信号的提取与辨识。 王金全(1964一),男,博士,博士生导师,主要研究方向:新 能源发电与智能微电网。 严望(1985一),男,博士,主要研究方向:新能源发电与智能 (收稿日期:2016-11-01) 微电网。 (上接第80页) [7]胡宝权,赵荣珍,马再超.基于LabVIEW的数据采集与反 [12]刘伟立,孟文俊,王鹏锦.PID算法在LabVIEW中的实 现[J].成组技术与生产现代化,2007,24(4):60.62. [13]刘镇,姜学智,李东海.PID控制参数整定方法[J].电子 技术应用,1997,23(5):4 . (收稿13期:2016—11—14) 馈控制通讯系统[J].仪表技术与传感器,2011(12):32— 34. [8]朱力奥.匀强磁场产生装置的设计[J].大学物理,2014, 33(4):49—52. [9]王之魁,樊庆文,王德麾,等.基于亥姆霍兹线圈的均匀磁 场发生器设计分析及应用[J].医疗卫生装备,2014, 35(10):1—3. 作者简介: 苏13建(1970一),男,博士,副教授,主要研究方向:嵌入式 系统、智能信息处理。 [10]黄坚.自动控制原理及其应用[M].北京:高等教育出版 社。2009. 孟得光(1989一),通信作者,男,硕士研究生,主要研究方 向:信号与信息处理。E—mail:mengdegnang@qq。com。 李思(1993一),女,硕士研究生,主要研究方向:智能信息处 理 [11]杨智,陈雨琴.基于LabVIEW的PID自整定控制器设 计[J].化工自动化及仪表,2015(11):1188—1191. (上接第83页) [5]刘俊勇,沈晓东,田立峰,等.智能电网下可视化技术的展 (收稿13期:2016—10.13) 望[J].电力自动化设备,2010,30(1):7—13. [6]郭威,刘三妍,杨宗凯,等.基于MathML的在线公式编辑器 的实现与应用[J].计算机应用研究,2008,25(10):3177— 3180. 作者简介: 陆海应(1985一),男,硕士,高级工程师,主要研究方向:电 力系统控制运行。 [7]胡斌,张晓帆,孔震.基于PI3000平台的电力企业模型可视 化研究[J].计算机应用,2009,29(12):349-351. [8]丘志杰,罗蕾,俸志刚.移动widget引擎设备能力动态扩展 技术[J].计算机应用研究,2011,28(3):991—994. 楼楠(1989一),男,硕士,高级工程师,主要研究方向:电力 系统控制运行。 李林辉(1979一),男,硕士,高级工程师,主要研究方向:电 力信息化管理。 《微型机与应用))2017年第36卷第7期 欢迎网上投稿www.pcachina.coin 87