Expedier un enregistreur de données pour un électricité Kamstrup / compteur avec Raspberry Pi de gaz ! (3 / 5 étapes)

Étape 3: Et maintenant, certains logiciels...

La lecture des données du compteur

J’ai joint un petit programme C (énigmatique appelé ft) qui lira le FTDI directement. Ce programme n’est rien de compliqué, il va :

1. Abaissez la DTR provoque le compteur pour nous donner des informations précieuses
2. lire jusqu'à ce qu’il n’y a pas de données pendant 2 secondes
3. tout imprimer à l’écran

Pour compiler ce sur le rPi, installez « ftdilib-dev » sur le rPi avec "sudo apt-get installer libftdi-dev", copie le fichier tar à l’IPD (sous le compte root dans le répertoire/root pour garder les choses simples), décompresser en utilisant tar - xvf datacollector.tar et puis question le "faire" commande dans le répertoire/root.

Si tout se passe comme prévu, le compilateur va nous donner le programme ft . Si vous démarrez ce programme (entrer . YD et appuyez sur entrée), un bloc d’informations est affiché comme :

---------------------------------------------------------------------------
/ KMP5 KA6U005464565461

0-0:96.1.1(352345243543524352345353535353243)
1-0:1.8.1(00913.000*kWh)
1-0:1.8.2(00787.000*kWh)
1-0:2.8.1(00000.000*kWh)
1-0:2.8.2(00000.000*kWh)
0-0:96.14.0(0001)
1-0:1.7.0(0000.25*kW)
1-0:2.7.0(0000.00*kW)
0-0:17.0.0(999*A)
0-0:96.3.10(1)
0-0:96.13.1()
0-0:96.13.0()
0-1:24.1.0(3)
0-1:96.1.0(352345243543524352345353535353243)
0-1:24.3.0(120531230000)(08)(60)(1)(0-1:24.2.1)(m3)
(00752.852)
0-1:24.4.0(1)
!
---------------------------------------------------------------------------

Si aucune donnée correcte n’est affichée, les connexions au compteur d’énergie ne sont probablement pas correctes. Vérifiez-les à nouveau ! Si le programme ft bombes avec un message que l’appareil ne peut pas être ouvert :

-Vérifiez que vous exécutez en tant qu’utilisateur racine . L’accès à la périphérique FTDI requiert des privilèges supplémentaires.
-Si vous avez une autre version FTDI (ou d’un fabricant de différence) vérifier les deux fabricant hexadécimal / dispositif de nombres dans l’appel de ftdi_usb_open . Utilisez la commande lsusb pour déterminer les nombres hexadécimaux à droite pour votre périphérique FTDI.
-Si les seules données affichées à l’écran sont beaucoup de charabia, vérifiez si la broche RXD a été inversée à l’aide de l’utilitaire FT_PROG sur une machine windows. Il faut vraiment être inversé ! Vous pouvez obtenir cet utilitaire sur le site FTDI.

Conversion des données

Les données seront analysées par un petit programme AWK (cosm.sh et cosm.awk) pour créer les données pour publier sur Cosm. Le programme AWK scanne la sortie du programme ft et ramasse les pièces qui que nous intéresse. Enfin, les données sont concertées dans une structure JSON, qui peut être alimentée directement en Cosm.

Un exemple d’un tel message de données :

------------------------------------------------------------------------
{
« version »: « 1.0.0 »,
« données »: [
{« id »: « + T1 », « current_value »: « 00913.000 »},
{« id »: « + T2 », « current_value »: « 00787.000 »},
{« id »: "TotalkWh", "current_value": « 1700 »},
{« id »: "W1", "current_value": « 0000.34 »},
{« id »: "W2", "current_value": « 0000.00 »},
{« id »: "Gaz", "current_value": « 00752.852 »}
]}
------------------------------------------------------------------------

Tester le script AWK en lançant :

. YD | awk -f cosm.awk

La sortie doit ressembler à du bloc du code JSON ci-dessus.

Relier les deux étapes précédentes

Le script cosm.sh se déroulera les deux étapes précédentes et enfin valider la structure JSON résultante de Cosm. Avant que nous y parvenons, nous aurons créer un compte Cosm, créez une clé API et l’alimentation.

Je vais décrire ces étapes à l’étape suivante.

Articles Liés

Construire un enregistreur de données pour votre réseau de capteurs sans fil

Construire un enregistreur de données pour votre réseau de capteurs sans fil

nous avions besoin d'un enregistreur de données qui a fourni un timestamp, et qui seraient des 2 dernières semaines dans les bois. À l'aide d'un ordinateur portable exigerait un générateur ou un gigantesque batterie. Ce Instructable montre comment fa
Enregistreurs de données pour une utilisation par les participants de science citoyenne

