BUILD A 6 CHANNEL OSCILLOSCOPE WITH JUST ARDUINO


HOPE YOU ARE REALLY INTRESTED IN KNOWING WHAT IS AND OSCILLOSCOPE. OR WHY DO WE NEED AN OSCILLOSCOPE. BASICALLY OSCILLOSCOPE IS A DEVICE THE TAKES AND VOLTAGE INPUT AND DISPLAYS IT IN A GRAPH WITH THE VOLTAGE IN Y AXIS AND TIME IN X AXIS..PLS GOOGLE FOR VIDEOS OR PICTURES OF WORKING OF OSCILLOSCOPE IF U DONT UNDRSTAND.

Introduction

A good friend one time debug circuit and at the same time demo a scope done using Arduino. Interesting stuff! You can visit his blog Arduino For Beginners and get lots of information about Arduino!

Only until today I did give Arduino scope a try.its a long process but it is fantastic once it get running.

Highly recommended for every home engineers. A multimeter is good to certain extent. It has it advantages.

But showing a value in graph form and Current value as well as past value, is not one of them. Having a real oscilloscope easily set us grand amount of money.
Anyway, a little bit of background. For those who are already familiar with Arduino. Do you guys know that Arduino is actually based on a platform called Processing?(PROCESSING is an IDE similiar to ARDUINO IDE. But the truth is ARDUINO IDE EVOLVED FROM PROCESSING IDE).
Arduino scope make use of both Arduino board and Processing IDE. We will upload a sketch to Arduino board. This cause the board to read voltage value from analog I/0 pin and send it back to PC using serial communication.

On the PC side. We will open up Processing and run a sketch . The sketch run on PC, listen to the first serial port to accept voltage reading and display it graphically.

That’s it in a nutshell. So let see how to set it up

Tutorial

Step 1

I am assuming that you guys already have Arduino IDE installed

(IF U DONT HAVE ARDUINO IDE INSTALLED PLS DOWNLOAD AND UNZIP IT AND OPEN THE ARDUINO.EXE FILE)

TO DOWNLOAD THE PROCESSING IDE CLICK THE LINK download processing.

Extract the downloaded zip file to somewhere convenient. If u unzip it u will fine a processing .exe file.  Run the processing .exe file once so that the IDE will create its folders by itself in my documents  folder. IT IS NEEDED FOR NEXT STEPS)

Upon first run, it will create a folder in user document folder named “Processing”. User document folder is “My Documents” folder.

Step 2

Just like Arduino (or the other way around, Arduino is like Processing). Processing make use of libraries to make our live easier. Arduinoscope itself is a library. It make use of another library called ControlP5. Which provide graphical UI element for user interface. Need to download  ControlP5 

create a “libraries” folder inside the folder  “[My Documents]\Processing”.
Extract the downloaded zip file into “libraries” folder in “[My Documents]\Processing”.  Location of [My Documents]\Processing folder is as mentioned in previous step. Make sure that you have “[My Documents]\Processing\libraries\controlP5” folder after executing this step.

u will see 4 sub folders inside the extracted folder “controlP5”

Step 3

As mentioned above, Arduinoscope itself is a library. We need to download it too!

you will need to download 2 files

first one is processing library

After download is complete extract contents of processing library to  “[My Documents]\Processing\libraries\arduinoscope”.

Folder name must be “arduinoscope”. This is important, otherwise won’t work!

Step 4

Now we need to download the  Arduino patch

In this step download the Arduino patch. Basically it is a .pde file with exact file name of “arduinoscope.pde”.

Create a folder named “arduinoscope” in Arduino  folder and copy the sketch there.

Arduino sketch folder is located in “[My Documents]\Arduino\”.

Now it is time to run Arduino IDE. Then open up the sketch from menu File>Sketchbook>arduinoscope. Upload this sketch to Arduino compatible board.

u can also simplify this step by coping the entire text from arduinoscope.pde and pasting them to arduino ide and uploading it or
you can still browse and open using File>Open menu.

At the end of this very long step. Make sure that you have an Arduino board (Duemilanove or Uno or any compatible board) uploaded with the Arduino patch. This board will run and continuously send analog voltage reading to the PC using USB. This reading is going to be read in next step.

Step 5

Back to processing IDE. In the IDE we are going to open up the sketch that is responsible for reading the serial value from first found com port. This value came from Arduino board as described in previous step. The sketch will show a graph as what we expect from an oscilloscope.

So go ahead and open up a sample sketch by doing File>open>>Documents>Processing>libraries>arduinoscope>examples>SimpleSerialArduinoscope>SimpleSerialArduinoscope.pde

Before running the sketch. Note that in Processing, there is only run button but no upload button. Processing runs sketch in the PC.

but Arduino only runs sketch on a remote Arduino board. Hence the upload button for Arduino and no such button in processing.

Run the sketch! This will open up another window with graphical oscilloscope interface.

Step 6

We have a sketch on the PC showing oscilloscope. On the other end we have Arduino board running. So how do we test?

What happening is that the Arduino board is sampling voltage value on analog I/O pin 1 to 6 in a loop. Since at the moment, nothing is connected to  the pins. The values are sort of zero with a little bit of background noise.

To test, connect 5V pin to analog I/O pin 1. Immediately our Arduinoscope running in PC will show readings in the area of 5v. Disconnect 5V pin and connect it to 3v3 pin. This will cause reading to drop down to 3V3 level.

THE DATA GIVEN ABOVE TO MAKE A 6 CHANNEL OSCILLOSCOPE USING ARDUINO IS TAKEN AND SIMPLIFIED FROM THE BELOW LINK. ADVANCED USERS WHO NEED TO HAVE A LOOK KINDLY CLICK THE LINK BELOW

http://www.homebrew-tech.com/arduino/brewing-arduino-announcement/usingarduinoasoscilloscope-arduinoscope

HOPE THIS PROJECT HELPS YOU.

4 Responses to BUILD A 6 CHANNEL OSCILLOSCOPE WITH JUST ARDUINO

  1. lorentz says:

    Currently few links aren’t working as the source has deleted those files.

    • ponvannan raghavan says:

      dude can you mail me the library files to me, because i have tried all websites but i can a correct arduinoscope library. so, can you ?

  2. ponvannan raghavan says:

    int id = theEvent.controller().id(); returns the method controller() from the type ControlEvent is deprecated. what is this error dude…

  3. Anees says:

    hi, use the following instead:
    int id = theEvent.getId();

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s