Exemplo n.º 1
0
        public MelsecIoDevice(string options)
        {
            _tryCount = 1;
            var config = ConfigHelper.GetConfig(options);

            if (config is FxComConfig)
            {
                var comConfig = (FxComConfig)config;
                _tryCount = comConfig.TryCount;
                var port = new SerialPort(comConfig.PortName)
                {
                    BaudRate = comConfig.BaudRate,
                    DataBits = comConfig.DataBits,
                    Parity   = comConfig.Parity,
                    StopBits = comConfig.StopBits
                };
                _melsec = new FxCom(port, comConfig.Timeout, comConfig.MessageEndTimeout);
            }
            else if (config is FxEnetConfig)
            {
                var enetConfig = (FxEnetConfig)config;
                _melsec = new FxEnet(enetConfig.Address, enetConfig.Timeout, enetConfig.MessageEndTimeout);
            }
            else if (config is QConfig)
            {
                var qConfig = (QConfig)config;
                _melsec = new Q(qConfig.Address, qConfig.Port, qConfig.PcNumber, qConfig.NetworkNumber,
                                qConfig.Timeout, qConfig.MessageEndTimeout);
            }
            else
            {
                throw new NotSupportedException(string.Format("Config \"{0}\" is not supported", config.ConfigName));
            }
        }
Exemplo n.º 2
0
 public MelsecIoDevice(string options)
 {
     _tryCount = 1;
     var config = ConfigHelper.GetConfig(options);
     if (config is FxComConfig)
     {
         var comConfig = (FxComConfig) config;
         _tryCount = comConfig.TryCount;
         var port = new SerialPort(comConfig.PortName)
         {
             BaudRate = comConfig.BaudRate,
             DataBits = comConfig.DataBits,
             Parity = comConfig.Parity,
             StopBits = comConfig.StopBits
         };
         _melsec = new FxCom(port, comConfig.Timeout, comConfig.MessageEndTimeout);
     }
     else if (config is FxEnetConfig)
     {
         var enetConfig = (FxEnetConfig) config;
         _melsec = new FxEnet(enetConfig.Address, enetConfig.Port, enetConfig.Timeout, enetConfig.MessageEndTimeout);
     }
     else if (config is QConfig)
     {
         var qConfig = (QConfig) config;
         _melsec = new Q(qConfig.Address, qConfig.Port, qConfig.PcNumber, qConfig.NetworkNumber,
             qConfig.Timeout, qConfig.MessageEndTimeout);
     }
     else
     {
         throw new NotSupportedException(string.Format("Config \"{0}\" is not supported", config.ConfigName));
     }
 }