Arduino contrôlée variateur de lumière (4 / 15 étapes)

Étape 4: Arduino contrôlée variateur de lumière : le logiciel

Comme indiqué dans la page précédente théorique, le logiciel est assez facile.
Si vous voulez développer votre propre logiciel, tout ce que vous devez faire est :
Attendez que la zerocrossing
Attendre un moment précis entre 0 et 9090 microsecondes (9090 = 10.000-10)
Allumez yr TRIAC
Attendez environ 10us (c’est le temps vous devez vous assurer que le TRIAC est sur)
mettre hors tension yr TRIAC (en fait, vous enlevez seulement le triggersignal pour le TRIAC, le TRIAC reste allumé jusqu'à la prochaine zerocrossing)

J’esquisse brièvement le flux du programme que j’ai utilisé :

(Assurez-vous de que lire la « NOTE » ci-dessous)

Le signal de X-ing zéro génère une interruption.
À 50Hz qui interrompent est chaque 10 ms ou 10.000uS
À 60Hz qui interrompent est chaque ms 8,333 ou 8333 nous
La routine d’interruption s’allume puis le Triac après un temps spécifique. Cette époque est situe dans la boucle principale du programme.
Car le programme varie selon la gradation de Full off en 128 étapes (c’est juste un choix qui a été fait, pourrait être de 100 étapes aussi bien), à 50 Hz, nous devons les étapes pour être 75 uS et à 60Hz, ils devront être 65 uS

Cela fonctionne comme suit :
La fonction d’interruption « zero_crosss_int » est appelée chaque fois qu’un passage à zéro est détecté, ce qui est 100times/seconde. C' est la seule fonction consiste à définir le moment où le Triac est allumé à la valeur de la variable « gradation »
Dans la boucle principale du programme, la valeur réelle de cette variable est définie

http://www.inmojo.com http://www.inmojo.com

A propos du logiciel : théoriquement dans la boucle, vous pouvez laisser variable « je » commencer par « 0 ». Toutefois, étant donné que le moment de l’interruption est un peu une approximation à l’aide de '0' (pleinement activée) pourrait bousiller le moment un peu. va de même pour 128 (Full off) bien que cela semble être moins critique. Météo « 5 » ou peut-être « 1 » est la limite pour configurer votre est une question d’essayer, votre gamme pouvant aller de p. ex. 2 à 126 au lieu de 0-128. Si quelqu'un a une façon plus précise à mettre en place le moment de l’interruption, je serais heureux de l’entendre.
Bien sûr, qu'il n’est pas nécessaire de travailler avec les interruptions. Il est également possible de garder du scrutin à zéro l’axe de passage pour aller à 0.

Bien que le logiciel fonctionne avec une interruption pour déterminer le moment de zéro crosssing, il n’est toujours pas tellement efficace parce que le temps (dimtime) il faut attendre après le zéro crossing avant le triac est tiré est littéralement passé « en attente » à zéro la Croix interrompre la fonction.

Il serait plus efficace pour régler un interrupt timer pour tirer au bon moment, donc en attendant l’arduino peut faire autre chose. Un tel programme peut être trouvé à l’étape

REMARQUE

Je voudrais juste rappeler la déclaration ci-dessus : ce programme est une démonstration de comment vous pouvez contrôler le variateur. Il n’est pas et le programme efficace car il passe le plus clair de son temps d’attente. Il n’est donc pas le plus approprié pour le combiner avec d’autres tâches du processeur. Si vous avez besoin d’une utilisation plus efficace du programme une minuterie au lieu de retard

Articles Liés

Couvre-feu pour animaux de compagnie : Un Arduino contrôlée chatière

Couvre-feu pour animaux de compagnie : Un Arduino contrôlée chatière

Le problème: vous voulez restreindre le temps lorsque votre animal de compagnie est autorisé à aller à l'extérieur. C'est peut-être parce que le quartier n'est pas sans danger pour votre chat ou votre petit chien pendant la nuit (maraude coyotes vien
Arduino contrôle via un Service Web avec Teleduino

Arduino contrôle via un Service Web avec Teleduino

Convertir votre Arduino en une plate-forme de contrôle web sophistiquée à l'aide de Teleduino.Teleduino est un produit et un service. Une fois l'esquisse de Teleduino a été chargé sur votre Arduino (le « produit »), il se connecte ensuite au serveur
Autocollant de fenêtre numérique (Arduino contrôlée)

Autocollant de fenêtre numérique (Arduino contrôlée)

un autocollant de taille matrice de LED qui affiche des images en séquence à partir d'une carte SD, pour produire une animation signe ou « vitrophanie ». Arduino contrôlée ! Inclut également le code de Windows, Mac et Linux pour la conversion des fic
Arduino contrôlée ATX Power Supply

Arduino contrôlée ATX Power Supply

pouvez un microcontrôleur contrôler sa propre puissance ?  Eh bien presque !Une ATX alimentation, neuf ou d'un vieux PC, est un excellent moyen pour alimenter l'Arduino et autres projets de microcontrôleur.  Qui est couvert dans plusieurs ' ibles tel
ARDUINO contrôlée 12v RGB LED STRIP

ARDUINO contrôlée 12v RGB LED STRIP

Il y a un an j'ai découvert que les bandes de LED RVB sur Amazon. Être juste avant le début de la saison des festivals musique, j'ai naturellement alla droit à travailler à rendre fous lumineux clignotants festivals jouets. Les bandes non adressable
Arduino contrôlée hélicoptère

Arduino contrôlée hélicoptère

Cette instructable a été créée dans l'accomplissement de l'exigence de projet de la Makecourse à l'Université de Floride du Sud (www.makecourse.com). L'objectif de ce cours était pour nous enseigner la créativité, l'ingéniosité et l'application prati
Laser Galvo - Arduino contrôlée

Laser Galvo - Arduino contrôlée

Arduino contrôlée laser galvo. La servocommande de miroirs diriger le laser UV laissant une traînée phosphorescente sur la feuille de vinyle glow-in-the-dark.Posté sur notes.robives.comÉtape 1 :À partir d'une feuille de vinyle lumineux d'eBay et poin
Arduino contrôlée de fenêtre pour chat

Arduino contrôlée de fenêtre pour chat

je soumets cette instructable le défi de l'Arduino. N'oubliez pas de voter !Mon voisin a eu un petit problème avec son chat. Il veulent de sortir et de revenir trop souvent à l'intérieur. Habituellement, il ouvre juste la fenêtre de sa cuisine et nou
GOduino II = Arduino + contrôleur de moteur à Vitesse Variable L293D

GOduino II = Arduino + contrôleur de moteur à Vitesse Variable L293D

mises à jourGOduino II a été présenté sur dangerousprototypes.com07/04/2012, j'ai ajouté une diapositive de budget pour les lecteurs qui sont demandent où j'ai obtenu mon budget < 20 $ pour le GOduino II.INTRODUCTIONLe GOduino II est un contrôleur pr
Arduino contrôlée CNC / 3D imprimante hybride

Arduino contrôlée CNC / 3D imprimante hybride

Dame Nature fait... Nous construisons des.BuildersBot fusibles impression 3D & fraisage CNC dans rêve d'un générateur "3dprintingindustry.com"Le BuilderBot est une machine de conception ouverte, qui utilise OpenLogiciels et matériels ouvert.
Capteur infrarouge guidée Arduino contrôlée L293D Robot (partie 2)

Capteur infrarouge guidée Arduino contrôlée L293D Robot (partie 2)

Voici la partie 2 de l'Arduino contrôlée Robot L293D.Partie 2 comprend Sensors.This infrarouge fait partie d'une série d'instructables conduisant à un adepte de la ligne Robot.QRD1114 capteur infrarouge reliée à ArduinoÉtape 1: Câblage du capteur inf
Arduino contrôlée Servo Robot (Serbes)

Arduino contrôlée Servo Robot (Serbes)

quoi de mieux pour commencer à expérimenter avec open source microcontrôleurs ( Arduino ), puis en construisant votre propre robot source ( CC (SA-de)) ?Que faire avec votre serbe ?(Voici) - comment connecter votre serbe à l'internet et le lecteur su
Arduino contrôlée minuterie de cuisine

Arduino contrôlée minuterie de cuisine

Chacun d'entre vous doit ont vécu ce que vous avez quelque chose à cuire sur votre gazinière tandis que de l'autre côté vous get occupé à regarder la télévision ou obtenir une conversation profonde que vous réalisez sur la détection d'une odeur qu'il
Arduino contrôlée Car Tracking System basé sur SMS

Arduino contrôlée Car Tracking System basé sur SMS

Hi, j'ai fait un Arduino contrôlée voiture Tracking System basé sur SMS pour la voiture de mon père.Les modules utilisés sont ;Arduino nano V3.0Module GPS SkyLabModule GSM WaveComLa bibliothèque de SoftwareSerial, les TinyGPS sont utilisés pour commu