KWD 7 ay önce
ebeveyn
işleme
2367b60ec0

+ 5 - 0
TeamAAS-VM/Core/FilePath.cs

@@ -61,5 +61,10 @@ namespace TeamAAS_VP.Core
         /// 后台脚本存放文件夹
         /// </summary>
         public static string BackgroundScriptPath = "..//Background Script";
+
+        /// <summary>
+        /// 保压参数存放路径
+        /// </summary>
+        public static string PressureParamterConfigPath = "..//Config//PressureParamterConfig.cfg";
     }
 }

+ 30 - 0
TeamAAS-VM/Core/Management.cs

@@ -1092,6 +1092,36 @@ namespace TeamAAS_VP.Core
             }
         }
 
+        public async Task WriteParameterToPlcAsync()
+        {
+            var addressConfig = _configService.GetPlcAddresses();
+            var plc = _plcService.GetPlcByNumber(addressConfig.PlcNo) as OpcUaClientPLC;
+            if (plc == null || !plc.IsConnected) return;
+            try
+            {
+                if (!File.Exists(FilePath.PressureParamterConfigPath))
+                {
+                    List<PressureModel> models = new List<PressureModel>();
+                    models.Add(new PressureModel());
+                    models.Add(new PressureModel());
+                    models.Add(new PressureModel());
+                    FileHelper.WriteJsonFile(models, FilePath.PressureParamterConfigPath);
+                }
+                var PressureParam = FileHelper.ReadJsonFile<List<PressureModel>>(FilePath.PressureParamterConfigPath);
+                await plc.WriteNodeAsync(addressConfig.PUT_Down_Time.Address, PressureParam[0].PressureTime);
+                await plc.WriteNodeAsync(addressConfig.PUT_WetOut_Num.Address, PressureParam[0].PressureNum);
+                await plc.WriteNodeAsync(addressConfig.PUT_WetOut_Num_max.Address, PressureParam[0].PressureNumMax);
+                await plc.WriteNodeAsync(addressConfig.Down_Time.Address, PressureParam[1].PressureTime);
+                await plc.WriteNodeAsync(addressConfig.Down_WetOut_Num.Address, PressureParam[1].PressureNum);
+                await plc.WriteNodeAsync(addressConfig.Down_WetOut_Num_max.Address, PressureParam[1].PressureNumMax);
+            }
+            catch (Exception)
+            {
+
+            }
+
+        }
+
         /// <summary>
         /// 固定向上相机拍照结果
         /// </summary>

+ 91 - 0
TeamAAS-VM/Models/PLC/PlcAddressConfig.cs

@@ -579,6 +579,67 @@ namespace TeamAAS_VP.Models.PLC
             get { return _In_DryMode; }
             set { SetProperty(ref _In_DryMode, value); }
         }
+
+        private PlcAddress _PUT_Down_Time;
+        /// <summary>
+        /// 组装保压时间
+        /// </summary>
+        public PlcAddress PUT_Down_Time
+        {
+            get { return _PUT_Down_Time; }
+            set { SetProperty(ref _PUT_Down_Time, value); }
+        }
+
+        private PlcAddress _PUT_WetOut_Num;
+        /// <summary>
+        /// 组装保压最大值
+        /// </summary>
+        public PlcAddress PUT_WetOut_Num
+        {
+            get { return _PUT_WetOut_Num; }
+            set { SetProperty(ref _PUT_WetOut_Num, value); }
+        }
+
+        private PlcAddress _PUT_WetOut_Num_max;
+        /// <summary>
+        /// 组装保压最大值
+        /// </summary>
+        public PlcAddress PUT_WetOut_Num_max
+        {
+            get { return _PUT_WetOut_Num_max; }
+            set { SetProperty(ref _PUT_WetOut_Num_max, value); }
+        }
+
+        private PlcAddress _Down_Time;
+        /// <summary>
+        /// 后保压时间
+        /// </summary>
+        public PlcAddress Down_Time
+        {
+            get { return _Down_Time; }
+            set { SetProperty(ref _Down_Time, value); }
+        }
+
+        private PlcAddress _Down_WetOut_Num;
+        /// <summary>
+        /// 后保压压力
+        /// </summary>
+        public PlcAddress Down_WetOut_Num
+        {
+            get { return _Down_WetOut_Num; }
+            set { SetProperty(ref _Down_WetOut_Num, value); }
+        }
+
+        private PlcAddress _Down_WetOut_Num_max;
+        /// <summary>
+        /// 后保压最大值
+        /// </summary>
+        public PlcAddress Down_WetOut_Num_max
+        {
+            get { return _Down_WetOut_Num_max; }
+            set { SetProperty(ref _Down_WetOut_Num_max, value); }
+        }
+
         #endregion
 
         public PlcAddressConfig()
