dimanche 16 septembre 2012

Thermomètre digital-Cum-Controller


 thermomètre numérique autonome régule la température d'un dispositif selon l'exigence. Il affiche également la température sur quatre afficheurs 7 segments de l'ordre de -55 ° C à +125 ° C. Au cœur du circuit est le microcontrôleur AT89S8252, qui contrôle toutes les fonctions. IC DS1821 est utilisé comme capteur de température.

IC DS1821

Dallas Semiconductor IC DS1821 est un degré de précision du capteur de température dans un emballage 3-broche comme un transistor de protocole de communication unifilaire. Il peut fonctionner comme un thermostat autonome avec programmables par l'utilisateur des points de déclenchement (points de consigne) ou un capteur de température 8-bit avec une interface mono-fil numérique. Les drain ouvert DQ fonctions des broches de sortie pour que le fonctionnement du thermostat et que les données d'entrée / sortie (I / O) des broches pour un seul câble de communication. L'interface mono-fil permet à l'utilisateur d'accéder voyage dans la mémoire non-volatile thermostat (EEPROM) points registres (TH et TL), l'état de configuration / registre et le registre de la température. 
     
Lorsqu'il est configuré comme thermostat autonome, les conversions de température commence immédiatement lorsque l'alimentation est activée sur. Dans ce mode, la broche DQ devient active lorsque la température de l' IC DS1821 dépasse la limite déjà programmée dans le registre TH, et reste active jusqu'à ce que la température descend en dessous de la limite programmée dans le registre TL. 
     
Le DS1821 utilise Dallas exclusif mono-fil protocole de bus qui implémente la communication par bus avec un signal de commande. 

fonctionnalité Sonde de température

La fonctionnalité de base de circuit intégré DS1821 est sa propriété directe-numérique de détection de température, qui fournit 8-bit (1 ° C) incrément centigrades lectures de température sur toute la plage de - 55 ° C à +125 ° C.    
     
Ce circuit mesure de température en comptant le nombre de d'horloge de cycles générés par un oscillateur avec un faible coefficient de température pendant une période de temps de grille déterminée par un haut coefficient de température d'oscillateur. 
     
La faible coefficient de température compteur est initialisé avec une base de comptage qui correspond à -55 ° C. Si le compteur atteint '0 'avant la période de grille est terminée, la température du registre, qui est préréglé à -55 ° C, est incrémenté d'une mesure, et le compteur est à nouveau préréglage avec une valeur de départ déterminée par la pente interne accumulateur circuit du DS1821. La valeur de présélection du compteur est unique pour chaque température d'incrémentation et compense le comportement non linéaire des oscillateurs sur la température. 

A cette époque, le compteur est cadencé à nouveau jusqu'à ce qu'il atteigne '0 '. Si la période n'est pas au-dessus de la porte lorsque le compteur atteint '0 ", la température du registre est incrémenté à nouveau. Ce processus de préréglage du compteur, le compte à rebours à '0 ', et incrémenter le registre de température est répété jusqu'à ce que le compteur prend moins de temps pour parvenir à '0 'à la durée de la période de grille de la haute température, coefficient d'oscillateur. Lorsque cette itératif processus est terminé, la valeur dans le registre de température indique la température centigrade de l'appareil. 
Modes de fonctionnement

Le DS1821 exploitation dispose de deux modes: le mode mono-fil et en mode thermostat. La mise sous tension "on" mode de fonctionnement est déterminé par l'programmable par l'utilisateur  dans le bit d'état / enregistrer la configuration: si = 0 dans le dispositif fonctionne seul fil mode, et si = 1 le dispositif fonctionne dans le thermostat mode. Le bit est stocké dans la mémoire non volatile (EEPROM), afin qu'elle conserve sa valeur lorsque le dispositif est mis hors tension. 
     
monofilaire mode. La DS1821 est fournie par le fabricant en toile unique mode ( = 0). Dans ce mode, la broche DQ de la DS1821 est conçu comme un fil unique port pour la communication avec une unité de commande (microcontrôleur) selon les protocoles décrits dans l'unique fil de bus de système section de la feuille de données. Ces communications peuvent inclure la lecture et l'écriture des hauts et des bas point de déclenchement du thermostat registres (TH et TL) et le registre de configuration, et la lecture de la température, contre- pente et registres d'accumulateurs. Également dans ce mode, le microcontrôleur peut lancer et arrêter des mesures de température comme décrit dans la température de fonctionnement de mesure de la section de la fiche technique. 

Les TH et TL registres et bits (certains THF, TLF, , POL et 1SHOT) dans l'état de configuration /  registre sont stockées dans la mémoire non volatile EEPROM mémoire, de sorte que ces va conserver les données lorsque l'appareil est mis hors tension. Ce permet aux registres pour être pré-programmée lorsque le DS1821 doit être utilisé en mode autonome thermostat. 

L'écriture dans ces registres non volatils peut prendre jusqu'à 10 ms. Pour éviter que des données corruption, aucune action d'écriture non volatile à la mémoire doit être initié pendant une écriture dans la mémoire non volatile est en cours. État d'écriture non volatile peut être contrôlé par lecture du bit NVB dans l'état / registre de configuration: Si NVB = 1, une écriture dans la mémoire EEPROM est en cours. NVB Si = 0, la mémoire non-volatile est en mode veille.
Description du circuit

Fig. La figure 1 représente le circuit de commande de température en utilisant le capteur de température Dallas DS1821. Microcontrôleur AT89S8252 est interfacé avec capteur de température DS1821, trois afficheurs 7 segments et relais RL1. Le port P1 de IC1 est utilisé pour délivrer les données sur le secteur d'affichage. Broches du port P1.0 à travers P1.3 et P1.4 broches du port à travers P1.7 sont connectés à IC3 et IC2, respectivement. CI CD4511 (IC3 et IC2) recevoir les données BCD et fournir le code compatible pour afficheurs 7 segments DIS2 et DIS3. 
     
broches P3.4 et P3.5 Port sont utilisés pour «b», «c» et «g segments 'de DIS4 par des tampons, N1, N2 et N3, respectivement. Segments «b» et «c» deviennent actifs lorsque la température dépasse 99 ° C. Segment «g» devient active lorsque la température descend en dessous de 0 ° C. Cela indique signe '-' pour température négative. DIS1 est utilisé dans le sens inverse pour l'indication de direction ° C. Segments «un», «b», «g» et «dp» (virgule) sont mises en permanence élevée avec résistances R19 par R22 pour indiquer ° C. 

broches du port P3.1 P3.3 travers de IC1 sont connectés à S2, S3 et S4 interrupteurs pour 'up', 'down' et 'display' , respectivement. Ces broches sont tirée vers le haut par un 10-kilo-ohm résistance. Interrupteurs S1 à S3 sont utilisées pour la mise en / modifier la température. Lorsque la température réglée est dépassée, le relais est connecté au port broches 3,7 à travers un transistor est bloqué sur. Interrupteur S1 est utilisé en tant que remise à zéro de commutation. La mise sous tension "on" reset est réalisé par le condensateur C3 et la résistance R4. 
     
port broche P3.0 de IC1 reçoit les données de capteur de température DS1821. 17 broches (P3.7) de IC1 est reliée à la base du transistor T1 à travers un tampon N4. Le signal de Port Pin P3.7 lecteurs relais RL1. Diode D1 est utilisé comme une diode de roue libre et est utilisé pour LED2 -relais 'on' indication. L'appareil est connecté au moyen de contacts de RL1. Résistances R5 R22 et R26 par R28 travers limiter le courant à travers l' affichage à 7 segments. Un cristal de 12MHz est utilisé pour microcontrôleur horloge.





samedi 8 septembre 2012

Affichage des messages Sur la route du LCD

