zhaowenyu
2025-11-25 d456e429f4e1235a6a30488879d3d47f8dce44fe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
package com.ard.sample.manage.model.receiver;
 
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.PropertyNamingStrategy;
import com.fasterxml.jackson.databind.annotation.JsonNaming;
import lombok.Data;
 
import java.util.List;
 
/**
 * @author sean.zhou
 * @version 0.1
 * @date 2021/11/23
 */
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonNaming(PropertyNamingStrategy.SnakeCaseStrategy.class)
public class OsdSubDeviceReceiver {
    // zwy 2025-10-14 修改增加注解对应json字段
 
    /**
     * 偏航轴角度    int
     * */
    @JsonProperty("attitude_head")
    private Float attitudeHead;
 
    /**
     * 俯仰轴角度    float
     * */
    @JsonProperty("attitude_pitch")
    private Double attitudePitch;
 
    /**
     * 横滚轴角度    float
     * */
    @JsonProperty("attitude_roll")
    private Double attitudeRoll;
 
    /**
     * 相对起飞点高度    float
     * */
    @JsonProperty("elevation")
    private Double elevation;
 
    /**
     * 飞行器电池信息    struct
     * */
    @JsonProperty("battery")
    private BatteryReceiver battery;
 
    /**
     * 固件版本    text
     * */
    @JsonProperty("firmware_version")
    private String firmwareVersion;
 
    /**
     * 档位    enum_int
     * "0":"A","1":"P","2":"NAV","3":"FPV","4":"FARM",
     * "5":"S","6":"F","7":"M","8":"G","9":"T"}
     * */
    @JsonProperty("gear")
    private Integer gear;
 
    /**
     * 绝对高度    float
     * */
    @JsonProperty("height")
    private Double height;
 
    /**
     * 距离 Home 点的距离    float
     * */
    @JsonProperty("home_distance")
    private Double homeDistance;
 
    /**
     * 水平速度    float
     * */
    @JsonProperty("horizontal_speed")
    private Float horizontalSpeed;
 
    /**
     * 当前位置纬度    float    {"max":"3.4028235E38","min":"-1.4E-45","step":"0.1"}
     * */
    @JsonProperty("latitude")
    private Double latitude;
 
    /**
     * 当前位置经度    float    {"max":"3.4028235E38","min":"-1.4E-45","step":"0.1"}
     * */
    @JsonProperty("longitude")
    private Double longitude;
 
    /**
     * 飞行器状态    enum_int
     * "0":"待机",
     * "1":"起飞准备",
     * "2":"起飞准备完毕",
     * "3":"手动飞行",
     * "4":"自动起飞",
     * "5":"航线飞行",
     * "6":"全景拍照",
     * "7":"智能跟随",
     * "8":"ADS-B 躲避",
     * "9":"自动返航",
     * "10":"自动降落",
     * "11":"强制降落",
     * "12":"三桨叶降落",
     * "13":"升级中",
     * "14":"未连接",
     * "15":"APAS",
     * "16":"虚拟摇杆状态",
     * "17":"指令飞行",
     * "18":"空中 RTK 收敛模式",
     * "19":"机场选址中"
     * 机场选址指飞行器在空中悬停,为机场选址以及检查 RTK 信号质量
     * */
    @JsonProperty("mode_code")
    private Integer modeCode;
 
    /**
     * 飞行器累计飞行总里程    float    {"unit_name":"米 / m"}
     * */
    @JsonProperty("total_flight_distance")
    private Double totalFlightDistance;
 
    /**
     * 飞行器累计飞行航时    float    {"unit_name":"秒 / s"}
     * */
    @JsonProperty("total_flight_time")
    private Double totalFlightTime;
 
    /**
     * 垂直速度    float    {"unit_name":"米每秒 / m/s"}
     * */
    @JsonProperty("vertical_speed")
    private Float verticalSpeed;
 
    /**
     * 当前风向    enum_int
     * "1":"正北","2":"东北","3":"东","4":"东南",
     * "5":"南","6":"西南","7":"西","8":"西北"}
     * */
    @JsonProperty("wind_direction")
    private Double windDirection;
 
    /**
     * 风速    float    {"unit_name":"0.1 米每秒 / m/s"}
     * */
    @JsonProperty("wind_speed")
    private Float windSpeed;
 
    /**
     * 搜星状态    struct
     * */
    @JsonProperty("position_state")
    private PositionStateReceiver positionState;
 
    @JsonProperty("payloads")
    private List<OsdPayloadReceiver> payloads;
 
    /**
     * 存储容量    struct
     * */
    @JsonProperty("storage")
    private StorageReceiver storage;
 
    /**
     * 飞行器夜航灯状态    enum_int    {"0":"关闭","1":"打开"}
     * */
    @JsonProperty("night_lights_state")
    private Integer nightLightsState;
 
    /**
     * 飞行器限高    int    {"max":"1500","min":"20","step":"1","unit_name":"米 / m"}
     * */
    @JsonProperty("height_limit")
    private Integer heightLimit;
 
    /**
     * 飞行器限远状态    struct
     * */
    @JsonProperty("distance_limit_status")
    private DistanceLimitStatusReceiver distanceLimitStatus;
 
    /**
     * 飞行器避障状态    struct
     * */
    @JsonProperty("obstacle_avoidance")
    private ObstacleAvoidanceReceiver obstacleAvoidance;
 
}