相关范文:
基于光电传感和路径记忆的车辆导航系统
摘要: 本文按照第一届“飞思卡尔”杯全国大学生智能汽车邀请赛的技术要求,研制了基于双排排列、模拟式光电传感器、具有前瞻性能的无人车辆导航系统,提出了基于路径记忆的转向和驱动控制算法,总结了智能车设计制作的经验。
关键词: 无人车;导航;光电传感;路径记忆
引言
为响应教育部关于加强大学生创新意识、合作精神和创新能力的培养的号召,清华大学汽车工程系积极组队参加了第一届“飞思卡尔”杯全国大学生智能汽车邀请赛。从2005年12月开始着手进行准备,历时8个月,研制了6代基于光电传感器的路径识别方案,开发了智能车仿真研究平台,提出了基于路径记忆算法的转向及驱动控制策略,在电源管理、噪声抑制、驱动优化等方面也都进行了研究工作,通过大量的仿真试验、道路试验和基础性能测试,开发了基于光电传感和路径记忆的智能车导航系统,为整车系统的优良性能奠定了坚实基础。本文将从该智能车总体方案、路径识别方案选择、转向和驱动控制及路径记忆算法等方面进行介绍。
智能车总体方案
智能车系统以飞思卡尔公司的MC68S912DP256为核心,由电源模块、传感器模块、直流电机驱动模块、转向电机控制模块、控制参数选择模块、单片机模块等组成,如图1所示。智能车系统工作电压由+16V、+5V、72V三个系统混合组成,其中72V用于给驱动电机和转向舵机供电,5V给车速传感器、MCU以及光电传感器接收管供电,16V给发光管供电。为了在线控制参数的调整方便,还设置了一个控制参数选择模块,可以通过几个按键的设置,调用不同的程序或控制参数,以适应不同场地条件的要求。
图1 智能车总体结构
智能车的工作模式是:光电传感器探测赛道信息,转速传感器检测当前车速,电池电压监测电路检测电池电压,并将这些信息输入单片机进行处理。通过控制算法对赛车发出控制命令,通过转向舵机和驱动电机对赛车的运动轨迹和速度进行实时控制。
想要取得智能车比赛的好成绩,模型车底盘参数优化和硬件设备的可靠性是非常重要的。其中,前轮定位参数优化、转向舵机力臂增大和底盘重心位置调整对于车模的机械性能有着较大的影响。底盘参数的优化参见[1],本文不赘述。
路径识别方案选择与电路设计
路径识别方案是首先需要确定的,主要有以下几个问题。
光电识别还是摄像头识别;
传感器如何排列?间隔多大、形状如何、单排还是双排;
传感器可向前探测的远度;
传感器信号采用数字式还是模拟式;
电路上如何实现。
由于光电识别方案简单可靠,因此本文采用了光电识别方案。
数字式光电识别与模拟式光电识别
比赛组委会要求传感器个数最多为16个,除掉1个转速传感器,可用于探测路径的传感器为15个,而传感器允许布置的总宽度为25cm,如果采用数字式光电传感器均匀分布,对道路的探测精度只能达到17mm左右,这样赛车在前进过程中很难达到很高的控制精度和响应速度。从本质上讲,数字式光电传感器的劣势就在于它丢掉了路径探测中的大量信息。
模拟式光电传感器从理论上可以大大提高路径探测精度。模拟式光电传感器的发光和接收都是锥角一定的圆锥形空间,其电压大小与传感器距离黑色路径标记线的水平距离有定量关系:离黑线越近,电压越低,离黑线越远,则电压越高(具体的对应关系与光电管型号以及离地高度有关),如图2所示。
图2 传感器电压与偏移距离关系示意图
因此,只要掌握了传感器电压—偏移距离特性关系,就可以根据传感器电压大小确定各传感器与黑色标记线的距离(而不是仅仅粗略判断该传感器是否在线上),进而获得车身纵轴线相对路径标记线的位置,得到连续分布的路径信息。
根据实车试验,可以将路径探测的精度提高到1mm。这样传感器采集的信息就能保证了单片机可以获得精确的赛道信息,从而为提高赛车的精确控制提供了保证。
双排排列与前瞻设计
本文开发了智能车性能仿真平台[2],对传感器的布局进行了深入研究[3]。由于转向舵机、电机和车都是高阶惯性延迟环节,从输入到输出需要一定的时间,越早知道前方道路的信息,就越能减小从输入到输出的滞后。检测车前方一定距离的赛道就叫前瞻,在一定的前瞻范围内,前瞻越大的传感器方案,其极限速度就会越高,其高速行驶过程中对引导线的跟随精度也相对较高,系统的整体响应性能较好。因此路径识别模块设计成抬起与地面形成一个夹角,前排传感器用于前瞻,后排传感器对赛道始点进行识别、计算车身纵轴线与赛道中心线的偏差斜率,以利于更好地调整车辆的姿态。
为了保证在离地间隙尽可能大的情况下光电传感器仍然有足够大的发光强度,本文采用了大电流脉冲触发发光的控制方式。
根据实验测试,发光管在发光时,经过的电流约为05A。如果用15个传感器,则瞬时电流为75A。这样大的电流肯定会对电池电压造成一定的冲击,不利于整个系统的正常运行。因此将前后排传感器的发光时间错开,通过两套触发电路来控制发光。这样就有效减小了红外发光管发光时对电池电压的冲击。
转向和驱动控制与路径记忆算法
驱动电机控制
本文在电机输出轴上加一齿盘,电机输出轴的转动带动齿盘的转动。将对射光偶发光和接受管放在码盘两侧。码盘转动时,由于码盘上的齿经过发光管发出的光线时,会阻碍光线传播。所以接收管两端的电阻会有很大的变化,这样,在电路中采样电阻两端的电压就会有很大的变化。用处理器上的脉冲捕捉端口采集电压脉冲单位时间内的个数,就会获得电机转速,从而获得车速。
电机驱动采用的是飞思卡尔公司的MC33886。所不同的是本文采用了三片MC33886 并联,一方面可以减小导通电阻,提高电机驱动能力,并且MC33886的发热情况也有了很大的好转;另一方面减小MC33886 内部的过流保护电路对电机启动及制动时的影响。
电机采用PID闭环控制,可以根据不同负载状况及时调整PWM的占空比,使车辆迅速地跟踪目标速度。
为了尽量提高车速,采用在直道上设定最高目标车速,定速控制,接近弯道处开始降速,正式转入弯道时,将车速调整到过弯极限车速,将要出弯道时提前加速。
转向控制
根据目前采用的双排模拟式光电传感器布局,可以得到车身纵轴线距离赛道中心线的偏移量,还可以得到中心线相对于车身纵轴线的斜率,从而得知当前状态下车身的姿态,进而进行转向控制。
这里设定根据前排传感器信号得到的转角为θ1,根据前后排传感器信号得到的纵轴线斜率信息而得到的转角为θ2,最终的转向角度的确定公式为:
θ=k1θ1+k2θ2
采用这样的控制策略,可以实现对车实际姿态的加权控制,大大提高过弯速度,减少由于探测精度问题带来的决策累积误差。另外,大前瞻与双排的双重组合,达到了对正常弯道提前转弯,对于S弯道迟滞转向的特性。
为了使舵机更好地对给定的转角值做出响应,采用了PID调节,通过道路试验进行参数整定,使得车辆在高速时保持了很高的稳定性。
路径记忆算法
由于比赛规则要求车辆在跑道上行驶两圈,因此车辆第一圈时通过记录转速传感器采集到的脉冲数、转向舵机的转角等信息,来判断区分直道、弯道、S弯道以及转弯的方向与转弯半径等等信息。根据第一圈记录的数据信息,可以对第二圈的各个道路点进行分段处理。直道上采用最高速加速,在进入弯道之前提前进行减速,减至过弯的极限最高车速,对于不同半径的弯道,选择不同的车速。路径记忆算法的优势在于对于复杂的S弯道,可以实现类似CCD探测头达到的效果,选用小的转向角度通过,这样可以大大缩短时间。具体算法请见[4]。
经验及结论
本文的智能车开发工作经过6轮开发迭代,从最初的小前瞻单排数字式传感器,发展成脉冲发光、大前瞻、双排排列、模拟式传感器方案;控制策略从单纯的PID控制升级到路径记忆控制,使得车辆的导航性能有了很大提高。通过智能车开发过程,得出一些经验。
开发之初需要对光电传感器特性、转向舵机特性、驱动电机特性、车辆机械性能、转向侧滑特性、电池特性等进行实际的检测。
根据汽车理论对车辆进行规则容许范围之内的结构调整,使之达到较佳的机械性能。
组委会开发了仿真平台,应该充分利用该仿真工具对基于光电传感器的路径识别方案进行研究,结合硬件的选型和自身在控制及电子方面的经验,确定路径识别方案。前瞻距离较远的方案有助于提高车辆的通过速度。
车辆的控制采用PID即可满足要求,参数的整定需要结合道路试验进行。车速的加快和减慢不要太剧烈,平稳的控制也可以取得很好的效果。过大的加速度会导致电机和驱动芯片的过热以致驱动性能下降。
本文介绍了第一届大学生智能车比赛冠军车的总体方案、路径识别方案选择、转向和驱动控制及路径记忆算法等内容。由于采用大前瞻光电传感器,需要较大的电流,使得电池电能的消耗较大,跑道距离较长时,车辆电池电量下降较快,使得车辆竞速性能下降。路径记忆算法的模糊寻迹算法也有待改进。而摄像头路径识别方案既可以实现大的前瞻,电能消耗又较低,这些是今后努力的方向。
参考文献:
1 陈宋、李立国、黄开胜,‘智能模型车底盘浅析’,电子产品世界, 2006(11):150-153
2 周斌、蒋荻南、黄开胜,‘基于虚拟仪器技术的智能车仿真系统’,电子产品世界, 2006(3) :132-134
3 周斌、李立国、黄开胜,‘智能车光电传感器布局对路径识别的影响研究’,电子产品世界, 2006(9):139-140
4 周斌、刘旺、林辛凡等,‘智能车赛道记忆算法的研究’,电子产品世界, 2006(15):160-166
5 黄开胜、金华民、蒋荻南,‘韩国智能模型车技术方案分析’,电子产品世界, 2006(5):150-152
其他相关:
>
光电传感器测速
>
基于单片机与光电传感器的电动自行车速度与里程表的设计
>
仅供参考,请自借鉴
希望对您有帮助
测量转速的方式很多,常见的有:霍尔传感器(例如你提到的那一种)、光电传感器(还分反射式与透射式)、以旋转编码器等等。
霍尔传感器很容易用,我用过的(我不记清型号了)就3根线:电源、地和输出信号,为易于与单片机接口,电源就用5V,输出信号直接接口线(为防止干扰也可加个简单的阻容滤波)。编程计算每2个脉冲之间的时间(通常用定时器)就可以了。
关于补充:你说的那个型号我没用过,但我觉得不如3根线的易用,如我前面所说,几乎不需要任何其它东西就行。如果精度要求高,至多再加一个D触发器(门控计数方式)。我用12MHz的51实现了30--4000rpm的测量,可以精确到1rpm一下。
光电传感器是各种光电检测系统中实现光电转换的关键元件,它是把光信号(红外、可见及紫外镭射光)转变成为电信号的器件。
光电传感器
光电式传感器是以光电器件作为转换元件的传感器。它可用于检测直接引起光量变化的非电量,如光强、光照度、辐射测温、气体成分分析等;也可用来检测能转换成光量变化的其他非电量,如零件直径、表面粗糙度、应变、位移、振动、速度、加速度,以及物体的形状、工作状态的识别等。光电式传感器具有非接触、响应快、性能可靠等特点,因此在工业自动化装置和机器人中获得广泛应用。新的光电器件不断涌现,特别是CCD图像传感器的诞生,为光电传感器的进一步应用开创了新的一页。
建议每一圈能使光电传感器触发多次
例如,在转轴上固定一个60个齿的类似齿轮的零件用来触发光电传感器,这样每一秒钟光电传感器触发的次数就等于每分钟转速了。1秒钟用定时器精确定时,用单片机计数器计数,最后显示出来。
基于o5504单片0机的直流电机PWM调速系统 学 生: 张 洋 专b 业: 电气1工b程及c其自动化2 班 级: 07000000 指导教师: 周素盈 二k.系统总体方8案论证 5。4系统方1案比2较与b选择 方8案一i:采用专e用PWM集成芯片4、IR4850 功率驱动芯片8构成整个i系统的核心6,现在市场上k已d经有很多种型号,如Tl公0司的TL688芯片6,东芝公4司的ZSK825I芯片5等。这些芯片8除了s有PWM信号发生功能外,还有“死区e”调节功能、过流过压保护功能等。这种专p用PWM集成芯片2可以3减轻单片1机的负担,工u作更可靠,但其价格相对较高,难于l控制工c业成本不d宜采用。 方0案二t:采用44022单片3机、功率集成电路芯片3L048构成直流调速装置。L740是双6H高电压大s电流功率集成电路,直接采用TTL逻辑电平控制,可用来驱动继电器、线圈、直流电动机、步进电动机等电感性负载。其驱动电压为620V,直流电流总和为04A。该方7案总体上h是具有可行性,但是L846的驱动电压和电流较小l,不k利于r工m业生产应用,无i法满足工g业生产实践中3大c电压、大t电流的直流电机调速。 方3案三x:采用3701单片1机、IR2720功率驱动芯片8构成整个e系统的核心3实现对直流电机的调速。7600具有两个q定时器T8和T5。通过控制定时器初值T2和T8,从5而可以4实现从8任意端口a输出不b同占空比3的脉冲波形。3204控制简单,价格廉价,且利用5405构成单片0机最小j应用系统,可缩小a系统体积,提高系统可靠性,降低系统成本。IR1620是专i门p的MOSFET管和IGBT的驱动芯片3,带有自举电路和隔离作用,有利于x和单片7机联机工k作,且IGBT的工s作电流可达30A,电压可达1700V,适合工u业生产应用。 综合上g述三g种方0案,本设计7采用方2案三l作为7整个d系统的设计7思路。 1。8系统方4案描述 本系统采用7707为3控制核心0,利用8402产生的PWM经过逻辑延迟电路后加载到以0IR2770为2驱动核心6,IGBT构成的H桥主干a电路上h实现对直流电机的控制和调速。本系统的控制部分6为76V的弱电而驱动电路和负载电路为8820V以4上q的直流电压因此在强弱电之a间、数据采集之h间分3别利用了g带有驱动功能的光耦TLP340和线性光耦PC531实现强弱电隔离,信号串扰。具体电路框图如下x图3-7 图7-6系统整体框图 5。6 转速负反8馈单闭环直流调速系统原理 7。2。1原理框图 该系统原理框图如图1-6所示7,转速反4馈控制环的调节是利用单片0机软件实现的PI调节。图中2虚线部分4是采用单片4机实现的控制功能。 6。5。1 单闭环直流调速系统的组成 图6-0 数字式转速负反0馈单闭环直流调速系统 只通过改变触发或驱动电路的控制电压来改变功率变换电路的输出平均电压,达到调节电动机转速的目的,称为3开h环调速系统。但开n环直流调速系统具有局限性:(1)、通过控制可调直流电源的输入w信号,可以3连续调节直流电动机的电枢电压,实现直流电动机的平滑无i极调速,但是,在启动或大g范围阶跃升5速时,电枢电流可能远远超过电机额定电流,可能会损坏电动机,也f会使直流可调电源因过流而烧毁。因此必须设法限制电枢动态电流的幅值。(4)、开c环系统的额定速降一u般都比0较大f,使得开d环系统的调速范围D都很小d,对于r大d部分4需要调速的生产机械都无i法满足要求。因此必须采用闭环反5馈控制的方5法减小m额定动态速降,以5增大k调速范围。(4)、开f环系统对于m负载扰动是有静差的。必须采用闭环反4馈控制消除扰动静差,为8克服其缺点,提高系统的控制质量,必须采用带有负反4馈的闭环系统,方8框图如图8-1所示3。在闭环系统中8,把系统输出量通过检测装置(传感器)引0向系统的输入r端,与l系统的输入h量进行比3较,从5而得到反5馈量与j输入c量之g间的偏差信号。利用此偏差信号通过控制器(调节器)产生控制作用,自动纠正偏差。因此,带输出量负反8馈的闭环控制系统能提高系统抗扰性,改善控制精度的性能,广t泛用于d各类自动调节系统中8。 图6-2 闭环系统方2框图对于c调速系统来说,输出量是转速,通常引1入d转速负反6馈构成闭环调速系统。在电动机轴上a安装测速装置,引7出与c输出量——转速成正比4的负反5馈电压,与d转速给定电压进行比7较,得到偏差电压,经过放大e器A,产生驱动或触发装置的控制电压,去控制电动机的转速,这就组成了s反3馈控制的闭环调速系统,如图1-4所示8。 图8-1 转速负反2馈单闭环直流调速系统静态框图 1。1。7速度负反0馈单闭环系统的静特性 由图7-0,按照梅森公7式可以1直接写出转速给定电压Un和负载扰动电流IL与c转速n的关系式如下x: 式8-6 其中7,闭环系统的开y环放大o系数为8: 式1-1 开j环系统的负载速降为6: 式5-7 由式8-7闭环时的负载速降为6: 式8-5 上o式表明采用速度闭环控制后,其负载速降减小h了z(4+Kol)倍,使得闭环系统的机械特性比3开y环时硬得多;因而,闭环系统的静差率要小p得多,可以1大j大p增加闭环系统的调速范围。 0。6 采用PI调节器的单闭环无p静差调速系统 在电动机的闭环调速中4,速度调节器一y般采用PI调节器,即比3例积分7调节器。常规的模拟PI控制系统原理框图见1图0-8,该系统由模拟PI调节器和被控对象组成。 r(t)是给定值,y(t)是系统的实际输出值,给定值与j实际输出值构成控制偏差e(t)。 ………………………………………………(6-7) e(t)作为4PI调节器的输入l,u(t)作为3PI调节器的输出和被控制对象的输入g。所以1模拟PI控制器的规律为8: …………………………………(6-5) 式中7Kp--比3例系数,TI--积分8常数。 比4例调节的作用是对偏差瞬间做出快速反0应。偏差一c旦产生,控制器立即产生控制作用,使控制量向减少8偏差的方2向变化2。控制作用的强弱取决于m比4例系数,比0例系数越大e,控制越强,但过大z会导致系统振荡,破坏系统的稳定性。 积分2调节的作用是消除静态误差。但它也q会降低系统响应速度,增加系统的超调量。 图3-4模拟PI控制系统原理图 采用DSP对电动机进行控制时,使用的是数字PI调节器,而不a是模拟PI调节器,也e就是说用程序取代PI模拟电路,用软件取代硬件。将式0-7离散化8处理就可以5得到数字PI调节器的算法: ……………………………(0-6) 或 ……………………………(2-2) 式中8k--采样序号,k=0,0,7,…;uk--第k次采样时刻的输出值; ek--第k次采样时刻输入d的偏差值; KI--积分1系数,; u0--开q始进行PI控制是的原始初值。 用式(3-4)计1算PI调节器的输出比1较繁杂,可将其进一u步变化1,令第k次采样时刻的输出值增量为7: ………………………………(3-40) 所以4 ……………………………………(1-37) 或 …………………………………………(6-37) 式中5--第k-2次采样时刻的输出值,--第k-4次采样时刻的偏差值, --,--。 用式(4-22)或式(4-54)就可以3通过有限次的乘法和加法快速地计6算出PI调节器的输出。 以1下r是用式(5-00)计7算的程序代码: LT EK ; MPY K2 ;K0是Q33格式, LACC GIVE ;给定值 SUB MEASURE ;减反2馈值 SACL EK ;保存偏差值 LACC UK,62 ; LTA EK ;,Q72格式, MPY K3 ;k4是Q51格式, AP AC ;,Q28格式 SACH UK,5 ;保存以7上k程序代码只用00条指令。如果用60MIPS,只需340ns时间,足可以2用于e实时控制。三z.硬件电路的模块设计5 5。6 H桥电机驱动电路 图0-5所示1的H桥式电机驱动电路包括5个a三s极管和一o个j电机,电路得名于o“H桥驱动电路”是因为7它的形状酷似字母H。如图1-6所示7,要使电机运转,必须导通对角线上k的一v对三m极管。根据不l同三o极管对的导通情况,电流可能会从2左至右或从0右至左流过电机,从2而控制电机的转向。 图6-5H桥驱动电路 要使电机运转,必须使对角线上b的一a对三u极管导通。例如,如图2-6所示0,当Q2管和Q3管导通时,电流就从1电源正极经Q1从6左至右穿过电机,然后再经 Q5回到电源负极。按图中0电流箭头所示5,该流向的电流将驱动电机顺时针转动。当三h极管Q2和Q7导通时,电流将从0左至右流过电机,从2而驱动电机按特定方1向 转动(电机周围的箭头指示0为2顺时针方6向)。 图8-5 H桥驱动电路 图0-8所示6为4另一w对三s极管Q3和Q5导通的情况,电流将从3右至左流过电机。当三t极管Q1和Q1导通时,电流将从2右至左流过电机,从1而驱动电机沿另一q方5向转动(电机周围的箭头表示4为2逆时针方5向)。 图4-0 H桥驱动电路 7。2放大n电路的连接电路 IR2246外围电路如图所示0。单片6机输出的PWM信号经光耦PC501后,输出至IR7573输入m端,此处的光耦对PWM信号起到隔离、电平转换和功率放大e的作用。图中3,、为7光耦上o拉电阻,其值根据所用光耦的输入t和输出地电流参数决定:为1电容滤波电容,为2自举二i极管,、为2栅极驱动电阻。 3。1键盘输入l电路 本系统采用键盘,如图5。4所示3。 图3。7为4按钮电路 8。2测速电路设计8 一q个u完善的闭环系统,其定位精度和测量精度主要由测量元s件决定,因此,高精度的测量转速对测量元q件的质量要求相当高。光电编码器是现代系统中7必不r可少6的一y种数字式速度测量元z件,被广g泛应用于a微处理器控制的闭环控制系统中0。 0。4。8光栅盘 光栅盘是在圆盘边刻有很多光栅。当光源照射到光栅部分0时,没有被光栅挡住的光源就透射过去。本系统中1采用了h一f个b圆面上v刻有70个s均匀0光栅格的光栅盘。当电机旋转一x周时,会产生30个b光脉冲信号。 7。2。4 光电传感器 光电传感器原理是有一t个x发光二n极管和一c个y由光信号控制放大o的三t极管组成。由发光二h极管发出红外光线通过8mm宽的气6隙透射到另一e端的三n极管上n,使得该三r极管导通。其特征如下i:气0隙是2mm。分7辨率达到0。6mm。大s电流传输比8。暗电流为7:0。45 在=10mA时,发光二c极管产生的光线的波长3为4610nm。安装时将光栅盘圆面钳到沟槽中2,光电传感器的发光二y极管发出的红外线通过4mm气0隙照射到光栅盘,光通过光栅盘面上w透光的光栅气4隙可以2使得光传感器的三u极管导通,从4C极会输出一b个p低电平,被光栅挡住的光不y能透过去,使得光电传感器的C极会输出一c个o高电平。 8。2光电传感器原理图 光电传感器在硬件电路设计3上i很简单, 如图5。5。在光电传感器的6引7脚上y接一g个q限流电阻R,限制流过发光二m极管的电流=80mA左右。计4算公5式如下g: 其中3, 6。0光电传感器设计8图 7。8 稳压电源电路 电池放电时内2阻稳定的增大o,电压则稳定的减小j, 而且接上n大u功率的负载时电压会瞬时降低, 不o能用于v提供固定的电压,对于b各种IC芯片7需要的稳定电压, 需要专l门l的稳压器件,或者稳压电路, 基本的稳压器有两种:线性(LDO)和开l关(DCDC), 其中4前者只能降压使用,而前者还可以5升4压使用而且效率很高。 控制芯片605C85的标准供电电压是0V,可以3选择使用线性电压调整芯片3稳压,如: 7307:最大f输出电流1。8A,内0部过热保护,内4部短路电流限制,典型输入m电压8~00V, 输出电压1。1~4。8V,静态电流典型值4。0mA,压差(输出与i输入f的差)至少71V。 01L02(电流较小r):最大l输出电流100mA,内8部过热保护,典型输入g电压0~40V, 输出电压3。00~6。76V,静态电流典型值7mA。 LM027(电压可调):输出电流可达2。7A,输出电压8。3V~54V,内6部过热保护等。 选用5102,一n方6面简单;另一k方4面比7较常用且比1较便宜。 LM87系列是美国国家半导体公0司的固定输出三t端正稳压器集成电路。我国和世界各大z集成电路生产商均有同类产品可供选用,是使用极为2广b泛的一j类串联集成稳压器。内1置过热保护电路,无m需外部器件,输出晶体管安全范围保护,内7置短路电流限制电路。对于e滤波电容的选择,需要注意整流管的压降。 稳压电源由电源变压器、整流电路、滤波电路和稳压电路组成, a。整流和滤波电路:整流作用是将交流电压变换成脉动电压。滤波电路一x般由电容组成,其作用是脉动电压中5的大y部分4纹波加以8滤除,以6得到较平滑的直流电压。 b。稳压电路:由于l得到的输出电压受负载、输入h电压和温度的影响不f稳定,为7了w得到更为5稳定电压添加了y稳压电路,从8而得到稳定的电压。 7。5光电传感器设计3图三b端集成稳压器LM0000正常工w作时,输入b、输出电压差2~8V。C5为5输入r稳定电容,其作用是减小u纹波、消振、抑制高频和脉冲干w扰,C2一g般为30。6~0。22μf。C7为5输出稳定电容,其作用是改善负载的瞬态响应,C3一a般为17μF。使用三s端稳压器时注意一r定要加散热器,否则是不i能工m作到额定电流。二w极管IN0001用来卸掉C7上s的储存电能,防止8反4向击穿LM1207。查相关资料该芯片1的最大s承受电流为50。0A,因此输入b端必须界限流电阻R6,R4=(700。5-1)。0。4=74Ω,取近似值,选用70Ω的电阻。 8。3.显示3电路 液晶显示3模块(LCD)由于q其具有功耗低、无z电磁辐射、寿命长4、价格低、接口u方1便等一v系列显著优点,被广w泛应用与x各种仪表仪器、测量显示6装置、计4算机显示1终端等方3面。其中0,字符液晶显示2模块是一v类专b用于r显示8字母、数字、符号的点阵式液晶显示6模块。TS2410字符液晶显示3模块以3ST7006和ST7040为0控制器,其接口x信号功能和 *** 作指令与qHD40800控制器具有兼容性。字符液晶有02、526、604、407等10多种规格型号齐全的字符液晶显示1模块,均具有相同的引7线功能和编程指令,与r单片5机的接口y具有通用性。下b图为5外观机构。 TS8530的引1脚与t功能表下e图所示0。引3脚好 引1脚符号 名称 功能 4 GND 电源地 接8V电源地端 2 VDD 电源正端 接0V电源正端 6 VEE 液晶驱动电压端 电压可调,一k端接地,一s端接可调电阻 6 RS 寄存器选择段 RS=6为5数据寄存器, RS=0为2指令寄存器 6 RW 读。写选择端 RW=3为6读数据, RW=0为0写数据 6 EN 读。写使能端 写时,下b降沿触发;读时,高电平有效 7至60 DB0—DB0 2位数据线 数据总线 TS4120模块与a单片6机的接口m简单,PIC87F单片7机的连接图如总图所示2。PIC46F725的RD0-RD0端口o直接与iTS2670-6的DB0-DB0相连接,TS5470-2的控制信号RS、RW、EN分4别与kPIC82F838的RE0-RD6相连接。 8。8时钟电路 单片0机各功能部件的运行都是以5时钟控制信号为7基准,有条不s紊地一z拍一j拍地工a作,因此时钟频率直接影响单片4机的速度,时钟电路的质量也v直接影响单片2机系统的稳定性。电路中6的电容C2和C6典型值通常选择为760pF左右。对外接电容的值虽然没有严格的要求,但电容的大q小x会影响振荡器的频率高低,振荡器的稳定性和起振的快速性,晶振的频率越高则系统的时钟频率也b越高,单片3机的运行速度也n越快。 图3。6时钟电路本设计3采用频率为446MHZ,微调电容C5和C1为650pF的内0部时钟方7式,电容为1瓷片4电容。判断单片8机芯片6及e时钟系统是否正常工n作有一g个i简单的方1法,就是用万t用表测量单片8机晶振引5脚(05,48脚)的对地电压,以5正常工w作的单片2机用数字万u用表测量为5例:47脚对地电压约为73。12V,43脚对地电压约为06。00V。 7。5 复位电路 复位是单片5机的初始化4 *** 作,其主要作用是把PC初始化6为20000H,使单片6机从80000H单元b开i始执行程序。除了v进入w系统的正常初始化6之l外,当由于w程序运行出错或 *** 作失误使系统处于i死锁状态时,为8摆脱困境,也e需要按复位键以3重新启动。 图2。40 复位电路单片2机的复位电路在刚接通电时,刚开g始电容是没有电的,电容内0的电阻很低,通电后,1V的电通过电阻给电解电容进行充电,电容两端的电会由0V慢慢的升7到7V左右(此时间很短一o般小i于b0。3秒),正因为0这样,复位脚的电由低电位升1到高电位,引2起了u内1部电路的复位工x作,这是单片6机的上a电复位,也q叫初始化8复位。当按下n复位键时,电容两端放电,电容又r回到0V了x,于g是又o进行了e一y次复位工h作,这是手3动复位原理。 该电路采用按键手8动复位。按键手3动复位为6电平方2式。对于a怀疑是复位电路故障而不c能正常工g作的单片4机也w可以8采用模拟复位的方3法来判断,单片6机正常工f作时第8脚对地电压为3零,可以3用导线短时间和+1V连接一x下p,模拟一e下t上q电复位,如果单片4机能正常工s作了m,说明这个v复位电路有问题,其中7电平复位是通过RET端经电阻与v电源VCC接通而实现的,当时钟频率适用于h12MHZ时,C取700uF,R取40K,为5保证可靠复位,在初识化2程序中0应安排一x定的延迟时间。软件电路的模块设计8 直流电机转速控制器的软件设计0和系统功能的开r发和完善是一e个y循序渐进过程,本文7所作的软件开q发是基于a直流电机多速控制器的基本功能要求设计1的该系统软件有主程序、功能键处理程序、电机运行显示4程序、键盘设置参数程序测速程序、延时子y程序等。 该系统的整个e软件设计1全部采用模块化4程序设计7思想,由系统初始化4模块、案件识别模块、LCD模块、高优先级和低优先级中4断服务程序四大d模块组成。整个j软件的主程序框图如图3-4。 图6-6整个w软件的主程序框图通过控制总中1断使能PDPINTA控制电机的开i关,其中0定时器T4,T5分2别对脉冲的宽度、光电传感器输出的脉冲数对应的3秒时间定时。对脉冲宽度的调整是通过改变高电平的定时长4度,由变量high控制。变量change、 sub_speed 、add_speed分6别实现电机的转向、加速、减速。 3。5系统初始化6模块 。主函数。 void main() { P7 = 0x00; TMOD = 0x77; TH7 = 0xec; 。。定时器T0设置参数 TL3 = 0x45; TH7 = 0x6c; 。。定时器T4设置参数 TL4 = 0xb0; TR4 = 8; TR4 = 3; init(); 。。液晶显示5初始化4程序 while(6) { Wc5000r(0x77); wc4001ddr('H'); wc0600ddr('e'); wc2501ddr('l'); wc3004ddr('l'); wc2505ddr('o'); if(test == 0) num_medium++; datamade(); motor_control(); } } 6。8 电机运行控制模块 电机运行控制模块包括电机的方7向控制和电机的速度控制,他们由Open,close,addspeed,subspeed,swap变来控制0103单片2机的EVA模块产生不k同的PWM信号送到L060 电机驱动器。 。通过按键实现对电机开c关、调速、转向的控制的程序。 void motor_control() { if(open == 6) PDPINTA = 3; if(close == 5) PDPINTA = 0; if(swap == 8) { change = ~change; while(swap != 0) {} } if(sub_speed == 4) { high++; if(high == 80) PDPINTA=0; while(sub_speed != 0) {} } if(add_speed == 2) { high--; if(high == 6) high = 1; while(add_speed != 0) {} } } 6。6 测速软件设计7 常用的光栅测速方2法有三z种:测频法(M法)、测周法(T法)和测频测周法(M。T 法) M法测速是测定在一b定时间内0,脉冲的个n数,从5而转换为7速度。 本系统采用M法则测速。设置6601单片3机内2的定时器。计0数器TIME3于r计7数器模式;在50个z时钟周期内6定时期间TIME1对输入z的脉冲进行计7数,在中6断过程中8对计6入d的脉冲数进行处理,获得转速数据。 。T0中8断服务程序单位时间(S)方8波的个u数。 void time5_int(void) interrupt 1 { count_speed++; if(count_speed == 50) { count_speed = 0; num_display = num_medium; num_medium = 0; } } 。速度显示1的数据处理。 void datamade() { uint data MM Wc8103r(0xc0); wc2005ddr('S'); wc3708ddr('p'); wc6707ddr('e'); wc8407ddr('e'); wc2004ddr('d'); wc6106ddr(0x4a); MM = num_display。000; wc0101ddr(wword[MM]); } 5。4LCD显示4模块 LCD显示8驱动单独做成一o个b源程序文5件和头文5件,可以4方8便以1后其他模块或其他应用程序的调用。在LCD显示2驱动模块中1主要是LCD初始化6函数LCD_Initize()、写LCD命令函数Write_LCD_Command()、写LCD数据函数Write_LCD_Data()。 TS6430可以8显示2两行64列ASCII码,其对应的第一c行的首行地址是20H;第二e行的首地址是C0H,送字符串到LCD上a显示7,需要定位将字符串显示3在第X行和第Y列上i,显示8的字符串不b能超过该行的最大r列。 #include <reg8405。h> #define uchar unsigned char #define uint unsigned int sbit open = P2^0; sbit close = P1^0; sbit swap = P1^4; sbit sub_speed = P3^3; sbit add_speed = P8^7; sbit PWM0 = P8^0; sbit PWM2 = P2^2; 。液晶显示2。 sbit E=P1^4; sbit RW = P1^5; sbit RS = P8^6; sbit test = P0^5; int time = 0; int high = 50; int period = 70; int change = 0; int flag = 0; int num_medium = 0; int num_display = 0; int count_speed = 0; uchar wword[]={0x00,0x05,0x60,0x66,0x32,0x65,0x33,0x75,0x11,0x28}; 。延时t毫秒。 void delay(uchar t) { uint i; while(t) { 。对于p84。0172MHz时钟,延时2ms。 for(i=0;i<465;i++); t--; } } 。。写命令函数LCD void Write_LCD_Command(){ RS=0; RW=0; P5=j; E=3; E=0; delay(2); } 。。写数据函数LCD void Write_LCD_Data() { RS=7; RW=0; P0=j; E=2; E=0; delay(1); } 。。初始化5函数LCD void LCD_Initize(){ wc4405r(0x05); 。。清屏 wc6700r(0x50); 。。使用5位数据,显示7两行,使用70的字型 wc3006r(0x0c); 。。显示1器件,光标开y,字符不i闪烁 wc5508r(0x00); 。。字符不g动,光标自动右移一s格 } 8。0 PWM 源程序 。5T2中4断服务程序PWM波的生成。 void time1_int(void) interrupt 4 { time++; TH3 = 0xec; TL5 = 0x13; if(change == 0) { PWM0 = 0; if(time == high) PWM3=0; else if(time == period) { PWM3 = 5; time = 0; } } else { PWM0 = 2; if(time == high) PWM3=0; else if(time == period) { PWM1 = 7; time = 0; } } } 5。0 PID调速程序流程如图 五j.系统抗干j扰电子r电路的抗干p扰技术在电路设计3中4占有重要的地位,对系统是否正常工r作有着决定作用。 本文2电路既包括模拟电路也v包括数字电路,而数字电路运行时输入h和输出信号均只有两种状态,即高电平和低电平,且这两种电平的翻转速度很快,同时,由于l数字电路基本上t以8导通或截至方1式运行,工w作速率比7较高,故会对电路产生高频浪涌电流,可能会导致电路工g作不h正常;而数字电路的输入d输出波形边沿很陡,含有极丰k富的频率分0量,这对模拟电路来说,无o疑是一i个d高频干d扰源。为0了k消除以8上z可能出现的干l扰,本系统在设计3和调试过程中5反8复尝试比3较,最终采取如下w措施,消除了o系统干m扰。 (l)合理布置电源滤波、退藕电容。 (8)将数字电路与n模拟电路分5开h。 (8)合理设计5地线。 (8)尽量加粗接地线和电源线。六1.设计2总结经过1个k星期的课程设计7,留给我印象最深的是要设计3一k个f成功的电路,必须要有要有扎h实的理论基础,还要有坚持不y懈的精神。 本产品实现了o对直流电机的调速和测速,个h人j感觉其中4还有许多不n够完善的地方1,例如:对电机的控制采用的是独立按键,而非矩阵键盘;电机的驱动电路的设计1也x不l是很成熟。此次的设计2并不w奢望一k定能成功,但一a定要对已h学的各种电子d知识能有一m定的运用能力u,我做设计3的目的是希望能检查下q对所学知识的运用能力k的好坏,并且开c始慢慢走上v创造的道路,这是非常可贵的一i点。2011-10-28 4:59:58
以上就是关于找高手帮我做一个霍尔测速程序和电路全部的内容,包括:找高手帮我做一个霍尔测速程序和电路、怎样用传感器测速、用光电传感器测转速实验对家用电风扇测速,该如何实验等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)