83 lines
2.2 KiB
C#
83 lines
2.2 KiB
C#
using System.IO.Ports;
|
|
using DH.Commons.Enums;
|
|
using HslCommunication;
|
|
|
|
namespace DH.Devices.PLC
|
|
{
|
|
public class PLCBase
|
|
{
|
|
/// <summary>
|
|
/// 连接状态
|
|
/// </summary>
|
|
public bool connected = false;
|
|
|
|
public string PLCName;
|
|
/// <summary>
|
|
/// 类型
|
|
/// </summary>
|
|
public EnumPLCType PLCType=EnumPLCType.信捷XD_网口;
|
|
|
|
/// <summary>
|
|
/// 串口号
|
|
/// </summary>
|
|
public string portName="COM1";
|
|
|
|
/// <summary>
|
|
/// 波特率
|
|
/// </summary>
|
|
public int baudRate = 9600;
|
|
|
|
/// <summary>
|
|
/// 数据位
|
|
/// </summary>
|
|
public int dataBit = 8;
|
|
|
|
/// <summary>
|
|
/// 停止位
|
|
/// </summary>
|
|
public StopBits stopBit = (StopBits)Enum.Parse(typeof(StopBits), "One");
|
|
|
|
/// <summary>
|
|
/// 奇偶效验位
|
|
/// </summary>
|
|
public Parity parity = (Parity)Enum.Parse(typeof(Parity), "None");
|
|
|
|
/// <summary>
|
|
/// IP地址
|
|
/// </summary>
|
|
public string IP = "192.168.6.6";
|
|
|
|
/// <summary>
|
|
/// 端口号
|
|
/// </summary>
|
|
public int Port = 502;
|
|
|
|
/// <summary>
|
|
/// 初始化
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public virtual bool PLCConnect() { return false; }
|
|
|
|
public virtual bool PLCDisConnect() { return false; }
|
|
|
|
public virtual ushort ReadShort(string address) { return 0; }
|
|
|
|
public virtual int ReadInt(string address) { return 0; }
|
|
|
|
|
|
public virtual float ReadFloat(string address) { return 0; }
|
|
|
|
public virtual bool ReadBool(string address) { return false; }
|
|
|
|
public virtual bool WriteShort(string address, short value, bool waitForReply = true) { return false; }
|
|
|
|
public virtual bool WriteInt(string address, int value, bool waitForReply = true) { return false; }
|
|
|
|
public virtual bool WriteDInt(string address, int value, bool waitForReply = true) { return false; }
|
|
|
|
public virtual bool WriteFloat(string address, float value, bool waitForReply = true) { return false; }
|
|
|
|
public virtual bool WriteBool(string address, bool value, bool waitForReply = true) { return false; }
|
|
}
|
|
}
|