肖奇伟 hai 1 día
pai
achega
4da8c2a46f

BIN=BIN
Lib/SCADA_DAQ.Plugin.Robot.dll


BIN=BIN
Lib/SCADA_DAQ.Plugin.RobotUI.dll


+ 45 - 59
SCADA_DAQ/Customer/Machines/SampleMachine.cs

@@ -15,11 +15,11 @@ using System.ComponentModel;
 using System.Linq;
 using System.Runtime.Remoting.Services;
 using System.Windows;
+using System.Windows.Media;
 
 namespace SCADA_DAQ.Customer.Machines
 {
-    /// <summary>
-    /// 客户自定义设备
+    /// <summary> 客户自定义设备
     /// </summary>
     [DisplayName("客户自定义设备")]
     public partial class SampleMachine : BasePLCMachine
@@ -29,14 +29,11 @@ namespace SCADA_DAQ.Customer.Machines
         /// </summary>
         public ObservableCollection<Alarm> AlarmCollection { get; set; } = new ObservableCollection<Alarm>();
 
-        /// <summary>
-        /// 
+        /// <summary> 
         /// </summary>
         public Redundancy RedundancyService { get; set; }   //冗余服务
 
-
-        /// <summary>
-        /// 当前码垛方案
+        /// <summary> 当前码垛方案
         /// </summary>
         public StackSlnModel StackSln { get; set; } = new StackSlnModel();
 
@@ -45,8 +42,7 @@ namespace SCADA_DAQ.Customer.Machines
         /// </summary>
         public CaptureModel StackCapture { get; set; } = new CaptureModel();
 
-        /// <summary>
-        /// 当前抓取序号
+        /// <summary> 当前抓取序号
         /// </summary>
         public int CurrentCaputerIndex { get; set; } = 1;
 
@@ -55,24 +51,23 @@ namespace SCADA_DAQ.Customer.Machines
         /// </summary>
         public event EventHandler<CaputerFinishEventArgs> CaptureFinished;
 
-        /// <summary>
-        /// 开始了新的一盘堆码
+        /// <summary> 开始了新的一盘堆码
         /// </summary>
-        public event EventHandler<StackStartEventArgs> StackStarted;
+        public event EventHandler<EventArgs> StackStarted;
 
-        /// <summary>
-        /// 
+        /// <summary> 
         /// </summary>
-        public event EventHandler<StackFinishEventArgs> StackFinished;
+        public event EventHandler<EventArgs> StackFinished;
 
         /// <summary>
-        /// 实时坐标信息
+        /// 
+        /// </summary>
+        public event EventHandler<EventArgs> SystemReset;
+        /// <summary> 实时坐标信息
         /// </summary>
         public Dictionary<string, CenterPoint> Coordinates { get; set; } = new Dictionary<string, CenterPoint>();
-
         private CenterPoint takeLocation { get; set; } = new CenterPoint();
         private CenterPoint releaseLocation { get; set; } = new CenterPoint();
-
         private CenterPoint actLocation { get; set; } = new CenterPoint();
 
         /// <summary>
@@ -116,32 +111,19 @@ namespace SCADA_DAQ.Customer.Machines
                 }
                 var currentBox = StackSln.StackCaptureList[CurrentCaputerIndex - 1];  //查找当前需要的Box
                 StackCapture.Update(currentBox);     //用当前的box数据刷新 抓取数据
+
                 if (CurrentCaputerIndex == 1)
                 {
-                    StackStarted?.Invoke(this, new StackStartEventArgs());
+                    StackStarted?.Invoke(this, EventArgs.Empty);
+                    foreach (var item in StackSln.StackCaptureList)
+                    {
+                        item.CaptureState = CaptureState.None;
+                    }
                 }
-                var BoxLength = (int)StackSln.BoxLength_Dec;
-                var BoxWidth = (int)StackSln.BoxWidth_Dec;
-                var BoxHeight = (int)StackSln.BoxHeight_Dec;
-
-                var TakeBoxR = GetListenReg("R轴取料点位置").Int32;
-                var PutBoxX = GetListenReg("X轴放料点位置").Int32;
-                var PutBoxY = GetListenReg("Y轴放料点位置").Int32;
-                var PutBoxZ = GetListenReg("Z轴放料点位置").Int32;
-                var PutBoxR = GetListenReg("R轴放料点位置").Int32;
-                var Xmm = (int)GetListenReg("X伺服每mm脉冲数").Float;
-                var Ymm = (int)GetListenReg("Y伺服每mm脉冲数").Float;
-                var Zmm = (int)GetListenReg("Z伺服每mm脉冲数").Float;
-                var Rmm = (int)GetListenReg("R伺服每mm脉冲数").Float;
-
-                //var TakeBoxYIsSucess = GetListenReg("Y轴取料点上方").WriteReg(TakeBoxY);
-                //var TakeBoxXIsSucess = GetListenReg("X轴取料点上方").WriteReg((((BoxLength * Xmm) - (200 * Xmm)) / 2) + TakeBoxX);//(箱子长度-吸盘长度)/2=X轴左移距离
-                //var TakeBoxZIsSucess = GetListenReg("Z轴取料点").WriteReg(((BoxHeight - 10) * Zmm) + TakeBoxZ);
-
-
-                takeLocation.X = CustomerEnv.CustomerConfig.CaputreBoxLocation.X - CustomerEnv.CustomerConfig.MachineOrigin.X - StackSln.BoxWidth_Dec / 2;
-                takeLocation.Y = CustomerEnv.CustomerConfig.MachineOrigin.Y - CustomerEnv.CustomerConfig.MachineOrigin.Y - StackSln.BoxWidth_Dec / 2;
-                takeLocation.Z = CustomerEnv.CustomerConfig.MachineOrigin.Z - CustomerEnv.CustomerConfig.MachineOrigin.Z + StackSln.BoxHeight_Dec;
+                StackCapture.CaptureState = CaptureState.Capturing;
+                takeLocation.X = CustomerEnv.CustomerConfig.CaputreBoxLocation.X - CustomerEnv.CustomerConfig.MachineOrigin.X - (StackSln.BoxWidth_Dec / 2);
+                takeLocation.Y = CustomerEnv.CustomerConfig.CaputreBoxLocation.Y - CustomerEnv.CustomerConfig.MachineOrigin.Y - (StackSln.BoxLength_Dec / 2);
+                takeLocation.Z = CustomerEnv.CustomerConfig.CaputreBoxLocation.Z - CustomerEnv.CustomerConfig.MachineOrigin.Z + StackSln.BoxHeight_Dec;
                 takeLocation.R = 0;
 
                 var TakeBoxYIsSucess = GetListenReg(Tag_Y轴取料点上方).WriteReg($"{takeLocation.X}");
