机器人与PC机的无线通讯研究_第1页
机器人与PC机的无线通讯研究_第2页
机器人与PC机的无线通讯研究_第3页
机器人与PC机的无线通讯研究_第4页
机器人与PC机的无线通讯研究_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本课题是实验室的实验设备开发研究项目,针对能力风暴机器人自身的内存较小, 不能像计算机那样存储大量数据,且无法实现实时控制这些问题,分析了机器人串 口通讯原理。 本文应用 WAP200B 无线数传模块, 研究了 PC 机与能力风暴机器人的无 线通讯问题,最终实现了 PC 机与能力风暴机器人及 PC 机与 PC 机无线数据通讯。 本文首先分析了无线数传模块的特点,在能够进行数据通讯的基础上,对无线数传 模块的通讯协议进行修改,使之能够与机器人的通讯协议一致,从而实现了无线数 据通讯功能。通过对 WAP200B 无线数传模块的通讯协议的研究,开发了无线数传模块一对多、多 个设备公用串口时的数据通讯

2、问题,并解决了 RS232串口只能一对一通讯的弊端。 应用 VB 软件做了一个 PC 机对能力风暴机器人的通讯控制软件,可以实施对能力风 暴机器人的实时控制。 并对能力风暴机器人主板进行改进, 使得程序下载自动运行, 完全脱离手动过程。关键字:能力风暴机器人; WAP200B 数传模块; RS232串口;无线数据通讯协议。 AbstractThis subject researches into the laboratory equipment. And gives effective solutions towards little memory of Ability Storm Robot

3、 . It also gives in time controls towards Ability Storm Robot. Analyses the robot communication by interface, and studied the PC to Ability Storm Robot Wireless Communication agreement , by the end the PC to PC PC to Ability Storm Robot by Wireless Communication were enable .This paper Analyses feat

4、ure of the RF Modem , based on the Wireless Communication , modify the agreement to build communications between PC and Robot . So that we can easily control the Robot.By the research of the WAP200B RF Modem , tap the ability of the Wireless Communications between multitudinous RF Modem . And gives

5、effective solutions towards the individual between RS232 interface . This subject implemented Wireless Communication by a program compiled by powerful designing language -Visual Basic , which controls the robot. Finally this paper gives some new creative about the Ability Storm Robot main board , so

6、 that the Ability Storm Robot run programs without your hand when the powerKey words :Ability Storm Robot ; WAP200B RF Modem ; RS232 interface ; Wireless Communication agreement .目 录第一章 综述 . 11.1 机器人综述 . 11.2 现代机器人的发展及应用前景 . 21.3 机器人的无线通讯 . 51.4 本文的工作 . 6第二章 能力风暴机器人 . 72.1 能力风暴机器人简介 . 72.2 图形化交互式 C

7、语言简介 . 92.3 能力风暴机 器人的无线通讯 . 11第三章 WAP200B无线数传模块 . 143.1 WAP200B无线数 传模块简介 . 143.2 WAP200B无线数传模块技术参数及配置方式 . 173.3 PC机 与能力风暴机器人串口通讯协议简介 . 203.4 RS 232串口通讯 . 22第四 章 PC机与机器人无线数据通讯 . 244.1 无线数传模块的安装与调试 . 244.2 PC 机对能力风暴机器人的基本控制过程 . 264.3 能力风暴机器人硬件改造 . 32第五章 无线通讯的应用 . 345.1 现场测量的应用 . 345.2 传输机制透明便于 处理 . 36

8、5.3 串口无线数据传输的应用前景 . 375.4 串口无线数据传输的功能 拓展 . 37参考文献:. 39致谢 . 40第一章 综述1.1 机器人综述在原始森林里,我们的祖先就学会了使用工具来狩猎或者是劳动,人类文明不断发 展,各种各样的工具层出不穷,于是我们就想有没有一天,出现一种可以替代人类 体力劳动的机器,并且能够完成我们预期要完成的工作,因此在我们的脑海里就出 现了“机器人”这个词语,它可以完成我们想要完成的工作,并且具有一定的判断 力和逻辑推理的能力。机器人英文名称“ Robot ”,不管是在中国还是在外国,人们 都渴望这一种可以取代人工的机器。对于机器人,世界各国都在深入研究,随

9、着计 算机技术的发展,现在机器人的功能不断完善,并且越来越智能化。1.1.1机器人由来为了提高工作效率,导致了机器人的诞生,也正由于机器人的诞生,使得我们的生活有了本质的提高,现在世界各国不断深入探究机器人。将来机器人必将在我们的 生活当中充当十分重要的角色。尽管“机器人”一词的出现和世界上第一台工业机 器人的问世, 都是近几十年的事;然而,们对机器人的幻想与追求却已有 3000多 年的历史。人类向往制造一种像人一样的机器,来代替、帮助自己完成各种工作。 1机器人是为了完成和人一样的工作,所以机器人也必须有手、脚、眼睛、耳朵,通 过各种传感器传送给大脑。以根据需要,我们应用生物仿真的一些原理,

