Programas en arduino

Leer control remoto IR y decodificar código

Para usar este programa tendra que tener instalada la librerira IRremote.h

Para instalarla en Arduino (programa/incluir librería/añadir librería.zip).

Después de descargar el programa abrir el monitor serie (lupa arriba a la derecha) apriete una tecla del control remoto que quiera y le iniciará que código usa.

 

#include <IRremote.h>
int RECV_PIN = 5;
int dat = 13;

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()
{
pinMode(dat, OUTPUT);
Serial.begin(9600);
irrecv.enableIRIn(); // Empezamos la recepción por IR
}

void dump(decode_results *results) {
// Dumps out the decode_results structure.
// Call this after IRrecv::decode()

Serial.print(«(«);
Serial.print(results->bits, DEC);
Serial.print(» bits)»);

if (results->decode_type == UNKNOWN) {
Serial.print(«Unknown encoding: «);
}
else if (results->decode_type == NEC) {
Serial.print(«Decoded NEC: «);

}
else if (results->decode_type == SONY) {
Serial.print(«Decoded SONY: «);
}
else if (results->decode_type == RC5) {
Serial.print(«Decoded RC5: «);
}
else if (results->decode_type == RC6) {
Serial.print(«Decoded RC6: «);
}
else if (results->decode_type == PANASONIC) {
Serial.print(«Decoded PANASONIC – Address: «);
Serial.print(results->address, HEX);
Serial.print(» Value: «);
}
else if (results->decode_type == LG) {
Serial.print(«Decoded LG «);
}
else if (results->decode_type == JVC) {
Serial.print(«Decoded JVC «);
}
else if (results->decode_type == AIWA_RC_T501) {
Serial.print(«Decoded AIWA RC T501 «);
}
else if (results->decode_type == WHYNTER) {
Serial.print(«Decoded Whynter «);
}
Serial.print(results->value, HEX);
Serial.print(» (HEX) , «);
Serial.print(results->value, BIN);
Serial.println(» (BIN)»);

}

void loop() {
if (irrecv.decode(&results)) {
digitalWrite(dat, HIGH);
dump(&results);
irrecv.resume(); // empezamos una nueva recepción
}

delay(300);
digitalWrite(dat, LOW);
delay(3);
}

Temperatura y Humedad ambiente DHT11

Conectar el sensor en CON1 (o CON2 en el caso del R8js)

Después hay que descargar la librería de Arduino «DHT Sensor Library by Adafruit», en «programas/incluir libreria/Gestionar Librerias «, e instalarla en Arduino (programa/incluir librería/añadir librería.zip). Después de descargar el programa abrir el monitor serie (lupa arriba a la derecha) y les indicara la temperatura y humedad ambiente.

 

#include <DHT.h>

DHT dht(11, DHT11);

void setup()
{
Serial.begin(9600);
dht.begin();
}

void loop()
{
Serial.print(«temp»);
Serial.print(» «);
Serial.print(dht.readTemperature());
Serial.print(» «);
Serial.println();
Serial.print(«hum»);
Serial.print(» «);
Serial.print(dht.readHumidity());
Serial.print(» «);
}

Melodia de piratas en el parlante /buzzer de la placa

/* Programa que reproduce la melodia de «Piratas del Caribe */

int sound = 10;// definir el pin del parlante
void setup(){
pinMode (sound, OUTPUT); //pin configurado como salida
}
// funcion = tone(pin, frequency, duration)

void loop() {
//digitalWrite(10,HIGH);
tone(sound,293.66,200);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,200);
delay(200);
tone(sound,293.66,100);
delay(100);
tone(sound,293.66,100);
delay(100);
tone(sound,440,100);
delay(100);
tone(sound,523.25,100);
delay(100);
tone(sound,587.33,100);
delay(200);
tone(sound,587.33,100);
delay(200);
tone(sound,587.33,100);
delay(100);
tone(sound,659.25,100);
delay(100);
tone(sound,698.45,100);
delay(200);
tone(sound,698.45,100);
delay(200);
tone(sound,698.45,100);
delay(100);
tone(sound,783.99,100);
delay(100);
tone(sound,659.25,100);
delay(200);
tone(sound,659.25,100);
delay(200);
tone(sound,587.33,100);
delay(100);
tone(sound,523.25,100);
delay(100);
tone(sound,523.25,100);
delay(100);
tone(sound,587.33,100);
delay(300);
tone(sound,440,100);
delay(100);
tone(sound,523.25,100);
delay(100);
tone(sound,587.33,100);
delay(200);
tone(sound,587.33,100);
delay(200);
tone(sound,587.33,100);
delay(100);
tone(sound,659.25,100);
delay(100);
tone(sound,698.45,100);
delay(200);
tone(sound,698.45,100);
delay(200);
tone(sound,698.45,100);
delay(100);
tone(sound,783.99,100);
delay(100);
tone(sound,659.25,100);
delay(200);
tone(sound,659.25,100);
delay(200);
tone(sound,587.33,100);
delay(100);
tone(sound,523.25,100);
delay(100);
tone(sound,587.33,100);
delay(400);
tone(sound,440,100);
delay(100);

 

}