@@ -155,7 +137,7 @@ namespace SCADA_DAQ.Customer.Machines
 
                 var PutBoxXIsSucess = GetListenReg(Tag_X轴放料点上方).WriteReg($"{(int)releaseLocation.X}");
                 var PutBoxYIsSucess = GetListenReg(Tag_Y轴放料点上方).WriteReg($"{(int)releaseLocation.Y}");
-                var PutBoxRIsSucess = GetListenReg(Tag_R轴放料点角度).WriteReg($"{(int)currentBox.RotationAngle}");
+                var PutBoxRIsSucess = GetListenReg(Tag_R轴放料点角度).WriteReg($"{(int)currentBox.RotationAngle * -1}");
                 var PutBoxZIsSucess = GetListenReg(Tag_Z轴放料点).WriteReg($"{(int)releaseLocation.Z}");
 
                 if (TakeBoxYIsSucess && TakeBoxXIsSucess && TakeBoxZIsSucess &&
@@ -174,10 +156,11 @@ namespace SCADA_DAQ.Customer.Machines
                     {
                         CurrentCapture = StackCapture
                     });
+                    StackCapture.CaptureState = CaptureState.Captured;
                     if (CurrentCaputerIndex == StackSln.StackCaptureList.Count)
                     {
                         CurrentCaputerIndex = 1;  //堆码完成
-                        StackFinished?.Invoke(this, new StackFinishEventArgs());
+                        StackFinished?.Invoke(this, EventArgs.Empty);
                     }
                     else
                     {
@@ -189,6 +172,21 @@ namespace SCADA_DAQ.Customer.Machines
                     Log.Warn($"当前的抓取序号和箱子序号不一致,抓取序号:{CurrentCaputerIndex},箱子序号:{StackCapture.CaptureIndex}");
                 }
             }
+            if (reg.Comment.Variable == SampleMachine.Tag_SystemReset && reg.Value == 1 && reg.OldValue != null)
+            {
+                OnSystemRestart();
+                Log.Info($"收到系统复位请求");
+            }
+        }
+
+        private void OnSystemRestart()
+        {
+            CurrentCaputerIndex = 1;
+            foreach (var item in StackSln.StackCaptureList)
+            {
+                item.CaptureState = CaptureState.None;
+            }
+            SystemReset?.Invoke(this, EventArgs.Empty);
         }
 
         /// <summary>
@@ -218,10 +216,10 @@ namespace SCADA_DAQ.Customer.Machines
             if (RedundancyService?.RedundancyState == RedundancyStates.Standby) { return; }  //如果是待机模式就不执行下面的逻辑
             base.ScanCompleted(sender, e);
 
-            actLocation.X = (decimal)GetListenReg(Tag_X轴所在位置mm).ScaleValue;
-            actLocation.Y = (decimal)GetListenReg(Tag_Y轴所在位置mm).ScaleValue;
-            actLocation.Z = (decimal)GetListenReg(Tag_Z轴所在位置mm).ScaleValue;
-            actLocation.R = (decimal)GetListenReg(Tag_R轴所在位置mm).ScaleValue;
+            actLocation.X = (decimal)GetListenReg(Tag_X轴所在位置mm).ScaleValue - CustomerEnv.CustomerConfig.MachineOrigin.X;
+            actLocation.Y = (decimal)GetListenReg(Tag_Y轴所在位置mm).ScaleValue - CustomerEnv.CustomerConfig.MachineOrigin.Y;
+            actLocation.Z = (decimal)GetListenReg(Tag_Z轴所在位置mm).ScaleValue - CustomerEnv.CustomerConfig.MachineOrigin.Z;
+            actLocation.R = (decimal)GetListenReg(Tag_R轴所在位置mm).ScaleValue - CustomerEnv.CustomerConfig.MachineOrigin.R;
         }
 
         /// <summary>
@@ -265,16 +263,4 @@ namespace SCADA_DAQ.Customer.Machines
         public CaptureModel CurrentCapture { get; set; }
     }
 
-    /// <summary>
-    /// 完成全部纸箱的堆码
-    /// </summary>
-    public class StackFinishEventArgs : EventArgs
-    {
-
-    }
-
-    public class StackStartEventArgs : EventArgs
-    {
-
-    }
 }

+ 20 - 0
SCADA_DAQ/Customer/Models/CustomerConfig.cs

@@ -52,5 +52,25 @@ namespace SCADA_DAQ.Customer.Models
         private CenterPoint _CaputreBoxLocation = new CenterPoint();
 
 
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public string LastSln
+        {
+            get { return _LastSln; }
+            set
+            {
+                if (value != _LastSln)
+                {
+                    _LastSln = value;
+                    OnPropertyChanged(nameof(LastSln));
+                }
+            }
+        }
+        private string _LastSln;
+
+
+
     }
 }

+ 1 - 0
SCADA_DAQ/Customer/UctFrmManual.xaml.cs

@@ -19,6 +19,7 @@ namespace SCADA_DAQ.Customer
     /// <summary>
     /// UctFrmManual.xaml 的交互逻辑
     /// </summary>
