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

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

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

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

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

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调速设计
112 0
|
6月前
|
传感器 编解码
振动电阻式传感器测量模块的传感器接口
振动电阻式传感器测量模块的传感器接口
振动电阻式传感器测量模块的传感器接口
|
6月前
|
传感器
振动电阻式传感器测量模块用于测量物理量
振动电阻式传感器测量模块,用于测量物理量。它采用了差动电阻式传感器,通过两个电阻的比值来反映被测物理量
振动电阻式传感器测量模块用于测量物理量
单片机数码管显示热敏电阻实测温度,
单片机数码管显示热敏电阻实测温度,
113 0
BOSHIDA 工业电源模块的输出电压调节关键
对 TRIM 输出引脚,将电位器的中心与 TRIM 相连,在所有+S、-S 管脚的模块中,其他两端分别接+S、-S。没有+S、-S 时,将两端分别接到相应主路的输出正负极(+S 接+Vin,-S 接-Vin),然后调节电位器即可。电位器的阻值一般选用 5~10kΩ比较合适。
BOSHIDA  工业电源模块的输出电压调节关键
LabVIEW控制Arduino采集热敏电阻温度数值(基础篇—13)
利用热敏电阻和LIAT中的热敏电阻函数节点,通过Arduino Uno控制板的模拟端口采集与热敏电阻串联电阻的分压值上传给LabVIEW软件,并除以温度系数以获得温度值,实现一个温度计的功能。
|
传感器
手持VH501TC混合传感器信号采集读数仪怎么使用
1.开机和关机 开机 在关机状态,长按【电源】 按键,屏幕显示开机画面, 当听到蜂鸣器提示音后即可松开按键,设备自动完成参数加载和系统自检进入工作首页。
手持VH501TC混合传感器信号采集读数仪怎么使用
多通道振弦、温度、模拟传感信号VTN208-432振弦采集仪数据查看与参数修改
通过按键操作,可使数码管显示不同类别的实时数据和运行参数,数据名称数码管显示3 位符号,第一位为字母,表示当前正在查看的数据类别,后面两位用数字表示正在查看数据的编号。数据类别用字母表示,F 表示频率类别,T(小写 t)表示温度类别,P 表示系统参数类别。
多通道振弦、温度、模拟传感信号VTN208-432振弦采集仪数据查看与参数修改
|
传感器 存储
手持读数仪连接传感器的类型
便携式手持设备面板的设计与其他工业设备的主要区别在于具有便携性和可操作性。通过人机进行操作能够对手握区域、外部接口区域、显示和操作区域进行接触,同时,手持检测设备的外观设计还要能够与人体结构相契合,达到手持的舒适度等。如手持振弦VH501TC,在工程监测振弦传感器时就很方便快捷,连接上传感器,立即读取到数据,每个测点检测时就能快速及时处理。
手持读数仪连接传感器的类型