Files
ww-jst/wmsjst/JSMachine.WMS.PLC/ModbusImpl/Elevator/ModbusIO/Write/ElevatorWrite.cs
T

41 lines
1.9 KiB
C#
Raw Normal View History

2026-09-02 16:31:50 +08:00
using JSMachine.WMS.PLC.ModbusImpl.Elevator.Model;
namespace JSMachine.WMS.PLC.ModbusImpl.PaperFeedGroundRack.ModbusIO.Write
{
public static class ElevatorWrite
{
public async static Task<bool> 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;
}
}
}