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) { LogHelper.Instance.Info($"{rgvStationNo}工位, {deviceNo}号车"); return true; //int point = 0x600; ////选择是哪个小车 //point += (deviceNo - 1) * 32; ////选择是小车的哪个点位 //point += rgvStationNo; //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.MelsecInstance1.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); } } else { return null; } return result; } } }