# IEC60870-5-102

IEC 60870-5-102 是国际电工委员会 (IEC) 60870 家族中的一部分，这个家族是一套用于电力系统自动化的通讯协议的标准。更具体的说，IEC 60870-5-102是用于带有测量和控制装置的远程通信的标准。

通用配置步骤见[添加南向驱动](../south-devices.md)与[组与点位](../../groups-tags/groups-tags.md)。

这个标准定义了使用这个协议的设备应该如何交换信息，保证其能在电能控制和监控系统中有兼容性和可靠性。它包括了数据模型、数据传输过程、数据内容等相关定义。同时也有明确的定义了通讯协议的物理层和数据链路层。

EMQX Neuron 支持以召唤 I/II 级用户数据的方式获取设备的相关数据。

## 添加驱动

在 **数据采集 → 南向设备** 页点击 **添加设备**，驱动类型选择 **IEC 60870-5-102**。

## 连接参数

在 **南向设备** 页，点击设备卡片/设备列进入设备配置页，填写设备的配置信息。

| 参数          | 说明                  |
| ------------ | --------------------- |
| **物理链路** | 选择通过 TCP/IP 或是 Serial 连接设备|
| **链路地址**       |  设备链路地址               |
| **公共地址**       |  公共地址，唯一标识数据对象               |
| **I/II 召唤间隔** | 召唤 I/II 用户数据间隔         |
| **超时时间**     | 链路超时时间|
| **设备 IP 地址** | 设备的 IPv4 地址                |
| **设备端口**     | 设备端口号  |
| **串口设备**     | 串口设备路径  |
| **停止位**     | 停止位  |
| **校验位**     | 校验位  |
| **波特率**     | 波特率  |
| **数据位**     | 数据位  |

## 点位配置

### 数据类型

* UINT8
* INT8
* UINT16
* INT16
* UINT32
* INT32
* FLOAT
* BIT
* BOOL

### 地址格式

> [RA].[IOA]

#### RA

在 IEC60870-5-102 协议中，RA (Record Address) 指的是信息记录地址，是用于标识特定信息点地址。每种信息类型在信息对象地址空间有固定的范围。

#### IOA

在 IEC60870-5-102 协议中，IOA (Information Object Address) 指的是信息对象地址，是用于唯一标识一个数据对象的地址，用于指定一个信息对象的地址。

### 支持的读取的数据类型

* M_SP_TA_2
* M_IT_TA_2
* M_IT_TB_2
* M_IT_TC_2
* M_IT_TD_2
* M_IT_TE_2
* M_IT_TF_2
* M_IT_TG_2
* M_IT_TH_2
* M_IT_TI_2
* M_IT_TK_2
* M_IT_TL_2
* M_IT_TM_2

### 地址示例

| 地址         | 说明 |
| :-------- | :---- |
| 1.2 | 读取记录地址 1， 信息对象地址为 2 的数据 |
| 10.1|读取记录地址 10， 信息对象地址为 1 的数据|
