Hi, folks -

I'm trying to build an active pulsed radar using GR/USRP. Right now I am
only concerned with the transmission and reception of pulses.  All radar
signal processing will happen offline.  I know Eric is working on
passive radar. Has anyone tried active yet? 

I have a start on the Tx and Rx blocks, but I'm looking for suggestions
-- especially with regard to timing and synchronization. The following
is an overview of what I've got so far:

Tx. Block:  Basically, the constructor accepts the pulse repetition
frequency and a file containing the baseband transmit signal.  The work
method looks at the system time each call to determine whether or not it
should let loose another pulse.

Rx. Block:  I can't possibly log all samples due to memory limitations.
So, the work method attempts to record only a time gated subset of the
received samples.  (This works for my application because I have an idea
where the target is.)  The Rx block constructor  accepts a pointer to
the Tx block so that it can access the time of transmission for the last
pulse. It also accepts the delay to wait before recording pulse data, as
well as the number of samples to record for each pulse.

The real problem is timing and synchronization.  Below is a block
diagram that helps illustrate the problem.

         |---------  Ta  -------------|------ Tb ----|  
Tx Block --> GR Scheduler --> USB --> USRP --> real world
   .                                                   |
   .                                                   |
   .                                                delay T
   .                                                   |
   .                                                   |
  \ /                                                 \ /
   '                                                   '
Rx Block <-- GR Scheduler <-- USB <-- USRP <-- real world
         |---------  Ra  -------------|------ Rb ----|  


I'm trying to measure T, but there are unknown delays:

 - Ta, time pulse is put into the buffer until time it reaches USRP. 
 - Tb, time pulse reaches USRP until time it leaves antenna
 - Rb, time pulse arrives at antenna until time it reaches USB
 - Ra, time pulse leaves USRP until time it is recorded in Rx. block

I assume Tb & Rb will be relatively constant and Ta & Ra will be more
variable.  I have access to a digital RF memory. So, I hope to measure
the aggregate of Ta and Tb. I'm not sure I have the equipment to measure
Ra & Rb.

Obviously, I need very precise timing and synchronization. I need to
transmit at very precise intervals, and record at very precise times
after *real world* transmission.  I'm thinking of counting samples
instead of using the system clock to determine relative times, but I
haven't figured out how to synchronize this between Tx and Rx blocks.

Also, ideally, I would be able to transmit at 3kHz with a pulse width of
13us.  Our application won't let me deviate too much from that, but I'll
have to take what I can get.

I will be very appreciative of any insights anyone has into this
problem.


Thanks and regards
 - Lee




_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to