nodo-domotica.nl

Draadloze meterkast slaaf

Laat hier anderen je eigen gemaakte Nodo projecten zien.

Draadloze meterkast slaaf

Berichtdoor mvdbro » 21 jun 2012, 13:20

Zie hier mijn meterkast slaaf. Ik wilde deze zo goedkoop maken als ik kon bedenken, dus op basis van een losse Atmel 328 chip en experimenteerprintje.

Binnenkant:
Afbeelding

Buitenkant:
Afbeelding

Op de foto is alleen de voeding aangesloten, maar ik meet stroom, water en gasverbruik, vandaar de drie sensor aansluitingen. De meetwaarden gaan via RF en een aangepaste Nodo message naar de Mega Nodo en dan via UDP mijn lokale netwerk op. Kosten ongeveer 19 euro.

Ik wil ook kijken hoe ik dit via de webapp kan realiseren, maar dat vereist nog even nader onderzoek. Ik wil zowel actueel, dagelijks en totaal gebruik van alle metingen zien, van de huidige dag, week, maand en jaar. Ik denk dat dit nog niet kan met de Nodo webapp, maar als iemand weet hoe dit moet dan hoor ik graag instructies!

Intussen zit ik de Nodo R386 behoorlijk te verbouwen, maar dit levert voor mij het snelste resultaat en houdt ik alles compatible met mijn eigen applicaties en de Nodo Webapp.

gr
Martinus
mvdbro
 
Berichten: 1092
Geregistreerd: 21 okt 2011, 12:06

Re: Draadloze meterkast slaaf

Berichtdoor bryan241 » 21 jun 2012, 14:29

Hoi Martinus,

erg mooi. Wat gebruik je als antenne?
Ik heb overigens ook de code r386 iets aangepast om een waarde van de oude nodo software te kunnen ontvangen. Door middel van een userevent met de waarde erin. Is vrij simpel toe te voegen aan de code en hoeft niet meegenomen te worden als de nieuwe code er eenmaal is voor de nodo_due.
Als je interesse hebt zal ik de code even plaatsen. Via het userevent kan je een variabele zetten en deze doorsturen naar de webapp.
bryan241
 
Berichten: 172
Geregistreerd: 07 jan 2012, 14:14

Re: Draadloze meterkast slaaf

Berichtdoor mvdbro » 21 jun 2012, 15:01

Het blauwe draadje is de antenne. Werkt prima in mijn situatie want de afstand tussen slave en master is niet zo groot. Ik heb er ook over gedacht om de Nodo software aan te passen zodat de commandcodes tussen Nodo-Due en Mega gelijk zijn. Mijn probleem is eigenlijk meer dat de slave al berekeningen doet zoals actueel verbruik, b.v. 3320 watt of 233ml/sec. In de nieuwe Nodo versie zijn de variabelen volgens de documentatie beperkt van -102 t/m +102. Je kunt volgens mij ook niet meer dan 100 pulsen doorgeven, terwijl ik heb gekozen om de pulsen maar 1x per 10 minuten door te melden. Dan past dat niet meer.

Wat code betreft zou het mooi zijn als je dit via dit forum zou kunnen verzamelen, waarbij iedereen zijn eigen custom versies kan achterlaten. Ik denk alleen dat dit standaard forum-software is die deze functie niet heeft. Ik ben ook wel beniewd wat anderen aanpassen. Mogelijk kunnen we gezamenlijk stemmen om goede code in de standaard opgenomen te krijgen. Ik zou b.v. graag zien dat de plugin constructie verder wordt uitgebreid, zodat je minder hoeft te tweaken in de andere tabbladen.
mvdbro
 
Berichten: 1092
Geregistreerd: 21 okt 2011, 12:06

Re: Draadloze meterkast slaaf

Berichtdoor softwareregi » 21 jun 2012, 15:18

Ziet er goed uit, maar kun je meer vertellen over de manier waarop je de meters uitleest (hardware en code die je in de slave heb gezet)?

gr.
Gr. John
softwareregi
 
Berichten: 254
Geregistreerd: 29 aug 2011, 14:05

Re: Draadloze meterkast slaaf

Berichtdoor mvdbro » 21 jun 2012, 15:44

De sensoren:
Electra: LDR met pullup van 10k, aangesloten op digital pin 2
Water: Line Tracking sensor, aangesloten op digital pin 3
Gas: CNY70 met 220 ohm weerstand naar de led en pullup weerstand op de collector, aangesloten op Analog 0

