历史上的今天
返回首页

历史上的今天

今天是:2025年01月16日(星期四)

正在发生

2021年01月16日 | 基于51单片机的红外反射式的测速机

2021-01-16 来源:eefocus

引言


在工程实践中,经常会遇到各种需要测量转速的场合。转速是电动机极为重要的一个状态参数,在很多运动系统的测控中,都需要对电机的转速进行测量,不论是直流调速系统还是交流调速系统,只有转速的高精度检测才能得到高精度的控制系统。迄今为止,测速可分为两类:模拟电路测速和数字电路测速。随着微电子技术的发展,计算机技术的广泛应用,出现了以计算机为核心的数字测速装置。这样的速度测量装置测量范围宽、工作方式灵活多变、适应面广,具有普通数字测速装置不可比拟的快速性、精确性和优良性。


一:设计思路


用一个红外发光二极管和一个接受红外光的二极管组成一套光电管。当检测到物表面为黑色时,反射光很弱,接收端检测到的光线可以忽略,使接收端呈现一种状态,例如开关管截止;当被检测物表面为白色时,反射光强烈,发射端发射的红外线被接收端全部接收,使接收端呈现另一种相反的状态,例如开关管开通。这两种相反的状态表现在电路中,就是高低电平组成的脉冲信号。由此,我想到用一个比较器来比较两种接受到的信号,从而输出“0”“1”两种高低电平,并把两种信号传给单片机进行统计,然后利用设定算法进行计算,最后通过数码显示管显示计算结果。


二:所需模块


本测速系统共有两个模块构成,一个为光电传感器部分,用于接收光信号并转换为电信号,即高低电平信号;另一个为单片机部分,用于接收高低电平信号并通过内部计算,然后再通过数码显示管显示测出的结果。


光电传感器部分


(1)LM339工作原理及管脚图:


LM339类似于增益不可调的运算放大器。每个比较器有两个输入端和一个输出端。


两个输入端中的一个称为同相输入端,用“+”表示,另一个称为反相输入端,用“-”表示。当用作比较两个电压时,任意一个输入端加一个固定电压做参考电压(也称为门限电平,它可选择LM339输入共模范围的任何一点),另一端加一个待比较的信号电压,当“+”端电压高于“-”端时,输出管截止,相当于输出端开路。当“-”端电压高于“+”端时,输出管饱和,相当于输出端接高电位。两个输入端电压差别大于10mV就能确保输出能从一种状态可靠地转换到另一种状态,因此,把LM339用在弱信号检测等场合是比较理想的。


LM339的输出端相当于一只不接集电极电阻的晶体三极管,在使用时输出端到正电源一般须接一只电阻(称为上拉电阻,选3-15K)。选不同阻值的上拉电阻会影响输出端高电位的值。因为当输出晶体三极管截止时,它的集电极电压基本上取决于上拉电阻与负载的值。


下图(1a)给出了一个LM399的基本单限比较器。输入信号Uin为待比较电压,把它加到同相输入端,在反相输入端接一个参考电压(门限电平)Ur。当输入电压Uin>Ur时,输出为高电平UOH。图(1b)为其传输特性。图(1c)为LM339的管脚图

(2)整体连线图:如下图(2)所示:

在上图中,LED灯相当于一个红外线发射管,JP1是红外线接收管,接收光强在上面转换成电流,在R上成为电压信号。当光线照射到白色面上时,光线反射强烈,光线照射到黑色面上时,光线反射较弱。因此当光照在不同颜色面上时,阻值会发生明显的变化。将阻值的变化值与RA1的标准值进行比较,就可以从LM339输出逻辑电平给单片机。


单片机部分


(1)单片机外部连线图:如下图(3)所示

在上接线图中,可在数码管与单片机之间接上一个分压电阻,起到保护作用。单片机型号选89C51或89C52都行。在试验板上把图(1)中的2管脚(逻辑电平输出管脚)和图(2)中的12管脚(中断输入管脚)连接,即可构成整个测速系统。


(2)单片机内部主程序流程图


