Table des matières:
Vidéo: Détection des couleurs à l'aide de LED RVB : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:11
Avez-vous déjà voulu un moyen automatisé de détecter la couleur d'un objet ? En projetant une lumière d'une certaine couleur sur l'objet et en regardant la quantité de lumière réfléchie, vous pouvez savoir de quelle couleur est l'objet. Par exemple, si vous allumez une lumière rouge sur un objet rouge, cette lumière sera réfléchie. Si vous projetez une lumière bleue sur un objet rouge, l'objet absorbera une partie de cette lumière et une moindre partie sera réfléchie.
Étape 1: Pièces nécessaires
J'ai utilisé un microcontrôleur PIC 16F887, mais presque tous ceux dotés d'une capacité de modulation de largeur d'impulsion fonctionneront. 1 LED RVB1 Microcontrôleur1 LED rouge standard1 Résistance de 1k ohm1 Photorésistance (modifie la résistance en fonction de la quantité de lumière qui l'éclaire)Certains filsJe n'ai besoin que du microcontrôleur et de la LED RVB pour avoir une large gamme de détecteurs de couleur, mais si vous voulez seulement un circuit qui détecte une couleur, vous n'avez pas besoin d'un microcontrôleur - vous n'avez besoin que d'une LED lumineuse de la couleur que vous souhaitez détecter. La LED rouge standard est la "LED indicatrice" - elle s'allume lorsque la bonne couleur est détectée.
Étape 2: Construire le circuit
Le schéma est assez simple, et dans sa forme générale, est montré ci-dessous. La LED RVB est alimentée en externe par un signal PWM. J'ai mis du ruban électrique autour de la photorésistance pour que la lumière ambiante n'entre pas - seule la lumière directement au-dessus sera détectée.
Étape 3: Le code
Ce code a été écrit pour un Microchip PIC 16F887, mais j'espère que vous pourrez vous faire une idée générale. J'ai utilisé le potentiomètre intégré sur ma carte de développement pour faire varier le spectre de couleurs de la LED RVB (et ça ne passe pas par tout le spectre car je n'ai pas 3 modules PWM, mais c'est assez bon) Commentaires inclus. #include #include #include "delay.c"#include #include #use delay(clock = 4000000)#FUSES INTRC, NOWDT, NOPUT, NOMCLR, NOPROTECT, NOCPD, NOBROWNOUT, NOIESO, NOFCMEN, NOLVP#byte CCP1CON = 0x17# byte CCP2CON = 0x1D#byte PWM1CON = 0x9Bint value = 128;int p1 = 0;int p2 = 0;void my_setup_ccp1(int8) value{output_low(PIN_C2);CCP1CON = value;PWM1CON = 0;}void my_setup_ccp2(int8) value {output_low(PIN_C1);CCP2CON = valeur;}//=================================== annuler principal (){//A4 = source d'alimentation pour photodiodeoutput_high(PIN_A4);output_high(PIN_B1);setup_adc(ADC_CLOCK_INTERNAL);set_adc_channel(0);setup_adc_ports(sAN0);//Timer/Interrupt setupenable_interrupts(INT_TIMER2)cc;my_set my_setup_ccp2(CCP_PWM);setup_timer_2(T2_DIV_BY_1, 128, 1);//setup_compare(2, COMPARE_PWM|COMPARE_TIMER2);while(1){ // Empêche le PIC de se mettre en veille.//SET PWM DUTY CYCLE output_high(PIN_A5); // La broche A3 est la connexion de la photodiode if(input(PIN_A3) == 1) output_high(PIN_A4); else output_low(PIN_A4);//Lire la valeur du potentiomètre pour changer la couleur de la valeur LED = read_adc(); switch (valeur) { case 0: p1 = valeur; output_low(PIN_C0); p2 = valeur; Pause; cas 50: p1 = valeur; output_high(PIN_C0); p2 = valeur; Pause; cas 100: p1 = valeur; output_high(PIN_C0); p2 = valeur; Pause; cas 150: output_high(PIN_C0); p1 = 50; p2 = valeur; Pause; cas 200: output_low(PIN_C0); p1 = 0; p2 = valeur; Pause; cas 250: p1 = 0; p2 = valeur; output_low(PIN_C0); Pause; } p1 = valeur; p2 = 128 - p1; set_pwm1_duty(p1); set_pwm2_duty(p2);}}
Étape 4: Candidatures
Un simple détecteur de couleurs comme celui-ci peut être utilisé en robotique ou pour des projets sympas comme séparer les legos par couleur, trier les M&M ou comme aide au daltonisme. Espérons que cette instructable a été utile pour améliorer un projet que vous aviez en tête !:) Les LED sont bonnes pour tant de choses….
Conseillé:
Octarine : un jeu de correspondance des couleurs avec les LED RVB WS2812 : 6 étapes
Octarine : un jeu de correspondance des couleurs avec les LED RVB WS2812 : Octarine, la couleur de la magie. C'était vivant et brillant, vibrant et c'était le pigment incontesté de l'imagination, parce que partout où il apparaissait, c'était un signe que la simple matière était un serviteur des pouvoirs de l'esprit magique. C'était des enchanteurs
Détection simple des couleurs à l'aide d'OpenCV : 6 étapes
Détection de couleur simple à l'aide d'OpenCV : Salut ! Aujourd'hui, je vais montrer une méthode simple pour détecter une couleur à partir d'une vidéo en direct à l'aide d'OpenCV et de python. Fondamentalement, je vais simplement tester que la couleur requise est présente ou non dans le cadre d'arrière-plan et à l'aide des modules OpenCV, je vais masquer cette région et
Détection des couleurs en Python à l'aide d'OpenCV : 8 étapes
Détection des couleurs en Python à l'aide d'OpenCV : Bonjour ! Cette instructable est utilisée pour expliquer comment extraire une couleur spécifique d'une image en python à l'aide de la bibliothèque openCV. Si vous débutez dans cette technique, ne vous inquiétez pas, à la fin de ce guide, vous pourrez programmer votre propre couleur
Contrôle des couleurs des LED RVB : 4 étapes
Contrôle des couleurs des LED RVB : dans ce projet, nous allons apprendre à contrôler la luminosité et la couleur d'une LED RVB via des ports d'E/S avec une capacité de sortie PWM et des curseurs d'affichage tactile. L'écran tactile résistif 4Duino est utilisé comme un moyen pour une interface graphique de contrôler t
Faites défiler une LED RVB à travers le spectre de couleurs à l'aide d'un Raspberry Pi 2 et Scratch : 11 étapes
Faites défiler une LED RVB à travers le spectre de couleurs à l'aide d'un Raspberry Pi 2 et Scratch : Notes de mise à jour le 25 février 2016 : J'ai amélioré le programme Scratch et repensé mon instructable. Salut les gars, avec ce projet, je voulais utiliser Scratch pour faire défiler une LED RVB à travers le spectre de couleurs. Il y a beaucoup de projets qui le font avec t