+    [UctMenu("手动",Icon = "Material.HumanCane")]
     public partial class UctFrmManual : BaseUctFrm
     {
         /// <summary>

+ 141 - 130
SCADA_DAQ/Customer/UctFrmPalletizingManual.xaml

@@ -8,9 +8,87 @@
                         xmlns:uct="clr-namespace:SCADA_DAQ.Customer.Views.Uct" 
                         xmlns:stacking="clr-namespace:SCADA_DAQ.Plugin.RobotUI.Stacking;assembly=SCADA_DAQ.Plugin.RobotUI" xmlns:dashboard="clr-namespace:SCADA.CommonCtrl.Dashboard;assembly=SCADA.CommonCtrl"
                         mc:Ignorable="d" 
-      d:DesignHeight="450" d:DesignWidth="800"
+      d:DesignHeight="659.3" d:DesignWidth="916"
       Title="UctFrmPalletizingManual">
+    <wpfcontrol:BaseUctFrm.Resources>
+        <Style x:Key="DashboardRowStyle" TargetType="{x:Type DataGridRow}">
+            <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}" />
+            <Setter Property="SnapsToDevicePixels"   Value="true" />
+            <Setter Property="Validation.ErrorTemplate" Value="{x:Null}" />
+            <Setter Property="Margin" Value="1" />
+            <Setter Property="Template">
+                <Setter.Value>
+                    <ControlTemplate TargetType="{x:Type DataGridRow}">
+                        <Border x:Name="DGR_Border"  BorderBrush="{TemplateBinding BorderBrush}"
+                                  BorderThickness="{TemplateBinding BorderThickness}"
+                                  Background="{TemplateBinding Background}"
+                                  SnapsToDevicePixels="True"
+                                  CornerRadius="10">
+                            <SelectiveScrollingGrid>
+                                <SelectiveScrollingGrid.ColumnDefinitions>
+                                    <ColumnDefinition Width="Auto" />
+                                    <ColumnDefinition Width="*" />
+                                </SelectiveScrollingGrid.ColumnDefinitions>
+                                <SelectiveScrollingGrid.RowDefinitions>
+                                    <RowDefinition Height="*" />
+                                    <RowDefinition Height="Auto" />
+                                </SelectiveScrollingGrid.RowDefinitions>
+                                <DataGridCellsPresenter Grid.Column="1"
+                                          Background="Transparent"
+                                          ItemsPanel="{TemplateBinding ItemsPanel}"
+                                          SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
+                                          Margin="8,4" />
+                            </SelectiveScrollingGrid>
+                        </Border>
+                    </ControlTemplate>
+                </Setter.Value>
+            </Setter>
+            <Style.Triggers>
+                <Trigger Property="AlternationIndex" Value="0">
+                    <Setter Property="Background" Value="{DynamicResource MahApps.Brushes.Gray10}" />
+                </Trigger>
+                <Trigger Property="AlternationIndex" Value="1">
+                    <Setter Property="Background" Value="{DynamicResource MahApps.Brushes.Gray10}" />
+                </Trigger>
+            </Style.Triggers>
+        </Style>
+        <Style x:Key="DashboardColumnHeaderStyle"  TargetType="{x:Type DataGridColumnHeader}">
+            <Setter Property="Background" Value="Transparent" />
+            <Setter Property="HorizontalContentAlignment"   Value="Center" />
+            <Setter Property="VerticalAlignment"  Value="Center" />
+            <Setter Property="Margin" Value="30,8,8,8" />
+            <Setter Property="FontWeight" Value="Black"/>
+            <Setter Property="VerticalContentAlignment"  Value="Center" />
 
+            <Setter Property="Template">
+                <Setter.Value>
+                    <ControlTemplate TargetType="{x:Type DataGridColumnHeader}">
+                        <Border x:Name="DGRH_Border"
+                                  BorderBrush="{TemplateBinding BorderBrush}"
+                                  BorderThickness="{TemplateBinding BorderThickness}"
+                                  Background="{TemplateBinding Background}"
+                                  SnapsToDevicePixels="True"
+                                  CornerRadius="10">
+                            <ContentPresenter HorizontalAlignment="Center" RecognizesAccessKey="True"
+                                SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="Center">
+                                <ContentPresenter.Resources>
+                                    <Style TargetType="{x:Type Border}">
+                                        <Setter Property="Background"  Value="Transparent" />
+                                    </Style>
+                                </ContentPresenter.Resources>
+                            </ContentPresenter>
+                        </Border>
+                    </ControlTemplate>
+                </Setter.Value>
+            </Setter>
+        </Style>
+
+        <Style  x:Key="ValueCellStyle" TargetType="{x:Type DataGridCell}">
+            <Setter Property="FontWeight" Value="Black"/>
+            <Setter Property="Foreground" Value="{StaticResource DarkPrimaryBrush}"/>
+            <Setter Property="HorizontalAlignment" Value="Center"/>
+        </Style>
+    </wpfcontrol:BaseUctFrm.Resources>
     <Grid>
         <Grid.RowDefinitions>
             <RowDefinition Height="Auto"/>
@@ -18,149 +96,82 @@
         </Grid.RowDefinitions>
 
         <Grid Grid.Row="0">
-            <Grid.RowDefinitions>
-                <RowDefinition Height="Auto"/>
-                <RowDefinition Height="Auto"/>
-            </Grid.RowDefinitions>
-
-            <Grid Grid.Row="0">
-                <Grid MinHeight="100">
-                    <Grid.ColumnDefinitions>
-                        <ColumnDefinition Width="Auto" MinWidth="100"/>
-                        <ColumnDefinition Width="1*"/>
-                        <ColumnDefinition Width="Auto" MinWidth="100"/>
-                    </Grid.ColumnDefinitions>
-                    <wpfcontrol:Card Margin="2">
-                        <ContentControl x:Name="StackSelection" FontSize="{DynamicResource LargeFontSize}"/>
-                    </wpfcontrol:Card>
-                    <wpfcontrol:Card Margin="2" Grid.Column="1">
-                        <ContentControl x:Name="StackInfo" FontSize="{DynamicResource LargeFontSize}" />
-                    </wpfcontrol:Card>
-                    <wpfcontrol:Card Margin="2" Grid.Column="2">
-                        <ContentControl x:Name="CurrentBoxInfo" FontSize="{DynamicResource LargeFontSize}" />
-                    </wpfcontrol:Card>
-                </Grid>
-            </Grid>
-            <Grid Grid.Row="1" MaxHeight="300">
+            <Grid MinHeight="100">
                 <Grid.ColumnDefinitions>
-                    <ColumnDefinition Width="2*"/>
-                    <ColumnDefinition Width="Auto"/>
+                    <ColumnDefinition Width="Auto" MinWidth="100"/>
+                    <ColumnDefinition Width="1*"/>
+                    <ColumnDefinition Width="Auto" MinWidth="100"/>
                 </Grid.ColumnDefinitions>
-                <wpfcontrol:SmartGrid x:Name="DG_StackLayout"  AutoGenerateColumns="True" ShowRowTips="False" ShowHeader="False"/>
-                <Grid Grid.Column="1">
-                    <uct:UctOutputControl/>
-                </Grid>
+                <wpfcontrol:Card Margin="2">
+                    <ContentControl x:Name="StackSelection" FontSize="{DynamicResource LargeFontSize}"/>
+                </wpfcontrol:Card>
+                <wpfcontrol:Card Margin="2" Grid.Column="1">
+                    <ContentControl x:Name="StackInfo" FontSize="{DynamicResource LargeFontSize}" />
+                </wpfcontrol:Card>
+                <wpfcontrol:Card Margin="2" Grid.Column="2">
+                    <ContentControl x:Name="CurrentBoxInfo" FontSize="{DynamicResource LargeFontSize}" />
+                </wpfcontrol:Card>
             </Grid>
