175 lines
12 KiB
XML
175 lines
12 KiB
XML
<UserControl x:Class="WeldingCommon.Views.UCPowerCalibration"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:local="clr-namespace:WeldingCommon.Views"
|
|
xmlns:view="clr-namespace:Aurora.View;assembly=Aurora"
|
|
xmlns:lvc="clr-namespace:LiveChartsCore.SkiaSharpView.WPF;assembly=LiveChartsCore.SkiaSharpView.WPF"
|
|
xmlns:behavior ="http://schemas.microsoft.com/xaml/behaviors"
|
|
mc:Ignorable="d" d:DesignHeight="900" d:DesignWidth="1600" Name="uc"
|
|
d:DataContext="{d:DesignInstance Type=local:UCPowerCalibrationViewModel}">
|
|
<UserControl.Resources>
|
|
<ResourceDictionary>
|
|
<Style x:Key="StTextBlock" TargetType="TextBlock">
|
|
<Setter Property="Foreground" Value="White"/>
|
|
<Setter Property="FontSize" Value="17"/>
|
|
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
|
<Setter Property="VerticalAlignment" Value="Stretch"/>
|
|
<Setter Property="TextAlignment" Value="Center"/>
|
|
</Style>
|
|
<Style x:Key="StTextBox" TargetType="TextBox">
|
|
<Setter Property="Background" Value="White"/>
|
|
<Setter Property="FontSize" Value="18"/>
|
|
<Setter Property="Foreground" Value="Black"/>
|
|
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
|
<Setter Property="VerticalAlignment" Value="Center"/>
|
|
<Setter Property="TextAlignment" Value="Center"/>
|
|
<Setter Property="Width" Value="auto"/>
|
|
</Style>
|
|
<Style x:Key="StButton" TargetType="Button">
|
|
<Setter Property="FontSize" Value="18"/>
|
|
<Setter Property="BorderThickness" Value="2"/>
|
|
</Style>
|
|
<view:BoolConverter x:Key="LaserEnableColor" TrueValue="Green" FalseValue="Red"/>
|
|
</ResourceDictionary>
|
|
</UserControl.Resources>
|
|
<behavior:Interaction.Triggers>
|
|
<behavior:PropertyChangedTrigger Binding="{Binding IsVisible, ElementName=uc}">
|
|
<behavior:InvokeCommandAction Command="{Binding CMD_VisibleChanged}" CommandParameter="{Binding IsVisible, ElementName=uc}"/>
|
|
</behavior:PropertyChangedTrigger>
|
|
</behavior:Interaction.Triggers>
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition/>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Grid.Column="0" Orientation="Vertical">
|
|
<GroupBox Margin="5" Header="Beam Setting">
|
|
<StackPanel Orientation="Vertical">
|
|
<Grid Height="50" Margin="5">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition/>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<RadioButton Grid.Column="0" GroupName="grBeamType" Name="radio_BeamCenter" Width="auto" Margin="5" FontSize="20" IsChecked="{Binding radioBeamTypeCenterChecked}" Command="{Binding SELECT_BeamType}" >Center</RadioButton>
|
|
<RadioButton Grid.Column="1" GroupName="grBeamType" Name="radio_BeamRing" Width="auto" Margin="5" FontSize="20" IsChecked="{Binding radioBeamTypeRingChecked}" Command="{Binding SELECT_BeamType}" >Ring</RadioButton>
|
|
</Grid>
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="6*"/>
|
|
<ColumnDefinition Width="4*"/>
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel>
|
|
<StackPanel Orientation="Horizontal">
|
|
<ComboBox x:Name="comboOutputControl" Width="150" Text="{Binding cbOutputControl}" SelectionChanged="comboOutputControl_SelectionChanged"></ComboBox>
|
|
<TextBox Width=" 80" Margin="20,0,0,0" Text="{Binding dbControlValue, StringFormat={}{0:0.000}}" TextChanged="ControlValueChanged" >
|
|
</TextBox>
|
|
<TextBlock Width=" 80" Margin="20,0,0,0" Style="{StaticResource StTextBlock}" Text="{Binding strControlUnit}" ></TextBlock>
|
|
</StackPanel>
|
|
<Slider Height="40" Margin="20" Value="{Binding nSliderValue}" ValueChanged="Slider_ValueChanged" Maximum="{Binding nSliderMax}"></Slider>
|
|
</StackPanel>
|
|
<Grid Grid.Column="1">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="5*"/>
|
|
<ColumnDefinition Width="3*"/>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Border Grid.Row="0" BorderBrush="White" BorderThickness="1" Margin="5">
|
|
<TextBlock Style="{StaticResource StTextBlock}" Text="{Binding dbPercent}"/>
|
|
</Border>
|
|
<Border Grid.Row="1" BorderBrush="White" BorderThickness="1" Margin="5">
|
|
<TextBlock Style="{StaticResource StTextBlock}" Text="{Binding dbVoltage}"/>
|
|
</Border>
|
|
<Border Grid.Row="2" BorderBrush="White" BorderThickness="1" Margin="5">
|
|
<TextBlock Style="{StaticResource StTextBlock}" Text="{Binding dbWatt}"/>
|
|
</Border>
|
|
<TextBlock Grid.Column="1" Grid.Row="0" Style="{StaticResource StTextBlock}" Margin="5">%</TextBlock>
|
|
<TextBlock Grid.Column="1" Grid.Row="1" Style="{StaticResource StTextBlock}" Margin="5">V</TextBlock>
|
|
<TextBlock Grid.Column="1" Grid.Row="2" Style="{StaticResource StTextBlock}" Margin="5">W</TextBlock>
|
|
</Grid>
|
|
</Grid>
|
|
</StackPanel>
|
|
</GroupBox>
|
|
<GroupBox Margin="5" Header="Laser Control">
|
|
<Grid Margin="5">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="5*"/>
|
|
<ColumnDefinition Width="2*"/>
|
|
<ColumnDefinition Width="3*"/>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<TextBlock Grid.Column="0" Grid.Row="0" Style="{StaticResource StTextBlock}" TextAlignment="Right" Margin="5">Power Reading Time (10000~60000)</TextBlock>
|
|
<TextBlock Grid.Column="0" Grid.Row="1" Style="{StaticResource StTextBlock}" TextAlignment="Right" Margin="5">Sampling Period (100~1000)</TextBlock>
|
|
<TextBlock Grid.Column="0" Grid.Row="2" Style="{StaticResource StTextBlock}" TextAlignment="Right" Margin="5">Average Power</TextBlock>
|
|
<TextBlock Grid.Column="0" Grid.Row="3" Style="{StaticResource StTextBlock}" TextAlignment="Right" Margin="5">Peak Power</TextBlock>
|
|
<TextBlock Grid.Column="0" Grid.Row="4" Style="{StaticResource StTextBlock}" TextAlignment="Right" Margin="5">Sampling Count</TextBlock>
|
|
<TextBox Grid.Column="1" Grid.Row="0" Style="{StaticResource StTextBox}" Margin="5" Text="{Binding nPowerReadingTime}"></TextBox>
|
|
<TextBox Grid.Column="1" Grid.Row="1" Style="{StaticResource StTextBox}" Margin="5" Text="{Binding nSamplingPeriod}"></TextBox>
|
|
<TextBlock Grid.Column="1" Grid.Row="2" Style="{StaticResource StTextBlock}" Margin="5" Text="{Binding dbAveragePower , StringFormat={}{0:0.0}}"></TextBlock>
|
|
<TextBlock Grid.Column="1" Grid.Row="3" Style="{StaticResource StTextBlock}" Margin="5" Text="{Binding dbPeakPower , StringFormat={}{0:0.0}}"></TextBlock>
|
|
<TextBlock Grid.Column="1" Grid.Row="4" Style="{StaticResource StTextBlock}" Margin="5" Text="{Binding nSampingCount}"></TextBlock>
|
|
<TextBlock Grid.Column="2" Grid.Row="0" Style="{StaticResource StTextBlock}" TextAlignment="Left" Margin="5">msec</TextBlock>
|
|
<TextBlock Grid.Column="2" Grid.Row="1" Style="{StaticResource StTextBlock}" TextAlignment="Left" Margin="5">msec</TextBlock>
|
|
<TextBlock Grid.Column="2" Grid.Row="2" Style="{StaticResource StTextBlock}" TextAlignment="Left" Margin="5">Watt</TextBlock>
|
|
<TextBlock Grid.Column="2" Grid.Row="3" Style="{StaticResource StTextBlock}" TextAlignment="Left" Margin="5">Watt</TextBlock>
|
|
<Button Grid.Column="0" Grid.Row="5" Command="{Binding CMD_PowerReading}" FontSize="18" Margin="10" Height="60" Content="Power Reading (Emission ON)" ></Button>
|
|
<Button Grid.Column="1" Grid.Row="5" Grid.ColumnSpan="2" Command="{Binding CMD_StopEmission}" FontSize="18" Margin="10">Stop Emission</Button>
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Margin="5" Header="Graph">
|
|
<Grid Margin="5">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="2*"/>
|
|
<ColumnDefinition Width="5*"/>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Button Grid.Column="0" Grid.Row="0" Command="{Binding CMD_Apply}" FontSize="30" Margin="10" Height="160" VerticalAlignment="Stretch" Content="Apply" ></Button>
|
|
<Button Grid.Column="0" Grid.Row="1" Command="{Binding CMD_AutoSet}" FontSize="30" Margin="10" Height="160" Content="Auto Set" ></Button>
|
|
<lvc:CartesianChart Series="{Binding Series}" Grid.Column="1" Grid.Row="0" Grid.RowSpan="2"
|
|
XAxes="{Binding XAxes}"
|
|
YAxes="{Binding YAxes}"
|
|
LegendPosition="Right"
|
|
LegendTextPaint="{Binding LegendTextPaint}"
|
|
ZoomMode="Both"
|
|
TooltipFindingStrategy="CompareOnlyXTakeClosest"
|
|
|
|
EasingFunction="{x:Null}"
|
|
/>
|
|
</Grid>
|
|
</GroupBox>
|
|
</StackPanel>
|
|
<GroupBox Grid.Column="1">
|
|
<StackPanel Orientation="Vertical">
|
|
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
|
|
<TextBlock Style="{StaticResource StTextBlock}" TextAlignment="Left" Margin="5">Interval(1~100)</TextBlock>
|
|
<TextBox Width="150" Style="{StaticResource StTextBox}" Margin="5" Text="{Binding nInterval}"></TextBox>
|
|
<TextBlock Style="{StaticResource StTextBlock}" TextAlignment="Left" Margin="40,5,5,5">Maximum Power</TextBlock>
|
|
<TextBox Width="150" Style="{StaticResource StTextBox}" Margin="5" Text="{Binding nMaximumPower}"></TextBox>
|
|
</StackPanel>
|
|
<Button Command="{Binding CMD_InitializeTable}" FontSize="30" Margin="20" Height="60" Content="Initialize Table" ></Button>
|
|
<DataGrid Margin="10" Height="730" ItemsSource="{Binding CalibrationDataTable}"
|
|
Background="Black" BorderThickness="1" ColumnHeaderHeight="18" ColumnWidth="100" HorizontalGridLinesBrush="DarkGray" VerticalGridLinesBrush="DarkGray" RowHeight="27" AutoGenerateColumns="True" GridLinesVisibility="All"
|
|
/>
|
|
</StackPanel>
|
|
</GroupBox>
|
|
|
|
</Grid>
|
|
|
|
|
|
</UserControl>
|