Super Simple planificateur de Roomba Arduino alimenté (3 / 5 étapes)

Étape 3: Arduino Script

Maintenant, le Script de l’Arduino.

Vous aurez besoin d’un ordinateur avec l’Arduino IDE installé (j’ai utilisé Arduino 1,05)

Ensuite, installez la bibliothèque IR (instructions sur le site), cela est nécessaire pour exécuter le script.
https://github.com/Shirriff/Arduino-IRremote

J’ai modifié (c'est-à-dire dépouillé retour) le script développé par probono disponible à https://gist.github.com/probonopd/5181021. Il est beaucoup plus détaillé que le script que j’ai utilisé. Avec elle, vous pouvez envoyer toutes les commandes par l’intermédiaire de l’arduino Roomba. Vaut vraiment le détour !

Fondamentalement, tout le script que j’ai collé ci-dessous fait est :
-Lorsque l’alimentation est allumée
-Arduino est initialisé, allume une LED rouge pour vous faire savoir que c’est sur.
-Commence la transmission de la commande "Clean" (136) à plusieurs reprises avec un délai de 5 secondes entre chaque transmission.
-Ne s’arrête pas jusqu'à ce que le courant est coupé !

Voici le script...   Transférez-le au Conseil d’administration comme d’habitude.
Si vous êtes intéressé, vous pouvez ouvrir le moniteur série (9600) et voir la sortie de l’Arduino, juste en émettant la commande « Clean » sur répéter.

#include < IRremote.h >

/*

Super Simple Arduino Powerd Roomba Scheduler
par gowell2010

Instructables 2013-08-03 sortie

Code adapté de : https://gist.github.com/probonopd/5181021

Envoyer des commandes infrarouges de l’Arduino pour iRobot Roomba
par probono

Version initiale 2013-03-17

Copyright (c) 2013 par probono
Tous droits réservés.

Redistribution et l’utilisation sous les formes source et binaire, avec ou sans
modification, sont autorisées sous réserve que les conditions suivantes sont remplies :

1. les redistributions du code source doivent conserver la notice de copyright ci-dessus, cette
Liste des conditions et la clause de non-responsabilité suivante.
2. les redistributions sous forme binaire doivent reproduire l’avis de copyright ci-dessus,
Cette liste de conditions et l’exclusion de responsabilité suivante dans la documentation
et/ou autres documents fournis avec la distribution.

CE LOGICIEL EST FOURNI PAR LES DETENTEURS DU COPYRIGHT ET LES CONTRIBUTEURS "TEL QUEL" ET
TOUTE GARANTIE EXPRESSE OU IMPLICITE, Y COMPRIS, MAIS SANS LIMITATION, L’IMPLICITE
LES GARANTIES DE QUALITÉ MARCHANDE ET D’ADEQUATION A UN USAGE PARTICULIER SONT
PAS ACCORDÉ. EN AUCUN CAS LE PROPRIÉTAIRE DU DROIT D’AUTEUR OU LES CONTRIBUTEURS SERA RESPONSABLES
DES DOMMAGES DIRECTS, INDIRECTS, ACCESSOIRES, SPÉCIAUX, EXEMPLAIRES OU INDIRECTS
(Y COMPRIS, MAIS NON LIMITÉ À, DES ACHATS DE REMPLACEMENT DE MARCHANDISES OU SERVICES ;
PERTE D’UTILISATION, DE DONNÉES OU DE PROFITS ; OU INTERRUPTION D’ACTIVITÉ) CAUSÉ ET
SUR TOUTE THÉORIE DE RESPONSABILITÉ, QUE CE SOIT DANS LE CONTRAT, RESPONSABILITÉ STRICTE OU DÉLICTUELLE
(Y COMPRIS LA NÉGLIGENCE OU AUTREMENT) RÉSULTANT DE L’UTILISATION DE CETTE
LOGICIEL, MÊME SI AVISÉ DE LA POSSIBILITÉ DE TELS DOMMAGES.

*/

IRsend irsend ; connecté à la broche 3 ; utiliser un transistor pour alimenter la LED IR pour portée maximal

int LED = 10 ;

void setup()
{
Serial.Begin(9600) ;
pinMode (LED, sortie) ;
digitalWrite (LED, haute) ;   allumer la LED (HIGH est le niveau de tension)

}

void loop()
{
roomba_send(136) ;  Envoyer « Propre »
Delay(5000) ;               Attendez 5 secondes
}

Sub roomba_send(int code)
{
Serial.Print (« Roomba envoi code ») ;
Serial.Print(code) ;
int longueur = 8 ;
raw unsigned int [longueur * 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("") ;
pour (int compteur = longueur-1; compteur > = 0;--contrer) {}
Si (code & (1 << compteur)) {}
Serial.Print("1") ;
brute [arrayposition] = one_pulse ;
brut [arrayposition + 1] = one_break ;
}
else {}
Serial.Print("0") ;
brute [arrayposition] = zero_pulse ;
brut [arrayposition + 1] = zero_break ;
}
arrayPosition = arrayposition + 2 ;
}
pour (int i = 0; i < 3; i ++) {}
irsend.sendRaw (brut, 15, 38) ;
Delay(50) ;
}
Serial.println("") ;

Serial.Print ("Raw timings:") ;
pour (int z = 0; z < longueur * 2; z ++) {}
Serial.Print("") ;
Serial.Print(RAW[z]) ;
}
Serial.Print("\n\n") ;
}

Articles Liés

Super USB chargeur et bloc d’alimentation 12V