Moving-message s'affiche sont idéales pour faire passer votre message (annonces, salutations, etc) à travers une façon accrocheuse. Vous pouvez faire un écran LCD affiche un message bref mouvement en le interfaçage avec un microcontrôleur. Voici un AVR-base-mobile un message d'affichage qui utilise un 16 × 2 écran LCD intégrant HD44780. L'écran LCD 16 × 2 peut afficher 16 caractères par ligne et il ya deux lignes. Description du montage Fig. 1 représente le circuit pour l'AVR ATmega16 basée mouvement de message d'affichage sur un écran LCD. Il se compose d'un microcontrôleur ATmega16, un 16 × 2 LCD, un connecteur SPI6 et une section d'alimentation.




Pour obtenir le bloc d'alimentation pour le circuit, 230V AC est abaissée par un 9V, 250mA secondaire de transformateur, redressée par le pont redresseur BR1A module et filtré par le condensateur C1. La tension est régulée par un régulateur 7805. LED1 s'allume pour indiquer la présence de la puissance dans le circuit. Le réglementé 5V DC alimentant le circuit entier, y compris SPI6 connecteur. Port-C broches PC4 travers PC7 du microcontrôleur (IC2) sont connectées aux lignes de données D4 D7 travers de l'écran LCD. L'écran LCD de contrôle lines-read/write (R / W), le registre de sélection (RS) et de validation (E)-sont connectés à PD6, PC2 et PC3 de IC2, respectivement. microcontrôleur AVR Pourquoi? AVR est plus rapide et plus puissant que microcontrôleur 8051, encore assez cher et en circuit programmable. La plupart des logiciels de développement d'AVR sont gratuits car ils sont Open Source. En outre, des discussions et des tutoriels sur la famille de processeurs AVR sont disponibles sur l'Internet. ATmega16 est une haute performance, de faible puissance microcontrôleurs AVR 8-bit. Il dispose de 16 Ko de dans-système d'auto-programmable éclair, 1 ko de SRAM interne, 512 octets de EEPROM, 32 × 8 registres généraux de travail et de l'interface JTAG (qui prend en charge la programmation de Flash, EEPROM, fusible et bits de verrouillage). Certaines des fonctionnalités sur puce périphériques sont les suivants: 1. Deux 8-bits temporisateurs / compteurs séparés avec pré-mise à l'échelle et de comparer les modes 2. Un 16-bit de temporisation / compteur séparé avec pré-mise à l'échelle, comparateur et modes de capture 3. Quatre de largeur d'impulsion de modulation des canaux 4. 8-canaux, 10-bit analogique-numérique 5. Orienté octet bifilaire interface série 6. Programmable USART série 7. Maître / esclave interface de périphérique série 8. Temporisateur chien de garde programmable avec distinct sur-puce oscillateur module d'affichage LCD Le projet utilise un Hitachi HD44780 contrôlée par le module LCD. Le contrôleur HD44780 nécessite trois lignes de commande et quatre ou huit entrées / sorties (I / O) des lignes de bus de données. L'utilisateur peut choisir d'utiliser l'écran LCD avec un bus de 4 bits ou 8 bits de données. Si un bus 4-bit de données est utilisé, l'écran LCD, il faudra un total de sept lignes de données, trois lignes pour l'envoi de signaux de commande à l'écran LCD et quatre lignes de bus de données. Si un bus 8 bits de données est utilisé, l'écran LCD, il faudra un total de onze lignes de données, trois lignes de contrôle et huit lignes de bus de données. La ligne de commande de validation est utilisé pour indiquer l'écran LCD que le microconroller envoie les données à elle. Pour envoyer des données à l'écran LCD, vérifiez d'abord que la ligne de validation est bas (0). Lorsque les lignes de contrôle d'autres sont tout à fait prêt, assurez permettre élevé de broches et d'attendre que l'écran LCD soit prêt. Cette fois-ci est mentionné dans la fiche technique et varie d'un écran LCD à écran LCD. Pour arrêter l'envoi des données, mettre la commande enable bas (0) à nouveau. Fig. 2 montre le chronogramme de lignes de contrôle LCD pour 4 bits de données en cours de fonctionnement en écriture. Lorsque la ligne de sélection de registre est bas (0), les données sont traitées comme une commande ou une instruction spéciale (comme un écran clair et la position du curseur). Quand le registre de sélection est élevée (1), les données de texte sont envoyés s'affiche à l'écran. Par exemple, pour afficher "L" lettre sur l'écran, sélectionnez-registre est trop élevée. Lorsque la lecture / écriture ligne de contrôle est faible, les informations sur le bus de données est écrit sur ​​l'écran LCD. Lors de la lecture / écriture est élevé, le programme efficacement les requêtes (ou lit) l'écran LCD. Cette commande contrôle peut être mis en œuvre en utilisant le langage de programmation "C". Pour les données d'interface 4-bits, seules quatre lignes de bus (D4 D7 travers) sont utilisés pour le transfert de données. Les lignes de bus D0 à D3 sont désactivées. Le transfert de données entre HD44780 et le microcontrôleur termine une fois que les données de 4 bits est transféré deux fois.



Contrôle d'une norme numérique LCD n'est pas si difficile. Pour afficher le texte sur l'écran LCD, les fichiers de bibliothèque corrects pour l'écran LCD sont nécessaires. Plusieurs bibliothèques LCD sont disponibles sur l'Internet, qui sont utilisés dans diverses applications. Vous risquez d'être gêné dans quelle bibliothèque est adapté à votre application. Bibliothèques pour les écrans LCD trouvés dans la bibliothèque AVRLIB occupent inutilement l'espace mémoire du programme. Pour résoudre le problème, vous pouvez écrire votre propre bibliothèque pour contrôle LCD. programme Software Ce projet démontre envoyer le texte au contrôleur LCD et le défilement dans l'écran LCD. Pour le projet, AVR Studio 4 et WINAVR logiciels doivent être installés sur votre PC. Trois codes de programme sont utilisés ici-movm.c, lcd2.c et lcd2.h. Le movm.c contient le message texte à faire défiler sur l'écran LCD. lcd2.c et lcd2.h sont les fichiers de bibliothèque. La technique de programmation donnée ici peut-être pas la meilleure car elle utilise une logique simple, mais ça marche plutôt bien. La bibliothèque LCD pour 4 lignes ou le fonctionnement en mode 4 bits est utilisé ici. Chaque broche connectée à l'écran LCD peuvent être définis séparément dans le code lcd2.h. L'écran LCD et AVR configurations de ports dans le code C ainsi que les commentaires sont donnés ci-dessous: # define LCD_RS_PORT LCD_PORT LCD port RS ligne # define LCD_RS_PIN 2               bits PORTC 2 pour RS ligne # define LCD_RW_PORT PORTD    Port pour la ligne RW # define LCD_RW_PIN 6             bits PORTD 6 pour la ligne RW # define LCD_E_PORT LCD_PORT  LCD port pour ligne de validation # define LCD_E_PIN 3                 bits PORTC 3 pour ligne de validation Activer la ligne de commande. La ligne de commande E est utilisé pour indiquer l'écran LCD que l'instruction pour envoyer les données sur le bus de données est prêt à exécuter. E doit toujours être manipulé lors de la communication avec l'écran LCD. Autrement dit, avant d'interagir avec l'écran LCD, la ligne E est toujours faible. Les instructions suivantes basculer broche de validation pour lancer l'opération d'écriture: / * toggle broche de validation pour lancer  écrire * /  static void toggle_e (void)   {     lcd_e_high ();   lcd_e_delay ();  lcd_e_low ();  }    La sous-routine complète de ce code peut être consulté dans lcd2.c. La ligne E doit être laissée élevé pour le temps requis par l'écran LCD pour se préparer à recevoir les données, il est normalement d'environ 250 nanosecondes (consulter la fiche de la durée exacte). qu'occupé de l'écran LCD. Cela prend un certain temps pour chaque instruction devant être exécutée par l'écran LCD. Le délai varie en fonction de la fréquence du cristal relié à l'entrée de l'oscillateur HD44780 ainsi que l'instruction en cours d'exécution. S'il est possible d'écrire le code qui attend un laps de temps précis pour permettre à l'écran pour exécuter des instructions, cette méthode d'attente n'est pas très flexible. Si la fréquence de l'oscillateur est modifié, le logiciel doit être modifiée. En outre, si l'écran lui-même est changé, le programme pourrait ne pas fonctionner même si le nouvel écran LCD est compatible HD44780. Le code doit être modifié en conséquence. Le retard ou l'instruction d'attente peut être facilement mis en œuvre en langage C. C En programmation, le retard est appelé en utilisant le retard () la fonction. Par exemple, le retard (16000) de commande donne un délai de 16 millisecondes. L'initialisation de l'écran LCD. Avant d'utiliser l'écran LCD, il doit être initialisé et configuré. Ceci est accompli par l'envoi d'un certain nombre d'instructions d'initialisation de l'écran LCD. Dans WINAVR programmation GCC donné ici, la première instruction définit la fréquence du quartz utilisé dans le circuit. Il est suivi par un fichier d'en-tête standard pour AVR spécifiques à l'appareil d'E / S de fichier d'en-tête et les définitions pour intégrer les services du programme spatial de chaîne. Les étapes d'initialisation dans le fichier movm.c sont les suivantes: # define F_CPU 16000000  # include



