无聊之中的想法,欢迎大家探讨
前提假设一个小仓库,里面有5个货架,小车运行在导轨上,供电由滑动式导轨供电,通讯由铺设在导轨下的无线AP电缆进行无线通讯。
一个货架有5层高
小车控制系统由PLC,伺服电机,加上编码系统或RFID定位,或激光测距系统均可实现位置的精准反馈
小车上安装有三轴,X,Y,Z。其中X轴为小车地面行走,Y轴为机械伸入都货架部分,Z轴为机械上下升降部分
货架分割如下
| A4 | A9 | A14 | A19 | A24 |
| A3 | A8 | A13 | A18 | A23 |
| A2 | A7 | A12 | A17 | A22 |
| A1 | A6 | A11 | A16 | A21 |
| A0 | A5 | A10 | A15 | A20 |
假设定为一维数组,当然也可以建立为二维数组
但是为了在PLC 里面更好的去理解和建立,我们这里还是作为一维数组去分析
那么猜想每一个An,我们需要放入的数据是什么呢
An(Warehouse)
{Isfull,PartNo,Quantity}
Isfull 表示当前是否满料 bool
PartNo表示当前产品序号 string
Quantity表示当前产品数量 int
为了补充一些位置参数,An在另一个数据中应该还保存着以下参数
An(Point){Xn,Yn,Zn}用来表示当前坐标系统,类型都设置为Real类型
现在假设系统为1200PLC控制,不管是通讯还是脉冲都可以
在PLC中建立2个全局DB,一个命名为WarehouseInfo,一个命名为PointInfo
在PLC中建立两个自定义的数据类型,一个命名为Warehouse,一个命名为Point,分别在里面建立上面提到的两个数据
在WarehouseInfo的DB里面建立Warehouse类型的0-99的数组
在PointInfo的DB里面建立Point类型的0-99的数组
至此两大表格均建立完成,均设置为取消块优化,可断电保存
这样只要系统调用0下标,就可以同时得到A0的所有数据
PLC系统中控制伺服的方式是绝对位置驱动,所有X,Y,Z在初次上电或发生故障后都必须寻找对应的零位,或者采用绝对编码器,上电读取绝对位置后,复位位置坐标系统,建立起对应的坐标系统
这样操作系统就可以做位置示教,或计算校正功能
假设现实中伺服位置走动排除了机械产生的误差后都非常准确,那么所有货架的位置(X,Y,Z)均可通过计算所得,只要前提得知一个货架的长L,宽W,高H,
这个在机器人码垛中也经常会计算,可参考
或者在PLC 系统中做出计算功能复制数据FB,或示教FB,也可把货架数据根据现实情况把位置数据做入到系统中
可参考机器人示教功能
目前为了方便猜想,目前都假设所有的入库,出库旋转,都是人工操作
那么触摸屏设有参数PointInfo ,设置,等都可以设置参数,示教,或计算
触摸屏上设有入库,出库呼叫按钮,包含所有货架信息
全部都可以通过无线传输控制小车进行入库出库操作
同时为了更好保存系统信息,应该同时向上位机通讯,发送所有库存信息。在PLC系统开机时就必须强制与上位机数据库的信息进行比对,更新
在入库和出库完成也必须上传数据更新数据库
上部分是通过人工控制,将来可考虑通过入库产品托盘上的条形码或RFID标签,来进行入库自由选择货架来调度。
当PLC获取到条形码,在系统建立的WarehouseInfo,查询是否有对应的PartNo,如无,即可自动获取当前货架Isfull是否的货架位置号,直接调用PointInfo中的位置坐标,自动完成入库功能,可做脱机自动入库功能。入库完成即可上传数据更新上位机数据
当然也可以全程条形码或RFID系统独立由上位机系统进行操作运算,进行调度小车系统进行入库,只需上位机下发货架号An,也可以下位机自行获取内部对应坐标进行入库操作
出库功能,也可以人工,或上位机系统根据生产排单需要,进行查找计算,下发出库指令
如果延伸出去,把货架小车入库出库,输送系统,条码系统,标签定位系统加入进来,即可组成一套小型的仓储系统。
以上只是个人无聊的猜想,欢迎大家水贴