基于单片机的步进电机霍尔测速

上传人:cl****1 文档编号:469797482 上传时间:2023-03-14 格式:DOC 页数:22 大小:5.17MB
返回 下载 相关 举报
基于单片机的步进电机霍尔测速_第1页
第1页 / 共22页
基于单片机的步进电机霍尔测速_第2页
第2页 / 共22页
基于单片机的步进电机霍尔测速_第3页
第3页 / 共22页
基于单片机的步进电机霍尔测速_第4页
第4页 / 共22页
基于单片机的步进电机霍尔测速_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《基于单片机的步进电机霍尔测速》由会员分享,可在线阅读,更多相关《基于单片机的步进电机霍尔测速(22页珍藏版)》请在金锄头文库上搜索。

1、-分数:评语: 自动化系专业综合实验报告(Part )题目:基于单片机的步进电机霍尔测速实验学 生 姓 名:学 号:指 导 教 师:二一六年一月. z.-目 录1实验所用各元件介绍11.1 STC89C51简介11.2 定时器31.2.1 定时器原理31.2.2 51定时器41.2.3 本实验定时器简介51.3 串口通信模块51.4 MA*232芯片62 组态王82.1 组态王简介82.1.1 概述82.1.2 组态王与I/O 设备92.1.3 组态王的开放性92.2 本实验组态王使用说明92.2.1 工程管理器的使用92.2.2 工程浏览器的使用122.2.2.1 定义外部设备122.2.2

2、.2 定义外部设备变量172.2.2.3 建立画面192.2.2.4 动画连接212.2.3运行系统233单片机程序设计233.1 单片机程序说明233.1.1 常量、变量说明233.1.2 函数功能说明243.2单片机完整程序254 实验总结30附录:实验原理图321实验所用各元件介绍1.1 STC89C51简介STC89C51RC是采用8051核的ISPIn System Programming在系统可编程芯片,最高工作时钟频率为80MHz,片含8K Bytes的可反复擦写1000次的Flash只读程序存储器,器件兼容标准MCS-51指令系统及80C51引脚构造,芯片集成了通用8位中央处理

3、器和ISP Flash存储单元,具有在系统可编程ISP特性,配合PC端的控制程序即可将用户的程序代码下载到单片机部,省去了购置通用编程器,且速度更快。STC89C52RC系列单片机是单时钟/机器周期(1T)的兼容8051 核单片机,是高速/ 低功耗的新一代8051 单片机,全新的流水线/精简指令集构造,部集成MA*810 专用复位电路。图1.1 STC89C51RC实物图本实验用板提供USB2.0和串口两种通信方式,USB实现供电、编程、仿真、通信多种功能,另外还提供了Atmel单片机的ISP接口。此板兼容STC、SST、Atmel、Philips等51家族的所有单片机。如果使用ISP编程建议

4、使用开发板自带的单片机,整机包含以下资源:单片机采用STC90c516 1280 SRAM 64K Flash;2.1寸彩色液晶屏;SD卡接口;1602液晶屏接口;12864液晶屏接口;温度传感器DS18B20;EEPROM 24C02 存储器;8位动态数码管;AD/DA转换 PCF8951;DS1302实时时钟;4*4矩阵键盘;4个独立键盘;2*8路led灯;可更换晶振座;USB 接口,实现下载,供电,串行通信。通过USB转串口芯片CH340T转换;IR红外接收头,红外数据传输;板载继电器;蜂鸣器;步进电机 ULN2003达林顿管驱动;图1.2 实验板实物图1.2 定时器1.2.1 定时器原

5、理加1计数器输入的计数脉冲有两个来源,一个是由系统的时钟振荡器输出脉冲经12分频后送来;一个是T0或T1引脚输入的外部脉冲源。每来一个脉冲计数器加1,当加到计数器为全1时,再输入一个脉冲就使计数器回零,且计数器的溢出使TCON中TF0或TF1置1,向CPU发出中断请求定时/计数器中断允许时。如果定时/计数器工作于定时模式,则表示定时时间已到;如果工作于计数模式,则表示计数值已满。可见,由溢出时计数器的值减去计数初值才是加1计数器的计数值。1.2.2 51定时器89c51 单片机有两个可编程的定时/计数器T0、T1。定时/计数器的实质是加1 计数器16 位,由高8 位和低8 位两个存放器组成。T

