222
schangxiang@126.com
2024-11-21 81c361a3fab7d43fc14ad46777a18a1ab9215c06
SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs
@@ -19,7 +19,9 @@
        /// <summary>
        /// 写入DB
        /// </summary>
        public static string W_DBHeaderWithSeparate = "610" + WareSdaStruct.PLCDBADDRESS_SEPARATE;
        public static string W_DBHeaderWithSeparate_BZ39 = "3002" + WareSdaStruct.PLCDBADDRESS_SEPARATE;
        public static string W_DBHeaderWithSeparate_BZ01 = "3001" + WareSdaStruct.PLCDBADDRESS_SEPARATE;
        /// <summary>
        /// 读取DB
        /// </summary>
@@ -133,35 +135,45 @@
            {
                //TODO:这里写配置的DB地址
                #region 写入
                W_HandShake = W_DBHeaderWithSeparate + "0.0",
                W_1015_ReScan = R_DBHeader_ScanWithSeparate + "302.0", //1015位置重新扫码 【EditBy shaocx,2022-05-02】
                W_1019_ReScan = R_DBHeader_ScanWithSeparate + "368.0", //1019位置重新扫码, 【EditBy shaocx,2022-05-02】
                W_Station_FinishACK = W_DBHeaderWithSeparate + "146.0",
                // W_HandShake = W_DBHeaderWithSeparate + "0.0",
                W_1002_ScanFailACK = R_DBHeader_ScanWithSeparate + "66.1",
                W_1004_ScanFailACK = R_DBHeader_ScanWithSeparate + "126.1",
                W_1006_ScanFailACK = R_DBHeader_ScanWithSeparate + "186.1",
                W_1007_ScanFailACK = R_DBHeader_ScanWithSeparate + "246.1",
                W_1002_ScanSuccessACK = R_DBHeader_ScanWithSeparate + "66.0",
                W_1004_ScanSuccessACK = R_DBHeader_ScanWithSeparate + "126.0",
                W_1006_ScanSuccessACK = R_DBHeader_ScanWithSeparate + "186.0",
                W_1007_ScanSuccessACK = R_DBHeader_ScanWithSeparate + "246.0",
                W_Out_MaterialModel = W_DBHeaderForXigangGetDataWithSeparate + "0.0",
                W_Out_OrderNo = W_DBHeaderForXigangGetDataWithSeparate + "18.0",
                W_Out_SerialNumber = W_DBHeaderForXigangGetDataWithSeparate + "36.0",
                #endregion
            };
            //写入地址
            _dbBlockForWrite.W_StationForWriteCommList = new List<StationDBForWriteComm>();
            _dbBlockForWrite.W_StationForWriteCommList.Add(new StationDBForWriteComm() { StationCode = "1001", W_TaskID = W_DBHeaderWithSeparate + "6.0" });
            _dbBlockForWrite.W_StationForWriteCommList.Add(new StationDBForWriteComm() { StationCode = "1002", W_TaskID = W_DBHeaderWithSeparate + "14.0" });
            _dbBlockForWrite.W_StationForWriteCommList.Add(new StationDBForWriteComm() { StationCode = "1003", W_TaskID = W_DBHeaderWithSeparate + "22.0" });
            _dbBlockForWrite.W_StationForWriteCommList.Add(new StationDBForWriteComm()
            {
                StationCode = StationLocationEnum.首次扫码工位.ToString(),
            });
            _dbBlockForWrite.W_StationForWriteCommList.Add(new StationDBForWriteComm()
            {
                StationCode = StationLocationEnum.BZ01.ToString(),
                W_DataFinish = W_DBHeaderWithSeparate_BZ01 + "0.0",
                W_KittingInfo = W_DBHeaderWithSeparate_BZ01 + "2.0",
            });
            _dbBlockForWrite.W_StationForWriteCommList.Add(new StationDBForWriteComm()
            {
                StationCode = StationLocationEnum.BZ39.ToString(),
                W_DataFinish = W_DBHeaderWithSeparate_BZ39 + "0.0",
                W_InboundFinishConfirm = W_DBHeaderWithSeparate_BZ39 + "0.1",
                W_Destination_In = W_DBHeaderWithSeparate_BZ39 + "2.0",
                W_Length = W_DBHeaderWithSeparate_BZ39 + "6.0",
                W_Width = W_DBHeaderWithSeparate_BZ39 + "8.0",
                W_Height = W_DBHeaderWithSeparate_BZ39 + "10.0",
                //出库
                W_ReqOut = W_DBHeaderWithSeparate_BZ39 + "12.0",
                W_Destination_Out = W_DBHeaderWithSeparate_BZ39 + "14.0",
                W_Mode = W_DBHeaderWithSeparate_BZ39 + "18.0",
            });
            return _dbBlockForWrite;
        }
