miércoles, 10 de febrero de 2016

LOVE O METER

En este proyecto hemos utilizado 3 resistencias de 220 ohmnios cada una, 3 diodos led, varios cables, placa arduino y placa board, y por último un elemento nuevo que no habíamos utilizado antes, un sensor que detecta la temperatura, en concreto los cambios de la misma. Con todo ello hemos conseguido que poner el dedo en el sensor, este detecta el calor humano y a medida que la temperatura va aumentando, se van encendiendo los diferentes led (en función a los valores que hemos fijado). A medida que la temperatura aumentaba, también lo hacía el número de leds encendidos, como se muestra  en el siguiente vídeo.



/*
  Arduino Starter Kit example
 Project 3  - Love-O-Meter

 This sketch is written to accompany Project 3 in the
 Arduino Starter Kit

 Parts required:
 1 TMP36 temperature sensor or LM35DZ
 3 red LEDs
 3 220 ohm resistors

 Created 13 September 2012
 by Scott Fitzgerald

 http://arduino.cc/starterKit

 This example code is part of the public domain 
 */

// named constant for the pin the sensor is connected to
const int sensorPin = A0;
// room temperature in Celcius
const float baselineTemp = 20.0;

void setup(){
  // open a serial connection to display values
  Serial.begin(9600);
  // set the LED pins as outputs
  // the for() loop saves some extra coding
  for(int pinNumber = 2; pinNumber<5; pinNumber++){
    pinMode(pinNumber,OUTPUT);
    digitalWrite(pinNumber, LOW);
  }
}

void loop(){
  // read the value on AnalogIn pin 0 
  // and store it in a variable
  int sensorVal = analogRead(sensorPin);

  // send the 10-bit sensor value out the serial port
  Serial.print("sensor Value: ");
  Serial.print(sensorVal); 

  // convert the ADC reading to voltage
  float voltage = (sensorVal/1024.0) * 5.0;

  // Send the voltage level out the Serial port
  Serial.print(", Volts: ");
  Serial.print(voltage);

  // convert the voltage to temperature in degrees C
  // the sensor changes 10 mV per degree
  // the datasheet says there's a 500 mV offset
  // ((volatge - 500mV) times 100) for tmp36
  // ((volatge) times 100) for LM35DZ
  Serial.print(", degrees C: "); 
  float temperature = (voltage) * 100;
  Serial.println(temperature);

  // if the current temperature is lower than the baseline
  // turn off all LEDs
  if(temperature < baselineTemp){
    digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
  } // if the temperature rises 2-4 degrees, turn an LED on 
  else if(temperature >= baselineTemp+2 && temperature < baselineTemp+4){
    digitalWrite(2, HIGH);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
  } // if the temperature rises 4-6 degrees, turn a second LED on  
  else if(temperature >= baselineTemp+4 && temperature < baselineTemp+6){
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, LOW);
  } // if the temperature rises more than 6 degrees, turn all LEDs on
  else if(temperature >= baselineTemp+6){
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, HIGH);
  }
  delay(1);
}




jueves, 4 de febrero de 2016

THEREMIN DE LUZ 2

En esta práctica hemos investigado en el programa y cambiando la función delay, que se encuentra al final, hemos conseguido que cambie la tonalidad del altavoz. De tal forma que si lo ponemos a 1 el sonido es muy grave y seguido, y cuando lo pusimos a 1000 el tono era más agudo y más intermitente.

VÍDEO delay 1








VÍDEO delay 1000






THEREMIN DE LUZ

En esta práctica hemos utilizado además de los materiales habituales como cables o placa arduino y placa board, hemos usado un altavoz, una LDR, y una resistencia de 10 kOhmios.
Con ello hemos conseguido que al poner la mano encima de la LDR, esta detecta sombra y cambia el sonido como se muestra en el siguiente video.

El programa es el siguiente:

/* Arduino Starter Kit example Project 6 - Light Theremin This sketch is written to accompany Project 6 in the Arduino Starter Kit Parts required: photoresistor 10 kilohm resistor piezo Created 13 September 2012 by Scott Fitzgerald http://arduino.cc/starterKit This example code is part of the public domain */ // variable to hold sensor value int sensorValue; // variable to calibrate low value int sensorLow = 1023; // variable to calibrate high value int sensorHigh = 0; // LED pin const int ledPin = 13; void setup() { // Make the LED pin an output and turn it on pinMode(ledPin, OUTPUT); digitalWrite(ledPin, HIGH); // calibrate for the first five seconds after program runs while (millis() < 5000) { // record the maximum sensor value sensorValue = analogRead(A0); if (sensorValue > sensorHigh) { sensorHigh = sensorValue; } // record the minimum sensor value if (sensorValue < sensorLow) { sensorLow = sensorValue; } } // turn the LED off, signaling the end of the calibration period digitalWrite(ledPin, LOW); } void loop() { //read the input from A0 and store it in a variable sensorValue = analogRead(A0); // map the sensor values to a wide range of pitches int pitch = map(sensorValue, sensorLow, sensorHigh, 50, 4000); // play the tone for 20 ms on pin 8 tone(8, pitch, 20); // wait for a moment delay(10); }

VÍDEO Y FOTOS:







miércoles, 27 de enero de 2016

RECIBIENDO AL ORDENADOR

En esta práctica hemos utilizado un led y la placa arduino conectada al ordenador. Cuando escribíamos H (high), el led se encendía y cuando poníamos L (low), se apagaba. Así lo mostramos en el siguiente vídeo.





martes, 26 de enero de 2016

ENVIANDO AL ORDENADOR

En esta práctica hemos utilizado una placa arduino que hemos conectado al ordenador con el cable. hemos copiado un código con el cual  abriendo el monitor serial en herramientas aparece un mensaje(hola caracola).









jueves, 21 de enero de 2016

CALIBRACIÓN DE SENSORES

En esta práctica, parecida a la de la LDR, hemos usado varios cables, dos resistencias, leds... para conseguir que al regular el potenciómetro el led se apagara o se encendiera. Cuando ponemos la mano en la LDR disminuía la intensidad del led.







miércoles, 20 de enero de 2016

LDR

En esta práctica usando una LDR, y los elementos de siempre (placa board, arduino, led, resistencia...) para conseguir el siguiente resultado:
- Cuando tapamos la LDR para que detecte oscuridad, el led se ilumima.
- Por tanto al destapar la LDR, el led disminuye su intensidad luminosa.