2026-06-05 13:44:39 +09:00

336 lines
20 KiB
XML

<UserControl x:Class="AuroraACS.Views.UCMotorMoving"
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:AuroraACS.Views" xmlns:i="http://schemas.microsoft.com/xaml/behaviors" xmlns:aurora="clr-namespace:Aurora.View;assembly=Aurora"
d:DataContext="{d:DesignInstance Type=local:UCMotorMovingViewModel}"
mc:Ignorable="d"
d:DesignHeight="800" d:DesignWidth="800">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<aurora:SharedResourceDictionary Source="pack://application:,,,/AuroraUIComponent;component/Style/Generic.xaml"/>
</ResourceDictionary.MergedDictionaries>
<Style x:Key="StTBMonitorName" TargetType="TextBlock">
<Setter Property="VerticalAlignment" Value="Top"/>
<Setter Property="Foreground" Value="White"/>
<Setter Property="FontSize" Value="10"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="HorizontalAlignment" Value="Right"/>
<Setter Property="Margin" Value="5 0"/>
</Style>
<Style x:Key="StTBPosition" TargetType="TextBlock">
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="FontSize" Value="24"/>
<Setter Property="Padding" Value="5 5 5 7"/>
<Setter Property="Foreground" Value="#A50034"/>
</Style>
</ResourceDictionary>
</UserControl.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Border Background="{StaticResource ACBlueDark}" Grid.ColumnSpan="2">
<Grid Margin="10 5 10 5">
<Grid.RowDefinitions>
<RowDefinition Height="21*"/>
<RowDefinition Height="85*"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Grid.ColumnSpan="2" HorizontalAlignment="Left" FontSize="14" Foreground="{StaticResource ACOrangeNormal}" FontWeight="Bold" Margin="5 0 5 2">
Motor Position</TextBlock>
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Border BorderBrush="Black" BorderThickness="1" Margin="1">
<Grid>
<TextBlock Style="{StaticResource StTBMonitorName}">X</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}" Text="{Binding PosX, StringFormat={}{0:0.####}}"/>
</Grid>
</Border>
<Border Grid.Row="1" BorderBrush="Black" BorderThickness="1" Margin="1">
<Grid>
<TextBlock Style="{StaticResource StTBMonitorName}">Y</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}" Text="{Binding PosY, StringFormat={}{0:0.####}}"/>
</Grid>
</Border>
<Border Grid.Column="1" BorderBrush="Black" BorderThickness="1" Margin="1">
<Grid>
<TextBlock Style="{StaticResource StTBMonitorName}">Z</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}" Text="{Binding PosZ2, StringFormat={}{0:0.####}}"/>
</Grid>
</Border>
<Border Grid.Row="1" Grid.Column="1" BorderBrush="Black" BorderThickness="1" Margin="2">
<Grid>
<TextBlock Style="{StaticResource StTBMonitorName}">T</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}" Text="{Binding PosT, StringFormat={}{0:0.####}}"/>
</Grid>
</Border>
</Grid>
</Grid>
</Border>
<Grid Grid.Row="1" Grid.Column="0" Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Margin="2" FontWeight="Bold" FontSize="12" Foreground="{StaticResource ACOrangeNormal}">Move Type</TextBlock>
<Grid Grid.Row="1" >
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0"
Style="{StaticResource StRbJogUnit}" IsChecked="True"
Content="ABS" Command="{Binding CMD_MoveTypeChanged}" CommandParameter="ABS"/>
<RadioButton Grid.Column="1"
Style="{StaticResource StRbJogUnit}"
Content="INC" Command="{Binding CMD_MoveTypeChanged}" CommandParameter="INC"/>
<RadioButton Grid.Column="2" Command="{Binding CMD_MoveTypeChanged}" CommandParameter="JOG"
Style="{StaticResource StRbJogUnit}"
Content="JOG"/>
</Grid>
</Grid>
<Grid Grid.Row="1" Grid.Column="1" Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Margin="2" FontWeight="Bold" FontSize="12" Foreground="{StaticResource ACOrangeNormal}">Speed</TextBlock>
<Grid Grid.Row="1" >
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<RadioButton Grid.Column="0" Command="{Binding CMD_SpeedChanged}" CommandParameter="L"
Style="{StaticResource StRbJogUnit}"
Content="L"/>
<RadioButton Grid.Column="1" Command="{Binding CMD_SpeedChanged}" CommandParameter="M"
Style="{StaticResource StRbJogUnit}"
Content="M"
IsChecked="True" />
<RadioButton Grid.Column="2" Command="{Binding CMD_SpeedChanged}" CommandParameter="H"
Style="{StaticResource StRbJogUnit}"
Content="H" />
</Grid>
</Grid>
<Border Grid.Row="2" BorderBrush="LightGray" BorderThickness="1" Margin="2">
<Grid Margin="0 0 0 5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock HorizontalAlignment="Center" FontSize="14" Foreground="{StaticResource ACOrangeDeep}" FontWeight="Bold" Margin="5 0">
XY</TextBlock>
<Grid Grid.Row="1" Margin="0 0 0 5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock FontSize="12" HorizontalAlignment="Center" VerticalAlignment="Center">Target</TextBlock>
<TextBox Name="TargetXY" FontSize="20" Grid.Column="1" TextAlignment="Center" VerticalContentAlignment="Center" Height="40">0</TextBox>
<TextBlock Grid.Column="2" FontSize="12" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="5 0">(mm)</TextBlock>
</Grid>
<Grid Grid.Row="2" HorizontalAlignment="Center" Margin="5">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Button Name="ButtonMoveX_P" Grid.Column="1" Width="50" Height="50" Margin="1" Content="▲"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveX_P_MouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveX_P_MouseLeftButtonUp">
</Button>
<Button Name="ButtonMoveN_Y" Grid.Row="1" Grid.Column="0" Width="50" Height="50" Margin="1"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveN_Y_MouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveN_Y_MouseLeftButtonUp">
◀
</Button>
<Button Grid.Row="1" Grid.Column="1" Width="50" Height="50" Margin="1" Command="{Binding CMD_Stop_All}"
IsEnabled="{Binding ACSIsActivated}">■</Button>
<Button Name="ButtonMoveP_Y" Grid.Row="1" Grid.Column="2" Width="50" Height="50" Margin="1"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveP_Y_MouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveP_Y_MouseLeftButtonUp">
▶
</Button>
<Button Name="ButtonMoveN_X" Grid.Row="2" Grid.Column="1" Width="50" Height="50" Margin="1"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveN_X_MouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveN_X_MouseLeftButtonUp">
▼
</Button>
<Button Name="ButtonMoveP_T" Grid.Row="0" Grid.Column="2" Width="50" Height="50" Margin="1"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveP_T_PreviewMouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveP_T_PreviewMouseLeftButtonUp">
↖
</Button>
<Button Name="ButtonMoveN_T" Grid.Row="2" Grid.Column="2" Width="50" Height="50" Margin="1"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveN_T_PreviewMouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveN_T_PreviewMouseLeftButtonUp">
↙
</Button>
</Grid>
</Grid>
</Border>
<Border Grid.Row="2" Grid.Column="1" BorderBrush="LightGray" BorderThickness="1" Margin="2">
<Grid Margin="0 0 0 5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock HorizontalAlignment="Center" FontSize="14" Foreground="{StaticResource ACOrangeDeep}" FontWeight="Bold" Margin="5 0">
Z</TextBlock>
<Grid Grid.Row="1" Margin="0 0 0 5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock FontSize="12" HorizontalAlignment="Center" VerticalAlignment="Center">Target</TextBlock>
<TextBox Name="TargetPosZ" FontSize="20" Grid.Column="1" TextAlignment="Center" VerticalContentAlignment="Center" Height="40" >0</TextBox>
<TextBlock Grid.Column="2" FontSize="12" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="5 0">(mm)</TextBlock>
</Grid>
<Grid Grid.Row="2" Margin="0 0 0 0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<Grid HorizontalAlignment="Center" Margin="5">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Button Name="ButtonMoveP_Z" Grid.Column="1" Width="50" Height="50" Margin="1"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveP_Z_MouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveP_Z_MouseLeftButtonUp">
▲</Button>
<Button Grid.Row="1" Grid.Column="1" Width="50" Height="50" Margin="1" Command="{Binding CMD_Stop_All}"
IsEnabled="{Binding ACSIsActivated}">■</Button>
<Button Name="ButtonMoveN_Z" Grid.Row="2" Grid.Column="1" Width="50" Height="50" Margin="1"
IsEnabled="{Binding ACSIsActivated}"
PreviewMouseLeftButtonDown="ButtonMoveN_Z_MouseLeftButtonDown"
PreviewMouseLeftButtonUp="ButtonMoveN_Z_MouseLeftButtonUp">
▼
</Button>
</Grid>
<Grid Grid.Column="1" VerticalAlignment="Center">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Button Grid.Row="0" Margin="2" Command="{Binding CMD_MoveCameraFocus}" Height="40">
<TextBlock TextWrapping="Wrap" TextAlignment="Center" Padding="5" >Camera Focus</TextBlock>
</Button>
<Button Grid.Row="1" Margin="2" Height="40">
<TextBlock TextWrapping="Wrap" Padding="5" TextAlignment="Center" >Laser Focus</TextBlock>
</Button>
</Grid>
</Grid>
</Grid>
</Border>
<Grid Grid.Row="3" Grid.ColumnSpan="3" Margin="2 5 2 0">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="60"/>
<RowDefinition Height="60"/>
<RowDefinition Height="60"/>
<RowDefinition Height="60"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Margin="2 0" FontWeight="Bold" Foreground="{StaticResource ACOrangeNormal}">Position Move</TextBlock>
<Border Grid.Row="1" Grid.Column="0" BorderBrush="{StaticResource ACBlueDark}" Background="{StaticResource ACOrangeNormal}" BorderThickness="1" Margin="2">
<StackPanel>
<TextBlock Style="{StaticResource StTBMonitorName}">Review X</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}"
Foreground="{StaticResource ACBlueDark}" Text="{Binding PosReviewX, StringFormat={}{0:0.#}}"/>
</StackPanel>
</Border>
<Border Grid.Row="1" Grid.Column="1" BorderBrush="{StaticResource ACBlueDark}" BorderThickness="1" Margin="2" Background="{StaticResource ACOrangeNormal}">
<StackPanel>
<TextBlock Style="{StaticResource StTBMonitorName}">Review Y</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}" Foreground="{StaticResource ACBlueDark}" Text="{Binding PosReviewY, StringFormat={}{0:0.#}}"/>
</StackPanel>
</Border>
<Button Grid.Row="1" Grid.Column="2" Margin="2" Command="{Binding CMD_ResetReview}">
<TextBlock TextWrapping="Wrap" TextAlignment="Center" Padding="10 0" >Reset</TextBlock>
</Button>
<Button Grid.Row="2" Grid.ColumnSpan="3" Margin="2" Command="{Binding CMD_SetReview}">Set Review Position</Button>
<Button Grid.Row="3" Grid.Column="1" Margin="2" Command="{Binding CMD_MoveToCamera}">
<TextBlock TextWrapping="Wrap" TextAlignment="Center" Padding="10 0">Move to Camera</TextBlock>
</Button>
<Button Grid.Row="3" Grid.Column="2" Margin="2" Command="{Binding CMD_MoveToScanner1}">
<TextBlock TextWrapping="Wrap" TextAlignment="Center" Padding="10 0">Move to Scanner1</TextBlock>
</Button>
<Button Grid.Row="3" Grid.Column="0" Margin="2" Command="{Binding CMD_MoveToUnloadPos}">
<TextBlock TextWrapping="Wrap" TextAlignment="Center">Move Table(X) to Unload Position</TextBlock>
</Button>
<Border Grid.Row="4" Grid.Column="0" BorderBrush="{StaticResource ACOrangeNormal}" Background="{StaticResource ACBlueDark}" BorderThickness="1" Margin="2">
<StackPanel>
<TextBlock Style="{StaticResource StTBMonitorName}" HorizontalAlignment="Center" Foreground="{StaticResource ACOrangeNormal}">Scanner Encoder X</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}"
Foreground="White" Text="{Binding EncX}" Padding="0 1 0 5"/>
</StackPanel>
</Border>
<Border Grid.Row="4" Grid.Column="1" BorderBrush="{StaticResource ACOrangeNormal}" BorderThickness="1" Margin="2" Background="{StaticResource ACBlueDark}">
<StackPanel>
<TextBlock Style="{StaticResource StTBMonitorName}" HorizontalAlignment="Center" Foreground="{StaticResource ACOrangeNormal}">Scanner Encoder Y</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}" Foreground="White" Text="{Binding EncY}" Padding="0 1 0 5"/>
</StackPanel>
</Border>
<Border Grid.Row="4" Grid.Column="2" BorderBrush="{StaticResource ACOrangeNormal}" BorderThickness="1" Margin="2" Background="{StaticResource ACBlueDark}">
<StackPanel>
<TextBlock Style="{StaticResource StTBMonitorName}" HorizontalAlignment="Center" Foreground="{StaticResource ACOrangeNormal}">Scanner Masking Info</TextBlock>
<TextBlock Style="{StaticResource StTBPosition}" Foreground="White" Text="{Binding MaskingInfo}" Padding="0 1 0 5"/>
</StackPanel>
</Border>
</Grid>
</Grid>
</UserControl>