package com.mes.plc.client; import java.util.Map; /** * PLC客户端接口 *

* 定义PLC通信的通用方法,支持多种PLC协议(S7、Modbus等) *

* * @author huang * @date 2025/12/19 */ public interface PlcClient { /** * 连接PLC * * @return 是否连接成功 */ boolean connect(); /** * 断开PLC连接 */ void disconnect(); /** * 读取PLC的所有数据 * * @return PLC数据,key为字段名,value为字段值 */ Map readAllData(); /** * 读取PLC的指定字段数据 * * @param fields 需要读取的字段列表 * @return PLC数据,key为字段名,value为字段值 */ Map readData(String... fields); /** * 写入PLC数据 * * @param data 需要写入的数据,key为字段名,value为字段值 * @return 是否写入成功 */ boolean writeData(Map data); /** * 检查PLC连接状态 * * @return 是否连接成功 */ boolean isConnected(); /** * 获取PLC类型 * * @return PLC类型 */ String getPlcType(); /** * 获取连接超时时间 * * @return 超时时间(毫秒) */ int getTimeout(); /** * 设置连接超时时间 * * @param timeout 超时时间(毫秒) */ void setTimeout(int timeout); }