Super Simple Arduino Powered Roomba Scheduler (3 / 5 paso)

Paso 3: Script de Arduino

Ahora, el Script de Arduino.

Usted necesitará un ordenador con el Arduino IDE instalado (yo he usado Arduino 1.05)

A continuación, instalar la biblioteca de IR de (instrucciones en el sitio) esto es necesario para ejecutar el script.
https://github.com/shirriff/Arduino-IRremote

He modificado (es decir, la desnudaron detrás) el script desarrollado por probono de https://gist.github.com/probonopd/5181021. Es mucho más detallada que la secuencia de comandos que he utilizado. Con él, puede enviar cada comando de Roomba a través de arduino. Definitivamente digno de la comprobación hacia fuera!

Básicamente, la secuencia de comandos que he pegado abajo hace es:
-Cuando se activa la alimentación
-Arduino está inicializado, se enciende LED rojo para hacerle saber que está en.
-Comienza a transmitir el comando "Clean" (136) varias veces con un retardo de 5 segundos entre cada transmisión.
-No se detiene hasta que se corta la corriente.

Abajo está el script...   Subir a la Junta como normal.
Si usted está interesado, puede abrir el monitor serial (9600) y ver la salida de Arduino, solo transmitir el comando "Clean" en repetir.

#include < IRremote.h >

/*

Super sencillo Arduino Powerd Roomba Scheduler
por gowell2010

Lanzamiento de Instructables 2013-08-03

Código adaptado de: https://gist.github.com/probonopd/5181021

Enviar comandos infrarrojos de la Arduino a iRobot Roomba
por probono

Versión inicial de 2013-03-17

Copyright (c) 2013 por probono
Todos los derechos reservados.

Redistribución y uso en forma de fuente y binario, con o sin
modificación, siempre que se cumplan las siguientes condiciones:

1. las redistribuciones del código fuente deben conservar el aviso de copyright anterior, esta
pliego de condiciones y el siguiente descargo de responsabilidad.
2. las redistribuciones en formato binario deben reproducir el aviso de copyright,
Esta lista de condiciones y la renuncia siguiente en la documentación
u otros materiales proporcionados con la distribución.

ESTE SOFTWARE ES PROPORCIONADO POR LOS TITULARES DE DERECHOS DE AUTOR Y COLABORADORES "TAL CUAL" Y
EXPRESAS O IMPLÍCITAS GARANTÍAS, INCLUIDAS, SIN LIMITARSE A, LA IMPLÍCITA
LAS GARANTÍAS DE COMERCIABILIDAD E IDONEIDAD PARA UN PROPÓSITO PARTICULAR
EXCLUIDA. EN NINGÚN CASO EL PROPIETARIO DEL COPYRIGHT O COLABORADORES SERÁN RESPONSABLES
CUALQUIER DAÑO DIRECTO, INDIRECTO, INCIDENTAL, ESPECIAL, EJEMPLAR O CONSECUENTE
(INCLUYENDO, SIN LIMITARSE A, ADQUISICIÓN DE BIENES O SERVICIOS SUSTITUTOS;
PÉRDIDA DE USO, DATOS O BENEFICIOS; O LA INTERRUPCIÓN COMERCIAL) SIN EMBARGO CAUSADO Y
EN CUALQUIER TEORÍA DE RESPONSABILIDAD, YA SEA EN CONTRATO, RESPONSABILIDAD ESTRICTA O AGRAVIO
(INCLUYENDO LA NEGLIGENCIA O DE OTRA MANERA) DERIVADA DE LA UTILIZACIÓN DE ESTE
SOFTWARE, INCLUSO SI SE ADVIERTE DE LA POSIBILIDAD DE DICHOS DAÑOS.

*/

Irsend de IRsend; conectado al pin 3; usar un transistor para manejar el LED IR de maximo alcance

int LED = 10;

void setup()
{
Serial.Begin(9600);
pinMode (LED, salida);
digitalWrite (LED, alta);   Encienda el LED (alto es el nivel de voltaje)

}

void loop()
{
roomba_send(136);  Enviar "Limpio"
Delay(5000);               Espere 5 segundos
}

void roomba_send(int code)
{
Serial.Print ("código de envío Roomba");
Serial.Print(Code);
int longitud = 8;
raw unsigned int [longitud * 2];
unsigned int one_pulse = 3000;
unsigned int one_break = 1000;
unsigned int zero_pulse = one_break;
unsigned int zero_break = one_pulse;

int arrayposition = 0;
Serial.println("");
para (int contador = 1 longitud; contador > = 0;--contador) {}
Si (código & (1 << contador)) {}
Serial.Print("1");
RAW [arrayposition] = one_pulse;
RAW [arrayposition + 1] = one_break;
}
Else {}
Serial.Print("0");
RAW [arrayposition] = zero_pulse;
RAW [arrayposition + 1] = zero_break;
}
arrayposition = arrayposition + 2;
}
para (int i = 0; i < 3; i ++) {}
irsend.sendRaw (crudo, 15, 38);
Delay(50);
}
Serial.println("");

Serial.Print ("tiempos de cruda:");
para (int z = 0; z < longitud * 2; z ++) {}
Serial.Print("");
Serial.Print(RAW[z]);
}
Serial.Print("\n\n");
}

