Browse Source

update plcgroup

pull/15/head
Gavin 8 years ago
parent
commit
18f9d0cec5
  1. 1
      SCADA/Program/DataService/PLCGroup.cs
  2. 25
      SCADA/Program/ModbusDriver/ModbusRTUDriver.cs
  3. BIN
      SCADA/dll/ModbusDriver.dll

1
SCADA/Program/DataService/PLCGroup.cs

@ -978,6 +978,7 @@ namespace DataService
}
else
{
if (addr.ByteOrder.HasFlag(ByteOrder.BigEndian)) prcv[iShort1] = IPAddress.HostToNetworkOrder(prcv[iShort1]);
if (addr.DataSize <= 2)
{
if (prcv[iShort1] != cache[iShort]) _changedList.Add(index);

25
SCADA/Program/ModbusDriver/ModbusRTUDriver.cs

@ -33,7 +33,8 @@ namespace ModbusDriver
}
string _port = "COM1";
public string ServerName
[Category("串口设置"), Description("串口号")]
public string PortName
{
get { return _port; }
set { _port = value; }
@ -48,6 +49,7 @@ namespace ModbusDriver
}
private int _timeOut = 3000;
[Category("串口设置"), Description("通迅超时时间")]
public int TimeOut
{
get { return _timeOut; }
@ -56,7 +58,7 @@ namespace ModbusDriver
private int _baudRate = 9600;
[Description("波特率")]
[Category("串口设置"), Description("波特率")]
public int BaudRate
{
get { return _baudRate; }
@ -65,14 +67,14 @@ namespace ModbusDriver
// private SerialPort _serialPort;
private int _dataBits = 8;
[Description("数据位")]
[Category("串口设置"), Description("数据位")]
public int DataBits
{
get { return _dataBits; }
set { _dataBits = value; }
}
private StopBits _stopBits = StopBits.One;
[Description("停止位")]
[Category("串口设置"), Description("停止位")]
public StopBits StopBits
{
get { return _stopBits; }
@ -80,8 +82,8 @@ namespace ModbusDriver
}
private Parity _parity = Parity.None;
[Description("奇偶校验")]
public Parity parity
[Category("串口设置"), Description("奇偶校验")]
public Parity Parity
{
get { return _parity; }
set { _parity = value; }
@ -270,6 +272,12 @@ namespace ModbusDriver
PDU应为 253 */
get { return 0xFD; } //0xFD 十进制为253
}
private string _serverName = "unknown";
public string ServerName
{
get { return _serverName; }
set { _serverName = value; }
}
public DeviceAddress GetDeviceAddress(string address)
{
@ -321,7 +329,7 @@ namespace ModbusDriver
dv.Start = int.Parse(address.Substring(1));
dv.Start--;
dv.Bit--;
dv.ByteOrder = ByteOrder.Network;
dv.ByteOrder = ByteOrder.BigEndian;
}
break;
case '3':
@ -337,7 +345,7 @@ namespace ModbusDriver
dv.Start = int.Parse(address.Substring(1));
dv.Start--;
dv.Bit--;
dv.ByteOrder = ByteOrder.Network;
dv.ByteOrder = ByteOrder.BigEndian;
}
break;
}
@ -544,7 +552,6 @@ namespace ModbusDriver
#endregion
}
public sealed class Modbus
{
public const byte fctReadCoil = 1;

BIN
SCADA/dll/ModbusDriver.dll

Binary file not shown.
Loading…
Cancel
Save