wind_sensor:meeting_minutes_apr_14_2017

This is an old revision of the document!


Attended: Mengyuan, Creighton, Scott

  • Updates:
  • To Do:
  • 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 much more stable. Also added an array to keep track of the emitted times.
  • To Do:
    • Work on using the zero crossing detector in the Teensy setup and integrate it with the program.
  • wind_sensor/meeting_minutes_apr_14_2017.1492233016.txt.gz
  • Last modified: 2021/09/19 21:59
  • (external edit)