10、设计制造 了相应的器件,并且在不断完善的过程中。1.1.2机器人的几个发展时期西周时期,我国的能工巧匠偃师研制出了能歌善舞的木制伶人,这是史书记载的我 国最早的机器人。春秋后期,我国著名的木匠鲁班,曾制造过一只木鸢,它能在空 中飞行,三日不下”。 1800年前的汉代,大科学家张衡不仅发明了地动仪,而且发 明了计里鼓车;行一里,车上木人击鼓一下,每行十里则击钟一下。三国时期,蜀 国丞相诸葛亮发明了“木牛流马”,用它来运送军粮,支援前方战争。现代机器人的研究始于 20世纪中期。 为了替代人来处理放射性物质, 美国科学家于 1947年开发了遥控机械手, 1948年又开发了主从机械手。 为了确保汽车生

11、产流水线 的产品质量, 1954年提出了工业机器人的概念,并申请了专利。该专利的要点是利 用人手对机器人进行动作示教,机器人能实现动作的记录和再现。这就是所谓的示 教再现机器人。 1980年,工业机器人在日本普及,故称该年为“机器人元年。” 2005年,日本爱知世博会,风度优雅的机器人接待员特别引人瞩目。它们的外表酷 似 20多岁的日本女子, 有仿真的眼球、 睫毛和会动的嘴唇, 能听、 说四万多个中文、 英文、日文和韩文短语,并配有 2000多种面部表情。它们有幽默感,它们还会用基 于隐私的理由而拒绝回答那些敏感问题,并交叉双臂向你鞠躬。 11.2 现代机器人的发展及应用前景由于新技术的应用,

12、特别是计算机技术在机器人上的应用,使得现代机器人的功能 越来越强大,并且在很多领域机器人已经取代人力,实现了真正的人工智能化工业 生产。伟大的发明家爱迪生曾说:“上帝创造人类,两条腿是最美妙的杰作。”让 机器人像人一样用两条腿走路并非易事。最新研制的检测脚底打滑技术和形成自然步态技术,保证了用于抢险救援的人形机器人,能在各种极其困难的环境中工作。 即使在摩擦系数为 0.1的十分容易滑倒的路面上, 它也能保持身体平衡, 稳步行走。 摩擦系数为 0.1,相当于汽车行驶在冰面上。它的步行能力由此可见一斑。 1 相信在不久的将来, 我们可以通过改进机器人的制造工艺, 以及计算机技术的应用, 通过使用新

13、的材料,使得机器人的应用越来越广泛。 20世纪 60年代,由于日本经 济的高速发展,导致了劳动力的严重不足。同一时期,美国研制了工业机器人,这 无疑给日本的经济发展带来了福音。 1967年日本川崎重工业公司首先从美国引进了 工业机器人及其技术,于 1968年试制了第一台日本产的工业机器人“尤尼曼特”。 经过长时间的消化与吸收,日本的工业机器人从摇篮时期走向了成熟的应用期。工 业机器人的应用领域从汽车制造业开始,逐步向其他领域扩展。到了 8090年代, 日本的工业机器人可谓处于繁荣昌盛时期。几乎无处不在,再加上日本政府的大力 支持, 80年代被称为日本机器人的“普及元年”。 21.2.1新材料的

14、应用现代科技越来越发达,新的特种材料的应用,不仅使得机器人的体积很小,并且结 构也越来越合理,小而精是机器人的主流。在西游记里有这样一个经典场面令 人难忘:孙悟空保唐僧去西天取经,在路过火焰山时,想借铁扇公主的扇子扑灭火 焰山的烈火,不料铁扇公主不给面子,孙悟空便变成一只小虫子钻进铁扇公主的肚 子里,大闹五脏六腑,迫使铁扇公主将扇子借给了他。如今随着纳米武器的出现, 这种神话正成为现实。“纳米技术”概念首先是由美国未来学家德雷克斯勒提出的。 1968年,他在一本名 为造物引擎的书中描述了能够进行自我复制的纳米机器人。它们能疯狂地复制 自身,在很短的时间内就把地球变成了一大团完全由纳米机器人组成

15、的“ 灰色粘 质”。德雷克斯勒的“ 纳米技术” 概念听上去有点幻想,但确实是一种天才的预 言。随着纳米技术的迅猛发展,特别是微机电系统的初步成功,为军事科技工作者 研制纳米武器奠定了物质基础。现在,各军事大国相继制定了项目繁多的军用纳米 技术开发应用计划,美国在此领域取得的进步最大。我们也不难发现,机器人的应用,很大程度上得益于新材料的应用,而纳米技术的 出现也使机器人在材料上有了新的突破。小而精的机器人也越来越广泛的出现在我 们的生活当中,给我们带来了很大的方便,特别是在人们无法到达的一些地方,机器人起到了至关重要的作用。 31.2.2计算机的应用计算机的发明是人类的一大跨越,很多数据计算可

16、以通过计算机,而人的作用就是 对计算机的计算结果进行综合比较,得到比较优越的结果。每一步的工作过程,每一个工作过程的时间间隔,通过计算机来编程实现是非常精 确的。 机器人的各种行为, 脱离了计算机的作用将会受到很大的限制。 有了计算机, 对机器人的控制最终体现的是通过计算机几个程序的运行,机器人就完全按照我们 的意图进行运作。而我们也没有了繁琐的手工控制,只要在每一个运行的程序上输 入我们的预期达到的目的,剩下的就是计算机对机器人的控制。现实的使用过程当中,计算机与智能机器人是相互依存的,没有计算机的实现,机 器人是一个很简单的劳动工具;有了计算机,机器人的劳动就像一个有思想的智能 机器一样,