6、MOD 是定时/计数器的工作方式存放器,确定工作方式和功能;TCON 是控制存放器,控制T0、T1 的启动、停顿和设置溢出标志。图1.351定时器89c51计时器有四种工作方式:方式0 为13 位计数,由TL0 的低5 位高3 位未用和TH0 的8 位组成。TL0 的低5 位溢出时向TH0 进位,TH0 溢出时,置位TCON 中的TF0 标志,向CPU 发出中断请求。方式1 的计数位数是16 位,由TL0 作为低8 位、TH0 作为高8 位,组成了16 位加1 计数器 。图1.4 方式1工作原理图方式2 为自动重装初值的8 位计数方式。工作方式2 特别适合于用作较准确的脉冲信号发生器。图1.5

7、 方式2工作原理图方式3 只适用于定时/计数器T0,定时器T1 处于方式3 时相当于TR1=0,停顿计数。工作方式3 将T0 分成为两个独立的8 位计数器TL0 和TH0 。图1.6 方式3工作原理图1.2.3 本实验定时器简介在本实验中,定时器T0主要用于步进电机转速计时,工作在方式1;而定时器T1主要用于产生串口通信所需波特率,工作在方式2;1.3 串口通信模块单片机通信是指单片机与计算机或单片机与单片机之间的信息交换,通信有并行和串行两种方式。在单片机系统以及现代单片机测控系统中,信息的交换多采用串行通信方式。串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传送,此时只需要一条

8、数据线,外加一条公共信号地线和假设干控制信号线。因为一次只能传送一位,所以对于一个字节的数据,至少要分S位才能传送完毕。串行通信的必要过程是:发送时,要把并行数据变成串行数据发送到线路上去,接收时,要把串行信号再变成并行数据,这样才能被计算机及其他设备处理。串行通信传输线少,长距离传送时本钱低,且可以利用网等现成的设备,但数据的传送控制比并行通信复杂。串行通信的制式可分为单工、半双工、全双工。1单工:单工是指数据传输仅能沿一个方向,不能实现反向传输。2半双工:半双工是指数据传输可以沿两个方向,但需要分时进展。3全双工:全双工是指数据可以同时进展双向传输。1.4 MA*232芯片MA*232芯片

9、是MA*IM公司生产的、包含两路接收器和驱动器的IC芯片,它的部有一个电源电压变换器,可以把输入的+5V电源电压变换成为RS-232输出电平所需的+1OV电压。所以,采用此芯片接口的串行通信系统只需单一的+5V电源就可以了。对于没有+12V电源的场合,其适应性更强,加之其价格适中,硬件接口简单,所以被广泛采用。图1.7 ma*232引脚构造图图1.7所示ma*232上半局部,电容Cl, C2, C3, C4及V+, V-是电源变换电路局部。在实际应用中,器件对电源噪声很敏感,因此Vcc必须要对地加去祸电容C5,其值为0.1uF。按芯片手册中介绍,电容Cl, C2, C3, C4应取10uF/1

10、6V的电解电容,经大量实验及实际应用,这4个电容都可以选用0.1uF的非极性瓷片电容代替10uF/16V的电解电容,在具体设计电路时,这4个电容要尽量靠近MA*232芯片,以提高抗干扰能力。下半局部为发送和接收局部。实际应用中,T1IN,T2IN可直接连接TTL/CMOS电平的51单片机串行发送端T*D; R1OUT,R20UT可直接连接TTL/CMOS电平的51单片机的串行接收端R*D;T1OUT,T2OUT可直接连接代机的RS-232串口的接收端R*D;R1IN,R2IN可直接连接PC机的RS-232串口的发送端T*D。图1.8ma*232模块原理图单片机或计算机在串口通信时的速率用波特率