Enregistreurs de données pour une utilisation par les participants de science citoyenne

il y a des enregistreurs de données de prévoir la nourriture industrie maritime qu'enregistrer la température et l'humidité et sont relativement peu coûteux et très facile à utiliser. Une vue d'ensemble des produits est ici : http://bit.ly/UdVImh.  I
Enregistreur de données de capteur de luminosité et de température

Enregistreur de données de capteur de luminosité et de température

Dans ce tutoriel, je fais une température et un enregistreur de données de capteur de lumière avec un Arduino pour que je peux tester les différents endroits des plantes ou des endroits pour dormir à l'extérieur durant l'été qui n'obtiennent pas de b
Construire un enregistreur de données de « boîte noire » pour ajouter sur les jauges d’affichage écran à vos vidéos

Construire un enregistreur de données de « boîte noire » pour ajouter sur les jauges d’affichage écran à vos vidéos

Ce projet inclut des instructions sur la façon de construire le dispositif ainsi qu'un lien vers le code de projet sur github qui devront être téléchargées pour s'exécuter.Un Arduino fonction enregistreur de données aux fins de la synchronisation des
Enregistreur de données GPS pour les coureurs de route

Enregistreur de données GPS pour les coureurs de route

Je suis un coureur de route (à pied), moi-même, et j'aime les chiffres et les mathématiques aussi bien (comme un étudiant en génie). L'idée du suivi /marquage mon chemin en cours d'exécution pour post-analyse m'a toujours fasciné, mais j'ai toujours
Comment construire un enregistreur de données GPS léger pour les Applications de fusée modèle

Comment construire un enregistreur de données GPS léger pour les Applications de fusée modèle

février 2009Vue d'ensembleJ'ai toujours rêvé de construire un ordinateur de vol qui sera non seulement contrôler la séquence de vol, mais aussi enregistrer des données à bord d'une fusée modèle. Mais j'ai besoin de marcher avant que je peux courir, a
Enregistreur de données de l’énergie solaire

Enregistreur de données de l’énergie solaire

Vous avez toujours voulu savoir combien d'énergie solaire vous pourriez rapporter en mettant des cellules PV à un emplacement particulier sur ou autour de votre maison ?Ce Instructable vous montre comment construire un enregistreur de données basé su
Projet d’enregistreur de données

Projet d’enregistreur de données

il s'agit d'un enregistreur de données, j'ai fait pour ma classe. Je ne pouvais pas trouver toutes les instructions que je pourrais utiliser pour faire de l'Arduino enregistrer l'éclat de lumière et la température. Affichage de la température et la v
Faible coût enregistreur de données de température (DS18B20) WIFI basé sur ESP8266 avec une connectivité à thingspeak.com

Faible coût enregistreur de données de température (DS18B20) WIFI basé sur ESP8266 avec une connectivité à thingspeak.com

Enregistreur de données de température basé sur le capteur de température 1-Wire DS18B20 et de ESP8266.À seulement $5 ESP-01 Conseil et DS18B20 capteur.Le logiciel est écrit en langage LUA et s'exécute directement dans ESP8266.Aucun autre MCU nécessa
Enregistreur de données de carte SD avec LinkitOne

Enregistreur de données de carte SD avec LinkitOne

Dans ce tutoriel, nous allons voir comment utiliser la fonctionnalité de carte SD intégrée dans le MediaTek LinkitOne super génial !Le LinkitOne offre 10MB à bord de stockage flash et jusqu'à 32 Go de stockage extensible via le slot pour carte microS
Enregistreur de données GPS Arduino

Enregistreur de données GPS Arduino

vous voulez vous connecter à des données GPS sur une carte SD en utilisant votre Arduino ? Possédez-vous déjà un bouclier microSD Sparkfun et module GPS ? Avez-vous essayé le Adafruit Sheild (bien que c'est génial et pas cher), mais il a volé toutes
Faire Loger données pour salle conditions enregistrement utilisant Arduino

Faire Loger données pour salle conditions enregistrement utilisant Arduino

Créer les conditions pour enregistrer l'état de la température, hygrométrie et la pression dans la chambre une salle de loger des données devient relativement facile. Arduino est un microcontrôleur programmable à l'aide d'un PC, en raison de la facil
Enregistreur de données discrète

Enregistreur de données discrète

il n'y a pas de meilleure façon de cacher un dispositif secrète qu'afin de le coller à l'intérieur d'un dispositif bien plus grand.Cela dit... Essentiellement, c'est un guide pour faire un système d'enregistrement de données pour une utilisation avec
Enregistreur de données de température

Enregistreur de données de température

un enregistreur de données est un dispositif qui peut être utilisé pour stocker des données. Cela inclut de nombreux matériels d'acquisition de données tels que des cartes enfichables ou des systèmes de communication série qui utilisent un ordinateur