Browse Source

CLX demo

master
修宁 5 months ago
parent
commit
fd5e26f363
  1. 2
      tw_test/floor/f1.json
  2. 45
      tw_test/scripts/CLX_DEMO.ts

2
tw_test/floor/f1.json

@ -845,7 +845,7 @@
],
[
0,
-90,
0,
0
],
[

45
tw_test/scripts/CLX_DEMO.ts

@ -0,0 +1,45 @@
const gstore = '108_108'
const agvId = '4'
const demoLocList = ['rack3/0/2/0', 'rack3/1/2/0']
const demoLocList2 = ['rack3/0/2/0', 'rack3/1/2/0'].reverse()
while (true) {
await LCC.sleep(3000)
const [dd] = (await LCC.queryInv({ rack: gstore })).data
if (dd) {
// 地堆上有托盘, 找一个空货位放过去
for (const loc of demoLocList) {
const [rack, bay, level] = loc.split('/')
if (!rack) {
continue;
}
const [emptyLoc] = (await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })).data
if (!emptyLoc) {
// 这是一个好位置
LCC.log('agvCarry', gstore, loc)
await RCS.agvCarry(agvId, gstore, loc)
await RCS.waitTaskFinish(agvId)
continue;
}
}
} else {
// 地上没有托盘位, 找个位置拖过去
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('agvCarry', rack + '/' + bay + '/' + level + '/' + cell, gstore)
await RCS.agvCarry(agvId, rack + '/' + bay + '/' + level + '/' + cell, gstore)
await RCS.waitTaskFinish(agvId)
}
}
if (!has) {
LCC.log('货架没有空托盘,无法执行')
}
}
}
Loading…
Cancel
Save