diff options
| author | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2022-11-28 18:54:47 +0200 |
|---|---|---|
| committer | Victoria Plitt <Victoria.Plitt@twine-s.com> | 2022-11-28 18:54:47 +0200 |
| commit | 718f5dbd2c232606f276a23ecc71d2b3ffc3da50 (patch) | |
| tree | 244f30b2760dbff444624a46bc131a2063967ebd /Software/Visual_Studio/PPC | |
| parent | 800969172a32b80ac753889de6f73d7a66acbd50 (diff) | |
| download | Tango-718f5dbd2c232606f276a23ecc71d2b3ffc3da50.tar.gz Tango-718f5dbd2c232606f276a23ecc71d2b3ffc3da50.zip | |
PPC. VFT. Added site option "Min limit dL (Fine Tuning)" under Advanced options - only for Technician Mode
Related Work Items: #7526
Diffstat (limited to 'Software/Visual_Studio/PPC')
3 files changed, 24 insertions, 1 deletions
diff --git a/Software/Visual_Studio/PPC/Modules/Tango.PPC.JobsV2/Dialogs/VectorFineTuningDialogVM.cs b/Software/Visual_Studio/PPC/Modules/Tango.PPC.JobsV2/Dialogs/VectorFineTuningDialogVM.cs index 6a512c5de..495bde270 100644 --- a/Software/Visual_Studio/PPC/Modules/Tango.PPC.JobsV2/Dialogs/VectorFineTuningDialogVM.cs +++ b/Software/Visual_Studio/PPC/Modules/Tango.PPC.JobsV2/Dialogs/VectorFineTuningDialogVM.cs @@ -1637,7 +1637,19 @@ namespace Tango.PPC.Jobs.Dialogs } else { - trial.NewSuggestionL = LimitToRange((trial.SuggestionL + (TargetL - (double)trial.VectorCorrectionL)), 0, 100); + var settings = SettingsManager.Default.GetOrCreate<PPCSettings>(); + bool bNotChangeL = false; + if(settings.FineTuningMinLimitdL > 0) + { + var dL = Math.Abs((double)trial.VectorCorrectionL - trial.SuggestionL); + var dA = Math.Abs((double)trial.VectorCorrectionA - trial.SuggestionA); + var dB = Math.Abs((double)trial.VectorCorrectionB - trial.SuggestionB); + if(dL < settings.FineTuningMinLimitdL && (dL < dA || dL < dB)) + { + bNotChangeL = true; + } + } + trial.NewSuggestionL = bNotChangeL ? trial.SuggestionL : LimitToRange((trial.SuggestionL + (TargetL - (double)trial.VectorCorrectionL)), 0, 100); trial.NewSuggestionA = LimitToRange((trial.SuggestionA + (TargetA - (double)trial.VectorCorrectionA)), -128, 127); trial.NewSuggestionB = LimitToRange((trial.SuggestionB + (TargetB - (double)trial.VectorCorrectionB)), -128, 127); LogManager.Log($" Fine Tuning. Suggestion (calculated) LAB L:'{trial.NewSuggestionL}'A:'{trial.NewSuggestionA}' B:'{trial.NewSuggestionB}'."); diff --git a/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml b/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml index 87a1a361f..20f65a8fb 100644 --- a/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml +++ b/Software/Visual_Studio/PPC/Modules/Tango.PPC.MachineSettings/Views/MainView.xaml @@ -427,6 +427,11 @@ <touch:TouchToggleSlider IsChecked="{Binding EnableUWF}" Margin="0 0 100 0" DockPanel.Dock="Right" Style="{StaticResource TangoToggleButtonGrayAccent}" HorizontalAlignment="Right" Width="90"></touch:TouchToggleSlider> </DockPanel> + <DockPanel Margin="0 20 0 0" TextElement.FontSize="{StaticResource TangoDefaultFontSize}"> + <TextBlock VerticalAlignment="Center">Min limit dL (Fine Tuning)</TextBlock> + <touch:TouchNumericTextBox Minimum="0" Maximum="10" KeyboardContainer="{Binding ElementName=Container}" Value="{Binding Settings.FineTuningMinLimitdL}" Margin="0 0 100 0" DockPanel.Dock="Right" HorizontalAlignment="Right" Width="90" HasDecimalPoint="True"></touch:TouchNumericTextBox> + </DockPanel> + <DockPanel Margin="0 20 0 0"> <touch:TouchIcon VerticalAlignment="Top" Icon="InformationOutline" Foreground="{StaticResource TangoGrayTextBrush}"></touch:TouchIcon> <TextBlock Margin="10 0 0 0" VerticalAlignment="Top" TextWrapping="Wrap" FontSize="{StaticResource TangoSmallFontSize}" Foreground="{StaticResource TangoGrayTextBrush}"> diff --git a/Software/Visual_Studio/PPC/Tango.PPC.Common/PPCSettings.cs b/Software/Visual_Studio/PPC/Tango.PPC.Common/PPCSettings.cs index fce1ce046..c80c91002 100644 --- a/Software/Visual_Studio/PPC/Tango.PPC.Common/PPCSettings.cs +++ b/Software/Visual_Studio/PPC/Tango.PPC.Common/PPCSettings.cs @@ -322,6 +322,11 @@ namespace Tango.PPC.Common public int FineTuningTrialLengthMeters { get; set; } /// <summary> + /// Gets or sets the fine tuning minimum limit dL to avoid change L. + /// </summary> + public double FineTuningMinLimitdL { get; set; } + + /// <summary> /// Gets the machine service address. /// </summary> /// <returns></returns> @@ -338,6 +343,7 @@ namespace Tango.PPC.Common LubricationLevels = new List<RmlLubricationLevel>(); JobUploadStrategy = JobUploadStrategy.JobDescriptionFile; FineTuningTrialLengthMeters = 200; + FineTuningMinLimitdL = 0.0; EnableGradientGeneration = true; GradientGenerationResolution = 40; MachineScanningTimeoutSeconds = 20; |
