public static ConfigProtocol GetConfigProtocol(string protocolHeader)
        {
            var protocol = new ConfigProtocol();

            protocol.Device         = "SGRC";
            protocol.ProtocolHeader = protocolHeader;
            ConfigSection section = new ConfigSection();

            section.SectionKey = "N";
            section.Name       = "Numeric";
            section.Parameters.Add(new ConfigParameter
            {
                ConfigParameterControlType = ConfigParameterControlType.Series,
                DataType = Core.Enumerations.DataType.Double,
                Format   = "00.0",
                MaxValue = 10.9,
                MinValue = 0.1,
                StepSize = 0.1,
                Name     = "Test 1"
            });
            section.Parameters.Add(new ConfigParameter
            {
                ConfigParameterControlType = ConfigParameterControlType.ListOfValues,
                DataType = Core.Enumerations.DataType.Double,
                Format   = "00.0",
                MaxValue = 10.9,
                MinValue = 0.1,
                StepSize = 0.1,
                Values   = { 10, 12 },
                Name     = "Test 2"
            });
            protocol.ConfigSections.Add(section);

            return(protocol);
        }
예제 #2
0
        public ICMP(ConfigProtocol configProtocol)
        {
            _configProtocol = configProtocol ?? throw new ArgumentNullException(nameof(configProtocol));

            _host   = configProtocol.Host;
            _period = configProtocol.Period;
        }
예제 #3
0
        public HTTP(ConfigProtocol configProtocol)
        {
            _configProtocol = configProtocol ?? throw new ArgumentNullException(nameof(configProtocol));

            _host      = configProtocol.Host;
            _period    = configProtocol.Period;
            _validCode = Convert.ToInt32(configProtocol.GetAdditionalAttribute("ValidCode"));
        }
예제 #4
0
        public TCP(ConfigProtocol configProtocol)
        {
            _configProtocol = configProtocol ?? throw new ArgumentNullException(nameof(configProtocol));

            _host   = configProtocol.Host;
            _period = configProtocol.Period;
            _port   = Convert.ToInt32(configProtocol.GetAdditionalAttribute("Port"));
        }
예제 #5
0
 public void Tcp_for_StartPing_onEmptyConfigProtocol()
 {
     Assert.Throws <ArgumentException>(() =>
     {
         var configProtocol = new ConfigProtocol();
         configProtocol.AttributesProtocol = new Dictionary <string, string>();
         var tcp = new TCP(configProtocol);
         tcp.StartAsyncPing();
     });
 }
예제 #6
0
 public void SetUp()
 {
     _configProtocol = new ConfigProtocol()
     {
         NameProt           = EnumProtocols.Icmp,
         Host               = "ya.ru",
         Period             = 1,
         AttributesProtocol = new Dictionary <string, string>()
     };
 }
예제 #7
0
 public void SetUp()
 {
     _configProtocol = new ConfigProtocol()
     {
         NameProt           = EnumProtocols.Tcp,
         Host               = "ya.ru",
         Period             = 1,
         AttributesProtocol = new Dictionary <string, string>()
     };
     _configProtocol.AttributesProtocol.Add("Port", "80");
 }
예제 #8
0
        //Get connection, reader, writer, autoReader and so on.
        private OperationResult SetProtocolEntity()
        {
            try
            {
                this.conn = ConfigProtocol.GetConnection();
                this.conn.Connect();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                //return new OperationResult(1, ex.Message);
            }
            finally
            {
                if (this.conn == null)
                {
                    throw new NullReferenceException("EtherCAT初始化失败");
                }
            }
            /*reader and writer*/
            reader = (IReader)conn;
            writer = (IWriter)conn;
            if (ConnectionContext.isAutoRead)
            {
                autoReader = (IAutoReader)conn;

                if (autoReader != null)
                {
                    autoReader.InitAutoReadConfig();
                    autoReader.AutoDataChanged += ReadDataToDatapool;
                }
                else
                {
                    throw new Exception("获取AutoReader失败");
                }
            }

            return(new OperationResult());
        }
예제 #9
0
 public void Setup()
 {
     _configProtocol = new ConfigProtocol();
 }