基于AT89S51单片机机车故障显示屏测试仪的设计与实现

2016-09-08 09:23谢永超
电子设计工程 2016年13期
关键词:测试仪显示屏按键

谢永超

(1湖南铁道职业技术学院 湖南 株洲 412001;2.西南交通大学 四川 成都 612001)

基于AT89S51单片机机车故障显示屏测试仪的设计与实现

谢永超1,2

(1湖南铁道职业技术学院湖南株洲412001;2.西南交通大学四川 成都612001)

以AT89S51单片机为核心部件,实现了机车故障显示屏测试仪的硬件和软件设计。介绍了AT89S51型单片机与HS12864型液晶显示屏、A6微型打印机、串行输出模块等接口电路在机车故障显示屏测试仪中的应用,并以Keil C51为软件开发平台,用C语言编程实现液晶显示屏驱动,微型打印机驱动,串行输出模块驱动,按键扫描等功能。建立了比较友好的用户界面,通过按键选择功能模式,实现对机车故障显示屏工作性能的检测,为设备检修提供方便。

AT89S51单片机;机车故障显示屏测试仪;硬件设计;软件设计

自我国开通第一条电气化铁路以来,电力牵引的铁路运输在运输效率、能源消耗以及环境污染等方面的优势为各界公认。电力机车的安全可靠性也成为铁路发展的决定性因素之一。在电力机车实际运行过程中,机车故障显示屏有着十分重要的作用。它能够直观反应电力机车在运行过程中的各种设备的工作状况,及时给司乘人员提供设备状况信息,更好地保证电力机车的可靠运行[1-12]。

1 系统设计

机车故障显示屏测试仪是以AT89S51单片机为核心组成的测控系统。整个系统主要由电源模块、MCU控制模块、监控电路,按键电路、监控电路、串行输出模块、液晶显示模块、微型打印机构成。电源模块为机车故障显示屏测试仪的工作电路提供必需的工作电源,一共有2块输出电源模块。输入均为AC220V,输出为2路,分别为DC+5 V,DC+110 V,其DC+5 V为控制芯片提供工作电源,DC+110 V为模拟输出的信号电压;MCU控制模块则采用AT89S51单片机,具有32个I/O口,2个定时器,5个中断源,并带ISP程序下载功能,方便调试;复位电路采用MAX813L,在MCU上电、程序执行过程中出现的“跑飞”、“死循环”等情况下提供复位信号。上电时,/ RESET引脚自动产生200 ms的复位脉冲;手动复位端/MR输入低电平时,该端也产生复位信号输出;按键部分采用轻触式薄膜式开关,串行输出模块的数据传送采用74HC595,扩展MCU的I/O口,采用三线制数据传送方式,串入并出,并带锁存功能,信号输出则采用AQW214光电继电器,耐压等级高,驱动能力强,损耗小,可靠性高;液晶显示模块采用采用自带汉字库的HS128X64型液晶,并带背光显示。采用图形显示方式,程序结构简单,维护方便。可根据需要选择采用串得或并行数据传输方式;微型打印机选用A6系列的喷墨打印机,采用串行方式传送数据;接口电路相对较简单,驱动程序编写方便,结构美观,体积较小。系统方框图如图1所示。

图1 机车故障显示屏测试仪系统方框图

2 硬件电路设计

2.1电源模块

机车端子柜自动检测仪的电源模块共有两块,一块型号为XRA10/220S05,输入是AC220 V,输出是DC+5 V。主要为各芯片提供工作电源。另一块型号为XRA10/220S110,输入是AC220 V,输出是DC+110 V,用于测试信号工作。两个电源模块均为北京星原丰泰科技有限公司的产品。

2.2复位电路

在本系统中,采用MAX813L作为复位电路控制芯片,在MCU上电、程序执行过程中出现的“跑飞”、“死循环”等情况下提供复位信号。上电时,/RESET引脚自动产生200 ms的复位脉冲;手动复位端/MR输入低电平时,该端也产生复位信号输出。复位电路原理图如图2所示。

图2 系统复位电路图

