ST75MM电力线通信片上系统使用指南

电子说

1.4w人已加入

描述

ST75MM电力线通信片上系统使用指南

在电力线通信领域,ST75MM电力线通信片上系统是一款备受关注的产品。本文将依据其用户手册,为电子工程师详细介绍ST75MM的使用方法,包括主机接口、命令、管理信息库(MIB)以及配置等方面的内容。

文件下载:ST75MM.pdf

一、主机接口

1.1 接口设置

主机接口用于将ST75MM与主机控制器连接,实现数据、配置和控制消息的交换。主机控制器通过半双工异步串行端口(UART)加上额外的同步信号TREQ来管理该接口。具体配置如下:

  • 2线UART端口设置为(57600, 1, N, 1),无流控制。
  • 单线路推挽输出(TREQ线)。

1.2 操作方式

通信链路为半双工串行链路,采用主从通信模式,ST75MM作为通信的主设备。当ST75MM内部触发事件(如接收到PLC帧、完成请求活动或出现错误/警告事件)时,会自动立即通过串行链路将信息发送给主机控制器。主机控制器需持续监控UART端口,解码检测到的帧并向ST75MM发送确认消息。当主机控制器需要向ST75MM发送命令时,需将TREQ信号拉低,等待ST75MM发送“状态消息”(SM),检测到SM后再发送消息请求。ST75MM会立即以确认字节响应,若命令需要进一步通信,会在操作完成后作为内部触发事件发送结果。

1.3 确认机制

为提高串行链路的健壮性,除SM外的每个帧都必须在给定的TACK时间内得到接收方的确认,否则发送方会重复发送一次相同消息。若第二次发送后仍未收到确认,发送方将丢弃该消息,不再重复发送。确认字节仅与帧的格式相关,不反馈命令的有效性或执行情况,有0x06(ACK,表示接收命令格式正确)和0x15(NAK,表示接收命令有错误,如长度或CRC错误)两种值。

1.4 命令帧格式

命令帧格式如下: Starting Byte Field Size Value Description
0 Frame start 1 0x02/ 0x03 标记命令开始,重复消息用0x03,主机控制器收到以0x03开头的消息需验证是否已接收过
1 Length 1 Any 第一个字节后的有效负载字节数
2 Command code 1 Any 标识要执行的命令
3 Payload 1...256 Any 包含与命令相关的参数
Length + 4 Checksum 2 Any 长度、命令代码和有效负载字段的和,以16位值表示,MSB优先发送

1.5 状态消息帧格式(SM)

SM的格式如下: Starting Byte Field Size Value Description
0 SM start 1 0x3F 标记SM的开始
1 Modem status 1 Any 位掩码显示ST75MM调制解调器的状态
2 MIB status 2 Any 位掩码显示哪些MIB对象已被主机控制器重新配置

1.6 TREQ管理

主机控制器要向ST75MM发送命令时,先将TREQ线拉低,等待SM帧。SM帧开始后,主机控制器将TREQ线拉高,收到完整SM后,验证PLC Busy标志是否禁用。若禁用,主机控制器在TSR时间内发送命令,并在TACK时间内等待ST75MM的确认字节。若未收到确认字节,主机控制器可发起新事务,以0x03作为帧起始字节重新发送命令。

1.7 操作示例

文档中给出了DL_DATA_SLAVE.indication、MIB_Write.request和MIB_Read.request等操作的示例,展示了不同情况下主机控制器与ST75MM之间的通信流程。

二、主机接口命令

2.1 可用命令

Command .request (positive) .confirm .indication (negative) .confirm Description
MIB_Write 0x08 0x09 0x0A 0x0B 修改特定MIB对象的值
MIB_Read 0x0C 0x0D 0x0F 读取特定MIB对象的当前值
DL_DATA_SLAVE 0x26 通知通过电力线接收到的数据
HI_Ping 0x2C 0x2D 用于监测串行链路和调制解调器的健康状态
HI_Error 0x36 通知接收到未知命令
BIO_Reset 0x3C 0x3D 0x3E 0x3F 触发软件复位或通知内部触发的复位事件

2.2 错误代码

Value Error Description
0x02 WPL 错误的参数长度
0x03 WPV 错误的参数值
0x04 BUSY 执行操作的子系统繁忙
0x06 NOT_PRESENT 执行操作的子系统不存在或未连接
0x07 DISABLED 执行操作的子系统被禁用
0x08 TIMEOUT 操作未在规定时间内完成
0xFF ERROR 通用错误

2.3 MIB_Write命令

由主机控制器发起,请求修改特定MIB对象的值。请求消息的有效负载包含MIB对象索引和预期的新值,确认消息携带操作成功信息。ST75MM调制解调器在特定MIB对象因内部状态、事件或PLC请求改变值时会发出指示消息。

  • MIB_Write request:由主机控制器发出,命令代码0x08,有效负载大小可变,包含MIB对象索引和MIB内容。
  • MIB_Write positive confirm:由ST75MM发出,命令代码0x09,有效负载大小1字节,包含MIB对象索引。
  • MIB_Write negative confirm:由ST75MM发出,命令代码0x0B,有效负载大小1字节,包含错误代码。
  • MIB_Write indication:由ST75MM发出,命令代码0x0A,有效负载大小可变,包含MIB对象索引和MIB值。

