I think I might have found some answers to my first question (but I might be 
wrong!!!).
 
Looking back at OutsideRangingSensorM, if buffer has been filled up for a 
single chirp (i.e. all 850 samples have been filled), then the next 
MicADC.dataReady() would return FAIL.  Thus, in AcousticMultiSamplerM, it 
causes state to be changed to STATE_IGNORING.  It simply waits for tickCount to 
be decremented to 0 before the next chirp is sampled.  Thus, buffer[i] simply 
"adds on" to the previous value of the chirp at approximately the same "sound 
level" since for each interval, the chirp comes before the silence period.  
This carries on until all 16 chirps has been sampled, after which filtering is 
done.
 
However, I'm still not too sure how 850 samples was derived for 1 chirp.  Also, 
I am assuming that the shortest "chirp + silence" period still produces more 
than 850 samples in order for my above explanation to hold true.  Basically, 
the answer to the second question I posted could probably give me a clearer 
picture.Looking forward to your advise on this matter.  Thank you.
 
Regards,
Azhar


From: [EMAIL PROTECTED]: [EMAIL PROTECTED]: Fri, 28 Sep 2007 05:44:39 
+0000Subject: [Tinyos-help] Acoustic Localization


Hi, (Using T1.1.15, micaz)    With regards to the implementation of acoustic 
localization by Vanderbilt University, I have some queries pertaining to 
certain issues: - In OutsideRangingSensorM, the processing (i.e. filtering) is 
done after AcousticMultiSampler.ReceiveDone() is signalled.  Thus, does it mean 
that the buffer array, which consists of a maximum of 850 samples, contains the 
samples of all 16 chirps before filtering is done? - In AcousticMultiSamplerM, 
when calling MicADC.getContinuousData(), what is the frequency of data that is 
sampled for 1 chirp approximately?  I see that 1 jiffy = 1/32768 s.  Thus, 
since rate is set to 100, Timer.fired() would be signalled after every 
100/32768 s.  Therefore, since the "longest" silence + chirp period is 27, 
MicADC.getContinuousData() would return the greatest number of samples for a 
single chirp within 2700/32768 s.  (By the way, BUFFER_LENGTH was defined to be 
850 - how was this derived?)  However, I'm still clueless on the!
  sampling frequency of MicADC.getContinuousData(). [FYI - I read through 
AcousticMultiSampler.txt where it was mentioned that "upon receiving an 
acoustic beacon message, this component (AcousticMultiSampler) will turn off 
the radio and will sample the microphone at specified time intervals at around 
16 KHz", but I still do not have any idea how these values are derived.]    
Your help would be very much appreciated. Thanks. Regards,Azhar
_______________________________________________
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to