APP下载

智能电能表中的ESAM通信设计

2016-08-11李明华

无线互联科技 2016年11期
关键词:低电平高电平字符

李明华

(江苏华源仪器仪表有限公司,江苏 南京 211100)

通信观察

智能电能表中的ESAM通信设计

李明华

(江苏华源仪器仪表有限公司,江苏 南京 211100)

目前,广大居民用户所使用的电能表,基本均为2000年以后安装的电能表,在业内被称为“智能电能表”,其核心部件—智能表安全模块在智能电能表中扮演着非常重要的数据安全角色。为此,在程序设计中如何正确把握其优势,最终提高产品智能化,优化产品智能方案的组合,智能模块的通信设计是至关重要的一部分。

智能电表;安全模块;通信设计

智能表安全模块,简称电能表ESAM(Embedded Secure Access Module,嵌入式安全控制模块),是一种具有普遍安全应用价值的嵌入式数据安全产品。芯片集成了国密算法SMI单元、硬件随机数发生器、电压和频率检测等安全保护机制,可有效地保证传输数据的机密性和完整性。

智能电能表中采用的ESAM模块, 是一种数字式的安全通信模块,其工作特点符合集成电路卡的标准《IOS/ IEC7816-1/2/3/4》,即ISO7816接触式协议(卡上有金属触点的)通信模块,也就是常说的7816协议。由于7816协议相对来说比较复杂和难以理解,所以程序设计中的MCU和ESAM模块的数据交互是智能电能表设计中的难点。本文主要讨论通讯设计中的注意事项。

1 7816接口信息的交换

1.1冷复位

按照图1冷复位所示,在Ta时刻启动CLK,在Ta后的不超过200个时钟周期内,ESAM将其I/O置为接收模式。同时ESAM上的I/O应确保在Ta后最迟不超过200个时钟周期内,保持高电平。当脉冲信号加到CLK后,从Ta开始至少保持400时钟周期(Tb),通过RST端保持在低电平状态来复位ESAM。

图1 ESAM冷复位

输入/输出端口I/O上的复位应答,是在Tb时刻,复位端RST为高电平的状态下,在RST上信号的上升沿之后的某一个时钟周期内开始,其时钟周期在400和40000时钟周期段(tc)(时间段tc在Tb之后)。如果在400和40000时钟周期内,复位应答信号仍未开始,则RST上信号必须从高电平返回到低电平状态,且接口设备必须按照图2所示,停活要求准许将电路停活。

图2 RST信号复活

1.2停活

电信号交换结束或放弃时,接口设备应如图2所示,停活所示下列顺序停活电路:

(1)RST被置为状态L;(2)CLK被置为状态L(除非时钟已停止在状态L上);(3)I/O被置为状态L;(4)VCC被停活。

1.3复位应答

复位应答ATR(Answer To Reset)是以初始字符TS为首的一系列字节,ESAM通过对这些字节的传输,将接口设备复位命令的响应发送给接口设备的,从而规定了ESAM和接口设备之间即将建立的通信的特性。ATR数据定义如图3所示。

图3 ATR数据定义

(1)TS:初始字符,必备的,向接口设备提供一个便于位同步的已知位模式并指定了解释如何解码后续字符的协议;TS 有两个状态值,一个是反向约定解码时传输的字节;另一个是正向约定解码时传输的字节;(2)T0:格式字符,必备的,由两部分组成;分别表明第一组接口字符和历史字符的个数;其高4位有几个bit为1,则表示后续有几个历史字符TA(i)TB(i)TC(i)TD(i)…接口字符,任选的,当TA (i)主要描述波特率(Fi / Di);TB(i)表示编程电流 I /电压 P;TC2是专用接口字符;TD(i)由两部分组成,当位b8到b5构成Y(i+1):每个等于1的位指明接口字节的存在。位b4 到b1构成参数T的值;(3)TCK:校验字符,有条件地,检验复位应答期间所发送数据完整性的值。

1.4字符帧

每一个字符传输时都是以起始位开始,停止位结束,在起始位上I/O被以低电平(逻辑值0)来标识,如图4所示字符帧结构所示,接着字符后面的是校验位,最后是停止位,停止位后面是不定时长的空闲位,停止位被规定为高电平(逻辑值1),这样就保证了每一个字符起始时有一个明显的下降沿,在传输一个字符时共有8个时间段,每个时间段不是处于高电平状态,就是处于低电平状态。

图4 字符帧结构

(1)起始位“m1”处于低电平状态。

(2)m2~m9八个时间段传输一个字符。

(3)m10是“奇偶校验位”,8个数据位和奇偶校验位自身均作为校验计算位,但起始位不作校验计算。

(4)在每个字符中,从起始位的上升沿到(停止位)第n位的下降沿之间的时间延迟是tn=(n±0.2)etu。

(5)发送方的时间起点是字符的起始沿。接收方的时间起点是在高电平状态转向低电平状态的中间。为此,接收方在对I/O定期采样时,采样的时间应少于0.2etu。

(6)接收方应在0.7etu(接收方时间)之前确认m1,然后分别在(1.5±0.2)etu;在(2.5±0.2)etu……. 8.5±0.2)etu;(9.5±0.2)etu收到m2,m3,……m9,m10。

