-
Notifications
You must be signed in to change notification settings - Fork 0
/
plotjuggler_LatLon_layout.xml
171 lines (160 loc) · 5.48 KB
/
plotjuggler_LatLon_layout.xml
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
<?xml version='1.0' encoding='UTF-8'?>
<root version="2.3.8">
<tabbed_widget name="Main Window" parent="main_window">
<plotmatrix columns="4" tab_name="plot" rows="2">
<plot style="LinesAndDots" row="0" col="0">
<range bottom="47.275350" left="116.742254" right="1427.138710" top="47.475350"/>
<limitY/>
<curve name="vehicle_local_position/ref_lat" G="119" custom_transform="noTransform" R="31" B="180"/>
<transform value="noTransform"/>
</plot>
<plot style="LinesAndDots" row="1" col="0">
<range bottom="8.442471" left="116.742254" right="1427.138710" top="8.642471"/>
<limitY/>
<curve name="vehicle_local_position/ref_lon" G="39" custom_transform="noTransform" R="214" B="40"/>
<transform value="noTransform"/>
</plot>
<plot style="Lines" row="0" col="1">
<range bottom="473750732.075000" left="0.000000" right="1427.043608" top="473761606.925000"/>
<limitY/>
<curve name="sensor_gps.00/lat" G="190" custom_transform="noTransform" R="23" B="207"/>
<transform value="noTransform"/>
</plot>
<plot style="Lines" row="1" col="1">
<range bottom="85421669.225000" left="0.000000" right="1427.043608" top="85429051.775000"/>
<limitY/>
<curve name="sensor_gps.00/lon" G="189" custom_transform="noTransform" R="188" B="34"/>
<transform value="noTransform"/>
</plot>
<plot style="Lines" row="0" col="2">
<range bottom="47.375072" left="116.802618" right="1426.998573" top="47.376165"/>
<limitY/>
<curve name="vehicle_global_position/lat" G="76" custom_transform="noTransform" R="241" B="193"/>
<transform value="noTransform"/>
</plot>
<plot style="Lines" row="1" col="2">
<range bottom="8.542171" left="116.802618" right="1426.998573" top="8.542903"/>
<limitY/>
<curve name="vehicle_global_position/lon" G="103" custom_transform="noTransform" R="148" B="189"/>
<transform value="noTransform"/>
</plot>
<plot style="LinesAndDots" row="0" col="3">
<range bottom="47.375511" left="7.655745" right="1337.118574" top="47.375860"/>
<limitY/>
<curve name="home_position/lat" G="190" custom_transform="noTransform" R="23" B="207"/>
<transform value="noTransform"/>
</plot>
<plot style="LinesAndDots" row="1" col="3">
<range bottom="8.542181" left="7.655745" right="1337.118574" top="8.542529"/>
<limitY/>
<curve name="home_position/lon" G="189" custom_transform="noTransform" R="188" B="34"/>
<transform value="noTransform"/>
</plot>
</plotmatrix>
<currentPlotMatrix index="0"/>
</tabbed_widget>
<use_relative_time_offset enabled="1"/>
<!-- - - - - - - - - - - - - - - -->
<!-- - - - - - - - - - - - - - - -->
<Plugins>
<plugin ID="DataLoad CSV">
<default time_axis=""/>
</plugin>
<plugin ID="DataLoad ROS bags">
<use_header_stamp value="false"/>
<use_renaming_rules value="true"/>
<discard_large_arrays value="true"/>
<max_array_size value="100"/>
</plugin>
<plugin ID="DataLoad ULog"/>
<plugin ID="ROS Topic Subscriber">
<use_header_stamp value="false"/>
<use_renaming_rules value="true"/>
<discard_large_arrays value="true"/>
<max_array_size value="100"/>
</plugin>
<plugin status="idle" ID="ROS /rosout Visualization"/>
<plugin status="idle" ID="ROS Topic Re-Publisher"/>
</Plugins>
<!-- - - - - - - - - - - - - - - -->
<!-- - - - - - - - - - - - - - - -->
<customMathEquations/>
<snippets>
<snippet name="1st_derivative" language="JS">
<global>var prevX = 0
var prevY = 0</global>
<equation>dx = time - prevX
dy = value - prevY
prevX = time
prevY = value
return dy/dx</equation>
</snippet>
<snippet name="1st_order_lowpass" language="JS">
<global>var prevY = 0
var alpha = 0.1</global>
<equation>prevY = alpha * value + (1.-alpha) * prevY
return prevY</equation>
</snippet>
<snippet name="2D_velocity" language="JS">
<global>var prev_x = 0
var prev_y = 0
var prev_t = 0</global>
<equation>X = $$your_odometry/position/x$$
Y = $$your_odometry/position/y$$
var dist = sqrt( (X-prev_x)*(X-prev_x) + (Y-prev_y)*(Y-prev_y) )
var dT = time - prev_t
prev_x = X
prev_y = Y
prev_t = time
return dist / dT</equation>
</snippet>
<snippet name="GPS lat" language="JS">
<global></global>
<equation>V1 = $$sensor_gps/lat$$
return value / 10000000</equation>
</snippet>
<snippet name="GPS lon" language="JS">
<global></global>
<equation>V1 = $$sensor_gps/lon$$
return value / 10000000</equation>
</snippet>
<snippet name="average_two_curves" language="JS">
<global></global>
<equation>a = $$PLOT_A$$
b = $$PLOT_B$$
return (a+b)/2</equation>
</snippet>
<snippet name="integral" language="JS">
<global>var integral = 0</global>
<equation>integral += value
return integral</equation>
</snippet>
<snippet name="rad_to_deg" language="JS">
<global></global>
<equation>return value*180/3.1417</equation>
</snippet>
<snippet name="remove_offset" language="JS">
<global>var is_first = true
var first_value = 0</global>
<equation>if (is_first)
{
is_first = false
first_value = value
}
return value - first_value</equation>
</snippet>
<snippet name="yaw_from_quaternion" language="JS">
<global>// source: https://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles
function quaternionToYaw(x, y, z, w)
{
// yaw (z-axis rotation)
t1 = 2.0 * (w * z + x * y);
t2 = 1.0 - 2.0 * (y * y + z * z);
yaw = Math.atan2(t1, t2);
return yaw
}</global>
<equation>return quaternionToYaw(x, y, z, w);</equation>
</snippet>
</snippets>
<!-- - - - - - - - - - - - - - - -->
</root>