Crystal Oscillators Explained

We’ve read a lot about oscillators, but crystal oscillators seem to be a bit of a mystery. Hobby-level books tend to say, build a circuit like this and then mess with it until it oscillates. Engineering texts tend to go on about loop gains but aren’t very clear about practice. A [circuit digest] post that continues a series on oscillators has a good, practical treatment of the subject.

Crystals are made to have a natural resonant frequency and will oscillate at that frequency or a multiple thereof with the proper excitation. The trick, of course, is finding the proper excitation.

The post starts with a basic model of a crystal having a series capacitance and inductance along with a resistance. There’s also a shunt or parallel capacitor. When you order a crystal, you specify if you want the resonant frequency in series or parallel mode — that is, which of the capacitors in the model you want to resonate with the inductor — so the model has actual practical application.

By applying the usual formula for resonance on the model you’ll see there is a null and a peak which corresponds to the two resonance points. The dip is the series frequency and the peak is the parallel. You can actually see a trace for a real crystal in a recent post we did on the Analog Discovery 2. It matches the math pretty well, as you can see on the right.

Measure As Little As You Want With OpenQCM

The clever folks over at [Novaetech SRL] have unveiled openQCM, their open-source quartz crystal microbalance. A QCM measures very minute amounts of mass or mass variation using the piezoelectric properties of quartz crystal. When an object is placed on the surface of this sensor, the changes in the crystal’s resonant frequency can be detected and used to determine its mass in a variety of experimental conditions (air, vacuum, liquid). However, most QCM technology is proprietary and pricey – at least US\$3000 for the microbalance itself. Any consumables, such as additional crystals, cost several hundred dollars more.

The openQCM has a sensitivity of 700 picograms. At its core is an Arduino Micro with a custom PCB. The board contains a 10K thermistor for temperature offset readings and the driver for a Pierce oscillator circuit. The quartz crystal frequency is determined by hacking the timer interrupts of the Arduino’s ATmega32u4. An external library called FreqCount uses the clock to count the number of pulses of the TTL signal in a 1 second time frame. This yields quartz crystal frequency resolution of 1Hz. The user interface is built in Java so that data can be read, plotted, and stored on your computer. The entire casing is 3D-printed, and it appears that the sensors are standard oscillator crystals without their cases.

Simplistic design makes assembly and maintenance a breeze. It only weighs 55 grams. Replacing the quartz crystal requires no special tools due to the clip system. The openQCM can be used as a single unit, or in multiples to form a network for all of your precise measurement needs. While they have kits available that will set you back US\$500, all of the files and schematics for 3D-printing, assembly, and the PCB are available on the openQCM site for free.