基于霍尔传感器的电流检测模块设计_第1页
基于霍尔传感器的电流检测模块设计_第2页
基于霍尔传感器的电流检测模块设计_第3页
基于霍尔传感器的电流检测模块设计_第4页
基于霍尔传感器的电流检测模块设计_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录一、绪论 21.1 概述 21.2 霍尔传感器的发展趋势 2二、整体设计方案 3三、硬件电路的设计 43.1 传感器模块 43.2 A/D转换模块 53.3 数码管显示模块 63.4 电源电路模块 73.5 复位模块 83.6 时钟模块 8四、系统的软件设计 94.1 电流检测装置软件程序流程图 94.2 系统程序设计 94.2.1 定时器计数程序 94.2.2 外部中断程序104.2.3 初始化MCU程序114.2.4 ADC启动、读取、转换程序 114.2.5 霍尔传感器 ACS712的计算函数程序 134.2.6 数码管显示程序 134.2.7 主程序14五、结论与展望16TK、 心

2、17七、附录18八、参考文献21基于霍尔传感器的电流检测模块设计一、绪论1.1 概述近几年来,单片机已逐步深入应用到工农业生产各部门以及人们生活的各个 方面。各种类型的单片机也根据社会的需求而相继开发出来。单片机是一个器件级的计算机系统,实际上它是一个微控制器或微处理器。由于它功能齐全,体积小,成本低,因此它可以应用到所有的电子系统中。AT89C51是一种带4K字节闪存的可编程可插除只读存储器的单片机。单片机的可擦除只读存储器可以反复 的擦除多次,该器件采用 ATMEL高密度非易失性存储器制造技术制造,与工业 标准的MCS-51指令集和输出管脚相兼容。由于将多功能的 8位CPU和闪烁存 储器组

3、合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。1.2 霍尔传感器的发展趋势传感器的产业分类众多,其中霍尔传感器市场是第三大传感器产品市场。在汽车行业、电脑、手机以及新兴消费电子领域都得到了广泛应用。未来几年,随 着越来越多的汽车电子和工业设计企业转移到中国,霍尔传感器在中国市场的年销售额将保持20呃U 30%勺高速增长。于此同时,霍尔传感器的相关技术仍在不断完善中,可编程霍尔传感器、智能化霍尔传感器以及微型霍尔传感器将有更好 的市场前景。在我们的日常生活中,霍尔传感器被广泛的应用。例如,在翻盖或是滑盖手 机中,用来检测手机翻开或是滑动的器件就是霍尔传感器;再比如,在电脑键盘上,

4、实现光标移动的滚动键就是由霍尔传感器组成的;还有,在汽车变速箱、电 动门窗等需要电机的部件中也有霍尔传感器应用。可以说,我们在每天的生活中都在与霍尔传感器打交道。由于霍尔传感器应用的领域不同,因此各个市场对其的要求也不尽相同。 手 机市场对霍尔传感器的主要要求包括尺寸、功耗和可调节的阈值。在工业和汽车 应用方面,霍霍尔传感器首先要满足工业或汽车认证对器件的要求, 例如安全性、 稳定性和温度范围要达到相应的级别。二、整体设计方案由于AT89C51片内没有A/D转换,根据系统的设计要求,需要在片外扩展A/D转换接口。系统选用 ADC0804, ADC0804的DB0DB7分别接单片机的P0.0P0

5、.7, AGND、DGND、CS VIN-接地,RD、WR 分别接单片机的 RD、WR端,中断请求INTR接单片机的P2.0 口,VIN+接采集信号输入。调整变阻器 HAUBLAN20K,使辅助参考端 VREF脚得至U 2.56V标准电压。在CLKIN、CLKOUT 端设计RC振荡电路,由于ADC0804频率限制在100Hz1460kHz,通过对频率 公式F=1/(1.1RC)的计算,选择电阻R=20k,电容C=200pF,即可得到符合设计 要求的频率。数码显示模块主要显示单片机的输出数据、状态等。系统显示部分采用共阴极8段数码管,选用CMOS BCD七段字符显示译MC14511BCP作为它的

6、驱动器 件,并在译码器和数码管之间接入分压电阻保护数码管, 防止电压过高烧坏数码管。数码显示部分采用动态扫描显示方法,4个MC14511BCP译码器共用4条数据线。其中LE端为片选端,置低电压时译码器被选中可以读数据,置高电压时译码器暂存,保持显示数据不变。A、B、C、D为数据输入端,分别接单片机的P1.0P1.3 口;个片选端分别接单片机的 P1.4P1.7 口。系统由一个主控系统和一个检测模块组成。被测电流通过ACS712芯片时,该芯片利用霍尔效应,将被测电流转换成05V的DC模拟信号,该模拟量经过 A/D装置变成数字量。A/D采样处理模块主要是对从ADC0804采集来的数据进 行处理,完

7、成对二进制数据 BCD码的转换,并且通过P1 口输出显示,P1 口德 低四位输出BCD码,高四位为数码管的片选信号。ADC0804与AT89C51的连接采用循环扫描方式。当A/D转换结束后,ADC0804向CPU发出一个信号,CPU 对转换后的数字量进行处理,使数码管显示当前的电流值。三、硬件电路的设计3.1 传感器模块3.1.1 电流传感器的工作原理磁补偿式的工作原理是磁场平衡,即主回路电流IP在聚磁环所产生的磁场, 通过一个次级线圈的电流产生的磁场进行补偿, 使霍尔器件处于检测零磁通的工 作状态,具体工作过程为:当主回路有一电流通过时,在导线产生的磁场被聚磁 环聚集,感应霍尔器件使之有一个

8、信号输出,这一信号驱动相应的功率管导通, 从而获得一补偿电流IS。这一电流通过多匝绕组产生的磁场与被测电流产生的磁 场正好相反,因而补偿了原来的磁场,使霍尔器件的输出逐渐减小,当 IP与匝 数相乘所产生的磁场与IS与匝数相乘所产生的磁场相等时,IS不再增加,霍尔 器件起到指示零磁通的作用。此时可以通过 IS来测IP,当有变化时,平衡受到 破坏,霍尔器件就有信号输出,即重复过程重新达到平衡。被测电流的任何变化 都会破坏这一平衡,一旦磁场失去平衡,霍尔器件就有信号输出,经放大后,立 即有相应的电流流过次级绕组,对失衡的磁场进行补偿。从磁场失衡到再次平衡 所需的时间不到lUSo这是一个动态平衡的过程

9、。3.1.2 ACS712 简述ACS712器件主要由靠近芯片表面的铜制电流通路和精确的低置线性霍尔传感器电路组成。被测电流流经的通路(引脚 1和2,3和4之间的电路)的内电阻 通常是1.2m具有较低的功耗。流经铜制电流通路的电流所产生的磁场,能够 被片内的霍尔IC感应并将其转化为比例的电压。通过将磁性信号尽量靠近霍尔 可以消除芯片由于温度传感器来实现器件精确度的最优化。精确的成比例的输出电压由稳定斩波型低偏置 BiCMOS霍尔集成电路提供,该集成电路在出厂时已经 进行了精确的编程。稳定斩波技术是一种新技术,它给片内霍尔器件和放大器提 供最小的偏置电压,该技术几乎可以消除由温度所产生的误差。A

10、CS712的引脚及功能引脚名称功能及描述1和2IP+被测电流输入或输出3和4IP-被测电流输入或输出5GND信号地6FILTER外接电容7VIOUT模拟电压输出8VCC电源电压3.1.3 传感器电路3.2 A/D转换模块3.2.1 ADC0804 简述ADC0804是一个早期的A/D转换器,因其价格低廉而在要求不高的场合得到广泛应用。ADC0804是一个8位、单通道、低价格的 A/D转换器。主要特点 是:模数转换时间大约100us;方便的TTL或CMOS标准接口;.可以满足差分电压输入;.具有参考电压输入端;.内含时钟发生器;.单电源工作时输入信号范围是 0 V5V;.不需要调零等。3.2.2

11、 A/D转换电路3.3 数码管显示模块3.3.1 MC14511BCP的工作原理本设计选用MC14511作为驱动芯片,以8端数码管作为显示器件的显示模块作为系统的输出显示。为了数码管的安全,我们在数码管与驱动芯片之间加1K欧姆的电阻作为限流电阻,保证驱动芯片以及数码管的安全运行3.3.2 数码管的工作原理在智能仪器仪表中广泛使用各种显示器来显示数据文字或者是图形画面,其中最长用的显示器是LED (发光二极管显示器),因为它具有驱动电路简单,配 置灵活方便,功耗低,响应速度快,可靠性高以及易于实现而且价格低廉等优点。LED显示实际上是由若干发光二极管构成的, 当发光二极管导通时,相应的 一个点或

