98 lines
3.7 KiB
C#
98 lines
3.7 KiB
C#
using Common;
|
|
using CommunityToolkit.Mvvm.ComponentModel;
|
|
using CommunityToolkit.Mvvm.Input;
|
|
using Heisig.HMI.AdsManager;
|
|
using HMIToolkit;
|
|
using InfineonHMI.Model;
|
|
using System.Collections.ObjectModel;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Diagnostics;
|
|
using TwinCAT.TypeSystem;
|
|
namespace InfineonHMI;
|
|
|
|
public sealed partial class EtchingStation1PageVM : ObservableValidator, IDisposable
|
|
{
|
|
|
|
[ObservableProperty] private BinaryValveControlVM vacuumValveControlEtching1Vm;
|
|
|
|
[ObservableProperty] private BinaryValveControlVM doorValveControlEtching1Vm;
|
|
|
|
[ObservableProperty] private BinaryValveControlVM chuckUnlockValveLeftEtching1Vm;
|
|
|
|
[ObservableProperty] private BinaryValveControlVM chuckUnlockValveRightEtching1Vm;
|
|
|
|
[ObservableProperty] private BinaryValveControlVM chuckEjectValveFrontEtching1Vm;
|
|
|
|
[ObservableProperty] private BinaryValveControlVM chuckEjectValveBackEtching1Vm;
|
|
|
|
[ObservableProperty] private HMIControlButtonVM? chuckUnlockCmdButtonEtching1Vm;
|
|
|
|
[ObservableProperty] private HMIControlButtonVM? chuckLockCmdButtonEtching1Vm;
|
|
|
|
[ObservableProperty] private HMIControlButtonVM? chuckEjectCmdButtonEtching1Vm;
|
|
|
|
[ObservableProperty] private PackMLControlVM? etching1PackMLControlVm;
|
|
|
|
private readonly string? _variableName;
|
|
|
|
private readonly IAdsManager? _adsManager;
|
|
|
|
public EtchingStation1PageVM()
|
|
{
|
|
VacuumValveControlEtching1Vm = new BinaryValveControlVM();
|
|
DoorValveControlEtching1Vm = new BinaryValveControlVM();
|
|
ChuckUnlockValveLeftEtching1Vm = new BinaryValveControlVM();
|
|
ChuckUnlockValveRightEtching1Vm = new BinaryValveControlVM();
|
|
ChuckEjectValveFrontEtching1Vm = new BinaryValveControlVM();
|
|
ChuckEjectValveBackEtching1Vm = new BinaryValveControlVM();
|
|
|
|
ChuckUnlockCmdButtonEtching1Vm = new HMIControlButtonVM();
|
|
ChuckLockCmdButtonEtching1Vm = new HMIControlButtonVM();
|
|
ChuckEjectCmdButtonEtching1Vm = new HMIControlButtonVM();
|
|
|
|
Etching1PackMLControlVm = new();
|
|
Etching1PackMLControlVm.STitle = "Ätzer 1";
|
|
}
|
|
|
|
public EtchingStation1PageVM(IAdsManager adsManager, string variableName)
|
|
{
|
|
_adsManager = adsManager;
|
|
_variableName = variableName;
|
|
|
|
VacuumValveControlEtching1Vm = new BinaryValveControlVM(_adsManager, _variableName + ".stVacuumValve");
|
|
DoorValveControlEtching1Vm = new BinaryValveControlVM(_adsManager, _variableName + ".stDoorValve");
|
|
ChuckUnlockValveLeftEtching1Vm = new BinaryValveControlVM(_adsManager, _variableName + ".stChuckUnlockLeft");
|
|
ChuckUnlockValveRightEtching1Vm = new BinaryValveControlVM(_adsManager, _variableName + ".stChuckUnlockRight");
|
|
ChuckEjectValveFrontEtching1Vm = new BinaryValveControlVM(_adsManager, _variableName + ".stChuckEjectFront");
|
|
ChuckEjectValveBackEtching1Vm = new BinaryValveControlVM(_adsManager, _variableName + ".stChuckEjectBack");
|
|
|
|
ChuckUnlockCmdButtonEtching1Vm = new HMIControlButtonVM(_adsManager, _variableName + ".stChuckUnlockCmd");
|
|
ChuckLockCmdButtonEtching1Vm = new HMIControlButtonVM(_adsManager, _variableName + ".stChuckLockCmd");
|
|
ChuckEjectCmdButtonEtching1Vm = new HMIControlButtonVM(_adsManager, _variableName + ".stChuckEjectCmd");
|
|
|
|
Etching1PackMLControlVm = new(_adsManager, _variableName + ".stStationCmds");
|
|
Etching1PackMLControlVm.STitle = "Ätzer 1";
|
|
}
|
|
|
|
|
|
|
|
|
|
public void Dispose()
|
|
{
|
|
VacuumValveControlEtching1Vm.Dispose();
|
|
DoorValveControlEtching1Vm.Dispose();
|
|
ChuckUnlockValveLeftEtching1Vm.Dispose();
|
|
ChuckUnlockValveRightEtching1Vm.Dispose();
|
|
ChuckEjectValveFrontEtching1Vm.Dispose();
|
|
ChuckEjectValveBackEtching1Vm.Dispose();
|
|
ChuckUnlockCmdButtonEtching1Vm?.Dispose();
|
|
ChuckUnlockCmdButtonEtching1Vm = null;
|
|
ChuckLockCmdButtonEtching1Vm?.Dispose();
|
|
ChuckLockCmdButtonEtching1Vm = null;
|
|
ChuckLockCmdButtonEtching1Vm?.Dispose();
|
|
ChuckEjectCmdButtonEtching1Vm = null;
|
|
|
|
|
|
}
|
|
|
|
} |