基于I2C总线的电气化铁路导线磨耗仪的设计与应用
摘 要:本文简要介绍了基于内部集成电路总线I2C的电气化铁路导线磨耗仪的设计与应用。在开发电气铁路导线磨耗遥测仪的过程中,通过使用I2C电路和单片机AT89C52的I/O口,可以控制DS1307、AT24C256和IC卡。这种设计方法缩短了开发周期,提高了系统的整体稳定性。
关键词:导线磨耗;I2C电路;AT89C52;电气化铁路
引言
接触网断线问题一直是困扰电气化铁路牵引供电设备安全的主要问题;同时,这也是接触网系统各检测项目中的难点。导线磨耗遥测仪的研究就是针对此问题,利用CCD(电荷耦合器件)作为传感器,利用微控制器进行控制与数据传输,配合PC机构成的一套智能检测系统。
本文设计的电气铁路导线磨耗遥测仪,采用测量导线磨耗残存高度的方法,比较好的解决了接触网带电测量的问题。
导线磨耗仪系统结构与原理
导线磨耗目前比较典型的测量方法主要有以下三种:测量接触导线的磨耗滑面宽度;测量导线截面积;测量接触导线的残存高度。
通过分析对比,我们选择了测量导线磨耗残高的方法。这种方法具有以下优点:
(1)由于接触线磨耗面有波状磨耗、局部磨耗,表面状态各异。采用反射法测残面高度,不可避免的存在反射光不均匀,凹陷处反射特性很差,因此必然造成目标边缘模糊。而且反射法的检测精度受接触线高度影响较大,高悬挂点处磨耗检测值精度随距离增大而降低,对偏磨更是无能为力。而本文法则能很好解决这一问题。
(2)精度高:采用本方法,测量精度可小于0.05mm。
(3)检测直观:我国限于检测手段,只能用卡尺测量残高。所以这种方法检测直观方便、不必进行换算。
便携式导线磨耗带电遥测仪分为检测装置、地面接收机和上位机三部分。检测装置由光学照明系统、光学成像系统、CCD阵列及驱动电路、光电信息处理电路、稳功率电源、调制发射电路等组成。其结构框图见图1。
测量时,光学照明系统产生一束均匀的平行光,从接触线侧面平行射入,线高经光学成像系统映射在CCD线阵靶面上,并在线阵响应的像元中获得一定宽度的脉冲信号。该信号经光电信息处理后变成二进制信号,经调制后发射出去。
地面接收装置由红外接收电路、解调电路、单片机、串行口等组成。结构框图见图2。
地面接收装置将接收到的特征信号解调后,经单片机系统计算出导线残留高度及磨耗百分比,显示在LCD上,也可通过串行口上传到PC机中。上位机是安装有Windows 9x/2000操作系统的PC机,本设计使用微软公司的Visual C++ 6.0编写数据接收、处理、存储和显示的程序,界面友好,简洁易用。
I2C总线及其硬件设计
I2C总线原理
I2C总线通过一根数据线SDA和一根时钟线SCL实现全双工的同步数据通信。同一总线上可以连接多个带有I2C接口的器件,每个器件都有一个唯一的地址,既可以是单接收的器件,也可以是能够接收发送的器件。发送器或接收器可以在主模式或从模式下操作,这取决于芯片是否必须启动数据的传输还是仅仅被寻址。I2C还是一个多主总线,即它可以由多个连接的器件控制。图3显示了I2C总线上的数据稳定规则,图4是I2C总线的起始位和停止位。
每次数据传输都是以一个起始位开始,而以停止位结束。传输的字节数由主机决定,没有限制。最高有效位MSB将首先被传输,接收方收到第8位数据后会发出应答位。数据传输通常分为两种:主机发送从机接收和从机发送主机接收。这两种模式都需要主机发送起始位和停止位。应答位由接收方产生。从机地址一般是1或2个字节,用于区分连接在同一I2C上的不同器件。
I2C相关硬件设计
本导线磨耗仪系统中有三个部分带有I2C接口,分别是实时时钟芯片DS1307、串行EEPROM AT24C256和IC卡AT24C16。
DS1307内部具有地址指针,每次读写操作之后会自动加1,到达存储器的末尾(3FH)会翻转为0。时间信息的地址是00H~06H,因此读取之前应先向3FH中写入一个字节的数据,以便将地址指针复位到00H。
AT24C256是带I2C电路的串行EEPROM,对AT24C256写操作可分为字节模式和页模式。如果采用字节模式,主机在发送从机地址(1字节)和字地址(2字节)之后,再送出1字节的数据,而后EEPROM返回应答位,主机以停止位结束操作。然后AT24C256进入自定时的写周期,将收到的数据写入非挥发性的存储器,此时对于任何的输入都不会作出响应。而页模式的初始化过程与字节模式相同,在收到第1个数据字节的应答位之后,主机并不产生停止位,而是继续发送数据,每页最多包括64个字节。每收到1个字节的数据,EEPROM都会返回应答位,直到主机产生停止位结束操作。AT24C256读操作的初始化过程与写操作基本相同,只是从机地址的最低位设置略有差别。
IC卡AT24C256具有2K字节的EEPROM。由于带电插拔可能会对IC卡造成损伤,因此需要在硬件和软件两方面对它的电源进行控制。如果有卡插入,卡座内部的按键被按下,通知主机可以进行检测。主机应首先检查插入的卡片是否会将电源Vcc与地GND短路,若没有问题可以打开IC卡的电源,否则提示插入的是废卡。如果插入的卡片是已经击穿的坏卡或者金属片,不经检测就打开电源会造成供电回路的短路,严重时甚至导致整个系统损坏。单片机的I/O口通过一个小功率三极管控制IC卡的电源开关,每次插卡并检测后接入5V电源,读写完毕后应及时切断,以便IC卡的拔出。
软件设计
导线磨耗遥测系统的软件主要分由主控制程序、接口程序、辅助程序、上位机软件等几部分组成。
(1)导线磨耗系统的主控制程序控制整个系统的流程,主要完成程序的初始化、中断方式的设置、计数器的工作方式的设置及相关子程序的调用。主控制程序除了管理资源、控制各模块、处理数据外,还包括开机界面的六个显示子菜单:测量温度、参数设置、查看记录、上传数据、时钟和休眠。
在数据处理算法方面,则使用采样取平均的方法。在对查表得到温度值的基础上,与室温比较,并进行距离、辐射率的补偿。
(2)接口程序即各个接口的驱动程序,包括存储器、时钟、液晶、键盘、串口、ADC、时钟和定时器。每个接口程序都应分别进行调试,按照协议编写,注意时序问题。I2C电路可根据其接口时序进行调试。由于AT89C52单片机资源有限,所以需要注意资源的管理。
(3)辅助程序主要是字模提取和写入,包括图像图标和文字的字模提取与保存,图象的旋转、缩放、平移、反显,颜色与大小的修改等。
(4)上位机软件可以用VC或VB编写,由串行端口控件MSComm来为应用程序提供串行通信,打开串口、读取数据、存储和显示。上位机软件还可以统计数据、连接数据库和远程管理。数据库可以使检测记录格式统一,便于集中处理。远程管理可以加快数据传输速度,节省时间,减少事故发生的机会。
另外,由于这套系统要长期在野外工作,对稳定性要求较高。除了设置硬件看门狗外,还在编程时增加了许多软件陷阱,使得程序必要时可以迅速复位。
结语
I2C总线电路结构简单,符合系统设计向小型化低功耗方向的发展趋势。在软件方面,由于使用平台模式的VIIC软件包,保证了在较短的时间内开发出高稳定性的驱动程序。
本导线磨耗带电遥测仪基于I2C总线设计,可以快速准确的带电遥测输电导线残高,并能够自动计算和存储,还可保存环境温度、电源电压与时间信息。具有操作简单、界面友好、易扩充等优点,对促进电气铁路的管理科学化具有重要的应用和推广价值。