单片机测速
基于单片机的测速仪的设计与实现
基于单片机的测速仪的设计与实现在现代科技飞速发展的时代,测速仪在各个领域都有着广泛的应用,比如交通管理、工业生产、运动竞技等。
而基于单片机的测速仪因其成本低、性能稳定、易于实现等优点,成为了测速领域的重要研究方向。
一、测速仪的工作原理要理解基于单片机的测速仪的设计,首先需要了解其工作原理。
常见的测速方法有多种,如激光测速、雷达测速、编码器测速等。
在本次设计中,我们采用了编码器测速的方法。
编码器是一种能够将机械运动转换为电信号的装置。
当被测物体运动时,带动编码器旋转,编码器会输出一系列的脉冲信号。
通过测量这些脉冲信号的频率,就可以计算出被测物体的速度。
二、单片机的选择单片机是整个测速仪的核心控制单元,其性能直接影响到测速仪的准确性和稳定性。
在众多的单片机型号中,我们选择了 STM32 系列单片机。
STM32 单片机具有高性能、低功耗、丰富的外设资源等优点,能够满足测速仪的设计需求。
三、硬件电路设计硬件电路设计是测速仪实现的基础。
主要包括以下几个部分:1、传感器接口电路用于连接编码器,将编码器输出的脉冲信号传输给单片机。
2、单片机最小系统包括单片机芯片、时钟电路、复位电路等,为单片机的正常工作提供必要的条件。
3、显示电路用于显示测量到的速度值,可以选择液晶显示屏(LCD)或者数码管。
4、电源电路为整个系统提供稳定的电源。
四、软件设计软件设计是测速仪实现功能的关键。
主要包括以下几个步骤:1、初始化设置对单片机的各个外设进行初始化,如定时器、中断等。
2、脉冲信号采集通过定时器捕获编码器输出的脉冲信号,并计算脉冲的频率。
3、速度计算根据脉冲频率和编码器的参数,计算出被测物体的速度。
4、显示输出将计算得到的速度值通过显示电路进行显示。
五、系统调试在完成硬件和软件设计后,需要对整个系统进行调试。
调试过程中,可能会遇到各种问题,如脉冲信号丢失、速度计算不准确、显示异常等。
针对这些问题,需要仔细分析,逐步排查,找出问题的根源,并进行相应的修改和优化。
单片机实验-单片机速度测量及控制实验
单片机速度测量及控制实验姓名:徐晨学号:5130208383 班级:F1302014 小组成员:王林涛赵路杰一、实验目的综合应用,进一步掌握定时器计数器的使用,完成转速测量;全面掌握闭环控制原理,用PWM调制方式控制电机转速。
二、实验分工小组成员共同完成单片机的编程与调试工作。
三、实验设备清单、接线图、原理图1、实验器材:51单片机控制板,BCD拨码盘,电机驱动及转侧测量电路2、51单片机电路3、转速控制电路4、BCD拨码盘电路四、实验内容及过程1、实时转速测量及显示。
(每秒的转速)2、用2位拨码盘设定目标转速(每秒转速),实现PWM的电机调速控制。
数码管分别显示转速设定值和实时测量值(每秒转速)。
五、编程说明1、四位数码管采用静态显示方式。
数码管为共阳极2、转速传感器采用光电式传感器,输出为脉冲信号,已接到定时计数器T0。
建议T1定时,T0计数,计算1秒钟的脉冲个数,就可以简单的测量出转速值。
3、PWM脉宽调制方式,通过编程改变高低电平的占空比,从而调整电机的平均电压,以达到调速的目的。
由P1.5输出控制。
序号电路名称器件名称地址号备注1 LED显示U16(74LS273)7FF8H 写输出2 U17(74LS273)7FF9H3 U18(74LS273)7FFAH4 U19(74LS273)7FFBH5 继电器与指示灯U30、U31(74LS175)7FFCH6 A/D转换电路U12(ADC0809)DFF8H 通道0,读写7 DFF9H 通道1,读写8 DFFAH 通道2,读写9 DFFBH 通道3,读写10 DFFCH 通道4,读写11 DFFDH 通道5,读写12 DFFEH 通道6,读写13 DFFFH 通道7,读写14 D/A转换电路U10(DAC0832)EFFFH 写输出15 BCD拨码盘U4(74LS244)BFFFH 读输入5、程序框图6、控制程序LED1 EQU 30HLED2 EQU 31HLED3 EQU 32HLED4 EQU 33H电机驱动直流电机转速测量单片机PWM输出PC机SETL EQU 34HSETH EQU 35HREALL EQU 36HREALH EQU 37HAIM EQU 38H ;目标目标速度REAL EQU 39H ;真实速度ONEMSECOND EQU 3AHPWMH EQU 3BHPWML EQU 3CHTEMP EQU 3DHSUBC EQU 3EHORG 0000HLJMP BEGINORG 001BHLJMP INTERT1ORG 0060HBEGIN:SETB EASETB ET1SETB TR1MOV TMOD,#15H; 设置计数器0方式2,计时器1方式1 MOV TH0,#00H;MOV TL0,#00H;MOV TH1,#4CHMOV TL1,#00H;MOV R7,#20MOV PWMH,#15MOV PWML,#15MAIN:LCALL READ_BCD;LCALL RUNPWM;LCALL DISPLAY;LCALL ADJUSTPWM;AJMP MAINRUNPWM:MOV TEMP,PWMHPWMON:SETB P1.5LCALL DELAY1MSDJNZ PWMH,PWMONMOV PWMH,TEMPPWMOFF:MOV TEMP,PWMLCLR P1.5LCALL DELAY1MSDJNZ PWML,PWMOFFMOV PWML,TEMPRETADJUSTPWM:MOV A,AIMCLR CYSUBB A,REALJC OVERSPEED BELOWSPEED:CLR CYMOV A,PWMHSUBB A,#1MOV PWMH,AMOV A,PWMLADD A,#1MOV PWML,ARETERROR1:MOV A,TEMPMOV B,#2DIV ABMOV TEMP,AMOV A,PWMHADD A,TEMPMOV PWMH,AMOV A,PWMLSUBB A,TEMPMOV PWML,ARETOVERSPEED:MOV A,PWMLCLR CYSUBB A,#1MOV PWML,AMOV A,PWMHADD A,#1MOV PWMH,ARETERROR2:MOV A,TEMPMOV B,#2DIV ABMOV TEMP,AMOV A,PWMHSUBB A,TEMPMOV PWMH,AMOV A,PWMLADD A,TEMPMOV PWML,ARETINTERT1:MOV TH1,#4CHMOV TL1,#00HDJNZ R7,NEXTCLR TR1CLR TR0MOV REAL,TL0MOV TH0,#00HMOV TL0,#00HSETB TR0MOV R7,#20NEXT:SETB TR1RETIREAD_BCD:SETB P1.7 ;选择BCD相关数码MOV DPTR,#0BFFFHMOVX A,@DPTRCPL AMOV R0,AANL A,#0FHMOV SETL,AMOV A,R0SWAP AANL A,#0FHMOV SETH,AMOV LED2,SETLMOV LED1,SETH ;设定速度的十位在SETH,个位在LEDH MOV B,#10MOV A,SETHMUL ABADD A,SETL ;MOV AIM,A ;设定温度值存在AIM中RETDISPLAY: ;显示程序MOV A,LED1ANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FFBHMOVX @DPTR,AMOV A,LED2ANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FFAHMOVX @DPTR,AMOV A,REALMOV B,#10DIV ABMOV REALH,AMOV REALL,BMOV A,REALHANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FF9HMOVX @DPTR,AMOV A,REALLANL A,#0FHMOV DPTR,#DSEG1MOVC A,@A+DPTRMOV DPTR,#7FF8HMOVX @DPTR,ARETDSEG1:DB 0C0H,0F9H,0A4H,0B0HDB 99H,92H,82H,0F8HDB 80H,90H,88H,83HDB 0C6H,0A1H,86H,8EHDELAY1MS:MOV ONEMSECOND,#0FFH ;DJNZ ONEMSECOND,$RETEND六、实验结果与分析通过设计合适的程序,完成了转速读取与控制的要求,每秒转速控制波动范围在2转左右,实现了较好的控制效果。
用单片机测速
测速是工农业生产中经常遇到的问题,学会使用单片机技术设计测速仪表具有很重要的意义。
要测速,首先要解决是采样的问题。
在使用模拟技术制作测速表时,常用测速发电机的方法,即将测速发电机的转轴与待测轴相连,测速发电机的电压高低反映了转速的高低。
使用单片机进行测速,可以使用简单的脉冲计数法。
只要转轴每旋转一周,产生一个或固定的多个脉冲,并将脉冲送入单片机中进行计数,即可获得转速的信息。
一、脉冲信号的获得可以有多种方式来获得脉冲信号,这些方法有各自的应用场合。
下面逐一进行分析。
1.霍尔传感器霍尔传感器是对磁敏感的传感元件,常用于开关信号采集的有CS3020、CS3040等,这种传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,输出通常是集电极开路(OC)门输出,工作电压范围宽,使用非常方便。
如图1所示是CS3020的外形图,将有字面对准自己,三根引脚从左向右分别是Vcc,地,输出。
图1 CS3020外形图使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的圆周上粘上一粒磁钢,让霍尔开关靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。
如果在圆周上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。
在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。
这种传感器不怕灰尘、油污,在工业现场应用广泛。
2.光电传感器光电传感器是应用非常广泛的一种器件,有各种各样的形式,如透射式、反射式等,基本的原理就是当发射管光照射到接收管时,接收管导通,反之关断。
以透射式为例,如图2所示,当不透光的物体挡住发射与接收之间的间隙时,开关管关断,否则打开。
为此,可以制作一个遮光叶片如图3所示,安装在转轴上,当扇叶经过时,产生脉冲信号。
当叶片数较多时,旋转一周可以获得多个脉冲信号。
图2光电传感器的原理图图3遮光叶片3.光电编码器光电编码器的工作原理与光电传感器一样,不过它已将光电传感器、电子电路、码盘等做成一个整体,只要用连轴器将光电传感器的轴与转轴相连,就能获得多种输出信号。
基于单片机的车轮测速系统的设计方案
基于单片机的车轮测速系统的设计方案一、引言随着汽车行业的快速发展,车辆控制系统的智能化和精准化要求也越来越高。
车轮测速系统作为车辆动态控制系统中的关键部分,对于实现车辆的精准控速、防抱死制动(ABS)等功能起着至关重要的作用。
本文将介绍基于单片机的车轮测速系统的设计方案,包括系统原理、硬件设计、软件算法以及实施步骤。
二、系统原理车轮测速系统的原理是通过检测车轮的转速来获取车辆的运动状态,从而实现对车辆的精准控制。
系统利用传感器检测车轮的转动情况,并通过单片机进行信号处理和计算,最终得到车轮的速度信息。
车轮测速系统主要包括传感器模块、信号采集模块、单片机处理模块和输出显示模块等部分组成。
三、系统设计方案1. 传感器模块传感器模块选择旋转编码器或霍尔传感器等,用于检测车轮的转动情况,并将转动信号输出给信号采集模块。
2. 信号采集模块信号采集模块负责接收传感器模块输出的信号,并将模拟信号转换为数字信号,然后传输给单片机处理模块。
3. 单片机处理模块单片机处理模块接收并处理采集到的车轮转速信号,通过计算得到车轮的速度信息,并根据需要进行其他逻辑控制。
4. 输出显示模块输出显示模块可以选择数码管、液晶屏等,用于显示车轮的速度信息,供驾驶员参考或者提供给其他车辆控制系统使用。
四、系统实施步骤1. 传感器安装:将传感器安装在车辆的车轮上,保证传感器与车轮之间的稳固连接。
2. 信号采集电路设计:设计车轮转速信号的采集电路,包括信号放大、滤波和数字化处理等。
3. 单片机程序设计:编写单片机的程序,包括信号处理算法、速度计算和输出控制等部分。
4. 硬件连接:按照设计需求,连接传感器模块、信号采集模块、单片机处理模块和输出显示模块。
5. 系统调试:将系统连接至车辆,进行系统调试和测试,验证系统功能和稳定性。
6. 性能优化:根据测试结果对控制算法和硬件电路进行优化,提高系统的响应速度和稳定性。
五、总结基于单片机的车轮测速系统设计方案,通过传感器模块检测车轮转速,信号采集模块进行信号处理,单片机处理模块计算车轮速度,最终输出至显示模块。
单片机测速_毕业设计1111
摘要随着科技的迅速发展,单片机的应用也越来越广泛,并带动传统控制检测技术不断更新。
现在的车速表大多是电子式的,用LED数码管或LCD即时显示,显示更加直观。
电子式车速表采用接触车速传感器代替软轴传动,可使车速表的安装位置不受距离限制,进一步有效地克服了机械式车速表中的诸多不足。
本次设计给出了以AT89S51为核心,利用单片机的运算和控制功能,并采用系统化LCD显示模块实时显示所测速度的设计方案以及系统软件。
该方案由于使用了LCD显示模块,以及高效快速算法,因而可在节约系统资源和简化程序设计的基础上保证测量精度和系统实时性。
速度显示部分采用LCD显示, 因而节省了所需单片机的口线和外围器件, 同时也简化了显示部分的软件编程。
案实现了电动车速度即时显示。
关键词:单片机;霍尔传感器;LCD显示AbstractAlong with the quick development of science and technology, the application of SCM and more extensive, drive traditional control test technology constantly updated. Now the speed table is mostly electronic, use LED digital tube or LCD instantly shows, show more intuitive. Electronic speed table by using the contact speed sensor instead of soft shaft transmission speed table, can make the installation position of not affected by distance limit, further effectively overcome the speed to the table of mechanical some shortcomings.This design is given based on AT89S51 as the core, of the microcontroller calculation and control function, and by using the systematic LCD display module real-time display measured the speed of design program and system software.The scheme by using LCD display module, and quick and efficient algorithm, thus in saving system resources and simplify programming based on guarantee measuring precision and real-time system. Speed shows part adopts LCD display, thereby saving the required microcontroller mouth lines and peripheral equipments, simultaneously also simplifies shows part of the software programming. Case realized the electric car speed instantly shows.Keywords: SCM, Hall sensors; LCD display目录摘要 (I)Abstract ..................... 错误!未定义书签。
单片机测速仪的设计.
单片机测速仪的设计.《单片机测速仪的设计》一、测速仪的工作原理单片机测速仪的工作原理通常基于对运动物体所产生的脉冲信号的计数和时间测量。
常见的测速方法有光电测速、霍尔效应测速等。
以光电测速为例,在被测物体上安装一个遮光板,当遮光板随物体转动时,会周期性地遮挡光电传感器。
光电传感器将光信号转换为电信号,产生一系列脉冲。
单片机通过对这些脉冲的计数,并结合测量的时间间隔,就可以计算出物体的转速。
二、硬件设计1、传感器选择光电传感器:具有响应速度快、精度高的特点,但容易受到环境光的干扰。
霍尔传感器:对磁场变化敏感,适用于测量磁性物体的速度,抗干扰能力较强。
2、单片机选型考虑因素包括处理速度、存储容量、引脚数量等。
常见的单片机如STM32、Arduino 等都可以满足测速仪的需求。
3、信号调理电路由于传感器输出的信号可能比较微弱或存在干扰,需要通过放大、滤波等电路进行处理,以获得清晰、稳定的脉冲信号。
4、显示模块可以选择液晶显示屏(LCD)或数码管来显示测量结果。
LCD 显示内容丰富,但成本较高;数码管简单直观,成本较低。
5、电源模块为整个系统提供稳定的电源,通常采用直流稳压电源或电池供电。
三、软件设计1、初始化设置包括单片机的时钟设置、引脚配置、中断设置等。
2、脉冲计数与时间测量使用单片机的计数器功能对脉冲进行计数,并通过定时器测量时间间隔。
3、速度计算算法根据脉冲计数和时间间隔,按照预定的公式计算出速度值。
4、显示驱动程序将计算得到的速度值发送到显示模块进行显示。
四、系统调试1、硬件调试检查电路连接是否正确,电源是否稳定,传感器输出信号是否正常。
2、软件调试使用调试工具,如串口调试助手,查看单片机内部变量的值,检查程序逻辑是否正确。
3、综合调试将硬件和软件结合起来,对整个测速仪系统进行测试,不断优化和改进。
五、误差分析与改进1、误差来源传感器精度误差、信号干扰、时间测量误差等。
2、改进措施采用高精度传感器、优化信号调理电路、提高时间测量精度等。
基于51单片机和霍尔传感器的测速
基于51单片机和霍尔传感器的测速1. 小项目简介主要采用stc89c51/52单片机作为主控,由霍尔传感器作为测速的基本模块,采用按键控制速度快慢,数码管显示当前速度。
最后成品图如下:2.电源部分1.电源供电的功率尽可能的稍微大一些,我是采用罗马仕充电宝供电(5V,2.1A输出口)。
因为电源功率过小,将造成电机无法带动,或者数码管闪烁等硬件上的bug。
2.如果电源的电压高于5V,需要在电源输入端使用一个稳压电路,将输入电压稳压到5V给单片机,和其他外设供电。
防止电压过高造成器件损坏。
3.硬件部分1. stc89c51/52的最小系统注意:如果使用一般的USB接口供电,当电机转动时候,可能照成单片机的管脚供电不稳定,所以需要在单片机的IO的外接上拉排阻。
P3口不需要。
9针排阻如下:有小点的一端是公共端,需要和电源5V连接,其余口和单片机管脚一一对应焊接就行。
2. 霍尔传感器注意引脚,窄的一面来看引脚顺序:这里的VOUT口可以直接连接单片机的外部中断1口,可以经过一个电压比较器lm393之类的在给单片机。
3. 直流电机马达驱动51单片机的IO口输出的电流过小,驱动直流电机马达效果不明显,达不到后期变速,需要使用一个三极管(9015\9013这类都可以)放大电路去驱动马达:示范电路如下:(电阻根据自己需要修改)4. 共阴数码管//数码管位选sbit S1=P2^4;sbit S2=P2^5;sbit S3=P2^6;sbit S4=P2^7;//数码管段选:P1的八个IO口。
连线的时候一定根据下列图示的段选(注意注意注意:容易连错)4.软件部分1.软件工程整体图:2.main.c文件代码:自己创建一个51单片机的keil工程文件,将下面代码拷贝到自己工程文件下的main.c文件替换即可/************************************************************** ************************* 基于51单片机测速* 实现现象:按下按键K1减速按下按键K2加速外部中断1对应IO口P3^3注意事项:电机速度不能过快,否则会造成数码管显示不稳定*************************************************************** ************************/#include 'reg52.h' //此文件中定义了单片机的一些特殊功能寄存器typedef unsigned int u16; //对数据类型进行声明定义typedef unsigned char u8;//测试端口(根据自己需要决定)sbit led=P0^0; //将单片机的P0.0端口定义为led/************************************************************** ****************************************************核心部分**************************************************************************************************************** ************************///占空比u16 time = 0; // 定义占空比的变量u16 count=30; //定义占空比上限sbit PWM=P0^1;// P0.1输出pwm//速度u16 zhuansu=0; //转速初值为0u16 jishu = 0; //jishu的变量初值为0u8 flag = 0; //定时器1计数变量//按键sbit k1=P2^0;sbit k2=P2^1;sbit k3=P2^2;sbit k4=P2^3;//数码管位选sbit S1=P2^4;sbit S2=P2^5;sbit S3=P2^6;sbit S4=P2^7;//数码管位选:P1的八个IO口//共阴数码管段选u8 code smgduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//显示0~F的值//数码管存储中间变量unsigned char Display_data[4];/************************************************************** ****************** 函数名 : delay* 函数功能 : 延时函数,i=1时,大约延时10us*************************************************************** ****************/void delay(u16 i){while(i--);}//定时器和外部中断1的初始化函数void InitSyetem(){//配置外部中断1:采集霍尔传感器触发下降沿IT1 = 1; //选择下降沿触发EX1 = 1; //打开外部中断1//定时器0,1工作方式1TMOD=0x11; //定时或者计数模式控制寄存器//定时器0配置:产生PWM波TH0=(65536-10)/256;//赋初值定时10usTL0=(65536-10)%256;//sET0=1;//开定时器0中断TR0=1;//启动定时器0//定时1:测速TH1=(65536-10000)/256;//赋初值定时10msTL1=(65536-10000)%256;ET1=1;//开定时器0中断TR1=1;//启动定时器0PX1=1;//设置优先级PT1=1;//设定定时器1为最高优先级EA=1;//开总中断}//外部1中断服务函数void Service_Int1() interrupt 2{jishu++; //霍尔下降沿一次就记一次数if(jishu == 100) //累加计数有100次,总时间为100 * 10ms = 1s{led^=led; //led闪烁}}//定时0处理函数产生PWM 调速原理———在PWM高电平时候驱动电机转动在PWM低电平时候让电机停止转动void Service_Timer0() interrupt 1{TR0=0;//赋初值时,关闭定时器TH0=(65536-10)/256;//赋初值定时TL0=(65536-10)%256;//0.01msTR0=1;time++; //计数变量if(time>=100) time= 0; //清零标志变量if(time<=count) //小于设定值,输出高电平{PWM = 1;}elsePWM = 0;}//定时器1中断处理显示转速void Service_Timer1() interrupt 3{TR1=0;//赋初值时,关闭定时器TH1=(65536 - 10000) / 256;TL1=(65536 - 10000) % 256;//定时10msTR1=1;flag++; //计数变量加if(flag==100) //计时到达1s 测量此时的转速{// led=~led; //led状态取反zhuansu = jishu; //监测霍尔传感器总共计数次数jishu=0; //转速置0flag=0; //清除计数变量}}//数码管处理函数void Deal_data(){Display_data[3]=smgduan[zhuansu/1000]; //数码管高位Display_data[2]=smgduan[zhuansu/100%10];//去第二位Display_data[1]=smgduan[zhuansu/10%10];Display_data[0]=smgduan[zhuansu%10]; //数码管低位}/************************************************************** ****************** 函数名 : DigDisplay* 函数功能 : 数码管动态扫描函数,循环扫描4个数码管显示*******************************************************************************/void DigDisplay(){u8 i;for(i=0;i<4;i++){switch(i) //位选,选择点亮的数码管,{case 0 : S1 = 0; S2 = 1; S3 = 1; S4 = 1;break; //点亮第一位数码管case 1 : S2 = 0; S1 = 1; S3 = 1; S4 = 1;break;case 2 : S3 = 0; S1 = 1; S2 = 1; S4 = 1;break;case 3 : S4 = 0; S1 = 1; S2 = 1; S3 = 1;break;}P1=Display_data[i];//发送段码delay(5); //间隔一段时间扫描时间越少,一起亮且显示越稳定;时间越多,是流水点亮P1=0x00;//消隐时间过快时,每个数码管将会有重影}}/************************************************************** ****************** 函数名 : keypros* 函数功能 : 按键处理函数,判断按键K1是否按下*************************************************************** ****************/void keypros(){if(k1==0) //检测按键K1是否按下{delay(100); //消除抖动一般大约10ms 时间的估算100*n=1(s) if(k1==0) //再次判断按键是否按下{led=~led; //led状态取反count+=10;if(count >= 90) //设置一个上限count+=90;}while(!k1); //检测按键是否松开为假时候说明按键没有释放}if(k2==0) //检测按键K1是否按下{delay(100); //消除抖动一般大约10msif(k2==0) //再次判断按键是否按下{led=~led; //led状态取反count-=10;if(count <= 10){count = 10;}}while(!k2); //检测按键是否松开}}/************************************************************** ****************** 函数名 : main* 函数功能 : 主函数* 输入 : 无* 输出 : 无*************************************************************** ****************/void main(){led = 0; //上电熄灭小灯P1 = 0x00; //上电初始化熄灭数码管InitSyetem();//定时器和外部中断1的初始化函数while(1){keypros(); //按键处理函数Deal_data(); //数据处理函数DigDisplay(); //数码管显示函数}}。
MCS-51单片机电机转速控制及测速显示系统
MCS-51单片机电机转速控制及测速显示系统简介MCS-51单片机是一种广泛应用于嵌入式系统的单芯片微型计算机。
本文将介绍基于MCS-51单片机的电机转速控制及测速显示系统。
该系统通过对电机信号进行处理,实现了对电机转速的控制和测速。
系统组成该系统由电机、电机驱动电路、MCS-51单片机、显示模块等组成。
电机驱动电路:使用了L298N电机驱动芯片,可以为电机提供双向直流电源。
该电子板还添加了变阻器控制,通过调节电子板上的两个旋钮来改变电机的转速和方向。
MCS-51单片机:采用AT89S52芯片,主控为MCS-51单片机,在控制电机的同时,还可以测量电机的转速。
通过单片机与电机驱动电路的控制,来控制电机的转速。
显示模块:采用了LCD2004液晶显示模块,可实现对转速和程序运行状态的显示。
系统原理当电机启动时,读取电机反馈的信号,并将该信号传递给MCS-51单片机进行处理。
根据控制算法,单片机输出PWM(脉冲宽度调制)信号给电机驱动模块,从而改变电机的转速和方向。
同时,单片机还可以测量电机旋转的速度,将其显示在LCD2004液晶显示器上。
当用户需要改变电机的转速时,可以通过旋转电子板上的旋钮来改变电机的转速和方向。
同时,LCD2004显示器可以显示电机的当前实际速度和设定速度,帮助用户更好的控制电机的运转。
系统功能该系统具有以下功能:1.控制电机的转速和方向;2.测量电机的转速;3.显示电机的当前实际速度和设定速度。
系统优势该系统采用MCS-51单片机,具有代码量小、容易维护、功耗低等优势,适合于嵌入式系统中的电机转速控制应用。
此外,显示模块也可以提供对系统状态的及时监控和反馈,便于故障排除。
本文介绍了基于MCS-51单片机的电机转速控制及测速显示系统。
该系统通过对电机信号进行处理,实现了对电机转速的控制和测速。
该系统具有代码量小、容易维护、功耗低等优势,适合于嵌入式系统中的电机转速控制应用。
同时,显示模块也可以提供对系统状态的及时监控和反馈,便于故障排除。
基于单片机的车轮测速系统的设计
基于单片机的车轮测速系统的设计车轮测速系统是一种用于测量车辆速度的设备,通过监测车轮转动的次数来计算车速。
这种系统在交通控制、运输安全以及车辆性能评估等领域具有重要意义。
该文档旨在介绍基于单片机的车轮测速系统的设计。
本系统通过单片机控制和传感器监测实现车速的准确测量,并提供可靠的数据供后续分析和应用。
设计该车轮测速系统的目的是为了满足以下需求:实时监测车辆的速度,提供准确的车速数据。
采集并记录车辆的速度信息,用于交通控制和违规监测。
提供数据接口,方便与其他系统集成,实现更多应用场景。
在设计过程中,我们将充分发挥单片机的优势,采用简单和无法律复杂性的策略。
同时,我们会避免引用无法确认的内容,确保文档的可靠性和准确性。
请阅读以下章节,了解基于单片机的车轮测速系统的设计细节。
该文档介绍了基于单片机的车轮测速系统的整体结构和功能。
该系统旨在通过使用单片机来实现对车轮速度的测量和监控。
它可以应用于各种需要准确测量和监测车辆速度的场景,如交通监控、运输管理等方面。
基于单片机的车轮测速系统主要由以下组件构成:传感器:通过安装在车轮上的传感器来检测车轮的转动。
单片机:作为系统的核心控制器,负责接收传感器信号、进行数据处理和控制输出。
显示屏/显示器:用于显示测得的车辆速度。
电源模块:为系统提供稳定的电源供应。
基于单片机的车轮测速系统具有以下功能:车轮速度测量:通过传感器检测车轮转动的次数和时间间隔来计算车轮速度。
数据处理:单片机接收传感器信号后,进行数据处理并计算车轮速度。
结果显示:测得的车轮速度将在显示屏/显示器上显示出来。
车轮监测:系统可以提供对车轮运动的连续监测和记录功能。
可调参数:系统可以根据需求进行参数调节,以适应不同的车辆和测量场景。
注意:以上只是系统设计的基本概述,具体实现细节和技术方案需要根据实际需求来确定。
详细描述车轮测速系统的设计要点,包括传感器选择、信号处理、数据显示等。
传感器选择选择合适的传感器是车轮测速系统设计的关键。
对于单片机车速检测的总结
对于单片机车速检测的总结单片机车速检测是通过使用单片机(微控制器)和相关传感器来实现对车辆速度的监测和检测。
以下是对单片机车速检测的总结:1. 检测原理:•单片机车速检测通常利用传感器测量车辆通过的时间和位置,然后计算车速。
常用的传感器包括光电传感器、磁敏传感器、超声波传感器等。
2. 光电传感器:•使用光电传感器时,车辆通行时会遮挡传感器,通过检测遮挡的时间来计算车速。
光电传感器适用于需要高精度的场景。
3. 磁敏传感器:•磁敏传感器检测车辆通过时磁场的变化,根据变化的频率和持续时间计算车速。
磁敏传感器适用于车辆通过较慢的区域。
4. 超声波传感器:•超声波传感器发射超声波,通过测量超声波的返回时间计算车辆的距离和速度。
适用于需要非接触式检测的场景。
5. 数据处理和算法:•单片机通过获取传感器数据,进行数据处理和算法运算,得出车速的结果。
常见的算法包括时间差法、频率计数法等。
6. 精度和误差校正:•确保车速检测系统的精度,可能需要进行误差校正。
这包括校正传感器的灵敏度、考虑环境因素对检测的影响等。
7. 数据存储和输出:•单片机可以通过存储设备(如SD卡)记录车速数据,也可以通过通信模块将数据传输到外部系统。
这有助于实时监测和后续数据分析。
8. 电源管理:•有效的电源管理对于车速检测系统至关重要,尤其是对于远程或长时间运行的系统。
优化电源管理可延长系统寿命。
9. 抗干扰能力:•单片机车速检测系统应具有良好的抗干扰能力,以保证在不同环境和天气条件下的可靠性。
10. 法规和标准遵循:•在设计和使用单片机车速检测系统时,需要遵循相关的法规和标准,确保系统符合交通法规和安全标准。
综合考虑上述因素,可以设计出可靠、高效的单片机车速检测系统,用于交通管理、道路安全监控等应用。
基于单片机的超声波多普勒测速设计
基于单片机的超声波多普勒测速设计超声波多普勒测速是一种常见的测速方法,它通过测量目标物体反射回来的超声信号频率的变化来计算物体的运动速度。
本文将介绍基于单片机的超声波多普勒测速的设计。
首先,我们需要了解超声波多普勒测速的原理。
当超声波与运动物体相交时,超声波的频率会发生变化,这种变化称为多普勒效应。
根据多普勒效应的原理,我们可以使用超声波多普勒测速来测量物体的速度。
接下来,我们需要选择合适的硬件设备。
在设计基于单片机的超声波多普勒测速系统时,我们可以选择使用超声波发射器和接收器、运放电路、A/D转换器和单片机等设备。
超声波发射器和接收器是核心部件,用于发送和接收超声波信号。
运放电路用于放大接收到的超声波信号,提高信号的强度。
A/D转换器负责将模拟信号转换为数字信号,以便单片机能够处理。
单片机是整个系统的处理器,负责控制各个部件的工作,并计算出物体的速度。
在设计过程中,首先需要进行硬件电路的连接和调试。
将超声波发射器和接收器连接到运放电路,并将电路连接到A/D转换器和单片机。
接下来,需要编写单片机的程序代码,实现超声波信号的发射和接收,以及对接收到的信号进行处理和计算速度的操作。
具体的程序代码可以按照以下步骤实现:1.初始化单片机和所有外设。
2.发射超声波信号。
3.接收反射的超声波信号,并通过运放电路放大信号。
4.将接收到的模拟信号转换为数字信号。
5.根据多普勒效应计算物体的速度。
6.将速度结果通过显示器或者其他方式输出。
在设计过程中,需要注意以下几点:1.超声波发射和接收的频率要合适,能够达到高精度的速度测量要求。
2.运放电路的设计要合理,确保接收到的信号能够被放大到合适的范围内。
3.单片机的处理速度要足够快,能够及时处理接收到的信号,并计算出物体的速度。
4.系统整体的精度和稳定性要可靠,可以进行必要的校准和调试。
综上所述,基于单片机的超声波多普勒测速设计是一项复杂而有挑战性的任务。
通过正确选择硬件设备、合理设计电路和编写程序代码,可以实现准确和可靠的测速结果。
大专毕业论文——基于单片机测速仪设计
大专毕业论文——基于单片机测速仪设计摘要:本文基于单片机技术,设计了一种测速仪,用于测量车辆的速度。
通过检测车辆通过的时间和通过两个测速仪之间的距离,可以计算出车辆的速度。
该测速仪具有结构简单、精度高、成本低等优点,在实际应用中具有广泛的推广和应用价值。
关键词:单片机、测速仪、速度测量一、引言随着社会的发展和交通工具的普及,对车辆的安全管理和交通法规的执行要求越来越高。
而测速仪作为一种常用的交通监管设备,对于监测车辆的速度具有重要的作用。
本文基于单片机技术,设计了一种测速仪,用于测量车辆的速度,以提高交通管理和安全性。
二、测速仪的原理与设计1.原理测速仪是利用物体在一定时间内通过两个测速仪之间的距离,计算出速度的设备。
当物体通过第一个测速仪时,记录下通过的时间t1;当物体通过第二个测速仪时,记录下通过的时间t2、通过测速仪之间的距离d,可以得到车辆的速度v=d/(t2-t1)。
2.设计该测速仪的设计主要包括传感器、放大电路、单片机控制和显示等几个模块。
(1)传感器模块:使用光电传感器作为测速仪的传感器。
光电传感器将物体通过时产生的光电信号转化为电信号输出,以便后续处理。
(2)放大电路:传感器输出的电信号较弱,需要通过放大电路进行放大,以提高信号的稳定性和准确性。
(3)单片机控制:将放大后的信号输入单片机进行处理。
单片机进行时间的计算、高级算法的运行和结果的输出等。
(4)显示模块:将计算得到的速度通过液晶显示屏进行显示,以便操作人员进行查看。
三、实验结果与分析通过实验测试,本文设计的测速仪具有良好的测速精度和稳定性。
在30次实验中,测量误差在0.5%以内,满足实际应用的需求。
同时,通过控制单片机的程序,测速仪可以适应不同地面条件、车辆类型和速度范围的测量。
四、总结与展望本文基于单片机技术设计了一种测速仪,通过测量时间和距离计算出车辆的速度。
通过实验测试,该测速仪具有结构简单、精度高、成本低等优点,在实际应用中具有广泛的推广和应用价值。
基于单片机的测速仪设计
基于单片机的测速仪设计一、测速仪的原理及需求分析测速仪的工作原理通常基于对运动物体在一定时间内经过的距离的测量,从而计算出其速度。
常见的测速方法包括激光测速、雷达测速、超声波测速等。
对于基于单片机的测速仪,我们选择使用光电传感器来检测物体的运动。
在设计之前,需要明确测速仪的性能需求。
例如,测量的速度范围、测量精度、响应时间、工作环境等。
假设我们设计的测速仪用于测量车辆在公路上的行驶速度,速度范围设定为 0 200 千米/小时,测量精度要求在±5%以内,响应时间不超过 1 秒,能够适应各种天气条件。
二、硬件设计1、单片机选型选择合适的单片机是整个系统的核心。
考虑到性能、成本和开发难度等因素,我们选用了常见的 STM32 系列单片机。
STM32 具有丰富的外设资源、较高的处理速度和良好的稳定性,能够满足测速仪的需求。
2、光电传感器光电传感器用于检测物体的运动。
当物体经过传感器时,会遮挡光线,从而产生一个电信号。
我们选用了对射式光电传感器,其检测精度高,稳定性好。
3、信号调理电路由于光电传感器输出的信号可能比较微弱或存在干扰,需要通过信号调理电路进行放大、滤波等处理,以提高信号的质量。
4、显示模块为了直观地显示测量结果,选用了液晶显示屏(LCD)。
LCD 具有低功耗、显示清晰等优点。
5、电源模块提供稳定的电源是系统正常工作的保障。
设计中采用了稳压芯片将输入的电源电压转换为单片机和其他模块所需的工作电压。
三、软件设计1、编程语言选择 C 语言作为开发语言,C 语言具有语法简洁、可移植性好等优点,适合单片机的开发。
2、主程序流程系统上电后,首先进行初始化操作,包括单片机内部资源的初始化、传感器的初始化、显示模块的初始化等。
然后进入循环,不断检测传感器的信号,计算速度,并将结果显示在显示屏上。
3、速度计算算法通过测量物体经过传感器的时间间隔,结合传感器之间的距离,就可以计算出物体的速度。
例如,假设传感器之间的距离为 L,物体经过传感器的时间间隔为 T,则速度 V = L / T 。
单片机课程设计测速
单片机课程设计测速一、课程目标知识目标:1. 理解单片机的基本原理和功能,掌握测速系统的设计方法。
2. 学会使用单片机及相关传感器进行速度检测,并完成数据采集与处理。
3. 掌握单片机编程技术,实现测速系统的实时显示与控制。
技能目标:1. 能够运用已学知识,独立设计并搭建单片机测速系统。
2. 培养学生动手实践能力,熟练操作单片机及相关设备,解决实际测速问题。
3. 提高学生的编程能力,使其能够编写出高效、稳定的测速程序。
情感态度价值观目标:1. 培养学生对单片机及测速技术的兴趣,激发其探索精神和创新意识。
2. 培养学生团队合作精神,提高沟通与协作能力。
3. 强化学生对工程实践的责任感,使其认识到测速技术在现实生活中的应用价值。
本课程针对单片机课程设计测速,结合学生年级特点,注重理论与实践相结合,旨在提高学生的知识水平、动手能力和创新能力。
课程目标具体、可衡量,既符合教学实际,又与课本内容紧密相关,为后续的教学设计和评估提供明确方向。
二、教学内容本章节教学内容主要包括以下三个方面:1. 单片机原理与测速系统设计基础- 理解单片机的工作原理、内部结构及功能。
- 学习测速系统的基本组成、原理及分类。
- 掌握测速传感器的工作原理及其在单片机测速系统中的应用。
2. 单片机编程与测速程序设计- 学习单片机编程语言(如C语言)的基本语法和编程技巧。
- 掌握中断、定时器等单片机资源在测速程序中的应用。
- 设计并编写测速程序,实现速度的实时显示与控制。
3. 实践操作与项目实施- 学习搭建单片机测速系统的硬件电路。
- 实践操作,调试并优化测速程序。
- 分组合作,完成单片机测速项目的设计、实施与展示。
教学内容与课本章节紧密结合,按照教学大纲安排和进度,系统地组织教学活动。
通过本章节学习,使学生全面掌握单片机测速技术的相关知识,提高实际操作和编程能力。
三、教学方法本章节将采用以下多样化的教学方法,以激发学生的学习兴趣和主动性:1. 讲授法:通过教师系统的讲解,使学生掌握单片机原理、测速系统设计和编程基础等理论知识。
基于单片机的速度测量系统设计
基于单片机的速度测量系统设计
简介
本文介绍了一种基于单片机的速度测量系统设计方案。
该系统
可以通过输入旋转轴转速测量出物体的线速度。
设计原理
通过旋转轴转速来确定物体的线速度,这是基本的物理学原理。
在该系统中,使用光电编码器来测量旋转轴的转速,并且使用单片
机进行数据处理。
通过旋转轴的周期性信号,我们可以测量每个周
期的时间,进而计算出旋转轴的转速。
最后根据物体旋转半径,计
算出物体的线速度。
系统组成
该系统由光电编码器、单片机、电路板和显示器等组成。
光电
编码器测量旋转轴的转速,并通过IO口将编码器信号输入到单片机。
单片机通过计算来测量旋转轴转速,并且计算物体的线速度。
计算的结果可以在显示器上显示。
系统特点
该系统具有精度高、响应速度快、成本低等特点。
另外,由于旋转轴转速的直接输入,该系统对于不同形状和大小的物体都具有一定的适用性。
总结
基于单片机的速度测量系统是一种简单有效的测量物体线速度的方法。
在实际应用中,可以根据需要进行适当的改进和扩展,以满足更复杂的测量要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用单片机设计动态输入范围的PWM A/D转换器时间:2010-02-06 来源:未知编辑:电气自动化技术网点击:202次字体设置: 大中小1 COP820CJ芯片介绍COP820CJ是美国国家半导体公司生产的一款8位单片机,它内含64字节RAM和1k字节ROM,并带有24个I/O口,时钟频率为10MHz,工作电压为2.5~6.0V。
COP820 CJ具有多输入唤醒(MIWU)、低压复位保护、片上模拟比较器和低电磁辐射设计等功能,其I/O口可编程为三态、推挽输出、弱上拉输入等类型。
COP820CJ的端口分为L/I/D/G四类。
其中I口为4位输入端口,D口为4位输出端口,G口有6位I/O口和2位输入口,L口为8位I/O口。
同时L口也是芯片的唤醒端口,其中L1和L2又是比较器输入口,L3又是比较器输出口。
L口配有数据寄存器(LDATA[0DOH])和配置寄存器(LCONF [0D1H]),两寄存器可共同决定该端口的状态。
具体关系见表1所列。
COP820CJ的片上RAM、端口、寄存器均可映射到00H~FEH的数据内存空间,其中C0~CFH段主要是唤醒及用看门狗控制寄存器,D0~DFH段有8个端口类寄存器,E0~EFH段为计时器和系统寄存器。
00~2FH及F0~FFH为RAM地址。
其中,F0~FEH段可用作寄存器,并包括B地址寄存器[FCH]、X地址寄存器[FEH]和SP堆栈指针[FDH]三个专用寄存器。
2 COP820CJ的工作原理2.1基本原理利用COP820CJ的片上模拟比较器和脉冲宽度调制方式可以构成由软件调控且输入范围可变的A/D转换器。
其工作原理图见图1所示。
图中,L1和L2为比较器输入端,当电容电压小于输入电压时, L3端输出高电平脉冲。
反之,L3输出低脉冲,并对低脉冲减1计数。
电路中的输入电压可通过L1、L2之间并联的两个背向二极管对电容C1快速充放电,以使两者电位迅速接近。
比较器允许的输入电压为0.4V~V CC-1.5V(此时电容电压与充电、放电时间之间为近似线性关系),实际输入电压范围可能要更小一些。
因此,可以通过设定高低脉冲的参数使电容电压始终保持在测量范围之内。
若电源为5V,时钟频率为10MHz,脉冲周期为24个,即2.4μs,输入电压范围是1.0V~3.3V。
那么,可以设置高脉冲为先低8个时钟,再高16个时钟;设置低脉冲为先高5个时钟,再低19个时钟。
这样,如果L3始终输出高脉冲,电容电压V H将近似为V CC×16/24=3.30V;如果L3始终输出低电平,电容电压V L则近似为V CC×5/24=1.04V。
进行A/D转换时,L3可根据比较结果输出高低脉冲,当脉冲数足够多时,计数器的值即代表了输入的电压值,并可用下式表示:其中,N TON为计数器的值,N TOTAL为总脉冲数。
2.2转换时间及分辨率由于脉冲周期为2.4μs,若脉冲总数为100,那么,进行两次计数的转换时间近似为2.4×100×2=480μs。
当输入为高速变化的信号时,只需减少脉冲总数即可。
如脉冲总数为100,输入电压为1.0~3.3V,则分辨率为23mV。
为提高分辨率,可先对输入信号进行粗测,然后调整高低脉冲的占空比,以使对应电压略超出测量结果的上下限值,这样即可获得更高的分辨率。
3 软件设计图2所示是用COP820CJ设计的A/D转换器的工作软件流程图。
其中,控制寄存器2(CNTRL2[CC])的第三位是比较器允许位,第四位为比较器输出。
X指令为交换两寄存器中的数据。
“SBIT(RBIT)i,n”指令为将n寄存器的第i位置1(0)“IFBITi,n”指令在n寄存器的第i位为1时执行下一条指令,否则跳过。
“DRSZn”指令的作用是先将寄存器n的值减1,如结果非零,则执行下一条指令,否则跳过。
要保证脉冲周期为24个时钟,必须精确计算指令周期。
其指令周期的时钟数分别为:用89C51和8254-2实际步进式PWM输出时间:2010-02-05 来源:未知编辑:电气自动化技术网点击:176次字体设置: 大中小引言脉宽调制(PWM)技术最初是在无线电技术中用于信号的调制,后来在电机调速中得到了很好的应用。
本设计中要求输出PWM从1Hz~3kHz 步进式递增,单步为1Hz。
由于89C51的时钟最大能取24MHz,单指令周期为0.5μs,计数频率为×10 6Hz。
当输出2999Hz和3000Hz时,若采用89C51内部计数器来计数,根本无法区别。
因为计数频率为2MHz,单指令周期0.5μs,而要输出2999Hz时,计数应为666.889;输出3000Hz 时,计数诮为666.887。
因此在本设计中,采用外部定时器/计数器8254-2。
因为8254-2最高计数频率可达10MHz,能满足以上设计的要求,另外采用8254-2的工作方式3可输出方波。
当定时器/计数器8254-2以方式3工作时,在计数的过程中输出有一半时间为高,另一半时间为低。
所以,若计数值为N,则其输出在前N/2时可输出高电平,后N/2时可输出低电平,不需要用软件来控制高低电平的转换,但8254-2计数范围有一定的限制,在采用二进制计数时,范围为0000~9999,最大计数为10 000。
此外,为了使分辨率达到要求,还需要考虑程序指令所占用的时间,尤其是在输出高频时,分辨率尤为重要。
1 硬件设计1.1 8254可编程定时器/计数器[1]简介Intel公司的8254是8253的改进型,操作方式及引脚与8253完全相同。
它的改进主要反映在2方面:①8254的计数频率更高,可由直流至6MHz;8254-2可高达10MHz。
②8254多个1个读回命令(写至控制器的寄存器),其格式如图1所示。
这个命令可以令3个通道的计数器都锁存(8253要3个通道的计数值都锁存,需写入3个命令)。
另外,8254中的每个计数器都有1个状态字可由读回命令令其锁存,然后由CPU读取。
状态字的格式如图2所示。
其中D5~D0即为写入此通道的控制字的相应部分。
D7反映了该计数器的输出引脚。
输出(OUT)为高电平,D7=1;输出为低电平,D7=0。
D6反映时间常数寄存器中的计数值是否已经写入了计数单元中。
当向通道写入控制字以及计数值后,状态字节中的D6=1;只有当计数值写入计数单元后,D6=0。
本设计选择8254-2的方式3工作。
方式3是一种方波速率发生器。
在这种方式中,当CPU设置控制字后,输出将为高,在写完计数值后就自动开始计数,输出保持为高;当计数到一半计数值时,输出变为低,直至计数到0,输出又变高,重新开始计数。
若在计数期间写入个新的计数值,并不影响现行的计数过程。
但是若在方波半周期结束前和新计数值写入后收到GATE脉冲,计数器将在下一个CLK脉冲时装入新的计数值并以这个计数值开始计数。
否则,新的计数值将在现行半周期结束时装入计数器。
1.2 PWM输出的硬件设计本设计选用可编程定时器/计数器8254-2,其最高计数频率可达10MHz;充分利用8254-2的3个定时器/计数器,采取频率的分频输出,并且不需要外部的信号源输入,硬件电路简化;通过软件的处理可以实现连续(1Hz~3kHz)PWM波的输出。
本设计中将要输出的PWM波分为3段,分别由8254-2中的3个定时/计数器输出,门控由P2.2、P2.3、P2.4分别加以控制。
在1~20Hz的输出时,采用定时器0,计数频率为10 4Hz,最大计数为10 4,最小计数为500符合要求,21~200Hz的输出中,采用定时器1,计数频率为10 5Hz,最大计数为4762,最小计数为500;在201Hz~3kHz 的输出中,采有定时器2,计数频率为10 7Hz,最大计数为49 751,满足二进制计数的范围,最小计数为3333。
这些计数值可由单片机89C51[2]送给8254-2的数据输入端,通过除法运算来得到这些计数值,由除法运算得到商。
所得到的商去程序指令占用的时间即为所需要的;送上次计算出来的这中。
比较余数中。
假设程序指令所,即为,中作中的内容作为除法运算中的除数,调用除法运算子程序,将所得的商中。
比较余数是否大于除数的一半,若大于除的一半则所得的商加、中作为中的内容作为除法运算中的除数,调用除法运算子程序,将所得的商送,,即则当程序因干扰PWM单片机控制直流无刷电动机驱动及接口电路时间:2012-03-17 来源: 编辑:电气自动化技术网点击:367次字体设置: 大中小单片机控制直流无刷电动机驱动及接口电路图1示出采用8751单片机来控制直流无刷电动机的原理框图。
8751的P1口同7406反相器联结控制直流无刷电动机的换相,P2口用于测量来自于位置传感器的信号H1、H2、H3,P0口外接一个数模转换器。
图1 直流无刷电动机计算机控制原理图换相的控制根据定子绕组的换相方式,首先找出三个转子磁钢位置传感器信号H1、H2、H3的状态,与6只功率管之间的关系,以表格形式放在单片机的EEPROM中。
8751根据来自H1、H2、H3的状态,可以找到相对应的导通的功率管,并通过P1口送出,即可实现直流无刷电动机的换相。
起动电流的限制主回路中串入电阻R13,因此Uf=R13*IM,其大小正比于电动机的电流IM。
而Uf和数模转换器的输出电压U0分别送到LM324运算放大器的两个输入端,一但反馈电压大于Uf大于来自数模转换的给定信号U0,则LM324输出低电平,使主回路中3只功率管VF4、VF6、VF2不能导通,从而截断直流无刷电动机定子绕组的所有电流通路,迫使电动机电流下降,一旦电流下降到使Uf小于U0,则LM324输出回到高电平。
主回路又具备导通能力,起到了限制电流的作用。
转速的控制在直流无刷电动机正常运行的过程中,只要通过控制数模转换器的输出电压U0,就可控制直流无刷电动机的电流,进而控制电动机的电流。
即8751单片机通过传感器信号的周期,计算出电动机的转速,并把它同给定转速比较,如高于给定转速,则减小P2口的输出数值,降低电动机电流,达到降低其转速的目的。
反之,则增大P2口的输出数值,进而增大电动机的转速。
PWM控制的实现转速控制也可以通过PWM方式来实现。
图2和图3为PWM控制实现直流无刷电动机转速的控制。
图2PWM控制原理图图3PWM控制原理图直流无刷电动机的正转反转,通过改变换相次序来改变其转动方向。
具体做法只需要更换一下换相控制表。
单片机在可编程直流稳压电源中的设计时间:2012-02-14 来源: 编辑:电气自动化技术网点击:483次字体设置: 大中小目前,市场上各种直流电源的基本环节大致相同,都包括交流电源、交流变压器、整流电路、滤波稳压电路等。