17、会自己处理一些事件。而光有计算机没有智能的机器,那么,就没有一 个会实现人类意图的工具,因此计算机与智能机器人是相互依存的,密不可分的。 1.2.3是人类生产的辅助工具在茫茫宇宙中,人类是无法生存的,而在这个充满着各种挑战的空间中,机器人取 代了人类的劳动。各种各样的灵巧的机器人正是宇航员的得力助手,协助人类对未 知世界的探索。机器蛙重量轻,质量不超过 1.3kg,可以像青蛙那样跳跃,因此可以在崎岖多障碍的星球表面上快速的活动。例如在 地球上机器蛙最远可以跳 2.4米,而由于火星的重力只有地球的三分之一,因此机 器蛙在火星上最远可以 7.2米。给机器蛙安装上很多的传感器之后,由于重量轻,比各种

18、探测车经济很多。蜘蛛机器人是科学家从蜘蛛的攀爬中得到启发,给蜘蛛机器人的触角安装上各种传 感器,就可以完成很多任务了。科学家在蜘蛛机器人的前部安装上微型摄像机,凭 借小巧的身材,蜘蛛机器人很适合勘探彗星、小行星等天体。在国际空间站上,蜘 蛛机器人还可以充当小小的维护员,及时发现空气泄露等意外事故。如今的机器人越来越像人了。它们有人造肌肉、皮肤,还会像人一样认字。机器人 正朝人类“进化”着。日本科学家开发出一种新型的人造肌肉。它的形状像口香糖, 长约 5厘米,宽 1厘米,厚几百微米。它由一种随电压变化而伸缩的高分子材料与一种不易挥发的离子液 体混合制成,可以在正常环境下长期使用。这种人造肌肉可根

19、据施加在其表面上的 电压强度和方向,改变弯曲的程度和方向。在人造肌肉的表面加上 1. 5伏的电压, 可上下最大弯曲 40微米,电压再加大,可弯曲数百微米。如电压方向改变,人造肌 肉弯曲的方向也会改变。另外,人造肌肉对电流的灵敏度很高,打开和关上电源, 人造肌肉的反应时间仅为 0. 1秒。 因此如果在微型机器人的关节和驱动部位装上这 种人造肌肉, 它可像人的关节一样发挥作用。 科学家发明了一种新型的波纹金属膜, 它可以用来制作机器人的“皮肤”。这种波纹状金属膜即使长度拉伸一倍也仍然能 导电,而不像一般的导线会拉断。因为在类似人类皮肤的硅橡胶薄膜里面,埋有 25纳米厚的黄金薄膜制作的弹性连接器,所

20、以,机器人的“皮肤”有很大韧性,至少 拉伸 15%也不会断裂。韩国科学家研制出一种机器人, 它能读书并对人的行动做出反应。 以前的机器人以 体力劳动型居多,该机器人。的出现预示着具有智能和感性的新机器人时代印巧来 临,它能给人提供各种知识和信息服务,该机器人是以影像和文字识别功能以及语 音合成技术相结合而制作的。它能从人的脸型中判断其身份,也能够辨认文字,并 把它读出来。它能够与人做一些简单的沟通,甚至能够在网上聊天。这种新型智能 机器人的智商只有 40,但经过一些具体改进的话,能够提高到 70 80左右。设计 该机器人的特点是能够及时地应用软件技术的新成果,实用性很强。现阶段已经能 够制造出

21、盲人用的智能机器人、读书机器人等。虽然真正会思考的机器人还没有出现, 但是可以预料, 在不久的未来这种机器人会 诞生。一旦这种机器人来到世界上,不少科学家也担心机器人太聪明了,它们会反 过来控制人类。也许到那时,科学家能在超级智能机器人上安装保护指令,以便在 任何情况下保护人类不受伤害。 41.3 机器人的无线通讯对于机器人控制,在无线电出现之前,只是通过有线来实现的。当我们有了无线电波的时候, 人们充分认识到了它的作用, 特别实在通信领域, 更是离不开无线电波。 到了现代,无线通讯十分发达,几乎所有的移动机器人都需要无线通讯。可以说无 线通讯是现代机器人不可或缺的一个部分,如果没有无线通讯,

22、那么机器人的很多 现场数据无法实时的传输给工作人员,机器人的作用将会受到很大的影响。无线通讯,在发展的初期是报文通讯,是我们熟悉的收发电报。到了现代各种信息 的通讯,通讯技术已经非常成熟了。对于机器人的通讯,如果脱离了无线电波,那么我们的易用性、实时性将会受到很 大的影响。无线电波以光速传播,在通讯过程中,在一定的范围内,传输的时间可 以忽略。 众所周知在潜艇的通讯中, 除了声波的通讯外, 长波通讯也是必不可少的。 声波通讯虽然方便,但是受海洋的影响很大,而且距离很短。在所有的通讯设备当 中,只有无线电波通讯是应用最为广泛的,我们几乎每天都离不开无线电波。而且 无线通讯相比有线通讯,除了省去布

23、线的麻烦,还有一点就是传输的距离长,具有 衍射效应,不易受到外部障碍物的干扰。1.4 本文的工作机器人无线通讯在自动控制技术中非常重要。通常,在对能力风暴机器人的数据传 输中,一直使用的是 RS232串口数据线。目前,实验室购买的能力风暴机器人不具 备无线数据通讯,并且由于 RS232串口是负逻辑,线路传输的电压相对较高,使用 不当容易损坏设备,而无线通讯就可以解决这个问题。本文通过对 WAP200B 无线数 传模块的研究,实现用 WAP200B 无线数传模取代 RS232串口数据线,从而实现对能 力风暴机器人的实时无线数据传输。 WAP200B 无线数传模性能优越,不仅通讯模块 的传输稳定,

