巷道堆垛机是自动化立体库的关键设备,其作用是在限定的时间内把物料从巷道的入出口搬送到指定的货格,或者把物料从指定的货格搬到巷道的入出口。堆垛机能否安全、可靠、稳定、高效地运行,直接关系到整个立体库系统的设计成功与否。
巷道堆垛机的安全性
堆垛机的安全包括人的安全、设备的安全、存储货物的安全。
设备检测到巷道有人行走(或自身开关检测到、外部站点通知到)就会快速调整到零速度,直至巷道无人时,设备重新以低速启动完成被中断的任务。
设备本身要有互锁功能,保证运行电机和叉体电机不会同时运转,在轨道起始端和末端,也需要相应保护措施。这些功能涉及到排除重大安全隐患,不仅需要程序保护,还需要电气线路互锁。
对于存储货物的安全,需要检测物料在运行中是否堆放整齐,可根据实际需要和成本控制设计光栅检测、对射开关检测等。
以上功能均需要在程序设计或电路设计中加以体现。而对于多路安全检测功能,则需要多路安全检测能够独立地起作用。任意一路起作用,都能停止设备运行或做出保护动作。
程序设计完成之后,需要单独的测试程序以检测这些功能是否具备,同时还要测试程序保护功能失效后电气保护装置能否发挥作用。
程序设计
以下介绍程序架构的设计。
1.初始化设备参数
在程序的起始部分需要初始化设备参数,如本设备是属于第几号设备,位于几号站点,本设备的定位方式、定位精度要求等,这样可以对所有设备用同一套程序配置不同的参数。程序模块标准化有利于堆垛机的快速调试,也适用于其他类程序的编写。
2.读取输入和通讯数据
读取输入和通讯数据即处理外部的输入信号、PI设备信号、操作面板数据和接收通讯数据。在此要对易干扰的输入信号进行抗干扰处理。对于需处理的PI设备数据、操作面板数据和相关通讯站点数据,需要从与设备通讯的数据字节中提取需要的信息,并规范为程序内部数据的格式。
3.选择操作模块
数据处理完毕后,根据外部的操作意图来选择相应的操作模块。基本模块包括手动/维护、半自动、单机自动、联机自动模块。在相关模块中,根据客户的不同要求,相应的操作模块所实现的功能也不尽相同。
各模块中首先要处理的是初始化中间变量。中间变量是各个操作模块都需要进行写操作的变量,在相应的操作模块第一次被调用时,把这些中间变量初始化,可以有效防止在相应操作模块正在执行时外部切换操作模块造成的设备意外动作。各个模块需要根据已经规范好的外部信息来决定设备要执行的动作,并把设备要执行的动作信息写到相应的设备执行意图数据区域。
4.根据操作模块的意图调用相关模块
在执行完相关操作模块之后,需要把设备执行意图数据区域里面的数据转换为对外部设备规范的数据格式,并根据相应的通讯要求判断设备的状态,把设备的状态、将要进行的动作意图等信息传送给外部通讯设备(操作触摸屏、上位管理机等)。
5.根据安全要求规范输出
接下来要根据外部的设备状态和设备本身对安全的要求级别对输出数据进行处理。为设备的安全要求而编写的程序都在这里,这种设计架构可以确保在所有操作方式下都能执行完全相同的安全处理程序。
6.写输出和通讯数据
最后把需要输出的数据直接输出,并把需要传送给外部设备的代码直接传送出去。
一个好的程序架构能够保证在设备调试过程中快速找出问题所在,从而加快设备调试时间,节省工期。
11/4/2010
|