1 / 25

Eguitar tuner

Eguitar tuner. Mark Stocker Eastern Kentucky University Department of Technology. OUTLINE. Automatic Guitar tuning Amplification of signal Frequency Measurement Harmonic Interference. MOTIVATION. Beginners often have trouble tuning their guitar properly.

candid
Télécharger la présentation

Eguitar tuner

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Eguitar tuner Mark Stocker Eastern Kentucky University Department of Technology

  2. OUTLINE • Automatic Guitar tuning • Amplification of signal • Frequency Measurement • Harmonic Interference

  3. MOTIVATION • Beginners often have trouble tuning their guitar properly. • Self tuning guitars such as the Gibson Robot are extremely expensive ($4000!) • http://www.youtube.com/watch?v=WetVXbYRfWk

  4. INTRODUCTION • Each guitar string vibrates at a unique fundamental frequency. • The fundamental frequency of the string directly relates to the musical note being played via the formula: • n is the number of steps away from middle A (which is exactly 440Hz)

  5. PROBLEM STATEMENT • Frequency measurement is typically done by custom made Digital Signal Processors (DSP’s). • DSP’s take a lot of time and money to develop into a working product.

  6. PROPOSED SOLUTION • Analyze and tune the guitar using general purpose devices that are easily acquired and very inexpensive. • Perform the signal processing and motor control in software instead of a hardware DSP device.

  7. Frequency measurement • Measure the voltage of the guitar signal using the Atmel AVR built in Analog-to-Digital convertor (ADC). • Sample the change in voltage at a very high rate (200uS) to detect each time the waveform crosses the zero point or bias. • After a predetermined number of zero crossings have been detected, determine frequency using the formula 1/T where T is the amount of time that passed during the sample.

  8. Frequency measurement

  9. Frequency measurement • Compare the measured readings to those known to be in the correct range (+/- .05% of intended frequency) and tune string accordingly with a stepper motor. Standard Guitar Tuning: Frequency (Hz) Period Samples @ 200uS E = 82.4069 0.0121 606.75 A = 110.0000 0.0091 454.5 D = 146.8324 0.0068 340.5 G = 195.9978 0.0051 255 B = 246.9417 0.0040 202.48 e = 329.62775 0.0030 151.69

  10. Problem #1 • The output of the guitar is very weak. 3mV peak-to-peak is typical. • The 8-bit ADC of the AVR is setup to use a 5V reference voltage. • We have 255 usable steps over the 5 volt range which is equal to 19mV per step. • This will not allow us enough precision to detect the zero crossings of the wave form. • The bias or baseline of the guitar signal needs to be at 2.56 volts, so we can detect both the positive and negative part of the waveform.

  11. Solution #1 • Amplify and bias the signal using a simple op-amp circuit.

  12. Problem #2 • Due to the varying stiffness of steel guitar strings, along with the fundamental frequency, harmonic frequencies are also generated, which can be quite powerful as seen below:

  13. Problem #2 • The 2nd harmonic is especially powerful. • Since we are only measuring zero crossings of the waveform, the harmonics end up being measured also, producing incorrect results.

  14. Solution #2 • To prevent false readings, we will filter the harmonics from the signal in software, with the filter customized for each string. • I use a bitshift in this filter (>>) to do the division in order to save CPU cycles. • The value of filter is set according to current string selection. Lower values create a more narrow band-pass. signal = ((filter * last_sample_value + (16 – filter) * sample_value)>>4);

  15. RESULTS • The circuit and program are successful at reading determining the input frequency accurately. • The stepper motor assembly is successful at tuning the strings automatically, although slow.

  16. AVR uC String Selection Darlington Array BIAS OP-AMP Guitar Input

  17. Stepper Motor Gear Reduction unit Guitar Interface

  18. media eGuitar tuner in action: http://www.youtube.com/watch?v=5ctUjII-M6Y http://www.youtube.com/watch?v=LXHzzM-_Uao eGuitar put to the test against commercial tuner: http://www.youtube.com/watch?v=rRlvrPupO9o eGuitar C code: http://www.stockmarker.org/AVR/eguitar/eguitar_code.html

  19. CONCLUSIONS • Considering commercial guitar tuning devices use specialized DSP’s, I was quite surprised at how well the AVR functioned. • I learned many new things during the project, such as filtering signals in software, the use of AVR ADC and Timers, and stepper motor control.

  20. Cost Device Cost Source AVR uC $3 Mouser LM324 op-amp $0.50 Mouser Components $2 Mouser 4x20 LCD Display $10 EBay Stepper assembly $0 Junk FB Scanner Power Supply $0 Junk Box Total Cost: $15.50 Commercial Tuner: $80 Savings: $64.50

  21. FUTURE WORK • Use a shielded enclosure to prevent outside interference. • Fine tune the OP-AMP circuit and implement hardware filters for faster and more accurate tuning. • Streamline the program by writing it in pure assembly code.

  22. Software Only free / open source software was used in the making of this project, except for Microsoft PowerPoint. Operating System: Ubuntu Linux running KDE Development Environment: KATE Compiler: AVR-GCC AVR Programmer: AVRdude Signal Generation: Siggen

  23. REFERENCES Atmel Corporation, ATtiny261/461/861 Datasheet, November 7th 2006, Retrieved from: http://www.atmel.com/dyn/resources/prod_documents/doc2588.pdf Atmel Corporation, Digital Filters with AVR, July 16th 2008, Retrieved from: www.atmel.com/atmel/acrobat/doc2527.pdf NonGNU.org, AVR Libc Online Manual, Retrieved from: http://www.nongnu.org/avr-libc/user-manual/index.html

More Related