Nature Tracker : mappage de paramètre avec l’Edison Intel (3 / 7 étapes)

Étape 3: codage

Tout codage dans ce instructable a été fait par mon collaborateur sur ce projet : dennishore, passionné de python gourou et l’électronique. Je ne veux pas changer les choses lui pour cette étape et l’étape 6: rapport. Il a accepté de répondre aux questions et a affecté tout le code à la fin de cette étape et l’étape 6.

Capteurs et connexions

Capteur de température de Grove - AI0
Potentiomètre rotatif Grove - AI1
Capteur de lumière Grove - AI2
Capteur de sons Grove - AI3
Écran LCD de Grove 16 x 2 - bus I2C
Grove LED - 2 numérique
Bouton de Grove - 3 numérique
Sonnerie de Grove - 4 digital
Grove GPS - UART

Le GPS communique comme un périphérique série. La page GPS Grove (comme la page équivalente pour tous les capteurs de Grove) a un Arduino et une section de la Raspberry Pi. Pour les autres capteurs, j’ai eu une bonne conjecture quant à comment le faire sur l’Edison basé sur la connectivité de la section de l’Arduino, et les commandes basé sur python Raspberry Pi modules. Mais cela diffère pour le GPS. Pour plus de clarté, c’est le module de SIM28 GPS mis à jour. En fin de compte, il fonctionne connecté à UART sur le bouclier de Grove et est initialisé avec :

L’état SIM28 fiche que le temps de démarrage peut être aussi court que 1 seconde (chaude et avec l’aide de l’internet), ou aussi longtemps que 32 s (froid et sans internet). La partie plus difficile (en cours) de ce projet a été pour déboguer ce qui est une erreur GPS (1), (2) serial port erreur, données GPS (3) l’analyse de problème de lecture. L’analyse se fait actuellement avec le module pymnea2. La routine d’initialisation complète est

Cela comprend la définition des catégories. Puisque nous utilisons le potentiomètre rotatif de Grove (et pas un encodeur rotatif), nous avons limité la résolution angulaire. Six catégories sont facilement sélectionnables sur l’écran LCD en tournant la poignée, mais nous pourrions probablement accueillir jusqu'à 15 ~ sans passer par les sélections des être trop rapprochés. Le code tente ensuite d’un point fixe GPS initial :

La boucle infinie est brisée lorsque les données de plus de deux satellites sont retournées. Succès est évaluée par l’analyse des données latitude dans un flotteur. Faute de quoi cela pourrait indiquer différents types d’erreurs GPS, y compris les erreurs de communication série. Une fois qu’un correctif a été mis en place, l’heure système actuelle est utilisée pour ouvrir le fichier journal :

L’algorithme principal est alors :

La demi-seconde de retard fournit une stabilité pour enregistrer les événements de presse bouton, sans moyen fancier de rejeter plusieurs conférences de presse. Cela sert aussi comme du temps de la base pour l’enregistrement des données, actuellement fixées à 10 fois cet intervalle (environ toutes les 5 secondes). Détails de la pioche, écran, getData et recordData fonctions peuvent être vu dans le code complet lié à la fin de cette section.

Pour le moment, le voyant s’éteint/clignote lorsqu’il perd ses coordonnées GPS, ou si le nombre de satellites est inférieure à 2. Pendant ces périodes, il est toujours possible aux données de champs d’enregistrements à l’aide de tous les capteurs sauf GPS, c'est-à-dire pas de latitude, longitude ou élévation de ces points de données. Le tableau de synthèse produit à partir de la sortie affiche des moyens pour les données, en prenant en considération si l’élévation est disponible ou non. En observant l’état de la LED avant d’enregistrer les données, cela offre la possibilité d’attendre (parfois seulement quelques secondes) afin d’avoir des données GPS disponibles ou non. De toute évidence, les points de données sans GPS n’apparaissent pas sur la carte.

Le code complet est lié ci-dessous.

Démarrer automatiquement au démarrage (Headless)

Puisque nous avons besoin du programme de collecte de données pour commencer dès que la puissance est reliée (et redémarrer si il faut changer les piles dans le domaine), nous avons besoin que le programme python commencer quand la Edison termine sa séquence de démarrage.

			
          

Articles Liés

À l’aide de boutons et capteurs pour faire de la musique avec l’Edison Intel

À l’aide de boutons et capteurs pour faire de la musique avec l’Edison Intel

ObjectifsMettre à l'aise à l'aide de l'Edison au prototype, un projet de matérielCréer une application simple de Node.jsJouer avec la puissance de WebSockets et mise en réseau en temps réelTirer parti des Cylon.js facilité d'utilisation lorsqu'il s'i
Rapide improvisée face tracking caméra à l’aide d’un Edison Intel

Rapide improvisée face tracking caméra à l’aide d’un Edison Intel

