AGV小车调度系统设计

上传人:good****022 文档编号:116691769 上传时间:2022-07-06 格式:PPTX 页数:24 大小:252.84KB
收藏 版权申诉 举报 下载
AGV小车调度系统设计_第1页
第1页 / 共24页
AGV小车调度系统设计_第2页
第2页 / 共24页
AGV小车调度系统设计_第3页
第3页 / 共24页
资源描述:

《AGV小车调度系统设计》由会员分享,可在线阅读,更多相关《AGV小车调度系统设计(24页珍藏版)》请在装配图网上搜索。

1、LOREM IPSUM DOLOR,LOREM IPSUM DOLOR,AGV小车调度系统设计,答辩人 专业 机械工程及自动化 导师,AGV概述,AGV(Automated Guided Vehicle)经常是指那些以电磁或光学为导引装置,按照规定的路径行驶,且同时具有安全保护和运载能力的的车辆,但由于其拥有可操控、智能化和即时信息交流等特点AGV属于轮式运动机器人WMR(Wheeled Mobile Robot)的范围内。可以以充电蓄电池为动力,在人力成本高昂、高危环境等不利条件下不需要驾驶员的物流运输车辆。其控制以及调度通常通过电脑主系统收集信息分析判断后进行处理,行动方面有时也有沿着预先

2、铺设好的电磁轨道(electromagneticpath-followingsystem)作为设定运行线路,AGV小车通过电磁轨道所提供的信号进行移动。,AGV的特点,AGV小车与传统的车间物流工具相比具有以下特点: 1、降低劳力需求; 2、拥有良好的鲁棒性和柔性; 3、系统不会因少数AGV因突发情况无法工作而陷入瘫痪; 4、提高了产品物流过程中的安全性和可靠性; 5、空间占用率小; 6、能耗少; 7、易于安装维护; 8、投入成本较高,回报期相对较长; 9、自动化水平高与其它自动化系统相配合时会非常方便快捷; 10、AGV小车对比如强光、风沙、雨雪天气等恶劣的户外环境适应性不强,所以AGV小车

3、一般只能在相对稳定的室内环境如车间中使用; 11、采用磁导的AGV小车不能在金属材质的地面上通行。,AGV小车应用的意义,1、AGV小车的先进性:AGV技术综合了当今科研发展的先进理论和前沿技术,集光、电、计算机、智能化等为一身。定位精细准确,自动化程度相对较高。 2、AGV小车的灵活性:AGV系统能很便捷地与各种生产线、装配线、输送线、仓库、工作台以及RS/AS/出入口等作业平台相配合。根据实际工作中各种不同的需要以不同的方式组合来实现预期的目的功能。以最大限度缩短物流周转周期、减低能源消耗、实现物料与加工物料与生产等的柔性对接,最大程度地提高生产效率。 3、AGV小车的可靠性:在AGV系统

4、工作运行过程中,每时每刻AGV小车与主系统之间都进行着信息数据的交换,在后台庞大数据库支持的情况下能为AGV小车实际工作中遇到的各种突发情况进行分析判断并迅速做出适当反应,消除了人为因素的干扰充分保障了AGV小车作业过程中的可靠性、完成任务的及时性、数据信息的准确性。 4、AGV小车的独立性:在没有其它系统和配套设备支持的条件下,单独的AGV小车也能自成系统作为一个独立单元完成一些任务。 5、AGV小车兼容性:相比与单独工作,AGV系统更多也更善长于与其它系统比如:调度系统、生产系统、管控系统等紧密结合起来一起运作,说明AGV系统具有优异的兼容性和适应性。 6、AGV小车的安全性:AGV小车作

5、为无人驾驶物流车辆能够在一些不适宜人类工作的恶劣环境比如高温、高辐射场合中正常运行。另外AGV小车具有智能化信息采集分辨判断处理的功能以及交通管理、紧急制动、安全规避、故障报告、多级警示等手段来保障AGV小车的安全性。 7、AGV小车示范性:作为先进技术的代表,AGV系统是企业科技水平高端的象征。,本文研究内容,本设计主要内容包括: 1、了解AGV的定义、路径导引方式、控制以及通讯的基本原理; 2、AGV小车系统的历史背景、特点以及应用范围; 3、研究AGV小车的调度原理和方法; 4、结合实际情况在给出的车间草图基础上铺设AGV小车的路径; 5、用Visio建立调度流程图对调度流程进行描述;

6、6、了解以路径最短为原则求最优解的算法并结合实际情况选择Dijkstra算法作为研究内容; 7、建立一些假设对课题进行简化并以路径最短为原则利用 Dijkstra算法求解路径最优解; 8、熟悉C语言知识,针对已经完成的优化算法使用C语言编程进行描述。,本文主要成果,1、铺设AGV小车轨道路径; 2、使用dijkstra算法对AGV调度进行优化; 3、使用C语言对dijkstra算法进行描述; 4、使用CodeBlocks进行仿真。,利用Dijkstra算法求解最短路径,设costi,j=0(costi,j为邻接矩阵用于储存各条边的路径值),S为已经求得的最短路径的节点集合,Vi表示AGV小车当

