Construire un scanner thermique Arduino basé (4 / 6 étapes)

Étape 4: Logiciel - portion de l’Arduino

Bien! Maintenant que vous êtes tous fait avec le matériel, passons le logiciel.

L’Arduino est utilisé comme une interface dans ce projet. Il permet les servos et récepteur IR pour communiquer facilement avec l’ordinateur à l’aide de commandes simples.

Alors qu’il s’agit d’une opération « simple », il y a certains domaines critiques qui doivent être abordées. Une de ces questions que je suis tombé sur un grand nombre était synchronise communication. Essentiellement au moment où que le microprocesseur a été prêt à lire la commande, l’ordinateur n’a pas terminé l’envoyer. Une solution simple pour cela est d’attribuer un caractère « commande prête ». J’ai choisi un point-virgule comme mon terminator.
Pour s’assurer que les commandes sont dans un aspect de série qui s’arrête l’ordinateur essayant de lire une température tandis que le capteur IR était en mouvement, j’ai besoin d’une méthode de réponse. Une solution que, commun pour les communications, est appelé ACK ou accusé de réception. Disons que nous exécutons « p120; » (panoramique à 120deg), nous voulons que l’ordinateur à attendre pour le microprocesseur à dire « AP120; » (ack pan 120). Une fois l’accusé de réception reçu le programme peut continuer à aller chercher une température ou la prochaine série de commandes.

