292 lines
22 KiB
XML
292 lines
22 KiB
XML
<UserControl x:Class="WeldingCommon.Views.UCScannerLaserControl"
|
|
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:behavior="http://schemas.microsoft.com/xaml/behaviors"
|
|
xmlns:view="clr-namespace:Aurora.View;assembly=Aurora"
|
|
xmlns:mah="http://metro.mahapps.com/winfx/xaml/controls"
|
|
xmlns:aurorauicomponent="clr-namespace:AuroraUIComponent;assembly=AuroraUIComponent"
|
|
xmlns:usercontrols="clr-namespace:AuroraUIComponent.UserControls;assembly=AuroraUIComponent"
|
|
d:DataContext="{d:DesignInstance Type=local:UCScannerLaserControlViewModel}"
|
|
mc:Ignorable="d"
|
|
d:DesignHeight="800" d:DesignWidth="600" x:Name="uc">
|
|
<UserControl.Resources>
|
|
<view:BoolConverter x:Key="convTrueVisible" TrueValue="Visible" FalseValue="Hidden"/>
|
|
<view:BoolConverter x:Key="convFalseVisible" TrueValue="Hidden" FalseValue="Visible"/>
|
|
<view:BoolConverter x:Key="convReverse" FalseValue="True" TrueValue="False"/>
|
|
<view:BoolConverter x:Key="convFieldColor" TrueValue="Red" FalseValue="Gray" />
|
|
</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.RowDefinitions>
|
|
<RowDefinition Height="Auto"></RowDefinition>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="Auto"/>
|
|
<RowDefinition Height="Auto"/>
|
|
</Grid.RowDefinitions>
|
|
<GroupBox Grid.Row="0" Header="Manual Laser Power Control" Margin="0 3 3 0">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1.5*"></ColumnDefinition>
|
|
<ColumnDefinition Width="2*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<GroupBox Header="Control Setting" Grid.Column="0" Margin="0 5 0 0" Style="{StaticResource StGroupBox4th}">
|
|
<Grid Margin="3">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<UniformGrid Grid.Row="0" Rows="4">
|
|
<usercontrols:UCKeyValue KeyText="Power #1" Value="{Binding LaserPower1Percent}" DecimalPlaces="0" Unit="%" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
<usercontrols:UCKeyValue KeyText="Power #2" Value="{Binding LaserPower2Percent}" DecimalPlaces="0" Unit="%" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
<usercontrols:UCKeyValue KeyText="Frequency" Value="{Binding LaserPeriod}" DecimalPlaces="0" Unit="kHz" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
<usercontrols:UCKeyValue KeyText="Pulse Width" Value="{Binding LaserPulseWidth}" DecimalPlaces="0" Unit="us" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
</UniformGrid>
|
|
</Grid>
|
|
</GroupBox>
|
|
|
|
<GroupBox Header="Laser Shot Control" Grid.Column="1" Margin="5 5 0 0" Style="{StaticResource StGroupBox2nd}" FontSize="10">
|
|
<Grid Margin="3">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<GroupBox Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" Header="Timer Set" Style="{StaticResource StGroupBox4th}">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Border Grid.Row="0" BorderBrush="Gray" BorderThickness="0.5">
|
|
<mah:ToggleSwitch Grid.Row="0" HorizontalAlignment="Center" FontSize="12" FontWeight="Bold"
|
|
IsOn="{Binding IsUseLaserAutoOffChecked}"
|
|
OffContent="No Use Spot Time"
|
|
OnContent="Use Spot Time"/>
|
|
</Border>
|
|
<usercontrols:UCKeyValue Grid.Row="1" KeyText="Time" Value="{Binding LaserOnTime}" DecimalPlaces="0" Unit="ms" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" Visibility="{Binding IsUseLaserAutoOffChecked, Converter={StaticResource convTrueVisible}}" />
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Grid.Row="0" Grid.Column="1" Header="Laser Shot Result" Style="{StaticResource StGroupBox4th}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Border Grid.Row="0" Grid.Column="0" MinHeight="30">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="List" VerticalAlignment="Center" HorizontalAlignment="Right"/>
|
|
</Border>
|
|
<Border Grid.Row="0" Grid.Column="1" BorderThickness="1" BorderBrush="Gray">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="{Binding BusyStatus}" VerticalAlignment="Center" HorizontalAlignment="Left"/>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="0" MinHeight="30">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="Repeat Count" VerticalAlignment="Center" HorizontalAlignment="Right"/>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="1" BorderThickness="1" BorderBrush="Gray">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="{Binding ListInterationCount}" VerticalAlignment="Center" HorizontalAlignment="Left"/>
|
|
</Border>
|
|
|
|
</Grid>
|
|
|
|
</GroupBox>
|
|
<UniformGrid Grid.Row="1" Grid.Column="1" Columns="2">
|
|
<Button Margin="3" Command="{Binding CMD_LaserShotOnPercent}" Content="Laser On" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
<Button Margin="3" Command="{Binding CMD_LaserShotOff}" Content="Laser Off" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
</UniformGrid>
|
|
|
|
</Grid>
|
|
</GroupBox>
|
|
</Grid>
|
|
</GroupBox>
|
|
|
|
|
|
<GroupBox Grid.Row="1" Header="Manual Laser Power Control" Margin="0 3 3 0">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1.5*"></ColumnDefinition>
|
|
<ColumnDefinition Width="2*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<GroupBox Header="Control Setting" Grid.Column="0" Margin="0 5 0 0" Style="{StaticResource StGroupBox4th}">
|
|
<Grid Margin="3">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<UniformGrid Grid.Row="0" Rows="4">
|
|
<usercontrols:UCKeyValue KeyText="Power #1" Value="{Binding LaserPower1Watt}" DecimalPlaces="0" Unit="W" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
<usercontrols:UCKeyValue KeyText="Power #2" Value="{Binding LaserPower2Watt}" DecimalPlaces="0" Unit="W" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
<usercontrols:UCKeyValue KeyText="Frequency" Value="{Binding LaserPeriod}" DecimalPlaces="0" Unit="kHz" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
<usercontrols:UCKeyValue KeyText="Pulse Width" Value="{Binding LaserPulseWidth}" DecimalPlaces="0" Unit="us" KeyHorizontalAlignment="Right" KeyTextWidth="0.5*" />
|
|
</UniformGrid>
|
|
</Grid>
|
|
</GroupBox>
|
|
|
|
<GroupBox Header="Laser Shot Control" Grid.Column="1" Margin="5 5 0 0" Style="{StaticResource StGroupBox2nd}" FontSize="10">
|
|
<Grid Margin="3">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<GroupBox Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" Header="Timer Set" Style="{StaticResource StGroupBox4th}">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Border Grid.Row="0" BorderBrush="Gray" BorderThickness="0.5">
|
|
<mah:ToggleSwitch Grid.Row="0" HorizontalAlignment="Center" FontSize="12" FontWeight="Bold"
|
|
IsOn="{Binding IsUseLaserAutoOffChecked}"
|
|
OffContent="No Use Spot Time"
|
|
OnContent="Use Spot Time"/>
|
|
</Border>
|
|
<usercontrols:UCKeyValue Grid.Row="1" KeyText="Time" Value="{Binding LaserOnTime}" DecimalPlaces="0" Unit="ms" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" Visibility="{Binding IsUseLaserAutoOffChecked, Converter={StaticResource convTrueVisible}}" />
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Grid.Row="0" Grid.Column="1" Header="Laser Shot Result" Style="{StaticResource StGroupBox4th}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Border Grid.Row="0" Grid.Column="0" MinHeight="30">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="List" VerticalAlignment="Center" HorizontalAlignment="Right"/>
|
|
</Border>
|
|
<Border Grid.Row="0" Grid.Column="1" BorderThickness="1" BorderBrush="Gray">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="{Binding BusyStatus}" VerticalAlignment="Center" HorizontalAlignment="Left"/>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="0" MinHeight="30">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="Repeat Count" VerticalAlignment="Center" HorizontalAlignment="Right"/>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="1" BorderThickness="1" BorderBrush="Gray">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="{Binding ListInterationCount}" VerticalAlignment="Center" HorizontalAlignment="Left"/>
|
|
</Border>
|
|
|
|
</Grid>
|
|
|
|
</GroupBox>
|
|
<UniformGrid Grid.Row="1" Grid.Column="1" Columns="2">
|
|
<Button Margin="3" Command="{Binding CMD_LaserShotOnWatt}" Content="Laser On" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
<Button Margin="3" Command="{Binding CMD_LaserShotOff}" Content="Laser Off" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
</UniformGrid>
|
|
|
|
</Grid>
|
|
</GroupBox>
|
|
</Grid>
|
|
</GroupBox>
|
|
|
|
|
|
|
|
<GroupBox Grid.Row="2" Header="Marking On The Fly" Margin="0 3 3 0" IsEnabled="{Binding IsUseMarkingOnTheFly}">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<GroupBox Header="Encoder Value" Grid.Row="0" Margin="0 5 0 0" Style="{StaticResource StGroupBox4th}">
|
|
<Grid Margin="3">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<UniformGrid Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" Rows="4">
|
|
<usercontrols:UCKeyValue KeyText="Encoder X" Value="{Binding EncoderValueAxisX}" DecimalPlaces="3" Unit="mm" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" IsReadOnly="True"/>
|
|
<usercontrols:UCKeyValue KeyText="Encoder Y" Value="{Binding EncoderValueAxisY}" DecimalPlaces="3" Unit="mm" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" IsReadOnly="True"/>
|
|
<usercontrols:UCKeyValue KeyText="Encoder Rotate" Value="{Binding EncoderValueRotate}" DecimalPlaces="3" Unit="degree" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" IsReadOnly="True"/>
|
|
<usercontrols:UCKeyValue KeyText="Encoder Velocity" Value="{Binding EncoderValueVelocity}" DecimalPlaces="3" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" IsReadOnly="True"/>
|
|
</UniformGrid>
|
|
<GroupBox Grid.Row="0" Grid.Column="1" Header="FieldOut Status" Style="{StaticResource StGroupBox4th}">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Border Grid.Row="0" Grid.Column="0" MinHeight="30">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="X Dir FieldOut" VerticalAlignment="Center" HorizontalAlignment="Right"/>
|
|
</Border>
|
|
<Border Grid.Row="0" Grid.Column="1" BorderThickness="1" BorderBrush="Gray">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="{Binding IsFieldOutX}" Background="{Binding IsFieldOutX, Converter={StaticResource convFieldColor}}" VerticalAlignment="Center" HorizontalAlignment="Left"/>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="0" MinHeight="30">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="Y Dir FieldOut" VerticalAlignment="Center" HorizontalAlignment="Right"/>
|
|
</Border>
|
|
<Border Grid.Row="1" Grid.Column="1" BorderThickness="1" BorderBrush="Gray">
|
|
<TextBlock Margin="10 0" FontSize="12" Foreground="#FFBBBBBB" FontWeight="Bold" Text="{Binding IsFieldOutY}" Background="{Binding IsFieldOutY, Converter={StaticResource convFieldColor}}" VerticalAlignment="Center" HorizontalAlignment="Left"/>
|
|
</Border>
|
|
</Grid>
|
|
</GroupBox>
|
|
<UniformGrid Grid.Row="1" Grid.Column="1" Columns="3" Margin="5 0 5 0">
|
|
<Button Margin="3" Command="{Binding CMD_ResetEncoderValue}" Content="Reset Encoder" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
<Button Margin="3" Command="{Binding CMD_SimulateEncoder}" Content="Simul X" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
<Button Margin="3" Command="{Binding CMD_SimulateEncoderXY}" Content="XY" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
</UniformGrid>
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Header="Control Setting" Grid.Row="1" Margin="0 5 0 0" Style="{StaticResource StGroupBox4th}">
|
|
<Grid Margin="3">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
<RowDefinition Height="auto"></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
<ColumnDefinition Width="1*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<UniformGrid Grid.Row="0" Rows="3">
|
|
<usercontrols:UCKeyValue KeyText="Rotate CenterX" Value="{Binding RotateCenterX}" DecimalPlaces="3" Unit="mm" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" />
|
|
<usercontrols:UCKeyValue KeyText="Rotate CenterY" Value="{Binding RotateCenterY}" DecimalPlaces="3" Unit="mm" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" />
|
|
<usercontrols:UCKeyValue KeyText="Encoder Resolution" Value="{Binding EncoderResolution}" DecimalPlaces="3" Unit="count/rev" KeyHorizontalAlignment="Right" KeyTextWidth="0.9*" />
|
|
</UniformGrid>
|
|
<UniformGrid Grid.Row="0" Grid.Column="1" Columns="2" Margin="5 0 5 0">
|
|
<Button Margin="3" Command="{Binding CMD_ActivateOnTheFly}" Content="Activate On The Fly" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
<Button Margin="3" Command="{Binding CMD_DeactivateOnTheFly}" Content="Deactivate On The Fly" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Height="auto" Style="{StaticResource StButtonAccentBlue}" />
|
|
</UniformGrid>
|
|
</Grid>
|
|
</GroupBox>
|
|
</Grid>
|
|
</GroupBox>
|
|
|
|
</Grid>
|
|
</UserControl>
|