# Include 
# Include 
# Include "lcd2.h"  
# Define dose de 250 

Effacement de l'écran. Lorsque l'écran LCD est d'abord initialisé, l'écran devrait automatiquement être autorisé par le contrôleur HD44780. Cela permet d'effacer l'écran de tout texte indésirable. Effacement de l'écran garantit également que le texte affiché sur l'écran LCD est celle destinée à l'affichage. Une commande LCD existe dans «Assemblée» pour accomplir cette fonction d'effacement de l'écran. Sans surprise, la fonction AVR GCC est flexible et facile à mettre en œuvre.

Reportez-vous au code ci-dessous:
lcd_init (LCD_DISP_ON);      
lcd_clrscr ();                     

Voici la première ligne est pour l'initialisation LCD (allumer l'écran LCD) avec le curseur «off». La deuxième ligne efface la routine d'affichage pour effacer l'écran LCD.

. Rédaction d'un texte à l'écran LCD Pour écrire un texte à l'écran LCD, le texte désiré est mis en mémoire en utilisant la chaîne char [] fonction comme suit:

char string [] = PROGMEM "wecome A 
ELECTRONIQUE POUR VOUS - New Delhi "; 

Le programme rend cette défilement du texte sur la première ligne, puis la deuxième ligne de l'écran LCD. La vitesse de défilement du texte sur l'écran LCD est définie par "# define TAUX 250" dans le début du code movm.c. Pour commencer, tout d'abord l'écran LCD est effacé et l'emplacement du premier caractère d'apparaître sur l'écran est définie. Obtenir le texte de la mémoire de programme, puis faire défiler sur l'écran LCD continue est obtenue en utilisant le code suivant:

tandis que (j <= (len-1))  
    {    
        lcd_clrscr ();  
        lcd_gotoxy (0,0); 

        pour (k = 0, i = j, (k <16) && (pgm_  
        read_byte (et string [i])! = '\ 0'  
        ), K + +, i + +)   
        {  
          lcd_putc (pgm_read_  
          octet (et string [i]));  
        }   

        WaitMs (RATE);  
        j + +;  
    }   

La compilation et la programmation. Compilation du movm.c pour générer le code movm.hex est simple. Ouvrir AVR Studio4 sur le bureau et sélectionnez Nouveau projet dans l'option de menu 'Projet'. Sélectionnez AVR GCC option et entrez le nom du projet. Ensuite, sélectionnez 'AVR Simulator "et cliquez sur bouton' Ok '.

Copiez d'abord les trois codes (movm.c, lcd2.c et lcd2.h) sur votre ordinateur. Importez les fichiers movm.c et lcd2.c dans l'option "fichiers source" sur le côté gauche de l'écran. Ensuite, importez le fichier lcd2.h dans l'option «Fichiers d'en-tête. Sélectionnez le périphérique que ATmega16 et cochez la case contre l'option "Créer Hex" dans la fenêtre de configuration du projet. Maintenant, cliquez sur "Rebuild All" option dans 'Build' menu. Si le code est compilé sans erreur, le code movm.hex est générée automatiquement dans "Default" dossier du dossier du projet.




Pour graver le code hexadécimal dans ATmega16, n'importe quel programmeur standard supportant ATmega16 appareil peut être utilisé. Il ya quatre différents modes de programmation AVR:
1. Programmation in-situ (ISP)
2. Haute tension de programmation
3. L'action conjointe des groupes de test (JTAG) de programmation
4. Programme et l'interface de programmation de débogage

Voici deux options pour brûler le code hexadécimal de la norme ISP mode sont expliquées. Certains outils qui prennent en charge AVR ISP programmation comprennent STK600, STK500, mkII AVRISP, mkII JTAGICE et AVR Dragon. Il ya aussi de nombreux autres outils de programmation AVR disponibles sur le marché.

PonyProg2000 logiciel. Ce logiciel ainsi que des circuits de programmation est disponible à partir de www.lancos.com / prog.html site. Après avoir installé PonyProg2000, sélectionnez la famille d'appareils comme régulateur Micro et type d'appareil que ATmega16. Or, dans "Setup" du menu, sélectionnez "SI Prog 'option E / S pour le programmeur de série et le port COM de l'option« Configuration de l'interface. En option «Sécurité et Configuration Bits", configurer les bits comme indiqué dans la Fig. 3. Ensuite, ouvrez le fichier de périphérique (code hexadécimal) et cliquez sur «Write All" option de gravure de la puce.

Frontline TopView logiciel. Ce logiciel ainsi que programmeur-pension est disponible à partir de www.frontline-electronics.com site. Après avoir installé le logiciel, sélectionner le port COM dans le menu "Paramètres". Dans «périphérique» du menu, sélectionnez le périphérique que ATmega16. Gravez le code hexadécimal dans la puce en cliquant sur ​​"Programme" option. Notez que le microcontrôleur utilise une horloge de 16MHz généré à l'extérieur. Programme des bits fusibles dans le logiciel en sélectionnant octets supérieurs et inférieurs comme suit:

Fusible octet de poids faible = EF 
Fusible octet haut = C9  

Si les bits fusibles ne sont pas configurés correctement, le texte défile lentement ou le défilement du texte peut ne pas fonctionner correctement, même si la vitesse de défilement dans le code est changé. Le connecteur SPI6 vous permet de programmer l'AVR en utilisant l'adaptateur SPI en mode ISP




mardi 4 septembre 2012

Arduino Jour Nuit Contrôleur solaire

INTRODUCTION

Il s'agit d'un Arduino lumière contrôlée unité de détection de commutation. Son utilisation principale est de contrôler les lumières solaires s'allument quand il fait noir dehors, mais il peut fonctionner dans de nombreuses autres applications. Cet article vous guidera à travers tous les aspects du processus de construction. La connaissance préalable de l'unité Arduino n'est pas nécessaire car le code et le schéma ont été fournies pour vous. Ce projet serait assez complexe à construire sans un Arduino, c'est un bon exemple de la façon dont un microcontrôleur peut faire un circuit beaucoup moins complexe, avec moins de matériel d'essai et d'erreur.

Spécifications

Tension d'entrée: 7 à 18 Volts DC
Puissance de commutation: 3 Amps *
Gamme de luminosité: Variable, Très Lumineux à Dark * Ajout d'un relais peut augmenter considérablement l'intensité du courant de commutation

