commit-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Commit-gnuradio] r5699 - gnuradio/trunk/gr-sounder/src/python


From: jcorgan
Subject: [Commit-gnuradio] r5699 - gnuradio/trunk/gr-sounder/src/python
Date: Tue, 5 Jun 2007 18:36:25 -0600 (MDT)

Author: jcorgan
Date: 2007-06-05 18:36:25 -0600 (Tue, 05 Jun 2007)
New Revision: 5699

Modified:
   gnuradio/trunk/gr-sounder/src/python/sounder.py
   gnuradio/trunk/gr-sounder/src/python/usrp_sounder.py
Log:
Added vector smoothing, removed record reversal

Modified: gnuradio/trunk/gr-sounder/src/python/sounder.py
===================================================================
--- gnuradio/trunk/gr-sounder/src/python/sounder.py     2007-06-05 23:41:07 UTC 
(rev 5698)
+++ gnuradio/trunk/gr-sounder/src/python/sounder.py     2007-06-06 00:36:25 UTC 
(rev 5699)
@@ -76,10 +76,11 @@
         self._u._write_fpga_reg(FR_AMPL, self._amplitude)
 
 class sounder_rx:
-    def 
__init__(self,subdev_spec=None,gain=None,length=1,msgq=None,loopback=False,verbose=False,debug=False):
+    def 
__init__(self,subdev_spec=None,gain=None,length=1,alpha=1.0,msgq=None,loopback=False,verbose=False,debug=False):
        self._subdev_spec = subdev_spec
         self._gain = gain
         self._length = length
+        self._alpha = alpha
         self._msgq = msgq
        self._loopback = loopback
        self._verbose = verbose
@@ -101,8 +102,11 @@
             print "Generating impulse vectors of length", self._length, "byte 
length", self._vblen
             
         self._s2v = gr.stream_to_vector(gr.sizeof_gr_complex, self._length)
+       if self._verbose:
+           print "Using smoothing alpha of", self._alpha
+        self._lpf = gr.single_pole_iir_filter_cc(self._alpha, self._length)
         self._sink = gr.message_sink(self._vblen, self._msgq, True)
-        self._fg.connect(self._u, self._s2v, self._sink)
+        self._fg.connect(self._u, self._s2v, self._lpf, self._sink)
 
     def tune(self, frequency):
         if self._verbose:
@@ -145,7 +149,7 @@
 
 class sounder:
     def 
__init__(self,transmit=False,receive=False,loopback=False,rx_subdev_spec=None,ampl=0x1FFF,
-                 
frequency=0.0,rx_gain=None,degree=12,length=1,msgq=None,verbose=False,debug=False):
+                 
frequency=0.0,rx_gain=None,degree=12,length=1,alpha=1.0,msgq=None,verbose=False,debug=False):
         self._transmit = transmit
         self._receive = receive
         self._loopback = loopback
@@ -155,6 +159,7 @@
         self._rx_gain = rx_gain
         self._degree = degree
         self._length = length
+        self._alpha = alpha
         self._msgq = msgq
         self._verbose = verbose
         self._debug = debug
@@ -171,8 +176,9 @@
             self._u = self._trans._u
             
        if self._receive:
-            self._rcvr = 
sounder_rx(subdev_spec=self._rx_subdev_spec,length=self._length,gain=self._rx_gain,
-                                   
msgq=self._msgq,loopback=self._loopback,verbose=self._verbose, 
+            self._rcvr = 
sounder_rx(subdev_spec=self._rx_subdev_spec,length=self._length,
+                                    
gain=self._rx_gain,alpha=self._alpha,msgq=self._msgq,
+                                    
loopback=self._loopback,verbose=self._verbose, 
                                    debug=self._debug)
            self._u = self._rcvr._u # either receiver or transmitter object 
will do
        

Modified: gnuradio/trunk/gr-sounder/src/python/usrp_sounder.py
===================================================================
--- gnuradio/trunk/gr-sounder/src/python/usrp_sounder.py        2007-06-05 
23:41:07 UTC (rev 5698)
+++ gnuradio/trunk/gr-sounder/src/python/usrp_sounder.py        2007-06-06 
00:36:25 UTC (rev 5699)
@@ -54,6 +54,8 @@
                       help="enable debugging output, default is disabled")
     parser.add_option("-F", "--filename", default=None,
                      help="log received impulse responses to file")
+    parser.add_option("", "--alpha", type="eng_float", default=1.0,
+                     help="smoothing factor (0.0-1.0), default is %default 
(none)")
                      
     (options, args) = parser.parse_args()
 
@@ -78,9 +80,11 @@
            print "Logging impulse records to file: ", options.filename
            
     msgq = gr.msg_queue()
-    s = 
sounder(transmit=options.transmit,receive=options.receive,loopback=options.loopback,
-                
rx_subdev_spec=options.rx_subdev_spec,frequency=options.frequency,rx_gain=options.gain,
-                
degree=options.degree,length=length,msgq=msgq,verbose=options.verbose,ampl=options.amplitude,
+    s = sounder(transmit=options.transmit,receive=options.receive,
+                
loopback=options.loopback,rx_subdev_spec=options.rx_subdev_spec,
+                frequency=options.frequency,rx_gain=options.gain,
+                degree=options.degree,length=length,alpha=options.alpha,
+                msgq=msgq,verbose=options.verbose,ampl=options.amplitude,
                 debug=options.debug)
     s.start()
 
@@ -95,10 +99,8 @@
                rec = msg.to_string()[:length*gr.sizeof_gr_complex]
                if options.debug:
                    print "Received impulse vector of length", len(rec)
-                recarray = numpy.fromstring(rec, dtype=numpy.complex64)
-                imparray = recarray[::-1]
-                data = imparray.tostring()
-               f.write(data)
+
+               f.write(rec)
                
         except KeyboardInterrupt:
             pass





reply via email to

[Prev in Thread] Current Thread [Next in Thread]