APP下载

基于AT89S51的粮仓温度测控系统设计

2012-10-08庞兴龙

制造业自动化 2012年9期
关键词:PC机控件电平

刘 健,庞兴龙

LIU Jian1, PANG Xing-long2

(1.北华航天工业学院 机械工程系,廊坊 065000 2.廊坊市环境保护局,廊坊 065000)

0 引言

粮食储备直接影响着国家的经济。检测粮仓温度,及时发现温度变化进行调整,以减少粮食损失是粮仓管理的重点。传统的通过人工使用温度计测量后再用设备加热、降温等来控制温度的方法,速度慢、准确度低,不易及时发现温度变化而会导致粮食大面积的变质,损失很大。随着计算机的普及和单片机功能的不断强大,由于操作简单、测量准确、价格低廉等优点而备受关注,被带入到控制检测行业中,推动了这一行业的改造、更新替换。本文就是利用单片机和PC机实现自动控制粮仓温度,大大提高了温度技术指标,具有广阔的发展前景。

1 系统方案

本设计的下位机采用单片机AT89S51八位机作为微处理单元控制,采集粮仓温度。温度通过转换保存到P1口。上位机选择PC机最合适,上下位机通过串口进行联络,下位机传送采集数据给上位机,上位机接收后,分析、处理并发送命令给下位机,实现人机交互。其中上位机选用VB6.0为开发软件,利用MSComm控件实现和下位机的通信,充分发挥两者的优点。又因为单片机和PC的串口电平不同,需要通过MAX232芯片转换单片机电平,整个设计的系统结构图如图1所示。

图1 系统结构图

2 下位机

2.1 单片机

单片机是温度检测系统的核心部分,因此选择单片机至关重要。目前国内MCS-51系列单片机是主流,它性价比高、技术成熟,迅速占领了市场。

单片机是把主要零件都集成到一块芯片,缩短了数据的传送距离,加快速度,可靠性更高,抗干扰能力强。在测控系统中,AT89S51低价,I/O口又多,程序空间大,是最理想的选择。AT89S51是高性能、低功耗,CMOS8位的单片机,含有4Kbytes可编程的Flash只读程序存储器,它兼容标准8051指令系统及引脚。它既可以在线编程也通用8位微处理器在芯片中,被灵活地用在各种控制领域里。图2为AT89S51引脚图。

各引脚功能说明:

VCC:电源+5V输入。

VSS:电源地端。

XTAL1:系统时钟的反相放大器输入端。

XTAL2:时钟的反相放大器输出端。

RESET:复位。重置引脚,对引脚电平提升到高电平并保持两个机器周期以上。

图2 AT89S51引脚图

EA/Vpp:外部访问。引脚接低电平后,系统用外部程序代码执行。

ALE/PROG:地址锁存器启用信号。触发外部8位锁存器,将地址总线(A0~A7)锁入。输出时钟或定时。:启用程序储存,利用PSEN及RD引脚分别启用存在外部的RAM与EPROM。

PORT0(P0.0~P0.7):端口0是一个8位双向I/O口, P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O口(P1、P2、P3)内部有一提升电路,P0在做I/O时推动8个LS的TTL负载。编程时,p0口接收指令,校验时输出指令字节,外接上拉电阻。

PORT1(P1.0~P1.7):和端口0一样,输出缓冲器推动4个TTL负载。

PORT2(P2.0~P2.7):P2除了当一般I/O口外,如果AT89S51扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这时P2不能当I/O口用。

PORT3(P3.0~P3.7):P3除了具有一般双向I/O端口外,还多工具有特殊功能,如串行口通信、外部中断控制、外部数据的读取或写入控制等。

P3.0:RXD,串行输入。

P3.1:TXD,串行输出。

P3.2:INT0,外部中断0输入。

P3.3:INT1,外部中断1输入。

P3.4:T0,计时计数器0输入。

P3.5:T1,计时计数器1输入。

P3.6:WR:写入外部数据存储器。

P3.7:RD,读取信号。

2.2 Max232芯片

Max232是一种把电脑的串行口rs232信号电平(-10,+10v)转换为单片机所用到的TTL信号点平(0,+5)的芯片。由于单片机和PC机串口的工作电平不一致,就需要MAX232芯片把下位机的电平转换成PC机的RS 232电平。图3为max232引脚图。

Max232芯片的内部结构分三部分:

第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,供给串口RS-232电平。

第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。

