设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5028|回复: 4

[求助] 怎样获得AGV小车的实时位置?

  [复制链接]
发表于 2014-3-18 22:53:03 | 显示全部楼层 |阅读模式
    有20台机床布置在一条通道的两侧,AGV在中间通道上做往复直线运动,给这些机床上料和下料。程序中是用了20个Track来铺设通道,编排为S0--S20。现在实现了AGV在等待区接收任务,执行完毕任务后回到等待区。意思是每次执行完任务之后必须要回到原点才能执行下一道任务。实现原理是,AGV每次都会停在等待区的一个固定位置,用Generator 每隔5秒去遍历AGV的任务列表,有满足条件的任务,取排序第一个的任务赋予AGV。这时AGV在等待区内,因此AGC:=Depot.cont;        if AGC/=void then  ...8 P' _* h) P# D0 W' F
即A,B,C三个Track段。AGV去A段上料,B段下料,返回C段(等待区)。这是我目前的流程。
3 o5 S; n; f  m. [( |- w' s! f1 M. \     
4 j3 X6 P- V  Z8 \4 D# w: T 这个和实际的AGV行为不符,实际的AGV在途可以接收任务,不用返回等待区就可以执行下一道任务。因此想更改这个规则。请教如何获取AGV的实时位置? 不然我怎么给AGV赋任务?  2 ^0 q0 R0 w4 K; @, ?
       
  W9 e) [6 b/ q     
 楼主| 发表于 2014-3-18 22:53:42 | 显示全部楼层
请大家不吝赐教
发表于 2014-3-22 01:47:21 | 显示全部楼层
gxzhouyong 发表于 2014-3-18 22:53 9 Q. C( ~( T. N) U
请大家不吝赐教
% K; U/ b- L7 G7 ]
初学者,爱莫能助啊
 楼主| 发表于 2014-3-22 16:32:46 | 显示全部楼层
taoyifei2000 发表于 2014-3-22 14:31 5 j3 l. G' o* J( L
你说的没错,AGV在运行的过程中,只要处于空闲状态是可以实时接收任务的,而不是非要到达指定的区域接任务 ...
$ D$ z5 W% Y2 [# j" r( V
       多谢版主,目前正是这个思路。
& C4 R0 ^0 {7 @    需要两个程序:. F0 \3 S& q/ a+ ~5 Z, r
    任务主动寻找AGV:任务列表中有任务 符合条件可以搬运了,触发 监控程序,监控程序再去找寻AGV的位置。将符合条件的下道工序的目标地址付给AGV。AGV再去根据这个目标地址的list去执行新任务。
2 r; S+ N" G* O$ f: v     AGV主动寻找任务: AGV下料后,如果任务列表没有符合条件的任务,即监控程序不触发,则返回C段(等待区)。如果有负荷条件的任务,则去执行。; O- @  K4 Z/ N5 p% c4 b! g/ J- l
      求教,在任务寻找AGV的时候,怎样编程实现寻找AGV的位置?   一共20个track,判断这20个track.cont是否有不为空的?  然后获得这个AGV,给它赋予目标地址的list?  现在再想有没有简单的方法。
 楼主| 发表于 2014-5-9 08:47:27 | 显示全部楼层
关于这个问题,最后只要用obj.location,就可以获得agv的实时位置了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-8-5 16:56 , Processed in 0.017428 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表