private void WriteSettings()
        {
            try
            {
                if (AnyAinParameterSetted)
                {
                    _uiRoot.Notifier.Notify(() => { _logger.Log("Запись группы настроек..."); });
                    var settingsPart = new AinSettingsPartWritable
                    {
                        Unom = Parameter01Vm.CurrentValue,
                        Fnom = Parameter03Vm.CurrentValue,
                        //Imcw = _imcwParameterVm.FullValue.HasValue? (ushort)_imcwParameterVm.FullValue.Value : (ushort?)null
                        Imcw = _imcwParameterVm.FullValue
                    };
                    _ainSettingsReaderWriter.WriteSettingsAsync(settingsPart, exception =>
                    {
                        _uiRoot.Notifier.Notify(() =>
                        {
                            if (exception != null)
                            {
                                _logger.Log("Ошибка при записи настроек. " + exception.Message);
                            }
                            else
                            {
                                _logger.Log("Группа настроек была успешно записана");
                            }
                        });
                    });
                }

                if (AnyEngineParameterSetted)
                {
                    _uiRoot.Notifier.Notify(() => { _logger.Log("Запись настроек двигателя..."); });
                    var settingsPart = new EngineSettingsPartWritable
                    {
                        Inom   = ConvertDecimalToUshort(Parameter02Vm.CurrentValue),
                        Nnom   = ConvertDecimalToUshort(Parameter04Vm.CurrentValue),
                        Nmax   = ConvertDecimalToUshort(Parameter05Vm.CurrentValue),
                        Pnom   = ConvertDecimalToUshort(Parameter06Vm.CurrentValue),
                        CosFi  = ConvertDecimalToUshort(Parameter08Vm.CurrentValue),
                        Eff    = ConvertDecimalToUshort(Parameter09Vm.CurrentValue),
                        Mass   = ConvertDecimalToUshort(Parameter10Vm.CurrentValue),
                        MmM    = ConvertDecimalToUshort(Parameter11Vm.CurrentValue),
                        Height = ConvertDecimalToUshort(Parameter12Vm.CurrentValue)
                    };
                    _engineSettingsWriter.WriteSettingsAsync(settingsPart, exception =>
                    {
                        if (exception != null)
                        {
                            _logger.Log("Ошибка при записи настроек двигателя. " + exception.Message);
                        }
                        else
                        {
                            _logger.Log("Настройки двигателя были успешно записаны");
                        }
                    });
                }
            }
            catch (Exception ex)
            {
                _logger.Log("Не удалось записать группу настроек. " + ex.Message);
            }
        }
        private void WriteSettings()
        {
            try
            {
                // А зачем отправлять команду. если ничего нет? :)
                if (AnyAinParameterSetted)
                {
                    _uiRoot.Notifier.Notify(() => { _logger.Log("Запись группы настроек..."); });
                    var settingsPart = new AinSettingsPartWritable
                    {
                        Fmax    = Parameter01Vm.CurrentValue,
                        IoutMax = ConvertDecimalToShort(Parameter02Vm.CurrentValue),
                        Fmin    = Parameter03Vm.CurrentValue,
                        Imax    = (short)Parameter04Vm.CurrentValue,
                        UdcMin  = (short)Parameter05Vm.CurrentValue,
                        UdcMax  = (short)Parameter06Vm.CurrentValue,
                        TextMax = (short)Parameter07Vm.CurrentValue
                    };
                    _ainSettingsReaderWriter.WriteSettingsAsync(settingsPart, exception =>
                    {
                        _uiRoot.Notifier.Notify(() =>
                        {
                            if (exception != null)
                            {
                                _logger.Log("Ошибка при записи настроек. " + exception.Message);
                            }
                            else
                            {
                                _logger.Log("Группа настроек была успешно записана");
                            }
                        });
                    });
                }

                // А зачем отправлять команду. если ничего нет? :)
                if (AnyEngineParameterSetted)
                {
                    _uiRoot.Notifier.Notify(() => { _logger.Log("Запись настроек двигателя..."); });
                    var settingsPart = new EngineSettingsPartWritable
                    {
                        I2Tmax      = ConvertDecimalToUint(Parameter08Vm.CurrentValue),
                        Icontinious = ConvertDecimalToUshort(Parameter09Vm.CurrentValue),
                        ZeroF       = ConvertDecimalToUshort(Parameter10Vm.CurrentValue)
                    };
                    _engineSettingsWriter.WriteSettingsAsync(settingsPart, exception =>
                    {
                        if (exception != null)
                        {
                            _logger.Log("Ошибка при записи настроек двигателя. " + exception.Message);
                        }
                        else
                        {
                            _logger.Log("Настройки двигателя были успешно записаны");
                        }
                    });
                }
            }
            catch (Exception ex)
            {
                _logger.Log("Не удалось записать группу настроек. " + ex.Message);
            }
        }