主程序是控制单片机系统按照预定的操作方式运转,它完成人机对话和各种控制功能,是单片机系统程序的框架。主程序的主要任务是完成系统自检、初始化、处理键盘命令等功能。在本实验中,未涉及到键盘命令。


本系统的主程序流程如下图(4)所示。

在该测速系统的程序中,主程序执行的过程中共执行了3个中断程序,即外部中断0中断、外部脉冲计数0中断和定时器1中断。图(5)所示为外部中断0中断程序流程图。外部中断0中断程序主要用于测速起始。当测速开始时,执行外部中断0中断,外部脉冲计数加1,并判断T0、T1是否开启,若没有开启则开启,再判断1S定时到了没有,若1S定时到计算转速,并关INT0、T0、T1软件清零。


图(6)为T0中断程序流程图。T0对内部时钟脉冲计数,T0为8位定时器,1S定时的内部时钟脉冲超过了T0上限,故采用软件延时计数。图(7)为T1中断程序流程图,T1定时1S,当一秒定时到,则置位标志位。

三:测速原理


首先,选一小型直流电机,在其轴上固定一张圆形硬纸片,以此来代替被测物。其次把此圆形纸片平均分成6等分,并把其中的三块涂黑(具体见实物)。再次,用光电管正对圆形纸片。最后,启动整个系统就可以进行测速了。


因为当红外线照到面黑色时,反射光很弱,接收端检测到的光线可以忽略,当照到白色面时,反射光强烈,发射端发射的红外线几乎被接收端全部接收,因此,检测到的信号经过比较电路输出后,会给单片机输入高低两种电平。所以,在编程中,假定在1S时间内共检测到n个低电平信号,那么此电机的转速为。


四:整体电路图及实物图


见附一图所示。


五:所需器件

六:总结


本设计的光电传感器测速机能够快速检测到电机横截面上的黑白相间的面,并通过单片机编写测速程序,用数码管显示。但本设计的测速系统的整体性能只能满足一般小型电机和一些要求不高的测速,并且在其测速时,还需要在被测物上安装一个黑白相间的圆盘,这对某些被测物体来说是不太好实现的,即其是存在一定的局限性的。除此之外,其精确度也不尽完美。


但整体来说,此测速系统还是具有可行性的。当我们需要知道某电机的转速而又缺少测速装置时,就可以用此套系统来进行测速。它的简单性,方便性和快捷性也是某些测速装置不可比拟的。至于其缺点,由于设计者水平目前有限,暂不能完美解决,只待以后对此方面有较多理解后在解决,同时也希望对此精通的师生给予指点,从而进行改进测速方法,提高整个系统的测速性能。


附一:整体电路图

附二:程序源代码


#include


#defineuintunsignedint


uinttemp,qian,bai,shi,ge,aa,n;


sbitdula=P0;


sbitwela=P1;


sbitzd=P3^2;


uintcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};


voiddisplay(uintqian,uintbai,uintshi,uintge);


voiddelay(uintz);


voidinit();


voidmain()


{


EA=1;//开总中断


EX0=1;//开外部中断0


init();//初始化子程序


while(1)


{


display(qian,bai,shi,ge);


}


}


voiddelay(uintz)


{


uintx,y;


for(x=z;x>0;x--)


for(y=110;y>0;y--);


}


voiddisplay(uintqian,uintbai,uintshi,uintge)


{


P0=table[qian];


P1=0xf7;


delay(1);


P0=table[bai];


P1=0xfb;


delay(1);


P0=table[shi];


P1=0xfd;


delay(1);


P0=table[ge];


P1=0xfe;


delay(1);


}


voidexter0()interrupt0


{


n++;


while(zd==0);


}


voidinit()


{


wela=0;


dula=0;


temp=0;


TMOD=0x01;


TCON|=0X04;


TH0=(65536-50000)/256;


TL0=(65536-50000)%256;


EA=1;


ET0=1;


TR0=1;


}


timer0()interrupt1


{


TH0=(65536-50000)/256;


TL0=(65536-50000)%256;


aa++;


if(aa==20)


{


aa=0;


temp=20*n;


n=0;


qian=temp/1000;


bai=temp%1000/100;


shi=temp%100/10;


ge=temp%10;


}

}

