public static void AddPlainEnumProprety(Driver driver, byte no, string propertyName, byte offset, string parameter1Name, string parameter2Name, int startValue = 0,
			int minBit = 0, int maxBit = 0, bool useMask = false, bool highByte = false, bool mptHighByte = false, bool mptLowByte = false)
        {
            var property = new DriverProperty()
            {
                IsAUParameter = true,
                No = no,
                Name = propertyName,
                Caption = propertyName,
                Default = "0",
                BitOffset = offset,
                MinBit = minBit,
                MaxBit = maxBit,
                UseMask = useMask,
                HighByte = highByte,
                MptHighByte = mptHighByte,
                MptLowByte = mptLowByte
            };
            var parameter1 = new DriverPropertyParameter()
            {
                Name = parameter1Name,
                Value = startValue.ToString()
            };
            var parameter2 = new DriverPropertyParameter()
            {
                Name = parameter2Name,
                Value = (startValue + 1).ToString()
            };
            property.Parameters.Add(parameter1);
            property.Parameters.Add(parameter2);
            driver.Properties.Add(property);
        }
 public static void AddPropertyParameter(DriverProperty property, string name, int value)
 {
     var parameter = new DriverPropertyParameter()
     {
         Name = name,
         Value = value.ToString(),
     };
     property.Parameters.Add(parameter);
 }
 public static void AddBoolProprety(Driver driver, byte no, string propertyName, byte offset)
 {
     var property = new DriverProperty()
     {
         IsAUParameter = true,
         No = no,
         Name = propertyName,
         Caption = propertyName,
         DriverPropertyType = DriverPropertyTypeEnum.BoolType,
         BitOffset = offset
     };
     driver.Properties.Add(property);
 }
 public static void AddIntProprety(Driver driver, byte no, string propertyName, int offset, int defaultValue, int min, int max, bool useMask = false, bool highByte = false)
 {
     var property = new DriverProperty()
     {
         IsAUParameter = true,
         No = no,
         Name = propertyName,
         Caption = propertyName,
         DriverPropertyType = DriverPropertyTypeEnum.IntType,
         BitOffset = offset,
         Default = defaultValue.ToString(),
         Min = (ushort)min,
         Max = (ushort)max,
         UseMask = useMask,
         HighByte = highByte
     };
     driver.Properties.Add(property);
 }
Exemple #5
0
        public static void Create(Driver driver)
        {
            driver.HasConfigurationProperties = true;

            var property1 = new DriverProperty()
            {
                IsAUParameter = true,
                No = 0x82,
                Name = "Конфигурация релейного модуля",
                Caption = "Конфигурация релейного модуля",
                Default = "1"
            };
            ConfigurationDriverHelper.AddPropertyParameter(property1, "Отключено/Замкнуто", 1);
            ConfigurationDriverHelper.AddPropertyParameter(property1, "Отключено/Мерцает", 2);
            ConfigurationDriverHelper.AddPropertyParameter(property1, "Замкнуто/Отключено", 3);
            ConfigurationDriverHelper.AddPropertyParameter(property1, "Замкнуто/Мерцает", 4);
            ConfigurationDriverHelper.AddPropertyParameter(property1, "Мерцает/Отключено", 5);
            ConfigurationDriverHelper.AddPropertyParameter(property1, "Мерцает/Замкнуто", 6);
            driver.Properties.Add(property1);

            ConfigurationDriverHelper.AddIntProprety(driver, 0x83, "Задержка на пуск", 0, 0, 0, 250);
            ConfigurationDriverHelper.AddIntProprety(driver, 0x83, "Время удержания", 0, 0, 0, 250, false, true);
        }
Exemple #6
0
        public static void Create(Driver driver)
        {
            driver.HasConfigurationProperties = true;

            ConfigurationDriverHelper.AddIntProprety(driver, 0x8b, "Максимальное время перезапуска, 0.1 с", 0, 1, 1, 255);
            ConfigurationDriverHelper.AddIntProprety(driver, 0x8b, "Время разновременного пуска, с", 0, 1, 1, 255);

            if (driver.DriverType != DriverType.Pump)
            {
                ConfigurationDriverHelper.AddPlainEnumProprety(driver, 0x8d, "Логика", 0 + 8, "на входах 1 и 2 два обычных датчика", "на входах 1 и 2 два обычных датчика");
            }

            var property3 = new DriverProperty()
            {
                IsAUParameter = true,
                No = 0x8b,
                Name = "разрешение функции УЗН",
                Caption = "разрешение функции УЗН",
                DriverPropertyType = DriverPropertyTypeEnum.BoolType,
                BitOffset = 3 + 8
            };
            driver.Properties.Add(property3);

            var property4 = new DriverProperty()
            {
                IsAUParameter = true,
                No = 0x8b,
                Name = "наличие в прошивке логики работы с УЗН",
                Caption = "наличие в прошивке логики работы с УЗН",
                DriverPropertyType = DriverPropertyTypeEnum.BoolType,
                BitOffset = 7 + 8
            };
            driver.Properties.Add(property4);

            if (driver.DriverType == DriverType.Pump)
            {
                ConfigurationDriverHelper.AddBoolProprety(driver, 0x8b, "ЭКМ на выходе насоса", 0);
                ConfigurationDriverHelper.AddBoolProprety(driver, 0x8b, "УЗН Старт", 1);
            }
            else
            {
                ConfigurationDriverHelper.AddBoolProprety(driver, 0x8b, "ДД/ДУ Пуск", 0);
                ConfigurationDriverHelper.AddBoolProprety(driver, 0x8b, "ДД/ДУ Стоп", 1);
            }

            if (driver.DriverType == DriverType.Pump)
            {
                ConfigurationDriverHelper.AddBoolProprety(driver, 0x8b, "УЗН Стоп", 2);
            }
            if (driver.DriverType == DriverType.DrenazhPump)
            {
                ConfigurationDriverHelper.AddBoolProprety(driver, 0x8b, "Авария", 2);
            }
            if (driver.DriverType == DriverType.CompensationPump)
            {
                ConfigurationDriverHelper.AddBoolProprety(driver, 0x8b, "Авария", 2);
            }

            if (driver.DriverType == DriverType.Pump)
            {
                ConfigurationDriverHelper.AddIntProprety(driver, 0x84, "уставка времени ожидания выхода насоса на режим, с", 0, 3, 3, 30);
            }
            if (driver.DriverType == DriverType.JokeyPump)
            {
                ConfigurationDriverHelper.AddIntProprety(driver, 0x84, "уставка времени ожидания восстановления давления, мин", 0, 2, 2, 255);
            }
            if (driver.DriverType == DriverType.CompensationPump)
            {
                ConfigurationDriverHelper.AddIntProprety(driver, 0x84, "уставка времени аварии пневмоемкости, мин", 0, 2, 2, 255);
            }
        }