@@ -1021,6 +1082,36 @@ namespace TeamAAS_VP.Models.PLC
             In_DryMode.DataType = "bool";
             In_DryMode.Description = "空跑模式";
 
+            PUT_Down_Time = Ensure(PUT_Down_Time);
+            PUT_Down_Time.Address = "ns=4;s=DB_other|PUT_Down_Time";
+            PUT_Down_Time.DataType = "int32";
+            PUT_Down_Time.Description = "组装保压时间";
+
+            PUT_WetOut_Num = Ensure(PUT_WetOut_Num);
+            PUT_WetOut_Num.Address = "ns=4;s=DB_other|PUT_WetOut_Num";
+            PUT_WetOut_Num.DataType = "float";
+            PUT_WetOut_Num.Description = "组装保压压力";
+
+            PUT_WetOut_Num_max = Ensure(PUT_WetOut_Num_max);
+            PUT_WetOut_Num_max.Address = "ns=4;s=DB_other|PUT_WETOUT_NUM_MAX";
+            PUT_WetOut_Num_max.DataType = "float";
+            PUT_WetOut_Num_max.Description = "组装保压压力最大值";
+
+            Down_Time = Ensure(Down_Time);
+            Down_Time.Address = "ns=4;s=DB_other|Down_Time";
+            Down_Time.DataType = "int32";
+            Down_Time.Description = "后保压时间";
+
+            Down_WetOut_Num = Ensure(Down_WetOut_Num);
+            Down_WetOut_Num.Address = "ns=4;s=DB_other|WetOut_Num";
+            Down_WetOut_Num.DataType = "float";
+            Down_WetOut_Num.Description = "后保压压力";
+
+            Down_WetOut_Num_max = Ensure(Down_WetOut_Num_max);
+            Down_WetOut_Num_max.Address = "ns=4;s=DB_other|WetOut_MAX";
+            Down_WetOut_Num_max.DataType = "float";
+            Down_WetOut_Num_max.Description = "后保压压力最大值";
+
             // 说明:若项目中 PlcAddress 的实际属性名或类型与此不同(例如使用枚举、不同字段名),
             // 请根据实际类型调整赋值。本方法主要提供合理的默认字符串地址、数据类型及描述,便于后续从配置覆盖。
         }

+ 37 - 0
TeamAAS-VM/Models/PressureModel.cs

@@ -0,0 +1,37 @@
+using Prism.Mvvm;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace TeamAAS_VP.Models
+{
+    public class PressureModel : BindableBase
+    {
+		private Int32 _PressureTime = 0;
+
+		public Int32 PressureTime
+        {
+			get { return _PressureTime; }
+            set { SetProperty(ref _PressureTime, value); }
+        }
+
+		private float _PressureNum = 0;
+
+		public float PressureNum
+        {
+			get { return _PressureNum; }
+            set { SetProperty(ref _PressureNum, value); }
+        }
+
+        private float _PressureNumMax = 0;
+
+        public float PressureNumMax
+        {
+            get { return _PressureNumMax; }
+            set { SetProperty(ref _PressureNumMax, value); }
+        }
+
+    }
+}

+ 1 - 0
TeamAAS-VM/TeamAAS-VP.csproj

@@ -541,6 +541,7 @@
     <Compile Include="Models\DeviceInfo.cs" />
     <Compile Include="Models\Feeder\ScrewFeederInfo.cs" />
     <Compile Include="Models\PhotoCaptureRecord.cs" />
+    <Compile Include="Models\PressureModel.cs" />
     <Compile Include="Models\ScrewFeederBatchRecord.cs" />
     <Compile Include="Services\MesService.cs" />
     <Compile Include="ValueConverter\CountToColumnsConverter.cs" />