Sensor infrarojo CNY70

Conectar un sensor CNY70 switch en el conector que tenga la entrada Digital 3 (CON7 en R8+, CON3 en R8sj, Con6 en R8 6 puertos). Ahora con una hoja negra y otra blanca se va activar el led de la placa  según el color (el principio de seguir la linea). Tambien se va a activar si se tapa o o deja destapado.

void setup()
{
pinMode( 3 , INPUT);
pinMode( 13 , OUTPUT);
}

void loop()
{
if (1 – digitalRead(3))
{
digitalWrite(13 , LOW);
}
digitalWrite(13 , HIGH);
}

 

 

En Ardublock

Sensor de tacto

Conectar un sensor de tacto o switch en el conector que tenga la entrada Digital 3 (CON7 en R8+, CON3 en R8sj, Con6 en R8 6 puertos)

Cuando uno apriete el botón se encenderá el led de la placa

 

void setup()
{
pinMode( 3 , INPUT);
pinMode( 13 , OUTPUT);
}

void loop()
{
if (1 – digitalRead(3))
{
digitalWrite(13 , LOW);
}
digitalWrite(13 , HIGH);
}

 

 

En Ardublock

Sensor de Luz LDR

Conectar el LDR, o sensor de luz, en el puerto que tenga la salida A0.

 

 

int sensorPin =A0; // pin del LDR

int sensorValue = 0; 
int ledPin = 13; //Led de la placa

void setup() {
Serial.begin(9600); //sets serial port for communication
pinMode(ledPin, OUTPUT);

}
void loop() {
sensorValue = analogRead(sensorPin); // lee los datos del LDR
Serial.println(sensorValue); //pone los datos en el monitor serie
if(sensorValue > 300 ){
digitalWrite(ledPin, HIGH);
}
else digitalWrite(ledPin, LOW);

delay(100);

}

 

Después de descargar abrir el monitor serie (lupa arriba a al derecha) y podrá leer los datos del sensor, según esta arriba o debajo de 300, se prendera o apagara el led del R8

Titilar led bicolor

Programa que enciende el sensor LED bicolor, un color por vez y apaga por un seguno en CON1

 

void setup() {
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);

}

void loop() {
digitalWrite(11, LOW);
digitalWrite(12, HIGH);

delay(1000);

digitalWrite(12, LOW);
digitalWrite(11, HIGH);

delay(1000);

digitalWrite(11, LOW);
digitalWrite(12, LOW);

delay(1000);
}

Prueba de motores

Ejemplo para usar los motores en CON 1 y CON 2

 

En un sentido, luego en el otro y luego parar y se repite.

 

void setup() {
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(8, OUTPUT);
pinMode(6, OUTPUT);

}

void loop() {
digitalWrite(11, LOW);
digitalWrite(12, HIGH);

digitalWrite(6, LOW);
digitalWrite(8, HIGH);
delay(1000);

digitalWrite(12, LOW);
digitalWrite(11, HIGH);

digitalWrite(8, LOW);
digitalWrite(6, HIGH);
delay(1000);

digitalWrite(11, LOW);
digitalWrite(12, LOW);

digitalWrite(6, LOW);
digitalWrite(8, LOW);
delay(1000);
}

Sensar con sensor de ultrasonido HC SR04

conectamos el sensor en CON3

 

Copiamos este programa al arduino y lo descargamos:


/*

 * PROGRAMA PARA SENSAR DISTANCIA CON SENSOR DE ULTRASONIDO HC S04 CONECTADO EN EL PUERTO CON3 DEL LADRILLO R8 (PINES DIGITALES 2 Y 4)

 * AUTOR: Erik P. Meuer

 * www.misladrillos.com/ml/

 */