7、前所在的位置点(i=1,2,3.n)。distancei用于储存即刻任务源点A到各个AGV小车的最短路径。 建立数学模型: mind = minnx = 1D ( x = 1,2,3,n) ( 数学模型1) mindistance = minNy = 1( nx = 1D) ( y = 1,2,3,N) ( 数学模型2) mindistances = minHh = 1( Ny = 1( nx = 1D) ) ( h =1,2,3,H )(数学模型3) 利用Dijkstra算法求区域内任务源点到AGV小车的最短路径的基本过程如下:,1、任务开始; 2、即刻,区域中存储在已知最短路径节点集合S中

8、的点只有任务源点V0,U=A,distancei=cost0,i; 3、选出即刻各个AGV小车所在的位置点Vj,满足条件:distancej=mindistancei|Vi V-S; 4、把此时AGV小车所在的位置点Vj添加到集合S中; 5、修改distance数组元素:对所有不在集合U内的节点Vi,if( distancej+ costi,j distancei) ,则 distancei = distancej +costi,j; 5、循环执行步骤2、3、4直到所有节点被添加到集合S中; 6、得出距离最短的AGV小车; 7、算法结束。,利用Dijkstra算法求解最短路径,为了对Dijks

9、tra算法进行实例说明,建立补充假设: 1、四个AGV小车分别停靠在B、C、D、O四个节点上,以B、C、D、O为编号代表在各个节点位置的AGV小车; 2、任务源点是A节点; 3、用999999代表; AB=10,AO=11,OB=5,OC=9,OD=6,BC=4,CD=5(单位:m)。,利用Dijkstra算法求解最短路径,单任务AGV小车调度匹配结果如下: 输出结果为:任务源点A选定的距离最短AGV小车是位于节点B处的AGV小车,B编号小车距离任务源点A的距离为10m。,用C语言描述Dijkstra算法,/* * About: AGV小车调度优化的Dijkstra算法实现 */ #inclu

10、de #include const int maxnum = 100; (最大节点数) const int maxint = 999999; (最大路径值,约等于正无穷) void Dijkstra(int n, int v, int *dist, int *prev,int cmaxnummaxnum) bool smaxnum; / 判断是否已存入该点到S集合中,用C语言描述Dijkstra算法,for(int i=1; i=n; +i) disti = cvi; si = 0; / 初始都未用过该点 if(disti = maxint) previ = 0; (v、i点不向连) else

11、 previ = v; (i点前一个点是v) distv = 0; sv = 1; (表示v点已经存入S集合) / 依次将未放入S集合的结点中,取dist最小值的结点,放入结合S中,用C语言描述Dijkstra算法,/ 一旦S包含了所有V中顶点,dist就记录了从源点到所有其他顶点之间的最短路径长度 for(int i=2; i=n; +i) int tmp = maxint; (一开始将距离调为正无穷即999999) int u = v; / 找出当前未使用的点j的distj最小值 for(int j=1; j=n; +j) if(!sj) (用新的最短距离替代原先输入的正无穷),用C语言描

12、述Dijkstra算法, su = 1; / 表示u点已存入S集合中 / 更新dist for(int j=1; j=n; +j) if(!sj) (j点的上一个点是u) ,用C语言描述Dijkstra算法, void searchPath(int *prev,int v, int u) int quemaxnum; int tot = 1; quetot = u; tot+; int tmp = prevu; while(tmp != v) ,用C语言描述Dijkstra算法,quetot = tmp; tot+; tmp = prevtmp; quetot = v; for(int i=t

13、ot; i=1; -i) if(i != 1) cout ”; else cout quei endl; ,用C语言描述Dijkstra算法,int main() / 各数组都从下标1开始 int distmaxnum; / 表示当前点到源点的最短路径长度 int prevmaxnum; / 记录当前点的前一个结点 int cmaxnummaxnum; / 记录图的两点间路径长度 int n, line; / 图的结点数和路径数 / 输入结点数 cin n; / 输入路径数 cin line;,用C语言描述Dijkstra算法,int p, q, len; / 输入p, q两点及其路径长度 /

14、 初始化c为maxint for(int i=1; i p q len; if(len cpq) / 有重边 cpq = len; / p指向q,用C语言描述Dijkstra算法,cqp = len; / q指向p, 这样表示无向图 for(int i=1; i=n; +i) disti = maxint; for(int i=1; i=n; +i) for(int j=1; j=n; +j) printf(“%8d”, cij); (输出右对齐最大有效长度8位的整型数据) printf(“n”); ,用C语言描述Dijkstra算法,Dijkstra(n, 1, dist, prev, c)

15、; / 最短路径长度 cout “任务源点到最后一个顶点的最短路径长度: ” distn endl; / 路径 cout “任务源点到最后一个节点的路径为: ”; searchPath(prev, 1, n); ,仿真,使用codeblocks进行仿真 输入数据: 5 7 1 2 10 1 4 30 1 5 100 2 3 50 3 5 10 4 3 20 4 5 60 输出数据: 999999 10 999999 30 100 10 999999 50 999999 999999 999999 50 999999 20 10 30 999999 20 999999 60 100 999999 10 60 999999 任务源点到最后一个节点的路径最短长度: 60 任务源点到最后一个节点的路径为: 1 - 4 - 3 - 5,谢谢各位老师,老师们辛苦了!,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!