wind_sensor:meeting_minutes_apr_14_2017

Attended: Mengyuan, Creighton, Scott

  • Updates:
    • Met with Dr. Kuh to discuss current status of project
      • Working real time processing algorithm to obtain wind speed of a single microphone
      • Algorithm to determine direction
        • Works for only 90 degrees
    • Conducted tests between 0 and 90 degrees to determine wind speed and direction in indoor conditions
      • Used an anemometer to calibrate wind speed
      • Used a lazy susan marked with angles 0 to 360 degrees to calibrate direction
      • Placed anemometer facing in the direction of the 0 degree mark and turned lazy susan to desired testing angle
  • To Do:
    • Conduct tests of algorithm beyond just 90 degrees
    • May require modifying algorithm.
  • Updates:
    • Right before the CDR, made the realization that instead of going through the trouble of offsetting the received signal and using a threshold detector, we could keep the received signal centered at 0V and use a zero-crossing detector. This will simplify our design by quite a bit (we would forego the Schmitt trigger, threshold detectors, and possibly the amplifier). Also, the zero-crossing detector is relatively simple to build.
    • Tested zero-crossing detector with oscilloscope:
      • Initially tried to do it with an op-amp but we were limited by the slew rate. When we did find an op-amp with a high enough slew rate, the rise time was relatively slow (see below). The yellow signal is the input and the blue signal is the output. The output should go to 5V when the input is positive, and 0V when the input is negative, transitioning when the input is 0V.
      • We then decided to test it with our voltage comparator set at 0V, and it gave us much better results (see below).
    • Receiver response when sending just 1 pulse:
      • I had initially thought that sending just 1 pulse might be a good idea if there was a small recovery period (for the receiver to settle down), but since below shows a relatively long recovery period, it seems like the original plan of sending 10 pulses is better.
      • Sending just a single pulse through the emitter still causes a relatively long received signal. Also, there is an audible frequency (~3kHz) coming from the emitter
    • DigitalWrite() vs. fastDigitalWrite():
      • This is probably the time between the function call and the pin change, rather than the actual rise time, which is a physical property.
      • digitalWrite() rise ~ 22ns
      • digitalWriteFast() rise ~22ns
    • Delay vs. Timer:
      • The Timer was more precise and accurate whereas the delay had some relatively large fluctuations ~8%.
    • Delay 12.5us using nops:
      • Not very reliable, a better approach would be to try and modify the timer's prescaler and initial value to achieve a 12.5us trigger.
    • Modified program to utilize a Timer to send the pulses rather than a for loop and delays. Makes the frequency more stable. See pulse generation below:
    • Added an array to keep track of emitter times. Tested the times and they are pretty consistent. Moved circuit elements onto one board. Working on integrating transducers with receiver code.
  • To Do:
    • Continue working on integrating zero crossing detector with program.

Authors

Contributing authors:

mwu snishihara

Created by mwu on 2017/04/12 21:24.

  • wind_sensor/meeting_minutes_apr_14_2017.txt
  • Last modified: 2017/04/24 20:40
  • by snishihara