// DEFINIMOS ENTRADAS DIGITALES DEL SENSOR

int trig = 4; // 2 en R8sj

int echo = 2; //3 en R8sj

// DEFINIMOS LA VARIABLE PARA EL RESULTADO FINAL

int Dist_fin = 0 ;

// DEFINIMOS VARIABLE QUE CONTIENE EL RESULTADO DE LA MEDICION DEL SENSOR

int ultrasonido(int trigPin, int echoPin)

{

  long distancia;

  // CONFIGURAR PINES DE ENTRADA Y SALIDA

  pinMode(trigPin, OUTPUT);

  pinMode(echoPin, INPUT);

  //EMITO Y RECIBO PULSO DE SONIDO

  digitalWrite(trigPin, LOW);

  delayMicroseconds(2);

  digitalWrite(trigPin, HIGH);

  delayMicroseconds(20);

  digitalWrite(trigPin, LOW);

  //LEEO EL TIEMPO QUE DURO EL REBOTE DE SONIDO

  distancia = pulseIn(echoPin, HIGH);

 // LA VELOCIDAD DEL SONIDO ES DE 340 M/S O 29,5 MICROSEGUNDOS POR CENTIMETRO

  // DIVIDIMOS EL TIEMPO DEL PULSO ENTRE 59, TIEMPO QUE TARDA RECORRER IDA Y VUELTA UN CENTIMETRO LA ONDA SONORA

  distancia = distancia / 59;

  // CUANDO ESTA FUERA DEL RANGO QUE SOPORTA EL SENSOR(DE 2CM A 3M) DEVUELVE DISTANCIA =0

  if ((distancia < 2) || (distancia > 300)) return false;

  return distancia;

}

 

 

void setup()

{

 // APAGO LA SALIDA DIGITAL 

  digitalWrite( trig , LOW );

  digitalWrite( echo , LOW );

 // PREPARAR LA COMUNICACION SERIAL

  Serial.begin(9600);

 

}

 

void loop()

{

 

  // DEFINO LA DISTANCIA FINAL

  Dist_fin =   ultrasonido( trig , echo ) ;

  // ENVIAR EL RESULTADO AL MONITOR SERIAL

  Serial.print(«distancia»);

  Serial.print(» «);

  Serial.print(Dist_fin);

  Serial.print(» «);

  Serial.println();

  delay (500);

}

 


Mas información:

Ejemplo de uso de pantalla

Conectar la Pantalla en el puerto COM7 que esl el que tiene el I2c

Para realizar la lectura de la pantalla OLED usaremos la librería desarrollada por Adafruit, disponible en este enlace. A su vez necesita la librería Adafruit GFX para realizar gráficos.

Descargue e instale estas librerìas en Arduino y despues pruebe el programa ejemplo:


 

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include <Fonts/FreeSansOblique12pt7b.h>

#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);

#define NUMFLAKES 10
#define XPOS 0
#define YPOS 1
#define DELTAY 2

#define LOGO16_GLCD_HEIGHT 16
#define LOGO16_GLCD_WIDTH 16
static const unsigned char PROGMEM logo16_glcd_bmp[] =
{ B00000000, B11000000,
B00000001, B11000000,
B00000001, B11000000,
B00000011, B11100000,
B11110011, B11100000,
B11111110, B11111000,
B01111110, B11111111,
B00110011, B10011111,
B00011111, B11111100,
B00001101, B01110000,
B00011011, B10100000,
B00111111, B11100000,
B00111111, B11110000,
B01111100, B11110000,
B01110000, B01110000,
B00000000, B00110000 };

#if (SSD1306_LCDHEIGHT != 64)
#error(«Height incorrect, please fix Adafruit_SSD1306.h!»);
#endif

