updateSensors
R2026bUpdate sensor readings in UAV scenario
Syntax
Description
updateSensors( updates all sensor
readings based on latest states of all platforms in the UAV scenario,
scene)scene.
Examples
Create a UAV scenario, and specify the update rate, stop time, and reference location. The reference location sets the geodetic origin of the scenario in latitude, longitude, and altitude.
scene = uavScenario(UpdateRate=200,StopTime=2,ReferenceLocation=[46, 42, 0]);
Add a custom inertial frame named MAP to the scenario. The MAP frame is offset 1 meter east from the default ENU (east-north-up) frame. Custom inertial frames enable you to define local coordinate systems for specific regions or tasks within the scenario.
addInertialFrame(scene,"ENU","MAP",trvec2tform([1 0 0]));
Add one ground mesh and two cylindrical obstacle meshes to the scenario. The polygon mesh represents the ground surface. The first cylinder is specified using Cartesian coordinates relative to the scenario origin. The second cylinder uses geographic coordinates (latitude, longitude, and radius) by setting UseLatLon to true, which is useful when you want to place obstacles at known geodetic positions.
addMesh(scene,"Polygon",{[-100 0; 100 0; 100 100; -100 100],[-5 0]},[0.3 0.3 0.3]); addMesh(scene,"Cylinder",{[20 10 10],[0 30]},[0 1 0]); addMesh(scene,"Cylinder",{[46 42 5],[0 20]},[0 1 0],UseLatLon=true);
Add a UAV platform with a specified waypoint trajectory to the scenario. The trajectory defines a flight path through three waypoints with arrival times at 0, 1, and 2 seconds.
traj = waypointTrajectory(Waypoints=[0 -20 -5; 20 -20 -5; 20 0 -5],TimeOfArrival=[0 1 2]);
uavPlat = uavPlatform("UAV",scene,Trajectory=traj);Add meshes to the UAV platform for visualization. The first mesh is a quadrotor body with a wingspan of 4 meters displayed in red. Then, add a geofence boundary to constrain the UAV flight region.
updateMesh(uavPlat,"quadrotor",{4},[1 0 0],eul2tform([0 0 pi])); addGeoFence(uavPlat,"Polygon",{[-50 0;50 0;50 50;-50 50],[0 100]},true,ReferenceFrame="ENU");
Attach an inertial navigation system (INS) sensor to the UAV platform. The INS sensor provides position, velocity, and orientation measurements during simulation.
insModel = insSensor;
ins = uavSensor("INS",uavPlat,insModel,MountingLocation=[4 0 0]); Visualize the scenario in 3D.
ax = show3D(scene);
axis(ax,"equal"); Set up and start the scenario.
% Set up scenario setup(scene); % Start scenario while advance(scene) % Update sensor readings updateSensors(scene); % Visualize the scenario show3D(scene,"Parent",ax,"FastUpdate",true); drawnow limitrate end

Input Arguments
UAV scenario, specified as a uavScenario object.
Version History
Introduced in R2020b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleziona un sito web
Seleziona un sito web per visualizzare contenuto tradotto dove disponibile e vedere eventi e offerte locali. In base alla tua area geografica, ti consigliamo di selezionare: .
Puoi anche selezionare un sito web dal seguente elenco:
Come ottenere le migliori prestazioni del sito
Per ottenere le migliori prestazioni del sito, seleziona il sito cinese (in cinese o in inglese). I siti MathWorks per gli altri paesi non sono ottimizzati per essere visitati dalla tua area geografica.
Americhe
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)