-
         </Grid>
+
         <Grid Grid.Row="1" MinHeight="280">
+            <Grid.RowDefinitions>
+                <RowDefinition Height="1*"/>
+                <RowDefinition Height="1*"/>
+            </Grid.RowDefinitions>
             <Grid.ColumnDefinitions>
-                <ColumnDefinition Width="1*"/>
                 <ColumnDefinition Width="1*"/>
                 <ColumnDefinition Width="380"/>
             </Grid.ColumnDefinitions>
-            <Grid  Grid.Column="2" >
-                <wpfcontrol:Card>
-                    <wpfcontrol:Card.Resources>
-                        <Style x:Key="DashboardRowStyle" TargetType="{x:Type DataGridRow}">
-                            <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.WindowBrushKey}}" />
-                            <Setter Property="SnapsToDevicePixels"   Value="true" />
-                            <Setter Property="Validation.ErrorTemplate" Value="{x:Null}" />
-                            <Setter Property="Margin" Value="1" />
-                            <Setter Property="Template">
-                                <Setter.Value>
-                                    <ControlTemplate TargetType="{x:Type DataGridRow}">
-                                        <Border x:Name="DGR_Border"  BorderBrush="{TemplateBinding BorderBrush}"
-                                            BorderThickness="{TemplateBinding BorderThickness}"
-                                            Background="{TemplateBinding Background}"
-                                            SnapsToDevicePixels="True"
-                                            CornerRadius="10">
-                                            <SelectiveScrollingGrid>
-                                                <SelectiveScrollingGrid.ColumnDefinitions>
-                                                    <ColumnDefinition Width="Auto" />
-                                                    <ColumnDefinition Width="*" />
-                                                </SelectiveScrollingGrid.ColumnDefinitions>
-                                                <SelectiveScrollingGrid.RowDefinitions>
-                                                    <RowDefinition Height="*" />
-                                                    <RowDefinition Height="Auto" />
-                                                </SelectiveScrollingGrid.RowDefinitions>
-                                                <DataGridCellsPresenter Grid.Column="1"
-                                                    Background="Transparent"
-                                                    ItemsPanel="{TemplateBinding ItemsPanel}"
-                                                    SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
-                                                    Margin="8,4" />
-                                            </SelectiveScrollingGrid>
-                                        </Border>
-                                    </ControlTemplate>
-                                </Setter.Value>
-                            </Setter>
-                            <Style.Triggers>
-                                <Trigger Property="AlternationIndex" Value="0">
-                                    <Setter Property="Background" Value="{DynamicResource MahApps.Brushes.Gray10}" />
-                                </Trigger>
-                                <Trigger Property="AlternationIndex" Value="1">
-                                    <Setter Property="Background" Value="{DynamicResource MahApps.Brushes.Gray10}" />
-                                </Trigger>
-                            </Style.Triggers>
-                        </Style>
-                        <Style x:Key="DashboardColumnHeaderStyle"  TargetType="{x:Type DataGridColumnHeader}">
-                            <Setter Property="Background" Value="Transparent" />
-                            <Setter Property="HorizontalContentAlignment"   Value="Center" />
-                            <Setter Property="VerticalAlignment"  Value="Center" />
-                            <Setter Property="Margin" Value="30,8,8,8" />
-                            <Setter Property="FontWeight" Value="Black"/>
-                            <Setter Property="VerticalContentAlignment"  Value="Center" />
-
-                            <Setter Property="Template">
-                                <Setter.Value>
-                                    <ControlTemplate TargetType="{x:Type DataGridColumnHeader}">
-                                        <Border x:Name="DGRH_Border"
-                                            BorderBrush="{TemplateBinding BorderBrush}"
-                                            BorderThickness="{TemplateBinding BorderThickness}"
-                                            Background="{TemplateBinding Background}"
-                                            SnapsToDevicePixels="True"
-                                            CornerRadius="10">
-                                            <ContentPresenter HorizontalAlignment="Center" RecognizesAccessKey="True"
-                                          SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="Center">
-                                                <ContentPresenter.Resources>
-                                                    <Style TargetType="{x:Type Border}">
-                                                        <Setter Property="Background"  Value="Transparent" />
-                                                    </Style>
-                                                </ContentPresenter.Resources>
-                                            </ContentPresenter>
-                                        </Border>
-                                    </ControlTemplate>
-                                </Setter.Value>
-                            </Setter>
-                        </Style>
-
-                        <Style  x:Key="ValueCellStyle" TargetType="{x:Type DataGridCell}">
-                            <Setter Property="FontWeight" Value="Black"/>
-                            <Setter Property="Foreground" Value="{StaticResource DarkPrimaryBrush}"/>
-                            <Setter Property="HorizontalAlignment" Value="Center"/>
-                        </Style>
-                    </wpfcontrol:Card.Resources>
-
-                    <dashboard:DashboardDataGrid IsReadOnly="True" IsEnabled="False" FontSize="18" x:Name="DG_RunPara"
-                                                 ColumnHeaderBackground="{DynamicResource MahApps.Brushes.Gray8}"  AutoGenerateColumns="False" ColumnHeaderStyle="{StaticResource DashboardColumnHeaderStyle}" RowStyle="{StaticResource DashboardRowStyle}">
-                        <dashboard:DashboardDataGrid.Columns>
-                            <DataGridTextColumn Header="" Binding="{Binding Key}" Width="90"/>
-                            <DataGridTextColumn Header="X" Binding="{Binding Value.X}" Width="70"/>
-                            <DataGridTextColumn Header="Y" Binding="{Binding Value.Y}" Width="70" CellStyle="{StaticResource ValueCellStyle}"/>
-                            <DataGridTextColumn Header="Z" Binding="{Binding Value.Z}" Width="70"/>
-                            <DataGridTextColumn Header="R" Binding="{Binding Value.R}" Width="70"/>
-                        </dashboard:DashboardDataGrid.Columns>
-                    </dashboard:DashboardDataGrid>
-                </wpfcontrol:Card>
-            </Grid>
-            <Grid>
+
+
+
+            <Grid Grid.Column="0" Grid.Row="1">
+                <Grid.ColumnDefinitions>
+                    <ColumnDefinition Width="1*"/>
+                    <ColumnDefinition Width="1*"/>
+                </Grid.ColumnDefinitions>
                 <stacking:UctStack3D x:Name="D3_Stack"/>
