Archivo de la etiqueta: programacion

Arduino Robot: Lottie Lemon


Nuevo robot educativo gracias a la colaboración entre la Asociación de Robótica Educativa Complubot y del equipo de Arduino. Este robot, llamado Lottie Lemon, presenta dos procesadores ATMEGA32U4 (uno en cada una de sus placas) y se encargan tanto de controlar los motores que se encuentran en la placa inferior como de los sensores que se encuentran en la placa superior. La programación de este robot es similar a la programación de un Arduino Leonardo. Os dejo unas fotos de está maravilla educativa en el tema de la robótica.

ArduinoRobot

Robot Lottie Lemon

LottieLemon_figure_hardware_top

LottieLemon_figure_hardware_bottom_back

Para más información podéis visitar los siguientes enlaces: Página oficial Arduino Robot, primeros pasos con Arduino Robot y Librerías Arduino Robot.

Si te ha servido de ayuda esta entrada, puedes realizar un donativo para agradecer el tiempo que dedico al blog y ayudar a hacer más entradas.

donativo_paypal

sensor de temperatura tmp36 y arduino


En esta nueva entrada vamos a ver como usar un sensor de temperatura analógico (emplea uno de los pines analógicos) modelo TMP36 con nuestra placa Arduino, dicho sensor es de la casa Analog Devices y permite realizar unas medidas de temperatura bastante precisas y a un muy reducido coste.

Foto Sensor TMP 36 GZ

Como podéis ver el sensor empleado es de tipo TO-92 (encapsulado como el DS18B20 o el de algunos transistores). Además se caracteriza por ser un sensor que es muy empleado para realizar medidas de temperatura y es muy sencillo de emplear (no hacen falta librerías para su uso). Es un sensor que se puede alimentar entre un rango de voltaje que va desde los 2.7V hasta los 5.5V, viene calibrado directamente en grados centígrados (ºC), presenta un factor de escala lineal de 10 mV/ºC (esto es la relación entre el cambio en la señal de salida y el cambio en la señal de la medida, es decir, cada 10 mV aumenta 1 ºC). Las características generales son:

Caracteristicas TMP36

Aquí os dejo un enlace para que podáis descargaros el datasheet del sensor de temperatura, el esquema en fritzing de conexionado y el sketch de Arduino: http://www.mediafire.com/?c26yr7fk48my0fw

Os pongo el esquema para la conexión del sensor a Arduino:

Conexion Fritzing TMP36

Aquí tenéis un código de ejemplo, de como obtener tanto el voltaje leído por el sensor, como los grados centígrados y los grados fahrenheit, además de mostrar los valores máximos y mínimos para cada una de las medidas mencionadas.

/* Sketch de ejemplo para testear el sensor de temperatura analógico TMP36
 Escrito por Regata para www.tallerarduino.wordpress.com

 MODO DE CONEXIÓN DEL SENSOR

 Conectamos el pin 1 que corresponde a la alimentación del sensor con los 5V del Arduino
 Conectamos el pin 2 que corresponde al pin de datos del sensor con cualquier pin analógico del Arduino
 Conectamos el pin 3 que corresponde al pin de masa (GND) del sensor con el pin GND del Arduino

*/

int temp = 5;  //Pin analógico A5 del Arduino donde conectaremos el pin de datos del sensor TMP36
float maxC = 0, minC = 100, maxF = 0, minF = 500, maxV = 0, minV = 5;  //Variables para ir comprobando maximos y minimos

void setup()
{
  Serial.begin(9600);  //Iniciamos comunicación serie con el Arduino para ver los resultados del sensor
                        //a través de la consola serie del IDE de Arduino
}