24、 而且拥有 64个频道, 达到在多机通讯时互不干扰, 给用户的功能扩展 带来了极大的方便。有了无线数传模块我们在多机器人的足球赛当中就可以实现实 时给能力风暴机器人下载新的程序,达到对能力风暴机器人的实时控制。并且在一 些危险的场合,例如公安机关在使用机器人实施排爆过程中,需要处理很多机器人 传回的实时数据,这时布线速度慢,使用无线数传模块可以解决这个问题。第二章 能力风暴机器人2.1 能力风暴机器人简介AS-UII 能力风暴机器人是由广茂达公司生产的大学版机器人,扩展能力强,是动手 操作和实现能力培养的机器人平台,它还可以借助于交互式 C 语言和开放式接口进 一步提高机器人的开发潜力。该机器

25、人外形成圆盘状,底盘上有两个主动轮和两个 导向轮,自带的传感器有:碰撞传感器、红外传感器、光敏传感器、光电编码器等, 同时利用硬件扩展总线 ASBUS 可以增加红外扩展卡以及其他各种类型的传感器。通 过该机器人可以实现设计者所希 望的各种动作和任务。 从任务的实现过程中可以使 设计者的各种能力得到进一步的训练和提高。在具体的实现过程中我们发现由于机 器人硬件本身的精度以及 各种综合因素的影响, 使得在对能力风暴进行实际开发和 应用过程中可能会遇到一系列的技术问题,在我们的设计、开发与实践中通过自身 体验,对在实际操作中所遇到的实际问题采取了各种相应的补救措施,得到了几种较好的解决方案。 52.

26、1.1机器人组成能力风暴机器人主要由底盘、主板、液晶显示屏四部分组成。底盘:由万向轮、直流电机、电池、电池巢、碰撞开关、光电码盘等器件构成。其 主要的作用是完成设备的机械运动,为功能的扩展提供搭载平台。光电码盘适用于 获取测试电机的转速。主板:提供各种传感器的接口,电源开关、数据线接口、运行、复位键。实验中采 用能力风暴智能机器人作为平台 ,能力风暴是一个直径为 30cm,高 13cm 的顶端为半圆形 ,下部装有圆形碰撞环的移动机器人,它采用单片机 M68HC11作为微处理器 ,扩展了 32 k的静态不挥发 RAM ,辅助以驱动、通讯、复 位等外围电路。整个能力风暴智能机器人平台有以下主要特点