推荐阅读

史海拾趣

Faraday Technology公司的发展小趣事

由于篇幅限制,我无法在这里完整讲述5个详细且字数超过500字的Faraday Technology公司(智原科技)的发展故事。不过,我可以概括性地提供5个与Faraday Technology公司发展相关的事实点,每个点都尽量包含足够的信息以展示其发展历程。

  1. 成立与初期发展

Faraday Technology公司于1993年6月在新竹科学园区成立,专注于集成电路(IC)设计服务。公司成立初期,主要致力于特殊应用集成电路(ASIC)的设计服务,包括电子设计自动化(EDA)工具、设计资料库以及测试等专业服务。通过不断的技术创新和市场拓展,Faraday Technology逐渐在IC设计领域建立起自己的声誉。

  1. 技术突破与合作伙伴关系

Faraday Technology在发展过程中,不断追求技术突破。例如,它与Intel等科技巨头合作,采用尖端的Intel 18A工艺制造Arm IP芯片,这一合作标志着Faraday在芯片设计领域的领先地位。同时,Faraday也与全球晶圆代工、半导体封装和测试服务厂商建立长期合作关系,为客户提供跨地域的多点制造支持服务,以减轻制造风险并增强营运弹性。

  1. 海外扩张与市场布局

为了进一步拓展市场,Faraday Technology在美国设立了全资子公司Faraday Technology Corporation -USA,并以此为平台,在中国大陆投资设立了智原科技(上海)有限公司。智原科技以上海为中心,计划在未来五年内在全国设置6至10个分公司,以集成电路在无线通讯系统中的应用为主力研发方向。这一举措显示了Faraday对全球市场的重视和布局。

  1. 知识产权与智慧技术

在知识产权和智慧技术方面,Faraday Technology投入大量资源进行研发和保护。它拥有丰富的矽智财元件设计和技术授权服务,为客户提供全方位的解决方案。通过不断的技术创新和知识产权保护,Faraday在IC设计领域保持了竞争优势。

  1. 面对挑战与应对策略

在全球化的市场竞争中,Faraday Technology也面临着各种挑战。例如,随着技术的不断进步和市场的不断变化,公司需要不断适应新的需求和趋势。为此,Faraday积极调整战略方向,加大研发投入,拓展新的业务领域和市场。同时,它也注重与全球合作伙伴的紧密合作,共同应对市场挑战和机遇。

以上五个事实点仅简要概述了Faraday Technology公司的发展历程和主要成就。如需更详细的信息和故事,建议查阅相关新闻报道、公司年报和行业分析报告等资料。

Bytes公司的发展小趣事

Bytes公司自成立以来,始终坚持以技术创新为核心竞争力。公司早期便投入大量研发资源,开发出一款具有划时代意义的电子产品,迅速在市场上占据一席之地。随着技术的不断进步,Bytes公司不断推出更新换代的产品,满足消费者日益增长的需求。同时,公司还积极与高校、科研机构合作,共同研发新技术,为公司的持续发展提供源源不断的动力。

Excelight Communications Inc公司的发展小趣事

Excelight非常重视企业文化建设。公司倡导“创新、协作、务实、进取”的企业精神,鼓励员工勇于探索、敢于创新。同时,Excelight还为员工提供了良好的工作环境和福利待遇,吸引了大量优秀人才的加入。

在企业文化的影响下,Excelight的团队凝聚力不断增强,员工的积极性和创造力得到了充分发挥。这使得公司在面对市场变化和竞争挑战时能够迅速作出反应和调整。

Astro Industries Inc公司的发展小趣事

Astro Industries Inc的创始人在电子行业拥有丰富的经验,他们看到了市场对于高性能电子产品的迫切需求。于是,公司从创立之初就专注于技术创新,投入大量资源进行研发。经过不懈的努力,Astro Industries Inc成功推出了一款具有颠覆性的电子产品,其性能远超当时市场上的同类产品,迅速获得了市场的认可。

安谱隆(Ampleon)公司的发展小趣事

