Archivo de la etiqueta: Electrónica

Arduino tutorials cap 5. Interrupciones internas


Ya llego el 5º capítulo de la serie “Arduino Tutorials”. Hoy os presento las interrupciones internas, como siempre guiadas con tres ejemplos prácticos enfocados a nuestra placa Arduino UNO.

Este capítulo podríamos consideralo como la continuación del capítulo anterior “Cap 4. Interrupciones externas”, ya que también trata del uso de las interrupciones.

Como siempre, aquí os dejo el link para que podáis descargar los documentos adjuntos en el videotutorial para que podáis probarlos en casa.

Sin más aquí os dejo el video, nos vemos en los próximos tutoriales.

Enjoy!

Semana Arduino en Zaragoza por Arduino Academy


Sí señores, esta semana estamos de suerte todos los que nos gusta Arduino, y es que gracias a Arduino Academy, esta semana se realiza por un lado el día 15 un seminario de Arduino y por otro lado un Workshop el día 17. Para el que no se pueda acercar a Zaragoza a ver el seminario lo podrá ver por streaming en los siguiente links:

www.livestream.com/gruposanvalero

http://fsvelectronicainformatica.blogspot.com/

Además, aquí os dejo el panfleto con todo lo que incluyen ambas reuniones.

 

Por último, el lunes tendréis un amplio reportaje de lo ocurrido en el workshop ya que tallerarduino también estará allí para vivir la experiencia y explicaros con todo lujo de detalles lo ocurrido este fin de semana en Zaragoza!!

Enjoy!

led rgb, arduino y processing


Después de ver los videotutoriales de 0xDA_bit sobre Processing, me entró el gusanillo de probar de nuevo este maravilloso software, y decidí hacer el control de un led RGB conectado a Arduino pero modificando sus componentes de color mediante un programa realizado en Processing.

Para realizar dicho cometido me puse a buscar librerias de componentes para añadir a nuestros programas que vayamos realizando en Processing e ir haciendolos más profesionales y más complejos. Dicha librería la podéis descargar desde http://www.mediafire.com/?as8bnrkfk9v8kjf o bien desde la siguiente página web http://www.lagers.org.uk/g4p/.

Os dejo el esquemático de conexión del diodo led RGB a Arduino y también una imagen del software:

Aquí tenéis el video de funcionamiento:

Para el código basta con grabar en el Arduino el ejemplo que trae el IDE de Arduino que está en Firmata y es el StandardFirmata for Uno, y este es el código para processing (acordaros de copiar la librería guicomponents en processing):

//Añadimos las librerias necesarias
import processing.serial.*;
import cc.arduino.*;
import guicomponents.*;

Arduino arduino;
/*Programa simple que crea 3 selectores de color para controlar 
los componentes RGB de un diodo led conectado a Arduino.*/
GKnob knbRed, knbGreen, knbBlue;
int r, g, b; //variables donde guardaremos el valor correspondiente a cada componente de color
int kx, ky;

void setup() {
  size(400, 220);
  arduino = new Arduino(this,  Arduino.list()[2], 57600);  //Creamos el componente para trabajar con Arduino desde el programa 
  //Arriba donde pone Arduino.list()[], el 2 es donde me reconoce a mi el Arduino, puede ser 1 o 0, depende de las cosas conectadas
  //mediante puerto serie virtual
  r = g = b = 160;  //iniciamos cada componente a un valor de 160 (entre 0 y 255)
  arduino.analogWrite(10,r);  //Escribimos dichos valores en los 3 pines asignados para controlar nuestro diodo led RGB
  arduino.analogWrite(9,g);
  arduino.analogWrite(6,b);
  kx = 20;
  ky = 20;
  
  //Creacción y control del programa en processing, viene todo hecho en los ejemplos de la libreria guicomponents
  G4P.setMouseOverEnabled(true);
  G4P.cursor(HAND, CROSS);

  knbRed = new GKnob(this, kx, ky, 150, 150, 270);
  knbRed.setControlMode(GKnob.CTRL_ANGULAR);
  knbRed.setRotArcOnly(true);
  knbRed.setLimits(r, 0, 255);
  knbRed.setNbrTickMarks(9);
  knbRed.localColor = GCScheme.getColor(this, GCScheme.RED_SCHEME);

  knbGreen = new GKnob(this, kx + 8, ky, 150, 270, 20);
  knbGreen.setControlMode(GKnob.CTRL_ANGULAR);
  knbGreen.setRotArcOnly(true);
  knbGreen.setLimits(g, 0, 255);
  knbGreen.setNbrTickMarks(9);
  knbGreen.localColor = GCScheme.getColor(this, GCScheme.GREEN_SCHEME);

  knbBlue = new GKnob(this, kx + 4, ky + 9, 150, 20, 150);
  knbBlue.setControlMode(GKnob.CTRL_ANGULAR);
  knbBlue.setRotArcOnly(true);
  knbBlue.setLimits(b, 0, 255);
  knbBlue.setNbrTickMarks(9);

  stroke(0);
  strokeWeight(3);
  rectMode(CORNERS);
}

