Borrar filtros
Borrar filtros

Calculate waypoints for a moving plane with a radar

5 visualizaciones (últimos 30 días)
Miguel Albuquerque
Miguel Albuquerque el 6 de Mayo de 2022
Comentada: Miguel Albuquerque el 10 de Mayo de 2022
Hey guys, thanks in advance for reading this.
Probably this is very basic, but im having troubles
I have a surveillance are, defined by AoI( 400 by 400) matrix, so a 2D scenario. A binary matrix, where 1= target, 0= non target. I select the position of the targets.
I want to imagine that a plane is going from AoI(310 0) to AoI(310 400). This plane is at 250m/s and has a radar mounted in it, and imagine this receives the waves at waypoints AoI(310,0),AoI(310,40) ,AoI(310,80),AoI(310,150) and AoI(310,400), taking 20 second in each distance between waypoints.
How sould I define a loop where in each waypoint the radar on the plane, gets the detection of targets and the incident and reflective angles calculated by this:
This cycle is just reading the matrix, identifying the targets( position =1 in matrix) and calculating the angles between the transmitter(8,5) and the receiver(8,15) to the normals to the targets. I want to calculate this cycle for each waypoint of the trajectory where the plane passes.
for xx=1:400
for yy=1:400
if AoI(xx,yy) ~= 0 % Target detection
X_target= xx*Lp;
Y_target= yy*Lp;
VTransmitter_target=[X_target-X_transmitter Y_target-Y_transmitter]; % Vector transmitter-target
Vectors_product=dot( VTransmitter_target,normal_ntarget1);
angle_transmitter =180-acosd(Vectors_product/(norm(VTransmitter_target)*norm(normal_ntarget1)));
VTarget_receiver=[X_receiver-X_target Y_receiver-Y_target]; % Vector Target-receiver
Vectors_product=dot( VTarget_receiver,normal_ntarget1);
angle_receiver =acosd(Vectors_product/(norm(VTarget_receiver)*norm(normal_ntarget1)));
  4 comentarios
Jeffrey Clark
Jeffrey Clark el 7 de Mayo de 2022
For 2D, straight line, no acceleration a single track P = P0+V.*t, where P0 is initial x,y position, V is constant x,y velocity,and t is time after P0. Or add constant acceleration or higher terms. Or just make up each 20sec data point for each track and store into P.
P, P0 and V could represent all tracks by adding one more dimension as in P(track,x,y), which can be computed all at once:
P = P0 + V.*t;
Miguel Albuquerque
Miguel Albuquerque el 7 de Mayo de 2022
how can I insert that in my main for cycle?

Iniciar sesión para comentar.

Respuesta aceptada

Matt J
Matt J el 8 de Mayo de 2022
Isn't it just
X_transmitter = 310;
for i=1:numel(waypoints)
Y_transmitter = waypoints(i);
our code from yesterday
  2 comentarios
Miguel Albuquerque
Miguel Albuquerque el 8 de Mayo de 2022
It was that exactly. Thanks a lot again :D
Miguel Albuquerque
Miguel Albuquerque el 10 de Mayo de 2022
Hey again, I have a simple doubt, if you could help me
imagine this waypoints:
for each waypoint I produce a series of calculations but this is my main doubt. Reference_SignalFD and Surveillance_SignalFD only gets calculated when a target is founded. Imagine at waypoint 10, target(2,10),(2,11),(2,12) get founded. I calculate Reference_SignalFD and Surveillance_SignalFD. But if at waypoint 20, target(2,12),(2,13) gets founded I want to also calculate Reference_SignalFD and Surveillance_SignalFD but without eliminating the calculations of previous waypoint. so basically I want that in all plane movement Reference_SignalFD and Surveillance_SignalFD gets calculated in a matrix where the lines of that matrix are the different waypoints and the columns are the values of the calculations. Thanks
, in this code:
for i=1:numel(waypoints)
Y_transmitter = waypoints(i);
Reference_SignalFD=(1/Rd)*X_QPSK.*exp(-1*j*k0*Rd); % Reference Signal frequency domain
Surveillance_SignalFD=(1/(R1+R2))*X_QPSK.*exp(-1*j*k0*(R1+R2)); % Surveillance Signal frequency domain
thank you

Iniciar sesión para comentar.

Más respuestas (0)


Más información sobre Radar and EW Systems en Help Center y File Exchange.





Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by