NDIR Based Co2 Meter

The next review is about a home-built Co2 meter, which is built on the concept of NDIR. NDIR stands for non-dispersive infrared sensor which is a simple spectroscopic device often used as gas detector. It is called non-dispersive because wavelength which passes through the sampling chamber is not pre-filtered instead a filter is used before the detector. We already have NDIR based gas-modules which are a common type, small size sensor, using non-dispersive infrared (NDIR) principle to detect the existence of CO2 in the air, with good selectivity, non-oxygen dependent and long life.

The sensor used is a MH-Z14 IR module which outputs a PWM wave based on the level of gas detected. It has a sensitivity of 0 to 2000ppm Co2. For those who are interested in the project an inbuilt library has been provided for the AVR Mega controller whose main job is to read PWM and with the help of some mathematical operation, that are not too hard to derive, the level of Co2 is displayed. A rather simple project but it can act as a base who are needs level of Co2 in their projects.

ATmega88 based POV weather station generates its own power

We like POV(Persistence of Vision) projects – specially those with unique ways to transmit energy to the turning row of LEDs (Light Emitting Diodes).

This POV however beats the rest that we have seen so far – this one is a freakin weather station. Instead of displaying graphics this POV displays the current temperature and relative humidity. And the best thing we like about this guy? It generates its own energy!

It uses a stepper motor as a generator, when a stepper motor is turned current flow through its wires. It is then rectified using a set of diodes and stored into a 6 – capacitor charge bank. The Charged stored in the bank is then fed to a  TPS5420 buck converter that outputs 3.5V – just enough to drive the ATmega88 microcontroller and the 8 – LED array. The ATmega88 is operating at 10MHz while it gathers humidity and temperature data from an SHT21 using I2C protocol. To sync when to start displaying, it uses a hall effect sensor from an old floppy drive  – this is used to determine absolute position of the blades. Talk about renewable energy on weather forecasting!

A microcontroller based DDS function generator using an AD9833

First what do we mean by DDS – DDS stands for direct digital synthesis. A DDS chip generates a waveform from an internal ROM with table. The ROM table could contain square, triangular, sawtooth or sine wave forms. A high frequency oscillator is used to drive a DDS chip – the high frequency clock is taken into a large internal divider that in turn would generate clock signals of less than 1Hz. The derived low frequency signal will be used to tell the on-chip digital to analog converter to go to the next value on the ROM table.

A DDS Function Generator

This particular project makes use of the AD9833 DDS sinewave generator from analog devices. A 50MHz clock was used to drive the AD9833 while an ATmega32 was used as the main controller that takes user input though a numeric keypad, displays the current output through a 16×2 liquid crystal display (LCD) and communicates with the AD9833 through 3 wire SPI. The challenge in building the project comes with the fact that high speed waveforms are difficult to amplify and easily gets infested with noise. An LM7171 was used to amplify the 400mV signal to +-15V, the design also includes proper placement of  components such as decoupling capacitors that needs to be very close to the integrated circuits.


A microcontroller based automobile digital RPM meter

Some of the smaller cars available today does not have an RPM meter on them – this would be some trouble since you wont be able to determine the actual speed of the car’s engine, thus will have an impact on the fuel consumption since engines are efficient at a certain range of shaft speed.

This project makes use of an AVR microcontroller and a signal conditioning circuit that makes use of an LM324 operational amplifier (Op-Amp). The input signal was taken from the High Voltage (HV line) of the main distributor of the engine. This specific point was chosen since all (gasoline) engines have an HV line. The signal from the HV line is fed into the signal conditioning circuit before being fed to the microcontroller’s PB1 pin. The Timer/Counter1 External Counter Input mode of the PB1 pin is used as an external clocking source for the MCU’s timer1 making it able to do frequency measurements. While another timer (timer0) is used to measure the elapsed time.

If you wonder whats in the HV line that makes it a good measuring point, the HV line is where the spark plug gets its energy from. Thus a spark in the in one of the sparkplugs corresponds to a surge in the HV line – and since the engine’s revolution rate is directly proportional to the number of sparks we can easily calculate the engines rate of revolution by just counting the number of pulse surges in the HV line and how are they distanced from each other.

One thing to note about using the HV lines is that if they are come in contact with ground, or close to it, the engine could stop.