void setup() {
Serial.begin(9600);

display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3C (for the 128×64)
// init done
// Show image buffer on the display hardware.
display.display();
delay(8000);

// Clear the buffer.
display.clearDisplay();

/* // draw a single pixel
display.drawPixel(10, 10, WHITE);
// Show the display buffer on the hardware.
// NOTE: You _must_ call display after making any drawing commands
// to make them visible on the display hardware!
display.display();
delay(2000);
display.clearDisplay();

// draw many lines
testdrawline();
display.display();
delay(2000);
display.clearDisplay();

// draw rectangles
testdrawrect();
display.display();
delay(2000);
display.clearDisplay();

// draw multiple rectangles
testfillrect();
display.display();
delay(2000);
display.clearDisplay();

// draw mulitple circles
testdrawcircle();
display.display();
delay(2000);
display.clearDisplay();

// draw a white circle, 10 pixel radius
display.fillCircle(display.width()/2, display.height()/2, 10, WHITE);
display.display();
delay(2000);
display.clearDisplay();

testdrawroundrect();
delay(2000);
display.clearDisplay();

testfillroundrect();
delay(2000);
display.clearDisplay();

testdrawtriangle();
delay(2000);
display.clearDisplay();

testfilltriangle();
delay(2000);
display.clearDisplay();

// draw the first ~12 characters in the font
testdrawchar();
display.display();
delay(2000);
display.clearDisplay();

// draw scrolling text
testscrolltext();
delay(2000);
display.clearDisplay();

// text display tests
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.println(«Hello, world!»);
display.setTextColor(BLACK, WHITE); // ‘inverted’ text
display.println(3.141592);
display.setTextSize(2);
display.setTextColor(WHITE);
display.print(«0x»); display.println(0xDEADBEEF, HEX);
display.display();
delay(2000);
display.clearDisplay();

// miniature bitmap display
display.drawBitmap(30, 16, logo16_glcd_bmp, 16, 16, 1);
display.display();

// invert the display
display.invertDisplay(true);
delay(1000);
display.invertDisplay(false);
delay(1000);
display.clearDisplay();

// draw a bitmap icon and ‘animate’ movement
testdrawbitmap(logo16_glcd_bmp, LOGO16_GLCD_HEIGHT, LOGO16_GLCD_WIDTH);*/
}

void loop() {
/*DateTime now = rtc.now();
int sensorValue;
float voltage;
float temp;
float temp1;

for (int i = 0; i<10 ; i++)
{
sensorValue = analogRead(A1);
voltage= sensorValue * 5 / 1024.0;
temp = voltage – 0.5;
temp = temp – 0.0644; //Calibration
temp = temp / 0.01;
temp1=temp1+temp;
delay(500);
}

temp=temp1/10;

float tempf = (temp * 1.8) + 32;*/
display.drawRect(0, 0, display.width(), display.height(), WHITE);
display.drawRect(1, 1, display.width()-2, display.height()-2, WHITE);
display.drawLine(0, 32, display.width(), 32, WHITE);
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(18,18);
display.setFont(&FreeSansOblique12pt7b);
display.print(«25.0»);
display.setFont();
display.setCursor(85,6);
display.print(«o»);
display.setFont(&FreeSansOblique12pt7b);
display.setCursor(90,25);
display.print(«C»);
display.setFont();
/*
display.fillRect(0 , 33, display.width(), display.height(), WHITE);
display.setTextColor(BLACK);
display.setCursor(18,50);
display.setFont(&FreeSansOblique12pt7b);
display.print(now.hour(), DEC);
display.print(‘:’);
display.print(now.minute(), DEC);
display.print(‘:’);
display.print(now.second(), DEC);
/*display.setFont();
display.setCursor(85,38);
display.print(«o»);
display.setFont(&FreeSansOblique12pt7b);
display.setCursor(90,57);
display.print(«F»);
display.setFont();
display.setCursor(3,13);
display.print(voltage);
display.print(» V»);
display.setCursor(3,23);
display.print(sensorValue);
display.print(» SENSOR»);*/
display.display();
//delay(100);
display.clearDisplay();

}

void testdrawbitmap(const uint8_t *bitmap, uint8_t w, uint8_t h) {
uint8_t icons[NUMFLAKES][3];

// initialize
for (uint8_t f=0; f< NUMFLAKES; f++) {
icons[f][XPOS] = random(display.width());
icons[f][YPOS] = 0;
icons[f][DELTAY] = random(5) + 1;

Serial.print(«x: «);
Serial.print(icons[f][XPOS], DEC);
Serial.print(» y: «);
Serial.print(icons[f][YPOS], DEC);
Serial.print(» dy: «);
Serial.println(icons[f][DELTAY], DEC);
}

while (1) {
// draw each icon
for (uint8_t f=0; f< NUMFLAKES; f++) {
display.drawBitmap(icons[f][XPOS], icons[f][YPOS], bitmap, w, h, WHITE);
}
display.display();
delay(200);

// then erase it + move it
for (uint8_t f=0; f< NUMFLAKES; f++) {
display.drawBitmap(icons[f][XPOS], icons[f][YPOS], bitmap, w, h, BLACK);
// move it
icons[f][YPOS] += icons[f][DELTAY];
// if its gone, reinit
if (icons[f][YPOS] > display.height()) {
icons[f][XPOS] = random(display.width());
icons[f][YPOS] = 0;
icons[f][DELTAY] = random(5) + 1;
}
}
}
}