void loop()
{
  float voltaje, gradosC, gradosF;  //Declaramos estas variables tipo float para guardar los valores de lectura
                                    //del sensor, así como las conversiones a realizar para convertir a grados
                                    //centígrados y a grados Fahrenheit
                                    
  voltaje = analogRead(5) * 0.004882814;  //Con esta operación lo que hacemos es convertir el valor que nos devuelve
                                           //el analogRead(5) que va a estar comprendido entre 0 y 1023 a un valor
                                           //comprendido entre los 0.0 y los 5.0 voltios
                                           
  gradosC = (voltaje - 0.5) * 100.0;  //Gracias a esta fórmula que viene en el datasheet del sensor podemos convertir
                                       //el valor del voltaje a grados centigrados
                                       
  gradosF = ((voltaje - 0.5) * 100.0) * (9.0/5.0) + 32.0;  //Gracias a esta fórmula que viene en el datasheet del sensor podemos convertir
                                                           //el valor del voltaje a grados Fahrenheit
                                                           
  //Mostramos mensaje con valores actuales de humedad y temperatura, asi como maximos y minimos de cada uno de ellos
  Serial.print("Medidas actuales\n");
  Serial.print("C: "); 
  Serial.print(gradosC);
  Serial.print("\tF: "); 
  Serial.print(gradosF);
  Serial.print("\tV: "); 
  Serial.print(voltaje);
  //Comprobacion de maximos y minimos de humedad y temperatura
  if (maxC < gradosC)
    maxC = gradosC;
  if (gradosC < minC)
    minC = gradosC;
  if (maxF < gradosF)
    maxF = gradosF;
  if (gradosF < minF)
    minF = gradosF;
  if (maxV < voltaje)
    maxV = voltaje;
  if (voltaje < minV)
    minV = voltaje;
  Serial.print("\nMedidas maximas\n");
  Serial.print("C: "); 
  Serial.print(maxC);
  Serial.print("\tF: "); 
  Serial.print(maxF);
  Serial.print("\tV: "); 
  Serial.print(maxV);
  Serial.print("\nMedidas minimas\n");
  Serial.print("C: "); 
  Serial.print(minC);
  Serial.print("\tF: "); 
  Serial.print(minF);
  Serial.print("\tV: "); 
  Serial.print(minV);
  Serial.print("\n\n");
  delay(2000);  //Usamos un retardo de 2 segundos entre lectura y lectura  
}

La salida que obtenemos a través de la consola serie del IDE de Arduino es la siguiente:

Muestra de datos TMP36

Espero que os sirva de ayuda para vuestros proyectos!!

Si te ha servido de ayuda esta entrada, puedes realizar un donativo para agradecer el tiempo que dedico al blog y ayudar a hacer más entradas.

donativo_paypal

OSHWDEM en coruña: 17 de noviembre


Este 17 de Noviembre se celebra en La Coruña un evento con filosofía BarCamp sobre electrónica y Open Source Hardware. Donde habrá talleres sobre:

* Arduino: un taller ideal para la gente que comienza en este mundo, con ejemplos de aplicaciones interesantes. Este espacio será gracias a la colaboración de Jose Rodriguez (@josejarj), integrante de Inestable y culpable de la primera Barcamp gallega sobre Arduino.

* Impresoras 3D: taller sobre impresoras 3D, donde encontrarás varias impresoras Reprap funcionando, y además donde podrás aprender a montarte tu propia impresora y como diseñar e imprimir tus propios objetos 3D. Se contará con la presencia de personajes ilustres como Juan González Gómez (@Obijuan_cube) y Juan Manuel Amuedo (@colepower) del proyecto CloneWars.

* RaspberryPi: Podrás encontrar ejemplos de aplicación de la famosa placa de la mano de Julio Galarón (@jgalaron). Además de contar con Simón Pena (@spenap) que enseñará sus proyectos para móviles Nokia.

* Robótica: Con la presencia de varios robots, entre ellos Orugas de Alejandro Taracido (@TCRobotics), Robbit creado por Fidel Fraga (@guafi), Mini Skybot serie de robots creados por Juan González (@Obijuan_cube), Humanoides Robonova-I robots humanoides comerciales programados por Álex Alfaya (@alexalfaya) y Alejandro Valiñas (@sdaf2) y además de poder presentar tu propio robot.

* Música OSHW: espacio destinado a demostrar las capacidades de Arduino para generar sonido e incluso música. Con la colaboración de Xulio Coira (@xulioc), que también presentará el proyecto OpenPipe.

* Montaje de circuitos: se demostrarán las diferentes técnicas necesarias para construir un circuito electrónico desde cero, desde el esquemático, pasando por el diseño de la placa, la construcción de la placa y el montaje final de los componentes. Con la colaboración de Alfredo Prado (@radikalbytes), uno de los culpables de la Castelao Barcamp organizada en Vigo en Septiembre.

Además se sortearán varios premios entre los asistentes a la OSHWDEM de Coruña!!

Podéis encontrar más información en su blog: http://oshwdem.wordpress.com/ y en su twitter: @OSHWDEM

Nos vemos allí, no faltéis!!!

Si te ha servido de ayuda esta entrada, puedes realizar un donativo para agradecer el tiempo que dedico al blog y ayudar a hacer más entradas.

donativo_paypal

Programar con AVR Arduino


Muy buenas a todos de nuevo. Hoy os traigo un videotutorial creado por Michael HolacheK en el cual nos explica otra forma de programar nuestro Arduino sin necesidad de recurrir a la IDE generado por el Arduino Team. Eso sí, tendremos que cambiar nuestro tan querido USB por el conector ICSP.

Este tipo de conexión es una gran alternativa si nos queremos fabricar una PCB Arduino más pequeña y no necesitamos que lleve incorporado el chip MEGA8U2 para la conversión de datos USB.

Sin más, aquí os dejo el video.

Enjoy!