using JSMachine.WMS.PLC.ModbusImpl.Elevator.Model; namespace JSMachine.WMS.PLC.ModbusImpl.PaperFeedGroundRack.ModbusIO.Write { public static class ElevatorWrite { public async static Task WriteElevator(ElevatorPlcStatus elevatorStatus) { IModbusEngine modbusEngine = PLCManager.GetPLC(elevatorStatus.ElevatorNo); if (modbusEngine == null) return false; if (elevatorStatus.StockInPutdownChanelOne) await modbusEngine.WriteUshortOneAsync(1, 10, elevatorStatus.StockInPutdownChanelOne ? (ushort)1 : (ushort)0); if (elevatorStatus.StockInPutdownChanelTwo) await modbusEngine.WriteUshortOneAsync(1, 8, elevatorStatus.StockInPutdownChanelTwo ? (ushort)1 : (ushort)0); if (elevatorStatus.StockInPickupChannelOne) await modbusEngine.WriteUshortOneAsync(1, 15, elevatorStatus.StockInPickupChannelOne ? (ushort)1 : (ushort)0); if (elevatorStatus.StockInPickupChannelTwo) await modbusEngine.WriteUshortOneAsync(1, 13, elevatorStatus.StockInPickupChannelTwo ? (ushort)1 : (ushort)0); if (elevatorStatus.StockOutPutdownChanelOne) await modbusEngine.WriteUshortOneAsync(1, 14, elevatorStatus.StockOutPutdownChanelOne ? (ushort)1 : (ushort)0); if (elevatorStatus.StockOutPutdownChanelTwo) await modbusEngine.WriteUshortOneAsync(1, 12, elevatorStatus.StockOutPutdownChanelTwo ? (ushort)1 : (ushort)0); if (elevatorStatus.StockOutPickupChanelOne) await modbusEngine.WriteUshortOneAsync(1, 11, elevatorStatus.StockOutPickupChanelOne ? (ushort)1 : (ushort)0); if (elevatorStatus.StockOutPickupChanelTwo) await modbusEngine.WriteUshortOneAsync(1, 9, elevatorStatus.StockOutPickupChanelTwo ? (ushort)1 : (ushort)0); return true; } } }