目前,单片机开发的产品广泛应用于家电、通信、工商业、航空业、智能仪表、航空和军事等方面。应用在智能仪器仪表上的单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密的计量设备(功率计,示波器,各种分析仪).其中典型的AT89S51系列芯片通用性强、廉价、设计灵活且能满足需要,因此在在铁路计量系统中有着良好的应用前景。

1 AT89S51单片机的基本结构

AT89S51系列单片机共有40个引脚,内部集成CPU、存储器和输入,输出接口等电路,其引脚定义及排列如下:

1.1CPU:AT89S51采用8位2进制代码运算。

1.2内部数据存储器:共有256个RAM单元,提供运行内存。

1.3内部程序存储器:4KB掩膜ROM,提供程序存储。

1.4定时器:2组16位,实现定时或计数功能。

1.5可编程I/O口:4组8位I/O口(PO、Pl、P2、P3)。

1.6串行信号:实现全双工通信。

1.7时钟电路:晶振频率决定单片机内部运行速度。

2 AT89S51单片机的优势

2.1性能强大

AT89S51具有完整的输入输出、控制端口、以及内部程序存储空间。与我们通常意义上的微机原理类似,可以通过外接A/D,D/A转换电路及运放芯片实现对传感器传送信息的采集,且能够提供以点阵或LCD液晶及外接按键实现人机交互,能对内部众多I/O端口连接步进电机对外围设备进行精确操控,具有强大的工控能力。

2.2易于学习

AT89S51系列单片机编写程序的基本流程。其语法结构与我们常用的计算机C语言基本相同,不同之处在于增加了控制具体引脚工作的语句和命令,相对于计算机C语言,单片机C语言更简练和明确.可以控制每个引脚的输入输出状态。其主要语句集中在例如:“ifelse”、“while”、“for”等循环与判断语句上,相比计算机C语言更简单。有过计算机C语言学习经历经过一段时间的熟悉就能够熟练进行编程.

使用AT89S51系列单片机编程,可以在没有实物单片机的情况下在普通电脑上进行程序编写甚至是调试工作。一般工作中使用Keil公司开发的51单片机编程软件进行编程,它采用目前流行的开友环境,集编辑,编译和仿真于一体。在该软件上用户可以编写汇编语言或C语言源程序,并利用该软件生成单片机能运行的程序。

2.3价格低廉

AT89S51芯片价格便宜,适合对大批量的计量仪器进行规模化改造,其单片售价不超过5元。

3 目前铁路计量仪器的现状

相对于通用计量器具,铁路专用计量检定仪器有其特殊性,具体表现在如下几个方面:

3.1自动化程度低

铁路专用计量检定仪器由于用途特殊,数量少,处于成本因素所以很少有计量仪器生产公司对其进行改造.造成铁路专用计量设备自动化水平一直得不到提高。

3.2检定过程人为因素较多

自动化程度较低带来的结果就是检定过程不可避免的带来人员的影响,仪器使用人员对检定规程的的理解程度及仪器操作的熟练程度都会对最终的测量结果带来影响。

3.3检定过程耗费大量人力

在力学、长度的计量设备中很多器材需要人工搬动,挪移才能完成检定过程,造成人力的不必要的浪费。

4 AT89S51单片机在铁路计量中的应用

对于铁路计量仪器的现状,AT89S51的应用能解决这些存在的问题。使用单片机C语言对AT89S51进行编程,对照计量检定规程将所要求的项目转换为C语言流程,采用适当的传感器与步进电机.取代人工、人力操作,消除由于检定过程不规范或人员因素引起的误差。

5 AT89S51计量仪器自动化改造实例

通过一个实例简要介绍利用AT89S51单片机在计量检测过程自动化改造中发挥的作用,实验选取车辆段与机务段经常使用的扭矩扳手检定仪型作为改造对象。未改造前整个检定过程是人工作业,受到使用人员的经验以及扭矩手柄转速的影响,检定结果误差较大。利用AT89S51单片机对其进行改造,目标为排除人员因素的干扰.全自动检测并给出检定结论。

根据《JJG(铁道)113-1999铁路扭矩扳手检定规程》的要求,铁路扭矩扳手的主要技术指标为:

1)示值相对误差=(M-M)/M*l00%

2)示值重复性=M*l00%

检定中标准装置三次指标最大值和最小值。M为检定中标准装置三次示值的平均值。

5.1实验步骤

实验装置:AT89S51最小系统板,16MHz晶振.4位共阳极数码管,四相六线制步进电机.ULN2003驱动芯片,ADC0809运放芯片.标准数字触点按键键盘.

在本实验中:AT89S51最小系统板采用工控封装的插针式芯片电路,将所有40条对应针角引出;16MHz晶振提供时钟运频率;ULN2003驱动四相六线制步进电机并与单片机对应引脚连接:ADC0809运放芯片负责扭矩传感器的模拟/数字转换:4位共阳极数码管用于输出检定结果与实时扭矩:四相六线制步进电机用于精确控制扭矩转轮施加扭矩。

当编写完程序生成C语言的可执行程序并仿真无误时,需要使用下载器将其烧录进芯片中进行实验。

5.2实验数据分析

实验结果的评定

评定测量结果是否满意,使用“贝塞尔”公式进行实验标偏差的估算:


5.3结论

实验标准差作为最终的测量不确定度U的重要来源,其值越小代表计量仪器所具备的精确度越高,对比改造前后,获得了满意的效果且大大节约了人力和时间,检定结果也相对更加准确。

6 AT89S51的深度开发