成绩评定:传感器技术课程设计题目霍尔传感器小车测速摘要对车速测量,利用霍尔传感器工作频带宽、响应速度快、测量精度高的特性结合单片机控制电路,设计出了一种新型的测速系统,实现了对脉冲信号的精确、快速测量,硬件成本低,算法简单,稳定性好。
霍尔传感器测量电路设计、显示电路设计。
测量速度的霍尔传感器和车轴同轴连接,车轴没转一周,产生一定量的脉冲个数,有霍尔器件电路部分输出幅度为12 V 的脉冲。
经光电隔离器后成为输出幅度为5 V 转数计数器的计数脉冲。
控制定时器计数时间,即可实现对车速的测量。
在显示电路设计中,实现LED上直观地显示车轮的转数值。
与软件配合,实现了显示、报警功能关键词:单片机AT89C51 传感器 LED 仿真目录一、设计目的------------------------- 1二、设计任务与要求--------------------- 12.1设计任务------------------------- 12.2设计要求------------------------- 1三、设计步骤及原理分析 ----------------- 13.1设计方法------------------------- 13.2设计步骤------------------------- 33.3设计原理分析--------------------- 10四、课程设计小结与体会 ---------------- 11五、参考文献------------------------- 11一、设计目的通过《传感器及检测技术》课程设计,使学生掌握传感器及检测系统设计的方法和设计原则及相应的硬件调试的方法。
进一步理解传感器及检测系统的设计和应用。
用霍尔元件设计测量车速的电子系统,通过对霍尔元件工作原理的掌握实现对车速测量的应用,设计出具体的电子系统电路,并且能够完成精确的车速测量。
二、设计内容及要求2.1设计任务霍尔传感器一般由霍尔元件和磁钢组成,当霍尔元件和磁钢相对运动时,就会产生脉冲信号,根据磁钢和脉冲数量就可以计算转速,进而求出车速。
现要求设计一个测量系统,在小车的适当位置安装霍尔元件及磁钢,使之具有以下功能:功能:1)LED数码管显示小车的行驶距离(单位:cm)。
2)具有小车前进和后退检测功能,并用指示灯显示。
3)记录小车的行驶时间,并实时计算小车的行驶速度。
4)距离测量误差<2cm。
5)其它。
2.2设计要求设计要求首先选定传感器,霍尔传感器具有灵敏、可靠、体积小巧、无触点、无磨损、使用寿命长、功耗低等优点,综合了电机转速测量系统的要求。
其次设计一个单片机小系统,掌握单片机接口电路的设计技巧,学会利用单片机的定时器和中断系统对脉冲信号进行测量或计数。
再次实时测量显示并有报警功能,实时测量根据脉冲计数来实现转速测量的方法。
要求霍尔传感器转速为0~5000r/min。
三、设计步骤及原理分析3.1 设计方法3.1.1 霍尔效应所谓霍尔效应,是指磁场作用于载流金属导体、半导体中的载流子时,产生横向电位差的物理现象。
金属的霍尔效应是1879年被美国物理学家霍尔发现的。
当电流通过金属箔片时,若在垂直于电流的方向施加磁场,则金属箔片两侧面会出现横向电位差。
半导体中的霍尔效应比金属箔片中更为明显,而铁磁金属在居里温度以下将呈现极强的霍尔效应。
霍尔效应的原理图如图1-2所示。
图1-2霍尔效应的原理图当电流I通过放在磁场中的半导体基片(霍尔元件)且电流方向和磁场方向垂直时,在垂直于电流和磁通的半导体基片的横向侧面上即产生一个电压,这个电压称为霍尔电压U。
霍尔电压U的高低与通过的电流I和磁场强度B成正比,可用下列公式表示:式中K—霍尔元件的灵敏度I—电流B—磁场强度由上式知霍尔电动势与、I、B有关。
当I、B大小一定时,越大,越大。
显然,一般希望越大越好。
若磁感应强度B不垂直于霍尔元件,而是与其法线成某一角度θ时,此时的霍尔电动势为U =K IBcosθ由上式可知,当通过的电流I为一定值时,霍尔电压与磁场强度B成正比,且当B的方向改变时,霍尔电势的方向也随之改变。
即霍尔电压的大小只与磁场强度大小关而与磁通的变化速率无关。
如果所施加的磁场为交变磁场,则霍尔电势为同频率的交变电动势。
由于通电导线周围存在磁场,其大小与导线中的电流成正比,故可以利用霍尔元件测量出磁场,就可确定导线电流的大小。
利用这一原理可以设计制成霍尔电流传感器。
其优点是不与被测电路发生电接触,不影响被测电路,不消耗被测电源的功率,特别适合于大电流传感。
若把霍尔元件置于电场强度为E、磁场强度为H的电磁场中,则在该元件中将产生电流I,元件上同时产生的霍尔电位差与电场强度E成正比,如果再测出该电磁场的磁场强度,则电磁场的功率密度瞬时值P可由P=EH确定。
如果把霍尔元件集成的开关按预定位置有规律地布置在物体上,当装在运动物体上的永磁体经过它时,可以从测量电路上测得脉冲信号。
根据脉冲信号列可以传感出该运动物体的位移。
若测出单位时间内发出的脉冲数,则可以确定其运动速度。
3.1.2 霍尔元件测速原理基于霍尔传感器的速度测量系统工作过程是:测量转速的霍尔传感器和机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路部分输出。
经光电耦合后,成为转速计数器的计数脉冲。
同时传感器电路输出幅度为12v的脉冲经光电耦合后降为5v,保持同89C51逻辑电平相一致。
控制计数时间,即可实现计数器的计数值对应机轴的转速值。
CPU将该值数据处理后,在LCD上显示出来。
一旦超速,CPU通过喇叭和指示灯发出声、光报警信号。
3.2设计步骤3.2.1 系统框图及主程序流程框图1.系统框图以单片机AT89C5l为控制核心,用霍尔集成传感器作为测量转速的检测元件,最后用字符型液晶显示器1602(HD44780控制)显示的小型直流电动机转速的方法,是数字式测量方法,智能化微电脑代替了传统的机械式或模拟式结构。
系统原理框图如图3所示。
图3-2-1系统原理框图本次设计系统以单片机AT89C5l为控制核心。
用霍尔集成传感器作为测量小型直流电机转速的检测元件,经过单片机数据处理,用字符型液晶显示器1602显示小型直流电机的转速。
另外系统还可完成对电机的开关控制、系统工作时间、当前时间及电机状态的显示。
单片机转速测量系统。
组成单片机转速测量系统的有传感器、处理器、计数器和显示器四个部分组成。
2. 主程序流程图3整体电路设计霍尔传感器和电机机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路输出。
经过电耦合器后,即经过隔离整形电路后,成为转数计数器的计数脉冲。
同时霍尔传感器电路输出幅度为12V的脉冲经光电耦合后降为5V,保持同单片机AT89C51逻辑电平相一致,控制计数时间,即可实现计数器的计数值对应机轴的转速值。
先进行初始化设置各定时器初值,然后判断是否启动系统进行测量。
如果是,就启动系统运行。
如果不是就等待启动。
启动系统后,霍尔传感器检测脉冲到来后,启动外部中断,每来一个脉冲中断一次,记录脉冲个数。
同时启动T0定时器工作,每1秒定时中断一次,读取记录的脉冲个数,即电机转速。
连续采样三次,取平均值记为一次转速值。
再进行数值的判断,若数值高于5000rpm则报警并返回初始化阶段,否则就进行正常速度液晶显示。
4传感器部分主要分为两个部分。
第一部分是利用霍尔器件将电机转速转化为脉冲信号;第二个部分是使用光耦,将传感器输出的信号和单片机的计数电路两个部分隔开,减少计数的干扰。
用于测量的A44E集成霍尔开关,磁钢用直径D=6.004mm,长度为L=3.032mm的钕铁硼磁钢。
电源用直流,霍尔开关输出由四位半直流数字电压表测量,磁感应强度B用95A。
5定时器中断主程序在对定时器、计数器、堆栈等进行初始化后即判断标志位是否为1,如果为1,说明要求对数据进行计算处理,首先将标志位清零,以保证下次能正常判断,然后进入数据处理程序,由于这里的闸门时间为1s,而显示要求为转/分,因此,要将测到的数据进行转换,转换的方法是将测得的数据乘以60,但由于转轴上安装有4只磁钢,每旋转一周可以得到4个脉冲,因此,要将测得的数据除以4,所以综合起来,将测得的数据乘以60/4=15即可得到每分钟的转速。
计算得到的结果是二进制的整数,要将数据送往显示缓冲区需要将该数转化为BCD码。
运算得到的是压缩BCD码,需要将其转换为非压缩BCD码。
定时器T0用作4ms定时发生器,在定时中断程序中进行数码管的动态扫描,同时产生1s的闸门信号。
1s闸门信号的产生是通过一个计数器Count,每次中断时间为4ms,每计250次即为1s,到了1s后,即清除计数器Count,然后关闭作为计数器用的INT0,读出TH0、TL0中的数值,分别送入SpCount和SpCount+1单元,将T0中的值清空,置标志位为1,要求主程序进行速度值的计算。
这里还有一个细节,用作1s闸门信号产生的Count每次中断都会加1,而INT0却有一个周期是被关闭的,因此,计数值是251而不是250。
系统采用外部晶振,系统时钟SYSCLK等于18432000,T0定时1ms,初始化时TH0=(-SY-SCLK /1000)》8;TL0=-(SYSCLK/1000)。
等待1s到,输出转速脉冲个数N,计算电机转速值。
将1s内的转速值换算成1 min内的电机转速值,并在LCD上输出测量结果。
/*------------------------主函数-------------------------*/void main(){int_all();//全局初始化while(1){disp_count();//数据处理if(zhuan>5000) //转速警告{warning=1;}if(zhuan<4999){warning=0;}write_command(0x80);for (i=0;i<sizeof(display)-1;i++){write_data(display[i]); //LCD显示delay(5);}}}中断服务程序设计一、外部计数中断/*-------------------外部中断0计数程序-------------------*/void counter(void) interrupt 0{EX1=0; //关外部中断0count++;//计数加1if(count==4) //4次循环为电机转一圈{count=1; //初始化计数z++;//转圈计数加1}EX1=1; //开外部中断0}二、定时器中断/*-----------------内部中断0计时计数程序-----------------*/void Time0(void) interrupt 2 using 0 {TH0=0x4c; //50ms定时TL0=0x00;msec++;if(msec==20) //50*20=1S {msec=0; zhuan=z; z=0;}}6显示程序设计液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。