how can I display the sensor data, altitude, speed, flight control on a graph ?
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
close all;
clc; clear;
r = ryze();
takeoff(r);
fig2 = figure('pos',[800 550 800 450]);
subplot(2,3,1)
title('phi[deg]');
grid on;
hold on;
subplot(2,3,2)
title('theta[deg]');
grid on;
hold on;
subplot(2,3,3)
title('psi[deg]');
grid on;
hold on;
subplot(2,3,4)
title('x[m]');
grid on;
hold on;
subplot(2,3,5)
title('y[m]');
grid on;
hold on;
subplot(2,3,6)
title('zdot[m/s]');
grid on;
hold on;
% function extractSensorData(obj, sensorData)
% Function to extract individual sensor data from the packet
% containing all drone sensor data
% Update battery level
obj.BatteryLevel = str2double(extractBetween(sensorData,'bat:',';'));
if(obj.BatteryLevel < 10)
status = ryzeio.internal.Utility.validateAlertState(obj.LowBattery, obj.BatteryLevel);
% Set the low battery flag
if(status)
obj.LowBattery = true;
end
end
% Update Attitude/Orientation Values
Pitch = str2double(extractBetween(sensorData,'pitch:',';'));
Roll = str2double(extractBetween(sensorData,'roll:',';'));
Yaw = str2double(extractBetween(sensorData,'yaw:',';'));
obj.Attitude.Value = [Yaw Pitch Roll];
obj.Attitude.Time = datetime('now', 'TImeZone','local','Format','dd-MMM-uuuu HH:mm:ss.SS');
% Update the Altitude/height of the drone
obj.Altitude.Value = str2double(extractBetween(sensorData,';h:',';'));
obj.Altitude.Time = datetime('now', 'TImeZone','local','Format','dd-MMM-uuuu HH:mm:ss.SS');
% Update the speed of the drone
vgx = str2double(extractBetween(sensorData,'vgx:',';'));
vgy = str2double(extractBetween(sensorData,'vgy:',';'));
vgz = str2double(extractBetween(sensorData,'vgz:',';'));
obj.Speed.Value = [vgx vgy vgz];
obj.Speed.Time = datetime('now', 'TImeZone','local','Format','dd-MMM-uuuu HH:mm:ss.SS');
if(~obj.FirstPacketReceived)
% Make the 'FirstPacketReceived' true to indicate
% that the first packet of sensor data has arrived
obj.FirstPacketReceived = true;
end
0 Kommentare
Antworten (1)
Vineeth Nair
am 19 Mär. 2021
The following example explains in detail how to plot the ryze tello drone's flight data https://www.mathworks.com/help/supportpkg/ryzeio/ug/read-plot-navigation-data-using-matlab-support-package-for-ryze-tello-drones.html
It plots data such as speed, orientation, and height against time.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Marine and Underwater Vehicles finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!