Arduino + fischertechnik TX-C - connexion I2C vrai couleur capteur (3 / 6 étapes)

Étape 3: Arduino côté - logiciels

Arduino code est basé sur une bibliothèque pour le capteur. Le code est disponible ici dans la section pièces jointes en bas de la page.

Je souligne les parties les plus intéressantes provenant des quatre sections de l’esquisse de l’Arduino :

1• appel de bibliothèques

#inclure < Wire.h > #include "I2C_RGBC_Reader.h"

2• définition des variables et constantes

I2C_RGBC_Reader myRGBC_Reader ;

3• la procédure setup() lance le lecteur de couleur et appelle le tarage standard

myRGBC_Reader.begin ();
myRGBC_Reader.standard ();

L’adresse I2C est définie et tarage standard sont envoyés vers le capteur de couleur.

4• la procédure loop() comprend deux parties principales : une fonction memorise() apprend les couleurs

Serial.println ("apprendre de 0..3") ;
Serial.Print ("> coloris objet required\n") ;
while (!. Serial.available()) ;
myRGBC_Reader.memorise ((commande - 0 x 30)) ;

et une fonction de getRGBC() lit le cylindre tandis qu’une fonction recognise() identifie la couleur.

myRGBC_Reader.getRGBC (r, g, b, c) ;
myRGBC_Reader.recognise (n, p) ;

Calcul des distances repose sur la reconnaissance : le plus proche couleur mémorisée de la couleur en lecture est activée. Un indice de proximité est également prévu : il devrait être inférieure à 100 %, sinon la couleur retournée confiance est faible.

La couleur n est alors codé sur 2 bits et envoyé à la TX-C.

• cas ne = 0 aucun objet i1 = i2 0 = 0
• cas = 1 couleur bleue i1 = i2 0 = 1
• cas = 2 couleur rouge i1 = 1 i2 = 0
• cas = 3 couleur blanche i1 = 1 i2 = 1

Si (n == 0) {}
digitalWrite (out1pin, basse) ;
digitalWrite (out2pin, basse) ;
}
ElseIf (n == 1) {}
digitalWrite (out1pin, basse) ;
digitalWrite (out2pin, HIGH) ;
}
ElseIf (n == 2) {}
digitalWrite (out1pin, HIGH) ;
digitalWrite (out2pin, basse) ;
}
ElseIf (n == 3) {}
digitalWrite (out1pin, HIGH) ;
digitalWrite (out2pin, HIGH) ;
}
else {}
digitalWrite (out1pin, basse) ;
digitalWrite (out2pin, basse) ;
}

Articles Liés

Arduino Nano - MPU-6000 6 Axis Motion Tracking capteur tutoriel

Arduino Nano - MPU-6000 6 Axis Motion Tracking capteur tutoriel

MPU-6000 est un mouvement 6 axes suivi de capteur qui a accéléromètre 3 axes et 3 axes gyroscope intégré dedans. Ce capteur est capable de suivi efficace de la position exacte et l'emplacement d'un objet dans le plan en 3 dimensions. Il peut être uti
Comment partager la connexion i2C sur Due

Comment partager la connexion i2C sur Due

SalutJe veux juste partager que je suis en mesure de partager SCL1, SDA1 broche entre horloge RTC en utilisant la bibliothèque Adafruit RTClib.h avec leur RGBLCDShield. J'ai eu à faire la modification comme tout le monde mentionne dans les autres pos
Arduino Nano : Affichage analogique OLED I2C Simple SSD1306 avec Visuino

Arduino Nano : Affichage analogique OLED I2C Simple SSD1306 avec Visuino

Les écrans OLED sont parmi les plus cool et le plus avancés des modules que vous pouvez utiliser dans votre projet Arduino. Ils viennent à petit facteur de forme et ont de très faible consommation d'énergie tout en offrant des couleurs vives. Certain
Arduino couleur capteur sous 1$

Arduino couleur capteur sous 1$

alors voici mon premier instructable, à venir au sujet, c'est un capteur de couleur compatible arduino qui est extrêmement fait à petit prix (n'allez pas sur l'image j'ai ruiné ensemble lors de fixation du robot)...Étape 1: Collecte des matériaux rés
Contrôleur Midi de Arduino avec une Distance de ZX et geste capteur

