- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
G19转速测量仪
转速测量仪………………………………………………………………………………1
2. 传感器的设计方案论证与选择………………………………………………………2
3.理论分析与计算……………………………………………………………………………………………………………………………………4
5. 硬件电路部分………………………………………………………4-7
6 软件部分………………………………………………………8-27
参考文献……………………………………………………………………………………27
附录…………………………………………………………………………………………………28
附 录1、元器件明细表………………………………………………………………………28
1. 系统设计要求
设计并制作一个低功耗转速传感器和数据处理与显示电路,两者构成一台转速测量仪。用该测量仪实时非接触测量一个转动的转速,转速范围为~600转/。圆盘用覆铜板制作,直径为50mm,圆盘保留一半覆铜,圆心处钻一个孔用于固定在直流电机的转轴上。圆盘速的示意如图所示。
图1 低功耗转速测量仪示意图理论分析与计算]/15K*2.9 )
4.控制模块的设计方案论证与选择
方案一:利用单片机控制集成芯片AT89C51,这里还要读取电路中某点的电压。但是由于所采用单片机只有没有自带A/D,这样就增加了外围电路。液晶就需要直十几个端口。再加上A/D数值。就有三十几个,资源紧张,需增加I/O口,使外围电路变得复杂,抗干扰性降低,可靠性及精度不高。
方案二:利用PIC来控制。PIC的运行速度快,资源丰富,使用方便灵活,易于进行功能扩展。自带十位的A/D。还有可以设置看门狗电路。使整个系统稳定、快速。
综上所述,选择方案二,采用PIC构成控制部分。
5.硬件电路
5.1.1反射式光电传感器检测电路与输出信号整形电路如下图所示
图5.1.1反射式光电传感器与信号处理
上图中,通过反射式光电传感器做为一个测速传感器。该传感器一端发射红外光由传感器的接收端获取一个光信号,再将所测得的脉冲信号通过三极管转变后做为传感器输出方波脉冲。通过示波器观测发现该脉冲信号带有较大的负直流分量(由示波器观测到)。于是我们用一个100UF串联2K电阻对此进行滤波,过滤掉波形中的直流分量,在由NE555构成了一个单稳态施密特触发器对波形进行整形放大,可以在输出口得到一个为4.6V的单极性的脉冲。这样的就可以在PIC单片机中被I/O识别出来进行计数,达到测速的目的。
5.1.2 PIC单片机与外部接口显示电路
图5.1.2 PIC单片机与外部接口电路
5.1.3 电源电路
通过数据的比较我们知道当接收电压在2.9伏左右时工作的功耗达到最小(小于2.9伏没办法符合题目1.5伏要求)。此时需要做一个2.9左右的电源,这里设想通过LM7805稳压管串接一个电阻,再接一个3.0伏的稳压二极管。在实验测量中我们在稳压二极管得到一个2.92伏的电压。基本符合初起要求。
图5.1.3 电源电路
6 软件
6.1.1程序结构
本项目总体分为三个模块,测量功率的显示,转速的显示,方向的判别
由于题目要求采用中文字符显示,我们选用了LM12864LDW液晶显示屏,并采用点阵方法显示中文字符。总体的液晶显示界面如下:
6.2 部分程序源码
#includepic.h
//#include stdlib.h
//#include string.h
#define uchar unsigned char
#define uint unsigned int
#define E RB2
#define RW RB1
#define RS RB0
#define cs1 RB3
#define cs2 RB4
#define tend RB5
#define bus RD7
#define DataPort PORTD
#define SCAN_NUM_IO RC0 == 1
__CONFIG(0x3B31);
uint Sys_time=0;
uint speed=0;
uint num=0;
uint round=0;
void InitAD();
uint getad();
uchar Time_moden=0;
void Write_Com(uchar command);
void Write_Data(uchar Data);
void Busy();
void Display_Char();
void Display_Shu(uint shu,float fshu);
void SetAdd(uchar left,uchar right);
void SetPage(uchar x,uchar y
文档评论(0)