版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上测速是工农业生产中经常遇到的问题,学会使用单片机技术设计测速仪表具有很重要的意义。要测速,首先要解决是采样的问题。在使用模拟技术制作测速表时,常用测速发电机的方法,即将测速发电机的转轴与待测轴相连,测速发电机的电压高低反映了转速的高低。使用单片机进行测速,可以使用简单的脉冲计数法。只要转轴每旋转一周,产生一个或固定的多个脉冲,并将脉冲送入单片机中进行计数,即可获得转速的信息。一、脉冲信号的获得可以有多种方式来获得脉冲信号,这些方法有各自的应用场合。下面逐一进行分析。1霍尔传感器霍尔传感器是对磁敏感的传感元件,常用于开关信号采集的有CS3020、CS3040等,这种传感
2、器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,输出通常是集电极开路(OC)门输出,工作电压范围宽,使用非常方便。如图1所示是CS3020的外形图,将有字面对准自己,三根引脚从左向右分别是Vcc,地,输出。图1CS3020外形图使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的圆周上粘上一粒磁钢,让霍尔开关靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。如果在圆周上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。这种传感器不怕灰
3、尘、油污,在工业现场应用广泛。2光电传感器光电传感器是应用非常广泛的一种器件,有各种各样的形式,如透射式、反射式等,基本的原理就是当发射管光照射到接收管时,接收管导通,反之关断。以透射式为例,如图2所示,当不透光的物体挡住发射与接收之间的间隙时,开关管关断,否则打开。为此,可以制作一个遮光叶片如图3所示,安装在转轴上,当扇叶经过时,产生脉冲信号。当叶片数较多时,旋转一周可以获得多个脉冲信号。图2光电传感器的原理图图3遮光叶片3光电编码器光电编码器的工作原理与光电传感器一样,不过它已将光电传感器、电子电路、码盘等做成一个整体,只要用连轴器将光电传感器的轴与转轴相连,就能获得多种输出信号。它广泛应
4、用于数控机床、回转台、伺服传动、机器人、雷达、军事目标测定等需要检测角度的装置和设备中。如图4所示,是某光电编码器的外形。图4成品光电编码器二、硬件连接测速的方法决定了测速信号的硬件连接,测速实际上就是测频,因此,频率测量的一些原则同样适用于测速。通常,可以用计数法、测脉宽法和等精度法来进行测试。所谓计数法,就是给定一个闸门时间,在闸门时间内计数输入的脉冲个数;测脉宽法是利用待测信号的脉宽来控制计数门,对一个高精度的高频计数信号进行计数。由于闸门与被测信号不能同步,因此,这两种方法都存在1误差的问题,第一种方法适用于信号频率高时使用,第二种方法则在信号频率低时使用。等精度法则对高、低频信号都有
5、很好的适应性。这里为简化讨论,仅采用计数法来进行测试。图5所示是测速器的电路图,由六位数码管和测速接口组成。其中T0处接的只画了一只CS3020组成的霍尔传感器接线图,如果采用光电传感器接口也是一样的,读者可自行画出接线图。图5测速计电路原理图三、软件编程测量转速,使用霍尔传感器,被测轴安装有12只磁钢,即转轴每转一周,产生12个脉冲,要求将转速值(转/分)显示在数码管上。程序如下:DISPBUF EQU 5AH ;显示缓冲区从5AH开始PageSecCoun EQU 59HSpCoun EQU 57H ;速度计时器单元57H和58H,高位在前(57H单元中)Count EQU 56H ;显示
6、时的计数器SpCalc bit 00h ;要求计算速度的标志Hidden EQU 16 ;消隐码ORG 0000HAJMP STARTORG 1BHJMP TIMER1 ;定时中断1入口ORG 30HSTART: MOV SP,#5FH ;设置堆栈MOV P1,#0FFHMOV P0,#0FFHMOV P2,#0FFH ;初始化,所有显示器、LED灭MOV TMOD,#B ;定时器T1工作于方式1,定时器0工作方式1 MOV TH1,#HIGH(65536-4000)MOV TL1,#LOW(65536-4000)SETB TR1SETB ET1 ;开定时器1中断SETB EALOOP: JN
7、B SpCalc,LOOP ;如果未要求计算,转本身循环;标号:功能:双字节二进制无符号数乘法;入口条件:被乘数在R2、R3中,乘数在R6、R7中。;出口信息:乘积在R2、R3、R4、R5中。;影响资源:PSW、A、B、R2R7堆栈需求:字节MOV R2,SpCounMOV R3,SpCoun+1MOV R6,#0MOV R7,#5 ;测得的数值是每秒计数值,转为每分转速(每一转测12次,故乘5而非60)CALL MULD;标号:功能:双字节十六进制整数转换成双字节码整数;入口条件:待转换的双字节十六进制整数在R6、R7中。;出口信息:转换后的三字节码整数在R3、R4、R5中。;影响资源:PS
8、W、A、R2R7堆栈需求:字节MOV A,R4MOV R6,AMOV A,R5MOV R7,A ;将乘得的结果送R6R准备转换,这里结果不可能超过2字节CALL HB2CBCD: MOV DISPBUF,R3 ;最高位MOV A,R4 ;ANL A,#0F0H ;去掉低4位SWAP A ;将高4位切换到低4位MOV DISPBUF+1,AMOV A,R4ANL A,#0FHMOV DISPBUF+2,AMOV A,R5ANL A,#0F0HSWAP AMOV DISPBUF+3,AMOV A,R5ANL A,#0FHMOV DISPBUF+4,ACLR SpCalc ;清计算标志JMP LOO
9、P;主程序到此结束TIMER1: PUSH ACC;ACC入栈PUSH PSW ;PSW入栈SETB RS0 ;工作区1JNB TR0,SETTR0 ;如果T0未运行,则开启T0JMP GO1SETTR0:SETB TR0GO1: INC SecCoun ;秒计数器加1MOV A,SecCounCJNE A,#251,Go2 ;如果未到1s则转CLR TR0 ;1到了,则停止T0的运行MOV SpCoun,TH0MOV SpCoun+1,TL0 ;读取计数值CLR AMOV TH0,AMOV TL0,A ;清计数器SETB SpCalc ;要求主程序计算速度MOV SecCoun,#0 ;清秒
10、计数器Go2: INC COUNT;用于显示的计数器MOV A,COUNTCLR CSUBB A,#6JZ N1JMP N2N1: MOV COUNT,#0N2: MOV A,#DISPBUFADD A,COUNT MOV R0,A ;指向当前要显示的显示缓冲区MOV A,R0 ;取第一个待显示数MOV DPTR,#DISPTAB ;字形表首地址MOVC A,A+DPTR ;取字形码MOV P0,A ;将字形码送P0位(段口)MOV A,COUNTMOV DPTR,#BitTab ;字位表首地址MOVC A,A+DPTRORL P2,#BANL P2,AMOV TH1,#HIGH(65536-
11、4000)MOV TL1,#LOW(65536-4000)POP PSWPOP ACCRETIBitTab: DB7Fh,0BFH,0DFH,0EFH,0F7H,0FBHDISPTAB:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0FFH其他数学运算程序(略)四、程序分析主程序在对定时器、计数器、堆栈等进行初始化后即判断标志SpCalc是否为1,如果为1,说明要求对数据进行计算处理,首先将SpCalc标志清零,以保证下次能正常判断,然后进入数据处理程序,由于这里的闸门时间为1s,而显示要求为转
12、/分,因此,要将测到的数据进行转换,转换的方法是将测得的数据乘以60,但由于转轴上安装有12只磁钢,每旋转一周可以得到12个脉冲,因此,要将测得的数据除以12,所以综合起来,将测得的数据乘以5即可得到每分钟的转速。计算得到的结果是二进制的整数,要将数据送往显示缓冲区需要将该数转化为BCD码。运算得到的是压缩BCD码,需要将其转换为非压缩BCD码,从标号CBCD开始的一段程序即作了这样的处理。需要说明的是,这里多位二进制乘法和多位二进制到BCD码的转换都是用了现成的成熟子程序,因此,首先将二进制数转换为压结合实际BCD码,然后再转换成非压缩BCD码,看似多写了些程序,实际上这对于保证程序的质量很有好处。Page定时器T1用作4ms定时发生器,在定时中断程序中进行数码管的动态扫描,同时产生1s的闸门信号。1s闸门信号的产生是通过一个计数器Count,每次中断时间为4ms,每计250次即为1s,到了1s后,即清除计数器Count,然后关闭作为计数器用的T0,读出TH0、TL0中的数值,分别送入SpCoun和SpCoun+1单元,将T0中的值清空,置SpCalc标志为1,要求主程序
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年江苏省靖江市高一化学上册期末考试自测卷及完整答案(夺冠系列)
- 2026年湖北省大冶市高三历史上册期末考试模拟卷含答案(完整版)
- 2026年湖南省冷水江市高三生物下册期末考试模拟卷及答案
- 2026年广东省罗定市高三生物下册期末考试模拟考试卷含答案
- 2026年山西省永济市高一化学上册期末考试模拟测试卷及参考答案【达标题】
- 2026年湖北省洪湖市高一历史下册期末考试自测卷附答案【B卷】
- 2026年湖北省石首市高一化学上册期末考试模拟试卷及完整答案1套
- 2026年山西省介休市高一化学上册期末考试自测卷含答案(典型题)
- 2024新沪教版英语九年级上全册单词词转默写(含答案)
- 线上移民申请流程协议
- 《百家姓》全文带拼音
- 教师职业倦怠量表(MBI-ES)
- 统招专升本英语4000个考前必背词汇表
- 日常山林巡查防火培训课件
- 蜡疗室护理工作制度
- 2026年新版八年级下学期道德法治核心知识点资料
- 飞机复合材料结构修理课件 任务2.1 飞机复合材料结构常见的损伤类型
- XX区实验初级中学2026年春季学期校园迎检工作办学治理体系和治理能力现代化建设实施方案
- 光催化技术应用
- 全国计算机等级考试一级计算机基础及MS+Office教程完整全套教学课件
- 雨课堂学堂在线学堂云《科学研究方法与论文写作(复大)》单元测试考核答案
评论
0/150
提交评论