示例四、 开关式霍尔传感器测转速

简介: 示例四、 开关式霍尔传感器测转速

通过以下几个示例来具体展开学习,了解常用的集成温度传感器基本原理、性能与应用,学习开关式霍尔传感器测转速的应用:

示例四、 开关式霍尔传感器测转速

一、基本原理:速度测量是日常生活经常需要的工作,如汽车的行驶速度,电机的转动速度等。测量速度的方法多种多样,本设计以出租车为例,讨论用开关型霍尔传感器测量速度的原理和方法。

1、霍尔测速仪的系统结构

霍尔测速仪系统以单片机AT89C2051为控制核心,用开关型霍尔集成传感器以计数方式测量汽车车轮的转动次数,单片机将计数结果换算成汽车运行速度值,送到液晶显示模块LCD1602上显示。系统硬件原理如图所示

2、霍尔测速仪的硬件设计

1)计数脉冲产生电路

如图547所示。在汽车的车轮上固定一块磁铁,汽车行走,车轮转动,磁铁一起转在汽车车体的某个固定位置安装霍尔传感器,汽车车轮每转一周,霍尔传感器与磁有一次磁接触,产生并输出一个开关信号。

2)光电隔离

霍尔传感器产生的开关信号可能并不适合单片机直接使用。因此,通过光电耦合器将其转换为单片机可采集的脉冲信号。单片机计算在固定时间内产生的脉冲数,即可得到速度值,如图所示。

霍尔传感器输出脉冲信号连到NT0引脚,车轮转动一圈,产生一次中断。单片机通过记录中断次数,完成对电机转动脉冲的计数。为简化设计,系统选用AT89C2051。若用逻辑信号代替霍尔传感器,系统仿真电路如图所示。

图系统仿真电路

3、霍尔测速仪的软件设计

系统启动后,首先进行初始化。单片机对霍尔传感器产生的脉冲进行读操作,作为速度的计数脉冲值。根据计数脉冲值,计算速度值,并在LCD上显示。工作流程如图所示。

系统采用AT89C2051的INT0中断,对转速脉冲进行计数。定时器T0工作于定时方式1,用于定时。每隔1s读一次由外部中断INT0产生的计数值,此值即为脉冲信号的频率,据此可计算出出租车的运行速度当车轮传动,磁铁转动时,霍尔传感器便在与磁铁相对时获得一个脉冲信号。这个脉冲信号经过光电耦合后接到单片机的外部中断INT0引脚,一个脉冲引起一次中断,让计数器加1。设车轮的周长为N(m),在T(s)内,测得的计数脉冲数为M,则出租车的速度为

U=N·M/T

二、软件设计:

霍尔测速仪的源程序:

#include "d:\c51\reg51.h"
#include "d:\c51\intrins.h"


sbit LCM_RS=P3^0;
sbit LCM_RW=P3^1;
sbit LCM_EN=P3^7;

#define BUSY      0x80              //常量定义
#define DATAPORT  P1
#define uchar     unsigned char
#define uint      unsigned int
#define L     50             //定义车轮周长
………………..
…………………
void main(void)
{
    TMOD=0x01;                       /*TMOD T0选用方式1(16位定时) */
    IP|=0x01;                           /*INT0 中断优先*/
    TCON|=0x11;                         /*TCON  EX0下降沿触发,启动T0*/
    IE|=0x83;  
    TH0=0x3c;
    TL0=0xaf;
  
  initLCM();
    WriteCommandLCM(0x01,1);        //清显示屏
  for(;;)
  {
    account();
    display();
  }
}
void account()
{
  unsigned long a; 
  if (time!=0)
  {
    a=L*360000000/time;           //速度的计算公式
  }
  speed=a;
}



