public class ModbusTcpServer extends NetworkDataServerBase
| 限定符和类型 | 字段和说明 |
|---|---|
int |
RequestDelayTime
获取或设置两次请求直接的延时时间,单位毫秒,默认是0,不发生延时,设置为20的话,可以有效防止有客户端疯狂进行请求而导致服务器的CPU占用率上升。
|
boolean |
UseModbusRtuOverTcp
获取或设置当前的TCP服务器是否使用 modbus-rtu 报文进行通信,如果设置为
ModbusRtuOverTcpGet or set whether the current TCP server uses modbus-rtu messages for communication. |
EnableWrite, LogMsgFormatBinary, OnDataReceived, OnDataSend, WordLengthCoreSocket, fileCacheSize, LogNet, TokenLogNet| 构造器和说明 |
|---|
ModbusTcpServer()
实例化一个Modbus Tcp及Rtu的服务器,支持数据读写操作
|
| 限定符和类型 | 方法和说明 |
|---|---|
DataFormat |
getDataFormat() |
boolean |
getIsStringReverse() |
protected INetMessage |
GetNewNetMessage() |
byte |
getStation() |
boolean |
getStationDataIsolation()
获取或设置是否启动站点数据隔离功能,默认为
|
protected void |
LoadFromBytes(byte[] content)
从字节数据加载数据信息,需要进行重写方法
Loading data information from byte data requires rewriting method |
OperateResultExOne<byte[]> |
Read(String address,
short length)
一个字单位的数据表示的地址长度,西门子为2,三菱,欧姆龙,modbusTcp就为1,AB PLC无效
The address length represented by one word of data, Siemens is 2, Mitsubishi, Profinet.Omron, modbusTcp is 1, AB PLC is invalid |
OperateResultExOne<boolean[]> |
ReadBool(String address,
short length)
|
boolean |
ReadCoil(String address) |
boolean[] |
ReadCoil(String address,
short length) |
boolean |
ReadDiscrete(String address) |
boolean[] |
ReadDiscrete(String address,
short length) |
protected OperateResultExOne<byte[]> |
ReadFromCoreServer(AppSession session,
byte[] receive) |
protected byte[] |
ReadFromModbusCore(byte[] modbusCore)
Modbus核心数据交互方法,允许重写自己来实现,报文只剩下核心的Modbus信息,去除了MPAB报头信息
The Modbus core data interaction method allows you to rewrite it to achieve the message. |
protected byte[] |
SaveToBytes()
将数据信息存储到字节数组去,需要进行重写方法
To store data information into a byte array, a rewrite method is required |
void |
setDataFormat(DataFormat value) |
void |
setIsStringReverse(boolean value) |
void |
setStation(byte value) |
void |
setStationDataIsolation(boolean value)
设置是否启动站点数据隔离功能,默认为
|
String |
toString()
此处实现了连接Hsl异形客户端的协议,特殊的协议实现定制请联系作者
QQ群:592132877
|
OperateResult |
Write(String address,
boolean[] value)
|
OperateResult |
Write(String address,
byte[] value)
写入原始的byte数组数据到指定的地址,返回是否写入成功
Write the original byte array data to the specified address, and return whether the write was successful |
void |
Write(String address,
byte high,
byte low)
写入寄存器的数据,指定字节数据信息
|
void |
WriteCoil(String address,
boolean data) |
void |
WriteCoil(String address,
boolean[] data) |
void |
WriteDiscrete(String address,
boolean data) |
void |
WriteDiscrete(String address,
boolean[] data) |
AddClient, ConnectClose, Dispose, getByteTransform, getConnectionId, GetOnlineCount, GetSerialMessageLogText, GetWordLength, isEnableWrite, RaiseDataReceived, RaiseDataSend, ReadBool, ReadCustomer, ReadDouble, ReadDouble, ReadFloat, ReadFloat, ReadInt16, ReadInt16, ReadInt32, ReadInt32, ReadInt64, ReadInt64, ReadString, ReadString, ReadUInt16, ReadUInt16, ReadUInt32, ReadUInt32, RemoveClient, RemoveClient, setByteTransform, setConnectionId, setEnableWrite, setLogNet, ThreadPoolLogin, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, WriteCustomer, WriteUnicodeString, WriteUnicodeStringCloseAction, getPort, isStarted, ServerClose, ServerStart, ServerStart, setPort, setStarted, SocketAcceptExtraCheck, StartInitializationCheckRemoteToken, CloseSocket, CreateSocketAndConnect, CreateSocketAndConnect, CreateSocketAndConnect, ReadStream, Receive, Receive, Receive, ReceiveAndCheckBytes, ReceiveByMessage, ReceiveByMessage, ReceiveBytesContentFromSocket, ReceiveBytesContentFromSocket, ReceiveCommandLineFromSocket, ReceiveCommandLineFromSocket, ReceiveCommandLineFromSocket, ReceiveCommandLineFromSocket, ReceiveFrameWebSocketPayload, ReceiveHslMessage, ReceiveMqttMessage, ReceiveRedisCommand, ReceiveRedisCommandString, ReceiveStringArrayContentFromSocket, ReceiveStringArrayContentFromSocket, ReceiveStringContentFromSocket, ReceiveStringContentFromSocket, ReceiveWebSocketPayload, Send, Send, SendAccountAndCheckReceive, SendBaseAndCheckReceive, SendBytesAndCheckReceive, SendStreamToSocket, SendStringAndCheckReceive, SendStringAndCheckReceive, ThreadPoolCheckTimeOut, WriteStream, WriteStreamFromSocketpublic boolean UseModbusRtuOverTcp
ModbusRtuOverTcpModbusRtuOverTcppublic int RequestDelayTime
public DataFormat getDataFormat()
public void setDataFormat(DataFormat value)
public boolean getIsStringReverse()
public void setIsStringReverse(boolean value)
public byte getStation()
public void setStation(byte value)
public boolean getStationDataIsolation()
public void setStationDataIsolation(boolean value)
value - 设置值protected byte[] SaveToBytes()
NetworkDataServerBaseSaveToBytes 在类中 NetworkDataServerBaseprotected void LoadFromBytes(byte[] content)
NetworkDataServerBaseLoadFromBytes 在类中 NetworkDataServerBasecontent - 字节数据public boolean ReadCoil(String address)
public boolean[] ReadCoil(String address, short length)
public void WriteCoil(String address, boolean data)
public void WriteCoil(String address, boolean[] data)
public boolean ReadDiscrete(String address)
public boolean[] ReadDiscrete(String address, short length)
public void WriteDiscrete(String address, boolean data)
public void WriteDiscrete(String address, boolean[] data)
public OperateResultExOne<byte[]> Read(String address, short length)
NetworkDataServerBaseRead 在接口中 IReadWriteNetRead 在类中 NetworkDataServerBaseaddress - 数据地址length - 数据长度public OperateResult Write(String address, byte[] value)
IReadWriteNetWrite 在接口中 IReadWriteNetWrite 在类中 NetworkDataServerBaseaddress - 起始地址value - 写入值public OperateResultExOne<boolean[]> ReadBool(String address, short length)
IReadWriteNetBoolean 数组信息,需要指定地址和长度,返回 Boolean 数组Boolean array information, need to specify the address and length, return Boolean arrayReadBool 在接口中 IReadWriteNetReadBool 在类中 NetworkDataServerBaseaddress - 数据地址length - 数据长度public OperateResult Write(String address, boolean[] value)
IReadWriteNetWrite 在接口中 IReadWriteNetWrite 在类中 NetworkDataServerBaseaddress - 起始地址value - 写入值public void Write(String address, byte high, byte low)
address - 起始地址,示例:"100",如果是输入寄存器:"x=4;100"high - 高位数据low - 地位数据protected INetMessage GetNewNetMessage()
protected OperateResultExOne<byte[]> ReadFromCoreServer(AppSession session, byte[] receive)
protected byte[] ReadFromModbusCore(byte[] modbusCore)
modbusCore - 核心的Modbus报文public String toString()
NetworkServerBasetoString 在类中 NetworkDataServerBaseCopyright © 2022. All rights reserved.