

英语原文共 4 页,剩余内容已隐藏,支付完成后下载完整资料
2011年仪器仪表,测量,计算机,通信与控制国际会议
基于ARM9的无线遥控小车系统
王少军,肖晓,赵红伟
中国长春 吉林大学
软件学院 计算机科学与技术系
电子邮件:zhaohw@jlu.edu.cn
摘要
目前无线机器人系统通常由组成由微控制器系统,微控制器有大部分硬件的特性,很难满足很多复杂控制,同时确保系统实时性。基于这种情况,本篇文章是基于ARM9结构的处理器和嵌入式Linux系统,优化和改进的多功能性的实时无线遥控车的容量。机器人系统通过传感器收集数据并将数据通过WIFI的通信,将他们传送到PC控制台,这种设计是以计算机为主要计算确定系统中心。 PC处理之后将任务最后发送到机器人,让机器人去执行它们。通过几次简单实验,例如手信号识别测试等。因此,在已经证明了无线遥控器控制车系统可以及时的完成复杂的多任务控制在保障的前提下,只要在WIFI热点覆盖区,无限远的地方服务器都可以应用当前智能算法在现实生活中实现无线遥控车系统。
关键词:计算机应用,嵌入式开发,无线遥控车,ARM9,ATmega128
I.前言
近年来,智能机器人的主要特点是在复杂的情况下能自动地操纵绕开障碍物并沿着预定的道路轨迹行进。智能在原有机器人系统的基础上增加了一些智能化技术设备: 计算机处理系统主要完成对来自摄像机所获取的图像的预处理、增强、分析、识别等工作 摄像机用来获得图像信息、传感器设备等传感器用来获得当前障碍物传感器用来获得前方、侧方、后方障碍物等信息。 所以移动机器人的应用越来越广泛逐渐变得更加多样化,这使得机器人更接近人们的日常生活。目前,中小型大规模运动机器人通常基于单芯片设计微机无操作系统等FIFA / RoboCup中小型足球机器人,仿生蛇机器人,多脚爬行机器人等。为了使机器人的研究结果可以实际使用解决更现实的问题,越来越复杂控制过程和一些特殊的应用程序对于高实时性要求提出了挑战现有的运动机器人设计模式[1]。
智能移动的机器人的发展瓶颈主要在以下三个方面。首先矛盾是开发成本与硬件性能之间的矛盾。为了降低机器人的硬件设计方面的高额成本,我们经常使用具有成本效益硬件来构建机器人系统。但是,当控制变得更加复杂,精确度逐渐增加的情况下,原始硬件的性能将是很大的不足。然而当再去重新构建机器人不仅会增加成本的输入,但也严重浪费了机器人的生命周期。下一个矛盾是控制的复杂性和实时性能之间的矛盾。当硬件性能不足以完成对较高复杂度的控制任务,系统经常牺牲时间来弥补缺失的硬件性能。所以它带来了一个严重的问题实时。但是,在变得更加复杂之后,精确度逐渐增加的情况下,原始硬件的性能将是很大的不足。然而当再去重新构建机器人不仅会增加成本的输入,但也严重浪费了机器人的生命周期。 第三个矛盾是不同的领域使用平台难以统一。 当移动机器人使用时不同的场合,作为技术的用户不同的背景,不同的习惯,很多软件和硬件工具由于硬件性能有限,或者接口不够就会使用不方便,遇到困难。
II.总体设计
为了解决上述诸多的问题,我们提出了ARM9基于无线遥控车的系统设计方案,这个方案中使用了非常流行的ARM9处理器架构,以及采用优秀的开源操作系统Linux嵌入式操作系统。 我们为了能够提高效率的硬件资源,把这些工作都交给了操作系统任务调度[2] 使用嵌入式应用软件弥补缺乏的硬件资源,其中引入了一些软件工具直接向移动机器人系统完成复杂的智能控制任务和智能决策任务,使我们可以最大限度地利用性能硬件资源,确保稳定性移动机器人与实时的同时可以让我们在成本节约的情况下,确保控制的复杂任务能够有序高效地进行。
图1.无线遥控车系统的总体结构
图1是无线智能遥控车系统的总体结构图。 根据我们的想法,在功能决定结构以及硬件和软件代码原则[3],我们使用分布式结构,将系统分为三个部分:嵌入式遥控器汽车,无线网络设备路由器以及PC控制台。如图1所示,最左侧的图片是嵌入式遥控器控制车。它是移动机器人的主要部分通过WIFI与控制台通信。另外,由于WiFi具有传输距离远,抗干扰能力强、功耗低、传输速率高的优点,设计采用了WiFi无线通信技术。嵌入式遥控车可配备传感器实际需求,实现测量距离,计数,自动避障,数据采集,模式识别,自动寻线,探路等功能。它也可以实现一些基本的机械功能与伺服和发送将收集的数据通过WIFI的通信,传送到PC控制台进行处理。在这篇论文中,嵌入式无线智能遥控车配备了图像传感器,它主要用于实现视频捕获和手势的辨认。
图2显示了嵌入式无线智能遥控车的逻辑电平结构。它的底层是硬件电路层,这是一部分汽车的硬件物理实现。我们选择ARM9开发板作为控制中心,它能够通过相应的接口,外围设备和运动控制电路,可以连接各种传感器来实现数据采集。电机的转速取决于3 个因素:负载、电压和电流。对于一个给定的负载,可以通过脉冲宽度调制的方法来使电机保持稳定的速度。通过改变施加在直流电机上的脉冲宽度,可以增加或减小电机的转速。调整脉冲宽度,即改变占空比,调整电机的速度。一些与运动控制相关的外围设备也可以连接到控制电路,通过探测到控制电路的改变电机的移动遥控车参数,去检测运动的发生。
硬件电路层上面的层是操作系统层。操作系统是内核定义和协调底层硬件的工作方式,操作系统主要通过驱动程序来管理程序。此外,操作系统层能够提高ARM9处理器的工作效率系统实时性能,可以实现系统时间的管理和多任务的并行处理。同时,操作系统提供了一个到用户程序的接口,从而能够使用户可以直接通过系统调用直接与内核系统进行交互。
图2.嵌入式车辆的逻辑结构图
操作系统的上层是应用程序软件层。应用软件提供图形用户界面,其可以由用户选择性地显示所捕获的收集的数据,并对其进行预处理数据,能够在嵌入式端减少无线传动工作压力和减少瓶颈造成硬件特性,提高工作效率。网络发送和接收程序可以从接收数据PC控制台,并将传感器收集的数据发送到PC去处理。
图1的中间部分是无线网络设备。此部分可以是单独的WIFI热点或网络节点设备,这种设备通过WIFI连接到局域网或互联网。当然,由于无线传输技术的局限性,我们的通信的有效性主要受到影响在两个方面,一是距离约束,二是障碍物干扰。为了解决这些存在的不可避免的问题,我们采用的解决方案如图3所示。在图3中可以看到,在遥控车的使用环境中,我们将无线路由器连接到LAN局域网或互联网设备中,那时,PC控制台可以使用独特的IP与嵌入式遥控车进行远程无线通信。这个方法的应用,不仅扩大之间的通信距离遥控车和PC控制台,也实现控制台控制多个无线遥控智能汽车,极大地方便了应用的可能性。
图3.无线通信原理图
图1的右侧是PC控制台。因为有限的尺寸和硬件性能,嵌入式遥控车不仅能够同时给多种多样的数据进行处理和运动控制工作。我们转移了任务处理和控制决策部分到PC控制台,因为 PC有很多优点包括硬件成本低,处理器容量大,处理器性能强大,存储空间大,我们可以使用软件工具,使其能够对不能用于嵌入式的设备作数据处理和决策分析,如Matlab。无线智能移动机器人通过无线网络WiFi等将收集的数据发送到PC进行处理决策,然后PC发送结果返回到移动机器人执行。在另一个主要优点是,复杂的控制过程和决策过程是由PC完成的,而不是移动机器人。通过这种方式,移动机器人可以做任何事情,只要它可以做到接收PC的决策指令。此外,无论什么样的软件工具和智能算法,只要PC可以使用,就可以直接应用于移动机器人应用。这彻底解决了移动机器人在许多方面受到限制的问题,使它能够在许多不同技术背景和用途的应用领域应用的可能性,也大大提高了低成本移动机器人也可以完成的复杂任务的可能性。
III. 硬件设计
系统主要部分的硬件架构如图4所示。嵌入式无线智能遥控车电路是展示在图4的右侧部分,它是使用由FriendlyARM公司生产的mini2440开发板,USB摄像头和USB无线网卡都可以开发板进行连接,主控板上还提供了丰富的高速外设接口,GPIO接口和系统总线接口。如果需要,能够在特定情况下,增加了遥控器多样性汽车模块,极大地增加了无线智能小车的应用性。下方图4的部分示出了运动控制的架构电路,板子选择了Uptech Robotics MultiFlex开发版板,因为它使用ATmega128 MCU [4]作为微控制器,四组与PWM I / O接口控制四个从动轮的运动,每个从动轮由直流有刷电机驱动。运动控制板提供7个模拟输入接口,12个伺服控制接口和16个GPIO接口。运动控制电路通信主控电路通过5针RS232接口,运动控制程序通过ISP写入接口。
图4.硬件结构图
主控板和运动控制板已经设计独立优化嵌入式优化遥控配硬件资源,将高速外围设备连接到主机控制板。主控板和运动控制板已经设计独立优化嵌入式优化遥控车硬件资源,将高速外围设备连接到主机控制板。在这种情况下运动控制和数据采集将同时完成,并且提高遥控车的实时性。运动控制板负责所有运动相关工作,可以使用附加接口添加一些相关模块,这取决于具体应用,如装配电光轮轴编码器实现精确的运动控制,它也可以配备超声波传感器或红外传感器自动避障,也许手的设备也可以连接到伺服电机上实现其他功能。
在这种情况下运动控制和数据采集将同时完成,并且提高遥控车的实时性。运动控制板负责所有运动相关工作,可以使用附加接口添加一些相关模块,这取决于具体应用,如装配电光轮轴编码器实现精确的运动控制,它也可以配备超声波传感器或红外传感器自动避障,也许手的设备也可以连接到伺服电机上实现其他功能。
IV.软件系统设计
整个软件系统设计由三个部分组成部件[5]:遥控车的主控程序,运动控制程序和PC控制台系统程序。让我对这三个部分做一些具体的解释,说明软件系统将被修改为实际应用的需求为了说明无线遥控器的设计汽车,这里我们使用通用的嵌入式软件过程设计来描述它。
遥控车主程序是一个应用程序程序运行在我们已经安装的Linux系统上在ARM9开发板上,主要负责用于连接PC控制台,发送收集的数据到控制台,接收PC控制台的指令,将所述运动相关指令发送到所述运动控制电路。
图5.嵌入式车辆侧的程序流程图
运动控制程序负责所有遥控车的运动控制。具体过程如图5所示,在接上电源之后,开发板和电机控制板便自动开始初始化自己的程序,之后主控板设置IP地址,连接到控制台上。这个系统将从控制台接收命令执行,通过Socket方式,如果不是运动指令(如数据收集,数据发送,数据预处理等),那么它执行相应的工作,直到控制台没有指令需要执行。主控程序发送运动指令通过运动控制板UART,运动控制程序将它们缓存到循环队列,并在固定期间读取和执行指令定义时间间隔。
为了确保良好的便携性和宽跨平台容量,我们选择Qt SDK来开发PC控制台系统程序在Linux系统环境[6]。 PC控制台提供了一个图形用户界面,打开后控制台,程序应该初始化,操作符会在设置基本后发送一些指令参数,目前从嵌入式汽车接收数据,信息决策过程基于实际需要,根据具体的数据算法处理以产生决策指令,以及然后通过Socket将它们发送到遥控车[7]。在没有自动处理作出决定的情况下,运营商可以发送运动指令来控制运动手动遥控车。当任务结束时,断开与远程控制台的控制台连接控制车。具体过程如图6所示。
图6. PC控制台的程序流程图
V.系统测试
图7.嵌入式无线遥控车
图7是嵌入式无线遥控车。 在平台建设完成以后,我们进行了集成测试整个系统通过简单的手势识别实验。 图8显示了系统的接口。 由于障碍物的折射会影响无线信号强度的无线通信距离是大约13米室内和大约180米室外在露天场所。 视频帧速率8.62fps-13.16fps(作为无线信号状态)。 平均识别时间的手势识别是1.52秒,系统实时处理是在可接受的范围内。
VI.结论
我们设计和实施了一个无线遥控器基于ARM9的汽车系统。 我们建议确保最后几十米的解决方案遥控车之间的通信安全无线通信。 我们连接了遥控器控制汽车到互联网,转移操作和决策中心到无限距离服务器。这可以打破机器人平台硬件性能瓶颈,以及应用复杂,复杂的智能算法机器人到现实生活。最后,我们验证的可行性最终设计通过简单的手势识别实验。 根据实际需要,算法中该系统可以扩展到完成模式识别,自动避障,运动规划,智能化无线监控等领域在现实生活中的应用。
图8.系统控制台的GUI
致谢
对应作者是赵红伟。 作者感谢匿名审稿人的见解评论肯定改进了本文。这项工作是吉林科学基金会支持的教育委员会(2009605)和科学计划和吉林省技术开发(20101504)。
REFERENCES
[1] Volker Graefe and Rainer Bischoff. From Ancient Machines toIntelligent Robots -A Technical Evolution[C]. The Ninth International Conference on Electronic Measurement amp; Instruments.2009. Vol.3, 418-431.
[2] Liggesmeyer P., Trapp M.. Trends in Embedded Software Engineering[J]. IEEE Software, 2009, 26(3):19-25.
[3] E. D. Lag
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[139758],资料为PDF文档或Word文档,PDF文档可免费转换为Word
您可能感兴趣的文章
- 饮用水微生物群:一个全面的时空研究,以监测巴黎供水系统的水质外文翻译资料
- 步进电机控制和摩擦模型对复杂机械系统精确定位的影响外文翻译资料
- 具有温湿度控制的开式阴极PEM燃料电池性能的提升外文翻译资料
- 警报定时系统对驾驶员行为的影响:调查驾驶员信任的差异以及根据警报定时对警报的响应外文翻译资料
- 门禁系统的零知识认证解决方案外文翻译资料
- 车辆废气及室外环境中悬浮微粒中有机磷的含量—-个案研究外文翻译资料
- ZigBee协议对城市风力涡轮机的无线监控: 支持应用软件和传感器模块外文翻译资料
- ZigBee系统在医疗保健中提供位置信息和传感器数据传输的方案外文翻译资料
- 基于PLC的模糊控制器在污水处理系统中的应用外文翻译资料
- 光伏并联最大功率点跟踪系统独立应用程序外文翻译资料