图中MAX813L的第(1)脚与第(8)脚相连。第(7)脚接单片机的复位脚(AT89S51的第(9)脚);第(6)脚与单片机制P10相连。在软件设计中,P10不断输出脉冲信号,如果因某种原因单片机进入死循环,则P10无脉冲输出。于是1.6s后在MAX813L的第(8)脚输出低电平,该低电平加到第(1)脚,使MAX813L产生复位输出,使单片机有效复位,摆脱死循环的困境。另外,当电源电压低于限值4.65 V时,MAX813L也产生复位输出,使单片机处于复位状态,不执行任何指令,直至电源电压恢复正常,可有效防止因电源电压较低进单片机产生错误的动作。

2.3串行输出模块设计

数据传送电路(如图3所示)采用4块74HC595芯片级连,一共输出24个控制信号。4块芯片的锁存脉冲、移位脉冲信号均同步。芯片的SER为数据的输入端,QH'为移位数据的输出端,级连时与下一级芯片的数据输入端相连。由于级连级数受移位脉冲频率影响,因此由系统时钟决定可级连的级数。RCLK为移位脉冲输入引脚,SRCLK为锁存脉冲输入引脚,均为上升沿有效。/OE为芯片使能信号,低电平有效。芯片工作时,每来一个移位脉冲上升沿,数据右移一次,上一级的数据通过QH'输出至下一级的数据输入端SER。一共24个信号,因此共需移位24次。移位时数据的高位在前,移位完成后,给锁存脉冲信号,存储器输出所有信号。

图3 系统数据传送电路

2.4信号输出

信号输出则采用AQW214光电继电器,耐压等级高,驱动能力强,损耗小,可靠性高。采用光电隔离方案,能防止负载端的串电干扰,最大隔离电压为AC 2000 V。响应速度快,可满足高速传输。驱动能力强,最大可达120 mA,对于故障指示灯之类的负载是完全足够的,而且无机械式的触点,使用寿命很长。驱动电路原理图如图4所示。

2.5液晶显示模块

液晶显示模块选用的是成都飞宇达实业有限公司的HS12864液晶显示模块,模块内置了ST7920控制器,带有LED边光/底光,温度范围较广,属宽温型,无须外部提供液晶驱动电压,点阵数为128×64,具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;内置8192个16*16点汉字,和128 个16*8点SCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。液晶显示模块接口电路如图5所示。

图4 系统驱动电路原理图

图5 系统液晶显示模块接口电路

采用串行传输模式,节约I/O口资源。其中CS/RS为液晶模块的片选信号,SID为串行数据的输入端,CLK为串行时钟信号,A、K分别为液晶模块的背光电源,VOUT为显示的对比度调节。可根据使用环境的温度,调节RP1至合适位置。在系统初始化时,应有适应延时,待系统电源稳定后,才对液晶模块进行初始化,以免产生意想不到的错误。

2.6微型打印机

微型打印机选用的是北京炜煌科技发展有限公司生产的A6型微型热敏打印机,打印机与MCU的接口分为并行接口和串行接口。在设计中为节约I/O口资源,机车故障显示屏测试仪采用串行接口。使用时用户根据需要,将测试结果打印出来。微型打印机接口电路如6所示。

图6 系统微型打印机接口电路

2.7按键电路

按键电路采用柔性薄膜开关,美观,实用性强。按键检测采用中断方式,并进行多次采样,以确保有按键信号。当键被按下和放开时可能会出现电平状态反复变化称作键盘抖动若不作处理会引起按键盘命令,错误。所以要进行去抖动处理以读取稳定的键盘状态为准。当某个按键按下时输出一次键值后如果该按键还未释放该键值连续有效就像连续压按该键,因此在使用中采用延时控制,经再次检测仍有信号则为有效,以提高系统的可靠性。按键电路如图7所示。

图7 系统按键电路

3 软件设计

软件设计以KEIL C51为开发平台,利用C语言进行设计。Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外,Keil C51生成的目标代码效率高,多数语句生成的汇编代码紧凑。程序采用模块化结构,调试方便,易于维护。利用PROTEUS进行软件仿真,能够更直观地实现各接口的功能[13-15]。软件设计流程图如图8所示。