EXPLICATION
Ce projet comporte trois sections principales, l'unité Arduino, le logiciel et le circuit
Le circuit est composé de deux sections, la détection de lumière et de la puissance de commutation. La partie de détection de lumière est constitué d'une photo-résistance R4 , connecté comme un diviseur de tension à R2 . Car la résistance des changements photo-résistance en fonction de la quantité de lumière qui brille sur elle, la tension de diviseur de tension en fonction des changements de rapport de la quantité de lumière présente. La tension passant par cette partie du circuit est de 5 volts en courant continu, fournie par la carte Arduino à J4 du circuit. De sorte que le diviseur de tension divise la tension entre les 5 volts au maximum, pour les minima 0 volts. Les sens Arduino cette tension sur le "0 Pin analogique" qui se connecte à J3 sur le circuit. C'est ce qu'on appelle "analogRead», il divise les 0 à 5 volts par 1024 (10 bits, soit 2 ^ 10) de sorte qu'il peut détecter un changement dans la tension aussi faible que 0,0048 d'un volt.
La puissance de commutation section du circuit est assez simple: il utilise un transistor NPN Q1 de commutation, qui est numériquement contrôlés par la carte Arduino de 'Digital Pin 3' relié au circuit par le biais J2. Il passe la branche négative de la tension d'alimentation à partir de J1. J5 est l'endroit où une lumière basse tension ou tout ce que vous voulez allumé et éteint est connecté.
Il n'ya pas de R3 sur le schéma, mes excuses j'ai marqué le R4 photo-résistance sur un accident, désolé. J'ai inclus deux différentes conceptions de PCB cuivre fond, on a un plan de masse et l'autre pas. Utilisez celui que vous préférez. 

Je ne vais pas entrer dans les parties de l'Arduino, principalement parce qu'il est déjà une unité bien documenté. L'image du haut devrait faire assez évident de voir comment il est connecté. La principale chose à surveiller est le cavalier PWR SEL entre l'USB et le connecteur PWR, doit être mise sur EXT, si elle n'est pas alimenté par le port USB. S'il ya quelque chose que vous ne comprenez pas, vous aurez beaucoup plus d'aide de leur page d'accueil: http://arduino.cc/en/Guide/HomePage

LISTE DES PIÈCES 
PCB






samedi 1 septembre 2012

Chargeur de batterie polyvalent

Ce transformateur de circuit à base de chargeur de batterie peut être utilisé pour charger des batteries, à condition que la puissance du transformateur est supérieure à la cote de la batterie. Normalement, un régulateur linéaire IC est utilisé pour charger. Mais ce circuit chargeur utilise un commutateur de type MOSFET, qui s'appuie de manière efficace depuis le transformateur de courant lorsque la tension est proche de la tension de la batterie souhaitée de charge. La pleine onde pont redresseur redresse la sortie du transformateur et la combinaison de la diode D5 et le condensateur C1 permet de polarisation de grille tension à transistor MOSFET (T2). Diode Zener ZD1 maintient la tension de grille à un maximum de 12V par rapport à la source. Le potentiel alternative redressée est aussi divisée par la combinaison de la résistance R1 et le 5-kilo-ohm préréglée VR1 pour régler la tension de charge.


Lorsque la tension alternative redressée est en dessous du seuil de IC1 (TL431), le MOSFET est conducteur. Filtre condensateur C2 à ses frais de sortie à travers la diode D6. Comme la tension redressée diminue de crête à 0V, IC1 s'éteint à environ 13.6V. Le transistor T1 conduit à donner une autre impulsion de courant pour charger le condensateur C2. Ainsi drain de puissance à partir du transformateur a lieu sous forme d'impulsions courtes et la batterie se recharge entre les impulsions. Afin de limiter le courant de charge de la batterie, le courant traversant la batterie est détectée par la résistance R3. Une fois la chute de tension dans R3 atteint le seuil base-émetteur du transistor T1, elle conduit à tourner sur IC1, qui, à son tour, se coupe T2 MOSFET. Ce processus se poursuit, ce qui limite le courant de charge de la batterie.

samedi 25 août 2012

Microcontrôleur basé sur le chargeur solaire


 les sources d'énergie conventionnelles appauvrir de jour en jour, le recours à des sources d'énergie alternatives comme l'énergie solaire et l'énergie éolienne l'énergie est devenue nécessité de l'heure. 

systèmes d'éclairage à énergie solaire sont déjà disponibles dans les zones rurales comme les zones urbaines. Il s'agit notamment de lanternes solaires, systèmes d'éclairage domestiques solaires, lampadaires solaires, lampes de jardin solaires et des blocs d'alimentation solaire. Tous se composent de quatre éléments: Module solaire photovoltaïque, batterie rechargeable, régulateur de charge solaire et la charge.

Dans le système d'éclairage à énergie solaire, régulateur de charge solaire joue un rôle important en tant que système global de succès dépend principalement de celui-ci. Il est considéré comme un lien indispensable entre le panneau, la batterie solaire et la charge.

Le contrôleur microcontrôleur de charge solaire décrite ici a les suivantes caractéristiques:

1. Automatique du crépuscule à l'aube fonctionnement de la charge 
2. Built-in voltmètre numérique (0V-20V) 
3. En parallèle ou en dérivation régulation de type 
4. Protection contre la surcharge 
5. Affichage de l'état du système sur l'écran LCD 
6. Protection contre la décharge 
7. Verrou de la batterie faible 
8. Charge courant passe à 'impulsion' à pleine charge 
9. Faible consommation de courant 
10. Conception hautement efficace basé sur le microcontrôleur 
11. Convient pour 10-40W panneaux solaires pour 10A de charge


figure1;Circuit microcontrôleur chargeur solaire




Le circuit du régulateur de charge solaire est montré dans la Fig. 1. Il comprend un microcontrôleur AT89C2051, serial analogique-numérique ADC0831, optocoupleur MCT2E, régulateur 7805, les MOSFET BS170 et IRF540N, transistor BC547, LCD et quelques composants discrets. Description des composants est donnée ci-dessous.

Microcontrôleur. AT89C2051 microcontrôleur est le coeur du circuit. Il s'agit d'une basse tension, haute performance, microcontrôleur 8-bits qui dispose de 2 ko de mémoire Flash, 128 octets de RAM, 15 entrées / sorties (I / O), deux lignes de 16-bit temporisateurs / compteurs, un vecteur de cinq l'architecture à deux niveaux d'interruption, un port série en duplex intégral, un comparateur analogique de précision, sur la puce d'oscillateur et un circuit d'horloge. Un cristal de 12MHz est utilisé pour fournir la fréquence d'horloge de base. Toutes les broches E / S sont réinitialisées à '1 'dès que la broche RST passe au niveau haut. Tenir pin RST élevé pour deux cycles de la machine, tandis que l'oscillateur est en marche, l'appareil se réinitialise. Réinitialisation de mise sous tension est dérivée de la résistance R1 et le condensateur C4. Basculer S2 est utilisé pour réarmement manuel. 
     
série ADC.   L'microcontrôleur surveille la tension de la batterie à l'aide d'un convertisseur analogique-numérique du convertisseur. Le ADC0831 approximatif 8-bit successif analogique-numérique avec une entrée / sortie série et le temps de conversion très faibles typiquement de 32 ms. L'entrée de tension différentielle analogique permet l'augmentation de la réjection en mode commun et la compensation de l'analogue de tension d'entrée nulle. En outre, la référence de tension d'entrée peut être réglée pour permettre le codage d'une tension analogique inférieure à portée les huit bits de pleins de résolution. Il est disponible dans un boîtier SOIC 8 broches, et peut être interfacé à l' microcontrôleur avec seulement trois fils. 
     
module LCD. Le système d'état et tension de la batterie sont affichés sur un écran LCD HD44780 basée sur contrôleur. Le rétro-éclairage de l'écran LCD caractéristique rend lisible même en faible luminosité conditions. L'écran LCD est utilisé ici dans mode 4 bits à enregistrer le microcontrôleur broches du port. Habituellement, le 8-bit mode d'interfaçage avec un microcontrôleur nécessite onze broches, mais 4-bit mode de l'écran LCD peut être interfacé avec le microcontrôleur en utilisant seulement sept broches. 
     
panneau solaire. L'énergie solaire panneau utilisé ici est destiné à charger une batterie 12V et la puissance peut varier de 10 à 40 watts. La tension de sortie maximale à vide du panneau solaire sera d'environ 19 volts. De plus grande puissance des panneaux peut être utilisé avec quelques modifications à l'unité de commande. 