其中第一数据通道是13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)。第二数据通道是8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)。

TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT口送到电脑; RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。

第三部分是供电。15脚DNG、16脚VCC(+5v)。

图3 max232引脚图

2.3 硬件连接线路

通过前两部分介绍,可以得到如图4的单片机和串口连通图。图中通过MAX232芯片转换电平实现PC机和AT89S51串行通信,采用PC机和标准插座连通。MAX232电平转换,将单片机TXD端输出的TTL电平转换成PC机的RS-232C标准电平,由MAX232的14引脚通过9针接口送到PC机; PC机输出的标准电平,从 MAX232的13引脚输入转换成TTL电平,由单片机的RXD端负责接收。

图4 单片机和串口连通

3 上位机

Visual Basic 是由微软公司开发的事件驱动编程语言。VB源于BASIC编程语言。它拥有图形界面和快速应用开发系统,连接数据库方便,它提供串口通信控件,开发串行通信程序很方便。本文选择VB为上位机软件开发平台,选择MSComm控件完成上下位机通信。上位机的图形显示、处理等优点和下位机的实时数据采集都能充分体现。MSComm控件只要用户编写很少量的代码就能实现通信软件的开发。

MSComm控件是串行ActiveX控件,通过串口发送和接收数据,提供串行功能给应用程序。MSComm控件的具备如下特性:

1)CommPort属性设置通信端口。CommPort属性值设成1~16任意数(默认1)。

2)Settings属性设置初始化参数。字符串形式返回4个参数。格式:“BBBB,P,D,S”。

3)Portopen属性设置通信串口的开关状态,True时打开串口; False时关闭串口,并清空接收和发送缓冲区。

4)Input属性读取数据从缓冲区。

5)Output属性写入数据向缓冲区。

6)InputMode属性读取或设置读取数据格式, InputMode=O表示格式为文字;InputMode=1为二进制。

上位机主要任务是数据的接收和处理、发送控制命令、计算和显示等功能。其程序分为:设计界面、初始化、数据通信和数据处理。

上位机通信程序分为数据的发送和接收,分别写在两个Click事件下。上位机发送命令程序代码:

Private Sub cmdstart_Click()

Dim outdata(1)As Byte

Outdata(1)=&AA

Buf = “ ”

Buf=MSComm1.input

MSComm1.output=outdata

End sub

上位机接收命令程序代码:

Private sub cmdreceive_click()

Dim inbuf() as byte

Inbuf=MSComm1.input

Num=Ubound(inbuf)

Redim indata(0 To num) As Integer

For i=0 to num

Indata(i)=inbuf(i)

Next i

Fot j=0 To num

MSFlexGrid1.Col=0

MSFlexGrid1.row=j+1

M S F l e x G r i d 1 .Text=FormatMYM(indata(j).”0.0”)

Next j

End sub

4 结论

本文从硬件和软件两方面阐述了粮仓温度的测控系统。该系统以单片机AT89S51芯片为核心部件,配合了Max232电平转换实现和上位机PC机的连接和传输数据。选择了Visual Basic的MSComm控件来实现软件方面上下位机的通信。该系统成本低、操作简单、性能稳定,非常适合需要随时对温度监测的粮仓使用。

[1] 贾好来.MCS-51单片机原理及应用[M].北京:机械工业出版社,2006.

[2] 李玉峰.倪虹霞.MCS-51系列单片机原理与接口技术[M].北京:人民邮电出版社,2004.

[3] 高峰.单片微型计算机与接口技术[M].北京:科学出版社,2003.

[4] 林海军,杨进宝,汪鲁才,杨艳华. 基于复合RBFNN的数字温度传感器误差补偿方法[J].传感技术学报,2011,(02).

[5] 李自菊,雷正保,曾雁.基于制动系统的CST电控系统智能设计[J].交通科学与工程,2010,(02).

猜你喜欢

PC机控件电平
三电平PWM整流器下的地铁牵引供电系统探讨
基于.net的用户定义验证控件的应用分析
三相三电平PFC(VIENNA)控制策略研究
关于.net控件数组的探讨
基于三菱FXPLC的感应淬火机床与PC机的串行通信实现
三电平H桥逆变器差模干扰源研究
VC.NET下实现dsPIC单片机与PC机的通信
基于单片机与PC机的电气量采集系统设计
VIVID3彩色超声仪结构原理及维修
基于嵌入式MINIGUI控件子类化技术的深入研究与应用