日系和德系的堆垛机调度控制的区别
一个完整的堆垛机运作涉及如下8个步骤:
1.准备取货 ->2.取货移动->3.货叉取货->4.取货完成->5.准备放货->6.放货移动->7.货叉放货->8.放货完成
日系堆垛机和上位调度系统常见对接步骤(一气呵成):
WCS给SRM发送from to指令->1.准备取货..... ....8.放货完成->SRM报告给WCS动作完成
当然,日系功能比较较强,一般都支持多任务:
所以可以这样调度:
WCS给SRM发送n条 from to指令->1.准备取货(第1条)..... ....8.放货完成->SRM报告给WCS第1条第动作完成
->1.准备取货(第2条)..... ....8.放货完成->SRM报告给WCS第2条第动作完成...
->1.准备取货(第n条)..... ....8.放货完成->SRM报告给WCS第n条第动作
德系堆垛机和上位调度系统常见对接步骤(FROM TO两个动作分开调度):
WCS给SRM发送from指令->1.准备取货.....4.取货完成-> WCS给SRM发送TO指令- ....8.放货完成->SRM报告给WCS动作完成
所以,从调度层面看,
日系的偏向于全自动,德系的偏向于半自动;
日系是全循环,德系是两个半循环;
也可以这样比喻,日系是自动挡汽车,德系是手动挡;
对这两种控制方式个人的观点:
1.方便性:
日系调度简单,任务发过去就不用管了,等SRM动作结束后,根据堆垛机的完成报告做相应的业务逻辑的处理;
德系要做两个半循环,调度系统就要"多操心", 上位调度更为复杂;
2.灵活性:
日系调度动作一气呵成,中途没有反悔机会;
特别是支持多任务,其实对于上位系统来说,一般很少做多任务的调度,这样中途异常就比较难处理; 而且对于后续订单任务,设备状态的不确定性,提前把指令下发给堆垛机不是一个明智的做法;
德系在调度到一半的时候,如果发现问题还可以再还原动作;或者调度的时候,可以在第二个半循环的时候,才分配目标去向;
所以取货和放货两个动作分开控制,对于异常处理更加灵活: 比如入库的时候,取货过程中堆垛机报警,WCS此时并不分配入库货位,所以操作员甚至可以把货取走,而不需释放原来的货位;
出库的时候,取货完成后,发现 原来可用的出库站台不可用了,或者取货的时候,主干道可用,取货完成的时候不可用了,可以让该出库任务再回到原位,先去做其他任务,
等什么时候线路畅通了,再做 ;
当然这类异常的概率很小;不过一个自动化调度系统做的好坏,很大程度上是对异常的把控,
小米的手机口号是:为发烧友而生;自动化灵活严谨的调度系统的口号是:为异常而活;每一个控制细节,都尽量细化,多步控制,每一个步骤都对多所有内外在条件做综合判断,决定下一步的动作和流程呢,一个系统的控制好坏,可能就体现在两块:1.运作的优化调度;2.异常的规避和修复的简化;
一个自动化系统,异常发生是太频繁的事情,而且是随机发生,这就对调度系统做出很高的要求,调度的好,可以把问题规避于无形之中;
当然绝对避免是不可能,比如原来异常每天发生2次,经过合理的调度优化,异常每2天发生一次,逐步改进,那对整个系统质量的提升就会发生质变;
不过,德系为什么这样分部设计,可能是德系偏重于高大全,对用在双叉双伸的堆垛机也统筹考虑的比较多,这个调度比普通的堆垛机要复杂很多,这样分段控制就显得很有必要了;
3.稳定性:
日系堆垛机自身调度强调整体性,并支持多任务,堆垛机自身控制的复杂度自然不低;这就需要堆垛机自身的设计人员有较丰富的经验;
德系堆垛机重点强调按部就班的执行层面,逻辑性上控制更多的交给上位调度;
逻辑简单,德系堆垛机的稳定性理论上应该更能保证,但是实际上把复杂性更多的交给上位了,所以上位控制起日系堆垛机更爽一些;
总之:
日系堆垛机类似傻瓜相机,调度简单方便; 德系堆垛机类似手动单反,控制灵活,但需要专业人员控制;
所以,对于经验丰富,善于总结的上位调度系统设计人员,使用单反的能够做出更优化稳定的系统;
对于一般的设计人员,日系的方式可能更稳定可靠;
其实穿梭车调度的也是一样:
日系的一般都是一下子给了FROM TO ,德系的也是上位分两步控制,第一步提供from,第二步提供to
这样的话,如果控制德系的穿梭车,我们就可以在穿梭车取货之后,再分配去哪个目标站台,有的时候,越晚确定目标位置,对于动态的运作,处理就更优化;
比如穿梭车的目标站台如果是堆垛机的入口站台,就要考虑堆垛机状态,假如你事先分配好去1号堆垛机入库,当穿梭车刚接到货,发现1号堆垛机故障,就不方便更换,这样分步控制就显得更为合理,
不仅仅是异常,如果是高频率的堆垛机调度,后分配可以在时序上控制的更精准;
由此,我们可以想象一下日系和德系输送机的控制思路:
1.日系的输送机系统只需要上位告诉它目的地在那个位置,它就自动在复杂的目字形甚至田字形等复杂的线路上七拐八拐的跑到目标位置,不需要上位中途再次干预;
2.德系的输送机控制,每次走到分叉口,就问上位,下面如何走,上位一步步将其导航到目标位置;
这个只是我的个人猜测,如果是德系的输送机真是这样控制的,那么对于上位调度来说就是一个福音,
可以非常灵活的做导弹跟踪反馈式的调度,比如任务做到一半取消返回或者变更目标位置都很简单;对于非常复杂的动线,类似于汽车导航那样做线路拥堵情况下中途换位置和近路畅通下的抄近路,预判断堆积排队,双向输送机的避开等控制,可以合理的使用上排队论,动态规划结合当前订单和即将执行的订单数据做最优化的内部数据建模,这些复杂的优化环节只有在上位集权掌控的情况下才能做合理的调度;
以下内容由aijam提供:
我手里有一家德系的通讯协议。对于入库是这么做的:
1. WCS收到托盘到达入库站台消息,WCS将产生一条入库指令给SRM,告知SRM从站台取托盘至某个货位。消息有返回码,0K表示成功。
2. SRM取走托盘后,SRM将产生一条取货完成的消息发送至WCS。
3. WCS将产生一条Data clear消息至PLC,告知PLC从系统中删除托盘数据。为了下一个托盘将可以过来了。
4. SRM将托盘放置于指定货位后,将发送放货完成消息到WCS。消息的返回码为0K表示作业成功完成。当然也可以发送错误代码给WCS
2020-10-12 19:06