public class PLCNetwork extends TcpClientBasic
| 限定符和类型 | 字段和说明 |
|---|---|
protected int |
pduLength
最大的PDU长度,不同PLC对应不同值,有240,480,960,目前默认240
|
protected EPlcType |
plcType
PLC的类型
|
protected int |
rack
PLC机架号
|
protected int |
slot
PLC槽号,S7-300 = 2
|
connectTimeout, enableReconnect, receiveTimeout, socket, socketAddress, socketError, tag| 构造器和说明 |
|---|
PLCNetwork() |
PLCNetwork(String host,
int port) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
connect()
连接
|
protected void |
doAfterConnected()
连接成功之后要做的动作
|
void |
downloadFile(Mc7File mc7)
下载文件,已在s200smart中测试成功
|
int |
getPduLength() |
EPlcType |
getPlcType() |
int |
getRack() |
int |
getSlot() |
boolean |
isPersistence() |
byte[] |
readFromServerByPersistence(byte[] req)
包含持久化的从服务器读取数据,外部继承使用该方法进行交互,内部不使用
|
S7Data |
readFromServerByPersistence(S7Data req)
包含持久化的从服务器读取数据,外部继承使用该方法进行交互,内部不使用
|
List<DataItem> |
readS7Data(List<RequestItem> requestItems)
读取S7协议数据
|
DataItem |
readS7Data(RequestItem requestItem)
读取S7协议数据
|
List<DataItem> |
readS7NckData(List<RequestNckItem> requestItems)
读取S7协议NCK数据,无法精确限制请求数量,因为响应的内容长度不定
|
DataItem |
readS7NckData(RequestNckItem requestItem)
读取S7协议NCK数据
|
void |
setComCallback(java.util.function.Consumer<byte[]> comCallback) |
void |
setPersistence(boolean persistence) |
byte[] |
uploadFile(EFileBlockType blockType,
int blockNumber)
从PLC上传文件内容到PC,已在s200smart中测试成功
|
void |
writeS7Data(List<RequestItem> requestItems,
List<DataItem> dataItems)
写S7协议
|
void |
writeS7Data(RequestItem requestItem,
DataItem dataItem)
写S7协议数据
|
checkConnected, close, getAvailableSocket, getConnectTimeout, getReceiveTimeout, getSocketAddress, isEnableReconnect, read, read, read, read, read, read, setConnectTimeout, setEnableReconnect, setReceiveTimeout, write, write, writeprotected EPlcType plcType
protected int rack
protected int slot
protected int pduLength
public PLCNetwork()
public PLCNetwork(String host, int port)
public void setComCallback(java.util.function.Consumer<byte[]> comCallback)
public boolean isPersistence()
public void setPersistence(boolean persistence)
public EPlcType getPlcType()
public int getRack()
public int getSlot()
public int getPduLength()
public void connect()
TcpClientBasicconnect 在类中 TcpClientBasicprotected void doAfterConnected()
doAfterConnected 在类中 TcpClientBasicpublic S7Data readFromServerByPersistence(S7Data req)
req - 请求数据public byte[] readFromServerByPersistence(byte[] req)
req - 请求数据public List<DataItem> readS7Data(List<RequestItem> requestItems)
requestItems - 请求项列表public DataItem readS7Data(RequestItem requestItem)
requestItem - 请求项public void writeS7Data(RequestItem requestItem, DataItem dataItem)
requestItem - 请求项dataItem - 数据项public void writeS7Data(List<RequestItem> requestItems, List<DataItem> dataItems)
requestItems - 请求项列表dataItems - 数据项列表public DataItem readS7NckData(RequestNckItem requestItem)
requestItem - 请求项public List<DataItem> readS7NckData(List<RequestNckItem> requestItems)
requestItems - 请求项列表public void downloadFile(Mc7File mc7)
mc7 - Mc7File文件对象public byte[] uploadFile(EFileBlockType blockType, int blockNumber)
blockType - 数据块类型blockNumber - 数据块编号Copyright © 2024. All rights reserved.