第一篇:学习移动机器人智能避障测距系统的报告
学习移动机器人智能避障测距系统的报告
【摘要】本文主要是以学习移动机器人智能避障测距系统为主,阐述学习过程中的心得体会。测距系统的应用场合非常的多,比如测距雷达、测速仪、测深仪、汽车倒车的报警装置等等。这里就浅谈智能的测距避障系统。【关键词】测距系统智能控制单片机
1.引言
智能控制(intelligent controls)是指在无人干预的情况下能自主地驱动智能机器实现控制目标的自动控制技术。控制理论发展至今已有100多年的历史,经历了“经典控制理论”和“现代控制理论”的发展阶段,已进入“大系统理论”和“智能控制理论”阶段。智能控制理论的研究和应用是现代控制理论在深度和广度上的拓展。20世纪80年代以来,信息技术、计算技术的快速发展及其他相关学科的发展和相互渗透,也推动了控制科学与工程研究的不断深入,控制系统向智能控制系统的发展已成为一种趋势。
自1971年傅京孙教授提出“智能控制”概念以来,智能控制已经从二元论(人工智能和控制论)发展到四元论(人工智能、模糊集理论、学运筹和控制论),在取得丰硕研究和应用成果的/ 7 同时,智能控制理论也得到不断的发展和完善。智能控制是多学科交叉的学科,它的发展得益于人工智能、认知科学、模糊集理论和生物控制论等许多学科的发展,同时也促进了相关学科的发展。智能控制也是发展较快的新兴学科,尽管其理论体系还远没有经典控制理论那样成熟和完善,但智能控制理论和应用研究所取得的成果显示出其旺盛的生命力,受到相关研究和工程技术人员的关注。随着科学技术的发展,智能控制的应用领域将不断拓展,理论和技术也必将得到不断的发展和完善。
本文就移动机器人其中一个小系统进行学习研究,体现出智能控制的特点:智能控制的核心在高层控制,即组织级;智能控制器具有非线性特性;智能控制具有变结构特点;智能控制器具有总体自寻优特性;智能控制系统应能满足多样性目标的高性能要求;智能控制是一门边缘交叉学科;智能控制是一个新兴的研究领域。
2.测距系统的组成及工作原理
智能移动机器人的出现给人们的生活带来越来越多的惊喜,要想机器人在移动过程中的路径准确,就必须将其安装测距系统,以使其及时获取距障碍物的信息(距离和方向),为了躲避障碍物,机器人的移动路径要能做智能调整, 使其在二维空间中,在起始点、目标点已知的条件下,当移动机器人避障成功后执行规划系统预先规划的路径,获得较短的路径长度并到达目标点为止。测距系统中涉及了超声波和单片机。这里就超声波和单片机作简要介绍和选取型号。/ 7 科学家们将每秒钟振动的次数称为声音的频率,它的单位是赫兹。我们人类耳朵能听到的声波频率为 20 ~ 20000Hz。当声波的振动频率大于 20KHz 或小 于 20Hz 时,我们便听不见了。因此,我们把频率高于 20000 赫兹的声波称为 “ 超声波 ”。为什么测距系统中要用超声波来测距,那是因为我们机器人获取障碍物信息要它的距离和方向,而超声波具有:a.超声波在传播时,方向性强,能量易于集中;b.超声波能在各种不同媒质中传播,且可传播足够远的距离;c.超声波与传声媒质的相互作用适中,易于携带有关传声媒质状态的信息。正因为这些特点所以采用超声波。
单片机就是我们经常接触的CPU,它可以处理许多指令,最初的8031单片机生产成本低,功能够用所以当时被很多产品所采用。研读的这篇移动机器人采用了AT89S52单片机,AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业51系列单片机产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
这篇文章针对移动机器人的在行驶过程中需要获取障碍物距离和方向信息,设计了基于超声波测距模块URM37V3.2的测距系统, 同时,在假设起始点、目标点位置已知的条件下,以遗传算法对于模糊避障控制器进行最优化设计,设计在三个障碍物环境最佳避障模糊控制器。/ 7 3.软件设计和路径规划算法
原文是这么说的“单片机通过超声波测距模块U R M 3 7 V 3.2 要获得正确的距离、角度信息,就必须按照URM37V3.2的通信协议进行工作。启动16位距离信息读取命令的格式为0 x 2 2 + 度数+ N C + S U M ,其中N C 代表任意数据,SUM代表校验和,度数被测方位的角度信息,当测量完毕以后URM37V3.2返回给单片机的数据格式为0x22+距离高+距离低+ S U M,S U M 代表校验和,如果检验和正确,,经过距离运算子程序即可得到发送角度方位对应的距离。”其中测距系统模块化之后大大减少了系统的复杂性,可以由多个子系统组成一个大系统。模块的编程都采用和汇编语言,编程直接简单,模块通信接口多功能强大。
而路径规划则是采用了模糊规则与遗传算法相结合,这个规则是这样的移动机器人按照规划系统所规定的路径,向目标点方向前进,当移动机器人遇到障碍物时,反馈系统,即以遗传算法设计的避障模糊控制器,复杂做避障运动,等到避障成功后,继续执行规划系统预先规划的路径,并到达目标点为止。遗传算法通过调整避障模糊控制器的参数,包括模糊规则,模糊隶属函数的低端参数、范围,以及加入染色体遗传基因,并由适应度函数的计算,比较适应度,搜索最佳染色体,并得到最佳避障模糊控制器。三个障碍物环境下以遗传算法设计最佳避障模糊控制器的方法和步骤为:首先进行遗传算法参数编码,得到调整参数。包括对输入变量移动机器人前端到障碍物边缘的距离Dco、移动机器人分别与障碍物及目标点的角度差Ae以及输出变量移动机器人的转角的隶属函数底端参数,控制规则库参数、基因算子参数进行编码。其中输/ 7 入、输出变量的隶属函数底端每个变量取5个,三个变量共15个参数,控制规则库参数取25条,基因算子参数分别为输入变量Dco、输入变量Ae以及输出变量f 三个,所以调整参数共有43个,即为遗传算法的染色体长度,图1为染色体调整参数编码图。其次对路径规划定义适应函数,本文的路径规划要求机器人不能碰撞到障碍物,并使得路径越短越好,所以这个问题为路径最短问题,路径越短,其适应度越高,被选择的概率越大,定义的适应函数如下:
fit = 100-(d + cob + cow)其中fit:适应度 d::总路径
cob:碰撞到障碍物的系数 cow:碰撞到墙的系数。
从适应函数可以看出,总路径长d越短时,适应度就越大,越符合设计要求,碰撞到障碍物的系数cob和碰撞到墙的系数cow越小,适应度就越大,越符合设计要求。将模拟参数定义为:
基因算子搜索范围: dco[-10 10]、Sae [-10 10]、Stheta[0 100] 搜索数:15 种群大小:50 / 7 交配率:0.9 变异率:0.03 通过计算机对三个障碍物的环境下以遗传算法设计避障模糊控制器进行模拟,可以获得三个障碍物环境的最佳避障模糊控制器,将未经由遗传算法最优化的避障模糊控制器和经由遗传算法最优化的最优模糊避障控制器进行模拟比较,设定障碍物环境为100×80单位长,障碍物边界为墙,移动机器人的起始位置(xsi,ysi)=(10,10),目标点位置为(xg,yg)=(90,70),定义up为未最优化的避障模糊控制器,op3为以三个障碍物环境为基础的最优避障模糊控制器。d为移动机器人由起始位置经由避开障碍物,最后到达目标所行驶的总路径长度,通过计算机仿真可得,移动机器人采用未经由遗传算法最优化的避障模糊控制器所行驶的路程d=118,采用经由遗传算法最优化的最优模糊避障控制器所行驶的路程d=114。
根据作者的设计思路我们可以看出通过操控URM37V3.2模块可以很方便地获得多方位的障碍物距离信息,在复杂的环境下以遗传算法进行模糊控制器的最优化设计,可以提高模糊控制器的适应性,使其适应不同的环境,使移动机器人由起始位置开始,能够避免与障碍物发生撞墙的错误情形发生,并到达目标点,使移动机器人的行走的路径为最短。/ 7 4.结束语
从上文可以看出智能控制的趋势,其中人工智能为智能控制提供了机遇。自动控制理论发展到今天的智能控制,主要有三个阶段:第一阶段是以上世纪 40 年代兴起的调节原理为标志,称为经典控制理论阶段;第二阶段以 60 年 代兴起的状态空间法为标志 , 称为现代控制理论阶段;第三阶段则是 80 年代兴起的智能控制理论阶段。
近年来 , 智能控制技术在国内外已有了较大的发展,己进入工程化,实用化的阶段。但作为一门新兴的理论技术,它还处在一个发展时期。然而,随着人工智能技术,计算机技术的迅速发展,智能控制必将迎来它的发展新时期。/ 7
第二篇:智能避障机器人设计外文翻译
外文翻译
INTELLIGENT VEHICLE
Our society is awash in “machine intelligence” of various kinds.Over the last century, we have witnessed more and more of the “drudgery” of daily living being replaced by devices such as washing machines.One remaining area of both drudgery and danger, however, is the daily act ofdriving automobiles 1.2 million people were killed in traffic crashes in 2002, which was 2.1% of all globaldeaths and the 11th ranked cause of death.If this trend continues, an estimated 8.5 million people will be dying every year in road crashes by 2020.In fact, the U.S.Department of Transportation has estimated the overall societal cost of road crashes annually in the United States at greater than $230 billion.When hundreds or thousands of vehicles are sharing the same roads at the same time, leading to the all too familiar experience of congested traffic.Traffic congestion undermines our quality of life in the same way air pollution undermines public health.Around 1990, road transportation professionals began to apply them to traffic and road management.Thus was born the intelligent transportation system(ITS).Starting in the late 1990s, ITS systems were developed and deployed.In developed countries, travelers today have access to signifi-cant amounts of information about travel conditions, whether they are driving their own vehicle or riding on public transit systems.As the world energy crisis, and the war and the energy consumption of oil--and are full of energy, in one day, someday it will disappear without a trace.Oil is not in resources.So in oil consumption must be clean before finding a replacement.With the development of science and technology the progress of the society, people invented the electric car.Electric cars will become the most ideal of transportation.In the development of world each aspect is fruitful, especially with the automobile electronic technology and computer and rapid development of the information age.The electronic control technology in the car on a wide range of 1
外文翻译
applications, the application of the electronic device, cars, and electronic technology not only to improve and enhance the quality and the traditional automobile electrical performance, but also improve the automobile fuel economy, performance, reliability and emissions purification.Widely used in automobile electronic products not only reduces the cost and reduce the complexity of the maintenance.From the fuel injection engine ignition devices, air control and emission control and fault diagnosis to the body auxiliary devices are generally used in electronic control technology, auto development mainly electromechanical integration.Widely used in automotive electronic control ignition system mainly electronic control fuel injection system, electronic control ignition system, electronic control automatic transmission, electronic control(ABS/ASR)control system, electronic control suspension system, electronic control power steering system, vehicle dynamic control system, the airbag systems, active belt system, electronic control system and the automatic air-conditioning and GPS navigation system etc.With the system response, the use function of quick car, high reliability, guarantees of engine power and reduce fuel consumption and emission regulations meet standards.The car is essential to modern traffic tools.And electric cars bring us infinite joy will give us the physical and mental relaxation.Take for example, automatic transmission in road, can not on the clutch, can achieve automatic shift and engine flameout, not so effective improve the driving convenience lighten the fatigue strength.Automatic transmission consists mainly of hydraulic torque converter, gear transmission, pump, hydraulic control system, electronic control system and oil cooling system, etc.The electronic control of suspension is mainly used to cushion the impact of the body and the road to reduce vibration that car getting smooth-going and stability.When the vehicle in the car when the road uneven road can according to automatically adjust the height.When the car ratio of height, low set to gas or oil cylinder filling or oil.If is opposite, gas or diarrhea.To ensure and improve the level of driving cars driving stability.Variable force power steering system can significantly change the driver for the work efficiency and the state, so widely used
外文翻译
in electric cars.VDC to vehicle performance has important function it can according to the need of active braking to change the wheels of the car, car motions of state and optimum control performance, and increased automobile adhesion, controlling and stability.Besides these, appear beyond 4WS 4WD electric cars can greatly improve the performance of the value and ascending simultaneously.ABS braking distance is reduced and can keep turning skills effectively improve the stability of the directions simultaneously reduce tyre wear.The airbag appear in large programs protected the driver and passenger's safety, and greatly reduce automobile in collision of drivers and passengers in the buffer, to protect the safety of life.Intelligent electronic technology in the bus to promote safe driving and that the other functions.The realization of automatic driving through various sensors.Except some smart cars equipped with multiple outside sensors can fully perception of information and traffic facilities and to judge whether the vehicles and drivers in danger, has the independent pathfinding, navigation, avoid bump, no parking fees etc.Function.Effectively improve the safe transport of manipulation, reduce the pilot fatigue, improve passenger comfort.Of course battery electric vehicle is the key, the electric car battery mainly has: the use of lead-acid batteries, nickel cadmium battery, the battery, sodium sulfide sodium sulfide lithium battery, the battery, the battery, the flywheel zinc-air fuel cell and solar battery, the battery.In many kind of cells, the fuel cell is by far the most want to solve the problem of energy shortage car.Fuel cells have high pollution characteristics, different from other battery, the battery, need not only external constantly supply of fuel and electricity can continuously steadily.Fuel cell vehicles(FCEV)can be matched with the car engine performance and fuel economy and emission in the aspects of superior internal-combustion vehicles.Along with the computer and electronic product constantly upgrading electric car, open class in mature technology and perfected, that drive more safe, convenient and flexible, comfortable.Electric cars with traditional to compete in the market, the car will was electric cars and intelligent car replaced.This is the question that day
外文翻译
after timing will come.ABS, GPS, and various new 4WD 4WS, electronic products and the modern era, excellent performance auto tacit understanding is tie-in, bring us unparalleled precision driving comfort and safety of driving.The hardware and software of the intelligent vehicle are designed based on AVR.This system could set the route in advance.The vehicle could communicate with the PC vianRF401 and could run safely with the help of ultra sound detection and infrared measuring circuit.Neural network self-study is used to improve the intelligence of the vehicle.The performance of servo systems will determine the property of the robot.Based on AVRseries MCU,the velocity servo system for driving motor is created in this paper,including a discrete PIregulator which will work out a PWM control signal with applying the skill of integral separation.The velocities of motors will be controlled real-time with the speed sampling frequency set for 2KHz by using the AVR-GCC compiler software development.Compared to the servo system development based on the 51 Series MCU,the system here has these advantages of simpler peripheral circuit and faster data processing.The experiments demonstrate that,the mobile robot runs stably and smoothly by the control of AVR units,and that the design proposal especially benefits the development of intelligent mobile robots,also can be widely used in the development of other smart devices and product lines.A new design of contest robot control system based on AVR Atmega8 was put forward.According to the character of contest robot , the main control unit , motor drive unit , sense detection unit and LCD display unit were introduced.Furthermore the servo driver system based on MCBL3006S , the line t racker sensor system and the obstacle avoidance sensor system were presented in detail.Finally the performance shows
that
the
control
system
is
open,simple,easy programming,intelligent and efficiency.Avoidance rules of intelligent vehicle obstacle are intro ducted.Through the collection of infrared sensor formation,the rules use diode D1 to launch and diode D2 to receive infrared signals.Infrared transmitter signal without a dedicated circuit
外文翻译
comes directly from the MCU clock frequency, which not only simplifier the circuit and debugging, but also make the circuit stability and anti-jamming capability greatly enhanced.After the experimental verification,the system runs reliably meet the design requirements.A smart car control system of the path information identified based on CCD camera was introduced.The hardware structure and scheme were designed.The control strategy of s teering mechanism was presented.The smart car not only can identify the road precisely, but also have ant-interference performance, and small steady state error.This article designed smart car system,includes the aspects of the sensor information acquisition and processing, motor drive, control algorithm and control strategy etc.Using laser sensor to collect the road information which can feedback to the micro-controller control system,then making analytical processing combined with the software.With velocity feedback and PID control algorithms to control steering engine and the speed of smart car.Verified by actual operation, this method makes smart car travel stably and reliably,and its average speed to reach 2.6m /s, and get a satisfied results.By the aid of the professional know ledge of control, patter n recognition, sensor technology, aut omotive electronics, electricity, computer, machinery and so on, an intelligent vehicle system is designed with PID control algorithm,CCD detection system and HC9SDG128 MCU.Code Warrior IDE integrated development programming environment is taken as a basic softy are platform that can automatically deal with the traffic and image pro cessing, and then adjust the moving direction along the scheduled or bit by t he aid of a CCD camera.The system has many advantages, such as high reliability , high stability, good speed ability and scalability.Based on the research background of the Free-Scale smart car competition,a smart track following car is designed.In the car, the photo electricity sensor is used to check the path and obtain the information of racing road, and calculate the error
外文翻译
between the car and the black line.The fuzzy control is used to control the velocity of the car.The experiments show that the smart car based on the fuzzy control has high accuracy on the judgment of the path, stability and velocity control.外文翻译
智能车
我们的社会充斥着各种各样的“机器智能“。在过去的世纪,我们目睹越来越多日常生活中的“苦差事“被机器设备解决,如洗衣机。
然而,一个既枯燥又危险的保留区域就是日常驾驶汽车。2002年,120万人死于交通事故,这是所有全球2.1%死亡,死因排名第11。如果这种趋势继续下去,估计从2020年起每一年死于道路交通统(ITS)。20世纪90年代中后期开始,它的系统进行了开发和部署。在发达国事故的人将达到850万人。事实上,美国交通部估计交通事故的整体社会成本每年超过2300亿美元。
数百或数千辆车共享相同的道路时,就导致了大家都熟悉的交通挤塞。交通挤塞破坏了我们的生活质量就像空气污染损害公众健康。1990年左右,公路运输的专业人士开始申请让他们在交通和道路管理。于是诞生了智能交通系家,旅客今天能够获得旅行条件的信息,无论是驾驶自己的车或乘坐公共交通系统。
随着世界能源危机的持续,以及战争和能源-----石油的消耗及汽车饱有量的增加,能源在一天一天下降,终有一天它会消失的无影无踪。石油不是在生资源。所以必须在石油耗净之前找到一种代替品。随着科技的发展社会的进步,有人发明了电动汽车。电动汽车将成为人们最为理想的交通工具。
世界在各各方面的发展都取得丰硕成果,尤其是随着汽车电子技术和计算机以及发展迅速的信息时代。电子控制技术在汽车上得到了广泛应用,汽车上应用的电子装置越来越丰富,电子技术不仅用来改善和提高传统汽车电器的质量和性能,而且还提高了汽车的动力性、燃油经济性、可靠性以及废气排放的净化性。汽车上广泛使用电子产品不仅降低了成本,并且减少维护的复杂性。从发动机的燃油喷射点火装置、进气控制、废气排放控制、故障自诊断到车身辅助装置都普遍采用了电子控制技术,可以说今后汽车发展主要以机电一体化。汽车上广泛采用的电子控制点火系统主要有电子控制燃油喷射系统、电子控制点火系统、电子控制自动变速器、电子控制防滑(ABS/ASR)控制系统、电子控制悬架系统、电子控制动力转向系统、车辆动力学控制系统、安全气囊系统、主动安全带系统、电子控制自动空调系统、导航系统还有GPS等。有了这些系
外文翻译
统汽车响应敏捷,使用功能强,可靠性高,既保证发动机动力又降低燃油的消耗,而且又满足排放法规的标准。
汽车是现代人必不可少的交通工具。而电动汽车给我们带来无限乐趣外还能给我们劳累一天的身心得以放松。就拿自动变速器来说吧,汽车在行驶时,可以不踩离合器踏板,就可以实现自动换档而发动机不会熄火,这样有效的提高驾驶方便性减轻驾驶员的疲劳强度。自动变速器主要由液力变矩器、齿轮变速器、油泵、液压控制系统、电子控制系统、油冷却系统等组成。电子控制的悬架主要是用来缓冲路面对车身的冲击力以及减少振动保证汽车平顺性和操纵稳定性。当汽车行驶在不平坦的道路时汽车能能根据底盘和路面高度自动调整。当车高比设置的高度低时,就向气室或油缸充气或充油。如果是相反,就放气或泻油。从而保证汽车的水平行驶,提高行驶稳定性。可变力动力转向系统因能显著改变驾驶员的工作效率和状态,所以在电动汽车上广泛使用。VDC对汽车性能有着至关重要的作用它能根据需要主动对车轮进行制动来改变汽车的运动状态,使汽车达到最佳的行驶状态和操纵性能,并增加了汽车的附着性,控制性和稳定性。除了这些之外4WS、4WD的出现大大提高了电动汽车的价值与性能同步提升。ABS具有减少制动距离并能保持转向操作能力有效提高行驶方向的稳定性同时减少轮胎的磨损。安全气囊的出现在很大程序上保护了驾驶员和乘客的安全,大大降低汽车在碰撞时对驾驶员和乘客的缓冲,以过到保护生命安全的目的。
智能电子技术在汽车上得以推广使得汽车在安全行驶和其它功能更上一层楼。通过各种传感器实现自动驾驶。除些之外智能汽车装备有多种传感器能充分感知交通设施及环境的信息并能随时判断车辆及驾驶员是否处于危险之中,具备自主寻路、导航、避撞、不停车收费等功能。有效提高运输过程中的安全,减少驾驶员的操纵疲劳度,提高乘客的舒适度。当然蓄电池是电动汽车的关键,电动汽车用的蓄电池主要有:铅酸蓄电池、镍镉蓄电池、钠硫蓄电池、钠硫蓄电池、锂电池、锌―空气电池、飞轮电池、燃料电池和太阳能电池等。在诸多种电池中,燃料电池是迄今为止最有希望解决汽车能源短缺问题的动力源。燃料电池具有高效无污染的特性,不同于其他蓄电池,其不需要充电,只要外部不断地供给燃料,就能连续稳定地发电。燃料电池汽车(FCEV)具有可与内燃机汽车媲美的动力性能,在排放、燃油经济性方面明显优于内燃机车辆。
外文翻译
随着计算机和电子产品不断开级换代,电动汽车技术也在日趋成熟与完善,使得驾驶更安全、方便、灵活、舒适。电动汽车真正能够与传统的燃油汽车相竞争,今后汽车市场终会被电动汽车和智能汽车所取代。这只是时间性的问题这一天终究会来到的。ABS、GPS、4WS、4WD以及各种新时代的电子产品与现代高性能汽车默契组合、绝妙搭配,带给我们无与伦比的精准驾驶舒适性和行驶安全性。
以AVR 单片机为核心, 提出了一种智能探测小车的软硬件设计方案。系统可以预先设定小车的行走路线, 能够实现小车与计算机之间的无线通讯, 通过超声测物和红外测障电路使小车安全行走。另外, 系统通过JTAG 接口在线调试程序。软件设计中采用神经网络自学习, 大大增强了小车的智能化.执行元件的伺服系统性能将决定机器人的性能。基于AVR 系列单片机,并应用积分分离技术,设计离散PI 调节器,输出PWM 控制信号,建立驱动电机的速度伺服控制系统。使用AVR - GCC 编译软件开发伺服系统软件,设定速度采样频率为2KHz,实现对电机速度的实时控制。与基于51 系列单片机开发的伺服系统相比,本系统所需的外围电路更简单,数据处理速度更快。实现了机器人响应快速,移动平稳。该伺服系统的开发尤其适用于智能移动机器人,还可以广泛应用于其它智能设备和生产线。
提出了一种基于AVR 单片机Atmega8 为核心控制器的比赛机器人控制系统,通过比赛机器人的特征分析,阐述了构成控制系统所需的主控单元、电机驱动单元、传感检测单元及LCD 显示单元,其中详细分析了以MCBL3006S 为核心的伺服电机驱动单元,以及关系比赛机器人基本功能实现的循线传感系统及避障传感系统,并给出部分程序。最后通过实践表明,该控制系统开放性好、结构简单、编程容易、智能并高效。
智能车的避障规则,通过对红外传感器的信息进行采集,使用二极管D1 发射红外线,二极管D2 接收红外信号。红外线发射部分不设专门的信号发生电路,直接从单片机实现时钟频率,既简化了线路和调试工作,又能使电路的稳定性和抗干扰能力大大加强。经实验验证,该系统运行可靠,达到了设计要求。
介绍一种基于CCD 摄像头的路径识别的智能车控制系统, 设计了硬件结构与方案, 提出了转向机构的控制策略, 该智能车能准确实现自主寻迹, 具备抗干扰性极强, 稳态误差小等特点。
外文翻译
智能车系统,包括传感器信息采集与处理、电机驱动、控制算法及控制策略等方面。采用激光传感器采集道路信息并反馈给单片机控制系统,通过软件进行相关分析处理,通过速度反馈和PID 算法控制舵机转向和智能车速度。通过实际运行验证,本方法使智能车运行稳定、可靠,其平均速度达到2.6m/s,得到比较理想的效果。
为了综合利用控制、模式识别、传感器技术、汽车电子、电气、计算机、机械等专业领域知识, 设计实现了一个基于PID 控制算法, CCD 检测系统, 并采用H C9SDG128 单片机作为主控芯片的智能车系统。该系统使用Codewar rio r IDE 集成开发环境作为程序设计的基本软件平台, 能利用摄像头自动识别路况, 进行图像处理, 进而调整方向沿预定轨道前行, 具有很强的可靠性、稳定性、快速性、扩展性。
以“飞思卡尔”杯智能车大赛为研究背景,开发了一种智能循迹小车。该小车采用光电传感器检测路径,获得赛道信息,求出小车与黑线间的偏差,采用模糊控制对小车的速度进行控制,使小车能够自动跟随直道和弯道。实践表明,采用模糊控制的智能小车在路径识别的精准度,稳定性,及速度控制上具有明显优势。
第三篇:智能避障小车试验报告与总结
智能避障小车试验报告与
总结
专业班级:12自动化-3 姓 名:李昆伦 学 号:1216306058
随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视觉传感器的核心器件是摄像管或CCD,目前的CCD已能做到自动聚焦。但CCD传感器的价格、体积和使用方式上并不占优势,因此在不要求清晰图像只需要粗略感觉的系统中考虑使用接近觉传感器是一种实用有效的方法。
STC12C5A60S2/AD/PWM系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路速10位A/D转换(250K/S),针对电机控制,强干扰场合。我们采用的就是STC12C5A60S2这种单片机。
避障系统可以采用反射式光电开关或者超声波传感器对前方的障碍物进行检测,前者结构简单,应用方便灵活,但不能获知障碍物与小车间的具体距离;后者结构复杂,但可以测得障碍物与小车间的直线距离。本系统采用反射式光电开关E3F-DS10C4来检测障碍物。E3F-DS10C4是漫反射式光电开关,NPN三线输出方式,三线分别为电源线、输出线、地线。它的灵敏度也可以调节,检测距离比较远,可以达到20cm。
红外发射管,发射50hz调制的38k信号。当遇到障碍物时,发生漫反射,红外接收头接收到这一信号时,输出端输出50hz的信号。判断这一信号,即可判断,遇到了障碍物。
避障传感器基本原理,利用物体的反射性质。在一定范围内,如果没有障碍物,发射出去红外线,因为传播距离越远而逐渐减弱,最后消失,或者反射回来的光很弱时,输出端呈低电平光电开关的检测不受外界干扰。如果有障碍物,红外线遇到障碍物,被反射到达传感器接收头,则输出端呈高电平。传感器检测到这一信号,就可以确认正前方有障碍物,并送给单片机,单片机进行一系列的处理分析,协调小车两轮工作。红外避障基本原理大致就是如此。
利用红外传感器进行“前进-倒退-转向”避障,在车的头部安装光电开关小车采用左右轮分别驱动小车进入障碍区后,在距离障碍物10cm到20cm的地方就可以检测到前面有障碍物(改变光电开关的灵敏度可改变最远检测距离),然后小车刹车停止,并调整角度,车头右偏一个角度,其方法是小车在前进制动过程中,先制动右轮,这样左轮转动快,使小车右转,并制动停止,随后小车加速后退,然后制动,在制动过程中,先制动右轮,左边快而使车头左偏,小车再前进,检测前方是否有障碍物。如此循环,就可以绕开障碍物。前进停止和后退停止之间的距离约为30cm,只要小车前进时刹车行程小于传感器检测到障碍物的最大距离,就可以肯定小车车头碰不到障碍物。调整适当的刹车行程和传感器的灵敏度,便可实现这个条件。单片机电路:
电机驱动电路:
电源电路:
红外传感电路:
之后附上小车实物照片: 采用二轮驱动,后面一个万向轮方便转向,减少阻力。电源采用3.7v锂电池供电。
至于程序输入,如图电源指示灯旁边有个插口,可以连接数据线,安装的驱动是PL2303Vista_Installer,烧写软件我采用的是stc-isp-15xx-v6.67D,至于程序则是在同学们的帮助下参考网上的改编的。程序有如下:
#include“STC12C5A60S2.h” #include
void delay(unsigned int n){ unsigned char i, j,k;for(k=0;k<=n;k++){ _nop_();_nop_();i = 20;j = 10;do {
while(--j);} while(--i);} } void beep(void){ unsigned char i;for(i=0;i<3;i++){ BUZZ=~BUZZ;delay(10);} BUZZ=1;} void gogogo(void){ IN1=1;IN2=0;IN3=1;IN4=0;} void backbackback(void){ IN1=0;IN2=1;IN3=0;IN4=1;} void stop(void){ IN1=0;IN2=0;IN3=0;IN4=0;} void turnleft(void){ IN1=0;IN2=1;IN3=1;IN4=0;} void turnright(void){ IN1=1;IN2=0;IN3=0;IN4=1;} void main(void){ while(1){ if(bleft==0&&bright==1){ turnright();delay(3);stop();delay(3);} if(bleft==1&&bright==0){ turnleft();delay(3);stop();delay(3);} if(bleft==0&&bright==0){ gogogo();delay(3);stop();delay(3);} if(bleft==1&&bright==1){ turnright();delay(3);stop();delay(3);} } } 在焊接过程中,也出线了很多错误,再严重的一次是单片机底座引脚有一个没有焊好,然后用万用表连接了多次才发现,然后用一根小铁丝从下面穿上去再用锡焊牢固。特别要注意的是色环电阻的识别计算方法,在这就不详细介绍了。最难的莫过于程序的调试和小车的机械方面布局几轮驱动一类的问题。总之,通过这次动手制作小车,我从中也学到了很多平时不知道的东西。以后有机会,会继续加强这方面的动手学习能力。
第四篇:自动避障小车技术报告2
自动避障小车
技术报告
学
校:乐山师范学院成员:郑素仙
朱平
吴志 指导老师:张九华
前言
设计背景:在科学探索和紧急抢险中经常会遇到对与一些危险或人类不能直接到达的地域的探测,这些就需要用机器人来完成。而在机器人在复杂地形中行进时自动避障是一项必不可少也是最基本的功能。因此,自动避障系统的研发就应运而生。
我们的自动避障小车就是基于这一系统开发而成的。随着科技的发展,对于未知空间和人类所不能直接到达的地域的探索逐步成为热门,这就使机器人的自动避障有了重大的意义。我们的自动避障小车就是自动避障机器人中的一类。自动避障小车可以作为地域探索机器人和紧急抢险机器人的运动系统,让机器人在行进中自动避过障碍物。
目录
一、设计目标:.........................................................4
二、方案设计:.........................................................4
2.1直流调速系统.................................................4 2.2检测系统.....................................................5 三 硬件设计.............................................................6 3.1、SPCE061A单片机最小系统.....................................6
3.1.1.SPCE061A时钟电路...........................................................................................8
3.1.2.PLL锁相环...........................................................................................................9 3.1.3.看门狗Watchdog..................................................................................................9 3.1.4.低电压复位(LVR).........................................................................................10 3.1.5.I/O端口..............................................................................................................10 3.1.6.时基与定时器.....................................................................................................11 3.1.7.SPCE061A的定时器/计数器............................................................................11 3.1.8.ADC、DAC........................................................................................................12 3.2、超声波传感器..............................................12 四 软件设计...........................................................16 4.1软件设计各模块..............................................16 4.2速度控制....................................................17 4.3障碍物检测..................................................17 4.4看门狗......................................................17 4.5基频中断....................................................18 4.6程序设计流程图..............................................19 五:测试数据、测试结果分析及结论.......................................19 程序附录...............................................................21 1.主程序:....................................................21 2.中断程序....................................................24
3、测距程序....................................................28
一、设计目标:
1.小车从无障碍地区启动前进,感应前进路线上的障碍物后,能自动避开障碍物。
2.根据障碍物的位置选择下一步行进方向,选择左拐还是右拐,若障碍物在左边则自动右拐,若障碍物在右边则左拐,若障碍物在正前方可任意选择左拐或者是右拐,以达到避开障碍物的目的。
3.通过利用单片机内时钟源的控制设定左拐和右拐的时间,从而能持续前进。
4.为达到速度的可控性,需设置两个独立按键对小车进行控速。
二、方案设计:
根据设计要求,确定如下方案:在现有玩具电动车的基础上,加装超声波传感器,实现对电动车的运行状况的实时测量,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。
这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。
2.1直流调速系统
采用脉宽调速系统
脉宽调速系统的主电路采用脉宽调制式变换器,简称PWM变换器。
脉宽调速也可通过单片机控制继电器的闭合来实现,但是驱动能力有限。为顺利实现电动小汽车的前行与倒车,本设计采用了可逆PWM变换器。可逆PWM变换器主电路的结构式有H型、T型等类型。我们在设计中采用了常用的双极式H型变换器,它是由4个三极电力晶体管和4个续流二极管组成的桥式电路。如附录一:
2.2检测系统
检测系统主要实现红外传感器,超声波传感,光电传感器对车的运行进行实时测量,即利用这种传感器对电动车的避障、位置、行车状态进行测量。行车开始、结束及超声波检测:
在车的开始和结束阶段,都是用红外式的光电传感器,当按下此光电开头,小车就开始行驶,在完成任务后,再按下此开关,小车就停止前进。在前进的过程中不断的发送超声波,并对接到的进行处理计算。如果处理得到的结果是发现前面的障碍时,再行进一次距离的处理,当距离小是40CM时,让小车倒退一段时间,再进行避障处理,如果距离大于40CM,就直接进避障处理。
三 硬件设计
3.1、SPCE061A单片机最小系统
我们用的是凌阳的SPCE061A单片机最小系统其概述如下: SPCE061A 是继μ’nSP™系列产品SPCE500A等之后凌阳科技推出的又一款16位结构的微控制器。与SPCE500A不同的是,在存储器资源方面考虑到用户的较少资源的需求以及便于程序调试等功能,SPCE061A里只内嵌32K字的闪存(FLASH)。较高的处理速度使μ’nSP™能够非常容易地、快速地处理复杂的数字信号。因此,与SPCE500A相比,以μ’nSP™为核心的SPCE061A微控制器是适用于数字语音识别应用领域产品的一种最经济的选择。
性能
16位μ’nSP™微处理器;
工作电压(CPU)VDD为2.4~3.6V(I/O)VDDH为2.4~5.5V ;
CPU时钟:0.32MHz~49.152MHz ;
内置2K字SRAM;
内置32K FLASH;
可编程音频处理;
晶体振荡器;
系统处于备用状态下(时钟处于停止状态),耗电仅为2μA@3.6V;
2个16位可编程定时器/计数器(可自动预置初始计数值);
2个10位DAC(数-模转换)输出通道;
32位通用可编程输入/输出端口;
14个中断源可来自定时器A / B,时基,2个外部时钟源输入,键唤醒;
具备触键唤醒的功能;
使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据;
锁相环PLL振荡器提供系统时钟信号;
32768Hz实时时钟;
7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器;
声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;
具备串行设备接口;
具有低电压复位(LVR)功能和低电压监测(LVD)功能;
内置在线仿真电路ICE(In-Circuit Emulator)接口;
具有保密能力;
具有WatchDog功能;
16位μ’nSP™微处理器硬件结构图
ICE_ENICE_SCKICE_SDA16位微控制器u'nSPFLASH双16位定时器/计数器时基中断控制+ICERAMVCPXI/RXO锁相环振荡器CPU时钟实时时钟7通道10位ADC单通道ADC+AGCMIC_IN低电压监测/低电压复位Watchdog串行异步通讯接口IOB7(RXD)IOB10(TXD)双通道10位DAC串行输入输出接口IOB0(SCK)IOB1(SDA)AUD1AUD232管脚通用输入输出端口IOA150 3.1.1.SPCE061A时钟电路
SPCE061A时钟电路采用晶体振荡器。下图为SPCE061A时钟电路的接线图。外接晶振采用32768Hz。
3.1.2.PLL锁相环
PLL电路的作用是将系统提供的实时时钟的基频(32768Hz)进行倍频,输出系统时钟Fosc
32768Hz晶振锁相环(PLL)系统时钟发生器频率:20.48M,24.576M,32.768M,40.96M,49.152Mb7b6b5Fosc(默认值24.576MHz)系统时钟选频P_SystemClock单元的第7,6,5位
3.1.3.看门狗Watchdog SPCE061A的清狗周期为0.75S;清看门狗操作寄存器:P_Watchdog_Clear(0x7012H)清狗操作:在每个0.75S的清狗周期里P_Watchdog_Clear写入0x0001。
3.1.4.低电压复位(LVR)
通过某种方式,使单片机内存各寄存器的值变为初始的操作称为复位。SPCE061A的复位方式为低电压复位。
3.1.5.I/O端口 OA口:
IOA0~IOA6:7路普通AD输入端口,IOA0~IOA7:触键唤醒功能
IOB口:
外部中断输入,串行接口、PWM输出等复用端口
3.1.6.时基与定时器
时基信号可提供常用的、现成的频率信号,完成部分定时器的功能
时间基准信号部分时基选频时基中断32768Hz RTCPLL倍频定时器/计数器Fosc时钟源 3.1.7.SPCE061A的定时器/计数器
递增计数方式,自动重载定时器/计数器初始值,输出4位可调脉宽比PWM信号,溢出频率/2的方波输出,多种时钟源 11
输入。
3.1.8.ADC、DAC SPCE061A的特色是其强大灵活的语音功能;而单片机对语音处理的支持,除了其处理能力外,还有片内集成的ADC、DAC;特别是集成有AGC电路的MIC通道。ADC转换过程:
启动自动方式 RDY=0SAR = 10 0000 0000BDAC0输出Vdac0与Vin逐次比较比较结束,RDY=1结果存入结果寄存器等待读取结果寄存器
3.2、超声波传感器
1.基本特性与参数指标
超声波传感器谐振频率:40KHz; 模组传感器工作电压:4.5V~9V 模组接口电压:4.5V~5.5V 2.主要功能
三种测距模式选择跳线J1(短距、中距、可调距):
短距:20cm~100cm左右(根据被测物表面材料决定),精度1cm;
中距:70cm~400cm左右(根据被测物表面材料决定); 可调:范围由可调节参数确定,当调节在合适的值时,最远测距700cm左右; 3.结构示意图
一般应用时,只需要用两条10PIN排线把J5与SPCE061A的IOB口低八位连接,J4与IOB口高八位连接,同时设置好J1、J2跳线就完成硬件的连接了。不同测距模式的选择只需改变测距模式跳线J1的连接方法即可。模组工作的性能与被测物表面材料有很大关系,如毛料、布料对超声波的反射率很小,会严重影响测量结果 实物图: 13
J1为选择工作模式,J2选择电源接口 4.电路原理图介绍:
超声波谐振频率调理电路
由单片机产生40KHz的方波,并通过模组接口(J4)送到模组的CD4049,而后面的CD4049则对40KHz频率信号进行调理,以使超声波传感器产生谐振。
超声波回波接收处理电路
超声波接收处理部分电路前级采用NE5532构成10000倍放大器,对接收信号进行放大;后级采用LM311比较器对接收信号进行调整,比较电压为LM311的3管脚的输入,可由J1跳线选择不同的比较电压以选择不同的测距模式。
测距程序流程图
超声波测距的功能函数流程图如图。用户只需进行六次测距操作,这六次的测量结果需要经过处理后才可得到最终的测距返回值,然后将返回值化成距离。
四
软件设计
4.1软件设计各模块
void RunTime2Hz(void);设置2HZ基频中断向量函数。
void OffTime2Hz(void);清2HZ基频中断向量函数。void Clear_WatchDog(void);清看门狗函数
unsigned int SP_GetCh(void);取键值函数 void delay2s(int timer)可调的延迟函数
4.2速度控制
速度控制用TIMERA的PWM输出控制,当它前进时设PWM为12/16,当它转弯时设为8/16。其代码为:*P_TimerA_Ctrl=0x0333;*P_TimerA_Data=0xff9f;
4.3障碍物检测
用TIMERB的TONT输出给超声波提供出射频率,并给它延迟一段时间,发射完时,清TIMERB,让它工作在计时方式,当计到10000时!没有收到回波,则说明前在无障碍。如果有收到回波则说明有障碍。
4.4看门狗
看门狗只要一定时间给其喂狗,就可以保证程序不会跑飞,跑飞就会自动复位。其代码就只有一句: *P_Watchdog_Clear = 0x0001;
4.5基频中断
采用2HZ的基频中断,实现实时控制;一次中断,中断时间为0。5S,其代码如下:
[P_INT_Ctrl] = r1;
INT IRQ;
//开中断
4.6程序设计流程图
五:测试数据、测试结果分析及结论
测试方法与仪器: 1.测试仪器
测试仪器包括数字万用表、信号发生器、示波器、直流稳压电源等。
2.测试方法
数字万用表主要用来测试各个IO口的状态;
信号发生器与示波器用于测试超声波传感器信号的接收与传输;
试验测试能不能完成固定避障。
结论:
经过了我们的努力,我们基本上能完上避障的功能!当然我们之后还有很长的路要走,在之后我们会自己做一个最小系统,此次我们更侧重于软件方面的设计。同时我们还要设计更多的外围电路,实现更多的功能。其中包括:红外光电检测用来检测旁边的物体;还有红外遥控器,用来控制小车的运行与停止;再加一个显示器,用来显示路程和时间等等。
附录一:
程序附录:
程序设计中包括:主程序,测距程序,中断程序组成;
1.主程序:
#include “SPCE061A.h” #include “ceju.h”
unsigned char INTflag;
//定时标识
unsigned int sum;
//2hz 计数器
1次为0。5秒 void RunTime2Hz(void);void OffTime2Hz(void);void Clear_WatchDog(void);void delay2s(int timer)
//设置基频为2HZ的中断,就是一次定时0。5S {
sum=timer;RunTime2Hz();
//运行中断
while(!INTflag)
{
Clear_WatchDog();//清看门狗
}
INTflag = 0;
OffTime2Hz();
//结束中断
} void delay2s(int timer);int main(void){ unsigned int Back_data;
*P_IOB_Dir=0x1f00;
IOB,IOB8~12同向输出
*P_IOB_Attrib=0x1f00;*P_IOB_Data=0x0000;INTflag = 0;Clear_WatchDog();
while(1){
*P_TimerA_Ctrl=0x0373;
*P_TimerA_Data=0xff9f;
这14/16
Back_data = measure_Times(0);if(Back_data==0)
//装距离 //
初
始
化
//清看门狗
//设前进PWM
//测距
//判断是否为0,为0则为前进
{
*P_TimerA_Ctrl=0x0373;
*P_TimerA_Data=0xff9f;
}
else if(Back_data<=40)
40CM,小于则进行倒车
{
*P_TimerA_Ctrl=0x006;
*P_IOB_Data=0x1000;
delay2s(0);
*P_IOB_Data=0x0100;
delay2s(3);
}
else if(Back_data<=100)
1M,小于则进行避障
{
*P_TimerA_Ctrl=0x0333;
*P_IOB_Data=0x0400;
delay2s(1);
*P_IOB_Data=0x0800;
delay2s(1);
//判断是否小于
//倒车
//前进 //判断是否小于//左转
//右转 23
*P_IOB_Data=0x0400;
//左转
delay2s(1);*P_TimerA_Ctrl=0x006;
//停止PWM运行
*P_IOB_Data=0x0000;
//停车
while(1)
{;}
}
else
Clear_WatchDog();
}
}
2.中断程序: #include “SPCE061A.h” #include “ceju.h”
void IRQ3(void)__attribute__((ISR));
void IRQ3(void){ *P_INT_Clear = 0x0100;
//
//IRQ中断服务程序 24
EXT1_IRQ_ult();
//调用超声波测距的外部中断服务程序 }
.TEXT.include SPCE061A.inc;.external _sum;.external _INTflag;.public _IRQ5;_IRQ5:
push r1,r4 to [sp];
r1 =0x0008;
test r1,[P_INT_Ctrl];
jnz L_4Hz;
r1 = 0x0004;
[P_INT_Clear] = r1;
r1 = [_sum]
r1 += 1;
//定时3秒的中断程序
// Timer A FIQ entrence
//清中断
//取时基信号量
cmp r1,4;
je loop0;
[_sum]=r1
//保存时基信号量
pop r1,r4 from [sp];
reti;
loop0:
r1 = 0x0001;
[_INTflag] = r1;
r1 = 0
[_sum] = r1 pop r1,r4 from [sp];
reti;
L_4Hz:
r1 = 0x0008;
[P_INT_Clear] = r1;
pop r1,r4 from [sp];reti;
//设置中断标识
//清中断 26
.external _sum;.include SPCE061A.inc;.CODE.public _Clear_WatchDog;_Clear_WatchDog:.PROC
R1=0x0001;
[P_Watchdog_Clear]=R1;
//清看门狗
retf;.ENDP
.public _RunTime2Hz;//初始化中断为2HZ定时中断源_RunTime2Hz:
.proc r1 = 0x0004;
[P_INT_Ctrl] = r1;
INT IRQ;
//开中断
retf.endp;
.public _OffTime2Hz;_OffTime2Hz:.proc
r1 = [P_INT_Ctrl]
r1 &= 0xfffb;
[P_INT_Ctrl] = r1;
r1 = 0x0000
[_sum] = r1;
retf;.endp;
3、测距程序
#include “SPCE061A.h” #define LONG_SEND_TIMER 40KHz信号发射时长
#define LONG_SEND_TIMER2 测距时的40KHz信号发射时长#define LONG_WAIT_DELAY 的防余波干扰延时时长
#define LONG_WAIT_DELAY2 测距时的防余波干扰延时时长
1000 3000
600 1500
//中距测距时的//中距测距的补充
//中距测距
//中距测距的补充
#define LONG_RES_ADD 补偿值
0x00B0 //中距测距的结果#define LONG_RES_ADD2 充测距时的结果补偿值
#define LOW_SEND_TIMER 40KHz信号发射时长 #define LOW_SEND_TIMER2
0x0220 //中距测距的补
250
//短距测距时的 1000 //短距测距的补充测距时的40KHz信号发射时长 #define LOW_WAIT_DELAY 余波干扰延时时长
#define LOW_WAIT_DELAY2
400
//短距测距
180
//短距测距的防的补充测距时的防余波干扰延时时长 #define LOW_RES_ADD 果补偿值
#define LOW_RES_ADD2 测距时的结果补偿值
unsigned int Counter_buf;
//超声波测距当中,用于0x00B0
//短距测距的补充
0x0034
//短距测距的结保存TimerB计数的变量,相当于时长 unsigned int EXT1_IRQ_flag=0;
//外部中断标志变量,用于EXT1的IRQ中断程序和测距程序同步
void Delay_ult(unsigned int timers){ unsigned int i;for(i=0;i __asm(“nop”);} } unsigned int Resoult_ult(unsigned int Counter){ unsigned int uiTemp;unsigned long ulTemp;ulTemp =(unsigned long)Counter*33500;度,以厘米为单位 ulTemp = ulTemp/196608; ulTemp = ulTemp>>1; //除二 uiTemp =(unsigned int)ulTemp;return uiTemp;} unsigned int measure2_ult(unsigned int type);unsigned int measure_ult(unsigned int type) 声波测距模组的测距程序,完成一次测距 //计算距离 //*以声音的速 // 超30 { unsigned int Exit_flag = 1;unsigned int uiTemp;unsigned int uiResoult;unsigned int uiSend_Timer,uiWait_Timer,uiRes_Add;unsigned int uiSystem_Clock;uiSystem_Clock = *P_SystemClock;//将当前的系统时钟设置暂时保存起来 *P_SystemClock = 0x0088; //将系统时钟设置为49MHz,分频比为1,强振模式 if(type) //根据type即测距类型,选择不同的测距参数 { } else { uiSend_Timer = LOW_SEND_TIMER;uiWait_Timer = LOW_WAIT_DELAY;uiRes_Add = LOW_RES_ADD; uiSend_Timer = LONG_SEND_TIMER;uiWait_Timer = LONG_WAIT_DELAY;uiRes_Add = LONG_RES_ADD; } *P_TimerB_Data = 0xfed2;*P_TimerB_Ctrl = 0x03c0; //发40KHz的信号触发超声波传感器 率 while(*P_TimerB_Data //TrB 工作在192KHz频 //等待发送 //关定时器B 再打开TimerA的计数(来源于EXT1) 断 *P_INT_Ctrl = *P_INT_Ctrl_New|0x0100;*P_INT_Clear = 0xffff;__asm(“IRQ ON”); //清除中断发生标志 //打开总中断使能 //TimerA的溢出中断{ } *P_INT_Clear = 0x0100; //开中断前先清中 //以避开余波的干扰 *P_Watchdog_Clear = 0x0001;EXT1_IRQ_flag = 0;的标志变量置0 while(Exit_flag) { if(EXT1_IRQ_flag==1) //当该变量在timerA的FIQ中断中被置1时表示接收到了回波 { Exit_flag = 0; //退出标示 Counter_buf = Counter_buf+uiRes_Add;//计数值加上一定的调整数据 uiResoult = Resoult_ult(Counter_buf);//对计数值进行处理,得出距离值 } if(*P_TimerB_Data>10000) //如计数值大于10000,表示超时 { Exit_flag = 0; uiResoult = measure2_ult(type);//再进行一次补充的测距,将会加长40KHz信号发射的量 } } *P_TimerB_Ctrl = 0x0006;//停止定时器B uiTemp = *P_TimerB_Data;*P_Watchdog_Clear = 0x0001;*P_INT_Ctrl = *P_INT_Ctrl_New&(~0x0100);//关掉外部 中断 置 } void EXT1_IRQ_ult(void) //超声波测距模组的测距程序的EXT1中断服务程序 { Counter_buf = *P_TimerB_Data;*P_TimerB_Ctrl = 0x0006; return uiResoult;__asm(“IRQ OFF”); *P_SystemClock = uiSystem_Clock;//恢复系统时钟的设 //关掉总中断 *P_INT_Ctrl = *P_INT_Ctrl_New&(~0x0100);//关掉外部中断 *P_INT_Clear = 0xffff;EXT1_IRQ_flag = 1; //清除中断发生标志 //通知测距程序,外部中断已发生 } unsigned int measure2_ult(unsigned int type) //补充进行一次远距的测量,以保证能够获取测量结果 { unsigned int Exit_flag = 1; unsigned int uiResoult;unsigned int uiSend_Timer,uiWait_Timer,uiRes_Add;*P_TimerB_Ctrl = 0x0006; *P_INT_Ctrl = *P_INT_Ctrl_New&(~0x0100);//关掉外部中断 __asm(“IRQ OFF”); //关掉总中断 //清除掉中断发生标志 *P_INT_Clear = 0xffff; if(type) //根据type即测距类型,选择不同的测距参数 { } else { } uiSend_Timer = LONG_SEND_TIMER2;uiWait_Timer = LONG_WAIT_DELAY2;uiRes_Add = LONG_RES_ADD2;uiSend_Timer = LOW_SEND_TIMER2;uiWait_Timer = LOW_WAIT_DELAY2;uiRes_Add = LOW_RES_ADD2; *P_TimerB_Data = 0xfed2;*P_TimerB_Ctrl = 0x03c0;Delay_ult(uiSend_Timer);*P_TimerB_Ctrl = 0x0006;*P_TimerB_Data = 0x0000;*P_TimerB_Ctrl = 0x0001; while(*P_TimerB_Data *P_INT_Ctrl = *P_INT_Ctrl_New|0x0100;//打开外部中断 *P_INT_Clear = 0xffff;__asm(“IRQ ON”); EXT1_IRQ_flag = 0; //TimerA的溢出中断 //清除中断发生标志 //打开总中断使能 { } *P_Watchdog_Clear = 0x0001;的标志变量置0 while(Exit_flag){ if(EXT1_IRQ_flag==1) //当该变量在timerA的FIQ中断中被置1时表示接收到了回波 { Exit_flag = 0; //exit Counter_buf = Counter_buf+uiRes_Add;//计数值加上一定的调整数据 uiResoult = Resoult_ult(Counter_buf);//对计数值进行处理,得出距离值 } if(*P_TimerB_Data>10000) //如计数值大于10000,表示超时 } unsigned int measure_Times(unsigned int type) //组合进行共6次的测距程序,包括对6次测量结果的取平均值处理 { } { } Exit_flag = 0;uiResoult = 0; *P_TimerB_Ctrl = 0x0006;return uiResoult;unsigned int uiResoult=0,uiMeasure_Index=0,i;unsigned int uiTemp_buf[6],uiTemp; unsigned int uiSystem_Clock; for(;uiMeasure_Index<6;uiMeasure_Index++){ //循环进行四次测量 //进行一次测uiTemp = measure_ult(type); 量,测量类型由type决定 if(uiMeasure_Index==0) //如果为本次测量的第一次测距,则直接保存在缓冲区第一个单元 uiTemp_buf[0] = uiTemp; else { //否,则对结果进行比较,进行排序,从大到小排 i = uiMeasure_Index;while(i){ if(uiTemp>uiTemp_buf[i-1]){ } else { //以下为排序的代码 uiTemp_buf[i] = uiTemp_buf[i-1];uiTemp_buf[i-1] = uiTemp; } } } uiTemp_buf[i] = uiTemp;break; //退出排序 i--; //两次测量之间的延时等待,利用以下代码软仿真时的cycles数结合设置的CPUCLK进行计算,大概72ms uiSystem_Clock = *P_SystemClock; //将之前的系统时钟的设置用变量保存 *P_SystemClock = 0x000b; // 设 置 为24.576MHz 分频比为8 for(i=0;i<5;i++){ } *P_SystemClock = uiSystem_Clock; //恢复系统时钟Delay_ult(1000); //调用延时程序 *P_Watchdog_Clear = 0x0001;设置 } //此处延时结束 //对6次测距的结果进行处理 if(uiTemp_buf[5]==0){ //如果缓冲区中的最小的测距值为0,则采用中间4个数据进行平均 uiResoult = uiTemp_buf[1]+uiTemp_buf[2]+uiTemp_buf[3]+uiTemp_buf[4]; } else { //否则就取后5个数据uiResoult = uiResoult/4;进行平均 uiResoult = uiTemp_buf[1]+uiTemp_buf[2]+uiTemp_buf[3]+uiTemp_buf[4]+uiTemp_buf[5]; } } return uiResoult;uiResoult = uiResoult/5;40 关于做好清明节假前准备工作的临时会议 会议纪录 会议地点:二楼办公室 会议时间:2011.04.01 与会人员:阎国龙、邹景权以及公司全体员工 出席状况:应到17人,实到17人 记录人:李家祥 会议过程: 一、阎经理通知关于清明节放假方法 1、周六(4月2日)正常上班,周日、周一、周二(4月3日、4 月4日、4月5日)连续放假三天; 2、假期需要回家的员工,请于4月3日前到邹景权处登记、备案; 3、强调假期安全问题,特别是回家的员工需注意路途安全。 二、阎经理要求新同志做自我介绍 1、李家祥,来自陕西省榆林市,应聘职位为董事长秘书; 2、王有泽,来自内蒙古巴彦淖尔市,应聘职位为技术工; 3、王惠青,来自山西省吕梁市,应聘职位为电气工程师; 4、阎经理要求新来员工要在各自的岗位上充分的发挥自己; 5、最近,公司的一些公文在语法、标点符号的使用以及结构格式方 面都存在一定的问题。以后,以公司名义向外发送的公务文书需交 秘书处进行校正。 三、李工要求各位员工在假期保持电话畅通,以便联系。 四、邹工强调假期须加强安全保卫工作,特别是门窗一定要关好。 散会 董事长办公室 2011.04.01第五篇:智能系统可用性报告