1.前言
許多數位儀表都支持Modbus通訊協定,它是工業領域通訊的標準,透過程式控制,可以遠端讀取並紀錄資料。
2.說明
有關Modbus通訊協定,可參考wiki的說明
https://en.wikipedia.org/wiki/Modbus
Modbus的driver可用NModbus,下載位置
http://www.icpdas.com/news/news_events/2010/2010100102_c.htm
下載NModBus原始版本NModbus_net-2.0_1.11.0.0-source
檔案解壓縮後,將bin下面的檔案複製到自己專案的bin目錄下
最新版程式碼下載位置:
http://code.google.com/p/nmodbus/
加入參考
FtdAdapter
log4net
Modbus
加入命名空間
using FtdAdapter; using Modbus.Data; using Modbus.Device; using Modbus.Utility;
Modbus TCP讀取數值方法
public double ModbusTcpMasterReadInputRegistersFromModbusSlave()
{
double tempValue = 0;
// Port
int port = 5000;
// IP Address
IPAddress address = new IPAddress(new byte[] { 192, 168, 1, 100 });
TcpClient masterTcpClient = new TcpClient(address.ToString(), port);
try
{
ModbusIpMaster master = ModbusIpMaster.CreateIp(masterTcpClient);
ushort numInputs = 1;
ushort startAddress = 0;
ushort[] inputs = master.ReadInputRegisters(startAddress, numInputs);
tempValue = double.Parse(inputs[0].ToString());
masterTcpClient.Close();
}
catch
{
masterTcpClient.Close();
}
return tempValue;
}
文章標籤
全站熱搜

請問一下ModbusIpMaster這個class去哪裡取得?