图8 系统软件设计流程图

4 结论

机车故障显示屏测试仪是为了检测机车故障显示屏工作状况而设计的,它能够模拟电力机车[16]的实际工作状况,输出设备检测信号[17]。检修人员可根据故障信号及其所对应的故障指示灯的状态,检测机车故障显示屏的好坏,为检修工作提供了很大的方便,也大大提高了检修工作的效率。

[1]戴仙金.51单片机及其C语言程序开发实例[M].北京:清华大学出版社,2008.

[2]余高翔,吴磊.基于ARM+LINUX嵌入式系统的机车走行部故障诊断装置[J].机车电传动,2010(2):50-53.

[3]侯婷,马子龙.车辆监控系统中数据传输新方法的研究和实现[J].仪器仪表学报,2006(6):552-553.

[4]孙严.基于ARM的机车运行监控装置的设计[D].哈尔滨:哈尔滨工业大学,2007.

[5]张建.单片机在执行器故障诊断的特征提取中的应用[D].北京:华北电力大学,2007.

[6]李光忠.基于单片机的温湿度检测系统的设计[D].济南:山东大学,2007.

[7]刘国保.基于嵌入式Linux系统的车载故障诊断应用系统构建[D].湘潭:湘潭大学,2007.

[8]高敏.基于ARM9的车辆制动检测装置的研制[D].成都:西南交通大学,2007.

[9]张肖曼.基于BP神经网络的机车走行部滚动轴承的故障诊断研究[D].北京:北京交通大学,2012.

[10]石凯.车辆监控系统数据存储方法及优化[D].北京:邮电大学,2014.

[11]侯晋瑞.车辆监控系统监控中心端设计与实现[D].成都:西南交通大学,2007.

[12]钟章队.GPRS通用分组无线技术[M].北京:人民邮电出版社,2000.

[13]嵌入式系统原理及应用开发技术[M].北京:北京航空航天大学出版社,2002.

[14]马忠梅.ARM&LINUX嵌入式系统教程[M].北京:北京航空航天大学出版社,2005.

[15]冯博琴,易萍雯.Turbo C++编程[M].北京:电子工业出版社,1994.

[16]杨会玲.HXD3型电力机车交流传动系统仿真分析[J].电子设计工程,2015(11):144-146.

[17]熊晓薇,郭宝增,武丽晓,等.基于FPGA的超声波无损检测信号处理研究[J].电子设计工程,2013(19):152-155.

Based on AT89S51 locomotive fault display tester is the design and implementation

XIE Yong-chao1,2
(1.Hunan Railway Professional Technology College,Zhuzhou 412001,China;2.Southwest Jiaotong University,Chengdu 612001,China)

Based on AT89S51 which is the core component,the hardware and software design of locomotive fault display tester are implemented in this paper.AT89S51 single-chip microcomputer is introduced with HS12864 type liquid crystal display, micro printer A6,serial output module interface circuit in the application of locomotive fault display tester,and the Keil C51 as the software development platform,which is used C language programming to realize LCD driver,miniature printer driver,serial output module driver,key scan,and other functions.The friendly user interface is establishment,through the selection of key function model,implement for detecting the working performance of the locomotive fault display,provide convenience for equipment maintenance.

AT89S51;locomotive fault display tester;hardware design;software design

TN9

A

1674-6236(2016)13-0157-04

2015-12-15稿件编号:201512163

广西省自然科学基金项目(2012GXNSFBA053167);湖南省教育厅科学研究项目(15B155)

谢永超(1984—),男,湖南邵阳人,硕士,讲师。研究方向:铁路通信系统。

猜你喜欢
测试仪显示屏按键
SDL Atlas推出第二代HydroPro耐静水压测试仪
使用快速水洗色牢度测试仪检测超细纤维脱落
一块布就是一个显示屏?
基于有限状态机的按键检测程序设计
苍蝇迷恋显示屏
便携式转辙机转换力测试仪
按键消抖在单片机和FPGA实验教学中的应用
LG申请欧盟商标 或布局MicroLED显示屏
基于单片机的PM2.5测试仪设计与应用
一种多方向导光按键结构设计