| | |
| | | locMast.setBarcode(taskWrk.getBarcode()); |
| | | |
| | | } |
| | | toWmsService.addReportLog(taskWrk); |
| | | // toWmsService.addReportLog(taskWrk); |
| | | locMastService.updateById(locMast); |
| | | taskWrk.setStatus(7);//æå¨å®æä»»å¡ |
| | | taskWrk.setModiTime(new Date()); |
| | |
| | | } catch (Exception e) { |
| | | taskWrk.setModiUser(9999L);//æä½å |
| | | } |
| | | toWmsService.addReportLog(taskWrk); |
| | | // toWmsService.addReportLog(taskWrk); |
| | | |
| | | taskWrk.setCompleteTime(now);//å®ç»æ¶é´ |
| | | taskWrkService.updateById(taskWrk); |
| | |
| | | |
| | | TaskWrk getLocNoFromWms(StorageEscalationParam wmsParam); |
| | | |
| | | /** |
| | | * 䏿¥æ§è¡ç¶æ |
| | | */ |
| | | void executionStatusReport(String taskNo,Integer wrkSts); |
| | | |
| | | } |
| | |
| | | private boolean crn3; |
| | | |
| | | |
| | | public void generateStoreWrkFile() throws IOException, InterruptedException { |
| | | public synchronized void generateStoreWrkFile() { |
| | | try { |
| | | // æ ¹æ®è¾é线plcéå |
| | | for (DevpSlave devp : slaveProperties.getDevp()) { |
| | | // éåå
¥åºå£ |
| | | for (DevpSlave.Sta inSta : devp.getInSta()) { |
| | | if (inSta.getStaNo() != 114) { |
| | | continue; |
| | | } |
| | | StorageEscalationParam storageEscalationParam = new StorageEscalationParam(); |
| | | storageEscalationParam.setStationCode(inSta.getStaNo()); |
| | | // è·åå
¥åºç«ä¿¡æ¯ |
| | |
| | | back = true; |
| | | } |
| | | // 夿æ¯å¦æ»¡è¶³å
¥åºæ¡ä»¶ |
| | | if (staProtocol.isAutoing() && staProtocol.isLoading() |
| | | && staProtocol.isInEnable() |
| | | && !staProtocol.isEmptyMk() && workNo >= 9790 |
| | | && staProtocol.isPakMk()) { |
| | | if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() |
| | | && !staProtocol.isEmptyMk() && workNo >= 9000 && staProtocol.isPakMk()) { |
| | | // if(true){ |
| | | // è·åæ¡ç æ«æä»ªä¿¡æ¯ |
| | | BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode()); |
| | | if (barcodeThread == null) { |
| | | continue; |
| | | } |
| | | String BoxNo = barcodeThread.getBarcode(); |
| | | if (Cools.isEmpty(BoxNo)) { |
| | | log.error("{}å·æ¡ç æ«æå¤±è´¥ï¼å¼ï¼{}",inSta.getBarcode(),BoxNo); |
| | | continue; |
| | | } |
| | | TaskWrk taskWrk1 = taskWrkService.selectOne(new EntityWrapper<TaskWrk>().eq("barcode", BoxNo)); |
| | | if (!Cools.isEmpty(taskWrk1)) { |
| | | log.info("æçç ï¼" + BoxNo + "任塿¡£åå¨"); |
| | | if (taskWrk1.getIoType() == 1 && taskWrk1.getStartPoint().equals(staProtocol.getSiteId().toString())) { |
| | | StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() |
| | | .eq("crn_no", taskWrk1.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); |
| | | if (Cools.isEmpty(staDesc)) { |
| | | return; |
| | | } else { |
| | | continue; |
| | | } |
| | | } |
| | | // if (taskWrk1.getIoType() == 1 && taskWrk1.getStartPoint().equals(staProtocol.getSiteId().toString())) { |
| | | // StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() |
| | | // .eq("crn_no", taskWrk1.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); |
| | | // if (Cools.isEmpty(staDesc)) { |
| | | // return; |
| | | // } else { |
| | | // continue; |
| | | // } |
| | | // } |
| | | } |
| | | if (back) { |
| | | storageEscalationParam.setWCSStatus(1); |
| | |
| | | storageEscalationParam.setBarcode(BoxNo); |
| | | log.info("ç»æå
¥åº={}", storageEscalationParam); |
| | | TaskWrk taskWrk = toWmsService.getLocNoFromWms(storageEscalationParam); |
| | | if (taskWrk == null) { |
| | | log.error("å
¥åºè¯·æ±wmså建任å¡å·¥ä½æ¡£ä¸ºç©ºï¼{}",storageEscalationParam); |
| | | continue; |
| | | } |
| | | if (back) { |
| | | log.info("æçéå==>{}ï¼{}", BoxNo, errMsg); |
| | | staProtocol.setStaNo(inSta.getBackSta().shortValue()); |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | } else { |
| | | if (!Cools.isEmpty(taskWrk)) { |
| | | StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() |
| | | .eq("crn_no", taskWrk.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); |
| | | staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue()); |
| | | staProtocol.setStaNo(staDesc.getCrnStn().shortValue()); |
| | | MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | //æ·»å 䏿¥æ¥å¿ |
| | | toWmsService.addReportLog(taskWrk); |
| | | } else { |
| | | log.info("åå»ºå·¥ä½æ¡£å¤±è´¥==>{}", taskWrk.getTaskNo()); |
| | | staProtocol.setStaNo(inSta.getBackSta().shortValue()); |
| | | devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | } |
| | | // toWmsService.addReportLog(taskWrk); |
| | | // if (!Cools.isEmpty(taskWrk)) { |
| | | // StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>() |
| | | // .eq("crn_no", taskWrk.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId())); |
| | | // staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue()); |
| | | // staProtocol.setStaNo(staDesc.getCrnStn().shortValue()); |
| | | // MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | // //æ·»å 䏿¥æ¥å¿ |
| | | // toWmsService.addReportLog(taskWrk); |
| | | // } else { |
| | | // log.info("åå»ºå·¥ä½æ¡£å¤±è´¥==>{}", taskWrk.getTaskNo()); |
| | | // staProtocol.setStaNo(inSta.getBackSta().shortValue()); |
| | | // devpThread.setPakMk(staProtocol.getSiteId(), false); |
| | | // MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol)); |
| | | // } |
| | | |
| | | } |
| | | |
| | |
| | | for (CrnSlave crnSlave : slaveProperties.getCrn()) { |
| | | // éåå åæºåºåºç« |
| | | for (CrnSlave.CrnStn crnStn : crnSlave.getCrnOutStn()) { |
| | | List<StaDesc> staDescs = staDescMapper.selectList(new EntityWrapper<StaDesc>().eq("crn_no", crnSlave.getId()).eq("crn_stn", crnStn.getStaNo())); |
| | | for (StaDesc staDesc : staDescs) { |
| | | // List<StaDesc> staDescs = staDescMapper.selectList(new EntityWrapper<StaDesc>().eq("crn_no", crnSlave.getId()).eq("crn_stn", crnStn.getStaNo())); |
| | | // for (StaDesc staDesc : staDescs) { |
| | | try { |
| | | // è·åå åæºåºåºç«ä¿¡æ¯ |
| | | DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId()); |
| | |
| | | } |
| | | if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == 0)) { |
| | | // æ¥è¯¢å·¥ä½æ¡£ |
| | | TaskWrk taskWrk = taskWrkMapper.selectCrnStaWorking(crnSlave.getId(), staDesc.getStnNo().toString()); |
| | | TaskWrk taskWrk = taskWrkMapper.selectCrnStaWorking(crnSlave.getId(), String.valueOf(crnStn.getStaNo()-1)); |
| | | if (taskWrk == null) { |
| | | continue; |
| | | } |
| | | // 夿å车æ¯å¦å®é
已宿ï¼ä¸çµèç¶æå¨moveä¸ï¼ä»¥å¤çµèè¿è¡æ´æ°å·¥ä½æ¡£ |
| | | // CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, taskWrk.getCrnNo()); |
| | | // CrnProtocol crnProtocol = crnThread.getCrnProtocol(); |
| | | // log.info(crnProtocol.statusType+""+crnProtocol.getForkPosType()); |
| | | // if (crnProtocol.modeType == CrnModeType.AUTO && crnProtocol.getTaskNo().equals(taskWrk.getWrkNo().shortValue()) |
| | | // && crnProtocol.statusType == CrnStatusType.HANDLING_COMPLETED |
| | | // && crnProtocol.forkPosType == CrnForkPosType.HOME) { |
| | | log.info("ä¸åè¾é线任å¡ï¼taskWrk:" + JSON.toJSONString(taskWrk)); |
| | | staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue()); |
| | | staProtocol.setStaNo(staDesc.getStnNo().shortValue()); |
| | | staProtocol.setStaNo(Short.valueOf(taskWrk.getTargetPoint())); |
| | | boolean offer = false; |
| | | try { |
| | | offer = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol)); |
| | |
| | | } else { |
| | | log.error("ä¸åè¾é线任å¡å¤±è´¥ï¼taskWrk:" + JSON.toJSONString(taskWrk)); |
| | | } |
| | | // } |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("åºåºå°åºåºç«å¼å¸¸:å¼å¸¸ä¿¡æ¯ï¼" + e); |
| | | } |
| | | } |
| | | // } |
| | | |
| | | } |
| | | } |
| | |
| | | throw new CoolException("å åæºå½ä»¤çæå¤±è´¥"); |
| | | } else { |
| | | try { |
| | | // 䏿¥æ§è¡ç¶æ |
| | | toWmsService.executionStatusReport(taskWrk.getTaskNo(), taskWrk.getWrkSts()); |
| | | taskWrkService.updateById(taskWrk); |
| | | } catch (Exception e) { |
| | | log.error("ä¿®æ¹å·¥ä½æ¡£ç¶æ 2.设å¤ä¸èµ° => 3.å车å
¥åºä¸ 失败ï¼ï¼ï¼å·¥ä½å·={}", taskWrk.getWrkNo()); |
| | |
| | | if (taskWrkMapper.updateById(taskWrk) == 0) { |
| | | log.error("ä¿®æ¹å·¥ä½æ¡£ç¶æ 11.çæåºåºID => 12.å车åºåºä¸ 失败ï¼ï¼ï¼å·¥ä½å·={}", taskWrk.getWrkNo()); |
| | | } |
| | | // 䏿¥æ§è¡ç¶æ |
| | | toWmsService.executionStatusReport(taskWrk.getTaskNo(), taskWrk.getWrkSts()); |
| | | } catch (Exception e) { |
| | | log.error("ä¿®æ¹å·¥ä½æ¡£ç¶æ 11.çæåºåºID => 12.å车åºåºä¸ 失败ï¼ï¼ï¼å·¥ä½å·={}", taskWrk.getWrkNo()); |
| | | log.error("ä¿®æ¹å·¥ä½æ¡£ç¶æ 11.çæåºåºID => 12.å车åºåºä¸ 失败ï¼ï¼ï¼å¼å¸¸ï¼" + e); |
| | |
| | | taskWrk.setWrkNo(workNo1); |
| | | taskWrk.setStatus(TaskStatusType.RECEIVE.id);//ä»»å¡ç¶æï¼æ¥æ¶ |
| | | taskWrk.setCreateTime(now); |
| | | try { |
| | | if (param.getIoType() > 1) { |
| | | if (Utils.locNoRowBoolean(locMast.getRow1())) { |
| | | param.setTaskPriority(11); |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | } |
| | | // try { |
| | | // if (param.getIoType() > 1) { |
| | | // if (Utils.locNoRowBoolean(locMast.getRow1())) { |
| | | // param.setTaskPriority(11); |
| | | // } |
| | | // } |
| | | // } catch (Exception e) { |
| | | // } |
| | | taskWrk.setIoType(param.getIoType());//ä»»å¡ç±»å |
| | | taskWrk.setIoPri(param.getTaskPriority());//ä¼å
级 |
| | | taskWrk.setBarcode(param.getBarcode());//æ¡ç |
| | |
| | | |
| | | } else if (param.getIoType() == 2) { |
| | | taskWrk.setWrkSts(11); |
| | | if (!Cools.isEmpty(param.getStartPoint())) { |
| | | // if (!Cools.isEmpty(param.getStartPoint())) { |
| | | taskWrk.setStartPoint(param.getStartPoint());//èµ·ç¹ |
| | | taskWrk.setTargetPoint(param.getTargetPoint()); |
| | | } |
| | | taskWrk.setTargetPoint(param.getTargetPoint()); |
| | | taskWrk.setTargetPoint(String.valueOf(Integer.parseInt(param.getTargetPoint())-1)); |
| | | // } |
| | | // taskWrk.setTargetPoint(param.getTargetPoint()); |
| | | } else if (param.getIoType() == 3) { |
| | | taskWrk.setWrkSts(11); |
| | | if (!Cools.isEmpty(param.getStartPoint())) { |
| | |
| | | @Value("${wms.taskStatusFeedbackPath}") |
| | | private String taskStatusFeedbackPath; |
| | | |
| | | @Value("${wms.executionStatusReport}") |
| | | private String executionStatusReport; |
| | | |
| | | @Value("${wms.code}") |
| | | private String code; |
| | | |
| | |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | if (!Cools.isEmpty(jsonObject.get(code)) && jsonObject.get(code).equals(successCode)) { |
| | | if (successCode.equals(jsonObject.get(code).toString())) { |
| | | WmsResult result = JSON.parseObject(jsonObject.get(data).toString(), WmsResult.class); |
| | | return createInTask(result, wmsParam.getBarcode(), wmsParam.getStationCode()); |
| | | } |
| | |
| | | return null; |
| | | } |
| | | |
| | | @Override |
| | | public void executionStatusReport(String taskNo, Integer wrkSts) { |
| | | String response = ""; |
| | | boolean bool = false; |
| | | JSONObject param = new JSONObject(); |
| | | try { |
| | | log.info("任塿§è¡ç¶æä¸æ¥ï¼ä»»å¡å·ï¼{}ï¼æ§è¡ç¶æï¼{}", taskNo,wrkSts); |
| | | param.put("taskNo",taskNo); |
| | | param.put("wrkSts",wrkSts); |
| | | response = new HttpHandler.Builder() |
| | | // .setHeaders(headParam) |
| | | .setUri(wmsUrl) |
| | | .setPath(executionStatusReport) |
| | | .setJson(param.toJSONString()) |
| | | .build() |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | bool = true; |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | log.error("任塿§è¡ç¶æä¸æ¥å¼å¸¸" + e); |
| | | } finally { |
| | | apiLogService.save("ä»»å¡ç¶æä¸æ¥" |
| | | , wmsUrl + executionStatusReport |
| | | , null |
| | | , "127.0.0.1" |
| | | , param.toJSONString() |
| | | , response |
| | | , bool |
| | | ); |
| | | } |
| | | } |
| | | |
| | | |
| | | private TaskWrk createInTask(WmsResult result, String barcode, Integer startPoint) { |
| | | //String locNo = Utils.Fusion(result.getRow(), result.getFloor(), result.getColumn()); |
| | | String locNo = result.getLocNo(); |
| | | Date now = new Date(); |
| | | TaskWrk taskWrk = new TaskWrk(); |
| | |
| | | taskWrk.setCrnNo(locMast.getCrnNo()); |
| | | taskWrk.setTargetPoint(locNo); |
| | | taskWrk.setStartPoint(startPoint + ""); |
| | | taskWrk.setCrnNo(result.getCrnNo()); |
| | | taskWrk.setCrnNo(locMast.getCrnNo()); |
| | | if (taskWrk.getIoType() == 1) { |
| | | taskWrk.setWrkSts(2); |
| | | if (!Cools.isEmpty(taskWrk.getTargetPoint())) { |
| | | taskWrk.setOriginTargetPoint(taskWrk.getTargetPoint()); |
| | | } |
| | | } |
| | | taskWrkService.insert(taskWrk); |
| | | return taskWrk; |
| | | } |
| | | |
| | |
| | | private TaskWrkReportService taskWrkReportService; |
| | | |
| | | |
| | | @Scheduled(cron = "0/3 * * * * ? ") |
| | | public void execute() throws IOException { |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | public synchronized void execute() throws IOException { |
| | | for (TaskWrk taskWrk : taskWrkService.selectToBeHistoryData()) { |
| | | switch (taskWrk.getStatus()) { |
| | | case 4: |
| | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.baomidou.mybatisplus.plugins.Page; |
| | | import com.core.common.Cools; |
| | | import com.core.common.DateUtils; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.TaskWrkReport; |
| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import java.io.IOException; |
| | |
| | | private String TaskExecCallback; |
| | | |
| | | |
| | | //@Scheduled(cron = "0/3 * * * * ? ") |
| | | public void execute() throws IOException { |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | public synchronized void execute() throws IOException { |
| | | Page<TaskWrkReport> taskWrkReportPage = taskWrkReportService.selectPage(new Page<>(0, 100), new EntityWrapper<TaskWrkReport>().orderBy("create_time", true)); |
| | | if (taskWrkReportPage.getRecords() != null) { |
| | | //æ°å¢ä¸ä¸ªè¿æ»¤æºå¶ |
| | | for (TaskWrkReport taskWrk : taskWrkReportPage.getRecords()) { |
| | | WmsFeedback wmsFeedback = getWmsFeedback(taskWrk); |
| | | String response = ""; |
| | | Boolean bool = false; |
| | | boolean bool = false; |
| | | try { |
| | | log.info("wcsæå¨å®æä»»å¡ä¸æ¥wms={}", taskWrk); |
| | | response = new HttpHandler.Builder() |
| | |
| | | .setJson(JSON.toJSONString(wmsFeedback)) |
| | | .build() |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | if (Integer.parseInt(String.valueOf(jsonObject.get("code"))) == 200) { |
| | | TaskWrkReportLog taskWrkLog = new TaskWrkReportLog(); |
| | | Synchro.Copy(taskWrk, taskWrkLog); |
| | | taskWrkLog.setId(null); |
| | |
| | | throw new CoolException("任塿¡£å é¤å¤±è´¥" + taskWrkLog); |
| | | } |
| | | bool = true; |
| | | } |
| | | } |
| | | |
| | | } catch (Exception e) { |
| | | log.error("wcsæå¨å®æä»»å¡ä¸æ¥wms失败{},è¿åå¼={}", taskWrk, response); |
| | | } finally { |
| | |
| | | mainService.crnStnToOutStn(); |
| | | // å
¥åºåº ===>> å åæºå
¥åºåºä½ä¸ä¸å |
| | | mainService.crnIoExecute(); |
| | | // å
¥åº ===>> æ§è¡å¯¹å·¥ä½æ¡£ç宿æä½ |
| | | // æ§è¡å¯¹å·¥ä½æ¡£ç宿æä½ |
| | | mainService.storeFinished(); |
| | | |
| | | // å åæºå¼å¸¸ä¿¡æ¯è®°å½ |
| | | mainService.recCrnErr(); |
| | | |
| | | // å
¶ä» ===>> // å
¥åºåºæ¨¡å¼åæ¢å½æ° |
| | | i++; |
| | | if (i > 1) { |
| | | mainService.ioConvert(); |
| | | i = 0; |
| | | } |
| | | // i++; |
| | | // if (i > 1) { |
| | | // mainService.ioConvert(); |
| | | // i = 0; |
| | | // } |
| | | |
| | | |
| | | } catch (Exception e) { |
| | |
| | | import HslCommunication.Profinet.Siemens.SiemensPLCS; |
| | | import HslCommunication.Profinet.Siemens.SiemensS7Net; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.SpringUtils; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.entity.param.TaskOverToWms; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.common.utils.HttpHandler; |
| | | import com.zy.core.CrnThread; |
| | | import com.zy.core.cache.MessageQueue; |
| | | import com.zy.core.cache.OutputQueue; |
| | |
| | | import com.zy.core.model.protocol.CrnProtocol; |
| | | import lombok.Data; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | |
| | | import java.text.MessageFormat; |
| | | import java.util.*; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * å åæºçº¿ç¨ |
| | |
| | | @Slf4j |
| | | public class SiemensCrnThread implements Runnable, CrnThread { |
| | | |
| | | public static final List<Short> rowOne = new ArrayList<Short>() {{ |
| | | add((short) 1); |
| | | add((short) 5); |
| | | add((short) 7); |
| | | add((short) 11); |
| | | add((short) 15); |
| | | add((short) 19); |
| | | }}; |
| | | public static final List<Short> rowTwo = new ArrayList<Short>() {{ |
| | | add((short) 2); |
| | | add((short) 6); |
| | | add((short) 8); |
| | | add((short) 12); |
| | | add((short) 16); |
| | | add((short) 20); |
| | | }}; |
| | | public static final List<Short> rowThree = new ArrayList<Short>() {{ |
| | | add((short) 3); |
| | | add((short) 9); |
| | | add((short) 13); |
| | | add((short) 17); |
| | | add((short) 21); |
| | | }}; |
| | | public static final List<Short> rowFour = new ArrayList<Short>() {{ |
| | | add((short) 4); |
| | | add((short) 10); |
| | | add((short) 14); |
| | | add((short) 18); |
| | | }}; |
| | | private SiemensS7Net siemensNet; |
| | | private CrnSlave slave; |
| | | private CrnProtocol crnProtocol; |
| | |
| | | @Override |
| | | public boolean connect() { |
| | | boolean result = false; |
| | | siemensNet = new SiemensS7Net(SiemensPLCS.S1200, slave.getIp()); |
| | | siemensNet = new SiemensS7Net(SiemensPLCS.S1500, slave.getIp()); |
| | | siemensNet.setRack(slave.getRack().byteValue()); |
| | | siemensNet.setSlot(slave.getSlot().byteValue()); |
| | | OperateResult connect = siemensNet.ConnectServer(); |
| | |
| | | //å åæºä»»å¡å®æå访é®wms请æ±ä»»å¡å®æ locationDone è´§ä½å¤ç宿 |
| | | TaskWrkService taskWrkService = SpringUtils.getBean(TaskWrkService.class); |
| | | TaskWrk taskWrk = taskWrkService.selectOne(new EntityWrapper<TaskWrk>().eq("wrk_no", crnProtocol.getTaskNo())); |
| | | String tasktype = null; |
| | | switch (taskWrk.getIoType()) { |
| | | case 1: |
| | | tasktype = "RK"; |
| | | break; |
| | | case 2: |
| | | tasktype = "CK"; |
| | | break; |
| | | case 3: |
| | | tasktype = "YK"; |
| | | break; |
| | | default: |
| | | tasktype = "æªç¥"; |
| | | } |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("x-api-key", "7a15b5db-29b6-552c-8cff-0cfec3756da2"); |
| | | TaskOverToWms taskOverToWms = new TaskOverToWms(); |
| | | taskOverToWms.setFeedbackFrom("WCS"); //æ¥æº |
| | | taskOverToWms.setWarehouseId("1688469798893297665"); //ä»åºæ è¯ |
| | | taskOverToWms.setTaskNo(taskWrk.getTaskNo()); //ä»»å¡å· |
| | | taskOverToWms.setTaskType(tasktype); // ä»»å¡ç±»å |
| | | taskOverToWms.setContainerCode(taskWrk.getBarcode()); // 容å¨ç¼ç |
| | | if (taskWrk.getIoType() == 1) { |
| | | taskOverToWms.setEquipmentCode(String.valueOf(taskWrk.getCrnNo())); //设å¤ç¼ç |
| | | taskOverToWms.setTargetLocationCode(taskWrk.getOriginTargetPoint()); //ç®æ åºä½ |
| | | } else if (taskWrk.getIoType() == 2) { |
| | | Map<Integer, String> map1 = new HashMap<>(); |
| | | map1.put(102, "J-1101"); |
| | | map1.put(106, "J-1103"); |
| | | map1.put(110, "J-1105"); |
| | | map1.put(114, "J-1107"); |
| | | map1.put(118, "J-1109"); |
| | | map1.put(122, "J-1111"); |
| | | map1.put(305, "H-1101"); |
| | | map1.put(405, "G-1101"); |
| | | taskOverToWms.setEquipmentCode(map1.get(taskWrk.getTargetPoint())); //设å¤ç¼ç |
| | | taskOverToWms.setSourceLocationCode(taskWrk.getOriginStartPoint()); //æºåºä½ |
| | | } else if (taskWrk.getIoType() == 3) { |
| | | taskOverToWms.setEquipmentCode(String.valueOf(taskWrk.getCrnNo())); //设å¤ç¼ç |
| | | taskOverToWms.setSourceLocationCode(taskWrk.getOriginStartPoint()); |
| | | taskOverToWms.setTargetLocationCode(taskWrk.getOriginTargetPoint()); //ç®æ åºä½ |
| | | } |
| | | taskOverToWms.setTaskStatus("location_done"); //ä»»å¡ç¶æ |
| | | String response = null; |
| | | try { |
| | | response = new HttpHandler.Builder() |
| | | .setHeaders(map) |
| | | .setUri("10.32.53.195:8080") |
| | | .setPath("wcsManager/wcsInterface/taskStatusFeedback") |
| | | .setJson(JSON.toJSONString(taskOverToWms)) |
| | | .build() |
| | | .doPost(); |
| | | } catch (Exception e) { |
| | | log.error("å åæºä»»å¡å®æï¼è¯·æ±wmsä»»å¡å®ææ¥å£å¤±è´¥"); |
| | | } |
| | | ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class); |
| | | apiLogService.save("Wmsä»»å¡å®ææ¥å£" |
| | | , "10.32.53.195:8080" + "/wcsManager/wcsInterface/taskStatusFeedback" |
| | | , null |
| | | , "127.0.0.1" |
| | | , JSON.toJSONString(taskOverToWms) |
| | | , response |
| | | , true |
| | | ); |
| | | JSONObject jsonObject = JSON.parseObject(response); |
| | | if (jsonObject.getInteger("code").equals(200)) { |
| | | // String tasktype = null; |
| | | // switch (taskWrk.getIoType()) { |
| | | // case 1: |
| | | // tasktype = "RK"; |
| | | // break; |
| | | // case 2: |
| | | // tasktype = "CK"; |
| | | // break; |
| | | // case 3: |
| | | // tasktype = "YK"; |
| | | // break; |
| | | // default: |
| | | // tasktype = "æªç¥"; |
| | | // } |
| | | // Map<String, Object> map = new HashMap<>(); |
| | | // map.put("x-api-key", "7a15b5db-29b6-552c-8cff-0cfec3756da2"); |
| | | // TaskOverToWms taskOverToWms = new TaskOverToWms(); |
| | | // taskOverToWms.setFeedbackFrom("WCS"); //æ¥æº |
| | | // taskOverToWms.setWarehouseId("1688469798893297665"); //ä»åºæ è¯ |
| | | // taskOverToWms.setTaskNo(taskWrk.getTaskNo()); //ä»»å¡å· |
| | | // taskOverToWms.setTaskType(tasktype); // ä»»å¡ç±»å |
| | | // taskOverToWms.setContainerCode(taskWrk.getBarcode()); // 容å¨ç¼ç |
| | | // if (taskWrk.getIoType() == 1) { |
| | | // taskOverToWms.setEquipmentCode(String.valueOf(taskWrk.getCrnNo())); //设å¤ç¼ç |
| | | // taskOverToWms.setTargetLocationCode(taskWrk.getOriginTargetPoint()); //ç®æ åºä½ |
| | | // } else if (taskWrk.getIoType() == 2) { |
| | | // Map<Integer, String> map1 = new HashMap<>(); |
| | | // map1.put(102, "J-1101"); |
| | | // map1.put(106, "J-1103"); |
| | | // map1.put(110, "J-1105"); |
| | | // map1.put(114, "J-1107"); |
| | | // map1.put(118, "J-1109"); |
| | | // map1.put(122, "J-1111"); |
| | | // map1.put(305, "H-1101"); |
| | | // map1.put(405, "G-1101"); |
| | | // taskOverToWms.setEquipmentCode(map1.get(taskWrk.getTargetPoint())); //设å¤ç¼ç |
| | | // taskOverToWms.setSourceLocationCode(taskWrk.getOriginStartPoint()); //æºåºä½ |
| | | // } else if (taskWrk.getIoType() == 3) { |
| | | // taskOverToWms.setEquipmentCode(String.valueOf(taskWrk.getCrnNo())); //设å¤ç¼ç |
| | | // taskOverToWms.setSourceLocationCode(taskWrk.getOriginStartPoint()); |
| | | // taskOverToWms.setTargetLocationCode(taskWrk.getOriginTargetPoint()); //ç®æ åºä½ |
| | | // } |
| | | // taskOverToWms.setTaskStatus("location_done"); //ä»»å¡ç¶æ |
| | | // String response = null; |
| | | // try { |
| | | // response = new HttpHandler.Builder() |
| | | // .setHeaders(map) |
| | | // .setUri("10.32.53.195:8080") |
| | | // .setPath("wcsManager/wcsInterface/taskStatusFeedback") |
| | | // .setJson(JSON.toJSONString(taskOverToWms)) |
| | | // .build() |
| | | // .doPost(); |
| | | // } catch (Exception e) { |
| | | // log.error("å åæºä»»å¡å®æï¼è¯·æ±wmsä»»å¡å®ææ¥å£å¤±è´¥"); |
| | | // } |
| | | // ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class); |
| | | // apiLogService.save("Wmsä»»å¡å®ææ¥å£" |
| | | // , "10.32.53.195:8080" + "/wcsManager/wcsInterface/taskStatusFeedback" |
| | | // , null |
| | | // , "127.0.0.1" |
| | | // , JSON.toJSONString(taskOverToWms) |
| | | // , response |
| | | // , true |
| | | // ); |
| | | // JSONObject jsonObject = JSON.parseObject(response); |
| | | // if (jsonObject.getInteger("code").equals(200)) { |
| | | if (taskWrk.getIoType() == 3) { |
| | | taskWrk.setWrkSts(4); |
| | | } |
| | |
| | | log.error("å åæºä»»å¡å®æï¼è¯·æ±wmsä»»å¡å®ææ¥å£å®æï¼ä½è¿å失败"); |
| | | } |
| | | |
| | | } |
| | | // } |
| | | |
| | | |
| | | } |
| | |
| | | public class SiemensDevpThread implements Runnable, DevpThread { |
| | | |
| | | public static final ArrayList<Integer> staNos1 = new ArrayList<Integer>() {{ |
| | | add(101); |
| | | add(102); |
| | | add(103); |
| | | add(104); |
| | | add(105); |
| | | add(106); |
| | | add(107); |
| | | add(108); |
| | | add(109); |
| | | add(110); |
| | | add(111); |
| | | add(112); |
| | | add(113); |
| | | add(114); |
| | | add(115); |
| | | add(116); |
| | | add(117); |
| | | add(118); |
| | | add(119); |
| | | add(120); |
| | | |
| | | add(201); |
| | | add(202); |
| | | add(203); |
| | | add(204); |
| | | add(205); |
| | | add(206); |
| | | add(207); |
| | | add(208); |
| | | add(209); |
| | | add(210); |
| | | add(211); |
| | | add(212); |
| | | add(213); |
| | | add(214); |
| | | add(215); |
| | | add(216); |
| | | add(217); |
| | | add(101);add(102);add(103);add(104);add(105);add(106);add(107);add(108);add(109);add(110); |
| | | add(111);add(112);add(113);add(114);add(115);add(116); |
| | | add(201);add(202);add(203);add(205);add(206);add(207);add(210);add(211);add(212); |
| | | }}; |
| | | |
| | | public static final ArrayList<Integer> staNos2 = new ArrayList<Integer>() {{ |
| | | add(301); |
| | | add(302); |
| | | add(303); |
| | | add(304); |
| | | add(305); |
| | | add(306); |
| | | add(307); |
| | | add(308); |
| | | add(301);add(302);add(303);add(304);add(305);add(306);add(307);add(308); |
| | | }}; |
| | | /** |
| | | * å
¥åºåºæ¨¡å¼ |
| | |
| | | * 读åç¶æ ====> æ´åplc |
| | | */ |
| | | private void read() throws InterruptedException { |
| | | // æ´æ°å
¥åºåºæ¨¡å¼ |
| | | // updateIoMode(); |
| | | |
| | | ArrayList<Integer> staNos = getStaNo(); |
| | | int staNoSize = staNos.size(); |
| | | |
| | | // 读货ä½ä¿¡æ¯åé¦ |
| | | OperateResultExOne<byte[]> result = siemensS7Net.Read("DB101.0", (short) (staNoSize * 8)); |
| | | if (result.IsSuccess) { |
| | | for (int i = 0; i < staNoSize; i++) { |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | if (slave.getId() == 1) { |
| | | //æ¡ç |
| | | //Thread.sleep(200); |
| | | OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.848.0", (short) 8); |
| | | // è¯»åæ¡ç |
| | | OperateResultExOne<byte[]> result2 = siemensS7Net.Read("DB101.1404", (short) (staNoSize*8)); |
| | | if (result2.IsSuccess) { |
| | | for (int i = 0; i < 1; i++) { |
| | | String barcode = siemensS7Net.getByteTransform().TransString(result2.Content, i * 8, 8, "UTF-8"); |
| | | BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, i + 1); |
| | | for (int i =0; i <staNoSize; i++) { |
| | | int barcodeId = 0; |
| | | switch (i){ |
| | | case 1:barcodeId=1;break; |
| | | case 4:barcodeId=2;break; |
| | | case 7:barcodeId=3;break; |
| | | case 10:barcodeId=4;break; |
| | | case 13:barcodeId=5;break; |
| | | default: |
| | | } |
| | | if (barcodeId != 0) { |
| | | String barcode = siemensS7Net.getByteTransform().TransString(result2.Content, i * 8, 6, "UTF-8"); |
| | | BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, barcodeId); |
| | | if (!Cools.isEmpty(barcodeThread) && !barcodeThread.getBarcode().equals(barcode)) { |
| | | barcodeThread.setBarcode(barcode); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //å¤å½¢æ£æµ |
| | | OperateResultExOne<byte[]> resultErr1 = siemensS7Net.Read("DB101.810.0", (short) (barcodeSize * 1)); |
| | | StaProtocol staProtocol1 = station.get(116); |
| | | boolean[] status1 = siemensS7Net.getByteTransform().TransBool(resultErr1.Content, 0, 1); |
| | | staProtocol1.setFrontErr(status1[0]); |
| | | staProtocol1.setBackErr(status1[1]); |
| | | staProtocol1.setHighErr(status1[2]); |
| | | staProtocol1.setLeftErr(status1[3]); |
| | | staProtocol1.setRightErr(status1[4]); |
| | | staProtocol1.setWeightErr(status1[5]); |
| | | staProtocol1.setBarcodeErr(status1[6]); |
| | | // 读åå¤å½¢æ£æµ |
| | | OperateResultExOne<byte[]> resultErr1 = siemensS7Net.Read("DB101.936", (short) (staNoSize * 8)); |
| | | if (resultErr1.IsSuccess) { |
| | | for (int i = 0; i < staNoSize; i++) { |
| | | Integer siteId = staNos.get(i); // ç«ç¹ç¼å· |
| | | StaProtocol staProtocol = station.get(siteId); |
| | | boolean[] status1 = siemensS7Net.getByteTransform().TransBool(resultErr1.Content, i * 2, 1); |
| | | staProtocol.setFrontErr(status1[0]); |
| | | staProtocol.setBackErr(status1[1]); |
| | | staProtocol.setHighErr(status1[2]); |
| | | staProtocol.setLeftErr(status1[3]); |
| | | staProtocol.setRightErr(status1[4]); |
| | | staProtocol.setWeightErr(status1[5]); |
| | | staProtocol.setBarcodeErr(status1[6]); |
| | | } |
| | | } |
| | | |
| | | OperateResultExOne<byte[]> resultErr = siemensS7Net.Read("DB101.922.0", (short) (staNoSize * 4)); |
| | | if (resultErr.IsSuccess) { |
| | |
| | | //ä»»å¡ä¸åæåæ è¯ |
| | | boolean writeFlag = false; |
| | | while (writeCount < 5) { |
| | | OperateResult writeResult1 = siemensS7Net.Write("DB100." + index * 6, staProtocol.getWorkNo().intValue()); // å·¥ä½å· |
| | | OperateResult writeResult2 = siemensS7Net.Write("DB100." + (index * 6 + 4), staProtocol.getStaNo()); // ç®æ ç« |
| | | OperateResult writeResult1 = siemensS7Net.Write("DB100." + index * 4, staProtocol.getWorkNo()); // å·¥ä½å· |
| | | OperateResult writeResult2 = siemensS7Net.Write("DB100." + (index * 4 + 2), staProtocol.getStaNo()); // ç®æ ç« |
| | | if (writeResult1.IsSuccess && writeResult2.IsSuccess) { |
| | | Thread.sleep(200); |
| | | OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100." + index * 6, (short) 6); |
| | | OperateResultExOne<byte[]> readResult = siemensS7Net.Read("DB100." + index * 4, (short) 2); |
| | | if (readResult.IsSuccess) { |
| | | Integer workNo = siemensS7Net.getByteTransform().TransInt32(readResult.Content, 0); |
| | | short staNo = siemensS7Net.getByteTransform().TransInt16(readResult.Content, 4); |
| | | if (workNo.equals(staProtocol.getWorkNo().intValue()) && staProtocol.getStaNo().equals(staNo)) { |
| | | //ä»»å¡å½ä»¤åå
¥æå |
| | | // short workNo = siemensS7Net.getByteTransform().TransInt16(readResult.Content, 0); |
| | | // short staNo = siemensS7Net.getByteTransform().TransInt16(readResult.Content, 2); |
| | | // if (staProtocol.getWorkNo().equals(workNo) && staProtocol.getStaNo().equals(staNo)) { |
| | | // //ä»»å¡å½ä»¤åå
¥æå |
| | | writeFlag = true; |
| | | log.info("åå
¥è¾é线å½ä»¤åè¿åæåï¼å¹¶ä¸å读æåãè¾é线plcç¼å·={}ï¼{}ï¼åå
¥æ¬¡æ°={}", slave.getId(), JSON.toJSON(staProtocol), writeCount); |
| | | break; |
| | | } else {//è¿åç»ææ¯æåäºï¼ä½æ¯çå®å¼ä¸ç¸å |
| | | writeCount++; |
| | | OutputQueue.DEVP.offer(MessageFormat.format("ã{0}ãåå
¥è¾é线å½ä»¤åè¿åæåï¼ä½æ¯è¯»åä»»å¡å¼ä¸ä¸è´ãè¾é线plcç¼å·={1}ï¼ç«ç¹æ°æ®={2},åå
¥æ¬¡æ°={3}", |
| | | slave.getId(), JSON.toJSON(staProtocol), writeCount)); |
| | | log.error("åå
¥è¾é线å½ä»¤åè¿åæåï¼ä½æ¯è¯»åä»»å¡å¼ä¸ä¸è´ãè¾é线plcç¼å·={}ï¼{}ï¼åå
¥æ¬¡æ°={}", slave.getId(), JSON.toJSON(staProtocol), writeCount); |
| | | } |
| | | // } else {//è¿åç»ææ¯æåäºï¼ä½æ¯çå®å¼ä¸ç¸å |
| | | // writeCount++; |
| | | // OutputQueue.DEVP.offer(MessageFormat.format("ã{0}ãåå
¥è¾é线å½ä»¤åè¿åæåï¼ä½æ¯è¯»åä»»å¡å¼ä¸ä¸è´ãè¾é线plcç¼å·={1}ï¼ç«ç¹æ°æ®={2},åå
¥æ¬¡æ°={3}", |
| | | // slave.getId(), JSON.toJSON(staProtocol), writeCount)); |
| | | // log.error("åå
¥è¾é线å½ä»¤åè¿åæåï¼ä½æ¯è¯»åä»»å¡å¼ä¸ä¸è´ãè¾é线plcç¼å·={}ï¼{}ï¼åå
¥æ¬¡æ°={}", slave.getId(), JSON.toJSON(staProtocol), writeCount); |
| | | // } |
| | | } else { |
| | | writeCount++; |
| | | OutputQueue.DEVP.offer(MessageFormat.format("ã{0}ãåå
¥è¾é线å½ä»¤å读å失败ãè¾é线plcç¼å·={1}ï¼ç«ç¹æ°æ®={2},åå
¥æ¬¡æ°={3}", |
| | |
| | | groupCount: 4 #ä¸ä¸ªå åæºè´è´£çè´§æ¶ææ° |
| | | crn[0]: #å åæº1 |
| | | id: 1 |
| | | ip: 10.10.10.110 |
| | | ip: 10.49.210.11 |
| | | slot: 0 |
| | | demo: false |
| | | rack: 0 |
| | | offset: 2 #åç§»éï¼å½å åæºç«ç¹åå·=1æ¶ï¼åç§»é=2 |
| | | port: 102 |
| | | crnOutStn[0]: #å åæºåºåºç«ç¹ |
| | | staNo: 103 |
| | | row: 3 |
| | | bay: 1 |
| | | lev: 2 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnOutStn[1]: #å åæºåºåºç«ç¹ |
| | | staNo: 106 |
| | | row: 3 |
| | | bay: 1 |
| | | lev: 2 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[0]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 102 |
| | | #å åæºåºåºç«ç¹1 |
| | | crnOutStn[0]: |
| | | staNo: 114 |
| | | row: 2 |
| | | bay: 1 |
| | | lev: 2 |
| | | backSta: 101 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[1]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 105 |
| | | #å åæºåºåºç«ç¹2 |
| | | crnOutStn[1]: |
| | | staNo: 210 |
| | | row: 2 |
| | | bay: 2 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºåºåºç«ç¹3 |
| | | crnOutStn[2]: |
| | | staNo: 205 |
| | | row: 2 |
| | | bay: 5 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºåºåºç«ç¹4 |
| | | crnOutStn[3]: |
| | | staNo: 201 |
| | | row: 2 |
| | | bay: 7 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºå
¥åºç«ç¹1 |
| | | crnInStn[0]: |
| | | staNo: 114 |
| | | row: 2 |
| | | bay: 1 |
| | | lev: 2 |
| | | backSta: 104 |
| | | lev: 1 |
| | | backSta: 113 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºå
¥åºç«ç¹2 |
| | | crnInStn[1]: |
| | | staNo: 210 |
| | | row: 2 |
| | | bay: 2 |
| | | lev: 1 |
| | | backSta: 212 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºå
¥åºç«ç¹3 |
| | | crnInStn[2]: |
| | | staNo: 205 |
| | | row: 5 |
| | | bay: 1 |
| | | lev: 1 |
| | | backSta: 207 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºå
¥åºç«ç¹4 |
| | | crnInStn[3]: |
| | | staNo: 201 |
| | | row: 2 |
| | | bay: 7 |
| | | lev: 1 |
| | | backSta: 203 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crn[1]: #å åæº2 |
| | | id: 2 |
| | | ip: 10.10.10.120 |
| | | ip: 10.49.210.21 |
| | | slot: 0 |
| | | demo: false |
| | | rack: 0 |
| | | offset: 2 #åç§»éï¼å½å åæºç«ç¹åå·=1æ¶ï¼åç§»é=2 |
| | | port: 102 |
| | | crnOutStn[0]: #å åæºåºåºç«ç¹ |
| | | staNo: 109 |
| | | row: 7 |
| | | bay: 1 |
| | | lev: 2 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnOutStn[1]: #å åæºåºåºç«ç¹ |
| | | staNo: 112 |
| | | row: 7 |
| | | bay: 1 |
| | | lev: 2 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[0]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 108 |
| | | row: 6 |
| | | bay: 1 |
| | | lev: 2 |
| | | backSta: 107 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[1]: #å åæºå
¥åºç«ç¹1 |
| | | #å åæºåºåºç«ç¹1 |
| | | crnOutStn[0]: |
| | | staNo: 111 |
| | | row: 6 |
| | | bay: 1 |
| | | lev: 2 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºåºåºç«2 |
| | | crnOutStn[1]: |
| | | staNo: 108 |
| | | row: 7 |
| | | bay: 1 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | #å åæºå
¥åºç«ç¹1 |
| | | crnInStn[0]: |
| | | staNo: 111 |
| | | row: 6 |
| | | bay: 1 |
| | | lev: 1 |
| | | backSta: 110 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crn[2]: #å åæº2 |
| | | #å åæºå
¥åºç«ç¹2 |
| | | crnInStn[1]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 108 |
| | | row: 7 |
| | | bay: 1 |
| | | lev: 1 |
| | | backSta: 107 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crn[2]: #å åæº3 |
| | | id: 3 |
| | | ip: 10.10.10.120 |
| | | ip: 10.49.210.31 |
| | | slot: 0 |
| | | demo: false |
| | | rack: 0 |
| | | offset: 2 #åç§»éï¼å½å åæºç«ç¹åå·=1æ¶ï¼åç§»é=2 |
| | | port: 102 |
| | | crnOutStn[0]: #å åæºåºåºç«ç¹ |
| | | staNo: 115 |
| | | row: 7 |
| | | staNo: 105 |
| | | row: 10 |
| | | bay: 1 |
| | | lev: 2 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnOutStn[1]: #å åæºåºåºç«ç¹ |
| | | staNo: 201 |
| | | row: 7 |
| | | staNo: 102 |
| | | row: 11 |
| | | bay: 1 |
| | | lev: 2 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnOutStn[2]: #å åæºåºåºç«ç¹ |
| | | staNo: 205 |
| | | row: 7 |
| | | bay: 1 |
| | | lev: 2 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnOutStn[3]: #å åæºåºåºç«ç¹ |
| | | staNo: 210 |
| | | row: 7 |
| | | bay: 1 |
| | | lev: 2 |
| | | lev: 1 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[0]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 114 |
| | | row: 6 |
| | | staNo: 105 |
| | | row: 10 |
| | | bay: 1 |
| | | lev: 2 |
| | | backSta: 113 |
| | | lev: 1 |
| | | backSta: 104 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[1]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 202 |
| | | row: 6 |
| | | crnInStn[1]: #å åæºå
¥åºç«ç¹2 |
| | | staNo: 102 |
| | | row: 11 |
| | | bay: 1 |
| | | lev: 2 |
| | | backSta: 203 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[2]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 206 |
| | | row: 6 |
| | | bay: 1 |
| | | lev: 2 |
| | | backSta: 207 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | crnInStn[3]: #å åæºå
¥åºç«ç¹1 |
| | | staNo: 211 |
| | | row: 6 |
| | | bay: 1 |
| | | lev: 2 |
| | | backSta: 212 |
| | | lev: 1 |
| | | backSta: 101 |
| | | devpPlcId: ${wcs-slave.devp[0].id} |
| | | devp[0]: #è¾é线 |
| | | id: 1 |
| | | ip: 10.10.10.140 |
| | | ip: 10.49.210.41 |
| | | rack: 0 |
| | | port: 102 |
| | | slot: 0 |
| | | emptyInSta[0]: #空æ¿å
¥åºå£0 |
| | | staNo: 116 |
| | | staNo: 210 |
| | | inSta[0]: #å
¥åºå£1 |
| | | staNo: 101 |
| | | backSta: 116 |
| | | staNo: 102 |
| | | backSta: 101 |
| | | barcode: ${wcs-slave.barcode[0].id} |
| | | inSta[1]: #å
¥åºå£2 |
| | | staNo: 117 |
| | | staNo: 105 |
| | | backSta: 104 |
| | | barcode: ${wcs-slave.barcode[1].id} |
| | | inSta[2]: #å
¥åºå£3 |
| | | staNo: 118 |
| | | staNo: 108 |
| | | backSta: 107 |
| | | barcode: ${wcs-slave.barcode[2].id} |
| | | inSta[3]: #å
¥åºå£4 |
| | | staNo: 110 |
| | | backSta: 119 |
| | | staNo: 111 |
| | | backSta: 110 |
| | | barcode: ${wcs-slave.barcode[3].id} |
| | | inSta[4]: #å
¥åºå£5 |
| | | staNo: 113 |
| | | backSta: 120 |
| | | staNo: 114 |
| | | backSta: 113 |
| | | barcode: ${wcs-slave.barcode[4].id} |
| | | inSta[5]: #å
¥åºå£6 |
| | | staNo: 202 |
| | | backSta: 203 |
| | | staNo: 211 |
| | | backSta: 212 |
| | | barcode: ${wcs-slave.barcode[5].id} |
| | | inSta[6]: #å
¥åºå£7 |
| | | staNo: 206 |
| | | backSta: 207 |
| | | barcode: ${wcs-slave.barcode[6].id} |
| | | inSta[7]: #å
¥åºå£8 |
| | | staNo: 211 |
| | | backSta: 212 |
| | | staNo: 202 |
| | | backSta: 203 |
| | | barcode: ${wcs-slave.barcode[7].id} |
| | | outSta[0]: #åºåºå£1 |
| | | staNo: 116 |
| | | staNo: 101 |
| | | outSta[1]: #åºåºå£2 |
| | | staNo: 117 |
| | | staNo: 104 |
| | | outSta[2]: #åºåºå£3 |
| | | staNo: 118 |
| | | staNo: 107 |
| | | outSta[3]: #åºåºå£4 |
| | | staNo: 119 |
| | | staNo: 110 |
| | | outSta[4]: #åºåºå£5 |
| | | staNo: 120 |
| | | staNo: 113 |
| | | outSta[5]: #åºåºå£6 |
| | | staNo: 203 |
| | | staNo: 212 |
| | | outSta[6]: #åºåºå£7 |
| | | staNo: 207 |
| | | outSta[7]: #åºåºå£8 |
| | | staNo: 212 |
| | | staNo: 203 |
| | | |
| | | devp[1]: #è¾é线 |
| | | id: 2 |
| | | ip: 10.10.10.140 |
| | | rack: 0 |
| | | port: 102 |
| | | slot: 0 |
| | | inSta[0]: |
| | | staNo: 301 |
| | | inSta[1]: |
| | | staNo: 303 |
| | | inSta[2]: |
| | | staNo: 305 |
| | | inSta[3]: |
| | | staNo: 307 |
| | | # devp[1]: #è¾é线 |
| | | # id: 2 |
| | | # ip: 10.10.10.140 |
| | | # rack: 0 |
| | | # port: 102 |
| | | # slot: 0 |
| | | # inSta[0]: |
| | | # staNo: 301 |
| | | # inSta[1]: |
| | | # staNo: 303 |
| | | # inSta[2]: |
| | | # staNo: 305 |
| | | # inSta[3]: |
| | | # staNo: 307 |
| | | |
| | | barcode[0]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.44 |
| | | id: 1 |
| | | barcode[1]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.45 |
| | | id: 2 |
| | | barcode[2]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.46 |
| | | id: 3 |
| | | barcode[3]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.47 |
| | | id: 4 |
| | | barcode[4]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.48 |
| | | id: 5 |
| | | barcode[5]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.67 |
| | | id: 6 |
| | | barcode[6]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.66 |
| | | id: 7 |
| | | barcode[7]: #æ¡ç æ«æä»ª |
| | | port: 51236 |
| | | ip: 172.17.91.39 |
| | | ip: 10.49.210.65 |
| | | id: 8 |
| | | |
| | | |
| | |
| | | # æ¯å¦å¼å¯ä¸æ¥ |
| | | start: true |
| | | # WMSç³»ç»ip |
| | | url: 10.10.10.222:2410 |
| | | url: http://10.227.21.31:8060/fromwcs |
| | | # å
¥åºä»»å¡ç³è¯·æ¥å£ |
| | | inboundTaskApplyPath: api/StereoscopicCallBack/AcceptTaskStatus |
| | | inboundTaskApplyPath: /inboundTaskApply |
| | | # ä»»å¡å¼å§æ¶ï¼WCSåè°WMS |
| | | taskStatusFeedbackPath: api/StereoscopicCallBack/TaskExecCallback |
| | | # ä»»å¡å®æç»ææ¶ï¼WCSåè°WMS |
| | | taskExecCallback: api/StereoscopicCallBack/TaskExecFinishedCallback |
| | | taskExecCallback: /taskStateReport |
| | | # ç§»åºç³è¯·æ¥å£ |
| | | movePath: api/InterFace/get_InterFace_TestStorage |
| | | # 任塿§è¡ç¶æä¸æ¥ |
| | | executionStatusReport: /executionStatusReport |
| | | # æµè¯ç¯å¢ |
| | | # url: http://127.0.0.1:8080/ghlnwms |
| | | # taskStatusFeedbackPath: api/StereoscopicCallBack/TaskExecCallback |
| | | # executionStatusReport: /open/asrs/executionStatusReport |
| | | # taskExecCallback: /open/asrs/taskExecCallback |
| | | # inboundTaskApplyPath: /open/asrs/testInLoc |
| | | # movePath: api/InterFace/get_InterFace_TestStorage |
| | | |
| | | |
| | | code: code |
| | | successCode: 200 |
| | | msg: msg |