Browse Source

库存在车上的支持

master
修宁 5 months ago
parent
commit
39bab07c34
  1. 23
      tw_test/scripts/CL2_DEMO.ts
  2. 19
      tw_test/scripts/CLX_DEMO.ts
  3. 5
      tw_test/scripts/Yvan.ts
  4. 19
      tw_test/scripts/run1.ts

23
tw_test/scripts/CL2_DEMO.ts

@ -4,11 +4,11 @@ const demoLocList = ['rack1/1/1/0', 'rack2/0/1/0', 'rack2/1/1/0']
const demoLocList2 = [ 'rack1/1/1/0', 'rack2/0/1/0', 'rack2/1/1/0' ].reverse() const demoLocList2 = [ 'rack1/1/1/0', 'rack2/0/1/0', 'rack2/1/1/0' ].reverse()
while (true) { while (true) {
const [dd] = (await LCC.queryInv({ rack: gstore })).data const [dd] = (await LCC.queryInv({ rack: gstore })).data
LCC.log('queryInv, dd=', { rack: gstore }, dd)
if (dd) { if (dd) {
// 地堆上有托盘, 找一个空货位放过去 // 地堆上有托盘, 找一个空货位放过去
LCC.log('地堆上有托盘, 找一个空货位放过去') LCC.log('地堆上有托盘')
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) {
@ -17,7 +17,7 @@ while (true) {
const [emptyLoc] = (await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })).data const [emptyLoc] = (await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })).data
if (!emptyLoc) { if (!emptyLoc) {
// 这是一个好位置 // 这是一个好位置
LCC.log('agvCarry', gstore, loc) LCC.log(`RCS.agvCarry('${agvId}', '${gstore}', '${loc}')`)
await RCS.agvCarry(agvId, gstore, loc) await RCS.agvCarry(agvId, gstore, loc)
await RCS.waitTaskFinish(agvId) await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000) await LCC.sleep(1000)
@ -28,15 +28,26 @@ while (true) {
} else { } else {
// 地上没有托盘位, 找个位置拖过去 // 地上没有托盘位, 找个位置拖过去
LCC.log('地上没有托盘位, 找个位置拖过去') const [carInv] = (await LCC.queryInv({ rack: agvId, bay: 0, level: 0, cell: 0 })).data
if (carInv) {
LCC.log('托盘在车上')
LCC.log(`RCS.agvUnload('${agvId}', '${gstore}')`)
await RCS.agvUnload(agvId, gstore)
await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000)
continue;
} else {
LCC.log('托盘在货架')
}
let has = false let has = false
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
if (palletLoc) { if (palletLoc) {
has = true has = true
LCC.log('agvCarry', rack + '/' + bay + '/' + level + '/' + cell, gstore) LCC.log(`RCS.agvCarry('${agvId}', '${loc}', '${gstore}')`)
await RCS.agvCarry(agvId, rack + '/' + bay + '/' + level + '/' + cell, gstore) await RCS.agvCarry(agvId, loc, gstore)
await RCS.waitTaskFinish(agvId) await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000) await LCC.sleep(1000)
break break

19
tw_test/scripts/CLX_DEMO.ts

@ -19,6 +19,7 @@ while (true) {
LCC.log('agvCarry', gstore, loc) LCC.log('agvCarry', gstore, loc)
await RCS.agvCarry(agvId, gstore, loc) await RCS.agvCarry(agvId, gstore, loc)
await RCS.waitTaskFinish(agvId) await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000)
break; break;
} }
} }
@ -26,15 +27,29 @@ while (true) {
} else { } else {
// 地上没有托盘位, 找个位置拖过去 // 地上没有托盘位, 找个位置拖过去
const [carInv] = (await LCC.queryInv({ rack: agvId, bay: 0, level: 0, cell: 0 })).data
if (carInv) {
LCC.log('托盘在车上')
LCC.log(`RCS.agvUnload('${agvId}', '${gstore}')`)
await RCS.agvUnload(agvId, gstore)
await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000)
continue;
} else {
LCC.log('托盘在货架')
}
let has = false let has = false
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
if (palletLoc) { if (palletLoc) {
has = true has = true
LCC.log('agvCarry', rack + '/' + bay + '/' + level + '/' + cell, gstore)
await RCS.agvCarry(agvId, rack + '/' + bay + '/' + level + '/' + cell, gstore) LCC.log(`RCS.agvCarry('${agvId}', '${loc}', '${gstore}')`)
await RCS.agvCarry(agvId, loc, gstore)
await RCS.waitTaskFinish(agvId) await RCS.waitTaskFinish(agvId)
await LCC.sleep(1000)
break break
} }
} }

