| | |
| | | // 所属线程 |
| | | private Thread thread; |
| | | private Thread armThread; |
| | | private Thread agvThread; |
| | | // 频率 |
| | | private int i = 0; |
| | | private int k = 0; |
| | |
| | | |
| | | armThread = new Thread(this::roboticArmDispatch); |
| | | armThread.start(); |
| | | |
| | | agvThread = new Thread(this::agvDispatch); |
| | | agvThread.start(); |
| | | } |
| | | private void crnAndDevRun() { |
| | | while (!Thread.currentThread().isInterrupted()) { |
| | |
| | | // 入库 ===>> 空栈板初始化入库,叉车入库站放货 |
| | | mainService.storeEmptyPlt(8); |
| | | // 出库 ===>> 工作档信息写入led显示器 |
| | | mainService.ledExecute(9); |
| | | // mainService.ledExecute(9); |
| | | // 其他 ===>> LED显示器复位,显示默认信息 |
| | | mainService.ledReset(); |
| | | //堆垛机衔接任务生成 |
| | |
| | | try{ |
| | | //RGV小车出入库取货下发 |
| | | mainService.rgvIoExecute(11); |
| | | if(k > 2){ |
| | | mainService.rgvOutExecute(); |
| | | k = 0; |
| | | } |
| | | }catch (Exception e){ |
| | | log.error("RGV ===>> 小车任务作业下发异常"+e); |
| | | } |
| | | //完成小车任务 |
| | | mainService.rgvCompleteWrkMastSta(); |
| | | // //完成小车任务 |
| | | mainService.rgvTaskComplete(); |
| | | |
| | | //工位移动 |
| | | // mainService.rgvStaMove(); |
| | | /////////////////////////////////////RGV调度///////////////////////////////////// |
| | | |
| | | } catch (Exception e) { |
| | |
| | | try { |
| | | |
| | | // 间隔 |
| | | Thread.sleep(500); |
| | | Thread.sleep(400); |
| | | |
| | | // 系统运行状态判断 |
| | | if (!SystemProperties.WCS_RUNNING_STATUS.get()) { |
| | | continue; |
| | | } |
| | | |
| | | // //arm任务完成 |
| | | // mainService.armMissionAccomplished(); |
| | | // mainService.armMissionAccomplishedScanToCheckIn(); |
| | | // |
| | | // //arm任务下发 |
| | | // mainService.armTaskAssignment(); |
| | | //arm任务完成 |
| | | mainService.armMissionAccomplished();//4==>5 |
| | | mainService.armMissionAccomplishedScanToCheckIn();//3===》4 |
| | | |
| | | //arm任务下发 |
| | | mainService.armTaskAssignment();//0===》1 |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void agvDispatch() { |
| | | while (!Thread.currentThread().isInterrupted()) { |
| | | try { |
| | | |
| | | // 间隔 |
| | | Thread.sleep(400); |
| | | |
| | | // 系统运行状态判断 |
| | | if (!SystemProperties.WCS_RUNNING_STATUS.get()) { |
| | | continue; |
| | | } |
| | | //agv任务下发 |
| | | mainService.agvTaskAssignment();//0===》1 |
| | | |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |