Plugins/Drivers/DriverModbusMaster/ModbusMaster.cs

(开头部分) 18KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using Modbus.Device;
using Modbus.Serial;
using PluginInterface;
using System;
using System.Collections.Generic;
using System.IO.Ports;
using System.Net;
using System.Net.Sockets;

namespace DriverModbusMaster
{
    [DriverSupported("ModbusTCP")]
    [DriverSupported("ModbusUDP")]
    [DriverSupported("ModbusRtu")]
    [DriverSupported("ModbusAscii")]
    [DriverInfoAttribute("ModbusMaster", "V1.0.0", "Copyright WHD© 2021-12-19")]
    public class ModbusMaster : IDriver
    {
        private TcpClient clientTcp = null;
        private UdpClient clientUdp = null;
        private SerialPort port = null;
        private Modbus.Device.ModbusMaster master = null;
        private SerialPortAdapter adapter = null;
        #region 配置参数

        [ConfigParameter("设备Id")]
        public Guid DeviceId { get; set; }

        [ConfigParameter("PLC类型")]
        public PLC_TYPE PLCType { get; set; } = PLC_TYPE.S71200;

        [ConfigParameter("主站类型")]
        public Master_TYPE Master_TYPE { get; set; } = Master_TYPE.Tcp;

        [ConfigParameter("IP地址")]
        public string IpAddress { get; set; } = "127.0.0.1";

        [ConfigParameter("端口号")]
        public int Port { get; set; } = 502;

        [ConfigParameter("串口名")]
        public string PortName { get; set; } = "COM1";

        [ConfigParameter("波特率")]
        public int BaudRate { get; set; } = 9600;

        [ConfigParameter("数据位")]
        public int DataBits { get; set; } = 8;

        [ConfigParameter("校验位")]
        public Parity Parity { get; set; } = Parity.None;

        [ConfigParameter("停止位")]
        public StopBits StopBits { get; set; } = StopBits.One;

        [ConfigParameter("从站号")]
        public byte SlaveAddress { get; set; } = 1;

        [ConfigParameter("超时时间ms")]
        public int Timeout { get; set; } = 3000;
后面还有 443 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。