+                <stacking:UctStackLayer x:Name="board1" Grid.Column="2"/>
             </Grid>
+            <wpfcontrol:SmartGrid x:Name="DG_StackLayout"  AutoGenerateColumns="True" ShowRowTips="False" ShowHeader="False"  />
+
+            <Grid Grid.Column="1" Grid.RowSpan="2" >
+                <Grid.RowDefinitions>
+                    <RowDefinition Height="Auto"/>
+                    <RowDefinition Height="Auto"/>
 
-            <Grid Grid.Column="1">
-                <stacking:UctStackLayer x:Name="board1"/>
+                    <RowDefinition Height="1*"/>
+                </Grid.RowDefinitions>
+
+                <wpfcontrol:Card Margin="2">
+                    <uct:UctOutputControl Height="200" />
+                </wpfcontrol:Card>
+               
+
+                <Grid  Grid.Column="2" Grid.Row="1" Margin="2" >
+                    <wpfcontrol:Card>
+                        <dashboard:DashboardDataGrid IsReadOnly="True" IsEnabled="False" FontSize="18" x:Name="DG_RunPara"
+                                       ColumnHeaderBackground="{DynamicResource MahApps.Brushes.Gray8}"  AutoGenerateColumns="False" ColumnHeaderStyle="{StaticResource DashboardColumnHeaderStyle}" RowStyle="{StaticResource DashboardRowStyle}">
+                            <dashboard:DashboardDataGrid.Columns>
+                                <DataGridTextColumn Header="" Binding="{Binding Key}" Width="90"/>
+                                <DataGridTextColumn Header="X" Binding="{Binding Value.X}" Width="70"/>
+                                <DataGridTextColumn Header="Y" Binding="{Binding Value.Y}" Width="70" CellStyle="{StaticResource ValueCellStyle}"/>
+                                <DataGridTextColumn Header="Z" Binding="{Binding Value.Z}" Width="70"/>
+                                <DataGridTextColumn Header="R" Binding="{Binding Value.R}" Width="70"/>
+                            </dashboard:DashboardDataGrid.Columns>
+                        </dashboard:DashboardDataGrid>
+                    </wpfcontrol:Card>
+                </Grid>
+
+                <wpfcontrol:Card Grid.Row="2" Margin="2" Header="报警" CardStyle="Warning">
+                    <ListBox x:Name="AlarmList">
+                        
+                    </ListBox>
+                </wpfcontrol:Card>
             </Grid>
 
+
         </Grid>
 
 

+ 18 - 2
SCADA_DAQ/Customer/UctFrmPalletizingManual.xaml.cs

@@ -98,20 +98,35 @@ namespace SCADA_DAQ.Customer
                 }, 2, Orientation.Horizontal, Orientation.Horizontal, AutoViewElementKind.TextBlock)
             { ContentWidth = 50 };
 
+
             DG_RunPara.ItemsSource = plc.Coordinates;
+
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.CaptureState));
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.CaptureIndex));
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.LayearNo));
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.LayearIndex));
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.CaptureX));
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.CaptureY));
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.CaptureZ));
+            DG_StackLayout.DisplayColumns.Add(nameof(CaptureModel.RotationAngle));
+
             DG_StackLayout.SetBinding(SmartGrid.ItemsSourceProperty, new Binding("StackCaptureList"));
             DG_StackLayout.DataContext = plc.StackSln;
 
             stackParameter.SlnNameSrc = Env.DAL.App_Stack_Sln.GetData().DtToList<App_Stack_Sln>().Select(t => t.SlnName_Str).ToList();
             stackParameter.PropertyChanged += StackParameter_PropertyChanged;
+
+            AlarmList.ItemsSource = plc.AlarmCollection;
+
+            stackParameter.SlnName = CustomerEnv.CustomerConfig.LastSln;
         }
 
-        private void Plc_StackFinished(object sender, StackFinishEventArgs e)
+        private void Plc_StackFinished(object sender, EventArgs e)
         {
 
         }
 
