参考 图片《库位统计》 库区1:里面是小堆垛机,这里库位只能放小托盘。 库区2:里面是大堆垛机,这里库位能放小托盘也能放大托盘。 实际光电检测高度传递的值有 1、2、3、4、5、6 。(共6个高度值) 小堆垛机区域分配规则(全放小托盘): 高度 1、2、3 ,去往 0-975 高度 4、5、6,去往 975-1850 大堆垛机区域分配规则: ============================================【系统逻辑处理】========================================================================= 前提概念: 实际光电检测高度gd_height 系统判断高度 sys_height 代码逻辑: (1) 如果是小托盘,并且要进入库区1。 系统会转换传递过来的实际光电检测高度gd_height,如果gd_height>3,则判断sys_height为2,反之,判断sys_height为1. 即 实际光电检测高度gd_height 系统判断高度 sys_height 1 1 2 1 3 1 4 2 5 2 6 2 系统会根据sys_height的值,如果是1,就放到0-975的高度库位。 如果是2,就放到 975-1850的高度库位。 (2)如果是小托盘,并且要进入库区2。 系统会转换传递过来的实际光电检测高度gd_height,如果gd_height=6,就报错,提示库区2没有这个高度,如果gd_height>3,则判断sys_height为(gd_height-1),反之,判断sys_height为gd_height. 即 实际光电检测高度gd_height 系统判断高度 sys_height 1 1 2 2 3 3 4 3 5 4 系统会根据sys_height的值,如果是1或者2,就放到 2、4、6、8层(0-750) 如果是3,就放到 3、5、7、9、10层(750-1150) 如果是4,就放到 1、11层(1150-1350) (3)如果是大托盘,要进入库区2。【注意:大托盘一定是入库区2的】 系统会转换传递过来的实际光电检测高度gd_height,如果gd_height>4,就报错,提示库区2没有这个高度,其他情况判断sys_height=gd_height. 即 实际光电检测高度gd_height 系统判断高度 sys_height 1 1 2 2 3 3 4 4 系统会根据sys_height的值,如果是1,就放到所有层都能放,优先放4,5,7,8,10,11层(0-600)【即1到14层全部都能放】 如果是2,就放到1,2,3,6,9,12,13,14层(600-750、750-1150、1150-1350)【即除了4.5.7.8.10.11层不能放,其他都能放,优先放 3.6.9.12层】 如果是3,就放到 1,2,13,14 ,优先放2层 【即除了4.5.7.8.10.11,3.6.9.12层不能放,其他都能放,优先放 2层】 如果是4,就放到 1,13,14 (1150-1350) 库区1高度配比: 一排 2到10层(0-975) 1,11层(975-1850) 二排 2,4,6,8层(0-750) 3,5,7,9,10层(750-1150) 1,11层(1150-1350) 库区2高度配比: 4,5,7,8,10,11层(0-600) 3,6,9,12层(600-750) 2层(750-1150) 1,13,14层(1150-1350) ============================================【系统逻辑处理】=========================================================================