Super USB chargeur et bloc d’alimentation 12V

Il s'agit d'alimentation super super simple qui vous donnera une alimentation en 5v courant haute avec que vous pouvez charger un zillion appareils à la fois et une alimentation 12v décent. Aucune soudure requise.Étape 1: Vis Terminal Strip, fils cou
LES DÉBUTANTS SUPER SIMPLE ROBOT II (ARDUINO UNO VER.)

LES DÉBUTANTS SUPER SIMPLE ROBOT II (ARDUINO UNO VER.)

Ce ' ible repose sur mon assez populaire SUPER SIMPLE débutants ROBOT ' ible. Après beaucoup, beaucoup de demandes de fournir une version mise à jour de Arduino, c'est ici !J'ai créé ce Instructable et son prédécesseur, pour le wannabe de robot n00by
Vélo - arduino alimenté système de purification de l’eau (à l’aide de lumière UVC)

Vélo - arduino alimenté système de purification de l’eau (à l’aide de lumière UVC)

Cette instructable montre comment alimenter un système de purification de l'eau UV-C avec un contrôle de la bicyclette et arduino. Une dynamo à l'arrière de la bicyclette charge une batterie (que nous avons initialement chargé déjà pour ce projet) qu
Interactive Arduino alimenté LED Skis

Interactive Arduino alimenté LED Skis

Malade de la noirceur terne de skier la nuit ? N'ayez pas peur ! Arduino skis de LED interactifs programmables viendront égayer votre soirée.Ces maison construite skis ont LED incorporé sous le p-tex et la feuille du dessus. Une Arduino et accéléromè
Dés ATtiny85/45/25 LED (Super simple et pas cher!)

Dés ATtiny85/45/25 LED (Super simple et pas cher!)

Si vous avez regardé mon écran LED ATtiny85 POV 5, nous avons programmé le ATtiny avec l'Arduino. (Si vous n'avez pas vu, cliquez ici) Nous allons faire la même chose pour ce projet dés LED.Le coût total de pièces pour ce projet est de 5 $- 10$. (San
Arduino alimenté Gainclone (amplificateur)

Arduino alimenté Gainclone (amplificateur)

pour ceux d'entre vous qui ne connaissent pas (et je n'ai pas jusqu'à une date récente), un Gainclone est un ampli qui est un « clone » de la conception originale d'un ampli fabriqué par 47 Labs appelés un Gaincard et reposent sur des amplificateurs
Comment construire un Robot jouant Arduino alimenté par Chess

Comment construire un Robot jouant Arduino alimenté par Chess

à en juger par le nombre d'échecs liés Instructables, je pense qu'il est sûr de dire que la communauté bénéficie du jeu.  Il peut être difficile, toutefois, de trouver quelqu'un qui joue au même niveau que vous faire.  Pour résoudre ce dilemme et d'a
Des tableaux de bord super simple directement sur le linkit un

Des tableaux de bord super simple directement sur le linkit un

Cela a commencé comme un manque de sorte d'un port de cette idée d'un intel projet edison, j'ai commencé : Intel Edison capteur tableau de bord à l'aide de franc-bord et PythonC'est aussi peu une augmentation de cette instructable :Quand j'ai commenc
Thermostat de 3 zones Arduino alimenté

Thermostat de 3 zones Arduino alimenté

Je regardais tous ces internet insistez zoomy thermostats connectés et contrôlables. « Soi », je me suis dit, « nous devrions faire un de ces ». Il ne semble pas tout ce qu'enthousiaste qui - je veux dire, que savons-nous sur le matériel, progiciels,
Lumières de Noël Musical Arduino alimenté

Lumières de Noël Musical Arduino alimenté

après explorant le site Instructables, j'ai trouvé quelques projets qui ont atteint un sommet de mon intérêt et ceux qui m'amènent à la réflexion, j'ai pu faire quelques lumières de Noël musicales. Plupart de ce que j'ai passé mon temps sur provenait
Super Simple inductance Joule Thief !

Super Simple inductance Joule Thief !

Hey tout le monde ! Dans ce Instructable je vais vous montrer comment faire votre propre voleur de joule inducteur simple, en un peu moins de 10 minutes ! Ce circuit est si simple, même ceux pas familier avec l'électronique peuvent essayer comme leur
Arduino alimenté les doublures de gants chauffants

Arduino alimenté les doublures de gants chauffants

Arduino alimenté gants chauffantsCe projet est sur la façon de rendre les monde plus intelligent chauffé gant des doublures de conditions extrêmement froides comme celles de Minnesota ou personnes qui ont syndrome(like me) de Raynaud. Ces gants vous
Très bon marché/Simple WiFi Shield pour Arduino et microprocesseurs

Très bon marché/Simple WiFi Shield pour Arduino et microprocesseurs

Mise à jour : 19 mai 2016Rev 14 de ce projet revise bibliothèques et code fonctionne avec les plug-in V2.2 ESP8266.com IDEMise à jour : 17 décembre 201511 Rev de ce projet nettoie les autres connexions tentatives s'il est déjà connecté. Utilise égale
Nocturnal Emissions : Mon Arduino alimenté par Internet activé rêve générateur

Nocturnal Emissions : Mon Arduino alimenté par Internet activé rêve générateur

nous avons tous besoin de rêver plus, j'ai donc créé ce Arduino alimenté « générateur de rêve » pour aider à planter des graines pour certains folie de penser grand.  Quand vous approchez le générateur d'un capteur à ultrasons Maxbotix déclenche lumi