Artículos Relacionados

Cómo construir un Arduino Powered ajedrez jugar Robot

Cómo construir un Arduino Powered ajedrez jugar Robot

a juzgar por el número de ajedrez Instructables relacionados, creo que es seguro decir que la comunidad disfruta el juego.  Sin embargo, puede ser difícil, encontrar alguien que juega en el mismo nivel te.  Para resolver este dilema y para aumentar m
Orientada a solar, reloj de Arduino-Powered

Orientada a solar, reloj de Arduino-Powered

esto es un reloj diseñado para mantener la hora exacta (independiente de atómico o GPS), Mostrar la salida local del sol, el mediodía solar y puesta de sol y también sí mismo ajustar horario de verano.Quería el reloj para ser fácil de usar y flexible
Un controlado inalámbricamente, tablero de mensajes Arduino-Powered

Un controlado inalámbricamente, tablero de mensajes Arduino-Powered

usted mismo construir un tablero de mensajes controlados de forma inalámbrica, Arduino powered!Aquí es un proyecto fácil que crea una tabla de forma inalámbrica programable del mensaje. Utiliza los módulos XBee para un enlace serial inalámbrico entre
Reloj de LED Arduino powered

Reloj de LED Arduino powered

Un divertido y sencillo reloj LED, que te dará la hora a la media hora más cercana utilizando LEDs solo-color. Piezas necesarias son las siguientes:Arduino NanoTablero de 400 puntos de amarreCable de cintaDS1307 RTC IC32,768 kHz cristal(12) 10mm LEDs
La más terrorífica, arduino powered, intermitente y gritando calabaza de halloween!

La más terrorífica, arduino powered, intermitente y gritando calabaza de halloween!

Aquí le damos un instructivo para un proyecto por la tarde que tenía que hacer: intermitente, gritando, arduino powered calabaza de halloween. Es muy divertido, consiste en un poquito de soldadura y es ideal para aprender sobre sensores y salida de l
Arduino Powered Gainclone (amplificador)

Arduino Powered Gainclone (amplificador)

para aquellos de ustedes que no saben y no lo hice hasta hace poco, un Gainclone es un amplificador que es un 'clon' del original diseño de un amplificador de 47 laboratorios llamados un Gaincard y está basado en amplificadores de único chip de Natio
Arduino Powered RGB LED Vodka estante

Arduino Powered RGB LED Vodka estante

este instructable conseguir va hacer su propio arduino powered proyecto rojo verde y azul LED. Incluso no tiene que ser un estante! Botellas de vodka se suceden iluminar muy bien así que es lo que elegí hacer.En este proyecto utilizamos cada pin en e
Arduino Powered Infared cosa

Arduino Powered Infared cosa

Hola, este es mi primer instructible. Voy a mostrar cómo hacer un lector de arduino powered sensor análogo (va a utilizar un fotodiodo infrarrojo).Paso 1: partes Necesita varias cosas para hacerlo:1. algún tipo de caja o caja de2. un escudo de Adafru
Super Simple Inductor Joule Thief!

Super Simple Inductor Joule Thief!

¡ Hola todos! En este Instructable te mostraré cómo hacer tu propio ladrón de joule inductor simple, en poco menos de 10 minutos! Este circuito es tan simple, incluso aquellos no familiarizados con la electrónica puede probar como su primer proyecto!
Arduino Powered trazadores de líneas del guante Heated

Arduino Powered trazadores de líneas del guante Heated

Arduino Powered Guantes calientesEste proyecto es sobre cómo hacer las más inteligente del mundo calienta guante los trazadores de líneas para condiciones de frío extremo como los de Minnesota o personas que tienen syndrome(like me) de Raynaud. Estos
Super Simple truco tarjeta

Super Simple truco tarjeta

Hey todo el mundo le mostrará cómo hacer un truco super simple tarjetaDisfrutar dePaso 1: Reúna sus materiales NecesitaUna baraja de cartasPaso 2: Shuffle Ahora sacar cuatro de los ases y los puso a un ladoMezclar el resto de las cartasPaso 3: truco
Tren de beso (mantener, Super Simple)

Tren de beso (mantener, Super Simple)

¡ Construya usted mismo un juguete divertido, durable para casi ningún costo! Utilice un trozo de 2 x 4, lo hacen de la madera de palet.Diseñé este tren en la década de los 80 cuando yo tenía 2 niños, 2 y 3 años de edad. Mi presupuesto era limitado a
Arduino powered calabaza de Halloween con detección de movimiento

Arduino powered calabaza de Halloween con detección de movimiento

Hola,Este Instructable le mostrará cómo hacer algunos Halloween decoraciones incluyendo arduino powered calabaza de Halloween con detección de movimiento.Paso 1: Hacer calabaza de Halloween Materiales:Globo redondoPeriódicos viejosHarina suaveAguaTém
3 canal arduino Powered controlador de luces de Navidad!

3 canal arduino Powered controlador de luces de Navidad!

Para Navidad este año, quise hacer un proyecto genial pero bastante no sabía qué hacer. Como me estaba poniendo la salida de luces de Navidad para decorar, había un viejo temporizador de luz de Navidad roto. Tomé distancia y miró a su alrededor en el