Étape 13 : Donnez-lui Brains
J’ai soudé un en-tête DIP sur certains perfboard, puis ajouté mâles en-têtes pour les câbles moteurs capteur et moteurs pas à pas. J’ai un potentiomètre qui est utilisé comme une résistance variable à un diviseur de résistance avec la photorésistance. Cela me permet de jouer avec la mise à l’échelle dans le cas où je vais partir une pièce très sombre à l’extérieur par une journée ensoleillée. J’ai aussi utilisé quatre mosfets (2n7000) à utiliser comme commutateurs afin que le moteur peut être modifié dans le ~ 12V batterie et non par le microcontrôleur. Enfin, j’ai ajouté un régulateur 5V (LM7805) pour alimenter le microcontrôleur.
Je suis de programmation du microcontrôleur hors Commission, mais vous pouvez ajouter un en-tête de programmation si vous le souhaitez.
Le code est assez simple. Fondamentalement, je ping le télémètre à ultrasons, échantillonner la photorésistance, calcul d’une moyenne à l’échelle de temps et alors l’étape du moteur pas à pas dans le sens qu’elle doit aller. Rinçage et Repeat() ; Je dirige également un cycle d’étalonnage initial qui force l’iris pour ouvrir complètement, puisque je n’ai aucune idée de comment ouvrir le diaphragme est initialement. (Si quelqu'un a été jouer avec elle) J’ai inclus le code et le fichier makefile que j’utilise.