Browse Source

台湾脚本

master
修宁 5 months ago
parent
commit
49bd2172d2
  1. 4
      tw_test/envs/3.json
  2. 62
      tw_test/scripts/ZH_CL2.ts

4
tw_test/envs/3.json

@ -4,10 +4,10 @@
"isVirtual": true, "isVirtual": true,
"envConfig": { "envConfig": {
"mqtt": { "mqtt": {
"brokerUrl": "tcp://127.0.0.1:1883", "brokerUrl": "tcp://10.10.101.8:1883",
"username": "user", "username": "user",
"password": "user", "password": "user",
"websocket": "mqtt://127.0.0.1:7883" "websocket": "mqtt://10.10.101.8:7883"
}, },
"mysql": { "mysql": {
"jdbc-url": "jdbc:p6spy:mysql://180.100.199.56:8306/rcs2_tw_zhanghui", "jdbc-url": "jdbc:p6spy:mysql://180.100.199.56:8306/rcs2_tw_zhanghui",

62
tw_test/scripts/ZH_CL2.ts

@ -4,63 +4,53 @@ const demoLocList = ['rack1/0/1/0', 'rack1/1/1/0', 'rack1/2/1/0', 'rack1/3/1/0']
const demoLocList2 = [ ...demoLocList ].reverse() const demoLocList2 = [ ...demoLocList ].reverse()
while (true) { while (true) {
const [carInv] = (await LCC.queryInv({ rack: agvId, bay: 0, level: 0, cell: 0 })).data
const [dd] = (await LCC.queryInv({ rack: gstore })).data const [dd] = (await LCC.queryInv({ rack: gstore })).data
if (dd) { if (dd) {
// 地堆上有托盘, 找一个空货位放过去 // 地堆上有托盘, 找一个空货位放过去
LCC.log('地堆上有托盘') LCC.log('地堆上有托盘')
for (const loc of demoLocList) { const freeLoc = await findFreeLoc()
const [rack, bay, level] = loc.split('/') if (carInv) {
if (!rack) { // 托盘在车上
continue; LCC.log('托盘在车上')
} LCC.log(`RCS.agvUnload('${agvId}', '${freeLoc}')`)
const [emptyLoc] = (await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })).data await RCS.agvUnload(agvId, freeLoc)
if (!emptyLoc) { await RCS.waitTaskFinish(agvId)
// 这是一个好位置 await LCC.sleep(1000)
LCC.log(`RCS.agvCarry('${agvId}', '${gstore}', '${loc}')`) continue;
await RCS.agvCarry(agvId, gstore, loc)
await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000)
break;
}
} }
LCC.log(`RCS.agvCarry('${agvId}', '${gstore}', '${freeLoc}')`)
await RCS.agvCarry(agvId, gstore, freeLoc)
await RCS.waitTaskFinish(agvId)
} else { } else {
// 地上没有托盘位, 找个位置拖过去 // 地上没有托盘位, 找个位置拖过去
const [carInv] = (await LCC.queryInv({ rack: agvId, bay: 0, level: 0, cell: 0 })).data
if (carInv) { if (carInv) {
// 托盘在车上
LCC.log('托盘在车上') LCC.log('托盘在车上')
LCC.log(`RCS.agvUnload('${agvId}', '${gstore}')`) LCC.log(`RCS.agvUnload('${agvId}', '${gstore}')`)
await RCS.agvUnload(agvId, gstore) await RCS.agvUnload(agvId, gstore)
await RCS.waitTaskFinish(agvId) await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000) await LCC.sleep(1000)
continue; continue;
} else {
LCC.log('托盘在货架')
}
let has = false
for (const loc of demoLocList2) {
const [rack, bay, level, cell] = loc.split('/')
const [palletLoc] = (await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })).data
if (palletLoc) {
has = true
LCC.log(`RCS.agvCarry('${agvId}', '${loc}', '${gstore}')`)
await RCS.agvCarry(agvId, loc, gstore)
await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000)
break
}
} }
if (!has) { const invLoc = await findRackInvLoc()
LCC.log('货架没有空托盘,无法执行') if(!invLoc){
LCC.log('货架没有托盘,无法执行')
}else{
LCC.log(`RCS.agvCarry('${agvId}', '${invLoc}', '${gstore}')`)
await RCS.agvCarry(agvId, invLoc, gstore)
await RCS.waitTaskFinish(agvId)
} }
} }
await LCC.sleep(1000)
} }
async function freeLoc(){ async function findFreeLoc(){
for (const loc of demoLocList) { for (const loc of demoLocList) {
const [rack, bay, level] = loc.split('/') const [rack, bay, level] = loc.split('/')
if (!rack) { if (!rack) {
@ -74,7 +64,7 @@ async function freeLoc(){
} }
} }
async function invLoc(){ async function findRackInvLoc(){
for (const loc of demoLocList2) { for (const loc of demoLocList2) {
const [rack, bay, level, cell] = loc.split('/') const [rack, bay, level, cell] = loc.split('/')
const [palletLoc] = (await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })).data const [palletLoc] = (await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })).data

Loading…
Cancel
Save