12、者是一个笔画就发光,控制不同组合的二极管导通,就能显示出各种字 符。3.3.3 数码管电路_0日吕目_3.4 电源电路模块3.4.1 电源设计系统的供电电源由220V-9V变压器提供。考虑到变压器体积较大,且 220V属于较高电压,容易影响板子芯片的正常工作,我们选择变压器独立外接的处理 办法。变压器的二次侧输出电压为交流 9V电源,经过整流桥得到脉动的直流电源, 经过滤波电容,稳压管L7805,以及二次滤波电容的处理,得到复合系统要求的 +5V电源,为装置的各部分电路供电,保证系统的正常运行。3.4.2 电源电路3.5 复位模块51系列的单片机复位信号由RESE础脚输入,高电平有效,当 RE

13、SETS脚 输入高电平并保持两个机器周期以上时, 单片机内部就会执行复位操作。为了保 证复位的成功,一般复位引脚RESETk只要出现10ms以上的高电平,单片机就 实现了可靠复位。在这里我选择手动复位的方式。当按下复位按钮后,电容 C 通过10K电阻迅速放电,使 RESET迅速变为高电平,复位按钮松开后,电容通 过R和内部下拉电阻放电,使 RESETS渐恢复为低电平,从而完成一次成功的复位。3.6 时钟模块单片机的时序就是CPU在执行指令时所需要的控制信号的时间顺序。单片机的时钟信号用来为芯片内部各种微操作提供时间基准,也就是说在指令执行时,CPU首先要到程序存储器中取出所需要执行的指令码,然

14、后进行译码,并且产生一系列控制信号去完成指令的执行操作。在这里我选择了用外部时钟的方式产生时钟信号来控制单片机的工作时序。四、系统的软件设计4.1 电流检测装置软件程序流程图开始4.2 系统各程序设计4.2.1 定时器计数程序T1和T0是两个独立的定时器/计数器,相互之间不会影响。至于定时和计 数功能,则由写入TMOD (定时器/计数器方式控制寄存器)的值来确定当前定 时器是定时功能还是计数功能。因此在程序中,可以设置标志位TR0和TMOD配合,当TR0是1时,定时器就执行计数功能,开始计数。定时器需要计数16位数。因此选择模式为1,即设置TMOD=0x01 。程序如下:#include pu

15、blic.h u8 Cnt100ms ;u8 Cntls ;void TimerOISR(void) interrupt 1TL0 = (u8)(Interva10neMs);TH0 = (u8)(Interva10neMs8);ADC0804Start() ;/ 启动 ADC 转换void Timer0Initial(void)TMOD |= 0x01 ;设置定时器0为模式1TL0 = (u8) Interva10neMs ;/ 初始化低 8 位TH0 = (u8) (Interva10neMs8) ;/ 初始化高 8 位ET0 = 1 ;允许定时器0中断TR0 = 1 ;启动定时器0,开始

16、计数4.2.2 外部中断程序中断能使处理器在运行过程中对外部事件发出的中断请求及时地进行处理,ADC080等待转换完处理完成后又立即返回断点,继续进行处理器原来的工作。系统对 ADC0804转换结果执行外部中断,当系统未能读取转换结果时继续返回 毕。中断程序如下:#include public.h extern u8 ADCResult ;void INTOISR(void) interrupt 0 / 外部中断 0 服务函数ADCResult = ADC0804ReadADResult(); 取得 ADC 转换结果void INT0Initial(void)IT0 =1 ”/指定外部中断0下

17、降沿触发EX0 = 1 ; 使能外部中断4.2.3 初始化MCU程序根据系统要求,单片机要有外部中断、定时器计数,因此初始化单片机时要 初始化外部中断以及定时器来实现上述功能。#include public.h void MCUInitial(void)GlobalInterruptDisable() ;/ 禁止全局中断INT0Initial(); 初始化外部中断Timer0Initial(); 初始化 Timer。GlobalInterruptEnable();允许全局中断4.2.4 ADC启动、读取、转换程序ADC0804的启动:ADC0804中的A/D转换器在满足一定条件时开始一个转 换

