martes, 29 de octubre de 2013

Servo y Potenciometro

En esta ocasión vamos a ver como conectar un Servo a la placa de Arduino y controlarlo con un potenciometro.


Para eso veamos el diagrama de conexion:






El funcionamiento es muy sencillo ya que contamos con la libreria "Servo.h" de Arduino,, Se conecta el potenciomentro en un puerto analogico, en este caso al puerto "0", así que leemos el valor y lo guardamos en la variable potpin , y con el valor de esta variable escribimos en la salida del Servo,,


El codigo:

#include <Servo.h>
Servo myservo;  // se crea el objeto Servo
int potpin = 0// definimos la variable potpin en el puerto 0
int val;
void setup()
{
    myservo.attach(9);  // definimos el servo en el pin 9
}
void loop()
{
    val = analogRead(potpin); //  leemos el potenciometro, lo cual arroja un valor entre 0 y 1023
val = map(val, 0, 1023, 0, 179);     // aca definimos la escala para usar en el servo entre 0 y 180
myservo.write(val);                  //  posicionamos el servo con la variable leida
delay(15);                           //  un delay para que el servo se posicione.
}






lunes, 28 de octubre de 2013

Arduino Ethernet



Buenas buenas!.

Estoy experimentando con el Web-Server de Arduino,


Para eso utilizo la placa de Arduino-Uno y un Shield Ethernet.


En las primeras dos fotos pueden ver la placa arduino-uno y el shield Ethernet


En esta otra, observar el detalle de las dos placas montadas.




En este ejemplo vamos a conectar la placa por ethernet a nuestra red hogareña.


Pasemos al codigo!


#include <SPI.h> #include <Ethernet.h> byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; IPAddress ip(192, 168, 1, 17); // Configurar el IP de acuerdo a la red de c/uno EthernetServer server(80); // Configuramos el server en el puerto 80 void setup() { Ethernet.begin(mac, ip); server.begin(); Serial.print("server is at "); Serial.println(Ethernet.localIP()); } void loop() { EthernetClient client = server.available(); if (client) { Serial.println("new client"); boolean currentLineIsBlank = true; while (client.connected()) { if (client.available()) { char c = client.read(); Serial.write(c); if (c == '\n' && currentLineIsBlank) { client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println("Connection: close"); client.println(); // send web page client.println("<!DOCTYPE html>"); client.println("<html>"); client.println("<head>"); client.println("<title>Arduino Web Page</title>"); client.println("</head>"); client.println("<body>"); client.println("<h1>Hola a todos desde Arduino!</h1>"); client.println("<h1> elrincondearduino.blogspot.com.ar</h1>"); client.println("<p>A web page from the Arduino server</p>"); client.println("</body>"); client.println("</html>"); break; } if (c == '\n') { currentLineIsBlank = true; } else if (c != '\r') { currentLineIsBlank = false; } } } delay(1); // client.stop(); } // end if (client) }




Este codigo basicamente es el que podemos encontrar en Archivo-->Ejemplos-->Ethernet--->WebServer con algunas modificaciones.


La resultante es la siguiente:






La próxima vamos a conectarlo a internet y agregar un poco de control :)

Espero que les haya gustado!

Saludos!!

domingo, 27 de octubre de 2013

Comenzando con Arduino

Bueno,

Ahora vamos conocer un poco la placa de Arduino-Uno








Bueno, como podrán observar, la placa es muy amigable, cuenta con un conector USB del tipo "B", el cual nos sirve para conectar la placa a la computadora para programar y alimentarlo, y tambien tiene un conector jack dedicado para alimentación, esto es util cuando hacemos algún proyecto y lo alimentamos independientemente,

Contamos con una serie de puertos como 6 entradas analógicas, 14 digitales dentro de las cuales tenemos 6 con salida PWM (modulación de ancho de pulso), mas unos pines con salida 5V, 3V3, y GND.

Es bueno destacar que la salida digital numero 13, ya tiene un led SMD integrado en la placa, por eso verán que ese puerto se utiliza mucho ya que tenemos un indicador visual integrado con la placa,
Tambien tenemos dos led de RX/TX para monitorear la comunicación Serial.


Ahora veamos el IDE.


El IDE de Arduino es muy simple y sensillo,, está disponible para Win/Linux/MacOSX
Al mismo lo pueden descargar de acá

Este es el primer vistazo al IDE
Debemos setear el tipo de placa a utilizar, en Herramientas ---> Tarjeta --> Arduino Uno
Y el puerto serie de conexión, Herramientas ----> Puerto Serie --> (el que corresponda)









Estos son los botones de interacción, donde tenemos que:


 Con este boton comprobamos / compilamos un código
Con este otro, enviamos el código a nuestra placa Arduino

 Creamos un código nuevo, Cargamos y Guardamos de/hacia un archivo el código

Este es uno de mis botones preferidos, jaja, ya que es un monitor Serial, es muy util para leer las variables que estamos utilizando, como un sensor de temperatura, potenciometro, o cualquier otro conectado a un puerto analógico por ejemplo.



**Les recomiendo que miren este archivo, para conocer un poco el lenguaje de programación para Arduino**




sábado, 26 de octubre de 2013

Presentacion

Buenas!


Hace poco tiempo que me decidí a comprar mi primer Arduino-Uno, y he podido experimentar lo simple y sencillo que resulta a la hora de interactuar con periféricos, y lo divertido que resulta a la hora de programar y probar prototipos, ya que tiene una placa muy simple con dos hileras de "hembra", así que solo con unos pocos cables y algunos componentes podemos comenzar.

Con el tiempo, voy a ir compartiendo lo que vaya haciendo con Arduino u microcontroladores PIC

=)