|
|
@@ -31,10 +31,10 @@ namespace PunkHPX8_RT.Devices.Safety
|
|
|
WaitSwitchOnPlatingCell3Rotation,
|
|
|
PlatingCell4RotationSwitchOn,
|
|
|
WaitSwitchOnPlatingCell4Rotation,
|
|
|
- PlatingCell12LiftSwitchOn,
|
|
|
- WaitSwitchOnPlatingCell12Lift,
|
|
|
- PlatingCell34LiftSwitchOn,
|
|
|
- WaitSwitchOnPlatingCell34Lift,
|
|
|
+ PlatingCell12VerticalSwitchOn,
|
|
|
+ WaitSwitchOnPlatingCell12Vertical,
|
|
|
+ PlatingCell34VerticalSwitchOn,
|
|
|
+ WaitSwitchOnPlatingCell34Vertical,
|
|
|
SwitchOnSRD1,
|
|
|
WaitSwitchOnSRD1,
|
|
|
SwitchOnSRD2,
|
|
|
@@ -49,8 +49,8 @@ namespace PunkHPX8_RT.Devices.Safety
|
|
|
private JetAxisBase _platingCell2Rotation;
|
|
|
private JetAxisBase _platingCell3Rotation;
|
|
|
private JetAxisBase _platingCell4Rotation;
|
|
|
- private JetAxisBase _platingCell12Lift;
|
|
|
- private JetAxisBase _platingCell34Lift;
|
|
|
+ private JetAxisBase _platingCell1_2Vertical;
|
|
|
+ private JetAxisBase _platingCell3_4Vertical;
|
|
|
private JetAxisBase _srd1Rotation;
|
|
|
private JetAxisBase _srd2Rotation;
|
|
|
#endregion
|
|
|
@@ -78,9 +78,43 @@ namespace PunkHPX8_RT.Devices.Safety
|
|
|
Runner.RunIf(SafetyAllOnStep.VpwCell1SwitchOn,ModuleHelper.IsInstalled(ModuleName.VPW1),()=>SwitchOnAxis(_vpwCell1Rotation),_delay_1ms)
|
|
|
.WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnVpwCell1, ModuleHelper.IsInstalled(ModuleName.VPW1),
|
|
|
()=>CheckSwitchOn(_vpwCell1Rotation),()=>CheckSwitchOnStopStatus(_vpwCell1Rotation))
|
|
|
+
|
|
|
.RunIf(SafetyAllOnStep.VpwCell2SwitchOn, ModuleHelper.IsInstalled(ModuleName.VPW2), () => SwitchOnAxis(_vpwCell2Rotation), _delay_1ms)
|
|
|
.WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnVpwCell2, ModuleHelper.IsInstalled(ModuleName.VPW2),
|
|
|
() => CheckSwitchOn(_vpwCell2Rotation), () => CheckSwitchOnStopStatus(_vpwCell2Rotation))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.PlatingCell12VerticalSwitchOn, ModuleHelper.IsInstalled(ModuleName.PlatingCell1), () => SwitchOnAxis(_platingCell1_2Vertical), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnPlatingCell12Vertical, ModuleHelper.IsInstalled(ModuleName.PlatingCell1),
|
|
|
+ () => CheckSwitchOn(_platingCell1_2Vertical), () => CheckSwitchOnStopStatus(_platingCell1_2Vertical))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.PlatingCell34VerticalSwitchOn, ModuleHelper.IsInstalled(ModuleName.PlatingCell3), () => SwitchOnAxis(_platingCell3_4Vertical), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnPlatingCell34Vertical, ModuleHelper.IsInstalled(ModuleName.PlatingCell3),
|
|
|
+ () => CheckSwitchOn(_platingCell3_4Vertical), () => CheckSwitchOnStopStatus(_platingCell3_4Vertical))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.PlatingCell1RotationSwitchOn, ModuleHelper.IsInstalled(ModuleName.PlatingCell1), () => SwitchOnAxis(_platingCell1Rotation), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnPlatingCell1Rotation, ModuleHelper.IsInstalled(ModuleName.PlatingCell1),
|
|
|
+ () => CheckSwitchOn(_platingCell1Rotation), () => CheckSwitchOnStopStatus(_platingCell1Rotation))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.PlatingCell2RotationSwitchOn, ModuleHelper.IsInstalled(ModuleName.PlatingCell2), () => SwitchOnAxis(_platingCell2Rotation), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnPlatingCell2Rotation, ModuleHelper.IsInstalled(ModuleName.PlatingCell2),
|
|
|
+ () => CheckSwitchOn(_platingCell2Rotation), () => CheckSwitchOnStopStatus(_platingCell2Rotation))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.PlatingCell3RotationSwitchOn, ModuleHelper.IsInstalled(ModuleName.PlatingCell3), () => SwitchOnAxis(_platingCell3Rotation), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnPlatingCell3Rotation, ModuleHelper.IsInstalled(ModuleName.PlatingCell3),
|
|
|
+ () => CheckSwitchOn(_platingCell3Rotation), () => CheckSwitchOnStopStatus(_platingCell3Rotation))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.PlatingCell4RotationSwitchOn, ModuleHelper.IsInstalled(ModuleName.PlatingCell4), () => SwitchOnAxis(_platingCell4Rotation), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnPlatingCell4Rotation, ModuleHelper.IsInstalled(ModuleName.PlatingCell4),
|
|
|
+ () => CheckSwitchOn(_platingCell4Rotation), () => CheckSwitchOnStopStatus(_platingCell4Rotation))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.SwitchOnSRD1, ModuleHelper.IsInstalled(ModuleName.SRD1), () => SwitchOnAxis(_srd1Rotation), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnSRD1, ModuleHelper.IsInstalled(ModuleName.SRD1),
|
|
|
+ () => CheckSwitchOn(_srd1Rotation), () => CheckSwitchOnStopStatus(_srd1Rotation))
|
|
|
+
|
|
|
+ .RunIf(SafetyAllOnStep.SwitchOnSRD2, ModuleHelper.IsInstalled(ModuleName.SRD2), () => SwitchOnAxis(_srd2Rotation), _delay_1ms)
|
|
|
+ .WaitWithStopConditionIf(SafetyAllOnStep.WaitSwitchOnSRD2, ModuleHelper.IsInstalled(ModuleName.SRD2),
|
|
|
+ () => CheckSwitchOn(_srd2Rotation), () => CheckSwitchOnStopStatus(_srd2Rotation))
|
|
|
+
|
|
|
.End(SafetyAllOnStep.End, NullFun, _delay_1ms);
|
|
|
|
|
|
return Runner.Status;
|
|
|
@@ -123,6 +157,14 @@ namespace PunkHPX8_RT.Devices.Safety
|
|
|
_device = DEVICE.GetDevice<SafetyDevice>(Module);
|
|
|
_vpwCell1Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.VPW1}.Rotation");
|
|
|
_vpwCell2Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.VPW2}.Rotation");
|
|
|
+ _platingCell1Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.PlatingCell1}.Rotation");
|
|
|
+ _platingCell2Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.PlatingCell2}.Rotation");
|
|
|
+ _platingCell3Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.PlatingCell3}.Rotation");
|
|
|
+ _platingCell4Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.PlatingCell4}.Rotation");
|
|
|
+ _platingCell1_2Vertical = DEVICE.GetDevice<JetAxisBase>($"PlatingCell1_2.Vertical");
|
|
|
+ _platingCell3_4Vertical = DEVICE.GetDevice<JetAxisBase>($"PlatingCell3_4.Vertical");
|
|
|
+ _srd1Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.SRD1}.Rotation");
|
|
|
+ _srd2Rotation = DEVICE.GetDevice<JetAxisBase>($"{ModuleName.SRD2}.Rotation");
|
|
|
return Runner.Start(Module, $"Safety All On");
|
|
|
}
|
|
|
}
|