Il s'agit d'un tutoriel sur la façon de construire un appareil de suivi du visage simple utilisant un Edison avec carte de dérivation arduino, n'importe quel smartphone android, un servomoteur et quelques autres choses que vous trouvez qui traînent d
ETextiles avec l’Edison Intel

ETextiles avec l’Edison Intel

eTextiles sont fabriqués en utilisant des techniques et matériaux qui rendent les composants électriques donc peuvent être incorporés et intégrés dans le tissu. C'est un élément essentiel de la technologie portable et un moyen parfait pour les gens a
Conduire un nouveau Bulldozer jouet lumineux avec un Edison Intel

Conduire un nouveau Bulldozer jouet lumineux avec un Edison Intel

Cette instructable présentera les étapes nécessaires pour convertir un bulldozer captif jouet contrôlé à distance un ordinateur autonome contrôlé par un microcontrôleur Intel Edison.Vous aurez besoin :Batterie exploité jouet Bulldozer avec télécomman
Contrôler un Kwikset Smartcode Lock avec un Edison Intel

Contrôler un Kwikset Smartcode Lock avec un Edison Intel

Dans ce Instructable, nous allons vous montrer comment contrôler un verrou Kwikset ZigBee avec Intel Edison.Remarque : Le œuvre originale pour ce Instructable a été fait au cours de l'Intel IoT Roadshow Hackaton sur 14/03/15.Pour notre installation,
Tweet avec votre Edison Intel

Tweet avec votre Edison Intel

Donc, vous avez ce cool nouvelle Edison, mais quoi faire avec elle ? Eh bien, il fait parler assez bien à l'internet, nous allons donc faire parler à internet !Curieusement, les bibliothèques ethernet pour Arduino travail aussi bien sur l'Edison, alo
Jouer de la musique avec votre Edison Intel

Jouer de la musique avec votre Edison Intel

Qui d'autre aime la musique ? Je parie que ceux qui le font se trouve cette Instructable intéressant et amusant à faire. Il y a tant d'ordinateurs monocarte que nous avons tous et l'amour dont Raspberry Pi, Beaglebone et maintenant l'Edison Intel. Ce
Création d’un moniteur de qualité d’air ITO avec l’Edison Intel

Création d’un moniteur de qualité d’air ITO avec l’Edison Intel

Qualité de l'air devient un luxe dans la société actuelle. Vous familiariser avec votre environnement invisible en utilisant un Edison Intel avec carte de dérivation Arduino, Grove Starter Kit et IBM Bluemix - une ressource en ligne pour les geeks, b
Connexion d’une caméra 3D Intel® RealSense™ avec l’Edison Intel®

Connexion d’une caméra 3D Intel® RealSense™ avec l’Edison Intel®

Intel® a introduit beaucoup de grande innovation. L'une est la technologie Intel® RealSense™ avec les caméras 3D Intel® RealSense™ et le SDK ; Nous pouvons créer des applications qui peuvent effectuer le geste détection, analyse faciale, segmentation
Fête de départ alarme avec paramètres de BT

Fête de départ alarme avec paramètres de BT

Lot de la partie sur le chemin. Dans tous les partis, nous commençons à la fois. Il peut être plus de temps à rebours. Maintenant un surprise partie démarreur où tout le monde ne sais pas. Ses une alarme avec musique et lumière. J'ai utiliser app voi
Personnalisé lettrage et polices sélection sur 3D imprimés anneaux avec paramètres App Customizer

Personnalisé lettrage et polices sélection sur 3D imprimés anneaux avec paramètres App Customizer

cette sur quelques considérations importantes lors de l'impression lettrage personnalisé dans le cadre d'un modèle 3D. Texte non plus peut être imprimé de façon positive de relief ou de manière négative comme le montre cette image. Le texte de cette
Linkit une eau régulateur de niveau avec vue sur WIFI et paramètres

Linkit une eau régulateur de niveau avec vue sur WIFI et paramètres

L'eau régulateur de niveau déjà fait à l'aide d'Arduino Uno et migrer vers Linikit un. Mais pas satisfait parce que je ne peux pas utiliser toutes les ressources en Linikit un. Alors, prévoyez d'utiliser les fonctionnalités de Linikit un entièrement.
Régulateur de niveau liquide précis avec capteur de faible coût et distant pour les paramètres TV

Régulateur de niveau liquide précis avec capteur de faible coût et distant pour les paramètres TV

C'est la mon premier projet Arduino de personnel. Même à travers, je prévois d'automatiser plus réservoir eau niveau je n'aime pas investir plus d'argent sur les instruments. J'ai une carte Arduino et cartes relais de mes amis. Donc utiliser que plan
Comment régler les paramètres d’impression de braise pour nouvelles résines

Comment régler les paramètres d’impression de braise pour nouvelles résines

Vous avez une nouvelle résine votre envie d'essayer d'utiliser l' imprimante Ember, ou est un particulier qui vous donne des problèmes d'impression ? Dans les deux cas, il y a de bonnes chances que la modification des paramètres d'impression par défa