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