Arduino boards have Atmel microcontrollers on them.
Microcontrollers can be programmed to measure analog signals.
They can communicate with other digital devices such as analog to digital converter integrated circuits and computers.
They can use inputs from sensors to send outputs to control things.
We will use a microcontroller with balloons to sample the atmospheric pressure, temperature, RH, and CO2.

Software:
Download the Arduino software.
Cool term software for reading data from the Arduino.

Manual that works with the parts kit we use in class:
Direct link
Local backup.

The plan is:
1. Introduction and LED lighting and blinking
2. PWM, servo motor, and motor
3. Light sensing with a cadmium sulfide detector.
4. Temperature and wet bulb temperature measurement to get relative humidity and lifting condensation level.
4. I2C communication with digital sensors, especially the IR sensor. Here's the data sheet.
5. Interfacing Arduino with Labview.

Start by ...
Download this zip file. Unzip it. Place the contents in the USB drive.
Run the Arduino IDE. Under preferences, choose the "UseForArduino" folder on the USB drive. Restart the Arduino IDE.
We'll do some introductory examples from the text book first.
Then we'll use the Labview program to visualize the Arduino output, and save the temperature measurements (XP executable).

Useful Related Information


TED Video describing the Arduino.


Figure 1. Arduino board with Atmel microcontroller. Adapted from http://krokus8840.dk/boje/arduino/uno-tilslutninger.

 

Useful Presentations Collected from Others.
Microcontroller fundamentals.
What is Arduino, view 1?
What is Arduino, view 2?
Spark fun intro to Arduino.
Spark fun data collection with high altitude balloons.
Maker and Arduino philosophy.

Thermal IR Sensor

Thermal IR sensor: Infrared radiation arriving at the sensor is converted into an equivalent temperature.
Adafruit's adaption of the sensor will be used
. Here are the pin assignments and the wiring set up for Arduino from the Adafruit site.

Follow these steps to get the Arduino code set up properly for this sensor, so the data can be read with Labview.

1. Go to the Adafruit site describing the sensor use.

2. Scroll down and find the button for downloading the library.
3. Start the Arduino IDE. Add the Adafruit library following these steps.
4. Then open the MLX90614 example sketch. The loop should look like this:

Modify the loop to look like this:

5. Wire up the sensor and run the Sketch. Look at the output with the Serial Monitor. Then download the Labview program to view the data in graphical form, and to save it.

WINDOWS VERSION

Here is an executable software package to use the sensor with Ardunio and Labview to visualize the temperature sensor output. This is the windows version of the executable to be used for those that checked out an Arduino kit for the weekend to do measurements of the atmosphere over this time.

MACINTOSH VERSION (Includes detailed instructions)

Here is an executable software package to use the sensor with Ardunio and Labview to visualize the temperature sensor output. This is the Macintosh version of the executable to be used for those that checked out an Arduino kit for the weekend to do measurements of the atmosphere over this time.

Here's the Arduino IDE code for the sensor, and the source code for the Labview program to visualize the temperature time series.
(Simplest labview example)

SCL pin

Implementation of the sensor with the Teensy 3.1 microcontroller.

 

Useful and Related Information:

I2C communications summary. (Inter Integrated Circuit digital data bus communications protocol).

Pull up resistors: how and why they are used.

Example of using I2C to have an Arduino talk with 3 temperature sensors.


Here's the schematic of a IR sensor, from here.
The silicon filter passes IR radiation.
The blackbody absorbs IR radiation and heats up.
A thermopile (thermocouples connected in series) is below the blackbody; it provides a small voltage, perhaps microvolts.
The thermistor measures the overall chip temperature, and that is the thermopile reference junction temperature.

Pressure sensor

Pressure sensor data sheet.

Example Arduino code for the pressure sensor.

Thermistor Sensor

Gikfun 100K ohm NTC B4267 ATC Semitic 104GT-2 Thermistor for 3D Printer Reprap EK9018

Data for resistance versus temperature for our thermistor; Spreadsheet for calculation.

Discussion of negative temperature coefficient thermistor.

Example Arduino code for the thermistor sensor.