void testdrawchar(void) {
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0,0);

for (uint8_t i=0; i < 168; i++) {
if (i == ‘\n’) continue;
display.write(i);
if ((i > 0) && (i % 21 == 0))
display.println();
}
display.display();
}

void testdrawcircle(void) {
for (int16_t i=0; i<display.height(); i+=2) {
display.drawCircle(display.width()/2, display.height()/2, i, WHITE);
display.display();
}
}

void testfillrect(void) {
uint8_t color = 1;
for (int16_t i=0; i<display.height()/2; i+=3) {
// alternate colors
display.fillRect(i, i, display.width()-i*2, display.height()-i*2, color%2);
display.display();
color++;
}
}

void testdrawtriangle(void) {
for (int16_t i=0; i<min(display.width(),display.height())/2; i+=5) {
display.drawTriangle(display.width()/2, display.height()/2-i,
display.width()/2-i, display.height()/2+i,
display.width()/2+i, display.height()/2+i, WHITE);
display.display();
}
}

void testfilltriangle(void) {
uint8_t color = WHITE;
for (int16_t i=min(display.width(),display.height())/2; i>0; i-=5) {
display.fillTriangle(display.width()/2, display.height()/2-i,
display.width()/2-i, display.height()/2+i,
display.width()/2+i, display.height()/2+i, WHITE);
if (color == WHITE) color = BLACK;
else color = WHITE;
display.display();
}
}

void testdrawroundrect(void) {
for (int16_t i=0; i<display.height()/2-2; i+=2) {
display.drawRoundRect(i, i, display.width()-2*i, display.height()-2*i, display.height()/4, WHITE);
display.display();
}
}

void testfillroundrect(void) {
uint8_t color = WHITE;
for (int16_t i=0; i<display.height()/2-2; i+=2) {
display.fillRoundRect(i, i, display.width()-2*i, display.height()-2*i, display.height()/4, color);
if (color == WHITE) color = BLACK;
else color = WHITE;
display.display();
}
}

void testdrawrect(void) {
for (int16_t i=0; i<display.height()/2; i+=2) {
display.drawRect(i, i, display.width()-2*i, display.height()-2*i, WHITE);
display.display();
}
}

void testdrawline() {
for (int16_t i=0; i<display.width(); i+=4) {
display.drawLine(0, 0, i, display.height()-1, WHITE);
display.display();
}
for (int16_t i=0; i<display.height(); i+=4) {
display.drawLine(0, 0, display.width()-1, i, WHITE);
display.display();
}
delay(250);

display.clearDisplay();
for (int16_t i=0; i<display.width(); i+=4) {
display.drawLine(0, display.height()-1, i, 0, WHITE);
display.display();
}
for (int16_t i=display.height()-1; i>=0; i-=4) {
display.drawLine(0, display.height()-1, display.width()-1, i, WHITE);
display.display();
}
delay(250);

display.clearDisplay();
for (int16_t i=display.width()-1; i>=0; i-=4) {
display.drawLine(display.width()-1, display.height()-1, i, 0, WHITE);
display.display();
}
for (int16_t i=display.height()-1; i>=0; i-=4) {
display.drawLine(display.width()-1, display.height()-1, 0, i, WHITE);
display.display();
}
delay(250);

display.clearDisplay();
for (int16_t i=0; i<display.height(); i+=4) {
display.drawLine(display.width()-1, 0, 0, i, WHITE);
display.display();
}
for (int16_t i=0; i<display.width(); i+=4) {
display.drawLine(display.width()-1, 0, i, display.height()-1, WHITE);
display.display();
}
delay(250);
}

void testscrolltext(void) {
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(10,0);
display.clearDisplay();
display.println(«scroll»);
display.display();

display.startscrollright(0x00, 0x0F);
delay(2000);
display.stopscroll();
delay(1000);
display.startscrollleft(0x00, 0x0F);
delay(2000);
display.stopscroll();
delay(1000);
display.startscrolldiagright(0x00, 0x07);
delay(2000);
display.startscrolldiagleft(0x00, 0x07);
delay(2000);
display.stopscroll();
}