18、过程,这个条件就是:在实现片选 WR=0的前提下,引脚上出现一个上升沿。ADC转换结果的读取:在 A/D转换结束以后,ADC0804的RD引脚将给出 一个低脉冲信号,如果把这个引脚直接连接到单片机的外部中断引脚, 这个低脉 冲将引起单片机的中断,单片机可以在中断处理程序中读取 ADC0804的转换结 果。ADC0804的启动、读取程序如下:#include public.h void ADC0804Start(void)iADC0804WR = 0 ;iADC0804WR = 1 ; 上升沿启动ADC0804转换void ADC0804Initial(void)iADC0804WR = 1 ;

19、iADC0804RD = 1 ; 初始化状态为 WR, RD均为高电平u8 ADC0804ReadADResult(void)u8 ADTemp ;iADC0804RD = 0 ; /彳氐电平为度数状态ADTemp = iADC0804DATA ;/ 读取数据 口iADC0804RD = 1 ;return ADTemp ;/返回ADC转换结果4.2.5 霍尔传感器ACS712的计算函数程序计算函数如下:#include public.h Float ACS712ReadCurrent(u8 ADCValue)return (float)30*(ADCValue-127)/101 ;4.2.6

20、 数码管显示程序系统选用4个共阴极数码管来分别显示检测电流的十位、个位、小数点后一 位、小数点后两位,再将计算结果转换成BCD码并在数码管中显示出来。数码管显示程序如下:#include public.h u8 DisplayBCD4;u8 code SelectTable口 = 0x70,0xB0,0xD0,0xE0;void HEXTOBCD(u16 Hex)DisplayBCD3 = Hex/1000 ;DisplayBCD2 = Hex%1000/100 ;DisplayBCD1 = Hex%100/10 ;DisplayBCD0 = Hex%10 ;void DisplaySeven

21、Segment(u16 DisplayData)static u8 Sel ;u8 P0Temp ;HEXTOBCD(DisplayData); 转换成 BCD码P0Temp = P0 ;P0Temp &= 0xF0 ;P0Temp |=DisplayBCDSel; 要显示的 BCD 码P0Temp &= 0x0F ;P0Temp |=SelectTableSel ;/ 选中一只数码管P0 = P0Temp ;if(Sel3)Sel = 04.2.7 主程序主程序用来调用上述子程序,包括初始化单片机、初始化 ADC0804等。#include public.h u8 ADCResult ;fl

22、oat Current ;u16 CurInt ;void PowerOnlnirial(void)ADC0804Initial()/初始化ADC0804void main(void)MCUInitial();/初始化MCUPowerOnInitial();初始化上电默认状态while(1)Current = ACS712ReadCurrent(ADCResult);显示电流值CurInt = Current*100 ;/电流值乘以100以便显示DisplaySevenSegment(CurInt);五、结论与展望霍尔电流传感器是根据霍尔效应原理制成的, 它有两种工作方式,磁平衡式 和直放式。

23、霍尔式传感器的优点有精度高、线性好、频带宽、响应快、过载能力 强和不损失被测电路能量等诸多优点。霍尔式电流传感器是一种先进的、能隔离主回路和电子控制电路的电检测原 件。它综合了互感器和分流器的所有优点,同时又克服了互感器和分流器的不足。 可以测量任意波形的电流,如直流、交流和脉冲波形等。也可以对瞬态峰值进行 测量,其副边电路可以忠实的反应原边电流的波形。这一点普通互感器无法与其相比。霍尔电流传感器模块在工作区域内的精度优于 1%该精度适合任何波形的 测量,而普通互感器的精度一般为 3%5%且值适合50Hz的正弦波形。并且它 的动态响应时间小于7us,跟踪速度高于50A/us,为提高现代控制系统的性能提 供了关键的基础,一般的普通互感器的动态响应时间为 1020us,这显然已经不 适应工业控制系统发展的需要。本设计使用的是有线的霍尔式电流传感器进行设计的,应用也比较广泛,但是在某些应用领域受到了限制,因为有些应用领域需要用到无线技术,所以说,可以在本设计的基础之上加上无线技术,如 ZigBee等,实现信号的无线采集。六、心得体会我设计的课题是基于霍尔传感器的电流检测模块设计,经过一个星期的思考和准

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论