Here is a book on getting started with Arduino. If you are looking for additional resources it might be helpful.
http://shop.oreilly.com/product/9780596155520.do
Here is a book on getting started with Arduino. If you are looking for additional resources it might be helpful.
http://shop.oreilly.com/product/9780596155520.do
To find out the resistance value of a resistor, you use the colored bands. There are “resistor color code calculators” online where you enter the band colors and it tells you the resistance.
One such website:
http://www.hobby-hour.com/electronics/resistorcalculator.php
If you try to enter the colored bands backwards, then it either won’t work or it will tell you that you have entered them backwards.
Also, remember that we only gave you a few different resistors in the course lab kit, so if you are getting a resistance value other than that then there might be some mistake – double check that you got the colors right.
This is where you will put a description of your assignment. Write a couple paragraphs describing your approach. What does it do? Why did you choose this approach over others? What problems did you run into?
Example:
To build this coffee roaster, I started with a popcorn air popper. This is a common entry level method for roasting coffee. As can be seen in the photo, I removed the plastic body as these tend to melt at the higher temperatures. The popcorn popper is heated with a simple coil and the air is blown by a simple DC motor. I separated the power going to the motor and the coil so that I would be able to control each separately. Right now, I am controlling the heat from the coil with a dimmer switch, but the next version will control it with the Arduino and a relay.
On the Arduino side, I used an Arduino Mini 3.3V. I chose a 3.3V Arduino instead of the regular 5V because I intend to connect an LCD screen as a readout and it takes 3.3V, so it is just easier to use a 3.3V Arduino than use a bunch of resistors to limit the voltage.
The Arduino probes the temperature in the roaster with a thermistor. Although it is a 10kΩ thermistor at 25 degree C, I found that at the range of 400 degree F, the resolution was not sufficient when using a 10kΩ pad resistor. Doing some calculations, I found that in order to maximize the resolution in the range of 400-480 degrees, I needed a pad resistor somewhere in the 50-100Ω range. Luckily I had a 67Ω resistor sitting around.
List what you used in your assignment.
Example:
1- Arduino Pro Mini 3.3V
1- Thermistor
1- 67 Ω Resistor
1- Breadboard
1- Popcorn Air Popper
1- 15000W Light dimmer
1- 19.5V DC power supply
Insert your code here.
#include <math.h> #include <Timer.h> #include <LiquidCrystal.h> #define temperaturePin A0 //input pin for the orange temperature //(RS,E,D4,D5,D6,D7) LiquidCrystal lcd(7, 6, 5, 4, 3, 2); int degreeC = 0; int maxTemp = 0; String roastLevel = "Green"; Timer t; void setup() { Serial.begin(9600); lcd.begin(16, 2); lcd.print(roastLevel); } void loop() { degreeC = readTemperature(); if(degreeC > maxTemp){ maxTemp = degreeC; roastLevel = rLevel(maxTemp); lcd.setCursor(0, 0); lcd.print(roastLevel); } lcd.setCursor(0, 1); lcd.print(degreeC); lcd.setCursor(0, 8); lcd.print(millis()/1000); Serial.print(degreeC); Serial.print(" degree n"); Serial.println(roastLevel); Serial.println(); Serial.println(); delay(1000); } String rLevel(int temp){ if(temp < 270) { return "Green"; } else if(temp < 327) { return "Pale"; } else if(temp < 345) { return "Yellow"; } else if(temp < 370) { return "Light Brown"; } else if(temp < 393) { return "Brown"; } else if(temp < 401) { return "1st Crack?"; } else if(temp < 415) { return "1st Crack"; } else if(temp < 426) { return "CITY"; } else if(temp < 435) { return "CITY +"; } else if(temp < 444) { return "FULL CITY"; } else if(temp < 454) { return "FULL CITY +"; } else if(temp < 465) { return "VIENNA"; } else if(temp < 474) { return "French"; } else if(temp < 486) { return "Starbuck"; } } double readTemperature() { /* Honewell 135-103LAG-J01 http://sensing.honeywell.com/index.php?ci_id=3108&la_id=1&pr_id=53805 Resistance 10,000 Ohm Tolerance ±10.0% Accuracy 25 °C [77 °F] Beta 25/85 3974 Operating Temperature -60 °C to 300 °C [-76 °F to 572 °F] Diameter 2,0 mm [0.080 in] Termination Material Tinned copper-clad steel Lead Length 28,6 mm [1.125 in] Time Constant in Air 4.0 s Dissipation Constant 2,5 m/W°C Series Name 135 */ // Calibration // 120 C 264.46 R // 140 C 176.97 R * // 160 C 111.00 R // 180 C 75.78 R // 200 C 64.30 R * // 220 C 45.57 R // 240 C 33.25 R * const double A = 0.0013514225374904882; const double B = 0.00013995347172609127; const double C = 0.000002485131588719009; double senReading = 0; double R; double lnr; double tempK; double tempC; double tempF; senReading = analogRead(temperaturePin); // Serial.println(senReading); R = 66.6*((1024/senReading) - 1); Serial.println(R); lnr = log(R); tempK = 1 / (A + B * lnr + (C * lnr * lnr * lnr )); tempC = tempK - 273.15; // Convert Kelvin to Celcius // Serial.print(tempC); // Serial.println(" C"); tempF = tempC * 9.0/ 5.0 + 32.0; // Convert Celcius to Fahrenheit return tempF; }
Insert your image links if not attached.
Insert a video link when necessary.
I realized I need some diodes but I don’t have time to order them and wait for shipping. Help!
I used Arduino with a green LED. I changed the code to lighting up for 2 seconds and then off for 4 seconds. Uploaded the code and made sure that it has changed.
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // Pin 13 has an LED connected on most Arduino boards. // give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(2000); // wait for 2 second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(4000); // wait for 4 second }