void draw() {
  background(220, 220, 255);
  fill(r, g, b);
  rect(kx + 190, 40, width - 40, height - 40);
  fill(0);
  text("Drag mouse in circular movement around the knobs centre", 10, height-10);
}


//En esta función es donde mando el valor pwm al arduino para cada color del led RGB
void handleKnobEvents(GKnob knob) {
  if (knob == knbRed){ 
    r = knob.getValue();
    arduino.analogWrite(10,r);}
  else if (knob == knbGreen){
    g = knob.getValue();
    arduino.analogWrite(9,g);}
  else if (knob == knbBlue){
    b = knob.getValue();
    arduino.analogWrite(6,b);}
}

Espero que os guste!!

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

ProcessingTutorials Cap 2. Introducción Processing/Arduino (II)


Con un poco de retraso, como viene siendo costumbre en mí, hacemos entrega del segundo capítulo de la mini serie de tutoriales “Processing Tutorials”.

En este segundo capítulo, proseguimos los conceptos dados en el primer video, haciendo de ambas partes un solo video. En esta parte, hemos realizado un par de ejemplos con un nivel del complejidad más elevado, en lo que a la parte gráfica de Processing se refiere, para dar una pequeña idea al usuario de lo que se puede llegar hacer con este programa. De aquí en adelante debe dejar volar su imaginación y añadir lo que quiera en el código del programa, unas tírulos, más botones, …

Sin más y como siempre aquí os dejo el link de descargar para que podáis obtener los archivos adjuntos al video tutorial y, cómo no, el video!

Espero que os haya gustado. Nos vemos en el próximo video, espero vuestro comentarios, aportaciones, críticas, …

Enjoy!

programando arduino con usbtinyisp


Me había quedado pendiente hacer una entrada de como poder programar nuestra placa Arduino o el chip sólo mediante un programador USBTinyISP v3.0 (que es el que yo tengo) a través del IDE de Arduino, tanto en la versión 022 como en la 1.0.

Los materiales que necesitamos son básicamente: El programador, un cable usb (vale el mismo del Arduino ya que desde el programador se alimentará la placa Arduino o el microcontrolador sólo) y por último la placa Arduino o el microcontrolador Atmega que sea compatible con el IDE de Arduino.

Para los usuarios de Arduino que emplean el IDE versión 022, supongo que será igual en anterirores versiones y en la 023, seguiremos los siguientes pasos:

1.- Debemos de tener instalados los drivers del programador en nuestro ordenador.

2.-Comprobaremos la conexión entre la placa Arduino o el microcontrolador a programar mediante el siguiente patillaje:

Pin programador            Pin Atmega328
1 Prog Miso—————–> Pin 18
2 Prog VCC ——————> Pin 7
3 Prog SCK —————–> Pin 19
4 Prog Mosi —————-> Pin 17
5 Prog RESET —————-> Pin 1
6 Prog GRND ———–> Pin 8

3.- Tendremos que editar el archivo de texto que se encontrará en esta dirección: C:\Documents and Settings\{USER NAME}\Application Data\Arduino\preferences.txt , en el cual modificaremos la siguiente línea upload.using=bootloader por esta otra upload.using=usbtinyisp.

4.- Ahora solo faltaría seleccionar un sketch y darle a upload y ya estaría nuestro microcontrolador programado.

NOTA: Al programar mediante USBTinyISP se borra el bootloader del microcontrolador si este lo tuviera programado, para cargarlo de nuevo tendríamos que ir al IDE de Arduino y en Tools ir a Burn Bootloader y marcar w/ USBTinyISP. Para volver a grabar de nuevo con el bootloader realizariamos el paso 3 a la inversa.

Para los usuarios de la versión 1.0 del IDE de Arduino bastaría con seleccionar el programador USBTinyISP según muestra la imagenes y posteriormente subir el programa al microcontrolador usando el programador externo:

Por último os dejo un archivo comprimido que contiene los esquemáticos, firmware y driver de este gran programador:

http://www.mediafire.com/?hjub4me0165dd7c

Esperamos que os sirva de ayuda y también vuestros comentarios!!

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

Arduino tutorials Cap 4. Interrupciones externas


Muy buenas a todos de nuevo. Aquí os traigo la nueva entrega de la serie “Arduino tutorials”, en la cual hablamos de las interrupciones externas.

Este tema lo he querido dividir en dos, ya que las interrupciones son un tema muy extenso y complicado, así que en el próximo capítulo veremos el uso de las interrupciones internas y Timers.

Como siempre, aquí os dejo el link desde el cual os podéis descargar todos los códigos, documentos adjuntos y datsheets para que podáis desarrollar los ejemplos del tutorial en vuestra casa y jugar con él.

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

Espero que os haya gustado y espero vuestros comentarios con críticas, dudas, observaciones,…

Enjoy!

Cómic Arduino


Aquí os dejo el “cómic de Arduino”, buscando por la red me encontré con el y la verdad que es muy interesante a la par que innovador .  En este pequeño cómic esta ligado el humor junto a la explicación de todo lo que envuelve el mundo de esta pequeña maravilla!

Podéis descargarlo desde el siguiente link:

                                     http://arduino.cc/playground/uploads/Main/arduino_comic_es.pdf

Enjoy!