自动化立体仓库 - WCS系统
#
lsh
2024-06-21 6c8bbda65905a9dd299062d725682a8bc896cd72
src/main/java/com/zy/core/model/protocol/CrnProtocol.java
@@ -1,5 +1,6 @@
package com.zy.core.model.protocol;
import com.zy.asrs.entity.BasCrnp;
import com.zy.core.enums.CrnForkPosType;
import com.zy.core.enums.CrnLiftPosType;
import com.zy.core.enums.CrnModeType;
@@ -11,6 +12,8 @@
 */
@Data
public class CrnProtocol {
    private Integer crnNo;
    /**
     * 1 = 手动模式
@@ -30,14 +33,17 @@
     * 异常码
     */
    public Short alarm;
    public Short alarmTwo;
    /**
     * 任务号
     */
    public Short taskNo = 0;
    public Short taskNoTwo = 0;
    /**
     * 堆垛机当前状态
     * -1:未知
     * 0:空闲,无任务
     * 1:取货定位中
     * 2:取货中
@@ -48,23 +54,29 @@
     * 7:库位移位
     * 90:任务完成等待WCS确认
     * 99:报警
     * 100:其他100
     * 101:未知101
     */
    public Short status;
    public Short status = -1;
    public Short statusTwo = -1;
    /**
     * 状态枚举
     */
    public CrnStatusType statusType;
    public CrnStatusType statusTypeTwo;
    /**
     * 堆垛机当前列号
     */
    public Short bay;
    public Short bayTwo;
    /**
     * 堆垛机当前层号
     */
    public Short level;
    public Short levelTwo;
    /**
     * 当前货叉位置
@@ -73,8 +85,10 @@
     * 2 = 货叉在右侧
     */
    public Short forkPos;
    public Short forkPosTwo;
    private CrnForkPosType forkPosType;
    public CrnForkPosType forkPosType;
    public CrnForkPosType forkPosTypeTwo;
    /**
     * 当前载货台位置
@@ -82,8 +96,10 @@
     * 1 = 上定位
     */
    public Short liftPos;
    public Short liftPosTwo;
    public CrnLiftPosType liftPosType;
    public CrnLiftPosType liftPosTypeTwo;
    /**
     * 走行在定位
@@ -91,66 +107,100 @@
     * 1 = 不在定位
     */
    public Short walkPos;
    /**
     * 堆垛机任务完成
     */
    public Short taskFinish;
    public Short walkPosTwo;
    /**
     * 载货台有物
     */
    public Short loaded;
    public Short loadedTwo;
    /**
     * 异常码(数值显示)
     */
    private Short alarm1;
    private Short temp1;
    private CrnTemp1 crnTemp1;
    private Short temp2;
    private Short temp3;
    private Short temp4;
    /**
     * 异常1
     */
    private Short error1;
    private boolean[] error1;
    private CrnError1 crnError1;
    /**
     * 异常2
     */
    private Short error2;
    private boolean[] error2;
    private CrnError2 crnError2;
    /**
     * 保留
     * 异常3
     */
    private Short temp1;
    private boolean[] error3;
    private CrnError3 crnError3;
    /**
     * 异常4
     */
    private boolean[] error4;
    private CrnError4 crnError4;
    /**
     * 异常5
     */
    private boolean[] error5;
    private CrnError5 crnError5;
    /**
     * 异常6
     */
    private boolean[] error6;
    private CrnError6 crnError6;
    /**
     * X行走线速度m/min
     */
    private Short xSpeed;
    private Float xSpeed;
    /**
     * Y行走线速度m/min
     */
    private Short ySpeed;
    private Float ySpeed;
    /**
     * Z行走线速度m/min
     */
    private Short zSpeed;
    private Float zSpeed;
    /**
     * 堆垛机累计走行距离km
     */
    public Integer xDistance;
    public Float xDistance;
    /**
     * 堆垛机累计升降距离km
     */
    public Integer yDistance;
    public Float yDistance;
    /**
     * 堆垛机累计运行时长h
     * 堆垛机累计走行时长h
     */
    public Integer duration;
    public Float xDuration;
    /**
     * 堆垛机累计升降时长h
     */
    public Float yDuration;
    public void setMode(Short mode) {
        this.mode = mode;
@@ -172,6 +222,16 @@
        this.forkPos = CrnForkPosType.get(type).id.shortValue();
    }
    public void setForkPosTwo(Short forkPosTwo) {
        this.forkPosTwo = forkPosTwo;
        this.forkPosTypeTwo = CrnForkPosType.get(forkPosTwo);
    }
    public void setForkPosTwo(CrnForkPosType typeTwo) {
        this.forkPosTypeTwo = typeTwo;
        this.forkPosTwo = CrnForkPosType.get(typeTwo).id.shortValue();
    }
    public void setLiftPos(Short liftPos) {
        this.liftPos = liftPos;
        this.liftPosType = CrnLiftPosType.get(liftPos);
@@ -182,14 +242,37 @@
        this.liftPos = CrnLiftPosType.get(type).id.shortValue();
    }
    public void setLiftPosTwo(Short liftPosTwo) {
        this.liftPosTwo = liftPosTwo;
        this.liftPosTypeTwo = CrnLiftPosType.get(liftPosTwo);
    }
    public void setLiftPosTwo(CrnLiftPosType typeTwo) {
        this.liftPosTypeTwo = typeTwo;
        this.liftPosTwo = CrnLiftPosType.get(typeTwo).id.shortValue();
    }
    public void setStatus(Short status){
        this.status = status;
        this.statusType = CrnStatusType.get(status);
    }
    public void setStatusTwo(Short statusTwo){
        this.statusTwo = statusTwo;
        this.statusTypeTwo = CrnStatusType.get(statusTwo);
    }
    public void setStatus(CrnStatusType type){
        this.statusType = type;
        this.status = CrnStatusType.get(type).id.shortValue();
    }
    public Short getTemp1() {
        return temp1;
    }
    public void setTemp1(Short temp1) {
        this.temp1 = temp1;
    }
    /**
@@ -199,4 +282,44 @@
     */
    private String lastIo = "I";
    public BasCrnp toSqlModel(BasCrnp basCrnp){
        if (alarm!=null) {
            basCrnp.setCrnErr(alarm.longValue());
        }
        basCrnp.setWrkNo(taskNo.intValue());
        basCrnp.setWrkNoTwo(taskNoTwo.intValue());
        basCrnp.setCrnStatusOne(status.intValue());
        basCrnp.setCrnStatusTwo(statusTwo.intValue());
        return basCrnp;
    }
    public void setxSpeed(Short xSpeed) {
        this.xSpeed = Float.valueOf(xSpeed);
    }
    public void setySpeed(Short ySpeed) {
        this.ySpeed = Float.valueOf(ySpeed);
    }
    public void setzSpeed(Short zSpeed) {
        this.zSpeed = Float.valueOf(zSpeed);
    }
    public void setxDistance(Short xDistance) {
        this.xDistance = Float.valueOf(xDistance);
    }
    public void setyDistance(Short yDistance) {
        this.yDistance = Float.valueOf(yDistance);
    }
    public void setxDuration(Short xDuration) {
        this.xDuration = Float.valueOf(xDuration);
    }
    public void setyDuration(Short yDuration) {
        this.yDuration = Float.valueOf(yDuration);
    }
}