public class SiemensS7Net extends NetworkDeviceBase
WordLengthAlienSession, isPersistentConn, IsSocketError, isUseAccountCertificate, LogMsgFormatBinary, simpleHybirdLockCoreSocket, fileCacheSize, LogNet, TokenLogNet| 构造器和说明 |
|---|
SiemensS7Net(SiemensPLCS siemens)
实例化一个西门子的S7协议的通讯对象
|
SiemensS7Net(SiemensPLCS siemens,
String ipAddress)
实例化一个西门子的S7协议的通讯对象并指定Ip地址
|
| 限定符和类型 | 方法和说明 |
|---|---|
static OperateResultExOne<byte[]> |
BuildBitReadCommand(String address)
生成一个位读取数据指令头的通用方法
|
static OperateResultExOne<byte[]> |
BuildReadCommand(S7AddressData[] s7Addresses)
生成一个读取字数据指令头的通用方法
|
static OperateResultExOne<byte[]> |
BuildWriteBitCommand(String address,
boolean data)
生成一个写入位数据的指令
|
static OperateResultExOne<byte[]> |
BuildWriteByteCommand(S7AddressData s7Address,
byte[] data)
生成一个写入字节数据的指令
|
static OperateResultExOne<byte[]> |
BuildWriteByteCommand(String address,
byte[] data)
生成一个写入字节数据的指令 -> Generate an instruction to write byte data
|
static int |
CalculateAddressStarted(String address)
计算特殊的地址信息
|
byte |
getConnectionType()
获取当前PLC的连接方式,PG: 0x01,OP: 0x02,S7Basic: 0x03...0x10
Get the current PLC connection mode, PG: 0x01, OP: 0x02, S7Basic: 0x03...0x10 |
int |
getDestTSAP()
获取西门子的远程TSAP参数信息
|
int |
getLocalTSAP()
获取西门子相关的一个参数信息
|
protected INetMessage |
GetNewNetMessage()
获取一个新的消息对象的方法,需要在继承类里面进行重写
The method to get a new message object needs to be overridden in the inheritance class |
byte |
getRack()
获取PLC的机架号,针对S7-400的PLC设置的
|
byte |
getSlot()
获取 PLC的槽号,针对S7-400的PLC设置的
|
protected OperateResult |
InitializationOnConnect(Socket socket)
在客户端连接上服务器后,所做的一些初始化操作 ->
Two handshake actions required after connecting to the server
|
OperateResultExOne<byte[]> |
Read(S7AddressData[] s7Addresses)
读取西门子的地址数据信息,支持任意个数的数据读取
Read Siemens address data information, support any number of data reading |
OperateResultExOne<byte[]> |
Read(String[] address,
short[] length)
一次性从PLC获取所有的数据,按照先后顺序返回一个统一的Buffer,需要按照顺序处理,两个数组长度必须一致
|
OperateResultExOne<byte[]> |
Read(String address,
short length)
从PLC读取数据,地址格式为I100,Q100,DB20.100,M100,T100,C100以字节为单位
Read the original byte data from the PLC, the address format is I100, Q100, DB20.100, M100, length parameters in bytes |
OperateResultExOne<Boolean> |
ReadBool(String address)
读取指定地址的bool数据
|
OperateResultExOne<boolean[]> |
ReadBool(String address,
short length)
|
OperateResultExOne<Byte> |
ReadByte(String address)
读取指定地址的byte数据
|
OperateResultExOne<Date> |
ReadDate(String address)
从PLC中读取日期格式的数据
Read data in date format from PLC |
OperateResultExOne<Date> |
ReadDateTime(String address)
从PLC中读取时间格式的数据
Read time format data from PLC |
OperateResultExOne<String> |
ReadOrderNumber()
从PLC读取订货号信息
|
OperateResultExOne<String> |
ReadString(String address)
读取西门子的地址的字符串信息,这个信息是和西门子绑定在一起,长度随西门子的信息动态变化的
|
OperateResultExOne<String> |
ReadString(String address,
Charset encoding)
读取西门子的地址的字符串信息,这个信息是和西门子绑定在一起,长度随西门子的信息动态变化的
|
OperateResultExOne<String> |
ReadString(String address,
short length,
Charset encoding)
使用指定的编码,读取字符串数据
Reads string data using the specified encoding |
OperateResultExOne<String> |
ReadWString(String address)
读取西门子的地址的字符串信息,这个信息是和西门子绑定在一起,长度随西门子的信息动态变化的
Read the Siemens address string information. |
void |
setConnectionType(byte value)
设置当前PLC的连接方式,PG: 0x01,OP: 0x02,S7Basic: 0x03...0x10
Set the current PLC connection mode, PG: 0x01, OP: 0x02, S7Basic: 0x03...0x10 |
void |
setDestTSAP(int value)
设置西门子的远程TASP的参数信息
|
void |
setLocalTSAP(int value)
设置西门子相关的一个参数信息
|
void |
setRack(byte value)
设置PLC的机架号,针对S7-400的PLC设置的
|
void |
setSlot(byte value)
设置PLC的槽号信息,针对S7-400的PLC设置的
|
String |
toString()
返回表示当前对象的字符串
|
OperateResult |
Write(String address,
boolean value)
写入PLC的一个位,例如"M100.6","I100.7","Q100.0","DB20.100.0",如果只写了"M100"默认为"M100.0
|
OperateResult |
Write(String address,
boolean[] values)
向PLC中写入bool数组,返回值说明,比如你写入M100,那么data[0]对应M100.0
|
OperateResult |
Write(String address,
byte value)
向PLC中写入byte数据,返回值说明
|
OperateResult |
Write(String address,
byte[] value)
将数据写入到PLC数据,地址格式为I100,Q100,DB20.100,M100,以字节为单位
|
OperateResult |
Write(String address,
Date dateTime)
向PLC中写入时间格式的数据
Writes data in time format to the PLC |
OperateResult |
Write(String address,
String value,
Charset encoding)
写入字符串信息,需要指定的编码信息
Write string information, need to specify the encoding information |
OperateResult |
WriteDate(String address,
Date dateTime)
向PLC中写入日期格式的数据,日期格式里只有年,月,日
Write data in date format to PLC, only year, month, day in date format |
OperateResult |
WriteWString(String address,
String value)
使用双字节编码的方式,将字符串以 Unicode 编码写入到PLC的地址里,可以使用中文。
|
ReadCustomer, ReadDouble, ReadDouble, ReadFloat, ReadFloat, ReadInt16, ReadInt16, ReadInt32, ReadInt32, ReadInt64, ReadInt64, ReadString, ReadUInt16, ReadUInt16, ReadUInt32, ReadUInt32, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, Write, WriteCustomer, WriteUnicodeString, WriteUnicodeStringAccountCertificate, ConnectClose, ConnectServer, ConnectServer, ExtraAfterReadFromCoreServer, ExtraOnDisconnect, GetAvailableSocket, getByteTransform, getConnectionId, getConnectTimeOut, getIpAddress, getPort, getReceiveTimeOut, getSleepTime, IpAddressPing, PackCommandWithHeader, ReadFromCoreServer, ReadFromCoreServer, ReadFromCoreServer, setByteTransform, setConnectionId, setConnectTimeOut, setIpAddress, SetLoginAccount, SetPersistentConnection, setPort, setReceiveTimeOut, setSleepTime, UnpackResponseContentCheckRemoteToken, 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, WriteStreamFromSocketclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitReadFromCoreServerConnectClose, getConnectionId, setConnectionIdpublic SiemensS7Net(SiemensPLCS siemens)
siemens - 指定西门子的型号public SiemensS7Net(SiemensPLCS siemens, String ipAddress)
siemens - 指定西门子的型号ipAddress - Ip地址protected INetMessage GetNewNetMessage()
NetworkDoubleBaseGetNewNetMessage 在类中 NetworkDoubleBasepublic byte getSlot()
public void setSlot(byte value)
value - 槽号信息public byte getRack()
public void setRack(byte value)
value - 机架号public byte getConnectionType()
public void setConnectionType(byte value)
value - 连接方式public int getLocalTSAP()
public void setLocalTSAP(int value)
value - 本地的一个参数public int getDestTSAP()
public void setDestTSAP(int value)
value - 参数信息protected OperateResult InitializationOnConnect(Socket socket)
InitializationOnConnect 在类中 NetworkDoubleBasesocket - 网络套接字public OperateResultExOne<String> ReadOrderNumber()
public OperateResultExOne<byte[]> Read(String address, short length)
Read 在接口中 IReadWriteNetRead 在类中 NetworkDeviceBaseaddress - 起始地址,格式为I100,M100,Q100,DB20.100length - 读取的数量,以字节为单位public OperateResultExOne<byte[]> Read(String[] address, short[] length)
address - 起始地址数组length - 数据长度数组public OperateResultExOne<byte[]> Read(S7AddressData[] s7Addresses)
s7Addresses - 西门子的数据地址public OperateResultExOne<Boolean> ReadBool(String address)
ReadBool 在接口中 IReadWriteNetReadBool 在类中 NetworkDeviceBaseaddress - 起始地址,格式为I100,M100,Q100,DB20.100public OperateResultExOne<boolean[]> ReadBool(String address, short length)
IReadWriteNetBoolean 数组信息,需要指定地址和长度,返回 Boolean 数组Boolean array information, need to specify the address and length, return Boolean arrayReadBool 在接口中 IReadWriteNetReadBool 在类中 NetworkDeviceBaseaddress - 数据地址length - 数据长度public OperateResultExOne<Byte> ReadByte(String address)
address - 起始地址,格式为I100,M100,Q100,DB20.100public OperateResult Write(String address, byte[] value)
Write 在接口中 IReadWriteNetWrite 在类中 NetworkDeviceBaseaddress - 起始地址,格式为I100,M100,Q100,DB20.100value - 写入的数据,长度根据data的长度来指示public OperateResult Write(String address, boolean value)
Write 在接口中 IReadWriteNetWrite 在类中 NetworkDeviceBaseaddress - 起始地址,格式为I100,M100,Q100,DB20.100value - 写入的数据,True或是Falsepublic OperateResult Write(String address, boolean[] values)
Write 在接口中 IReadWriteNetWrite 在类中 NetworkDeviceBaseaddress - 要写入的数据地址values - 要写入的实际数据,长度为8的倍数public OperateResult Write(String address, byte value)
address - 要写入的数据地址value - 要写入的实际数据public OperateResultExOne<String> ReadString(String address, short length, Charset encoding)
IReadWriteNetReadString 在接口中 IReadWriteNetReadString 在类中 NetworkDeviceBaseaddress - 起始地址length - 数据长度encoding - 指定的自定义的编码public OperateResultExOne<String> ReadString(String address)
address - 数据地址,具体的格式需要参照类的说明文档public OperateResultExOne<String> ReadString(String address, Charset encoding)
address - 数据地址,具体的格式需要参照类的说明文档encoding - 数据编码信息public OperateResultExOne<String> ReadWString(String address)
address - 数据地址,具体的格式需要参照类的说明文档public OperateResult Write(String address, String value, Charset encoding)
IReadWriteNetWrite 在接口中 IReadWriteNetWrite 在类中 NetworkDeviceBaseaddress - 起始地址value - 写入值encoding - 指定的编码信息public OperateResult WriteWString(String address, String value)
address - 起始地址,格式为I100,M100,Q100,DB20.100 -> Starting address, formatted as I100,mM100,Q100,DB20.100value - 字符串的值public OperateResultExOne<Date> ReadDateTime(String address)
address - 地址public OperateResult Write(String address, Date dateTime)
address - 地址dateTime - 时间public OperateResultExOne<Date> ReadDate(String address)
address - PLC的地址public OperateResult WriteDate(String address, Date dateTime)
address - 等待写入的PLC地址dateTime - 等待写入的日期public String toString()
toString 在类中 NetworkDeviceBasepublic static int CalculateAddressStarted(String address)
address - 字符串信息public static OperateResultExOne<byte[]> BuildReadCommand(S7AddressData[] s7Addresses)
s7Addresses - siemens addresspublic static OperateResultExOne<byte[]> BuildBitReadCommand(String address)
address - 起始地址public static OperateResultExOne<byte[]> BuildWriteByteCommand(String address, byte[] data)
address - 起始地址,示例M100,I100,Q100,DB1.100 -> Start Address, example M100,I100,Q100,DB1.100data - 原始的字节数据 -> Raw byte datapublic static OperateResultExOne<byte[]> BuildWriteByteCommand(S7AddressData s7Address, byte[] data)
s7Address - 西门子的地址data - 数据public static OperateResultExOne<byte[]> BuildWriteBitCommand(String address, boolean data)
address - 起始地址data - 数据Copyright © 2022. All rights reserved.