using HighWayIot.Log4net; using HighWayIot.Plc.PlcEntity; using HslCommunication; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace HighWayIot.Plc.PlcHelper { /// /// PLC工位识别工位读取 /// public class WorkStationHelper { /// /// RFID10小车工位识别点位写入 /// /// /// public bool WriteStationSingal(int rgvStationNo, int deviceNo) { int point = 0x600; //选择是哪个小车 point += (deviceNo - 1) * 32; //选择是小车的哪个点位 point += rgvStationNo - 1; bool result = PlcConnect.PlcWrite2($"B{point.ToString("X")}", true, DataTypeEnum.Bool).IsSuccess; return result; } /// /// RFID固定工位识别点位读取 /// public bool[] ReadStationSingal() { bool[] result = new bool[17]; OperateResult PlcResult = PlcConnect.MelsecInstance2.Read("B230", 2); byte[] data = PlcResult.Content; if (PlcResult.IsSuccess == true) { for (int i = 0; i < 17; i++) { int dataCount = i / 8; int indexCount = i % 8; result[i] = data[dataCount].GetBoolByIndex(indexCount); } } return result; } } }