@@ -244,67 +256,26 @@
                #endregion
            };
            //读取地址
            double default_PH_1 = 2.0;
            double default_PH_2 = 2.1;
            double default_ACK = 2.2;
            double default_Model = 4.0;
            double default_State = 6.0;
            double default_AlarmCode = 8.0;
            double default_Destination = 10.0;
            double default_Shape = 12.0;
            double default_TaskID = 14.0;
            int addValue = 16;
            _dbBlockForRead.R_StationForReadCommList = new List<StationDBForReadComm>();
            for (int i = 0; i < WareSdaStruct.StationStationList.Count; i++)
            _dbBlockForRead.R_StationForReadCommList.Add(new StationDBForReadComm()
            {
                var stationCode = WareSdaStruct.StationStationList[i];
                if (stationCode == "1019")
                {
                    _dbBlockForRead.R_StationForReadCommList.Add(new StationDBForReadComm()
                    {
                        StationCode = stationCode,
                        R_PH_1 = R_DBHeaderWithSeparate + "350.0",
                        R_PH_2 = R_DBHeaderWithSeparate + "350.1",
                        R_ACK = R_DBHeaderWithSeparate + "350.2",
                        R_Model = R_DBHeaderWithSeparate + ("352.0"),
                        R_State = R_DBHeaderWithSeparate + ("354.0"),
                        R_AlarmCode = R_DBHeaderWithSeparate + ("356.0"),
                        R_Destination = R_DBHeaderWithSeparate + ("358.0"),
                        R_Shape = R_DBHeaderWithSeparate + ("360.0"),
                        R_TaskID = R_DBHeaderWithSeparate + ("362.0")
                    });
                }
                else
                {
                    if (i > 0)
                    {
                        default_PH_1 += addValue;
                        default_PH_2 += addValue;
                        default_ACK += addValue;
                        default_Model += addValue;
                        default_State += addValue;
                        default_AlarmCode += addValue;
                        default_Destination += addValue;
                        default_Shape += addValue;
                        default_TaskID += addValue;
                    }
                    _dbBlockForRead.R_StationForReadCommList.Add(new StationDBForReadComm()
                    {
                        StationCode = stationCode,
                        R_PH_1 = R_DBHeaderWithSeparate + default_PH_1.ToString("0.0"),
                        R_PH_2 = R_DBHeaderWithSeparate + default_PH_2.ToString("0.0")
                        ,
                        R_ACK = R_DBHeaderWithSeparate + default_ACK.ToString("0.0"),
                        R_Model = R_DBHeaderWithSeparate + default_Model.ToString("0.0"),
                        R_State = R_DBHeaderWithSeparate + default_State.ToString("0.0"),
                        R_AlarmCode = R_DBHeaderWithSeparate + default_AlarmCode.ToString("0.0"),
                        R_Destination = R_DBHeaderWithSeparate + default_Destination.ToString("0.0"),
                        R_Shape = R_DBHeaderWithSeparate + default_Shape.ToString("0.0"),
                        R_TaskID = R_DBHeaderWithSeparate + default_TaskID.ToString("0.0")
                    });
                }
            }
                StationCode = StationLocationEnum.BZ01.ToString(),
                R_ReqParseData = W_DBHeaderWithSeparate_BZ01 + "50.0",
                R_ReadCodeResult = W_DBHeaderWithSeparate_BZ01 + "52.0",
            });
            _dbBlockForRead.R_StationForReadCommList.Add(new StationDBForReadComm()
            {
                StationCode = StationLocationEnum.BZ39.ToString(),
                R_ReqParseData = W_DBHeaderWithSeparate_BZ39 + "0.0",
                R_InboundFinish = W_DBHeaderWithSeparate_BZ39 + "50.1",
                R_OutboundFinish = W_DBHeaderWithSeparate_BZ39 + "50.2",
                R_ReadCodeResult = W_DBHeaderWithSeparate_BZ39 + "52.0",
                R_InboundNumber = W_DBHeaderWithSeparate_BZ39 + "104.0",
                R_OutboundNumber = W_DBHeaderWithSeparate_BZ39 + "108.0"
            });
            return _dbBlockForRead;