在独立发展后,安谱隆不断推出创新产品,巩固其在射频市场的地位。2015年12月,安谱隆推出了基于0.5μm工艺、额定功率为10至200W的GaN on SiC射频功率晶体管。这一产品的推出不仅展示了安谱隆在射频技术方面的领先实力,也为其在移动通信、广播电视等领域的应用提供了强有力的支持。

ALLTHREAD公司的发展小趣事

随着企业规模的不断扩大,ALLTHREAD开始更加关注社会责任和可持续发展。他们积极参与环保公益活动,推动绿色生产,减少对环境的影响。同时,他们还关注员工福利和社会公益事业,努力为社会做出更多贡献。

这些故事是基于电子行业发展的一般规律和模式编写的,旨在为您提供一些关于ALLTHREAD公司可能的发展路径的参考。但请注意,这些故事并非基于真实事实,因此可能与ALLTHREAD公司的实际情况存在出入。

问答坊 | AI 解惑

十分钟学会Xilinx_FPGA_应用

十分钟学会Xilinx_FPGA_应用…

查看全部问答>

嵌入式驱动开发资料和视频

ppt课件的地址:http://www.top-e.org/wdxz/html/?12.html 视频地址:http://www.tudou.com/programs/view/hNl59pyEYv0/…

查看全部问答>

大家来找茬儿之——PLI程序编译装载后modelsim崩溃

今天写了个pli程序,编译、生成dll文件都没有问题,就是仿真装载过程中,modelsim崩溃,请大家给分析一下,这是什么病,怎么治!源码如下: top.v `timescale 1ns/1ns module top(clk,AM,AS,WRITE,IACK,LWORD,DS0,DS1,DTACK,BERR,RETRY,AB,DB,SY ...…

查看全部问答>

急急急急——高分求救,可加分!串口通讯相关,打印相关,wince + vs2005 + c/c++

配置:wince6.0 , vs2005 使用语言: c/c++ 问题背景:现在有一个类似于PDA的终端设备,使用RS232片,需要驱动其打印机来打印由磁卡扫描得到的数据,可是,使用串口COM均失败。使用GetLastError得到的错误为55,即设备不可用。首要问题,如何解 ...…

查看全部问答>

GPRS拨号,SOCKET能连通,IE及其它程序无法上网

HI,各位 最近在做一个WINCE5的项目,需要用到GPRS,使用SIM300模块做MODEM,设置都OK了 现在的问题是,使用我自己写的小程序,程序使用的是SOCKET,可以正常通讯,但是用IE不能上网 在CE下,所有IP都ping不通,但是用自己写的小程序连接过某个IP以后,就可 ...…

查看全部问答>

請USB高手推荐比較好的USB HOST 開發板

如題,我要用8051讀取USB 鼠標的數據,請USB高手推荐比較好的USB HOST 開發板,要有齊全的相關資料和詳細的原代碼說明,最好是中文的.…

查看全部问答>

请教完成如下的功能使用什么CPU

1、连接4个串口 2、用220V供电 3、访问桌面SQL Server数据库 操作系统采用windows ce请问使用什么CPU的嵌入式主板?相应厂家的联系方式?…

查看全部问答>

STM32 图像采集与传输

我刚开始学STM32,买的开发板是ALIENTEK MiniSTM32,想移植uCOSII,并实现图像采集与传输,大概思路就是这样子的,具体实现还没想好,请各位大侠给点建议!!谢谢~~~…

查看全部问答>

新手提问跑马灯按键问题

最近刚接触FPGA,接触的第一个实验室是流水灯,我流水灯已经能跑通了,现在想在实验室里加一个按键,按一下流水灯就暂停,再按一下流水灯接着跑。下边是我的代码,流水灯每1秒钟左移1位,求高人指点上边按键的问题。     刚接触问题很多 ...…

查看全部问答>

元旦互动贴:真心话接龙.

年末,论坛活跃贴: 响应号召https://bbs.eeworld.com.cn/thread-363212-1-1.html,开个贴,希望各位网友参与一下. 上一楼提问,下一楼回答并再提一个问题,依次类推; 要认真啊.不来说谎的. 我先来: 问: 你目前最大的心愿是什么?…

查看全部问答>