Contrôleur Midi de Arduino avec une Distance de ZX et geste capteur

Bienvenue sur ce instructable comment construire un contrôleur Midi très basique avec le SparkFun ZX Distance et le capteur de mouvement. Cette instructable fait partie d'un travail scolaire.Remarque : Il s'agit d'aucun tutoriel codage. Le code final
Contrôle de moteur sans balai avec Arduino, récupéré moteur HD et des capteurs Hall

Contrôle de moteur sans balai avec Arduino, récupéré moteur HD et des capteurs Hall

il y a beaucoup d'intérêt ces jours-ci chez les amateurs dans le contrôle moteur Brushless DC (BLDC), qui ont amélioré la performance et une meilleure efficacité énergétique surREDUCTEUR traditionnels, mais sont plus difficiles à utiliser. Beaucoup d
Changement de RVB LED de couleurs + capteur de luminosité + LCD

Changement de RVB LED de couleurs + capteur de luminosité + LCD

ce projet incorporer une RGB led qui change de couleurs d'une manière continue, un écran LCD qui affiche la couleur actuelle et celle qui suit, ou, qu'il a mode différent, voir la vous l'intensité de la lumière sorounding, quand il n'y a enough.the p
Arduino - humidité et température DHT11 + LCD 1602A - capteur de KY-015

Arduino - humidité et température DHT11 + LCD 1602A - capteur de KY-015

Salut tout le monde! Aujourd'hui, j'ai fait un autre exemple pour l'un de la grappe du capteur que j'ai.Cette fois j'ai fait une simple station météo avec le DHT11 (ky-015) et l'écran LCD 1602A.Remarque !Si vous utilisez un I2C sur l'écran LCD j'ai d
Arduino Nano : Température et humidité Module de capteur DHT11/DHT21/DHT22 avec Visuino

Arduino Nano : Température et humidité Module de capteur DHT11/DHT21/DHT22 avec Visuino

DTH11 / DTH21 / DTH22 et AM2301sont des capteurs de température et humidité Arduino combinés très populaires.Dans ce Instructable, je vais vous montrer, comment il est facile de programmer Arduino pour les utiliser avec Visuino - un environnement de
Arduino et LEGO Train

Arduino et LEGO Train

Dans la dernière année ont participé à un atelier et nécessaires pour soumettre un projet. Comme j'ai appris à travailler avec l'Arduino et j'aime Lego. J'ai décidé de présenter un projet auquel ont participé tous les deux.Le projet consiste à avoir
Main suivi bras mécanique - Leap de mouvement + Pyduino

Main suivi bras mécanique - Leap de mouvement + Pyduino

Salut!Dans ce tutoriel, je vais vous les gars et les filles montrer comment assembler une main bras mécanique avec un bond de commande de mouvement, de suivi dispositif Arduino, quelques moteurs, quelques bois de balsa, trombones, colle chaude et un
Le Raspberry Pi - Arduino connexion

Le Raspberry Pi - Arduino connexion

la Pi est une carte d'ordinateur peu fine, mais pas presque aussi bon quel'Arduino lorsqu'il s'agit de capacités I/O. L'ingénierie magnifiquementGertboard est un plug-in qui surmonte parfaitement cette lacuneen donnant la Pi l'accès à un ATMega328, m
Comment faire un Artbot : couleur, télédétection, le dessin des robots Arduino, faire de l’art génératif

Comment faire un Artbot : couleur, télédétection, le dessin des robots Arduino, faire de l’art génératif

Pour les cours Hardware et Physical Computing supervisé par Paul Klomp, dans le cadre de la technologie des médias programma à l'Université de Leiden, nous avons créé deux robots de dessin. Chaque robot a été construit autour d'un Arduino Uno et équi
I2C entre Arduinos

I2C entre Arduinos

Peut-être que parfois nous voulons partager la charge de travail d'un Arduino avec un autre. Ou peut-être que nous voulons plusieurs broches analogiques ou numériques. Inter-Integrated Circuit ou I2C (prononcé j'ai squared C) est la meilleure solutio