De code die ik nu gebruik is gebaseerd op enkele functies van de r386 Nodo versie. Op basis van die code heb ik de interrupt zaken tweemaal geimplementeerd en een apart stukje code voor de gasmeting die analoog is. Ik gebruik verder eigenlijk alleen de RF transmit functie en laat de slave de voorbereidende berekeningen doen. De slave zendt nu elke 30 seconden actuele verbruik door en elke 10 minuten het aantal pulsen sinds de vorige keer.

De huidige code is in experimenteel stadium en was vooral bedoeld om te zien hoe interupts werken op de Atmel 328. Ik wacht eigenlijk op de nieuwe Nodo_Due versie om te kijken of die met de benodigde aanpassingen nog past in 32K flash. Omdat ik daar toch wel problemen verwacht ben ik bezig om een 'Nodo-Due barebone' te maken die vooral voor remote sensoren kan worden gebruikt. Zaken als realtime clock, RF ontvangst en IR afhandeling haal ik er dan uit. Ik heb nu een Nodo-Due versie van 18kb met nog wel serial, eventlist en RF zender functie. Zou genoeg moeten zijn.
mvdbro
 
Berichten: 1092
Geregistreerd: 21 okt 2011, 12:06

Re: Draadloze meterkast slaaf

Berichtdoor softwareregi » 21 jun 2012, 16:54

Duidelijk.

We zijn momenteel bezig met het ontwerpen van een mini printje met daarop een Atmega 328, een Tx module en poortaansluimogelijkheden (dig en analoog).
(wordt SMD print)

Verzoek: zou je de code die je nu gebruikt voor de metingen naar mij kunnen mailen ? (gewoon intresse)
gr.
Gr. John
softwareregi
 
Berichten: 254
Geregistreerd: 29 aug 2011, 14:05

Re: Draadloze meterkast slaaf

Berichtdoor proza » 21 jun 2012, 19:07

mvdbro schreef:Zie hier mijn meterkast slaaf.


Ik zeg erg fraai en handig z'n slave, ook voor licht en temperatuur meting vanuit de schuur oid.
Mijn Nodo's - Jura Impressa F50 and a Starbucks MUG makes my day complete
Gebruikers-avatar
proza
 
Berichten: 420
Geregistreerd: 03 nov 2011, 22:44

Re: Draadloze meterkast slaaf

Berichtdoor mvdbro » 21 jun 2012, 20:36

Hierbij de test software die ik gebruik op deze slave:

https://dl.dropbox.com/u/58896491/Slave2.pde

Let wel:
-Werkt alleen in mijn eigen omgeving met aangepaste Mega en custom web applicatie
-Alles hardcoded dus niet flexibel.
-Je hebt er verder dus niet zoveel aan....

Ik ben bezig om deze code min of meer te integreren in een stripped down versie van de Nodo-Due, zodat ik met de Nodo variablen en eventlist kan werken (timers)
mvdbro
 
Berichten: 1092
Geregistreerd: 21 okt 2011, 12:06

Re: Draadloze meterkast slaaf

Berichtdoor bryan241 » 29 jun 2012, 14:39

In de code staat dat je gebruik maakt van interrupts, maar daar zie ik verder niets van terug.
Klopt dat?
Gebruik je niet gewoon een lus om de poorten uit te lezen?
bryan241
 
Berichten: 172
Geregistreerd: 07 jan 2012, 14:14

Re: Draadloze meterkast slaaf

Berichtdoor mvdbro » 29 jun 2012, 14:53

Voor analoge meting inderdaad via de hoofdlus. Ik gebruik interrupt 0 en 1, zie de regels:

attachInterrupt(0, powerblink, FALLING);
attachInterrupt(1, waterblink, FALLING);

de functies powerblink en waterblink handelen de interupts af. De resultaten gaan wel weer via de hoofdlus. Het is de bedoeling dat de interupt routine zo snel mogelijk wordt afgehandeld, dus b.v. alleen een variable instellen en dan exit. In de hoofdlus test je dan of de variabele is gewijzigd. Je kunt ook de gehele afhandeling van een event in de interupt routine doen, maar tijdens dit proces kun je dan wel pulsen missen. Tenzij je het interupt register gaat tweaken en met nested interupts gaat werken. Lijkt me te complex voor de meeste toepassingen.
mvdbro
 
Berichten: 1092
Geregistreerd: 21 okt 2011, 12:06

Volgende

Keer terug naar Show je Nodo

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers. en 1 gast