5
tw_test/scripts/Yvan.ts

@ -1,10 +1,13 @@
await LCC.queryInv({ rack, bay: parseInt(bay), level: parseInt(level) })
// await RCS.agvCarry('3', '105_105', 'rack2/0/0/0') // await RCS.agvCarry('3', '105_105', 'rack2/0/0/0')
// await RCS.agvUnload('3', 'rack2/0/1/0') // await RCS.agvUnload('3', 'rack2/0/1/0')
// await RCS.agvCarry('3', 'rack2/0/1/0', 'rack2/1/1/0') // await RCS.agvCarry('3', 'rack2/0/1/0', 'rack2/1/1/0')
// const [invRack1] = (await LCC.queryInv({ rack: 'rack2', level: 1 })).data // const [invRack1] = (await LCC.queryInv({ rack: 'rack2', level: 1 })).data
// LCC.log("invRack1=", invRack1) // LCC.log("invRack1=", invRack1)
LCC.createInv('TP4', '108_108') // LCC.createInv('TP4', '108_108')
// const v = await RCS.agvLoad('4', 'rack3/0/2/0', { priority: 1 })
// LCC.log('1') // LCC.log('1')
// await RCS.agvCarry('3', '105_105', 'rack2/0/1/0') // await RCS.agvCarry('3', '105_105', 'rack2/0/1/0')

19
tw_test/scripts/run1.ts

@ -1,19 +1,12 @@
// const v = await RCS.agvCarry('3', 'rack1/1/1/0', 'rack2/1/1/0', { priority: 1 }) const v = await RCS.agvCarry('3', 'rack2/0/0/0', 'rack1/1/1/0', { priority: 1 })
// await RCS.agvCarry('3', 'rack2/0/1/0', 'rack2/1/1/0')
// await RCS.agvCarry('3', 'rack2/1/1/0', 'rack2/0/1/0')
// await RCS.cancelTasks('3')
// await RCS.agvUnload('3', 'rack2/0/1/0')
// const v = await RCS.agvCarry('3', 'rack1/0/1/0', '105_105', { priority: 1 }) // const v = await RCS.agvCarry('3', 'rack1/0/1/0', '105_105', { priority: 1 })
// const v = await RCS.agvCarry('3','rack2/0/0/0', '105_105', { priority: 1 }) // const v = await RCS.agvCarry('3','rack2/0/0/0', '105_105', { priority: 1 })
// await RCS.agvCarry('3', 'rack2/0/1/0', '105_105', { priority: 1 }) // const v = await RCS.agvCarry('3','105_105', 'rack1/1/1/0', { priority: 1 })
// await RCS.agvCarry('3','105_105', 'rack1/1/1/0', { priority: 1 }) // const v = await RCS.agvMove('3', '6_4')
// const v = await RCS.agvMove('3', '6_4', 'LEFT')
// const v = await RCS.agvMove('4', '5_4', 'LEFT')
// await RCS.cancelTasks('3') // await RCS.cancelTasks('3')
await RCS.agvMove('3', '10_4', 'RIGHT')
// const v = await RCS.agvMove('3', '8_4', 'LEFT') // const v = await RCS.agvMove('4', '5_4', 'LEFT')
// await RCS.agvInfo('4') // await RCS.agvInfo('4')
// await RCS.cancelTasks("4") // await RCS.cancelTasks("4")
// await RCS.agvMove('4', '1_4', 'RIGHT') // const v = await RCS.agvCarry('4', '108_108/0/0/0', 'rack3/0/2/0', { priority: 1 })
// const v = await RCS.agvCarry('4', '108_108/0/0/0', 'rack3/0/1/0', { priority: 1 })
// const v = await RCS.agvCarry('4', 'rack3/0/2/0', 'rack3/1/1/0', { priority: 1 }) // const v = await RCS.agvCarry('4', 'rack3/0/2/0', 'rack3/1/1/0', { priority: 1 })
Loading…
Cancel
Save