+ 1 - 0
TeamAAS-VM/ViewModels/HomeViewModel.cs

@@ -273,6 +273,7 @@ namespace TeamAAS_VP.ViewModels
                     await _productService.LoadProductAsync(product.ID);
                     _productService.SetCurrentProduct(product.ID);
                     await management.WritePositionToPlcAsync();
+                    await management.WriteParameterToPlcAsync();
                     if (DialogHost.IsDialogOpen("RootDialog"))
                     {
                         DialogHost.Close("RootDialog");

+ 4 - 3
TeamAAS-VM/ViewModels/MainWindowViewModel.cs

@@ -158,7 +158,7 @@ namespace TeamAAS_VP.ViewModels
         string lastNavigationName = string.Empty;
         private void NavigationVoid(string obj)
         {
-            if(!string.IsNullOrEmpty(lastNavigationName))
+            if (!string.IsNullOrEmpty(lastNavigationName))
             {
                 if (lastNavigationName == obj)
                 {
@@ -227,7 +227,7 @@ namespace TeamAAS_VP.ViewModels
             currentUser = Guid.NewGuid();
             Status.Add(new StatusInfo(currentUser, $"{Lang.当前用户}:{_systemDatabaseService.GetCurrentUser().UserName}[{_systemDatabaseService.GetCurrentUser().userPart.ToString()}]", new SolidColorBrush(Colors.White)));
 
-            var _= Application.Current.Dispatcher.BeginInvoke(new Action(() => { _dialogService.ShowDialog("UProgressBar", rst => { }); }));
+            var _ = Application.Current.Dispatcher.BeginInvoke(new Action(() => { _dialogService.ShowDialog("UProgressBar", rst => { }); }));
 
             _ = App.Current.Dispatcher.BeginInvoke(new Action(() =>
             {
@@ -298,7 +298,7 @@ namespace TeamAAS_VP.ViewModels
             {
                 _eventAggregator.GetEvent<ProgressNotification>().Publish(new UProgressBar.ProgressParameter { Maximum = max, Minimum = 0, SubTitle = $"{Lang.初始化中}...", Message = $"{Lang.加载所有产品}...", Value = curvalue });
             }));
-             await _productService.InitializeAsync();
+            await _productService.InitializeAsync();
 
             //-------------------SETP 9: 开启服务器监听-----------------------------------------------------------------------
             curvalue += 1;
@@ -356,6 +356,7 @@ namespace TeamAAS_VP.ViewModels
                 }
                 _container.Resolve<ShowVisionRenderViewModel>().Renders = management.Renders;
                 await management.WritePositionToPlcAsync();
+                await management.WriteParameterToPlcAsync();
             }
             var homeviewmodel = _container.Resolve<HomeViewModel>();
             homeviewmodel.OnNavigatedTo(null);

+ 47 - 3
TeamAAS-VM/ViewModels/SettingViewModel.cs

@@ -14,6 +14,7 @@ using System.Collections.ObjectModel;
 using System.ComponentModel;
 using System.Drawing.Drawing2D;
 using System.Globalization;
+using System.IO;
 using System.Linq;
 using System.Text;
 using System.Windows;
@@ -340,6 +341,23 @@ namespace TeamAAS_VP.ViewModels
             get { return _CardReaderConfig; }
             set { SetProperty(ref _CardReaderConfig, value); }
         }
+
+        private PressureModel _AssemblyPressureConfig;
+
+        public PressureModel AssemblyPressureConfig
+        {
+            get { return _AssemblyPressureConfig; }
+            set { SetProperty(ref _AssemblyPressureConfig, value); }
+        }
+
+        private PressureModel _DownPressureConfig;
+
+        public PressureModel DownPressureConfig
+        {
+            get { return _DownPressureConfig; }
+            set { SetProperty(ref _DownPressureConfig, value); }
+        }
+
         #endregion
 
         #region 命令
@@ -1097,7 +1115,7 @@ namespace TeamAAS_VP.ViewModels
 
                         try
                         {
-                            param=_configService.AddOrUpdateScrewFeeder(param);
+                            param = _configService.AddOrUpdateScrewFeeder(param);
                             // 直接添加对话框返回的对象(也可以根据需要映射字段)
                             ScrewFeederList.Add(param);
                         }
@@ -1187,7 +1205,24 @@ namespace TeamAAS_VP.ViewModels
 
         private void OnLoad()
         {
+            try
+            {
+                if (!File.Exists(FilePath.PressureParamterConfigPath))
+                {
+                    List<PressureModel> models = new List<PressureModel>();
+                    models.Add(new PressureModel());
+                    models.Add(new PressureModel());
+                    models.Add(new PressureModel());
+                    FileHelper.WriteJsonFile(models, FilePath.PressureParamterConfigPath);
+                }
+                var pressureParam = FileHelper.ReadJsonFile<List<PressureModel>>(FilePath.PressureParamterConfigPath);
+                this.AssemblyPressureConfig = pressureParam[0];
+                this.DownPressureConfig = pressureParam[1];
+            }
+            catch (Exception)
+            {
 
+            }
         }
 
         private void OnPropertyChanged(object sender, PropertyChangedEventArgs e)
@@ -1537,6 +1572,7 @@ namespace TeamAAS_VP.ViewModels
             {
                 try
                 {
+                    SavePressureConfig();
                     var sysConfig = _configService.GetSystemConfiguration();
                     sysConfig.WorkMode = WorkMode;
                     sysConfig.PickPointNum = PickPointNum;
@@ -1547,7 +1583,7 @@ namespace TeamAAS_VP.ViewModels
                     sysConfig.FixedCameraPickNum = FixedCameraPickNum;
                     sysConfig.FixedCameraPutNum = FixedCameraPutNum;
                     sysConfig.FixedCameracheckNum = FixedCameracheckNum;
-                    sysConfig.ScrewTeachNum= ScrewTeachNum;
+                    sysConfig.ScrewTeachNum = ScrewTeachNum;
                     sysConfig.PressureSensorConfig = PressureSensorConfig;
 
                     _configService.SaveSystemConfiguration(sysConfig);
@@ -1556,7 +1592,7 @@ namespace TeamAAS_VP.ViewModels
                 }
                 catch (Exception ex)
                 {
-                    _eventAggregator.GetEvent<SnackbarMessageNotification>().Publish(new MessageParameter() { Msg =ex.Message, Duration = 1 });
+                    _eventAggregator.GetEvent<SnackbarMessageNotification>().Publish(new MessageParameter() { Msg = ex.Message, Duration = 1 });
                 }
             }
         }
@@ -1578,6 +1614,14 @@ namespace TeamAAS_VP.ViewModels
             }
         }
 