11、表示,它定义为每秒传输二进制代码的位数,即1波特=1位/秒,单位是bps(位/秒)。如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位、1个停顿位、8个数据位),这时的波特率为10位* 240个/秒=2400bps.串行接口或终端直接传送串行信息位流的最大距离与传输速率及传输线的电气特性也有关。当传输线使用每0.3m(约1英尺)有50pF电容的非平衡屏蔽双绞线时,传输距离随传输速率的增加而减小。当比特率超过1000 bps时,最大传输距离迅速下降,如9600 bps时最大距离下降到只有76m(约250英尺)。因此我们在做串口通信实验选择较高速率传输数据时,尽量缩短数据线的长度,为了

12、能使数据平安传输,即使是在较低传输速率下也不要使用太长的数据线。另外,标准的51单片机晶振是1.2M-12M,一般由于一个机器周期是12个时钟周期,所以选择12M时,一个机器周期是1US,好计算,而且速度相对是最高的当然现在也有更高频率的单片机,而本实验板采用的是12M晶振。而有的51单片机采用11.0592M是因为在进展通信时,12M频率进展串行通信不容易实现标准的波特率,比方9600,4800,而11.0592M计算时正好可以得到,因此在有通信接口的单片机中,一般选11.0592M。假设我们要得到9600 的波特率,晶振为11.0592M 和12M,定时器1 为模式2,SMOD 设为1,分

13、别看看那所要求的TH1 为何值。这里TH1为串口通信波特率产生所用计时器高8位数值。公式计算如下: 使用12M晶振的:解得:TH1249.49。同理可以计算得出当使用11.0592M晶振时,TH1=250。上面的计算可以看出使用12M 晶体的时候计算出来的TH1 不为整数,而TH1 的值只能取整数,这样它就会有一定的误差存在不能产生准确的9600 波特率。当然一定的误差是可以在使用中被承受的,就算使用11.0592M 的晶体振荡器也会因晶体本身所存在的误差使波特率产生误差,但晶体本身的误差对波特率的影响是十分之小的,可以忽略不计。考虑到,通信速率越高,误码率越大,所以决定将通信的波特率设为48

14、00bps。2 组态王2.1 组态王简介2.1.1 概述组态王软件是一种通用的工业监控软件,它融过程控制设计、现场操作以及工厂资源管理于一体,将一个企业部的各种生产系统和应用以及信息交流聚集在一起,实现最优化管理。它基于Microsoft Windows *P/NT/2000/7 操作系统,用户可以在企业网络的所有层次的各个位置上都可以及时获得系统的实时信息。采用组态王软件开发工业监控工程,可以极增强用户生产控制能力、提高工厂的生产力和效率、提高产品的质量、减少本钱及原材料的消耗。它适用于从单一设备的生产运营管理和故障诊断,到网络构造分布式大型集中监控管理系统的开发。组态王软件构造由工程管理器

15、、工程浏览器及运行系统三局部构成。工程管理器:工程管理器用于新工程的创立和已有工程的管理,对已有工程进展搜索、添加、备份、恢复以及实现数据词典的导入和导出等功能。工程浏览器:工程浏览器是一个工程开发设计工具,用于创立监控画面、监控的设备及相关变量、动画、命令语言以及设定运行系统配置等的系统组态工具。运行系统:工程运行界面,从采集设备中获得通讯数据,并依据工程浏览器的动画设计显示动态画面,实现人与控制设备的交互操作。2.1.2 组态王与I/O 设备组态王软件作为一个开放型的通用工业监控软件,支持与国外常见的PLC、智能模块、智能仪表、变频器、数据采集板卡等如:西门子PLC、莫迪康PLC、欧姆龙PLC、三菱PLC、研华模块等等通过常规通讯接口如串口方式、USB 接口方式、以太网、总线、GPRS 等进展数据通讯。组态王软件与IO 设备进展通讯一般是通过调用*.dll 动态库来实现的,不同的设备、协议对应不同的动态库。工程开发人员无须关心复杂的动态库代码及设备通讯协议,只须使用组态王提供的设备定义向导,即可定义工程中使用的I/O 设备,并通过变量的定义实现与I/O 设备的关联

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号