发表于:2013/7/23 15:44:04
#0楼
一次读取所有4个通道当前的输出值
发送指令:01 03 00 60 00 04 44 17
其中01为模块地址;
03为读取保持型寄存器的功能码;
00 60 为读取的通道的起始寄存器地址;
00 04 为读取的通道数量,04表示所有4个通道;
44 17 为CRC校验码,高位在前。
模块返回:01 03 08 00 56 00 98 01 25 03 56 12 F7
其中01为模块地址;
03为读取保持型寄存器的功能码;
08为返回数据的字节数;
00 56 00 98 01 25 03 56为4个输出通道当前的输出值,每个通道占用两个字节,高位在前,例如:00 56为AO0的输出值,0098为AO1的输出值,以此类推。
00 56代表的输出电流电压值的换算方法:
将00 56转换为十进制 转换后为 00 86,
把两个字节变为一个字 00*256+86 = 86
出厂默认输出0~10v电压,把86转换为电压 86/4095*10 = 0.210 v
设置的量程和数值的对应关系:
输出量程 对应数值
0~10V 0~4095
0~20MA 0~4095
4~20MA 819~4095
12 F7为CRC校验码
控制当个通道的输出值:
发送指令:01 06 00 60 00 56 09 EA
其中01为模块地址;
06 为写入保持型寄存器的功能码;
00 60 为写入的通道的起始寄存器地址,60表示AO0的寄存器地址;
00 56 为需要写入的数值,00 56代表需要输出电压0.210V。设定需要输出的电压电流值为VO,输出量程为FS(输出量程可配置为0~10v,0~20ma和4~20ma),则需要写入的数值的公式:
写入的数值 = VO/FS * 4095
09 EA 为CRC校验码,高位在前。
模块返回:01 06 00 60 00 56 09 EA
模块返回的数据和写入的数据相同表示模块写入成功,如果不同则代表写入失败。
一次写多个通道的输出值
发送指令:01 10 00 60 00 04 08 00 56 00 98 01 25 03 56 B1 DA
其中01为模块地址;
10为同时写多个通道的功能码;
00 60 为需要写入的通道的起始地址(及写入的这些通道的第一个通道的寄存器地址);
00 04 为需要写入的通道的数量(这里表示写所有4个通道);
08 为需要写入的字节数(每个通道2个字节,这里是通道数的两倍);
00 56 00 98 01 25 03 56 写入通道的数值,每个通道两个字节,高位在前,从左往右分别是AO0~AO3的数值,数值换算电压的方式见上面控制当个通道值。
B1 DA 为CRC检验码。
模块返回:01 10 00 60 00 04 C1 D4
其中01为模块地址;
10为写入多个通道的功能码;
00 60为写入的起始地址;
00 04为写入的通道数量;
C1 D4为CRC校验码。
发送指令:01 03 00 60 00 04 44 17
其中01为模块地址;
03为读取保持型寄存器的功能码;
00 60 为读取的通道的起始寄存器地址;
00 04 为读取的通道数量,04表示所有4个通道;
44 17 为CRC校验码,高位在前。
模块返回:01 03 08 00 56 00 98 01 25 03 56 12 F7
其中01为模块地址;
03为读取保持型寄存器的功能码;
08为返回数据的字节数;
00 56 00 98 01 25 03 56为4个输出通道当前的输出值,每个通道占用两个字节,高位在前,例如:00 56为AO0的输出值,0098为AO1的输出值,以此类推。
00 56代表的输出电流电压值的换算方法:
将00 56转换为十进制 转换后为 00 86,
把两个字节变为一个字 00*256+86 = 86
出厂默认输出0~10v电压,把86转换为电压 86/4095*10 = 0.210 v
设置的量程和数值的对应关系:
输出量程 对应数值
0~10V 0~4095
0~20MA 0~4095
4~20MA 819~4095
12 F7为CRC校验码
控制当个通道的输出值:
发送指令:01 06 00 60 00 56 09 EA
其中01为模块地址;
06 为写入保持型寄存器的功能码;
00 60 为写入的通道的起始寄存器地址,60表示AO0的寄存器地址;
00 56 为需要写入的数值,00 56代表需要输出电压0.210V。设定需要输出的电压电流值为VO,输出量程为FS(输出量程可配置为0~10v,0~20ma和4~20ma),则需要写入的数值的公式:
写入的数值 = VO/FS * 4095
09 EA 为CRC校验码,高位在前。
模块返回:01 06 00 60 00 56 09 EA
模块返回的数据和写入的数据相同表示模块写入成功,如果不同则代表写入失败。
一次写多个通道的输出值
发送指令:01 10 00 60 00 04 08 00 56 00 98 01 25 03 56 B1 DA
其中01为模块地址;
10为同时写多个通道的功能码;
00 60 为需要写入的通道的起始地址(及写入的这些通道的第一个通道的寄存器地址);
00 04 为需要写入的通道的数量(这里表示写所有4个通道);
08 为需要写入的字节数(每个通道2个字节,这里是通道数的两倍);
00 56 00 98 01 25 03 56 写入通道的数值,每个通道两个字节,高位在前,从左往右分别是AO0~AO3的数值,数值换算电压的方式见上面控制当个通道值。
B1 DA 为CRC检验码。
模块返回:01 10 00 60 00 04 C1 D4
其中01为模块地址;
10为写入多个通道的功能码;
00 60为写入的起始地址;
00 04为写入的通道数量;
C1 D4为CRC校验码。
晋江机场电子科技有限公司(dzgs.qzair.com),一家专业生产计数器、数据采集模块、隔离变
送器、信号隔离模块、开关量模块、数字量模块、模拟量模块、温度变送器、计数测频模块的
厂家。
送器、信号隔离模块、开关量模块、数字量模块、模拟量模块、温度变送器、计数测频模块的
厂家。