+        private void SavePressureConfig()
+        {
+            List<PressureModel> models = new List<PressureModel>();
+            models.Add(AssemblyPressureConfig);
+            models.Add(DownPressureConfig);
+            FileHelper.WriteJsonFile(models, FilePath.PressureParamterConfigPath);
+        }
+
         /// <summary>
         /// 保存读卡器配置
         /// </summary>

+ 188 - 76
TeamAAS-VM/Views/SettingView.xaml

@@ -2502,83 +2502,195 @@
                             </StackPanel>
                         </Grid>
                         <!--刷卡参数配置-->
-                        <GroupBox Grid.Row="5"
-                                  Grid.ColumnSpan="2"
-                                  Header="刷卡器配置"
-                                  HorizontalAlignment="Left"
-                                  MinWidth="400"
-                                  Margin="0,12,0,0">
-                            <Grid Margin="10">
-                                <Grid.ColumnDefinitions>
-                                    <ColumnDefinition Width="auto" />
-                                    <ColumnDefinition Width="*" />
-                                </Grid.ColumnDefinitions>
-                                <Grid.RowDefinitions>
-                                    <RowDefinition Height="Auto" />
-                                    <RowDefinition Height="Auto" />
-                                    <RowDefinition Height="Auto" />
-                                    <RowDefinition Height="Auto" />
-                                    <RowDefinition Height="Auto" />
-                                    <RowDefinition Height="Auto" />
-                                </Grid.RowDefinitions>
-                                <TextBlock Text="PortName:"
-                                           Grid.Row="0"
-                                           Grid.Column="0"
-                                           HorizontalAlignment="Right" />
-                                <TextBox Text="{Binding CardReaderConfig.PortName,Mode=TwoWay}"
-                                         Grid.Row="0"
-                                         Grid.Column="1"
-                                         Margin="6,0" />
-                                <TextBlock Text="BaudRate:"
-                                           Grid.Row="1"
-                                           Grid.Column="0"
-                                           HorizontalAlignment="Right" />
-                                <TextBox Text="{Binding CardReaderConfig.BaudRate,Mode=TwoWay}"
-                                         Grid.Row="1"
-                                         Grid.Column="1"
-                                         Margin="6,0" />
-                                <TextBlock Text="Parity:"
-                                           Grid.Row="2"
-                                           Grid.Column="0"
-                                           HorizontalAlignment="Right" />
-                                <ComboBox Grid.Row="2"
-                                          Grid.Column="1"
-                                          SelectedItem="{Binding CardReaderConfig.Parity,Mode=TwoWay}"
-                                          ItemsSource="{Binding Source={StaticResource Parity}}" />
-                                <TextBlock Text="StopBits:"
-                                           Grid.Row="3"
-                                           Grid.Column="0"
-                                           HorizontalAlignment="Right" />
-                                <ComboBox Grid.Row="3"
-                                          Grid.Column="1"
-                                          SelectedItem="{Binding CardReaderConfig.StopBits,Mode=TwoWay}"
-                                          ItemsSource="{Binding Source={StaticResource StopBits}}" />
-                                <TextBlock Text="DataBits:"
-                                           Grid.Row="4"
+                        <StackPanel Grid.Row="5"
+                                    Margin="0,12,0,0"
+                                    Orientation="Horizontal">
+                            <!--刷卡参数配置-->
+                            <GroupBox Header="刷卡器配置"
+                                      Width="200"
+                                      Margin="0,0,20,0"
+                                      HorizontalAlignment="Left">
+                                <Grid Margin="10">
+                                    <Grid.ColumnDefinitions>
+                                        <ColumnDefinition Width="auto" />
+                                        <ColumnDefinition Width="*" />
+                                    </Grid.ColumnDefinitions>
+                                    <Grid.RowDefinitions>
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                    </Grid.RowDefinitions>
+                                    <TextBlock Text="PortName:"
+                                               Grid.Row="0"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding CardReaderConfig.PortName,Mode=TwoWay}"
+                                             Grid.Row="0"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="BaudRate:"
+                                               Grid.Row="1"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding CardReaderConfig.BaudRate,Mode=TwoWay}"
+                                             Grid.Row="1"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="Parity:"
+                                               Grid.Row="2"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <ComboBox Grid.Row="2"
+                                              Grid.Column="1"
+                                              SelectedItem="{Binding CardReaderConfig.Parity,Mode=TwoWay}"
+                                              ItemsSource="{Binding Source={StaticResource Parity}}" />
+                                    <TextBlock Text="StopBits:"
+                                               Grid.Row="3"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <ComboBox Grid.Row="3"
+                                              Grid.Column="1"
+                                              SelectedItem="{Binding CardReaderConfig.StopBits,Mode=TwoWay}"
+                                              ItemsSource="{Binding Source={StaticResource StopBits}}" />
+                                    <TextBlock Text="DataBits:"
+                                               Grid.Row="4"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding CardReaderConfig.DataBits,Mode=TwoWay}"
+                                             Grid.Row="4"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+
+                                    <!--<Button Grid.Row="5"
                                            Grid.Column="0"
