package com.ard.tianyu.netty.command; import io.netty.buffer.ByteBuf; import lombok.Data; /** * 云台转动(基于角度)命令 * * @author 刘苏义 * @date 2024/10/22 16:36 */ @Data public class ControlAngleCommand extends BaseCommand { private final byte encryptFlag; // 加密标志 private final byte actionCode; // 动作编号 private final byte rotationAngle; // 转动角度 public ControlAngleCommand(String boxSn, byte actionCode, byte rotationAngle) { setDataHeader((short) 0x7479); setDataLength((short)19); setBoxSn(boxSn.getBytes()); setCmdCode((byte) 0xD1); this.encryptFlag = 0x00; this.actionCode = actionCode; this.rotationAngle = rotationAngle; } public void encode(ByteBuf out) { out.writeByte(encryptFlag); // 写入加密标志 out.writeByte(actionCode); // 写入动作编号 out.writeByte(rotationAngle); // 写入转动角度 } }