void STR()
{
  str0[0]='S';
  str0[1]='p';
  str0[2]='e';
    str0[3]='e';
  str0[4]='d';
  str0[5]=' ';  
  str0[6]=(speed%100000)/10000+0x30;
  str0[7]=(speed%10000)/1000+0x30;
  str0[8]=(speed%1000)/100+0x30;
  str0[9]='.';
  str0[10]=(speed%100)/10+0x30;
  str0[11]=speed%10+0x30;
  str0[12]='k';
  str0[13]='m';
  str0[14]='/';
  str0[15]='h';
}

三、数据记录:

1、霍尔传感器实验数据记录1

2、霍尔传感器的频率/速度曲线图

六、思考题:

利用开关式霍尔传感器测转速时如何判断转子的旋转方向?

1.测量转速的霍尔传感器用上升沿触发,当转速传感器触发中断时,查看转向传感器的电位,如果转向传感器处于低电位,那么就判断为顺时针方向(根据实际情况确定);

2.如果转速传感器触发中断时,转向传感器处于高电位,则为逆时针方向。

目录
相关文章
|
7月前
|
传感器 芯片
毕业设计 基于51单片机霍尔电机转速测量温度PWM调速设计
毕业设计 基于51单片机霍尔电机转速测量温度PWM调速设计
108 0
|
4月前
|
传感器 算法 芯片
在写温度传感器驱动之前:热敏电阻的温度、电阻、电压的映射关系
本文介绍了温度传感器中NTC热敏电阻的温度、电阻、电压之间的映射关系,通过理论计算和实际测量验证了在特定温度下电阻值和电压值的对应关系,为编写温度传感器驱动提供了必要的理解和方法。
59 1
|
6月前
|
传感器 编解码
振动电阻式传感器测量模块的传感器接口
振动电阻式传感器测量模块的传感器接口
振动电阻式传感器测量模块的传感器接口
|
7月前
|
传感器 数据采集 监控
毕业设计 基于STM32单片机生理监控心率脉搏TFT彩屏波形曲线设计
毕业设计 基于STM32单片机生理监控心率脉搏TFT彩屏波形曲线设计
108 0
单片机数码管显示热敏电阻实测温度,
单片机数码管显示热敏电阻实测温度,
111 0
BOSHIDA 工业电源模块的输出电压调节关键
对 TRIM 输出引脚,将电位器的中心与 TRIM 相连,在所有+S、-S 管脚的模块中,其他两端分别接+S、-S。没有+S、-S 时,将两端分别接到相应主路的输出正负极(+S 接+Vin,-S 接-Vin),然后调节电位器即可。电位器的阻值一般选用 5~10kΩ比较合适。
BOSHIDA  工业电源模块的输出电压调节关键
|
传感器 芯片
基于51单片机的智能热水器STC89C52水位检测传感器DS18B20温度探头传感器
基于51单片机的智能热水器 由STC89C52单片机+水位检测传感器+DS18B20温度探头传感器+按键模块+继电器模块+报警及指示模块+LCD1602显示模块+电源构成。 具体功能: 1、LCD1602显示屏第一行显示温度及定时时间,第二行显示温度上限和下限值; 2、按键可以设置温度的上下限值及定时时间;定时时间到开始加热 3、用两个水位检测传感器检测水位:当水位下限传感器检测到有水时,继电器开始控制加水;当水位上限传感器检测到有水时,停止加水; 4、当温度低于设置的下限温度值时,继电器开始控制加热;当温度高于设置的上限温度值时,停止加热。
172 0
|
传感器 存储 监控
基于51单片机的室内湿度加湿温度声光报警智能自动控制装置设计
在日常生活中加湿器得到了广泛的应用,但是现有的加湿器都需要手工控制开启和关闭并且不具备对室内空气温湿度的监测,人们在使用过程中存在过度加湿和干烧的问题,不仅给室内空气舒适度造成负面影响并且还存在安全隐患。因此开发设计一种价格低廉、功耗低、具有自动控制功能的加湿器显得尤为必要。本设计采用智能控制,以AT89C51单片机为核心,外接辅助电路,通过实现加湿器的防干烧、声光报警、智能开启和关闭以及室内温湿度的显示功能基本实现加湿器的智能化。
229 0

热门文章

最新文章