batterie rechargeable. L'énergie solaire est convertie en énergie électrique et stockée dans une batterie de 12V plomb-acide de la batterie. Les gammes de capacité ampère-heure à partir de 5 Ah à 100 Ah. 
     
Dusk à l'aube du capteur. Normalement, dans un système solaire photovoltaïque basée sur l'installation, par exemple, la maison d'éclairage solaire système, lanterne solaire ou solaire lampadaire-la charge (la lumière) est allumé au crépuscule (le soir) et éteint à l'aube (matin). Pendant la journée, la charge est déconnectée de la batterie et la batterie se recharge avec courant du panneau solaire. Le microcontrôleur a besoin de connaître la présence de la tension de panneau solaire pour décider si la force doit être connecté à ou déconnecté de la batterie, ou si la batterie doit être en charge le mode de décharge ou le mode. Circuit de capteur simple, est construit en utilisant un diviseur de potentiel formée autour de résistances R8 et R9, ZD1 diode Zener et le transistor T1 de la présence de la tension du panneau.
     
Contrôle de charge. relais RL1 relie le panneau solaire à la batterie à travers la diode D1. Dans des conditions normales, il permet au courant de charge à partir du panneau de s'écouler dans la batterie. Lorsque la batterie est à pleine charge (14.0V), le courant de charge devient «pulsé». Pour maintenir la consommation globale actuelle du régulateur solaire faible, normalement fermé (N / C) contacts du relais sont utilisés et le relais est normalement en état ​​désexcité.
     
Contrôle de la charge. respectivement une borne de la charge est connectée à la batterie via un fusible F1 et une autre borne de la charge à une puissance MOSFET à canal n T3. MOFETs sont axées tension les périphériques qui nécessitent pratiquement pas de lecteur en cours. Le courant de charge doit être limité à 10A. Un MOSFET supplémentaire est connecté en parallèle pour plus de 10 A de courant de charge.

Description du circuit

Fondamentalement, il existe deux méthodes de contrôle du courant de charge: la régulation série et en parallèle (shunt) la réglementation. Un régulateur série est insérée entre le panneau solaire et la batterie. Le type de série de la réglementation «déchets», une grande quantité d'énergie pendant le chargement de la batterie comme le circuit de commande est toujours actif et régulateur série nécessite la tension d'entrée à 3-4 volts supérieure à la tension de sortie. Le courant de sortie et la tension d'un panneau solaire est régi par l'angle d'incidence de la lumière, ce qui maintient variable. 
     
réglementation parallèle est préférable dans le domaine solaire. En régulation parallèle, le circuit de commande permet le chargement en cours (même en mA) de s'écouler dans la batterie et arrêter la charge lorsque la batterie est complètement chargée. A ce stade, le courant de charge est gaspillée par la conversion en chaleur (courant passe à travers de faible valeur, à puissance élevée résistance); cette partie du règlement dissipe beaucoup de chaleur. 
     
Dans ce projet, nous avons utilisé la technique de régulation parallèle, mais au lieu de gaspiller le courant de charge sous forme de chaleur, nous en avons fait pulsée et appliquée à la batterie pour maintenir la batterie sommet-up. 
     
Après la mise sous tension, le microcontrôleur lit la tension de la batterie à l'aide de l'ADC et affiche les valeurs de la LCD. Il surveille le signal d'entrée du capteur du crépuscule à l'aube et active la charge ou la charge relais RL1 en conséquence. Le voltmètre numérique fonctionne à 20V. Que V ref de l'ADC est reliée à V CC (5 V), la tension d'entrée de l'ADC ne peut pas dépasser +5 V. Un diviseur de potentiel est utilisée à la broche 2 de l'ADC (IC2) à l'aide des résistances R5, R6 et R7 pour réduire la tension de 0V-20V à 0V-05V. La sortie du CAN est multiplié par quatre fois et s'affiche sur l'écran LCD tension de la batterie. 
     
Lorsque la tension du panneau solaire est présent, le capteur du crépuscule à l'aube fournit un signal au microcontrôleur, qui affiche alors «charger» un message sur l'écran LCD. Pendant la charge, la tension de la batterie est contrôlé en permanence. Lorsque la tension atteint 14.0V, les interruptions du microcontrôleur du courant de charge en alimentant le relais, qui est reliée à MOSFET BS170 (T2), et lance un temporisateur 5-minute. Lors de cette étape, l'écran affiche "batterie pleine." 
     
Au bout de cinq minutes, le relais se reconnecte le panneau à la batterie. De cette façon, le courant de charge est pulsé à des intervalles de cinq minutes et le cycle se répète jusqu'à ce que la tension du panneau est présent. 
     
Lorsque la tension tombe en dessous du panneau de diodes Zener (ZD1) de tension du capteur du crépuscule à l'aube, les microcontrôleurs sens ce et active la charge en activant MOSFET T3 via optocoupleur IC3 et "charge" un message est affiché. 
     
Dans ce mode, les moniteurs microcontrôleur de batterie faible. Lorsque la tension de la batterie descend en dessous de 10 volts, le microcontrôleur désactive la charge en éteignant MOSFET T3 et "batterie faible charger off" s'affiche. 

Normalement, lorsque la charge est éteint, la tension de la batterie a tendance à augmenter en arrière et l' charge oscille entre «on» et «off» Etats. Pour éviter cela, le microcontrôleur utilise un contrôle d'hystérésis en concluant un «verrouillage» Mode au cours de batterie faible état ​​et sort du mode de verrouillage lorsque le capteur du crépuscule à l'aube reçoit la tension du panneau (le lendemain matin). En mode verrouillage, le microcontrôleur maintient conversion de la valeur ADC et affiche la tension de la batterie sur l'écran LCD.


Construction et essais 

configurations des broches du transistor BC547, BS170 MOSFET IRF540 MOSFET et sont présentés dans la figure. 2.
PCB pour le chargeur microcontrôleur solaire est montré dans la Fig. 3 




Câblez le circuit sur ​​le circuit imprimé. Avant d'insérer la programmationmicrocontrôleur dans le PCB, vérifiez les erreurs de soudage tels que courts-circuits et les connexions de l'aide d'un multimètre. IRF540 MOSFET de puissance sur une prise appropriée du dissipateur de chaleur. Avant la mise en marche de l'unité de commande, brancher les fils de la batterie, la charge et l'énergie solaire panneau aux endroits appropriés à l'conseil d'administration. 
     
Allumez l'appareil et le message "Régulateur de charge solaire-EFY" est affiché sur l'écran LCD pendant deux secondes. Les messages d'état sont affichés sur la ligne 1 de l'écran LCD et la tension de la batterie est affichée sur la ligne 2. 

Un petit graphique représentant l'état de la batterie est aussi affiché sur la ligne 2 de l'écran LCD. 

noter EFY. 1. Si l'appareil est allumé sans le panneau solaire raccordé, le «Low Battery Charger-Off" un message est affiché quelle que soit la tension de la batterie. L'affichage passe à "charge" dès que le panneau est connecté. 

2. Il y aura une légère variation dans la tension affichée à cause des niveaux de tolérance de risque de séparation de résistances dans la section ADC et V ref de l'ADC étant directement connectée à V CC (la sortie de 7805 a une précision de 2% -5%) au lieu de dédié à compensation de température de référence de tension.








jeudi 23 août 2012

PIC16F877A-Based Monitoring System Température



température de surveillance et de contrôle est importante dans les environnements industriels. Les capteurs sont largement utilisés pour la mesure de la température. Généralement, un capteur de température convertit la température en sortie une tension équivalente. IC LM35 est un tel capteur. Nous décrivons ici une mesure de température simple et système d'affichage basé sur LM35 capteur et le microcontrôleur PIC16F877A. La température en degrés Celsius est affichée sur un écran LCD 16 x 2.

