Étape 3: L’unité largeur impulsion régulation
Quelques mots sur la technique de contrôle sont dans l’ordre. Pulse Width règlement est une variante de la technique, mieux connu sous le nom de Pulse Width Modulation et est un moyen de contrôler la puissance en tournant rapidement sur et en dehors. Je préfère le terme Pulse Width règlement puisque nous ne sommes vraiment pas moduler les impulsions, mais plutôt changer leur durée (rapport cyclique) et donc réglementer la puissance livrée à la charge. Si vous êtes plus à l’aise avec le terme PWM, aller de l’avant et l’appeler.
Il s’agit vraiment d’impulsions largeur règlement, pas modulation de largeur d’impulsion. La largeur d’impulsion est réglée pour contrôler la période de temps qui est sous tension. Par exemple, au cours de chaque période de 10 secondes, la sortie est sur pour 3/10ème de seconde. Il s’agit d’un cycle de 3 % et la largeur de l’impulsion serait que même 3/10ème seconde chaque cycle de 10 secondes. Augmentant au moment où la sortie est sur en faisant le pouls plus large ferait l’unité contrôlée sur plus longtemps. Ainsi que nous réglementons la largeur d’impulsion pour contrôler la charge ; dans notre cas la plaque chauffante. En tournant la plaque chauffante sur et en dehors dans un relativement rapide, mais à vitesse constante, la mode, nous contrôlons étroitement de la température.
Modulation de largeur d’impulsion, varie en revanche, la largeur de l’impulsion de chaque cycle. En faisant cela et le train d’impulsions résultant de filtrage, des formes d’ondes complexes peuvent être produites. C’est vrai PWM et n’est pas vraiment ce que nous faisons ici. Pulse Width règlement est suffisante pour nos besoins. Vous pouvez en apprendre plus sur PWM ici.
Comme indiqué, l’unité de régulation de largeur impulsion est contrôlée par un microcontrôleur Atmel AVR ATtiny2313 et deux extenseurs de Port I2C. Allez-y et téléchargez le schéma et le code source pour le contrôleur maintenant. Le code source pour le contrôle du programme est un fichier Zip qui va décompresser dans son propre répertoire nommé contrôle. Utilisez le système de développement de Ghetto pour programmer le microcontrôleur. Il n’est pas nécessaire, mais vous voudrez peut-être jeter un oeil à ce Instructable en savoir plus sur le bus I2C. L’Instructable I2C vous montrera comment modifier votre système de développement de Ghetto afin que vous puissiez utiliser le Bus I2C sur elle.
Utiliser les éléments que vous avez commandé en étape 1 et le schéma que vous avez téléchargé. Photo 4 montre comment construire l’unité de régulation Pulse Width. Mon système de développement de Ghetto est montré (construit à bord de perf) ainsi que l’extension du Port et les commutateurs DIP (construit sur maquette sans soudure). La plus grande boîte de DigiDesigner est juste utilisée comme source d’alimentation de 5V. Je l’ai construit de cette façon depuis que j’utilise les systèmes de développement de Ghetto pour beaucoup d’autres expériences. Vous pouvez utiliser la même approche ou construire un système dédié - votre choix. Dans tous les cas, le schéma et le logiciel sont les mêmes.
Notez que les commutateurs DIP comme indiqué sur le schéma indique les broches de Port Expander pour connecter les interrupteurs à. L’orientation des aiguillages devrait être comme sur la photo 6. SW1A et SW1B sur le schéma sont vraiment un paquet de quatre commutateurs DIP - SW1. Idem pour SW2, 3 et 4. Se connecter comme indiqué dans l’image aux broches de U2, mais ignorer le NIP sur SW1A, etc. qui sont indiqués sur le schéma. Il suffit de brancher eux donc ils se connectent directement à U2 et U3 sur les broches appropriées, avec l’autre côté des paquets interrupteur relié à la terre. Photo 6 montre plus en détail.
Pour programmer votre ATtiny2313, démarrer l’environnement WinAVR, accédez au répertoire contenant les fichiers que vous avez dézippé dedans et utilisez le Makefile pour compiler le logiciel et votre partie de programme. Le programme est assez simple. Timer/compteur 1 est utilisé en mode Fast PWM pour produire des impulsions permettant de contrôler l’unité de commande de puissance AC. Les impulsions apparaissent à PB4 et PD6 sert à flash LED 1. L’horloge par défaut de 1MHz de la ATtiny2313 est utilisé et est divisé par 1024. Si la résolution de la PWM est.001024 secondes. Étant donné que nous allons utiliser les étapes d’un dixième de seconde, nous multiplions les réglages du commutateur DIP par 98 quelles mesures de rendements de 0,1003 secondes - assez proche.
Une fois que vous avez construit l’unité de régulation Pulse Width, vous aurez envie de le tester. Démarrez-la en s’y connectant une alimentation 5 volts. Si vous avez travaillé avant et construit l’unité de commande de puissance AC ne connecter tout de suite. Lorsque vous allumez l’alimentation 5V, LED1 devrait clignoter lentement deux fois pour vous faire savoir que c’est prêt à aller. Les commutateurs DIP connecté au Port Expander U2 sont utilisés pour contrôler la longueur du Cycle, tandis que les interrupteurs DIP connecté au Port Expander U3 sont utilisés pour contrôler le cycle de travail ou sur le temps du cycle. Les deux contrôles sont définies en unités de 1/10 de seconde et utilisent le code binaire. Ne panique si vous n’êtes pas familier avec le code binaire, je vais l’expliquer.
Code binaire est mieux considéré comme un code doublement. Autrement dit, la valeur numérique attribuée au premier commutateur est 1 et les commutateurs suivants ont des valeurs numériques qui double. Donc le deuxième interrupteur a une valeur de 2, de la troisième valeur 4, puis 8 et ainsi de suite. La valeur de l’ensemble des commutateurs reliés à U2 ou U3 est la somme des valeurs numériques de tous les commutateurs qui sont allumés.
Voici un tableau indiquant les valeurs des commutateurs individuels sur SW1 et SW2 qui sont connectés à U2 pour le réglage de la longueur du Cycle. Cela suppose que vous avez construit vous circuit le même que le mien et ont les commutateurs DIP axé sur la même manière comme sur la photo 6.