Une autre partie compliquée lit les données IR du port série sur le capteur. Afin de pouvoir lire les données, nous devons faire ce qu’on appelle "bit-bang". Cela consiste à mettre en place une interruption sur le front descendant de l’horloge pour lire les bits sur la ligne de données. Chaque « burst » de données qui vient en contient un en-tête et des données qui doit être décodé.
Lire le fichier pdf pour le module ZyTemp (http://www.metrisinst.com/item_management/assets/files/TN9_UserManual_009.pdf ) à la page 13 vous pouvez voir la séquence de données pour chacun des éclats de données. Au lieu de passer du temps là-dessus, j’ai décidé de faire une recherche rapide et trouvé que quelqu'un d’autre a déjà écrit ceci pour l’arduino (ils ont fait un contrôleur de température précise plaque chauffante). La source est documentée dans le code de référence et crédit pour les idées.

Tous dans tout le code de l’Arduino, lorsqu’il est compilé, prend 7982 octets d’espace.

Commandes à connaître (toutes les commandes doivent se terminer par un «; » :
p < n > ;  #pan à < n > deg
t < n > ;   #tilt à < n > deg
r ; objet de capteur #read le IR
un ; temp ambiant de capteur #read le IR

Utilisez-les pour régler les zones de protection (ne permet pas une commande pan/tilt travailler si out of bounds - certains servos vont mâcher les selfs vers le haut s’ils essaient de dépasser un max)
u < n > ; #set servo haute limite (protection) valeur par défaut est 145 deg
l < n > ; # configuration inférieure servo limite (protection) par défaut est 35 deg

Articles Liés

Arduino basée zone de mesure de Distance

Arduino basée zone de mesure de Distance

Bonjour, dans ce projet je vais vous montrer comment créer votre propre boîte de mètres de distance avec Arduino uno et un capteur à ultrasons.Avant de commencer, assurez-vous que vous avez :Arduino unoCapteur à ultrasons HC-SR04LCD 16 x 2Page offici
Sept segments affichage thermomètre - Arduino basé

Sept segments affichage thermomètre - Arduino basé

Aujourd'hui, je vais vous montrer comment faire votre propre thermomètre 7 segments - 2 chiffres - avec Arduino uno et capteur de température DS18B20.Je préfère construire mon propre circuit arduino basé en utilisant le possesseur d'uno ATmega328p, m
Mini CNC machine Arduino basé et Adafruit pilote moteur L293D v1 & 2 * Mini Stepper CD/lecteur DVD #1

Mini CNC machine Arduino basé et Adafruit pilote moteur L293D v1 & 2 * Mini Stepper CD/lecteur DVD #1

Dans ce projet, je vais vous montrer comment construire facilement vos propres Arduino Mini CNC Plotter de faible coût !Pour les axes X et Y, nous allons utiliser pas à pas moteurs et rails de deux dvd/cd rom ! Zone d'impression sera max 4x4cm.Étape
CNC mini traceur - Arduino basé

CNC mini traceur - Arduino basé

Dans ce projet, je vais vous montrer comment construire facilement vos propres Arduino Mini CNC Plotter de faible coût !Pour les axes X et Y, nous allons utiliser pas à pas moteurs et rails de deux dvd/cd rom ! Zone d'impression sera max 4x4cm.Parce
Arduino basé Hula Dancer

Arduino basé Hula Dancer

Cette instructable a été créée dans l'accomplissement de l'exigence de projetde l' Makecourse à l'Université de Floride du SudSur ce projet : Hey tout le monde ! Je suis sûr que vous avez entendu les danseurs de hula de tableau de bord qui sont un al
ARDUINO basé robot télécommande IR

ARDUINO basé robot télécommande IR

Salut tout le monde. Ce mon nouveau robot de télécommande projet IR en utilisant arduino. Il s'agit d'un robot de conception simple, que vous pouvez le construire facilement.Étape 1: exigences :Exigences du projet :Arduino uno Tsop1738 (récepteur ir)
Basse Altitude Environmental Monitoring avec un Arduino basé Instrument météorologique et plate-forme de détection à distance Aeropod

Basse Altitude Environmental Monitoring avec un Arduino basé Instrument météorologique et plate-forme de détection à distance Aeropod

Aperçu du projetÉlèves à l'école secondaire de New Lothrop, dans le Michigan ont travaillé ensemble pour construire une plate-forme de détection distante de basse altitude appelée un « Aeropod » et il équipé d'un instrument de météo « Arduino » basé
Arduino basé compteur d’énergie solaire PV avec connectivité Xively (peut être surveillée sur android ou iPhone)

Arduino basé compteur d’énergie solaire PV avec connectivité Xively (peut être surveillée sur android ou iPhone)

Ça fait environ deux jours que j'ai fait la génération Arduino PV compteur, mais c'était une erreur de ne pas de prendre des photos étape par étape avant de continuer pour les tests finaux. Et c'était une idée terrible pour afficher la boîte de brute
Arduino basé traducteur distant

Arduino basé traducteur distant

Il y a 3 télécommande juste pour regarder mon, télé, téléviseur décodeur et son bar. Procédure pour regarder la TV est mise en service TV mettant sa source a / V, mise en service sonorisation et mettre sa source aux et allumer décodeur. C'est trop co
Arduino basé Bi-color LED Matrix Snake Game

Arduino basé Bi-color LED Matrix Snake Game

Nous avons démontré comment un Arduino basé jeu de Tetris Bi-color LED Matrix peut être construit dans notre dernière instructable. Nous étions tout à fait surprenant il a été présenté à la page d'accueil de Instructables et lui ont valu une poignée
Lumière de scanner et Arduino comme une lampe RGB

Lumière de scanner et Arduino comme une lampe RGB

Salut les gens !Cette fois je vais vous montrer comment faire pour contrôler la lumière émise par une vieille/broken scanner/imprimante. Peut-être que vous verrez, j'aime faire beaucoup de choses de junk et utiliser dans mes projets.Il y a quelque te
Arduino basé Bi-color LED Matrix Audio Spectrum Visualizer

Arduino basé Bi-color LED Matrix Audio Spectrum Visualizer

Après que nous sommes arrivés avec le kit de Bi-color LED Matrix Driver Module, nous avons recherché de projets intéressants de travailler avec elle.Pourrait vous intéresser dans certains de ces projets, que nous avons mis en à instructables à l'aide
Comment construire un moteur thermique à élastique

Comment construire un moteur thermique à élastique

Bonjour tout le monde !Avez-vous jamais voulu impressionner vos amis avec un projet physique cool ? Eh bien, vous avez de la chance!!Mon instructable va vous apprendre comment construire le genre plus simple de moteur thermique. Cette instructable es
Arduino basé Bi-color LED Matrix Tetris Game

Arduino basé Bi-color LED Matrix Tetris Game

L'un de l'électronique DIY kit jolliFactory est venu vers le haut avec est le Bi-color LED Matrix Driver Kit de Module. Ce module est conçu pour chaîne-en sorte que vous pouvez chaîner les modules ensemble au nombre de modules dont vous avez besoin e