La figure 1 montre le schéma fonctionnel du système basé sur PIC16F877A surveillance de la température. Les principales caractéristiques de ce système sont les suivants: 1. La surveillance continue de la température avec un intervalle de mise à jour 1-seconde (qui peut être modifié dans le programme). 2. Mesure de la température en utilisant LM35 précision circuit intégré capteur. 3. Précise analogique-numérique à l'aide de la conversion de construction 10-bit analogique-numérique (CAN) de microcontrôleur PIC16F877A. 
Hardware Description
Fig.2.shows le circuit du système de surveillance de la température. Le circuit se compose principalement de la sonde de température LM35, microcontrôleur PIC16F877A et HD44780 contrôleur sur la base de 16 × 2 LCD



La sortie du capteur est appliqué à l'ADC interne du microcontrôleur. La broche 2 du microcontrôleur (RA0/AN0) est le canal-1 de l'ADC interne. La tension de sortie analogique du capteur est converti en sa valeur numérique équivalente par l'ADC et son degré Celsius équivalent valeur est calculée par le logiciel. La valeur de température calculée est affichée sur l'écran LCD.
LM35 capteur . Fig.3 montre le brochage du LM35. Il s'agit d'une précision de circuit intégré capteur de température centigrade dont la tension de sortie est linéairement proportionnelle à l'Celsius (Celsius) de la température. Le LM35 a donc un avantage sur les capteurs de température linéaires étalonnés en degrés Kelvin, tant que l'utilisateur n'est pas nécessaire de soustraire une tension élevée constante depuis sa sortie mise à l'échelle pour obtenir centigrades pratique. Pour chaque degré Celsius de la température de changement, les changements de sortie de capteur de 10 mV. le capteur peut mesurer la température dans l'intervalle de 0 à 100 ° C, c'est à dire, la sortie du capteur varie de 0 à 1000 mV. Le LM35 fonctionne dans la plage de températures de -55 ° à +150 ° C, tandis que le LM35C est évalué pour un -40 ° C à +110 ° C Plage (-10 ° C avec une précision améliorée). Disposition des broches du capteur est comme suit: Broche 1-V DD 2-Pin de sortie du capteur Broche 3-V SS

Microcontrôleur PIC16F877A . PIC16F877A IC est un microcontrôleur 8 bits avec 8k × 14-bit mémoire Flash, 368 octets de RAM et beaucoup d'autres périphériques complémentaires ADC, universel émetteur synchrone récepteur asynchrone, maître port série synchrone, minuteries, comparer capturer et d'impulsion modules de modulation de largeur, et les comparateurs analogiques. Il est basé sur le jeu d'instructions d'ordinateur réduit (RISC), l'architecture. L'microcontrôleur traite la sortie du capteur pour calculer la température en degrés Celsius. L'ADC interne du microcontrôleur est utilisée pour convertir la sortie analogique du capteur en sa valeur numérique équivalente 

.

