为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

智能控制的儿童电动车设计

2017-09-02 50页 doc 341KB 38阅读

用户头像

is_954223

暂无简介

举报
智能控制的儿童电动车设计智能控制的儿童电动车设计 题 目: 智能控制的儿童电动车设计 院、 系: 姓 名: 指导教师: 系 主 任: 2012年 6 月 25 日 理工大学学士学位论文 智能控制的儿童电动车设计 摘要 进入二十一世纪,科学技术飞速发展,智能控制越来越不容被忽视,不仅在机械领域扮演重要角色,在日常生活中发挥的作用也越来越重要。随着社会的发展,机动车辆的数量迅速增长,引发了一系列的交通问题。在这种情况下,智能车辆成为了一个新的热点的研究对象。 在日常生活中,智能控制的儿童电动车越发显示出其安全性和优越性。本智能电动车的...
智能控制的儿童电动车设计
智能控制的儿童电动车设计 题 目: 智能控制的儿童电动车设计 院、 系: 姓 名: 指导教师: 系 主 任: 2012年 6 月 25 日 理工大学学士学位论文 智能控制的儿童电动车设计 摘要 进入二十一世纪,科学技术飞速发展,智能控制越来越不容被忽视,不仅在机械领域扮演重要角色,在日常生活中发挥的作用也越来越重要。随着社会的发展,机动车辆的数量迅速增长,引发了一系列的交通问题。在这种情况下,智能车辆成为了一个新的热点的研究对象。 在日常生活中,智能控制的儿童电动车越发显示出其安全性和优越性。本智能电动车的控制系统设计是基于新一代51单片机STC12C5A60S2单片机实现功能控制。本设计使用6V 直流电机控制后方的两个轮子,实现向前、向后、左转、右转等功能。智能小车采用直流电机及其控制电路作为整个系统的驱动,STC12C5A60S2单片机为整个系统的控制核心,使用更加受欢迎的NRF24l01无线遥控模块代替RS232串行控制,实现无线控制;使用红外对管检测道路上的障碍,实现智能小车的自动避障;使用基础语言C语言编程实现控制,可操作性大大提高;由于使用L298N电机驱动模块控制模块以及6V直流电机,增加了调速控制,可以方便、灵活的进行速度的控制。 在各模块的软件设计与仿真之后,经过各模块实物的制作以及测试,完成了对儿童电动车的制作。小车实现了自动避障且不受障碍物形状和大小的限制;电池续航能力300m;测距范围1m;小车承重1.5kg时运行正常;遥控距离0~10m。 关键词 STC12C5A60S2单片机;NRF24l01;红外管;L298N;电动车 - I - 理工大学学士学位论文 The design of intelligent control children electric car Abstract In the twenty-first century, with the rapid development of science and technology, the intelligent control becomes more and more important, not only in the machinery field, but also in daily life. With the development of society, the rapid growth in the number of motorized vehicles leads to a series of questions. In this case, the intelligent car has become a new hot object. In daily life, the intelligent control of electric car for children shows its superiority and security. The design of smart electric vehicle control system is based on a new generation of 51 single-chip STC12C5A60S2 microcontroller function control. A 6 V DC motor is used in this design to control the two wheels of the rear, achieving forward, backward, left, right turn and other functions. The smart car uses the DC motor and its control circuit for the driving part of whole system, STC12C5A60S2 MCU is used as control core of the whole system, nRF24l01 wireless remote control module instead of RS232 serial control is used to realize the wireless control which is more popular; the smart car automatic obstacle avoidance is realized through the infrared detects the obstacles on the road; the C programming language is used to realize control, operability is greatly increased; Due to the use of L298N control module and 6 V dc motor, the speed regulation control is increased, speed is conveniently, flexibly controlled. Each module with software designed and simulated, and the physical of each module produced, the electric cars for children is achieved. The car can automatically avoid obstacles of different shapes and sizes; battery life of 300 m; measure distance range of 1 m; operate normally when the loading capacity of - II - 理工大学学士学位论文 1.5 kg; remote control distance of 0~10m. Keys STC12C5A60S2 MCU, Nrf24l01, infrared tube, L298N, electric car - III - 理工大学学士学位论文 目录 摘要 ........................................................... I Abstract ....................................................... II 第1章 绪论 .................................................... 1 1.1 课题背景 ............................................................................................... 1 1.1.1 智能小车的定义 ............................................................................. 1 1.1.2 智能小车在实际应用方面的意义 .................................................. 1 1.1.3 国内外智能小车的研究现状 ......................................................... 1 1.2 研究内容 ............................................................................................... 3 第2章 设计简介及设计论证 .................................. 4 2.1 设计简介与任务 ................................................................................... 4 2.2 各模块实现方法的分析 ........................................................................ 4 2.2.1 主控系统 ........................................................................................ 4 2.2.2 电机驱动模块 ................................................................................ 5 2.2.3 避障模块 ........................................................................................ 5 2.2.4 电源模块 ........................................................................................ 6 2.2.5 直流调速系统 ................................................................................ 6 2.2.6 遥控系统模块 ................................................................................ 6 2.2.7 测距模块 ........................................................................................ 7 第3章 硬件设计 ................................................ 8 3.1 单片机的最小系统设计 ........................................................................ 8 3.1.1 STC12c5a60s2单片机..................................................................... 8 3.1.2 时钟电路 ........................................................................................ 9 3.1.3 复位电路 ...................................................................................... 10 3.2 电源模块设计 ..................................................................................... 11 3.3 电机驱动模块设计.............................................................................. 11 3.4 遥控模块设计 ..................................................................................... 12 3.5 测距模块设计 ..................................................................................... 13 3.6 避障模块设计 ..................................................................................... 14 第4章 软件设计及系统实现 ..................................... 15 4.1 程序开发平台简述.............................................................................. 15 4.2 智能儿童电动车的整体设计 .............................................................. 15 4.3 系统实现及测试 ................................................................................. 17 4.4 现实生活中的方案实施 ...................................................................... 18 - IV - 理工大学学士学位论文 结论 .......................................................... 20 致谢 .......................................................... 21 参考文献 ...................................................... 22 附录A ........................................................ 23 附录B ........................................................ 28 - V - 理工大学学士学位论文 第1章 绪论 1.1 课题背景 随着电子技术、计算机技术和制造技术的飞速发展,数码相机、DVD、洗衣机、汽车等消费类产品越来越呈现光机电一体化、智能化、小型化等趋势。各种智能化小车在市场玩具中也占一个很大的比例。依据美国玩具协会的数据调查,近些年来全世界玩具销量增幅与世界GDP增幅大致相同。而全世界玩具市场的内在比例划分却发生了重大改变:传统玩具的市场比重正在逐步缩小,含有高科技的电子玩具却蒸蒸日上,已经成为玩家行业主流的发展趋势。因此,遥控加智能的技术研究、应用都是十分有意义而且具有很高市场价值。 1.1.1 智能小车的定义 所谓的“智能小车”是一个拥有感知环境、决策规划、智能辅助驾驶等功能的综合系统,它运用计算机及人工智能处理信息、高科技传感器采集传递信息、机械系统完成操作指令。现阶段智能车辆的主要研究方向是提高车辆的安全性、车内的舒适性,以及更好的进行人机信息交换。近年来,智能车辆俨然成为世界车辆工程研究领域的新宠儿和汽车工业的主打方向,世界上的很多国家都把智能车辆列为智能交通系统发展的重要对象。 1.1.2 智能小车在实际应用方面的意义 由于工业现场中大多数恶劣环境和危险环境中仍采用人工的操作方式,也促使我们对智能车的研究和开发。现在的智能小车已在许多部门得到广泛应用。例如焊接、喷漆、检测、医疗应用等。智能小车自主驾驶的研究是智能车辆研究的重要组成部分。智能车辆的自主驾驶将给人类社会带来巨大的进步,能够极大地提高交通道路的利用率,降低能源消耗,极大地改良车辆行驶的安全性,对于突发事件进行智能的高效的处理,给人身安全提供极大地保障。 在日常生活中,智能控制的儿童电动车在儿童外出时极大地保障了儿童外出的安全性,避免了由于成人的疏忽而造成的危险。 1.1.3 国内外智能小车的研究现状 智能车辆是智能交通系统的主要成员,能够极大地增加驾驶的安全性,大幅度提高公共交通的效率,降低能源的消耗量。该技术的研究已经 - 1 - 理工大学学士学位论文 成为国内外学者的主要研究对象。智能车辆通过各种传感技术获得车体自身和车边环境的状态信息,经过人工能智能等智能技术对信息进行综合分析、处理,将最终处理的结果通过显示技术传递给驾驶者。在危险发生之前,提醒驾驶者提前做出必要的躲避措施,避免危险的发生;在危险即将发生而驾驶员来不及反应时,智能车辆自主完成必要的躲避措施,防止危险的发生,极大地增加了车内乘员的生还几率。 美国交通部早已开展了一项五年投资为3500万美元的智能汽车研发,与通用公司合作开发一种车辆前后防撞系统。与此同时,美国俄亥俄州立大学和加州大学等正在对智能车辆进行更深入的研究,增加车辆的智能性和稳定性。CMU大学制造出一辆由Potiac运动跑车改装而成的名为NabLab 5的用于实验的智能车辆。它装有主控计算机、用于道路数据采集的摄像头、用于定位的GPS全球定位系统、以及雷达和其它辅助设施。在1995年对Nablab 5进行测试,车辆从宾州出发到达加州的圣地亚哥,其间路程4587公里,智能行驶路程高达4500公里。美国的移动系统MNA可以根据道路情况计算出最佳行驶路线,还能够及时更新路况信息,进行实时修改,使车辆始终行驶在最佳的路线上。美国军事上也极大地推崇智能车辆的研究,采用无人车代替人类去危险的地区进行巡逻任务,现今第三代技术已经发展到可以在无路和有路等多种情况下车辆进行自主运行。 欧洲开发基金正在进行车外环境感知、车内驾驶员情况监测、车内数据显示增强、前后车车间距控制以及多种传感器之间的信息融合等研究。同时,欧洲的一些国家也在进行车辆速度智能调整等研究作为汽车安全性提高的方法。其想法是通过道路两边标志信息加上卫星定位以及车载地图等数据对车辆进行导航等操作,同时智能调整汽车的运行速度。实验证明,采用此技术可以使交通事故的发生率降低两成左右。 目前,日本三菱公司和尼桑公司已经将夜视和后视报警等功能应用于一些汽车上,新一代的车辆前方防撞技术和道路偏离技术也有望在2年内实现。本田、尼桑、丰田公司也各自在智能车辆安全性计划中发展行车安全系统,它们包括:车辆定位系统、前后车车距控制系统、智能控制系统、障碍物检测系统、夜间行车报警系统等等。2003年日本实施了一项道路交通示范计划,到2015年将在全日本实施 Smart Way 计划。 在经济和科技等条件的制约下,我国对于智能车辆的研究相对落后于发达国家。清华大学汽车研究所是全国最早成立智能车辆研究的科研单位之一。在国家863计划的资助下,清华大学已经研制出了一辆由普通面包车改装而成的智能车辆。该车上装有采集道路信息用的高清摄像机、用于车辆定位的GPS定位系统、用于检测距离的超声波测距仪等等。该车采用计算机与单片机相互通信来控制车速、车间距、最佳行驶路线判定等从而体现车辆的智能性。现今,该智能车已经发展到第五代了。 - 2 - 理工大学学士学位论文 20世纪90年代以来,吉林大学智能车辆研究小组已经完成了JLUIV-1、2、3 三种型号的智能引导车辆的研究。其中第三代的智能车辆已经开始进行批量工厂生产的实验当中,即将投入市场。第三代JLUIV 性能优越,智能性高,一旦投入市场,必将很好的改善中国道路交通现状,能够产生很大的经济效益。 2003年7月国防科技大学研究成功了中国第一辆可以自主驾驶的车辆,其智能性和总体技术已经达到的世界先进水平。该车在高速公路上可以保持130公里/小时的速度稳定行驶,最高时速可以达到170公里/小时,并且该车具有智能超车等功能。车辆的自主驾驶的原理是用人工智能来模拟人类驾驶的方式。车辆内置的环境采集系统检测车辆外部道路的信息,检测与前车的距离和速度,相当于人类的眼睛;采用车载智能计算机和相应的单片机对各个模块采集的信息进行处理,决定车辆是否继续前行还是准备超车,其功能类似于人类的大脑;自动驾驶部分按照智能计算机计算出的最佳行驶路线,向方向盘控制器等控制装置发出指令,进行车辆的行驶调整,相当于人类的手和脚的功能。 飞思卡尔智能汽车竞赛就是在这种背景下产生的。比赛由国家教育部主办,飞思卡尔公司协办的。比赛由组委会提供统一的资料和用品,在不改变车辆模型底盘的基础下,制作可以在专门的跑道上自主识别最佳路线,单圈用时最短的车辆获胜。在这种比赛模式下,各个参赛队伍必须深刻的研究控制方案和数学模型,从外部模块制作到内部数据处理等方面来 [1]解决各种问题。此类比赛很好的促进了国内智能车辆的发展。 信息结合技术给智能车辆的发展带来了广泛的发展前景,使得智能汽车智能型、安全性极大地提高。但是要将各个传感器无缝的结合在一起还有很多的问题需要解决。虽然障碍不少,但是攻克这些问题的日子已经不远了。智能车辆行驶在道路上的日子指日可待。 1.2 研究内容 智能小车是一个运用计算机、传感、信息、通信、导航、人工智能及自动控制等技术来实现环境感知、规划决策和自动行驶为一体的高新技术综合体。它在军事、民用和科学研究等方面已获得了应用,随着人工智能技术、计算机技术、自动控制技术的迅速发展,智能控制必将迎来它的发展新时代。计算机控制与电子技术融合为电子设备智能化开辟了广阔前景。 本设计是基于无线通信模块智能小车控制系统设计,运用C语言、STC12C5A60S2、L298N等实现功能与控制。本设计主要研究在运用无线遥控模块控制的条件下,采用最基本的C语言编写控制程序,采用STC12C5A60S2单片机模块来实现机电控制,准确运用L298N实现高低电压控制直流电机,同时使用超声波模块测距。 - 3 - 理工大学学士学位论文 第2章 设计简介及设计方案论证 2.1 设计简介与任务 本次设计采用STC12C5A60S2单片机最小系统为主控系统,NRF24l01无线遥控模块、L298N电机驱动模块、红外避障模块、超声波测距等模块的智能儿童电动车。 任务:在现有的儿童小车上加装各种模块,设计并实现一个可以远程遥控、自动避障、远程报警的智能控制的儿童电动小车。 1) 遥控器的优先级高于小车自身的控制; 2) 当小车不处于遥控控制时,遇到障碍物自动避障; 3) 当小车不处于遥控控制时,与遥控器之间的距离超过1米自动远 程报警。 2.2 各模块实现方法的分析 2.2.1 主控系统 根据设计要求,我认为此设计属于多输入量的复杂程序控制问题。据此,拟定了以下两种方案并进行了综合的比较论证,具体如下: 方案一:选用一片CPLD(复杂的可编程逻辑器件)作为系统的核心部件,实现控制与数据处理等功能。 方案二:采用单片机作为整个系统的处理核心,用MCU控制行进中的小车,以实现既定的实验目标。 方案对比: 方案一中的CPLD具有运行速度快、编程简单、开发周期短等优点,可以用VHDL语言进行编写。但单片机在控制上较CPLD有较大的优势。同时,CPLD的处理速度非常快,然而小车的速度不需要太高,所以对系统处理信息的要求也不太高,在这一点上,单片机就已经可以胜任了。若采用CPLD,必将在控制上遇到许多不必要增加的难题。为此,我们不采用该种方案。 充分分析我们的系统,主要目的在于实现小车的自动控制,而在这一点上,单片机的优势就大大的显示出来了——控制简单、快捷、方便。这样一来,单片机可以充分发挥资源丰富、价格低、有较强的控制功能等优[2]点。 所以,方案二是较为理想的方案。 - 4 - 理工大学学士学位论文 2.2.2 电机驱动模块 方案一:采用继电器控制小车电机的工作与否,切换开关控制电机是否工作调节运行速度。 方案二:采用电阻网络或数字电位器调节电动机的分压,从而达到调速的目的。 方案三:采用功率三极管作为功率放大器的输出控制直流电机。 方案对比: 方案一的优点是电路连接方便简易,缺点是继电器的响应时间长,器件 [3]易损坏,寿命较短,可靠性不高。 方案二中电阻网络实现的调速范围有限,而且数字电阻的价钱比较贵性价比不高。更重要的问题是在于普通的电机阻值非常小,工作电流大,进行分压不仅仅降低了电机工作效率,而且较困难实现。 方案三中线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管(达林顿管又叫做复合三极管,它通常是将两个三极管接在一起,组成一个等效三极管。)构成的 H型桥式电路。使用单片机控制达林顿管在占空比可调的开关状态下工作,精确调整电动机转速。此种电路因为在饱和状态下工作,所以工作效率非常之高, H型桥式电路也保证了简单方便的调整速度和方向,电子管的开关速度很快,稳定性也极好,是一种广泛使用的PWM调速技术。现市面上有很多此种芯片,本设计选用了L298N。这种调速方式有调速效果优良、平滑调整、调速宽度大、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。 因此决定选用方案三,采用使用功率三极管作为功率放大器的输出控制直流电机。 2.2.3 避障模块 方案一:采用一块红外避障模块置于小车右侧。 方案二:采用二块红外避障模块分别置于小车的前端两侧,方向与小车前进方向平行。 方案三:采用一块红外避障模块置于小车中央。 方案对比: 方案一中考虑到中国司机是坐在车的左侧,所以在右侧实现不清楚的地方放置红外避障模块。但是儿童车的司机是小孩子,小孩子是极易被外物所吸引的,一旦被吸引很难照顾到左侧的情况,所以这种情况不符合儿童电动车的要求。 方案二对小车与障碍物相对距离和方位能做出较为准确的判别和及时反应。但此方案过于依赖硬件、成本较高、缺乏创造性,而且置于小车左 - 5 - 理工大学学士学位论文 方的红外对管用到的几率很小,所以最终未采用。 方案三红外避障模块安装简易,由于车身不是很大,所以位于车中央 [4]的模块极易检测到障碍物,进行及时的躲避。 通过比较我采用方案三。 2.2.4 电源模块 方案一:采用实验室有线电源通过稳压芯片供电。 方案二:采用5支1.5V电池单电源供电。 方案对比: 方案一中有线电源的优点是可稳定的提供5V、6V电压,但是小车使用的环境是室外,有线电源无法应用于这种情况。 由于小车中的电机是6V直流电机,单片机工作电压是5V,所以使用方案二中由多节电池组成的7.5V的直流电源。通过7806和7805三端稳压电路调节成所需要的电压即可,不限室内或室外使用。 所以,我选择了方案二来实现供电。 2.2.5 直流调速系统 方案一:使用V-M(晶闸管-电动机调速系统)系统进行直流调速。 方案二:采用晶闸管的直流斩波调速器进行直流调速。 方案对比: 方案一中提到的V-M系统是当今直流调速系统的主要形式。它可以是单相、三相或更多相数,半波、全波、半控、全控等类型,可实现平滑调速。V-M系统的缺点是晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难。它的另一个缺点是运行条件要求高,维护运行麻烦。最后,当系统处于低速运行时,系统的功率因数很低,并产生较大的谐波电流危害附近的用电设备。 方案二采用晶闸管的直流斩波器基本原理与整流电路不同的是,在这里晶闸管不受相位控制,而是工作在开关状态。当晶闸管被触发导通时,电源电压加到电动机上,当晶闸管关断时,直流电源与电动机断开,电动机经二极管续流,两端电压接近于零。脉冲宽度调制(Pulse Width Modulation),简称PWM。脉冲周期不变,只改变晶闸管的导通时间,即通过改变脉冲宽度来进行直流调速。 所以,我选择了方案二来实现供电。 2.2.6 遥控系统模块 方案一:采用红外遥控系统进行远程遥控 方案二:采用无线遥控系统进行远程遥控 方案对比: - 6 - 理工大学学士学位论文 方案一所选的红外遥控器(IR Remote Control)是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的遥控设备。 特点:周边环境不会被其影响、不会干扰其他电器设备的工作。由于红外遥控不具有穿透性,无法穿透墙壁,所以位于不用房间的家用电器可以使用通用的遥控器而各项之间不会产生干扰;电路调试不是很复杂,只要按照固定的电路进行连接,一般不需要其他调整工作就可进行工作;编解码简单,可进行多路遥控。因此,现在红外遥控在家用电器、室内近距离(小于10米)遥控中得到了广泛的应用。 方案二所选的无线电遥控器(RF Remote Control)是利用无线电波对远方的各个器件进行遥控的设备。发射出的无线电信号被远方的器件接收后,可以控制相应的电子设备或驱动相应的机械设备完成指令所设定的操作,例如开启或关闭电路、移动机械手臂、开启或关闭电机、之后这些机械进行所设定的动作。作为一种与红外遥控器相补充的遥控控制器种类,在车库门、电动门、道闸遥控控制、防盗报警器、工业控制以及无线智能家居领域得到了广泛的应用。 红外遥控器和无线遥控器是对不同的载波来说的,红外遥控器运用红外线来传递控制信号,发射端与接收端需要对准,红外线传播的过程中不能有阻挡物;无线遥控器运用无线电波传递控制信号,发射端与接收端无需对准,可以不用面对面控制,可达数十米,甚至数公里,容易受电磁干扰,在需要远距离穿透或者无方向性控制领域,比如工业控制等等,使用无线电遥控器较易解决。 根据以上综合比较,一般为户外使用,阻挡物较多,本设计采用方案 [5]二无线电遥控模式,进行对小车的控制。 2.2.7 测距模块 方案一:采用超声波测距模块测量人与车之间的距离。 方案二:采用红外测距模块测量人与车之间的距离。 方案对比: 方案一中的超声波测距模块是通过检测超声波发射后遇到障碍物所反射的回波,从而计算出发射与反射回波之间的时间差t,当被测距离远远大于超声波发射器与接收器之间的距离时,求出距离式中v为s,vt/2超声波波速。从而确定小车的位置。优点是测距模块耐污能力强,即使传感器上有杂物,但只要没有堵死就可以进行测距,在室外灰尘多的地方适应性强,测量范围广。 方案二中红外测距是通过检测红外信号在遇到不同距离的障碍物进行反射后反射强度的大小,进行距离的检测。红外测距的缺点是检测距离近,测量范围小。 综上,我选用方案一超声波测距模块为小车的测距模块。 - 7 - 理工大学学士学位论文 第3章 硬件设计 根据功能,将电路划分为6个模块:单片机最小系统模块、电机驱动模块、避障模块、电源模块、遥控模块、测距模块。模块框图如图3-1所示。 电机 电 驱动 源 M 模块 C 模 U 块 遥 避 测 控 障 距 模 模 模 块 块 块 图3-1 硬件框图 3.1 单片机的最小系统设计 3.1.1 STC12c5a60s2单片机 针对本设计特点——多开关量输入的复杂程序控制系统,需要擅长处理多开关量的单片机,而不能用精简I/O口和程序存储器的小体积单片机,D/A、A/D功能也不必选用。根据以上要求,我选定了STC12C5A60S2单片机作为本设计的主控装置,12单片机具有功能强大的位操作指令,I/O口均可按位寻址,程序空间多达60K,对于本设计绰绰有余,更可贵的是12单片机价格非常低廉。在综合考虑了传感器、两部电机的驱动等诸多因素后,我决定采用一块单片机,充分利用STC12C5A60S2单片机的资源。 STC12c5a60s2是片内有1280字节RAM的单片机,这种芯片构成的最小系统简单)可靠。用STC12c5a60s2单片机构成最小应用系统时,只要将单片机与时钟电路和复位电路连接即可。图3-2 为STC12c5a60s2单片机芯片。由于器件集成度的影响,最小系统只能用作一些比较微型的控 [6]制单元。其使用特点: - 8 - 理工大学学士学位论文 (1) 指令代码完全兼容传统8051,但是速度快8-12倍 (2) 内部结成MAX810专用复位电路,2路PWM,8路高速10位 A/D转换,针对电机控制,强干扰场合 (3) 提供大量I/O口 图3-2 STC12c5a60s2单片机芯片 3.1.2 时钟电路 STC12c5a60s2单片机的时钟产生方法有两种。内部时钟方式和外部时钟方式。STC12c5a60s2虽然有内部振荡电路,但内部振荡器只适用于对始终频率要求不敏感的场合,所以还需外部的晶振时钟。要形成外部的晶振时钟,必须外部附加电路。在引脚XTAL1和XTAL2上外接定时器件,选用11.0592MHZ的振荡晶体和电容组成自激振荡电路。电容值的选取并没有严格的要求,但电容的取值对振荡频率的稳定性、大小、起振速度有些许影响,CX1和CX2在20PF到30PF之间取值有较良好的稳定性。所以本设计采用22PF电容。 在设计印刷电路板时,晶体和电容应尽可能靠近单片机芯片安装,以减少寄生电容,更好的保证振荡器稳定和可靠地工作。为了提高温度稳定性,应采用NPO电容。如图3-3所示 - 9 - 理工大学学士学位论文 图3-3 时钟电路 3.1.3 复位电路 STC12C5A60S2系列单片机有5种复位方式:外部RST引脚复位,外部低压检测复位(新增第二复位功能脚RST2复位,实现外部可调复位门槛电压复位),软件复位,掉电复位/上电复位(并可选择增加额外的复位延时200ms,也叫MAX810专用复位电路,其实就是在上电复位后增加一个200ms复位延时),看门狗复位。 除了上电复位的方法外,还有手动按键复位的方法。本设计就是采用手动按键手动复位的方法。按键手动复位分为电平和脉冲方式两种。其中电平复位是把REST端经电阻与电源Vcc接通而实现的。按键手动复位电路见图3-4所示。 图3-4 复位电路 - 10 - 理工大学学士学位论文 3.2 电源模块设计 电源电路模块为整个系统提供各种驱动电压,包括单片机所需要的+5V驱动电压和电机驱动L298N的+6V工作电压以及6V直流电机所需的工作电压。供电电路还必须要提供足够大的输出功率,要保证整个电路的稳定工作,必须要有足够的驱动能力,为所有模块提供足够的功率。在有一定干扰的情况下,还要有一定的抗干扰能力,供电电路性能指标如达不到要求将导致系统无法正常工作,或者模数转换出来的结果偏差过大。过大的干扰还有可能导致单片机程序跑飞,或者单片机自动复位,甚至导致整个系统的损坏。综合整个设计的需要,搭建了如图3-5的电源电路。 图3-5 电源电路 3.3 电机驱动模块设计 小车电机的控制部分采用直流H桥集成功放电路。直流H桥功放电路是用于控制直流电机双向运动的基本电路,可以使电机在单电源供电下进行双向运转。图3-6所示为用三极管构成的H桥集成功放电路基本形式。为使电机顺时针转,应接通三极管A和D,通过改变不同的三极管导 [7~10]通状况,可改变电机两端电压,达到反转目的。 图3-6 H桥电路基本形式 - 11 - 理工大学学士学位论文 本设计选用L298N恒压恒流桥式驱动芯片。L298N是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路。可以比较方便的驱动2个直流电机,或一个步进电机。L298N输出的电压最高可以达到50V,可以直接连接到电源来调节输出电压;可以直接使用单片机的IO口提供输入信号;而且电路简单,使用比较方便。 L298N可以接受标准的TTL逻辑电平信号VSS,VSS可以连接5~7V电压。4引脚VS连接电源电压,VS的电压范围为2.5~46 V。输出电流可以达到2.5 A,可以驱动电感性负载。OUT1,OUT2和OUT3,OUT4之间可以分别连接电动机,本设计选用驱动一台电动机。5,7,10,12脚接输入控制电平,控制电机的正反转。EnA,EnB接控制使能端,控制电机 [9]的停转。图3-7为本设计所使用的电机驱动模块。 图3-7 电机驱动模块 3.4 遥控模块设计 本设计采用辅助模块,由于无线电的设计涉及的学科知识面比较广,调频比较困难。故此本设计直接应用市场上的成品无线电模块,出于成本的考虑,选用的无线电的有效控制距离是比较短的,但是这个不限制本设计功能的实现,距离的远近用户完全可以根据需要更换模块。本设计采用的是市面上常见的NRF24l01无线模块。Nrf24L01芯片是工作于2.4GHz全球开放的ISM频段,工作速率达到0~2Mb/s,外围的元件极少,内置硬件CRC和点对多点的通信地址控制,继承了频率合成器,还有晶体振荡器和调制解调器。 NRF24l01芯片最突出的特点是有2种通信模式:直接模式和突发模式。直接模式的使用与其他传统射频收发器的工作一样,需要通过软件在发送端添加校验码和地址码,接收端进行判断是否为本机地址并检查数据是否传输正确。突发模式使用芯片内部的先入先出堆栈区,数据可从低俗 - 12 - 理工大学学士学位论文 微控制器送入,高速发射出去,地址和脚丫吗硬件自动添加和去除,这种模式的优点是:一、可使用低速微控制器控制芯片工作;二、减少功耗;三、射频信号高速发射,抗干扰性高;四、减少整个系统的平均电流。因此,使用NRF24l01芯片特有的突发模式使得系统整体的性能和效率提高[11]。 3.5 测距模块设计 本设计选用单片机STC12c5a60s2 为中心控制单元,单片机输出30kHz 的信号,经信号放大器放大后由超声波的发射器端发射出去;同时开启发射电路和内部的定时器;超声波的接收器将接收到的信号经放大器放大,进行检波处理后,接收端产生一个下降沿,触发一个中断的请求,然后启动单片机的中断服务程序;利用定时器超声波发射与收到信号 [12]的时间差;然后由软件进行判别,计算距离并依此信号驱动电机。 超声波的发射部分是能够让超声波发射器TCT40-16T向外发出30kHz的方波信号。本系统中 30kHz 的方波信号是运用555定时器组成的多谐振荡器振荡产生的超声波发生电路如图3-8所示 图3-8 超声波发射电路框图 TCT40-16T 发射的信号在空气传播的过程中,遇到障碍就会返回,超声波接收的部分是为了将反射波顺利的被接收到。超声波接收器 TCT40-16R 将方波信号转换成电信号。 由于回波的电压数量级是在毫伏量级的,在传播距离较远的情况下,回波很弱,因而超声波接收电路主要是由接收器、功率放大器、比较及控制等部分组成。如图3-9所示 - 13 - 理工大学学士学位论文 图3-9 超声波接收电路框图 3.6 避障模块设计 自然界任何物体,只要其自身温度高于绝对零度都能向外辐射红外线,自身温度越低的物体向外辐射的红外线波长越长,根据所设定的红外线波长有选择地接收某一范围的波长,就可以达到测量的目的。红外传感器是一种能探测红外线的器件,能把红外线辐射能量的变化转换成电量的变化。小车在移动过程中通过红外传感器探测障碍物信息,确定物体位置,并将信息传给单片机,由单片机的避障程序驱动电机,从而实现智能小车的有效避障。图3-10为本设计所用的避障模块。 图3-10 红外避障模块 - 14 - 理工大学学士学位论文 第4章 软件设计及系统实现 本章通过软件的设计将控制系统与智能儿童小车其他部分相结合,采用STCSTC12c5a60s2单片机作为控制器,完成了控制和数据处理功能,自动避障功能,远程遥控,远程报警等功能,通过软件的编写和各模块的组装使得整个系统成为整体,完成整个职能控制的儿童电动车的制作工作。 4.1 程序开发平台简述 本设计采用的软件开发平台为Keil Uvision3。Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。无论是使用C语言还是汇编语言,其方便易用的集成环境、强大的软件仿真调试工具都很实用。Keil C51开发系统基本知识Keil C51开发系统基本知识。 同时Keil C51软件提供了丰富的库函数和功能强大的集成开发调试工具,全Windows界面。Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。 Keil C51工具包的整体结构,uVision与Ishell分别是C51 for Windows 和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及C51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。 设计中全部采用C语言编写,与汇编相比,C语言在功能上、结构 [13~16]性、可读性、可维护性上有明显的优势,易学易用。 4.2 智能儿童电动车的整体设计 在设计过程中,通过软件仿真,确定电路参数过程中,电路原理图经过反复修改,搭建实物分块测试过程中,由于器件制作误差,又进行了多次修改,才最终确定硬件设计方案。根据各部分仿真结果,得到整个设计[17~18]的原理图如图4-1所示,绘制了整体PCB板如图4-2 、4-3所示。 - 15 - 理工大学学士学位论文 图4-1 整体电路原理图 图4-2 PCB - 16 - 理工大学学士学位论文 图4-3 PCB 4.3 系统实现及测试 经过器件的筛选和各个模块的制作和购买,最终完成了智能控制的儿童电动车的整体制作,整体效果如图4-4所示。 图4-4 实物图 - 17 - 理工大学学士学位论文 经过小车实物室内室外的测试: (1) 驱动模块的驱动能力:考虑到现在做出的小车是一个等比例缩 小的模型,在测试的时候需要模拟一个等比例缩小的乘客(用 一个1.5Kg的砝码代替),一块L298N驱动模块和两个6V直流 电机的驱动能力足够驱动起整个小车。 (2) 电源模块的供电能力:7.5V直流电源足够支持小车及模拟乘客 行驶300米。 (3) 遥控范围:NRF24l01遥控模块在10m之内不会出现无法遥控 的情况,并且在室内和室外的性能相同。由于小车并不会离遥 控着很远,所以这个距离满足设计要求。 (4) 避障能力:红外避障模块可以很好的检测出不用形状、大小的 障碍物。由于避障模块安装在车头比较低的地方,所以如果障 碍物比较小,没有达到小车的检测标准,小车是不会把该物体 检测成需要进行避障操作的物体。但当障碍物比较细时,避障 模块无法准确的检测,这种情况的解决方法是在车头多放几个 模块。 (5) 测距模块:由于本设计所使用的测距模块比较粗糙,所以小车 测距的距离比较近(1m左右),如果在真正的小车制作的时候 可以使用精度较高的测距模块,以满足在现实生活所需要的距 离。 4.4 现实生活中的方案实施 由于资金等条件的限制,本次设计只做出了等比例缩小的儿童电动车的模型。当条件允许时,将小车模型里的模块安装到现实中的儿童小车就会真正的做出智能控制的儿童电动车。当在现实中实施方案时,就要考虑到现实中的元素对各个模块的影响: (1) 电机驱动模块的驱动能力 (2) 电源模块的供电能力 (3) 遥控模块的遥控能力 (4) 红外避障模块的避障能力 (5) 超声波测距模块的测距能力 小车行进的速度不是很高,考虑到小车自身重量和儿童自身体重的问题,我们使用两块L298N电机驱动模块加上两个大功率直流电机就不必担心驱动能力不够的情况发生。 现在市面上的电动车续航能力一般都在150km左右,而且电动车的续航能力完全取决于电瓶。所以只要我们使用的电瓶拥有足够的电量,对于会发生电池突发没电的情况也不必担心。 - 18 - 理工大学学士学位论文 Nrf24l01无线遥控模块在现实生活中的应用范围很广,所以不必担心到了室外复杂的环境就无法进行遥控。 现在市面上的红外避障模块精度很高,在5cm到1m的范围内连续可调,所以对于小车的避障能力也可以放心。 超声波测距模块对于室外的适应能力能强,而且测量精度也很高,所以测距能力也可以安心使用。 - 19 - 理工大学学士学位论文 结论 智能小车技术不仅在工业应用领域,还是在科学领域都是一项应用前景广泛的技术;无论在日常生活中还是在军事领域上,智能小车的作用越发的重要。本文设计了一个基于STC12c5a60s2单片机的智能控制的儿童电动车,并与多个传感器相结合。 本论文主要完成的工作:小车采用基于STC12c5a60s2单片机最小系统为小车的控制系统;学习、参考大量资料,分析各种模块的优缺点,最后确定具体模块并制作实物,增加儿童小车的安全性。现小车已经可以实现远程遥控、自动避障功能,达到了预期的效果。 不足之处:小车希望实现的远程报警功能无法达到预期的效果。远程报警只能在小车直线运行时才能报警而且实验误差较大,有待提高。 智能小车技术已经取得了可喜可贺的进展,但是还没有达到使用要求。随着技术的不断反正,智能小车一定能够达到在科学探测、日常生活、工业生产上的使用要求。 - 20 - 理工大学学士学位论文 致谢 - 21 - 理工大学学士学位论文 参考文献 1 陈懂.智能小车运动控制系统的研究与实现.东南大学,2005:3~6 2 沈红.基于单片机的智能系统设计与实现.电子工业出版社,2005: 1~10 3 苏神保,唐松文,黄会雄.智能小车单片机控制直流电机方案与设计. 湖南农机:24~26 4 王玉成,徐丽娟.智能控制小车常用传感器实现.数字技术与应用, 2010:6~8 5 吴媛媛.红外遥控技术浅析.广西轻工业,2009,25(1):72~73 6 宏晶科技.STC12C5A60S2系列单片机器件手册.2010年:140~145 董涛,刘进英,蒋苏. 基于单片机的智能小车的设计与制作.计算机7 测量与控制,2009.17(2):1~3 8 Jon Titus. Intelligent vehicle technologies. Product World, 2005.6: 100~103 9 邱丹,王东,高振东.直流电机PWM闭环调速系统[J].青岛大学学 报,2000,15(1):1,2 10 Huang L, Yu W. Speed control of differentially driven wheeled mobile robots—tracking and synchronization [A]. Proceedings of the 20"IEEE Instrumentation and Measurement Technology Conferonce[C]. 2003: 1407-1412 11 王代华,张志杰.基于NRF24L01的无线数据传输系统.现代电子技 术,2008.07:68~70 12 张国旭,张雅静.智能电动小车超声波测距定位系统的设计.煤矿机 械,2011,32(1):31~32 13 杨路明,郭浩志.C语言程序设计(第二版).北京邮电大学出版社, 2005:57~105 14 郭天祥.新概念51单片机C语言教程:入门、提高、开发、拓展全 攻略.电子工业出版社,2009:100~110 15 杨路明,郭浩志.C语言程序设计(第二版).北京邮电大学出版社, 2005:57~105 16 Jivan S.Parab, Vinod G.Shelake, Rajanish K. Kamat etc. Exploring C for microcontrollers- A Hands on Approach. Springer, 2007: 29~36 17 周润景,张丽敏,王伟.Altium Designer原理图与PCB设计.北京电 子工业出版社,2009:110~175 18 闫胜利,袁芳革,冷小冰.Altium Designer 6.x中文版实用教程:原理 图与PCB设计.电子工业出版社,2007:100~135 - 22 - 理工大学学士学位论文 附录A 基于视觉的准确道路跟踪 摘要 基于视觉的道路跟踪是即将6E集成主要是为了安全起见,在当前车辆的反应,例如嗜睡问题。然而,这样的系统必须接受司机必须具有良好的可靠性,在路旁识别和车辆位置估计。这样一个系统,因此必须能够在困难的情况下,尽管运行(由于闭塞,交通,恶劣的天气条件,等等)。此外,3D车辆估计的准确性,必须有足够的,为了养活随后的预警系统。我们所设计的系统能够识别车道与可靠性双方在当前图像,并采用了3D/4D建模提供了一个很好的识别以及非常精确的三维参数估计(车辆定位,转向角,道路弯曲等)。本文主要侧重于这3D原先的估计阶段,并提出我们最近的事态发展(车辆和每个路边车道跟踪应用程序之间的距离,分析距离的增加,垂直道路曲率估计)。然后提出算法的行为以及在模拟和实际情况,以证明该方法的可靠性。 第一章 引言 自80年代以来,科学界一直在解决驾驶的援助问题。几个系统正在实施的标准的车辆(如ABS和GPS导航系统为例)。然而,每次应用程序需要被视觉感知解决的问题似乎是马赫更加难以解决。事实上障碍,例如检测似乎可以很容易地实现由雷达系统,但目前尚不清楚如何区分危险的障碍,例如桥梁或路牌。此外,感知系统必须是天气和交通,以及敏感。针对这些原因,我们要求仍然有强大的视觉为基础的设计,以实现强大的检测和跟踪的道路边界板系统的房间。 我们已经开发出这样一个系统表现出良好的识别能力克服了各种困难情况。这种道路跟踪是能够认识到高速公路车道两侧和计算,如横向车辆的位置,转向和俯仰角,车道宽度和当地水平的道路曲率的三维参数。该算法采用原始的方法来识别图像中的道路两侧,也计算三维参数。本文着重对我们做上3D估计阶段的改进。特别是,我们已经提高了车辆的位置估计,并增加了垂直的道路曲率重建。该算法是现在能够继续在更远的距离。我们已经测试了算法的能力,在已知的模拟道路上,为了减少许多方 - 23 - 理工大学学士学位论文 案,包括水平和垂直曲率,倾斜和滚动变化,等等。我们也评估车辆的位置。以及在真实图像的车道宽度采用手工测量和相机焦距的估计。 本文首先介绍了经典的道路跟踪系统的方法,并简要说明我们的算法。我们运用新的三维参数估计下一次路旁已在图像检测。仿真和真实的结果,最后提出,并验证概念。 第二章 经典方法 在文献中使用两种主要方法来解决视觉的道路识别问题。这些方法主要依赖于路旁模型(3D模型或2D图像模型)。在第一种情况,三维路旁的模式,可以考虑到道路的参数和车辆定位参数,以及用于定义在图像的路边。路旁的检测,实现更多的时候,在利益的窗(WOI)。因此,这些意见将被用于更新的三维模型。几种三维模型都可以使用。首先,可以假设为直线和直线,如果在路边,一个简单的模型可以被使用[11],[9][17]。然而,这种技术的车辆定位参数产生错误的道路是不平坦的,如果双方都没有真正直。该模型主要用于分析距离有显着的非道路范围内,因为不高。以考虑到道路的曲率,高阶模型已经开发出来。例如,在[17],作者提出了三参数模型假设菲亚特道路。例如,更复杂的模型已被Dickmanns设计。在这种情况下,所使用的模型考虑了道路几何和车辆的自我状态。这些三维建模方法的主要缺点是一个薄弱的精度,如果模型是简单或强噪声的敏感性,如果更复杂的模型是一个艰难的更新。更多的时候,跟踪阶段采用更新的参数,在未来的图像,以帮助路旁检测。这个阶段通常是强制性的,因为背投影三维模型更多的时候是非线性的。这一预测从而降低了线性化误差。因为大多数预测中运行这些方法/更新使用状态演化的原则,他们需要一个初始参数估计。大多数情况下,这个阶段是实现人为“下列损失”可能是难以管理。 第二个经典的方法是根据使用二维图像建模的路旁识别。在这种情况下,几个模型可以发现:直线模型[11],[9][15],抛物线[13],[8],[7]多项式曲线,[12],样条曲线[2D],双曲线模型[12]。此外,多种方法,使用逆透视映射[2]。图像的方法是比3D的更经常更容易实现,因为他们并不需要精确的校准或车辆参数的知识。然而,车辆位置估计可能是困难的,因为这个阶段需要一个3D的估计。此外,路边位置的知识是不是真的用来帮助其他的认可。识别阶段使用这种一致性是很难设计。 然而,从图像路旁的位置开始,一些重建工艺能够计算道路的三维参数。这些方法可能是非常噪声敏感的,因为他们需要差最小化[3],[10]或类似[18][14]。此外,由于这些方法往往从认可计划有关的装饰,由于这个阶段的错误可能难以管理重建计划,即使是强大的(见例子[1])。 - 24 - 理工大学学士学位论文 第三章 路边认可 3.1原则 我们的做法已在[16]所述,[14]。这部分读者回顾路旁识别的基本原则。 识别方法是基于图像模型。它提供了可靠的,尽管在困难的条件下由于路旁识别:(1)原始图像的路旁,造型,我们的发展,(2)识别阶段要实现利益的体积非常小窗口的边界检测,(3)路边的认可有助于另一个识别,倒戈的一致性,然后保存在一个最佳的方式。 基于搜索树的识别方法。组合的还原法是通过修剪尽快搜索树[6]分支。这种技术并不需要在整个图像检测功能,因为它是积累方法的情况下。事实上,在这种情况下,检测,更多的时候,做一个更有效的方式,因为他们取得方法的窗户(W01)具有体积小,低噪音敏感。 3.2 检测 此阶段包括在检测的道路边,在先前定义的WOI。这WOI内部的每一行,最大坡度点本地化。与整点,从而组成,线段拟合中位数最小二乘法,考虑到从CXD推导出斜坡约束。其实这个探测器,试图找到一个段,按照目前的模式需要。如果没有部分可以得到2N-P尝试(对于一个给定的深度P的剩余权益区),但算法离开这个分支,在以前的深度P-1。 第四章 三维参数估计与跟踪 一旦图像位于路旁,这是必要的计算三维参数。经典方法更经常的联系,实现从图像数据的三维重建。这些方法的主要缺点是:(1)由于闭塞,一些图像数据不能被使用,即使他们可能很容易被其他线索推断,(2)由于非线性方程组,可能难以达到稳定的重建任何条件(3)图像估计的协方差可能难以顾及,虽然它可能是非常有用的,以提高精度和稳定性。 重建的过程中,我们使用基于线性估计。事实上,虽然我们已经选择了使用非线性三维模型,考虑到双方的倾斜和转向角度,道路宽度和横向和纵向的道路曲率,改造更新,实现由一个简单的卡尔曼滤波估计向量。 - 25 - 理工大学学士学位论文 第五章 参数估计结果 A.整个序列的算法演化 我们已申请超过1850图像序列的算法。水平的相机光圈为10.8。只有横向和纵向曲率图2。图3显示了典型的序列图像。识别距离取决于V1 )和150米{,1800之间组成)。 值(每幅图像更新),60M(图片,700 B.模拟数据性能 为了验证方法,我们已经使用了:道路模拟车辆运行。这种模拟器的主要优点是,它有可能施加3B参数(车辆的位置,相机倾斜,道路弯曲,ETE)和算法的行为。识别阶段被假定为正确没有错误。 第一个实验中取得了在道路上的轴(横向和纵向)ITT图4所示的配置文件。一个序列的图像如图5所示。我们已经使用的形状以及水平和垂直剖面(虽然我们的算法假定为常数的曲率为给定的图像)。我们实行了艰苦的曲率(250米,水平和垂直半径500米)。 图6给出所得的估计。洛姆距离和40M之间的距离,我们已申请了2扰动(平均值是50)。首先,我们可以看到垂直曲率变异的角度(虽然在较低的距离,这两个参数可以非常相关)不是很敏感。我们可以看到,在距离超出250米,算法预计约10米的曲率值。 六。结论和未来工作 在本文中,我们描述算法能够计算道路使用板上单眼单色相机提供的图像的场景的三维参数。我们的算法已承认与可靠性显着高速公路的车道两侧和计算以及可靠性道路曲率和车辆位置。我们已经评估了该算法的估计尊重每个车道一侧的车辆位置,车道宽度,倾斜和转向角度和卧式和能力。 垂直曲率。该算法使用非线性模型,考虑到每个前面的参数。这种模式的更新是原始的,因为它是一个线性的方式取得。结果无论是在模拟和真实案例,并显示了该方法的可靠性。特别是,我们显示的道路宽度的估计和车辆定位误差低于5厘米在标准情况下。 参考文献 1 "Driving Safely Into the Future with Applied Technology," Informational Brochure, U.S.DOT ITS Joint Program Office, Publication number FHWA-OP-99-034. - 26 - 理工大学学士学位论文 2 Donath, M, "The Vehicle-Highway Partnership: The Infrastructure Needs to Get Smarter," ITS Institute, University of Minnesota, Proceedirzgs of the 7th Irzternational Task Force on Vehi-cle-Highway Automation, Paris, 2003 3 Bracht, A, et al., "ActMAP Validation Plan, Deliverable D6.1, European IST Project IST-2001-34141," September 2003. 4 PSA e-Safety Presentation, e-Safety Conference, Lyon, France, September 2002. 5 "Bus Industry `Comes on Board' with Iteris Lane Departure Warning System," IVsource.net, December 19, 2004. 6 "Toyota's Approaches to ITS," Toyota promotional brochure, September 2002. 7 "Mack Trucks IV Initiative Field Operational Test System Specification," September 2004 unpublished. 8 Burgett, A., "IVI Light Vehicle Program," presented at the ITS America Annual Meeting, April 2004. 9 "Aisin Parking Assist for Prius," Automotive Engineering Irzterrzational, May 2004. 10 "Road Departure Crash Warning Field Operational Test," UMTRI Research Review April-June 2004. - 27 - 理工大学学士学位论文 附录B #include #include #define uchar unsigned char #define uint unsigned int //NRF24L01寄存器指令 #define READ_REG 0x00 // 读寄存器指令 #define WRITE_REG 0x20 // 写寄存器指令 #define RD_RX_PLOAD 0x61 // 读取接收数据指令 #define WR_TX_PLOAD 0xA0 // 写待发数据指令 #define FLUSH_TX 0xE1 // 冲洗发送 FIFO指令 #define FLUSH_RX 0xE2 // 冲洗接收 FIFO指令 #define REUSE_TX_PL 0xE3 // 定义重复装载数据指令 #define NOP 0xFF // 保留空操作 //SPI(nRF24L01)寄存器地址 #define CONFIG 0x00 // 配置收发状态,CRC校验模式以及收发状态响应方式 #define EN_AA 0x01 // 自动应答功能设置 #define EN_RXADDR 0x02 // 可用信道设置 #define SETUP_AW 0x03 // 收发地址宽度设置 #define SETUP_RETR 0x04 // 自动重发功能设置 #define RF_CH 0x05 // 工作频率设置 #define RF_SETUP 0x06 // 发射速率、功耗功能设置 #define STATUS 0x07 // 状态寄存器 #define OBSERVE_TX 0x08 // 发送监测功能 - 28 - 理工大学学士学位论文 #define CD 0x09 // 地址检测 #define RX_ADDR_P0 0x0A // 频道0接收数据地址 #define RX_ADDR_P1 0x0B // 频道1接收数据地址 #define RX_ADDR_P2 0x0C // 频道2接收数据地址 #define RX_ADDR_P3 0x0D // 频道3接收数据地址 #define RX_ADDR_P4 0x0E // 频道4接收数据地址 #define RX_ADDR_P5 0x0F // 频道5接收数据地址 #define TX_ADDR 0x10 // 发送地址寄存器 #define RX_PW_P0 0x11 // 接收频道0接收数据长度 #define RX_PW_P1 0x12 // 接收频道0接收数据长度 #define RX_PW_P2 0x13 // 接收频道0接收数据长度 #define RX_PW_P3 0x14 // 接收频道0接收数据长度 #define RX_PW_P4 0x15 // 接收频道0接收数据长度 #define RX_PW_P5 0x16 // 接收频道0接收数据长度 #define FIFO_STATUS 0x17 // FIFO栈入栈出状态寄存器设置 #define TX_ADR_WIDTH 5 //发送地址宽度为5字节 #define RX_ADR_WIDTH 5 //接收地址宽度为5字节 #define TX_PLOAD_WIDTH 3 //发送数据有效宽度3字节 #define RX_PLOAD_WIDTH 3 //接收数据有效宽度3字节 //2.4G模块IO端口定义 //sbit MISO =P1^6; //从SPI数据输出脚 //sbit MOSI =P1^5; //从SPI数据输入脚 //sbit SCK =P1^7; //SPI时钟 //sbit CE =P1^3; //RX或TX模式选择 //sbit CSN =P1^2; //SPI片选信号 - 29 - 理工大学学士学位论文 sbit MISO =P4^2; //从SPI数据输出脚 sbit MOSI =P4^1; //从SPI数据输入脚 sbit SCK =P4^3; //SPI时钟 sbit CE =P4^4; //RX或TX模式选择 sbit CSN =P4^0; //SPI片选信号 sbit IRQ =P3^2; //可屏蔽中断引脚 //LED端口定义 sbit LED1 =P2^4; sbit LED2 =P2^5; sbit LED3 =P2^6; sbit LED4 =P2^7; //按键端口定义 sbit key_up = P3^0; //右侧按键上 sbit key_down = P3^1; //右侧按键下 sbit key_left = P3^2; //右侧按键左 sbit key_right = P3^3; //右侧按键右 sbit key_up1 = P2^0; //右侧按键上 sbit key_down1 = P2^1; //右侧按键下 sbit key_left1 = P2^2; //右侧按键左 sbit key_right1= P2^3; //右侧按键右 uchar bdata sta; sbit RX_DR =sta^6; sbit TX_DS =sta^5; sbit MAX_RT =sta^4; // uchar tx_buf[3]= { - 30 - 理工大学学士学位论文 0x00,0x00,0x00, }; uchar TX_ADDRESS[TX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01}; //本地地址 uchar RX_ADDRESS[RX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01}; //接收地址 //串口初始化 void init() { SCON=0x50; //SCON:串行口工作方式1, 8-bit UART,允许串行接收位(REN=1) TMOD=0x20; //TMOD:定时器1,方式2,8位自动重装方式 PCON=0x80; //SMOD=1;(将串口传送的波特率加倍) TH1=0xfa; //Baud:9600 fosc=11.0592MHz TL1=0xfa; TR1=1; //启动定时器/计数器1运行 //外部中断0/1 设置 // EX0=1; //开外部中断0 设置 // IT0=0; //低电平触发 EA=1; //开总中断 } //向串口发送一个字符 void send_char(uchar a) { SBUF=a; //发送数据给“串口调试助手”接收窗口 while(TI==0); //等待发送完,TI置1 TI=0; //清零 TI为发送中断标志 - 31 - 理工大学学士学位论文 } //向串口发送一个字符串,strlen为该字符串长度 void send_buf(uchar *buf,uchar num) //向串口发送一个字符串,strlen为该 字符串长度 { uchar k; for(k=0;k0;n--) _nop_(); } //向NRF24L01写一字节数据同时读一字节数据(NRF24L01的SPI写时 序) uchar SPI_RW(uchar byte) - 32 - 理工大学学士学位论文 { uchar bit_ctr; for(bit_ctr=0;bit_ctr<8;bit_ctr++) { MOSI = (byte & 0x80); byte = (byte << 1); SCK = 1; byte |= MISO; SCK = 0; } return(byte); } //从NRF24L01读一字节数据(NRF24L01的SPI读时序) uchar SPI_Read(uchar reg) { uchar reg_val; CSN = 0; SPI_RW(reg); reg_val = SPI_RW(0); CSN = 1; return(reg_val); } //NRF24L01读写寄存器函数 uchar SPI_RW_Reg(uchar reg, uchar value) { uchar status; CSN = 0; status = SPI_RW(reg); - 33 - 理工大学学士学位论文 SPI_RW(value); CSN = 1; return(status); } //读多字节 数据 uchar SPI_Read_Buf(uchar reg, uchar *pBuf, uchar bytes) { uchar status,byte_ctr; CSN = 0; status = SPI_RW(reg); for(byte_ctr=0;byte_ctr
/
本文档为【智能控制的儿童电动车设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索