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