L'ADC interne du microcontrôleur comporte huit canaux d'entrée analogique et donne 10-bit de sortie numérique. Dans ce projet, la tension de référence à l'ADC est la même que la tension d'alimentation au micro-contrôleur, c'est-à 5V. La résolution de l'ADC peut être calculé comme suit: Résolution = V ref / (1024-1) ... (car c'est un ADC 10-bit)= 5/1023 = 4.887 mV


Cela signifie que pour 4.887mV changement de l'entrée analogique, la sortie ADC par binaire '1 'avec une tension de référence de 5V. sortie analogique du capteur à sa broche 2 est connectée au port A à RA0 pour la conversion en équivalent numérique. 

L'écran LCD . A 16 × 2 LCD basé sur contrôleur HD44780 est utilisé pour l'affichage de la température. Les lignes de commande FR, R / W et RS du module LCD sont connectées aux broches RA1, RA2 et RA3 du port A du microcontrôleur, respectivement. Les commandes et les données à afficher sont transmises au module LCD en mode quartet de port D du microcontrôleur. Les quatre bits supérieurs de l'écran LCD (D4 D7 travers) sont connectés au quartet inférieur de Port D (RD0 travers RD3).

Description du logiciel 

Le code logiciel est écrit en 'C' langue et compilé avec Hitech C compilateur croisé dans MPLAB IDE. Le logiciel effectue les opérations suivantes dans une boucle infinie: 1. Initier analogique-à-numérique et obtenir le résultat 2. Calculer la valeur de la tension équivalente du résultat ADC 3. Calculer la température en degrés Celsius de la valeur de tension 4. Affichage de la température sur l'écran LCD La sortie de tension (en volts) de la sonde est: (résultat ADC × 5) / 1023 La température en degrés Celsius est: sortie du capteur × 1000/10 = sortie du capteur × 100 C Le compilateur croisé Hitech fournit un appui bibliothèque virgule flottante qui est nécessaire pour faire les calculs ci-dessus.
MPLAB IDE et Hitech C compilation r . MPLAB IDE est un outil logiciel très puissant de développement pour les produits Microchip (microcontrôleurs). Il est disponible pour téléchargement à www.microchip.com exempt du coût. Il se compose d'outils comme éditeur de texte, cross-assembleur, compilateur croisé et le simulateur. Hitech C compilateur croisé est destiné aux Microchip série PIC10/12/16 de microcontrôleurs. Son édition Lite est fourni gratuitement avec les versions plus récentes de MPLAB IDE MPLAB comme v8.2 et v8.3. Il peut également être téléchargé gratuitement à partir www.htsoft.com .



Compiler le programme avec MPLAB IDE . Les étapes suivantes: 

1. Créer un fichier de projet et ajouter des fichiers source . Dans la barre de menu, cliquez sur Projet → Project Wizard. La boîte de dialogue Assistant de projet apparaît. Cliquez sur "Suivant". Dans «Suivant» fenêtre, sélectionnez le périphérique que PIC16F877A dans le menu déroulant. Cliquez sur 'Suivant' et la suite sélectionnez 'Hitech Outil universel »de la liste déroulante. Cliquez sur "Suivant", le nom de votre fichier de projet comme «tempr», précise sa localisation. Le fichier est automatiquement sauvegardé avec l'extension '. Mcp ". Cliquez sur 'Next' et ajouter des fichiers source tempr.c, lcd.c et de retard. c pour votre projet. Si vous souhaitez créer les fichiers source de votre propre chef, vous pouvez sauter l'étape ci-dessus. Cliquez sur Suivant → bouton Terminer. Maintenant, votre projet est créé et les fichiers source sont ajoutés à votre projet.

2. Créer et ajouter des fichiers source de votre propre . Après avoir créé le projet, procéder à taper le code. Ouvrez un nouveau fichier texte en cliquant sur ​​"Nouveau" dans le menu "Fichier". Tapez le code dans l'éditeur de texte et enregistrez-le avec l'extension '. C'. Vous pouvez créer des fichiers source tempr.c, delay.c et lcd.c de cette manière. Après avoir tapé et confirmé le code, vous devez ajouter les fichiers source de votre projet. Dans le menu 'Projet', cliquez sur 'Ajouter des fichiers au projet », puis ajouter les fichiers en les parcourant à partir de l'endroit où ils sont enregistrés po 

3. Configurez le système . Pour configurer des fonctions comme type d'oscillateur et WDT, cliquez sur 'Configurer' du menu puis cliquez sur "Bits de configuration. Dans la configuration de bits de la fenêtre, sélectionnez le type d'oscillateur XT et désactivez toutes les autres fonctionnalités comme chien de garde, power-up timer et une baisse de tension détecter.

4. C ompiler le projet . Pour compiler le logiciel, cliquez sur 'Build' option "Projet" du menu. Le logiciel est compilé et "Créer réussie" message apparaît dans la fenêtre de sortie. Après la compilation réussie du programme, le tempr.hex fichier est généré. 

Téléchargement du logiciel dans la puce . Après la compilation du logiciel, le fichier hex généré peut être téléchargée dans la puce soit à l'aide d'un programmeur fabriqués localement (comme JMD programmeur) ou de Microchip Kit de programmation (PICKit2, PICKit3, ICD2, ICD3, etc.)

Nous avons utilisé Microchip MPLAB ICD2 (In-Circuit Debugger) pour brûler le programme dans microcontrôleur PIC16F877A.
 
La programmation peut se faire à partir de MPLAB IDE lui-même en sélectionnant le kit (ICD2) de «programmeur menu dans la barre de menus. Si vous utilisez un programmateur JMD, le fichier hex peuvent être téléchargés sur la puce en utilisant WinPic800 logiciel. Les bits de configuration doivent être configurés séparément dans WinPic800.


Un seul côté, soudure côté PCB du système de surveillance de la température est montré dans fig4
et son agencement des composants dans Fig.5 
A 230V AC primaire à 0-9V AC secondaire transformateur abaisseur de tension est utilisé pour abaisser la fourniture 230V. La sortie du transformateur est redressée à l'aide d'un pont redresseur constitué de diodes D1 à D4 et régulée à 5 V à l'aide du régulateur de tension 7805. Le brillant de la diode électroluminescente (LED1) indique la présence d'alimentation de 5 V dans le circuit. 

La sortie analogique du capteur de température LM35 (IC3) à partir de son axe 2 est relié à RA0/AN0 broches de microcontrôleur PIC16F877A (IC2). Un cristal 4MHz (X TAL1) est connecté aux broches 13 et 14 du microcontrôleur. L'écran LCD 16x2 est interfacé avec le microcontrôleur utilisant Port A et Port D. Les signaux de commande de l'écran LCD sont fournies en utilisant Port-A RA1 broches, RA2and RA3. La commande et les données de l'écran LCD sont fournies en utilisant Port-D broches RD0 travers RD3. Les autres connexions d'alimentation sont indiquées dans la figure 2. 


note;si tu besoin de code source contacter moi par mail
















mardi 21 août 2012

Alarme Allée

Vous pouvez installer ce système dans l'allée elle-même afin de détecter l'intrusion d'un animal véhicule, une personne ou grandes. Il émet un son lorsque toute intrusion a lieu

Comme le montre la Fig. 1, le système comprend deux modules: l'émetteur et le récepteur. Le module d'émission (TX) est câblé autour d'un dispositif de pointeur laser à main (LD1). Le pointeur laser est alimenté par l'alimentation 9V DC à partir du module récepteur (RX).L'installation de l'émetteur et du récepteur modules est représenté sur la Fig. 2. La résistance R1 limite le courant circulant à travers le pointeur laser (LD1).
Les pointeurs laser ne sont pas conçus pour être démontés. Ainsi, la méthode suivante peut être utilisée pour connecter l'alimentation externe à la diode laser sans endommager le pointeur lui-même: Prendre deux courtes longueurs de flex-bles fils avec des pinces métalliques soudés petits à leur première extrémité. Insérez l'un des clips métalliques à l'intérieur du corps de l'aiguille et se connecter au ressort de contact de la batterie. Tenez le laser interrupteur marche / arrêt fermé avec une attache de câble de petite taille. L'autre agrafe peut alors être reliée au corps de la torche laser à travers R1. Comme les pointeurs laser ne sont pas conçus pour ce type d'application, sélectionnez la valeur de R1 avec précaution. Le module récepteur (RX) est un commutateur compact de sécurité commandée par la lumière, alimenté par une alimentation externe adapta-teur (230V AC 50Hz/9V DC 250mA). Un interrupteur à clé de verrouillage (S1) commande l'alimentation en courant du module récepteur. Il ya deux voyants sur le panneau avant de pouvoir (LED1) et des visiteurs alerte (LED 2). Réinitialiser le commutateur S2 sur le panneau avant peut être utilisée pour effacer le signal d'alerte après la détection d'une activité allée. LED3 indique que le système est prêt. travail du module de réception est très simple. Au départ, lorsque le courant est appliqué au système, il est en mode veille. LED1 indi-que la présence de la puissance et LED3 s'allume pour indiquer que le faisceau laser provenant du module d'émission-ter tombe sur la pho-tosensor (T1) du module de réception. Lorsque le faisceau laser est interrompu par une personne, un animal ou un objet, le photo-détecteur excite le reste du circuit et les sons piezobuzzer. Assemblez le circuit sur ​​un circuit imprimé à des fins générales. Fabriquer de l'émetteur, le récepteur et le panneau de contrôle (un ex-tension du module récepteur) en trois unités indépendantes, partageant une alimentation commune. Maison à ces unités appropriées imperméables à l'eau et l'interconnexion des boîtiers en plastique à l'aide câbles de haute qualité. Installer le transmetteur et le récepteur modules assez loin du bord allée afin que les véhicules ne sont pas susceptibles de frapper ceux-ci. De placer le module émetteur d'un côté de l'allée, à environ un mètre (ou 3 pieds) au-dessus du niveau du sol à l'aide d'un tuyau en PVC standard. Maintenant, placez le module récepteur sur le côté opposé (environ un mètre au-dessus du rez-de-nous-ment une norme tuyau en PVC) directement en face du module émetteur. Exécutez le dual-core (AB) Câble puissance de l'émetteur par la poste en PVC de montage et de le brancher sur le module récepteur. Il est recommandé que vous exécutez cette interconnexion traversant de câble à l'intérieur du conduit en PVC pour éviter tout dommage accidentel. Système de câble Faites passer le quad-core (bornes C, D, E et F) à l'emplacement du panneau de commande.

Le dispositif de câblage est représentée sur la Fig. 3. Avec une configuration appropriée des deux modules, le faisceau laser est si intense que même la lumière du soleil directe ne peut pas affecter le fonctionnement du système d'alarme.


Testez le système en ayant quelqu'un de conduire une automobile après le système de détection. L'alarme doit se déclencher lorsque le véhicule traverse le faisceau laser. Vous devrez peut-être ajuster la position des modules pour un résultat optimal. Pendant ini-tiale de configuration, il peut être nécessaire de court-circuiter les bornes de commutateur de réinitialisation S2 à l'aide d'un cavalier court. Fig. La figure 4 montre la photo du pointeur laser, tandis que la figure. La figure 5 montre la vue intérieure du pointeur laser.



Attention. Utilisez le pointeur laser soigneusement car il peut gravement endommager les yeux ou la peau.


lundi 20 août 2012

Temps contrôlée par commutateur à l'aide PIC16F72

Un interrupteur à commande temporelle est une minuterie automatique qui transforme un appareil «on» pour la durée souhaitée. Après la durée de temps prédéterminée, la minuterie s'arrête automatiquement, la déconnexion de l'appareil de l'alimentation électrique. La durée pendant laquelle l'appareil doit être 'on' peut être réglé de 1 à 99 minutes. Ce commutateur supprime la nécessité de surveiller en permanence l'appareil-un avantage sur l'interrupteur manuel. Il peut être utilisé pour activer ou désactiver un appareil électrique domestique à un moment prédéterminé. Transfert d'un appareil sous ou hors tension en temps opportun augmente la durée de vie de l'appareil et permet également d'économiser la consommation d'énergie. L'interrupteur trouve également des applications industrielles, où les machines qui contrôlent les processus peuvent être exécutés pendant le temps voulu. Description du montage Fig. La figure 1 représente le circuit de l'interrupteur commandé dans le temps en utilisant PIC16F72 microcontrôleur. Il comprend un microcontrôleur PIC16F72 (IC1), le régulateur 7805 (IC2), deux afficheurs 7 segments (LTS542) et quelques composants discrets.




Microcontrôleur PIC16F72 est le cœur de l'interrupteur. Il s'agit d'un 8-bit, à faible coût, haute performance, le microcontrôleur Flash. Ses principales caractéristiques sont 2 Ko de mémoire programme Flash, 128 octets de RAM, huit interruptions, trois bornes d'entrée / sortie (I / O), trois ports minuteries et un à cinq canaux 8-bit analogique-numérique (CAN). Il ya 22 broches E / S, qui sont configurables par l'utilisateur pour l'entrée / sortie sur la broche-à-broche base. L'architecture est RISC, et il ya seulement 35 instructions puissantes. Horloge système joue un rôle important dans le fonctionnement du microcontrôleur. Un cristal de quartz 4MHz connecté entre les broches 9 et 10 fournit l'horloge de base au microcontrôleur (IC1). Deux afficheurs 7 segments (DIS1 et DIS2) sont utilisés pour afficher le temps en minutes. Broches du port RB2, RB3, RA0, RA1, RA2, RB1 et RB0 sont connectés au segment broches 'a' à 'g' affichage DIS1, respectivement. Ports broches RC6, RC7, RC1, RC2, RC3, RC4 et RC5 sont connectés au segment broches 'a' à 'g' affichage DIS2, respectivement.

liste de composant:



Commutateurs S2 (marche / arrêt), S3 (sélection), S4 (décrément) et S5 (incrément) sont connectés aux broches du port RB4 à travers RB7 du microcontrôleur, respectivement. Port de broches RC0 du microcontrôleur est utilisée pour commander le relais RL1 à l'aide du transistor T1. Lorsque le port broches RC0 est élevé, lecteurs transistor T1 en saturation et 12V-relais RL1 est excité de se connecter la charge à l'alimentation. Diode D5 agit comme une diode de roue libre. Pour calculer le bloc d'alimentation pour le circuit, le 230V, 50Hz alimentation AC est abaissée par un transformateur X1 à délivrer une sortie secondaire de 12 V, 500 mA. Le transformateur de sortie est redressée par un redresseur pleine-onde comprenant des diodes D1 à D4, filtrée par le condensateur C4 et régulée par IC 7805 (IC2). Le condensateur C5 est utilisée pour contourner les ondulations présentes dans l'alimentation régulée. LED2 donne du pouvoir 'sur' indication. Résistance R19 limite le courant à travers LED2. Le commutateur S1 est utilisé pour réarmement manuel. Réglez l'heure en utilisant l'interrupteur S4 servant à la décrémentation et l'interrupteur S5 pour l'incrément. L'heure est indiquée sur afficheurs 7 segments DIS1 et DIS2. Pour lancer le chronomètre compte à rebours, appuyez sur interrupteur marche / arrêt S2. Le relais RL1 dynamise pour allumer l'appareil et LED1 s'allume. Si vous appuyez sur marche / arrêt interrupteur S2 à nouveau, le processus de compte à rebours s'arrête et le relais RL1 désexcité pour éteindre l'appareil. Construction et de travail Une taille réelle, d'un seul côté PCB pour le microcontrôleur contrôlée dans le temps de commutation est représenté sur la Fig. 2 et son agencement des composants dans la Fig. 3.



Assemblez le circuit sur ​​un circuit imprimé pour minimiser le temps et les erreurs de montage. Soigneusement assembler les composants et revérifiez pour toute erreur négligé. Utilisez un circuit intégré de base de microcontrôleur. Avant d'insérer le CI, vérifier la tension d'alimentation. L'horloge contrôlée fonctionne en deux modes: le mode de réglage (pour régler l'heure de 1 à 99 minutes) et le mode de travail (pour entraîner la charge pendant le temps désiré selon le réglage) . Les modes peuvent être modifiés à l'aide du commutateur S3. Lorsque brille LED1, cela indique que le système est en mode de fonctionnement. Si LED1 est désactivé, le système est en mode de réglage. mode de réglage. Par défaut, lorsque le microcontrôleur est mis sous tension, il est en mode réglage. Dans ce mode, l'un des deux afficheurs 7 segments doit clignoter avec un chiffre aléatoire, disons, 6. Vous pouvez modifier le chiffre clignotant à un chiffre de 0 à 9 en utilisant l'interrupteur S4 décrément ou incrément interrupteur S5. Vous pouvez également déplacer le chiffre clignotant à partir de DIS1 DIS2 ou vice-versa en utilisant le commutateur S3. Ainsi, le temps désiré peut être réglé en utilisant les commutateurs S3, S4 et S5. Après avoir réglé l'heure désirée, appuyez sur marche / arrêt interrupteur S2 pour passer du mode de réglage en mode de travail. L'appareil se met en marche pour la durée prédéfinie, sauf si vous appuyez sur l'interrupteur S2 pour arrêter l'opération entre les deux. mode de travail. Lorsque le microcontrôleur est mis sous tension, et aucun d'entre DIS1 et DIS2 clignote, le système est en mode de fonctionnement. En mode de fonctionnement, les chiffres sur l'affichage indiquent le temps restant pour lequel l'appareil sera «sur». Pendant ce temps, le microcontrôleur génère le signal de commande pour activer le relais RL1. LED1 agit à titre de charge 'sur' indicateur et la résistance R18 limite le courant circulant à travers LED1. En mode de fonctionnement, lorsque vous appuyez sur le commutateur S3 à tout moment, l'écran affiche l'heure réglée pour une seconde. Lorsque le temps réglé est terminé, le relais RL1 désexcité pour mettre l'appareil hors tension et les changements de mode de mode de réglage automatique. Si vous souhaitez basculer «off» de l'appareil en mode de travail, appuyer sur la touche marche / arrêt interrupteur S2. Mode de travail va changer au mode de réglage et le relais désexcité pour mettre l'appareil «hors». Logiciel Le programme source est écrit en langage d'assemblage à l'aide de jeux d'instructions mnémoniques de microcontrôleur PIC et assemblé à l'aide MPLAB environnement de développement intégré (IDE). Gravez le code hexadécimal généré à partir de MPLAB IDE dans la puce PIC16F72 l'aide d'un programmeur standard tel que PICSTART plus programmateur de Microchip. L'ensemble du code est bien commenté et facile à comprendre. L'exécution du programme commence par effacer les registres. Les ports d'entrée et de sortie sont initialisés en permettant à la broche d'interruption et interrompt globales. Cette initialisation permet l'exécution de la routine de service d'interruption lorsqu'une interruption est reçue. D'interruption est suivie par B2BCD (binaire en BCD), l'affichage, la deuxième, sous-routines et blinking_seg minute. Le code se termine par le sous-programme switching_delay

