这几年来,跟着不断发展的传感器技能,单片机技能的广泛运用,越来越多的选用单片机与PC机构成的小型传感器测控体系。
引 言
这几年来,跟着不断发展的传感器技能,单片机技能的广泛运用,越来越多的选用单片机与PC机构成的小型传感器测控体系。关键在于它们很好地结合了单片机的价格低,功用强,抗搅扰才能好,温限宽和面向操控等长处及Pc机操作体系中Windows的高档用户界面、多使命、主动内存办理等特色。在这种测控体系中,单片机首要进行实时数据收集及预处理,然后经过串行口将数据送给PC机,PC机再对这些数据进一步处理,例如求均值、方差、画动态曲线与核算给定、打印输出的各种参数等使命。
这儿选用霍尔传感器作为前端进行数据收集,然后在单片机操控下进行A/D转化,并将信号经过串口送给PC机进行绘图处理。
1 体系介绍
体系能够分为3个部分。榜首部分是信号源,由霍尔传感器发生电压信号,信号经过差分扩大,滤波得到较明晰的信号;第二部分是信号经过A/D转化送入单片机进行处理,再经过串行通讯送入PC机处理得到成果;第三部分是数据的显现,这部分是经过VB的绘图程序来完结,显现成果以v-x联系图来显现。体系总流程如图1所示。
2 硬件规划及完成
2.1 霍尔传感器
霍尔传感器是运用霍尔效应完成磁电转化的一种传感器。它具有灵敏度高,运用广泛的特色。其作业原理如图2所示:一块半导体薄片,其长度为L,宽度为B,厚度为D,置于磁感应强度为B的磁场中,在相对的两头通以操控电流I,且磁场方向与电流方向正交,则在半导体的两头将发生一个与操控电流和磁感应强度乘积成正比的电势U,该电势即为霍尔电压,用UH表明,即UH=KHIB,其间KH为霍尔元件的灵敏度,半导体薄片便是霍尔元件。
同理有2块磁场相同的永久磁铁,同极性相对放置。当其表面积远远大于两者的距离时,正中心磁感应强度为O,在缝隙间沿z轴构成一个均匀梯度的磁场dB/dx=K(K为常数)。B=0处作为位移x的参阅原点,则x=O时,B=O,UH=O。当它们中心的霍尔元件移动到x处时,UH巨细由x处的B决议。由公式UH=KHIB可知:坚持I不变,则dUH/dx=IKHdB/dx=KHI=K,积分后得UH=Kx,即霍尔电势与位移成份额。磁场梯度越大,灵敏度越高,磁场改变越均匀,UH和x的线性越好。
本体系中的榜首部分由图3中的霍尔传感器设备供给,由霍尔元件(A44E)、差分扩大器和滤波器组成。其输出电压与霍尔元件位移成份额,具有较高灵敏度,能够发生出符合要求的电压信号。
2.2 模/数转化原理
该体系中的单片机是运用Atmel公司的AT89C51微操控器,与MCS一51单片机产品兼容,具有4 KB闪耀可编程可擦除只读存储器、1 000次擦写周期、32个可编程I/O口线、2个16位定时器/计数器、5个中止源、UART串行通道等特色。在规划中首要用它来操控传感器信号发生设备输出的模仿信号转化成数字信号,进行数据收集和显现以及串行通讯。
经过与规范量比较处理后的模仿量转化成以二进制数值表明的离散信号的转化器,简称A/D转化器。转化器的输入量一般为直流电流或电压,输出量为二进制数码的数字量。该规划中运用ADC0809转化器。进程如下:首要它能够将其当作由一个8位A/D转化器和一个8通道模仿多路开关组合而成,INO~IN7别离对应8路模仿量输人,由引脚ADDA,ADDB和ADDC决议详细是哪一条模仿量来进行转化。在引脚START和ALE上加1个正脉冲后,通道挑选码当即确定并一起ADC转化发动。转化开端后OE引脚加1个正脉冲,将输出缓冲器的三态门翻开,使转化后的数字量能够传送至数据总线。
2.3 数据收集和显现
扩大处理后的电压信号,虽然在幅值上达到了能够处理的规模,但模/数电压转化的规模是0~5 V,而传感器输出的电压存在负值,为了使电压匹配,信号电压在接人模/数转化器前能够加一级加法电路,将电压信号悉数转化为正值。扩大电路、滤波电路和加法电路均运用LM324完成,硬件电路如图4所示。
数据显现电路分为数码管显现电路和PC机显现 部分。数码管显现用于单片机上,单片机别离经过段显 码和位显码对数码管上显现的数据进行操控。段显码 操控显现的数据内容,位显码则操控数码管亮或灭。段 显码是单片机经过可编程通用并行接口8155逐位传到 8位移位寄存器74LSl64中去,再由它将串行传输数据 变为并行数据传给数码管显现。而位显码是单片机 经过8155一次性送到数据锁存器74L$244中锁存,再 去驱动数码管并操控其亮或灭。
2.4 串行通讯
该规划中选用异步串行通讯的办法。而AT89C51 单片机的串行口,当作业于办法1,2和3时,UART(通用异步接纳和发送)能够完成单片机体系与PC机之间的串行通讯。PC机串行通讯首要是经过串行口芯片8251完成的。8251有10个寄存器,端口地址从3F8H~3FEH(c0M1),能够经过对8251编程来指定通讯协议即通讯的波特率、数据位数、奇偶类型和中止位长度。别的因为Pc机串口的电平是RS 232电平,不与单片机串口的TTL电平兼容,因而需求在它们之间进行电平转化。传统的办法是运用MCl488将TTL电平转化成RS 232电平,用MCl488完成反向转化,因为MCl488需求±12 V电压,运用中十分不便利,故该规划选用MAXIM公司的产品片MAX232来完成,由单+5 V的电压供电,既可完成TTL到RS 232的电平转化,也可完成RS 232到TTL电平的转化,运用十分便利,详细的线路如图5所示。
3 软件完成部分
3.1 单片机部分
AT89C51系列单片机的串行口可作业于4种不同的办法。在该程序中,单片机串行口作业设定为办法1,即数据经TxD端发送,RxD端接纳,波特率2 400 b/s,10位构成一帧,l位开始位,8位数据位,1位中止位,初值0F3H,SMOD=1。
因为单片机多运用于实时性较强的操控场合,为了尽量少占用CPU的时刻,充分发挥CPU的功用。该体系在单片机程序规划中选用中止办法与PC机进行通讯。主程序只进行串行通讯、数码管实时显现、模/数转化成果的初始化和循环等候串行中止作业,当接纳到PC机发来的信号时,就转人中止服务程序,进行A/D转化,并向Pc机发送数据。中止服务子程序流程图如图6所示。
以下仅给出串行通讯初始化和中止服务子程序代码:
串行通讯初始化程序为:
3.2 PC机部分
在Windows中,串行口的硬件设备经过通讯驱动程序comm.drv与windows进行衔接,经过运用规范的windows API函数发送和接纳数据。而MSComm控件通讯功用的完成,是调用windows API函数,并经过设置其特点和事情,来界说windows通讯驱动程序的API函数接口,为运用程序供给了经过串行接口收发数据的简洁办法。
MSCOmm控件供给了2种处理通讯的办法:一是事情驱动办法,也便是运用OnComm事情,这是一种处理串行端口活动十分有用的办法,不只能够运用MSCOmm控件来侦测并处理通讯事情和过错,并且还具有程序呼应及时、可靠性高级长处;另一种办法是查询法,MSComm控件的C0mmEvent特点回来通讯中发生的事情和过错类型,由通讯控件主动检测和盯梢通讯状况后设置。因而能够直接读取CommEvent特点的值来检测通讯中发生的事情和过错类型,这种办法比较简单,常用在小的自含程序中。
该规划程序即选用查询法读取InBufferCount的特点值来接纳单片机发来的数据。试验主程序对串口初始化并画出坐标系;每单击‘绘点’键程序向单片机发送一个恣意数,告知单片机将模数转化成果发送过来,然后选用查询办法接纳该数据,进行相应的转化后把该点绘在坐标系上,一次数据收集完毕。
MSComm控件的常用特点:CommPort:设置并回来通讯端口号;SetTIngs:以字符串的方式设置并回来波特率、奇偶校验、数据位、中止位;Pott()pen:设置并回来通讯端口的状况也能够翻开和封闭端口;Input:从接纳缓冲区回来和删去字符;Output:向传输缓冲区写1个字符串。
该试验的Coml口串行通讯初始化程序如下:
从图7中PC机界面显现位移一电压坐标图,表1记载的数据以及图8在示波器上显现的霍尔线性电路抱负电压一位移曲线图相比较,能够发现因为传感器试验台受外界搅扰等原因使得输出信号输出差错在所难免,并且没有电平转化,使得VB绘图中得到的数值存在负值;可是能够在图中看到传感器输出的电压值在正负之间有显着的对称性,与要求输出的抱负输出信号波形相符合,证明本体系运转杰出,规划的十分成功。
4 结 语
关于现在广泛运用的WindOWs环境下完成PC机与单片机之间的通讯问题具有重要的参阅价值。