产品中心
Products Center
1. 调度系统的主工作界面:
上图是调度系统的一个应用实例。
图中红色的圆形图标,是正在运行的AGV小车,用箭头表示AGV的运行方向。
黄色的图标表示“上料点”,上料点负责向全车间共计61个工位运送物料;
工位用红色的字母T和后面的数字组成。
2. 调度系统的主要功能:
当某个工位需要原材料时,通过“工位呼叫器”向上料区提出用料申请,在提申请时,可以同时指定所需材料的规格、型号以及数量。
上料区配备有“上料区呼叫器”,负责接收工位发来的物料申请。上料区接到工位的申请后,开始根据物料清单备料,同时把调车请求转发给调度系统。
调度系统接到申请后,根据道路是否拥堵、是否有AGV在上料区待命等信息,就近选择一辆AGV来执行运输任务,调度系统会为AGV规划路径,并且把路径发送给AGV。
AGV接收到调度系统的指令后,行驶到上料区的待命点,把已经备好的材料运送到指定的工位,并且在回程时,把空料车拉回。
AGV在经过某些交叉路口时,可能会与其它AGV发生碰撞,这是调度系统的另一个任务,即对所有的AGV实施交通管制。当两辆AGV在某个路口有可能发生碰撞时,调度系统发出指令,让其中的一辆停车让行,确保运行的安全流畅。
调度系统每隔5分钟检查一次AGV的电量以及运行状态,当某AGV电量低于预设的阈值时,就会调度它去充电。不过调度系统不会在AGV运行的中途就发指令给它,因为这时AGV一般都拉着料车。当AGV抵达上料区待命点之后(AGV已经卸下了料车),才调它去充电。
AGV开始充电之后,如果有“紧急”的运输任务,而上料区此时又没有其它的AGV可用,调度系统这时中断AGV的充电,调它去执行紧急任务,任务完成之后再重新开始充电。
当AGV的电量达到90%调度系统就会把它召回。
由于调度系统的任务管理功能,使用的是开放模式,因此可以和用户的生产过程管理系统进行一定程度的嵌合。
调度系统可以通过多种方法与用户的生产管理软件建立连接,可以通过辨识生产管理系统的一些特征值,来生成物料运输任务。并且可以在AGV完成某些任务之后,把AGV的位置和状态报告给用户的生产管理系统,例如当AGV到达某个位置、当AGV完成了某项任务时,可以向生产管理软件发送信号,这些都是由调度系统自动完成的。
3. 系统菜单的各个模块
系统菜单中最主要的内容就是监视调度系统和AGV的运行状态:
l 网络连接:就是调度服务器和AGV、呼叫器之间的通讯;
l 车辆信息:报告AGV所在的位置、状态、运行速度、电量等信息
l 参数设置:调度系统运行时的重要参数、上料点定义、充电机定义等;
l 任务顺序:正常情况下,调度服务器按接到任务的时间顺序来决定任务执行的次序,但如果需要进行调整,比如删除某个任务,或者把摸个任务提前执行,就需要用到这个功能;
l 系统消息:在系统运行中,每一辆AGV都把自己的特征值包装成消息抛出,AGV的状态值大多数都是瞬时值,比如随着AGV的运动,它不停的抛出消息,它只管抛出,至于这个消息调度系统有没有收到,怎么利用,AGV并不关心,它只需要接受调度系统发出的启动、停车,以及执行任务要走的路径就可以了,消息的管理是由调度系统来完成的;
l 交叉路口:对AGV进行交通管制;
l 充电管理:手动充电管理,调度系统内部有一个自动充电的机制,但如果操作者希望手动接管,就可以使用这个功能。
4. 系统组成:
本系统一般由调度系统软件、AGV、上料点呼叫器、工位呼叫器组成。
安装使用的位置:
调度系统软件,安装在调度服务器上;
上料点呼叫器,安装在平板电脑,每个上料点配备一台;
工位呼叫器,安装在平板电脑上,每个工位配备一台;
AGV驱动软件,系统约定,AGV的编号从01开始,至49结束,可以管理50台AGV。
如上图所示,一般情况下,运输任务总是由工位发起,工位的操作员通过工位呼叫器,把工位需要的原材料的种类、规格、数量等信息,经过无线网络传递给上料点呼叫器。
上料点接到工位的申请之后,发料人员根据材料清单为工位备料(把原材料装到料车上),同时把这个运输任务转发给调度服务器。
调度服务器根据上料点和工位的位置,设计出一条最优的路线,然后就近选择一辆距离上料点最近的AGV,并且把设计好的路线发给AGV。
AGV接到调度系统发来的路线,一步一步执行,把货物运送到工位。当AGV完成了任务,向调度服务器发送一条任务完成的消息,服务器接到消息,向工位呼叫器发送确认消息,至此,一次运输任务完成。
这是比较典型的AGV系统的应用。但是我们很容易就会发现这个系统的不足,即AGV运输系统和用户的生产管理体系是脱节的,除了AGV可以自动运行,不需要人工开动之外,其它环节仍需人工操作。
要克服这个缺点,就需要AGV运输系统和用户的生产过程进行嵌合,具体的方法见下一条的介绍。
5. 调度系统和用户生产管理系统的对接方式
AGV运输系统的主要功能,就是把原材料从某个点运输到另外一个点,或者是把生产的半成品从一个工位运输到另一工位,再或者把成品从工位运输到仓库储存。
在具有MES、ERP、WMS等生产管理系统的单位,可以通过SQL Server数据库和AGV运输系统进行桥接,例如下面这个数据表,生产管理系统把需求写到这个数据表中,然后调度系统从这个表里读取任务。
序号 | 字段名 | 类型长度 | 说明 |
1 | TaskID | int | 任务编号 (WMS写) |
2 | StartStation | nvarchar(10) | 起始站台编号 (WMS写) |
3 | EndStation | nvarchar(10) | 目的站台编号 (WMS写) |
4 | CreateTime | datetime | 任务创建时间 (WMS写) |
5 | TaskState | Int | 任务状态 0未执行,1执行中,2完成 (WMS生成任务写0,AGV系统在任务开始执行写1,执行完成写2) |
6 | AGVNum | Int | 执行此任务的AGV编号 (AGV系统写) |
7 | StartTime | datetime | 任务开始执行时间 (AGV系统开始执行时写) |
8 | FinishTime | datetime | 任务执行完成时间 (AGV系统任务完成时写) |
和用户的生产管理系统对接的另一种,就是由调度系统去读取生产管理系统的某些特征值,然后根据这些特征值进行组合,进而生成AGV运输系统的运输任务。
见下面的一个实例:
当然这些关键结点的选取、组合、判断等,必须有用户生产管理人员的配合,我们独自是无法完成的。
与用户生产管理系统的连接方式有:
SQL Server数据库桥接
SCADA WebAPI (用户的SCADA系统类似于一个网站,以AJAX规范POST数据包)
TCP无线网络(Socket)