1Hz Clock Timer de précision


Cette minuterie permet un flash LED une fois par seconde avec un bip sonore. Le circuit de synchronisation utilise un cristal de quartz disponibles dans les montres numériques ou des horloges qui génère la fréquence exacte de 32,768 kHz. Le circuit comporte une ondulation effectuer 14-scène compteur binaire et oscillateur IC CD4060 (IC1), double flip-flop CD4013 (IC2), transistors T1, T2 et T3, d'un haut-parleur, un cristal de quartz et de quelques composants discrets. L'inverseur intégré de IC1 (qui se trouve entre les repères 10 et 11) en combinaison avec les résistances, les condensateurs et le cristal de quartz forme le circuit oscillateur. Le signal d'horloge de 32,768 kHz a une largeur d'impulsion d'environ 30 microsecondes, ce qui est beaucoup trop courte pour être en mesure de compter les oscillations. Si cette fréquence est amené à IC1, qui la divise par 14 pour délivrer une fréquence de 2 Hz.
La sortie est amenée à 2Hz IC2, qui la divise par 2, ce qui donne un produit final de 1 Hz ou une impulsion par seconde à sa broche 13.L'impulsion de 1 Hz est appliqué à des transistors T1 et T2. Le transistor T3 est commandé par un signal sonore audible de 256Hz sortie Q6 du IC1. Transistors T2 et T3 sont connectés en série. Que des impulsions d'horloge sont appliquées à la base du transistor T2, il effectue une fois par seconde. Le transistor T3 conduit à produire un son du haut-parleur. LED1 clignote également pour chaque impulsion d'horloge reçu.
Assemblez le circuit sur ​​un circuit imprimé à des fins générales et enfermer dans une armoire. Montez le haut-parleur miniature, LED1 et S1 interrupteur d'alimentation sur le panneau avant de l'armoire. S1 peut être unipolaire, unidirectionnel de type ou d'un bouton-poussoir à action push-on/push-off. Le circuit est alimenté par une batterie de 9V PP3. Il peut également fonctionner avec une batterie 6V ou 12V. Cette minuterie 1Hz peut être utilisé dans les compteurs, chronomètres et autres circuits numériques.