-        private void Plc_StackStarted(object sender, StackStartEventArgs e)
+        private void Plc_StackStarted(object sender, EventArgs e)
         {
             Dispatcher.Invoke(() =>
             {
@@ -143,6 +158,7 @@ namespace SCADA_DAQ.Customer
                 var sln = Env.DAL.App_Stack_Sln.GetData<StackParameter>(t => t.SlnName == stackParameter.SlnName).FirstOrDefault();
                 if (sln != null)
                 {
+                    CustomerEnv.CustomerConfig.LastSln = stackParameter.SlnName;
                     stackParameter.Update(sln);
                     plc.SetSln(sln);
                     var boxs = plc.StackSln.StackCaptureList.GroupBy(t => t.LayearNo).First().Select(t => t.BoxInfo).ToList();

+ 8 - 1
SCADA_DAQ/Customer/UctFrmParameterSet.xaml

@@ -9,7 +9,11 @@
              mc:Ignorable="d" 
              d:DesignHeight="450" d:DesignWidth="800">
     <Grid>
-        <StackPanel Orientation="Horizontal">
+        <Grid.ColumnDefinitions>
+            <ColumnDefinition Width="1*"/>
+            <ColumnDefinition Width="2*"/>
+        </Grid.ColumnDefinitions>
+        <StackPanel Orientation="Horizontal" Grid.ColumnSpan="2">
             <StackPanel Orientation="Vertical">
                 <GroupBox Margin="4" x:Name="Gp_Config" Header="参数设置">
 
@@ -17,5 +21,8 @@
             </StackPanel>
         </StackPanel>
 
+        <StackPanel  Grid.Row="1">
+            <Image x:Name="Img"/>
+        </StackPanel>
     </Grid>
 </wpfcontrol:BaseUctFrm>

+ 3 - 0
SCADA_DAQ/Customer/UctFrmParameterSet.xaml.cs

@@ -1,4 +1,5 @@
 using SCADA.CommonCtrl.WpfControl;
+using SCADA.CommonCtrl.WpfHelper;
 using SCADA_DAQ.Customer.Models;
 using System;
 using System.Collections.Generic;
@@ -49,6 +50,8 @@ namespace SCADA_DAQ.Customer
             //    TitleBackground = Brushes.LightGray,
             //    ContentBackground = Brushes.LightBlue,
             //};
+
+            Img.Source = VisualHelper.ImageToImageSource("Content\\Img\\堆码坐标.png");
         }
     }
 }

+ 99 - 115
SCADA_DAQ/Customer/Views/Uct/UctOutputControl.xaml

@@ -8,139 +8,123 @@
                              mc:Ignorable="d" 
       d:DesignHeight="450" d:DesignWidth="800"
       Title="UctOutputControl">
-    <Grid>
-        <GroupBox Header="输出控制">
-            <Grid>
-                <Grid.Resources>
-                    <Style TargetType="wpfcontrol:IconButton" x:Key="SameTitle">
-                        <Setter Property="ButtonStyle" Value="Info"/>
-                        <Setter Property="Width" Value="140"/>
-                        <Setter Property="Height" Value="40"/>
-                        <Setter Property="Margin" Value="4"/>
-                        <Setter Property="FontSize" Value="22"/>
-                        <Setter Property="FontWeight" Value="Bold"/>
-                        <Style.Triggers>
-                            <DataTrigger Binding="{Binding Value}" Value="1">
-                                <Setter Property="ButtonStyle" Value="Success"/>
-                            </DataTrigger>
-                        </Style.Triggers>
-                    </Style>
-                </Grid.Resources>
-
-                <Grid.ColumnDefinitions>
-                    <ColumnDefinition Width="1*"/>
-                    <ColumnDefinition Width="1*"/>
-                </Grid.ColumnDefinitions>
-                <Grid.RowDefinitions>
-                    <RowDefinition Height="1*"/>
-                    <RowDefinition Height="1*"/>
-                    <RowDefinition Height="1*"/>
-                    <RowDefinition Height="1*"/>
-                </Grid.RowDefinitions>
-
-                <wpfcontrol:IconButton Title="手动来料"  x:Name="ManualIncomingMaterial" Grid.Column="1" Click="RegiserReverse_Click"  Style="{StaticResource SameTitle}">
-                    <wpfcontrol:IconButton.Icon>
-                        <iconPacks:PackIconMaterial Kind="HandBackLeft"/>
-                    </wpfcontrol:IconButton.Icon>
-                </wpfcontrol:IconButton>
 
-                <wpfcontrol:IconButton Title="伺服复位" PreviewMouseDown="RestSystem_PreviewMouseDown" PreviewMouseUp="RestSystem_PreviewMouseUp" x:Name="RestAxis" Grid.Column="1" Grid.Row="3" Style="{StaticResource SameTitle}">
-                    <wpfcontrol:IconButton.Icon>
-                        <iconPacks:PackIconMaterial Kind="Restart"/>
-                    </wpfcontrol:IconButton.Icon>
-                </wpfcontrol:IconButton>
+    <Grid>
+        <Grid.Resources>
+            <Style TargetType="wpfcontrol:IconButton" x:Key="SameTitle">
+                <Setter Property="ButtonStyle" Value="Info"/>
+                <Setter Property="Width" Value="140"/>
+                <Setter Property="Height" Value="40"/>
+                <Setter Property="Margin" Value="4"/>
+                <Setter Property="FontSize" Value="22"/>
+                <Setter Property="FontWeight" Value="Bold"/>
+                <Style.Triggers>
+                    <DataTrigger Binding="{Binding Value}" Value="1">
+                        <Setter Property="ButtonStyle" Value="Success"/>
+                    </DataTrigger>
+                </Style.Triggers>
+            </Style>
+        </Grid.Resources>
 
-                <wpfcontrol:IconButton Title="系统复位" PreviewMouseDown="RestSystem_PreviewMouseDown" PreviewMouseUp="RestSystem_PreviewMouseUp" x:Name="RestSystem" Grid.Column="0" Grid.Row="3" Style="{StaticResource SameTitle}">
-                    <wpfcontrol:IconButton.Icon>
-                        <iconPacks:PackIconMaterial Kind="Restart"/>
-                    </wpfcontrol:IconButton.Icon>
-                </wpfcontrol:IconButton>
+        <Grid.ColumnDefinitions>
+            <ColumnDefinition Width="1*"/>
+            <ColumnDefinition Width="1*"/>
+        </Grid.ColumnDefinitions>
+        <Grid.RowDefinitions>
+            <RowDefinition Height="1*"/>
+            <RowDefinition Height="1*"/>
+            <RowDefinition Height="1*"/>
+        </Grid.RowDefinitions>
 
-                <wpfcontrol:IconButton Title="系统启动" PreviewMouseDown="RestSystem_PreviewMouseDown" PreviewMouseUp="RestSystem_PreviewMouseUp" x:Name="StartSystem" Grid.Column="1" Grid.Row="1" Style="{StaticResource SameTitle}">
-                    <wpfcontrol:IconButton.Icon>
-                        <iconPacks:PackIconMaterial Kind="RefreshAuto"/>
-                    </wpfcontrol:IconButton.Icon>
-                </wpfcontrol:IconButton>
+        <wpfcontrol:IconButton Title="伺服复位" PreviewMouseDown="RestSystem_PreviewMouseDown" 
+                                       PreviewMouseUp="RestSystem_PreviewMouseUp" 
+                                       x:Name="RestAxis" Grid.Column="1" 
+                                       Grid.Row="1" Style="{StaticResource SameTitle}">
+            <wpfcontrol:IconButton.Icon>
+                <iconPacks:PackIconMaterial Kind="Restart"/>
+            </wpfcontrol:IconButton.Icon>
+        </wpfcontrol:IconButton>
 
-                <wpfcontrol:IconButton Title="系统停止" PreviewMouseDown="RestSystem_PreviewMouseDown" PreviewMouseUp="RestSystem_PreviewMouseUp" x:Name="StopSystem" Grid.Row="1" Style="{StaticResource SameTitle}">
-                    <wpfcontrol:IconButton.Icon>
-                        <iconPacks:PackIconMaterial Kind="RefreshCircle"/>
-                    </wpfcontrol:IconButton.Icon>
-                </wpfcontrol:IconButton>
+        <wpfcontrol:IconButton Title="系统复位" PreviewMouseDown="RestSystem_PreviewMouseDown" 
+                                       PreviewMouseUp="RestSystem_PreviewMouseUp" 
+                                       x:Name="RestSystem" Grid.Column="0" 
+                                       Grid.Row="1" Style="{StaticResource SameTitle}">
+            <wpfcontrol:IconButton.Icon>
+                <iconPacks:PackIconMaterial Kind="Restart"/>
+            </wpfcontrol:IconButton.Icon>
+        </wpfcontrol:IconButton>
 
-                <wpfcontrol:IconButton  Click="RegiserReverse_Click"  x:Name="Mode" >
-                    <wpfcontrol:IconButton.Style>
-                        <Style TargetType="wpfcontrol:IconButton" BasedOn="{StaticResource SameTitle}">
-                            <Setter Property="Title" Value="手动模式 "/>
+        <wpfcontrol:IconButton  Click="RegiserReverse_Click"  x:Name="Mode" >
+            <wpfcontrol:IconButton.Style>
+                <Style TargetType="wpfcontrol:IconButton" BasedOn="{StaticResource SameTitle}">
+                    <Setter Property="Title" Value="手动模式 "/>
+                    <Setter Property="Icon">
+                        <Setter.Value>
+                            <iconPacks:PackIconMaterial Kind="GestureTap"/>
+                        </Setter.Value>
+                    </Setter>
+                    <Style.Triggers>
+                        <DataTrigger Binding="{Binding Value}" Value="1">
+                            <Setter Property="Title" Value="自动模式"/>
+                            <Setter Property="ButtonStyle" Value="Success"/>
                             <Setter Property="Icon">
                                 <Setter.Value>
-                                    <iconPacks:PackIconMaterial Kind="GestureTap"/>
+                                    <iconPacks:PackIconMaterial Kind="RefreshAuto"/>
                                 </Setter.Value>
                             </Setter>
-                            <Style.Triggers>
-                                <DataTrigger Binding="{Binding Value}" Value="1">
-                                    <Setter Property="Title" Value="自动模式"/>
-                                    <Setter Property="ButtonStyle" Value="Success"/>
-                                    <Setter Property="Icon">
-                                        <Setter.Value>
-                                            <iconPacks:PackIconMaterial Kind="RefreshAuto"/>
-                                        </Setter.Value>
-                                    </Setter>
-                                </DataTrigger>
-                            </Style.Triggers>
-                        </Style>
-                    </wpfcontrol:IconButton.Style>
-                </wpfcontrol:IconButton>
+                        </DataTrigger>
+                    </Style.Triggers>
+                </Style>
+            </wpfcontrol:IconButton.Style>
+        </wpfcontrol:IconButton>
 
-                <wpfcontrol:IconButton  Click="RegiserReverse_Click"  x:Name="Cup" Grid.Row="2">
-                    <wpfcontrol:IconButton.Style>
-                        <Style TargetType="wpfcontrol:IconButton" BasedOn="{StaticResource SameTitle}">
-                            <Setter Property="Title" Value="吸盘放"/>
+        <wpfcontrol:IconButton  Click="RegiserReverse_Click"  x:Name="Cup" Grid.Row="2">
+            <wpfcontrol:IconButton.Style>
+                <Style TargetType="wpfcontrol:IconButton" BasedOn="{StaticResource SameTitle}">
+                    <Setter Property="Title" Value="吸盘放"/>
+                    <Setter Property="Icon">
+                        <Setter.Value>
+                            <iconPacks:PackIconMaterial Kind="CircleBoxOutline"/>
+                        </Setter.Value>
+                    </Setter>
+                    <Style.Triggers>
+                        <DataTrigger Binding="{Binding Value}" Value="1">
+                            <Setter Property="Title" Value="吸盘吸"/>
+                            <Setter Property="ButtonStyle" Value="Success"/>
                             <Setter Property="Icon">
                                 <Setter.Value>
-                                    <iconPacks:PackIconMaterial Kind="CircleBoxOutline"/>
+                                    <iconPacks:PackIconMaterial Kind="Circle"/>
                                 </Setter.Value>
                             </Setter>
-                            <Style.Triggers>
-                                <DataTrigger Binding="{Binding Value}" Value="1">
-                                    <Setter Property="Title" Value="吸盘吸"/>
-                                    <Setter Property="ButtonStyle" Value="Success"/>
-                                    <Setter Property="Icon">
-                                        <Setter.Value>
-                                            <iconPacks:PackIconMaterial Kind="Circle"/>
-                                        </Setter.Value>
-                                    </Setter>
-                                </DataTrigger>
-                            </Style.Triggers>
-                        </Style>
-                    </wpfcontrol:IconButton.Style>
-                </wpfcontrol:IconButton>
+                        </DataTrigger>
+                    </Style.Triggers>
+                </Style>
+            </wpfcontrol:IconButton.Style>
+        </wpfcontrol:IconButton>
 
-                <wpfcontrol:IconButton  Click="RegiserReverse_Click"  x:Name="CupBlow" Grid.Column="1" Grid.Row="2">
-                    <wpfcontrol:IconButton.Style>
-                        <Style TargetType="wpfcontrol:IconButton" BasedOn="{StaticResource SameTitle}">
-                            <Setter Property="Title" Value="吸盘不吹气"/>
+        <wpfcontrol:IconButton  Click="RegiserReverse_Click"  x:Name="CupBlow" Grid.Column="1" Grid.Row="2">
+            <wpfcontrol:IconButton.Style>
+                <Style TargetType="wpfcontrol:IconButton" BasedOn="{StaticResource SameTitle}">
+                    <Setter Property="Title" Value="吸盘不吹气"/>
+                    <Setter Property="Icon">
+                        <Setter.Value>
+                            <iconPacks:PackIconMaterial Kind="CircleBoxOutline"/>
+                        </Setter.Value>
+                    </Setter>
+                    <Style.Triggers>
+                        <DataTrigger Binding="{Binding Value}" Value="1">
+                            <Setter Property="Title" Value="吸盘吹气"/>
+                            <Setter Property="ButtonStyle" Value="Success"/>
                             <Setter Property="Icon">
                                 <Setter.Value>
-                                    <iconPacks:PackIconMaterial Kind="CircleBoxOutline"/>
+                                    <iconPacks:PackIconMaterial Kind="Circle"/>
                                 </Setter.Value>
                             </Setter>
-                            <Style.Triggers>
-                                <DataTrigger Binding="{Binding Value}" Value="1">
-                                    <Setter Property="Title" Value="吸盘吹气"/>
-                                    <Setter Property="ButtonStyle" Value="Success"/>
-                                    <Setter Property="Icon">
-                                        <Setter.Value>
-                                            <iconPacks:PackIconMaterial Kind="Circle"/>
-                                        </Setter.Value>
-                                    </Setter>
-                                </DataTrigger>
-                            </Style.Triggers>
-                        </Style>
-                    </wpfcontrol:IconButton.Style>
-                </wpfcontrol:IconButton>
-                               
-            </Grid>
-        </GroupBox>
+                        </DataTrigger>
+                    </Style.Triggers>
+                </Style>
+            </wpfcontrol:IconButton.Style>
+        </wpfcontrol:IconButton>
+
     </Grid>
 </wpfcontrol:BaseUserControl>

+ 7 - 3
SCADA_DAQ/Customer/Views/Uct/UctOutputControl.xaml.cs

@@ -34,10 +34,14 @@ namespace SCADA_DAQ.Customer.Views.Uct
             Cup.DataContext = plc.GetListenReg(SampleMachine.Tag_手动吸盘);
             CupBlow.DataContext = plc.GetListenReg(SampleMachine.Tag_手动吹气);
             RestAxis.DataContext = plc.GetListenReg(SampleMachine.Tag_手动伺服复位);
-            StartSystem.DataContext = plc.GetListenReg(SampleMachine.Tag_HIMI开启码垛);
-            StopSystem.DataContext = plc.GetListenReg(SampleMachine.Tag_停止按钮);
+       
             Mode.DataContext = plc.GetListenReg(SampleMachine.Tag_手动0自动1);
-            ManualIncomingMaterial.DataContext = plc.GetListenReg(SampleMachine.Tag_手动来料);
+
+            //StartSystem.DataContext = plc.GetListenReg(SampleMachine.Tag_HIMI开启码垛);
+            //StopSystem.DataContext = plc.GetListenReg(SampleMachine.Tag_停止按钮);
+            //ManualIncomingMaterial.DataContext = plc.GetListenReg(SampleMachine.Tag_手动来料);
+
+            RestSystem.DataContext = plc.GetListenReg(SampleMachine.Tag_SystemReset);
         }
 
         private void RegiserReverse_Click(object sender, RoutedEventArgs e)