27、 :(1 是典型的自主移动机器人。具有较高的自规划、自组织、自适应能力,适合于 在比较复杂的非结构环境中工作, 是一个高智能、高模块的复杂系统 ;(2 配有一定数量的传感器,具有一定的感知周围环境的能力。传感器包括 2支红外发射管和 1 支红外接收模块, 2 支光传感器和 4 支碰撞传感器, 另外,还包括 旋转角度编码器和麦克风。 红外传感器可以判断前方约 120度内 , 距离在 1050 cm 范围内的物体 ;光传感器可判断光线的强弱 ;碰撞传感器安装在机器人外部的碰 撞环上 , 能感受到 8 个方向上的碰撞 ; 麦克风没有方向性 , 能感知声音的强弱 ; 旋转编码器用来测量轮子旋转的角度数

28、 ;(3 机器人与计算机之间使用基于 M68 HC11单片机开发的交互式 C 语言进行编程。 交互式 C 语言由两部分组成 :编译环境和机器人操作系统 。 它的强大功能是可 多进程运行 。 机器人和计算机之 间通过串口操作 , 将在计算机上编译通过的程序 通 过串口线下载到机器人上后 ,机器人即可自主运行 ;(4 机器人设计了硬件扩展总线 ASBUS(ability storm BUS 。这样可方便对机器 人的外围电路 进行扩展 ,也为机器人之间的相互无线通信提供了前提条件。硬件 扩展总线分两组,分别为硬件扩展总线 A 、硬件扩展总线 B ,共 28根信号线 。 6 (5液晶显示屏的作用是显示

29、能力风暴机器人的输出等一些需要直观显示的数据。 2.1.2机器人性能扩展能力风暴机器人提供了各种扩展卡, 用户可以根据需要对能力风暴机器人进行扩展。 主要有:光敏扩展套件、红外接收扩展卡、红绿灯卡、远红外火焰扩展套件、地面 灰度检测卡、 I/O 扩展卡、 I/O 扩展卡、红外测距卡、超声测距卡、数字指南针、 无线通讯模块、多功能扩展卡、伺服电机驱动卡、模拟口扩展卡。能力风暴机器人的大部分功能都是通过使用扩展卡来实现的,因此要有一个功能完 善的机器人, 扩展卡的使用是不可或缺的。 如果用户对扩展卡的使用还是觉得不够, 可以使用多功能扩展卡,进行自己的设计,在设计之前必须熟知各个扩展地址,否 则可

30、能会出现事半功倍的结果甚至会导致一些不必要的麻烦。功能的扩展是能力风暴机器人的一大特色,由于能力风暴机器人的扩展功能非常丰 富,并且使用的是我们非常容易读懂的图形化交互式 C 语言,因此给用户提供了很 大的方便。 例如无线通讯模块, 可以实现 PC 机对能力风暴机器人的数据传输, 能力 风暴机器人与能力风暴机器人之间的数据传输, 还可以实现 PC 机对能力风暴机器人 的程序下载。 72.2 图形化交互式 C 语言简介对于 C 语言,我们是比较熟悉的, C 语言具有符合英语的日常使用习惯,比较容易 读懂程序。在 VJC 中,不仅可以用直观的流程图编程,也可以用 JC 语言编写更高级的机器人 程序

31、。流程图和 JC 语言双剑合壁,既能领读者轻松入门,又能够让读者在编程中 发挥最大的创造力。 VJC 操作简便,有活泼明快的图案和简短的文字说明。读者可 以使用形象化的模块,由顶向下搭建流程图,搭建流程图的同时,动态生成无语法 错误的 JC 代码。流程图搭建完毕,程序就已经编写完成,可以立即下载到机器人 中运行。已入门的读者可以直接在 JC 代码编辑环境中编写程序,还可以边写边试, 发现错误,校正修改,十分方便。 82.2.1 VJC简介图形化交互式 C 语言(简称 VJC 是用于能力风暴智能机器人系列产品的软件开发 系统, 具有基于流程图的编程语言和交互式 C 语言(简称 JC。 VJC 为

32、开发智能 机器人项目、程序与算法、教学等提供了简单而又功能强大的平台,是全球开创性 的具有自主知识产权的产品。2.2.2流程图流程图是用一些图形表示各种操作的。用图形表示算法,直观形象,易于理解。用 常规的计算机编程语言(如 C、 FORTRAN 、 JAVA 编程,需要输入复杂的程序代码, 并且编写的程序还要符合特定的语法。 而流程图编程不需要记忆计算机语言的语法, 不需要使用键盘输入程序代码,只需要按照“先作什么,后作什么”的设想,就可 以编出程序。 VJC 正是按这个思想设计的。使用 VJC 软件,用户不用关心语言实现 的细节, 同时也有效避免了语法错误, 有利于集中精力寻求解决问题的方

33、法。 图 2.1 程序流程图如图 2.1所示能够比较清楚地显示程序的逻辑关系, 因此它是表示算法的较好工具, 我们很清楚程序是如何执行的。省去了编辑的过程,流程图的使用给我们带来了很 大的方便。流程图没有计算机编程复杂以及一系列语法、逻辑、变量定义等问题,不会出现因为变量使用不当而出现逻辑错误,即使是没有计算机编程基础也很容易上手。另外 流程图因为结构清晰,思绪明朗可以让人一眼就读懂程序,不需要注释。有的计算 机程序,由于比较复杂,难以读懂,并且在相应的位置需要有一些注释,即使有注 释,在重新读程序的时候,仍然需要一步一步的看程序整个执行过程,不仅浪费时 间,效率也很低。流程图就不会出现上述的

34、情况。通观整个图形化编程,一目了然。 2.2.3 VJC特点从流程图自动生成正确 JC代码、智能下载、实时多任务机器人操作系统(运行错 误检测是 VJC 语言的特点。交互式 C 语言 (简称 JC 是用于能力风暴智能机器人的专用开发语言。 JC由两 部分组成:编译环境和能力风暴操作系统 ASOS 。 JC 实现了标准 C 语言的一个子集, 它包括控制语句(for , while , if else 、局部变量和全局变量、数组、指针、 16位和 32位整数以及 32位浮点数。 JC 不直接编译生成针对特定处理器的机器代码, 而是先编译生成基于堆栈虚拟机的伪代码。然后这种伪代码由能力风暴操作系统解

35、 释执行。 JC 这种不寻常的编译方式有以下优点:(1 解释执行:允许检查运行错误。例如:JC 在运行时,数组下标的检查。(2 代码更精简:伪代码比机器代码更简短。(3 多任务:由于伪代码是完全基于堆栈的,进程状态完全由它的堆栈和程序计 数器所决定。因此只需要装载新的堆栈指针和程序计数器就可以方便地实现任务切 换。任务切换由操作系统处理,而不是编译器。JC 与标准 C 对比:JC 语言是建立在 ANSI C标准上的。 但是它们有些重要的区别。 许多区别是因为 JC 比标准 C 更“安全”。例如, JC 在运行时要检查数组下标,所以数组不能被变为指 针,也不可以进行指针运算。另一些区别是由于 J

36、C 的运行时间更短更高效。例如, JC 的 printf 函数就没有 ANSI C中的许多不常用的格式化选项。2.3 能力风暴机器人的无线通讯对于机器人,最重要的作用就是完成我们指定的任务。比如说,在排爆机器人中, 我们需要机器人先到达指定的地点,然后返回一些数据给现场工作人员,如果在短 距离可以用有线通讯, 而长距离就需要无线通讯了。 并且有线通讯有种种的局限性,最大的一点就是距离越长越不可靠,并且越不方便,特别是在复杂的情况下,无线 通讯更具有优势。所以我们把无线通讯作为我们的研究对象。机器人的无线通讯, 有很多的形式, 这里我们主要研究 PC 机对能力风暴机器人的串 口无线通讯。由于串口

37、通讯在现在的试验中使用的是最为广泛的,并且串口通讯协 议简单,对设备的要求并不高。无线通讯的形式多种多样,红外无线通讯也是其中的一种,红外线的有效作用距离 相对于波长比它长很多的无线电波要逊色很多,红外线的接收脉冲频率是 38.5KHz 左右,对于数据流量大一点的数据是传送不了的。因此红外无线通讯的距离近,频 带窄,不能满足我们对数据传输的要求,所以我们选用无线电波进行串口通讯。 WAP200B 无线数传模块的作用距离长,并且波特率范围广,适合于一般场合的无线 数字通讯。2.3.1通讯模块的作用(1保护设备实现无线数据通讯的主要目的是取代数据线,实现长距离的数据通讯。更加方便快 捷, 能力风暴

38、机器人的数据传输使用的是 RS232串口通讯协议, 数据线连接时用 -15v 代表二进制的 1,用 +15v代表二进制的 0,这么大的电压差,如果使用不慎很容易 将我们的元器件烧坏。而如果加上无线数据通讯模块,那么就不需要数据线的反复 插拔,方便下载。也就不用担心没有关电源插拔数据线。接通能力风暴机器人的电 源,并且 WAP200B 无线数传模块直接安装在能力风暴机器人上,剩下的程序修改, 程序下载就不需要再通过插拔数据线。避免了由于忘记关电源,导致带电插拔数据 线而对设备造成损坏。(2实时通讯通过无线数传模块可以在各种情况下实现对能力风暴机器人的实时控制。能力风暴 机器人的功能非常强大,但是

39、它只是一个不会进行“人际交往”的机器人,如果我 们有一些想法想尽快告诉它,还必须给它“重新输血”。如果情况复杂,而且距离 很远,数据交换就变得非常困难。所以无线通讯就是增强能力风暴机器人的“人际 交往”能力,拓展它的功能。通过无线通讯,我们就可以只在计算机上操作,就改 变了能力风暴机器人的内部程序,而且由于无线通讯是全开放的。在多个能力风暴 机器人的程序下载过程中,我们直接对所有的机器人广播就可以了。PC 机接收能力风暴机器人反馈的信息, 对能力风暴机器人的实时控制是为了让能力 风暴机器人按照我们的意图运行程序,但是能力风暴机器人具体做的怎么样,除了 通过我们的观察,我们是没有具体的反馈信息。

40、也就是我们需要对能力风暴机器人 执行过程中的运动参数进行修改, 如果单凭视觉观察, 是没有办法给出精确的数值, 而能力风暴机器人本身带的传感器所探测的信息也没有办法传输回给计算机处理。 所以接收能力风暴机器人反馈的信息是数据通讯的一个部分,是我们实现对能力风 暴机器人实时状态控制的信息来源。(3取代数据线进行稳定数据传输通过测试, WAP200B 无线数传模块对能力风暴机器人的数据传输相当稳定,可以与 有线传输相媲美。当参数设置 DTR 信号线有效时,可对模块的频道、发射功率进行 修改。共有 64个频道。2.3.2通讯模块的经济性在不考虑经济因素的情况下,可以制造出很多很好用的产品,但是这些产

41、品的价值 会很低,实验就会失去意义,也是我们所不会采纳的。因此,在考虑到一定的实用 性的同时,我们有必要对产品的价格进行一定的考虑。 WAP200B 无线数传模块不仅 功能齐全,并且价格相对于广茂达公司提供的专供能力风暴机器人使用的无线数传 模块要低很多,所以我们使用了 WAP200B 无线数传模块。并且由于这个价格相对较 低。在一支足球机器人的队伍里,如果每一个机器人都安装上无线数传模块,那么 使用 WAP200B 无线数传模块会令我们的开支减少很多。第三章 WAP200B无线数传模块3.1 WAP200B无线数传模块简介3.1.1 WAP200B无线数传模块特征(1抗干扰能力强,传输稳定W

42、AP200B 无线数传模块基于 FSK 的调制方式,采用高效前向纠错信道编码技术,提 高了数据抗突发干扰和随机干扰的能力, 在信道误码率为 10-2时, 可得到实际误码率 10-510-6,在主从式系统应用并且主机需要定时发送时,可以设置成自动跳频 模式,以提高抗干扰能力;内置高速 MCU 做 FEC (前向纠错处理,通信可靠性可 与有线媲美;适用于 RS232串口数据通讯,主要器件是 WAP200B 无线数传模块,适 用 TTL 逻辑电平,经过 MAX202的 TTL RS232、 RS232 TTL 电平转换,与需要通讯 的设备进行连接。(2参数软件修改,参数设置掉电即保存通讯的频道数是

43、64,波特率从 1200bps 到 115200bps ,发射功率可以在线修改。当 需要修改频道、波特率、发射功率时,通过向通讯模块下发 16进制的指令来修改。 通过实验,我们发现 WAP200B 无线数传模块修改完参数之后只有在切断电源,再重 新上电时,参数才会改变。在断电之前,用户使用的参数还是原来的,只有在断电 之后再上电,新的参数才有效。出厂默认设置为:27频道、波特率 115200、校验位 N 、数据位为 8、停止位为 1、发射的频率为 434.026MHz 。 9(3传输机制透明WAP200B 无线数传模块的传输机制是透明传输,也就是说在数据发送时天线是向外 发射无线电波的,当数据

44、发送完毕, WAP200B 无线数传模块的天线是用于接收数据 的,只要没有数据的发出过程,那么无线数传模块就一直在等待需要发送的数据和 无线数传模块天线接收到的无线电波。还有一种模式就是 WAP200B 无线数传模块处 于低功耗待机状态,当需要工作的时候,再唤醒数传模块,无线数传模块的数据发 送过程是很耗电的,这就可以节约电量,让模块的工作时间更长一些。3.1.2基本组成、接口特性如图 3.1,从左至右为电源接口、 RS232串口、稳压电源、 MAX202电平转换芯片、 WAP200B RF Modem、天线、数据发送指示灯、数据接收指示灯、参数调整指示灯、 电源指示灯。WAP200B 无线数

45、传模块接收到的数据输出格式是 TTL 逻辑电平,在电路板上有一个 MAX202的电平转换芯片用于将无线数传模块输出的 TTL 逻辑电平转换为串口 RS232电平,以及将串口接收到的数据转换成 TTL 逻辑电平再输入到 WAP200B 无线数传模 块通过载波将数据发送出去。图 3.1 WAP200B无线数传模块实物图3.1.3发射频率、功率可变无线数传模块共有 64个频道,最大 20dBm (100mW 发射功率;工作频道可以软件 最小 0.5MHz 步进调整; 发射功率可以软件最小 0.5dBm 步进调整。 发射功率和工作 频道的调整,使我们能更好的对无线电波资源进行利用。功率的修改,可以更好

46、的 适应于不同距离的数据通信,更具有灵活性,在一些不必要的场合减少功率,可以 延长使用时间。WAP200B 无线数传模块的频道数多,在同一环境下多对设备之间相互通信,互不干 扰。 例如在一些参数测量过程中, 传感器很多, 如果每一个参量都连接一根数据线, 那么将会使测量很繁琐,而使用多个无线数传模块同时发数据,可以直接通过修改 无线数传模块的在线接收频率来达到有选择的接收其中有用的数据。或者通过修改 无线数传模块的参数, 令模块以一定的时间间隔在全部或是部分频道之间循环接收, 对数据进行分类、分时处理,达到提高数据处理的高效率以及提高数据的实时性。 3.1.4 WAP200B无线数传模块引脚说

47、明如图 3.2所示,右是 WAP200B 无线通讯模块的实物图、左侧是 WAP200B 无线通讯模 块的引脚示意图,以下是关于 WAP200B 无线通讯模块引脚的具体说明。VCC_CPU :MCU 电源输入, DC3.0-3.6V。/SET:配置或者正常工作模式选择信号输入,低电平将使 WAP200B 进入配置模式, 此时串口的数据将被视为配置指令而不会被传送出去。TXD :串口数据从 WAP200B 输出, 3.3V/5V 兼容 TTL逻辑电平。RXD :串口输入到 WAP200B, 3.3V/5V 兼容 TTL逻辑电平。/RESET:复位信号输入, 低电平将使 WAP200B 复位, 复位

48、脉冲低电平宽度至少需要 10uS 。GND :公共地。VCC_RF:RF 短路电源, DC3.0-3.6V。VCC_PA:RF 功放电源, DC2.2-12V。ANTENNA :天线接口, 50 欧姆阻抗。图 3.2数传模块引脚示意图3.1.5 WAP200B无线数传模块通讯协议无线数传模块提供了 1个 9针的 RS232串口。用户可用的是 2、 3、 4、 5四个接口。 其中, 2、 3是数据的收发端; 4是参数配置使能端(高电平时无线数传模块进入参 数配置模式。 5是信号的接地端。波特率:1200、 2400、 4800、 9600、 19200、 38400、 57600、 115200

49、bps 。串口模式:N 、 8、 1; N、 8、 2; E、 8、 1; O、 8、 1。在实现无线数据通讯时两个模块之间的通讯协议必须是一致才能正常的传输数据, 否则会出现数据格式的不正确和乱码。例如使用波特率为 1200bps 传输数据,但是 使用波特率为 2400bps 接收数据,这样虽然有数据的收发, WAP200B 无线数传模块 的信号接收端指示灯亮,但是接收的和传输的数据处理机制不同,仍然接收不到正 确的数据,所以要正常通讯的前提条件就是要有一致的串口通讯协议。在不同的设备之间除了要有一致的通讯协议,还需要数据即时传输。否则数据发送 之后,过了很长一段时间才收到,这些数据就失意义

50、。3.2 WAP200B无线数传模块技术参数及配置方式WAP200B 无线数传模块工作电压:DC3.0-3.6V (V_PA 可以到+12V 。工作温度范 围:-20-+65。 外形尺寸:40×20×7 mm (金属屏蔽壳尺寸 。 模块的接口是 3.3V/5V 兼 容 TTL 接口。详细基本技术参数见表 3.1所示。PA_SET=0xFFCH_SET=0x27 (434.026MHzBode_SET=0x07 115200bpsUART_Mode=0x00 N81Scan_Mode=0x00(自动跳频关闭Group_Set=0x08(第 8 组频道, 418.520/426

51、.419/434.318/442.745MHz串口波特率:115200bps ,工作于 39频道,频率 434.026MHz ,串口模式:校验位 N , 8位数据位, 1位停止位;自动跳频关闭,功率为 19.5dbm 。3.2.3参数配置方式(1软件配置方式通过大量实验,发现无线数传模块在发送数据时使用的串口通讯软件必须有一项是 修改 DTR 的值,否则数据无法发送出去,而会被认为是参数配置数据;而参数配置 又有一定的握手指令,所以数据传输到 WAP200B 无线数传模块是没有任何意义的。 应用 VB 编写串口通讯程序时,由于不定义 DTR 的值,那么 DTR 的值为默认的 True , 数据

52、不能发送出去,而只会认为是参数配置数据。所以编程时直接定义 DTR 的值为 False ,再创建一个修改 DTR 值的选项,用于在参数配置的时候使用。当通上电,由 于软件设置了 DTR 的初值为 False ,所以 WAP200B 无线数传模块的参数设置功能就 会失效,参数设置红灯灭,数据通过 WAP200B 无线数传模块正常发送。如果需要设 置参数,只需用鼠标点击串口通讯软件 DTR 值的修改选项即可,再下发相应的参数 设置数据即可。(2硬件配置方式要使得无线数传模块进入参数配置模式,就是令无线数传模块 DTR 的值为高电平, 所以需要参数配置的时候将连接 DTR 的接线(RS232串口的

53、4接口接在高电平上。 因此可以用一个开关将无线数传模块串口的 4接口连接到高电平上,通过开关来控 制参数的设置。参数设置的命令格式如下:用户下发:0xAA +Command +Data0+Data1+0xBBWAP200B 应答:0xAA +0x4F+PA_Now+CH_Now+RSSI_Now+0xBB3.2.4参数修改命令WAP200B 无线数传模块的参数修改说明如下:0x40+任意值 +任意值:握手指令0x41+0x5A+0xA5:模组待机,待机后需要 /RST引脚低电平脉冲来唤醒。0x42+任意值 +CH_Now:在线配置模组当前工作频道,参数掉电不保存。0x43+ PA_Now+任意

54、值:在线配置模组当前发射功率,参数掉电不保存。0x44+ Group_NoW+任意值:在线配置模组当前自动跳频频道组,参数掉电不保存。 0x45+任意值 +Scan_Mode:在线配置模组当前自动跳频模式,参数掉电不保存。 0x48+Group_Set+Scan_Mode:设置上电后默认的自动跳频参数, 掉电后参数保存。 0x49+PA_SET+CH_SET:设置上电后的默认工作频道、发射功率、掉电后参数保存。 0x4A +Bode_Set+UART_Mode:设置模组的波特率和串口模式,掉电后参数保存。0x4B+ PA_Now+CH_Now:单频发射功率测试模式。0x4C+PA_Now+ C

55、H_Now:接收灵敏度测试模式,串口会返回调制频率值。0x4F+ PA_Now+CH_Now+RSSI_Now:正确指令的应答, PA_Now为当前发射功率, CH_Now为当前工作频道, RSSI_Now为当前信号强度。3.2.5参数修改表以下是修改具体参数的十六进制指令;波特率(冒号前面是参数值,冒号后面是修改的指令:1200:0x00;2400:0x01;4800: 0x02;9600:0x03;19200:0x04;38400:0x05;57600:0x06;115200: 0x07;串口模式(冒号前面是参数值,冒号后面是修改的指令:N 、 8、 1:0x00;N 、 8、 2:0x0

56、1;E 、 8、 1:0x02;O 、 8、 1:0x03。3.3 PC机与能力风暴机器人串口通讯协议简介3.3.1串行通讯分类串行通信是指通信的发送方和接收方之间数据信息的传输是在单根数据线 , 以每次 一个二进制位移动的,他的优点是只需一对传输线进行传送信息,因此其成本低, 适用于远距离通信,他的缺点是传送速度低,串行通信有异步通信和同步通信两种 基本通信方式。(1同步通信同步通信适用于传送速度高的情况,其硬件复杂,而异步通信应用于传送速度在 50-192000波特之间,是比较常用的传送方式。其特点如下: 以数据块为单位传送数据; 在一次传输的数据中包含的数据较多,所以接收与发送时钟严格同

57、步; 在一个数据块内字符与字符之间无间隔。(2异步通信异步通信中,数据是一帧一帧传送的,每一串行帧的数据格式由 1位起始位, 5-8位的数据位, 1位的奇偶校验位 (可省略 和 1位停止位 4部分组成,在串行通信前, 发送方和接收方要约定具体的数据格式和波特率 (通信协议 。并且在数据传输的过 程中, 只能有一个接收端, 而如果数据需要同时被多个设备使用, 就需要经过中转, 没有灵活性。异步串口通讯是按字符传输的,每传输一个字符,就用起始位来通知收方,以此来 重新核对收发双方同步。若接收设备和发送设备两者的时钟频率略有偏差,这也不 会因偏差的累积而导致错位,加之字符之间的空闲位也为这种偏差提供

58、一种缓冲, 所以异步串行通信的可靠性高。但由于要在每个字符的前后加上起始位和停止位这 样一些附加位,使得传输效率变低了,只有约 80%。因此,起止协议一般用在数据速率较慢的场合。异步通讯中起始位实际上是作为联络信号附加进来的,当它变为低电平时,告诉收 方传送开始。它的到来,表示下面接着是数据位来了,要准备接收。而停止位标志 一个字符的结束,它的出现,表示一个字符传送完毕。这样就为通信双方提供了何 时开始收发,何时结束的标志。传送开始前,发收双方把所采用的起止式格式(包 括字符的数据位长度,停止位位数,有无校验位以及是奇校验还是偶校验等和数 据传输速率作统一规定。传送开始后,接收设备不断地检测传输线,看是否有起始 位到来。当收到一系列的停止位或空闲位之后,检测到一个下跳沿,说明起始位出 现,起始位经确认后,就开始接收所规定的数据位和奇偶校验位以及停止位。经过 处理将停止位去掉,把数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论