硬件:12DO+12DI+2AO+5AI模块 + 485集线器 + 485转232
软件:NModbus开源库,支持wince下.net开发
功能解析(电压的控制)
DO 数字量输出(继电器输出,可接入220v + 电机, 效果:通过12v控制220v开关)
Modbus:05指令,Set
DI 数字量输入(开关量输入,可接入开关,效果:采集到数字信号0或1)
Modbus:01指令,Get
AO 模拟量输出(寄存器效果:输出一个电压<=5v)
Modbus:10指令,Set
AI 模拟量输入(效果:采集电压值(可接入电位器))
Modbus:03指令,Get
2.1 设置继电器开关(05指令)
发送请求: 01 05 00 00FF 00 8C 3A
模块应答: 01 05 00 00 FF 00 8C 3A
2.2 获取开关量信号(01指令)
发送请求: 01 01 00 00 00 0A BC 0D
模块应答: 01 01 02 0202 39 5D (DI-2接入)
01 01 02 04 02 3A FD (DI-3接入)
01 01 02 08 02 3F FD (DI-4接入)
01 01 02 10 02 35 FD (DI-5接入)
01 01 02 20 02 21 FD (DI-6接入)
00000001
00000010
00000100
00001000
00010000
00100000
01000000
10000000
转2进制数,反序添加到数组
3.1设置模拟量输出(10指令)A0
发送请求: 01 10 00 00 00 02 04 FF FD FF FD D2 3A (5v电压)
iValue* 65535 / 5 –>IntToByte(高低位)
模块应答: 01 10 00 00 00 02 41 C8
3.2 获取模拟量输出(03指令)AI
发送请求: 01 03 00 0000 05 85 C9
模块应答: 01 03 0A 01 C6 00 00 00 00 00 00 00 000E D6
两个字节表示一个数字
code:
http://download.csdn.net/detail/arno1988/6607811