基于工业机器人的立体仓储系统的设计
2023-11-22刘华锋叶桂鑫姚坚涛彭宝裕
刘华锋,叶桂鑫,姚坚涛,彭宝裕
(广东环境保护工程职业学院,广东 佛山 528216)
立体仓储系统以其存储量大、空间利用率高、自动化程度高等特点被广泛应用在各类仓储系统中。传统的立体仓库主要由立体货架和码垛机组成,立体货架用于存放物料,码垛机用于搬运物料,码垛机需要做行列识别与判断才能取到对应的货物。随着工业机器人技术的不断发展,工业机器人技术也开始应用于立体仓储系统。将工业机器人应用在立体仓储系统上,可以提升系统的空间利用率,提高系统的生产效率和自动化程度,减少劳动强度。
1 系统硬件组成
系统仿真图如图1 所示。系统主要由存储单元、执行单元、工具单元以及主控单元组成。
图1 系统仿真图
1.1 存储单元
存储单元是用来存放物料的。存储单元由货架、气动托盘、漫射式传感器、磁性开关以及指示灯组成。货架共6 个仓位,上下各3 个,每个仓位的底板都是气动托盘,用于托放物料,当气动托盘伸出仓位的时候,物料也随之伸出仓位。漫射式传感器用于检测每个仓位有没有存放物料,磁性开关用于检测气动托盘伸出是否到位,指示灯用于指示每个仓位的存储状况,当对应仓位有物料的时候,绿色指示灯亮,当对应仓位没有物料时,红色指示灯亮。
1.2 执行单元
执行单元是用来拖动工业机器人完成工具拾取和物料取放的。执行单元由伺服电机、伺服驱动器、丝杆滑台装置、三个对射式光电传感器以及工业机器人组成。工业机器人安装在丝杆滑台装置上,伺服电机和伺服电机驱动器用于拖动丝杆滑台装置,三个对射式光电传感器用于定位控制,分别安装在丝杆滑台装置的正极限、负极线以及原点位置上。
1.3 工具单元
工具单元是用来存放各种气爪的。为方便工业机器人拾取物料,在工业机器人的6 轴上安装有气动快换插头,气动快换接头一般是气路的末端。气动快换接头内部有多条气体通路,切换气动快换接头电磁阀的控制状态便可以安装和取下快换气爪,切换快换气爪电磁阀的控制状态便可以夹紧和松开气爪。
1.4 主控单元
主控单元由西门子PLC、触摸屏以及按钮组成,用来启停系统、监控系统以及指定仓位取放物料的。
2 电气控制系统设计
2.1 设备组态
为保证硬件系统能够安全、可靠并且能够按照生产工艺流程运行,系统采用西门子S7-1212(DC/DC/DC)型PLC 作为系统的主控制器。S7 1200型PLC 因其功能强大、设计紧凑、组态灵活等特点,被广泛应用于各种自动化控制系统中。该PLC 有Profinet 接口,可以用于与触摸屏、编程计算机及其他带以太网接口的设备通信。在本系统中,PLC 通过FR8210 Profinet 适配器远程模块控制执行单元和立体仓库,并与触摸屏通过以太网协议实时通信,实现取放物料命令的发送及系统运行状态的监控。如图2所示。
图2 系统组网图
2.2 取料工艺流程
立体货架采用工业机器人取料比较方便快捷,可以通过触摸屏指定取料,也可以让立体货架依次自动推送工件以实现自动取料。取料流程图如图3所示。通过主控单元上的按钮启动系统后,系统会先判断有没有通过触摸屏发送指定取料的命令,若指定了仓位,则对应仓位的气动托盘依次伸出货架,工业机器人接收到对应仓位伸出到位的信号后,开始运动至工具单元前,取下对应的气爪后,再运动至货架伸出的气动托盘前,取下物料再运动至下一站点(放置物料处),当工业机器人从伸出的气动托盘上取走物料并放置好后,工业机器人发送取料完成信号给PLC,PLC 接收到信号后,将气动托盘缩回原位。若系统判断没有通过触摸屏指定库位,货架会按照从左至右、从上至下的顺序自动推料,再下发取料信号给工业机器人。
图3 系统取料流程图
指定取料优先于自动取料,当设定了指定取料后,系统会先执行指定取料的任务,待指定取料任务完成后,再自动取料。对于已经执行过指定取料的仓位,在执行自动取料任务时,即使该仓位有料,系统会自动跳过该仓位,去取下个未执行指定取料任务仓位上的物料。此处可建立“取料选择”一维数组,数据内含6 个元素,用于标记该料仓是否被取过物料,当料仓被取过物料则标记为1,料仓为被取过则标记为0,标记为1 的料仓位在后续取料时会被直接跳过。
3 控制系统程序设计
3.1 库位存储状态读取
PLC 在推送物料前需要先判断各仓位上是否有物料,因此,需要先读取货架上各仓位的存储状态信息。在每个仓位下都安装有一个漫射式光电传感器,当对应的仓位上有物料时,传感器的输出状态为1,当对应仓位上没有存放物料时,传感器的输出状态为0。可以采用PEEK_BOOL 指令读取存储地址指令来读取各仓位上存储信息。PEEK_BOOL 读取存储地址指令的使用说明如图4 所示。
图4 PEEK_BOOL 指令参数说明
库位的存储信息是通过安装在库位下方的传感器检测信号来判断的,此处的AREA 选择的区域应该为16#81,DBNUMBER 应该为0,BYTEOFFSET 为待读取的地址,物料存储检知传感器在PLC 中的分配地址为I4.0-I4.5,此处BYTEOFFSET 填写的地址应该为4,BITOFFSET 为待读取的位,此处需要读取I4.0-I4.5 这6 个地址的信息,故此处引入临时变量“仓位号”,循环判断6 次后,即可读取6 个库位的存储信息。
3.2 料仓推料写入
料仓推料分为两种情况,第一种情况是在触摸屏上指定了取料位,取料位上有料且指定取料位允许取料,这时料仓便将指定的仓位推出。第二种情况是没有在触摸屏上指定取料位,这时,料仓便按照从左往右、从上往下的顺序依次将存有物料的仓位推出。可以选用POKE_BOOL 写入存储位指令推料,POKE_BOOL 写入存储位指令使用方法如图5 所示。
图5 PEKE_BOOL 指令参数说明
料仓推料属于输出信号,此处的AREA 选择的区域应该为16#82,DBNUMBER 应该为0,BYTEOFFSET 为待读取的地址,料仓推料的电磁阀在PLC中的分配地址为Q6.0-Q6.5,此处BYTEOFFSET 填写的地址应该为6,BITOFFSET 为待写入的位,此处需要写入Q6.0-Q6.5 这6 个地址的信息,故此处引入临时变量“仓位号”,VALUE 为待写入的值,要推出料仓的话,需要将对应料仓气动托盘的值修改为1,此处应该为1。这样循环判断6 次后,即可推出6个料仓。如图6 所示。
图6 料仓物料识别样例程序
3.3 料仓伸出信息传递
料仓被推出后,需要发取料信号给工业机器人。当1 号料仓的气动托盘被推出后,气缸伸出到位信号I5.0 便会检测到该伸出信号,PLC 接收到该仓位伸出信号后,再通过组输出信号通知工业机器人过来取1 号仓位的物料。其余的5 个料仓取料过程与此类似。为节省PLC 与工业机器人的通信端口,此处采用组信号通信。6 个料仓伸出到位信号需要3 个PLC 输出端口。具体对应表如表1 所示。
3.4 工业机器人程序设计
系统采用ABB IRB120 型机器人来执行物料的拾取和放置。该工业机器人具有DeviceNet 协议接口。DeviceNet 是一种基于CAN 总线技术的开放型现场总线协议标准,它能够将PLC、编程计算机、传感器等工业设备接入总线网络,为系统提供一个可靠的通信网络。在本系统中,工业机器人在DeviceNet接口上通过CAN 电缆连接远端模块FR8030 适配器,再利用远端模块FR8030 适配器上的输入输出端口与西门子PLC 的远端模块FR8210 适配器上的输入输出端口对连,这样,机器人控制信号便可以通过总线适配器在DeviceNet 总线通信的I/O 端口上传输,且在传输至PLC 远端模块上的I/O 端口上仍保留完整的DeviceNet 协议。
工业机器人的取料位信息由PLC 通过组输入输出信号传递。当货架的气动托盘伸出到位后,会反馈一个信号给PLC,PLC 接收到此信号后,便通过与工业机器人对接的端口发送仓位号信息,工业机器人接收到信号后,便夹取对应仓位上的物料。物料取走后,发取料完成信号给PLC 便准备取下一个物料了。
以1 号仓位取料为例说明工业机器人取料的完整过程。当1 号料仓的气动托盘伸出货架后,PLC 的I5.0 端口会检测到气动托盘伸出到位信号,PLC 的组输出信号I16.0 置位,I16.1 和I16.2 复位,输出值为二进制的001,转换为十进制即为1。工业机器人FR1108 模块接收到此信号后,di0=1,di1=0,di2=0,工业机器人做信号识别,如果工业机器人接收到的数字为1,工业机器人滑行至工具单元,取完工具后再滑行至货架前取1 号料仓的物料。取走物料并放到指定位置后再发取料完成信号给PLC,让PLC 复位1 号料仓的气动托盘。1 号料仓气动托盘复位后,2号料仓的气动托盘伸出货架,如此循环,直至取完所有物料。
3.5 触摸屏画面设计
为实现存储系统的可视化管理,实时了解系统的存储情况,并能实现指定取料功能,在系统中引入了触摸屏。触摸屏采用了西门子公司生产的KTP900 BASIC 触摸屏,该触摸屏提供一个PROFINET 接口,可以轻松实现与西门子系列PLC通信。触摸屏画面设计的很简单,通过物料状态栏可以清楚的观测到存储单元的存储状况,通过取料选择栏可以指定取料位。请求取料为系统取料开始按钮,按下此按钮,系统便开始取料。如图7 所示。
图7 触摸屏画面设计
4 调试与总结
以西门子S7-1200 型PLC 作为系统的主控制器,采用触摸屏实现系统的可视化监控与管理,将工业机器人安装在丝杆滑台机构上,利用伺服电机和伺服电机驱动器来拖动丝杆滑台机构,进而来控制工业机器人的行程,以便于工业机器人在货架、工具单元以及物料放置处往复运动。系统经过反复调试,运行稳定,能够实现指定取料和自动取料。本系统可以提升立体仓库的空间利用率,减少劳动强度,提升存储系统的运行效率。