Programas en Ardublock

Leer sensor de humedad tierra o sensor de lluvia en forma digital (r8,r8sj,r8+)

Conecte el  sensor  al puerto 7 según el modelo de R8 que tenga y despues de descargar abra el monitor serie.

Otra forma, la forma digital seria la siguiente : conectelo al puerto 5.

ahora hay que regular el umbral para cunado se quiera que se active el sensor, en este caso hará ruido el Buzzer cuando se «moje» la horquilla o el placa según sensor.

Nota: El software de Arduino debe estar previamente configurado para conexión al ladrillo (elegir el puerto correcto y la versión de Arduino genuino micro) y debe usar la versión De Ardublock según el e-brick R8 que esté usando. Más información en el manual.

Caminata al azar para modelo de 3 ruedas (R8)
Tacto capacitivo y led (R8sj,R8+)

Conecte el led al puerto indicado según modelo, lo mismo conecte el sensor  de tacto capacitivo.

descargar el programa y subirlo

Ponga cargar a Arduino y espere a que suba al ladrillo R8. toque el circulo blanco y se activara el sensor cambiando de estado el LED

Nota: El software de Arduino debe estar previamente configurado para conexión al ladrillo (elegir el puerto correcto y la versión de Arduino genuino micro) y debe usar la versión De Ardublock según el e-brick R8 que esté usando. Más información en el m anual.

Fin de carrera y led (R8sj,R8+)

Conecte el led al puerto indicado según modelo, lo mismo conecte el sensor fin de carrera.

descargar el programa y subirlo

Ponga cargar a Arduino y espere a que suba al ladrillo R8.

Nota: El software de Arduino debe estar previamente configurado para conexión al ladrillo (elegir el puerto correcto y la versión de Arduino genuino micro) y debe usar la versión De Ardublock según el e-brick R8 que esté usando. Más información en el m anual.

prueba de motores

Conecte los 2 motores según versión de ladrillo R8

descargar el programa y subirlo

Ponga cargar a Arduino y espere a que suba al ladrillo R8.

Variar frecuencia de buzzer con potenciometro (R8,R8sj,R8+)

Conecte el potenciometro al puerto indicado según modelo

descargar el programa y subirlo

Cuando gire el potenciómetro variará la frecuencia del sonido emitido por el buzzer

Prueba de Relay (R8,R8sj,R8+)

Conecte el led al puerto indicado según modelo, lo mismo conecte el sensor de tacto, switch o pulsador.

descargar el programa y subirlo

Este programa va a prender y apagar el relay por intervalos de 1 segundo, va a escuchar un «clic» en el relay al activarse. En la bornera podrá conectar, como con cualquier relay una luz, un tester etc. para corroborar su funcionar. Esta la entrada común, la del medio, la salida Normal Abierto y la salida Normal Cerrado.

Tacto y led (R8sj,R8+)

Conecte el led al puerto indicado según modelo, lo mismo conecte el sensor de tacto, switch o pulsador.

descargar el programa y subirlo

Ponga cargar a Arduino y espere a que suba al ladrillo R8.

Nota: El software de Arduino debe estar previamente configurado para conexión al ladrillo (elegir el puerto correcto y la versión de Arduino genuino micro) y debe usar la versión De Ardublock según el e-brick R8 que esté usando. Más información en el m anual.

Probar el servomotor (r8+)

Conecte el servomotor a cualquier conector 

descargue el programa y súbalo al Ardublock

El servo va a ir y venir segun los angulos del programa

Leer sensor de humedad tierra o sensor de lluvia en forma analógica (r8,r8sj,r8+)

Conecte el sensor al puerto según el modelo de R8 que tenga:

Ponga cargar a Arduino y espere a que suba al ladrillo R8.

Abra el «Monitor Puerto Serie» y vera el valor que lee el sensor entre 0 y 1024.

Nota: El software de Arduino debe estar previamente configurado para conexión al ladrillo (elegir el puerto correcto y la versión de Arduino genuino micro) y debe usar la versión De Ardublock según el e-brick R8 que esté usando. Más información en el manual.

Arduino Soft

Descarga esta versión de Arduino para un buen funcionamiento de Ardublock:

Arduino   1.6.9 Windows  MAC OS X Linux 32 Bit
Linux 64 Bit
Linux ARM