-                                           HorizontalAlignment="Right" />
-                                <TextBox Text="{Binding CardReaderConfig.DataBits,Mode=TwoWay}"
-                                         Grid.Row="4"
-                                         Grid.Column="1"
-                                         Margin="6,0" />
-
-                                <Button Grid.Row="5"
-                                        Grid.Column="1"
-                                        Margin="0,6"
-                                        Style="{StaticResource MaterialDesignRaisedButton}"
-                                        materialDesign:ButtonAssist.CornerRadius="10"
-                                        MinWidth="120"
-                                        Command="{Binding SaveCardReaderConfigCommand}">
-                                    <StackPanel Orientation="Horizontal"
-                                                HorizontalAlignment="Center">
-                                        <materialDesign:PackIcon Kind="ContentSaveCheck"
-                                                                 Margin="0,0,6,0" />
-                                        <TextBlock VerticalAlignment="Center"
-                                                   Text="保存刷卡器配置" />
-                                    </StackPanel>
-                                </Button>
-                            </Grid>
-                        </GroupBox>
+                                           Grid.ColumnSpan="2"
+                                           Margin="0,6"
+                                           Style="{StaticResource MaterialDesignRaisedButton}"
+                                           materialDesign:ButtonAssist.CornerRadius="10"
+                                           MinWidth="120"
+                                           Command="{Binding SaveCardReaderConfigCommand}">
+                                       <StackPanel Orientation="Horizontal"
+                                                   HorizontalAlignment="Center">
+                                           <materialDesign:PackIcon Kind="ContentSaveCheck"
+                                                                    Margin="0,0,6,0" />
+                                           <TextBlock VerticalAlignment="Center"
+                                                      Text="保存刷卡器配置" />
+                                       </StackPanel>
+                                   </Button>-->
+                                </Grid>
+                            </GroupBox>
+
+                            <GroupBox Header="组装保压配置"
+                                      Margin="0"
+                                      Width="200">
+                                <Grid Margin="10">
+                                    <Grid.ColumnDefinitions>
+                                        <ColumnDefinition Width="auto" />
+                                        <ColumnDefinition Width="*" />
+                                        <ColumnDefinition Width="auto" />
+                                    </Grid.ColumnDefinitions>
+                                    <Grid.RowDefinitions>
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                    </Grid.RowDefinitions>
+                                    <TextBlock Text="保压时间:"
+                                               Grid.Row="0"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding AssemblyPressureConfig.PressureTime,Mode=TwoWay}"
+                                             Grid.Row="0"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="ms"
+                                               Grid.Row="0"
+                                               Grid.Column="2"
+                                               HorizontalAlignment="Right" />
+                                    <TextBlock Text="保压压力:"
+                                               Grid.Row="1"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding AssemblyPressureConfig.PressureNum,Mode=TwoWay}"
+                                             Grid.Row="1"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="kg"
+                                               Grid.Row="1"
+                                               Grid.Column="2"
+                                               HorizontalAlignment="Right" />
+                                    <TextBlock Text="保压最大值:"
+                                               Grid.Row="2"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding AssemblyPressureConfig.PressureNumMax,Mode=TwoWay}"
+                                             Grid.Row="2"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="kg"
+                                               Grid.Row="2"
+                                               Grid.Column="2"
+                                               HorizontalAlignment="Right" />
+                                </Grid>
+                            </GroupBox>
+                            <GroupBox Header="后保压配置"
+                                      Margin="20,0"
+                                      
+                                      Width="200">
+                                <Grid Margin="10">
+                                    <Grid.ColumnDefinitions>
+                                        <ColumnDefinition Width="auto" />
+                                        <ColumnDefinition Width="*" />
+                                        <ColumnDefinition Width="auto" />
+                                    </Grid.ColumnDefinitions>
+                                    <Grid.RowDefinitions>
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                        <RowDefinition Height="Auto" />
+                                    </Grid.RowDefinitions>
+                                    <TextBlock Text="保压时间:"
+                                               Grid.Row="0"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding DownPressureConfig.PressureTime,Mode=TwoWay}"
+                                             Grid.Row="0"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="ms"
+                                               Grid.Row="0"
+                                               Grid.Column="2"
+                                               HorizontalAlignment="Right" />
+                                    <TextBlock Text="保压压力:"
+                                               Grid.Row="1"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding DownPressureConfig.PressureNum,Mode=TwoWay}"
+                                             Grid.Row="1"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="kg"
+                                               Grid.Row="1"
+                                               Grid.Column="2"
+                                               HorizontalAlignment="Right" />
+                                    <TextBlock Text="保压最大值:"
+                                               Grid.Row="2"
+                                               Grid.Column="0"
+                                               HorizontalAlignment="Right" />
+                                    <TextBox Text="{Binding DownPressureConfig.PressureNumMax,Mode=TwoWay}"
+                                             Grid.Row="2"
+                                             Grid.Column="1"
+                                             Margin="6,0" />
+                                    <TextBlock Text="kg"
+                                               Grid.Row="2"
+                                               Grid.Column="2"
+                                               HorizontalAlignment="Right" />
+                                </Grid>
+                            </GroupBox>
+                        </StackPanel>
                     </StackPanel>
                 </ScrollViewer>
             </TabItem>