一种低成本的无线IRIG-H(DC)解码器
扫描二维码
随时随地手机看文章
摘要:基于ATmega8单片机设计出一种简单、可靠、低成本的H码(DC)解码器。通过标准RS485接口接收差分H码信号,信号经隔离后通过单片机解码程序处理,转换成标准时间码(时分形式)通过无线方式发送给其他设备。此设计增强了解码器的使用方便性以及时间数据及通信协议设计的灵活性,在实际应用中取得了满意的效果。
引言
在工业控制、电力和其他商业系统中,IRIG-H码的校时设备在系统时钟精度要求不高的场合非常适用,可利用其解码设备占用资源少、效率高的优势为其他设备提供统一校时。本文通过ATmega8单片机,根据IRIG-H码编制程序进行解码处理,转换出常用的标准时间格式。由于IRIG-H码每分钟一帧,低速和低数据量很适合无线通信使用。可通过无线方式发送时间数据,其他设备可通过无线接收其数据,校对自己的时间或进行其他应用。
1 系统原理分析
IRIG(Intcr Range Instrumentation Group)即靶场仪器组,它是美国靶场司令委员会所属的机构,它制定了IRIG-H时间码(简称H码),此标准时间码可以用来校正时间,与时统总站对时,也可以通过时间码对时统设备精确授时。IRIG-H以分钟为最小单位,可应用在路灯控制、农业灌溉、智能楼宇等方面。
IRIG时间码标准有两大类:一类是并行时间码格式;另一类是串行时间码。并行格式由于传输距离较近,因此没有串行格式应用广泛。串行时间码共有6种格式,即IRIG-A、B、D、E、G、H。它们的主要差别是时间码的帧速率不同,其中H码格式主要参数如表1所列。
IRIG-H码每个脉冲对应一个码元,每一个码元占用1 s的时间,根据脉冲中高电平时间不同,共分3种码元,如图1所示。码元信息“0”和码元信息“1”所对应码元的高电平分别为0.2 s和0.5 s,P码元的位置码元对应高电平时间为0.8 s,用于编解码的定位。
H码传送方式为一分钟一帧,H码的一帧时间信息如图2所示。可以看出每帧包括60个码元,其中P0、PR、P1、P2、P3、P4、P5为位置识别标志,参考码元PR后到下一帧的位置识别码元P0共60个码元,每个码元都对应相应的码元计数从0~59,可见位置码元PR后面是分、时等时间信息,因此PR码元是重要的基准参考码元。位置P1~P4中含有分一时一天的信息,P5可用来添加控制信息。
在解码时,若连续检测到两个位置码可知一帧开始。P0后1~9码元为无信息码元;第10~13码元表示分的个位,15~17码元表示分的十位,共7个码元;第20~23码元表示时信息个位,25、26两个码元表示时信息十位,共6个码元;第30~33、35~38、40~41各使用4个码元来表示天数的个位和十位,使用2个码元来表示天数的百位,共使用10个码元。将每年的1月1日定为第1天,全年共365天(闰年为366天)。后接控制位信息,第50~59共10个码元。其中14、24、34等码元为索引标志。一般应用只需检测到P4即可,以上时间信息采用二进制数表示十进制的编码,即十进制时间信息每一位十进制数用二进制数编码,表示次序由低到高,个位在前十位在后。
2 系统概述
无线IRIG-H码解码器可分为3部分:①信号转换模块;②MCU解码模块;③无线发送模块。H码解码器系统功能框图如图3所示。
信号转换模块是IRIG-H(DC)码数据首先经过的部分,信号输入后经过RS485电平转换电路转换成TTL电平,然后信号经隔离电路和波形整形电路输出至MCU解码部分。
MCU解码模块主要为B码信号提供解码处理,经过对信号的捕捉,通过软件处理,转换成标准时间格式,当然也可转换为需要的自定义时间格式。转换完成后,通过SPI接口,将解码后信号传递给无线发送模块。
无线发送模块主要是把时间信号和载波混合调制后,以射频形式发送出去,传输格式规约可以由MCU解码模块通过软件自定义,然后按定义好的规约发送无线信号,多个应用接收端可以按同规约接收并解析数据。
3 硬件电路设计方案
3.1 信号转换部分
IRIG-H输入接口如图4所示,H码DC信号通过U6芯片完成RS485电平转换成TTL电平;信号经电平转换后输出到高速光隔U4进行电气隔离,避免干扰信号或大能量冲击信号通过导线引入系统损坏后端系统;U11为电源DC—DC隔离器,隔离强度达2 500 V;最后信号通过施密特反相器U8输出更加稳定的方波。
3.2 MCU解码模块电路图
MCU解码模块中使用了Atmel公司的ATmega8芯片,它是性能较好的RISC结构的8位单片机,有8 KB的内部可编程Flash存储器,两个串行USART口,可工作于主从模式的SPI串行接口,独立片内看门狗定时器,以及10位ADC等丰富强大的硬件接口电路;封装较小为TQFP-32封装,价格较低,采用低功耗CMOS工艺生产性能较好。综上所述功能其很适合做本设计主控芯片。
ATmega 8原理图如图5所示,使用外部7.372 8 MHz晶振,使用内部定时器T0作为检测码元计时。图5中LED2作为工作状态指示灯,显示当前模块运行状态;单片机PD2(INT0)引脚接至信号转换模块的输出,当输入信号电平由低变高时(上升沿)产生中断,使用内部定时器T0开始计时。当信号电子由高到低时(下降沿)产生中断,此时定时器停止,并计算计时器时间,按照图1即可解码出B码码元信息对应的数据。引脚PB3和PB4是SPI接口的通信收发脚,接至无线发送模块作为解码数据的传递接口,单片机通过自定义规约把时间数据通过SPI接口传递出去。
4 无线发射部分线路图
无线发射部分选用nRF905无线芯片,它是NORDIC公司出品的低于1 GHz无线数传芯片,主要工作于433 MHz、868 MHz和915 MHz的ISM频段。芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置,非常适合于低功耗、低成本的系统设计。这里采用SPI接口和ATmega 8主控芯片通信,使用433 MHz通信,nRF905接收到时间数据后,调制到载波上,通过天线发送无线数据。此部分操作简单,可靠性较高,且有较高的性价比。无线传输部分电路如图6所示。
5 系统软件设计
在单片机软件设计中,定义三个字节数组Time[3]存放时间信息数据,即“分”、“时”、“天”。满1分钟后,中断接收全时间信息,并进行译码转换,完成转换后置时间发送标志为1,在主循环中查询是否有时间发送标志置1,如果是则通过SPI接口发送数据给无线模块部分进行无线发送。由于IRIG-H码每分钟一帧,所以无线发送部分有足够的时间进行无线通信协议处理,如主机无线发送广播包给设备,则接收设备返回确认帧,以保证通信可靠。软件主流程图如图7所示。中断处理流程图如图8所示。
结语
此无线IRIC-H码解码器设计简单,所用器件较少,性能稳定,并且能够可靠地提供准确的时间信息。其具有成本低、开发周期短等优点,C语言编写解码程序在传输协议上具有灵活性,无线通信接口有较好的可安装性和可扩展性。