2.4 MIB_Read命令

由主机控制器发起,请求读取特定MIB对象的当前值。请求消息的有效负载指定MIB对象索引,确认消息包含MIB对象索引和当前值。

  • MIB_Read request:由主机控制器发出,命令代码0x0C,有效负载大小1字节,包含MIB对象索引。
  • MIB_Read positive confirm:由ST75MM发出,命令代码0x0D,有效负载大小可变,包含MIB当前值。
  • MIB_Read negative confirm:由ST75MM发出,命令代码0x0F,有效负载大小1字节,包含错误代码。

2.5 BIO_Reset命令

用于主机控制器强制对ST75MM调制解调器进行软件复位,或在开机、硬件复位后,以及ST75MM调制解调器达到不稳定状态并内部触发软件复位时进行通知。

  • BIO_Reset request:由主机控制器发出,命令代码0x3C,有效负载大小1字节,保留位设置为0。
  • BIO_Reset positive confirm:由ST75MM发出,命令代码0x3D,有效负载大小1字节,保留位。
  • BIO_Reset negative confirm:由ST75MM发出,命令代码0x3F,有效负载大小1字节,包含错误代码。
  • BIO_Reset indication:由ST75MM发出,命令代码0x3E,有效负载大小1字节,包含复位原因。

2.6 DL_DATA_SLAVE命令

提供作为从节点的数据通信功能,如电表到集中器通信中的电表或电表到家庭通信中的客户设备。只有协议类型等于0的命令才会被处理,其他协议类型的命令将被丢弃。

  • DL_DATA_SLAVE indication:由ST75MM发出,命令代码0x26,有效负载大小可变,包含协议类型、请求ID和应用有效负载。

2.7 HI_Ping命令

可定期测试主机控制器与ST75MM调制解调器之间的串行链路以及调制解调器本身的健康状态。若HI_Ping失败,需进行硬件复位以恢复ST75MM的功能。

  • HI_PING request:由主机控制器发出,命令代码0x2C,有效负载大小可变,包含测试序列。
  • HI_PING positive confirm:由ST75MM发出,命令代码0x2D,有效负载大小可变,包含与请求命令中相同的测试序列。

2.8 HI_Error命令

当ST75MM接收到格式正确但命令代码未被识别的命令帧时发出。

  • HI_ERROR indication:由ST75MM发出,命令代码0x36,有效负载大小1字节,包含接收到的命令代码。

三、管理信息库(MIB)

3.1 MIB对象

ST75MM调制解调器中的MIB对象如下: Index (1) Name Size Rights (2) Description
1 MAC data 12 RW 与MAC层相关的统计信息
2 PHY configuration 6 RWCS PHY层配置
3 MAC configuration 2 RWCS MAC层配置
6 Manufacturer data 22 RWCS 节点标识参数
14 HI timings 3 RW 主机接口(UART)时序
18 ZC alarm 1 RWI 市电无过零检测报警
23 PHY custom frequency 17 RWC 自定义频率设置
24 PHY statistics 9 RW PHY层统计信息

注:未列出的索引范围在(0, 34)的对象为保留对象,主机控制器应避免更改其值并忽略相关的MIB_Write指示。R = 读,W = 写,C = 启动时自动重新配置,S = 影响SM中的MIB状态,I = 可生成自发的MIB_Write.indication。

四、ST75MM配置

4.1 PHY配置(MIB索引2)

要将ST75MM调制解调器配置为CENELEC 132.5 kHz频段的单通道接收器,需将MIB对象2编程为{0x31, 0x95, 0x0A, 0x3B, 0x58, 0x9B}。

4.2 MAC配置(MIB索引3)

要使ST75MM调制解调器工作在正常MAC模式,需将MIB对象3编程为{0x01, 0x00}。

4.3 制造商数据(MIB索引6)

调制解调器标识符和地址选择需由制造商、网络管理员或相关机构分配,主机控制器将这些值写入MIB对象6。在此之前,调制解调器只能接收广播帧。

4.4 自定义频率(MIB索引23)

要将ST75MM调制解调器配置为CENELEC 132.5 kHz频段的单通道接收器,需将MIB对象23编程为{0x08, 0x7A, 0xE1, 0x07, 0x0A, 0x3D, 0x07, 0xC2, 0x8F, 0x09, 0x5C, 0x29, 0x00, 0x00, 0x00, 0x00, 0x00},设置通道对为(132.5 kHz, 110 kHz)。

五、总结

ST75MM电力线通信片上系统为电子工程师提供了强大的电力线通信解决方案。通过合理配置主机接口、使用各种命令以及管理MIB对象,工程师可以实现高效、稳定的电力线通信。在实际应用中,工程师需要根据具体需求进行适当的配置和调整,以确保系统的正常运行。大家在使用ST75MM的过程中,有没有遇到过什么特别的问题呢?欢迎在评论区分享交流。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分