在 Slave 和 Master 进行通信时,Slave 会将其提供的变量映射到四张不同
的表上,Master 从表中相应位置读/写变量,就完成了数据获取或命令下达。这
四张不同的表,称作 Modbus 数据模型(Modbus Data Model)。
为了理解方便,这里将四张表分别称作 1 位只读表、1 位可读可写表、16
位只读表、16 位可读可写表。(类似电力通信国标中的遥信、遥控、遥测、遥调。)
1 位表用来映射单比特数据类型的变量,通常是布尔型变量;16 位表用来映射
双字节数据类型的变量,如 int16、float16 等,如果希望映射 int32、float32
等四字节变量,可以通过一次使用 16 位表中的两个位置来实现。只读表用来映
射 Master 只能读取的变量;可读可写表用来映射 Master 既可读取、又可改写
的变量。