User:Xeo Ann/ENES-100/Project 0: Arduino Projects

Problem Statement
As a introduction to Engineering Design, we were give an Arduino Uno, a breadboard, and access to items in the lab. Our first project is to make the program the Arduino to do something. This project is completely up to the student's discretion. Because I worked on Arduinos a few years back, I had some spare items that I can try to make use of. I found a passive infrared receiver as well as a "BlinkM" LED module. I decided to use these to create a silent alarm using the receiver as a sensor to make the LED blink whenever it senses movement.

Team Members
Batong, Jovy

Summary
The Arduino software can be downloaded in the Arduino main site. The information for the BlinkM I2C Smart LED can be found in the ThingM website. The tutorial for the detector can be found here. A powerpoint of my troubleshooting can be found here.

Week1 Narrative
I downloaded the program from the Arduino website while looking up the specifications for the BlinkM through their site. I went ahead and connected the BlinkM to the Arduino. The wiring was simple enough (see Figure 1). An alternate way to connect the BlinkM is by plugging it straight into the Arduino (see Figure 2). This allowed me to go ahead and program the BlinkM and have it blink in sequence.

In addition to that, I started looking over what is required for the Passive Infrared Detector. A 10k resistor and some wires are required to connect the PID to the Arduino. More wires will be necessary to connect the BlinkM as well in order to have it blink when the detector senses movement. I decided to program the BlinkM to flash like a police siren using their SEQUENCER tool, which can be found linked in their guide. I also tried manually programming it through the Arduino, but found that this was time consuming.

Week2 Narrative
I acquired the necessary components and have connected the detector to the Arduino following this tutorial. Despite me trying to trigger the detector, the LED connected on pin 11 did not blink. I changed the program to have pin 11 constantly high, and the LED stayed on (which shows that the LED was working fine). I then checked the serial monitor on the Arduino and saw that the readings were constantly 1023. I was afraid that the detector may be faulty, so I re-checked the connections. Everything is correct, according to the website. Further troubleshooting showed me that the site was misleading. The PWR should be the top wire, the GND is in the middle, and the ALARM is the bottom wire. I re-wired the detector and had it working properly. I also found that one of the wires was damaged, and so I had an open connection to the ground. This was what gave me the constant 1023 reading.

After completing that, I wired the BlinkM to flash whenever the detector sensed movement (See Figure 3). Initial testing showed that this worked well. Unfortunately, the wires are easily removed. If I wanted to keep this, I would have to install header pins onto the Arduino and solder the components to the pins.

Week3 Narrative
Professor Plotnick wanted me to work on another project and gave me a Raspberry Pi. I decided to go ahead and find information on the Pi. The quick start guide from the Raspberry Pi website was useful in setting up the Pi. I had to reformat the SD card due to it having a password on it. I then went ahead and practiced programming on the Pi using python. I accessed tutorials on http://docs.python.org and wrote a simple "Hello World" program. Another e-book to read is Learn Python The Hard Way. This was useful in teaching me to program items that are more complicated.

Material List
10k Resistor Breadboard Wires Arduino Uno BlinkM Passive Infrared Detector Raspberry Pi

Next Steps
Connecting the Arduino to a sound shield and speakers in order to have the alarm have a siren would be ideal.