| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- using SHJX.Service.Control.Extends;
- using SHJX.Service.Control.Common.Assets;
- using SHJX.Service.Control.Disposables;
- namespace SHJX.Service.Control.Pipeline.Nodes.LiquidNode
- {
- public class AddLiquidDropperOpen : INode
- {
- public AddLiquidDropperOpen()
- {
- Name = nameof(AddLiquidDropperOpen);
- }
- public override INode Invoke()
- {
-
- bool locker;
- do
- {
- StateMachine state = DataManagerInstance.QueryStateMachine(StateMachineName.MOTOR_LOCK);
- locker = state.Status > 0;
- } while (locker);
- do
- {
- StateMachine state = DataManagerInstance.QueryStateMachine(StateMachineName.MOTOR_LOCKDROPPER);
- locker = state.Status > 0;
- } while (locker);
- DataManagerInstance.IncreaseLock(StateMachineName.MOTOR_LOCKDROPPER);
- bool res = true;
- do
- {
- char[] readData = EquipmentNames.AxisD.MotorRead();
- if (readData is null or not { Length: 8 })
- {
- continue;
- }
- res = readData[2].Equals('0');
- Thread.Sleep(800);
- } while (!res);
- res = EquipmentNames.AxisD.LiquidMotorMove(Convert.ToInt32(-170* 4000));
- return this;
- }
- }
- }
|