BIN=BIN
SCADA_DAQ/Data/Platform.zip


BIN=BIN
SCADA_DAQ/Icon/堆码坐标.png


+ 17 - 17
SCADA_DAQ/Machines/SampleMachine_汇川码垛.cs

@@ -1009,14 +1009,14 @@ namespace SCADA_DAQ.Customer.Machines
 		/// </summary>
 		public const string @Tag_D215="D215";
 			
-		/// <summary>寄存器:D216【X轴取料点位置】
+		/// <summary>寄存器:D2160【X轴取料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:X轴取料点位置</para> 
 		/// </summary>
 		public const string @Tag_X轴取料点位置="X轴取料点位置";
 			
-		/// <summary>寄存器:D217【D217】
+		/// <summary>寄存器:D2161【D217】
 		/// <para>单位:</para> 
 		/// <para>缩放:1 类型: Default</para> 
 		/// <para>备注:</para> 
@@ -1025,7 +1025,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D218【X轴放料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:X轴放料点位置</para> 
 		/// </summary>
 		public const string @Tag_X轴放料点位置="X轴放料点位置";
@@ -1039,7 +1039,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D220【Y轴取料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:Y轴取料点位置</para> 
 		/// </summary>
 		public const string @Tag_Y轴取料点位置="Y轴取料点位置";