(7)字符奇偶校验在字符帧传输结束后进行。

(8)两个连续字符起始位和停止位的下降沿与上升沿之间的最小时间间隔应当不少于12etu,例如,一个字符的持续时间(10±0.2)etu加上保护时间(2±0.2)etu。在保护时间,接口设备和ESAM都保持接收状态,因此I/O状态为高电平。

(9)在复位应答期间,两个连续字符之间的最大“初始等待时间”不应超过9600etu。

注:1etu=372/f(其中f为时钟CLK频率)。

1.5命令的结构和处理

ESAM在发出过程字节的控制下传输数据字节,这个过程,均由IFD(接口设备)发出的5个字节的APDU命令来发起,APDU命令头是由5个字节组成,分别约定为:CLA、INS、P1、P2、P3。其中CLA、INS、P1、P2的参数是由ISO/ IEC7816-4部分定义。

(1)CLA:指令类别;(2)INS:指令类别中的指令代码;(3)P1、P2:是一个完成指令代码的参考符号;(4)P3:对命令期间被发送的数据字节D(1)~D(n)的数目n进行编码,指明了发送给ESAM的命令的字节长度或期待ESAM响应的最大数据长度。

接口设备发送完命令头之后,应等待一个由ESAM发送的过程字节,过程字节由ESAM发送,它的值将指明接口设备下一步该做什么。已规定了3种类型的过程字节:

(1)值为“60”,为 NULL,这将要求不进行数据字节的传送。IFD接口设备应该等待ESAM传输下一个过程字节;(2)当值除“6X”和“9X”以外,为一个ACK字节时。则表示运送所有剩余字节,然后IFD接口设备应该等待ESAM传输下一个过程字节;(3)当值等于“6X”和“9X”,则为SW1,除“60”之外,要求不进行数据字节的传送。然后IFD接口设备应该等待ESAM传输下一个SW2字节。这里对SW2的值无限制。

就每一个过程字节而言,ESAM可以由一个ACK或NULL字节来使命令继续进行下去,当接收到SW1后将等待下一个过程字节或状态码SW2,由结束序列SW1,SW2来结束这个命令,或变成不响应来表示不赞同。

SW1,SW2构成结束序列,结束序列在命令的结尾指示ESAM的状态。SW1,SW2=“9000”表示正常结束。

1.6注意事项

(1)当ESAM电源处于上升、下降或低电平阶段时,必须保证I/O、RST、CLK引脚信号为低电平。

(2)一个字符的误差必须限制在±0.2etu之内。

(3)为了检测到ESAM或接口设备的差错信号,发送方必须在字符起始沿之后(11±0.2)etu(发送方时间)校验I/O电路的状态。

(4)接口设备给ESAM或卡片发送命令帧CLA前,需增加20etu的延时等待时间(包括取响应命令帧00 C0 00 00 LC),以保证ESAM或卡片有足够的时间处理上帧命令。

(5)接口设备对ESAM进行冷复位时,一定要保证ESAM电源电压稳定后,再操作CLK,I/O和RST信号,禁止在电源电压上升期间进行CLK,I/O和RST信号处理。

2 驱动程序流程

(1)单字节接收:如图5所示,单字节接收流程图;单字节发送:如图6所示,单字节发送流程图。

图5 单字节接收流程

图6 单字节发送流程

(2)复位:复位流程如图7所示。

图7 复位流程

(3)驱动流程:驱动流程如图8所示。3 结语

图8 驱动流程

7816通信设计是智能电能表设计中的难点,在2009版标准中,由于没有完整的芯片手册、各个电能表制造厂家在设计中,均参考了《ISO7816-3接触式卡智能卡的电信号和传输协议》以及国家电网标准《Q/GDW365-2009智能电能表信息交换安全认证技术规范》,做得都比较松散和宽泛,很容易导致兼容性的问题发生。2013版标准芯片手册对于时序作了很严格的要求,在设计13版标准的智能电能表中的7816通信时,一定要完全按照芯片手册的要求进行设计,以避免兼容性的问题。

Design of ESAM Smart Meter in Communication

Li Minghua (Jiangsu Huayuan Instrument Co., Ltd., Nanjing 211100, China)

Currently, the majority of residential customers meter used, are substantially after 2000 meter installed in a very important industry known as "smart meter", the core components of smart meter security module plays in the smart meter data security role to this end, the program design how to properly grasp, and ultimately improve product intelligent, optimized combination of intelligent solutions,design of intelligent communication module is a vital part .

smart meter;security module;communication design

李明华(1958-),男,江苏盐城。

猜你喜欢

低电平高电平字符
一种基于FPGA的PWM防错输出控制电路
铁道车辆高/低电平信号智能发生器设计
字符代表几
一种USB接口字符液晶控制器设计
TS-03C全固态PDM中波发射机开关机控制电路原理及故障分析
2017款凯迪拉克2.8L/3.0L/3.2L/3.6L车型低电平参考电压总线电路图
消失的殖民村庄和神秘字符
DM 50KW中波广播发射机欠推动故障分析
PDM 1kW中波广播发射机保护电路分析
15-MeV电子直线加速器的低电平系统