@@ -1053,7 +1053,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D222【Y轴放料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:Y轴放料点位置</para> 
 		/// </summary>
 		public const string @Tag_Y轴放料点位置="Y轴放料点位置";
@@ -1067,7 +1067,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D224【Z轴取料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:Z轴取料点位置</para> 
 		/// </summary>
 		public const string @Tag_Z轴取料点位置="Z轴取料点位置";
@@ -1081,7 +1081,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D226【Z轴放料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:Z轴放料点位置</para> 
 		/// </summary>
 		public const string @Tag_Z轴放料点位置="Z轴放料点位置";
@@ -1095,7 +1095,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D228【R轴取料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:R轴取料点位置</para> 
 		/// </summary>
 		public const string @Tag_R轴取料点位置="R轴取料点位置";
@@ -1109,7 +1109,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D230【R轴放料点位置】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Int32</para> 
+		/// <para>缩放:1 类型: Float</para> 
 		/// <para>备注:R轴放料点位置</para> 
 		/// </summary>
 		public const string @Tag_R轴放料点位置="R轴放料点位置";
@@ -1228,7 +1228,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D606【X轴放料点上方】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Default</para> 
+		/// <para>缩放:1 类型: Int32</para> 
 		/// <para>备注:X轴放料点上方</para> 
 		/// </summary>
 		public const string @Tag_X轴放料点上方="X轴放料点上方";
@@ -1312,7 +1312,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D618【Y轴放料点上方】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Default</para> 
+		/// <para>缩放:1 类型: Int32</para> 
 		/// <para>备注:Y轴放料点上方</para> 
 		/// </summary>
 		public const string @Tag_Y轴放料点上方="Y轴放料点上方";
@@ -1424,7 +1424,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D634【Z轴放料点】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Default</para> 
+		/// <para>缩放:1 类型: Int32</para> 
 		/// <para>备注:Z轴放料点</para> 
 		/// </summary>
 		public const string @Tag_Z轴放料点="Z轴放料点";
@@ -1452,7 +1452,7 @@ namespace SCADA_DAQ.Customer.Machines
 			
 		/// <summary>寄存器:D638【R轴放料点角度】
 		/// <para>单位:</para> 
-		/// <para>缩放:1 类型: Default</para> 
+		/// <para>缩放:1 类型: Int32</para> 
 		/// <para>备注:R轴放料点角度</para> 
 		/// </summary>
 		public const string @Tag_R轴放料点角度="R轴放料点角度";
@@ -2290,12 +2290,12 @@ namespace SCADA_DAQ.Customer.Machines
 		/// </summary>
 		public const string @Tag_作业完成="作业完成";
 			
-		/// <summary>寄存器:M136【M136
+		/// <summary>寄存器:M136【SystemReset
 		/// <para>单位:</para> 
 		/// <para>缩放:1 类型: Default</para> 
-		/// <para>备注:</para> 
+		/// <para>备注:系统复位</para> 
 		/// </summary>
-		public const string @Tag_M136="M136";
+		public const string @Tag_SystemReset="SystemReset";
 			
 		/// <summary>寄存器:M137【M137】
 		/// <para>单位:</para> 

BIN=BIN
SCADA_DAQ/Tools/EICPDesk.exe