Goto page 1, 2, 3 Next
Guest
Mon Jan 09, 2012 10:43 am
Guten Tag zusammen!
Ich möchte gerne meinen Gaszähler im Keller mittels Reed-Relais am Arduino-Board auslesen
und die Daten zu mir in den ersten Stock funken. Der Artikel
http://www.martinbulinski.de/Bastelecke/Elektronische-Spielereien/gaszaehler-auslesen-am-pc-gameport.html
legt nahe, dass es grundsätzlich ganz einfach sein sollte. Und wie der Zufall es will, haben wir
einen passenden Krom-Schröder Gaszähler.
Die Frage ist nun, wie ich die Daten zu mir in die Wohnung im ersten Stock bekomme, wo ich sie
dann speichern bzw. zur Anzeige bringen möchte.
Ich kenne mich nicht mit Funkmodulen aus und frage mich daher, ob da ein ISM-Modul in Frage
kommt. Pollin hat Sende- und Empfangsmodule für je ca. 4 bis 5 EUR im Sortiment:
http://www.pollin.de/shop/suchergebnis.html?S_TEXT=funkmodul
Allerdings hätte ich damit die Wahl zwischen 433 und 868 MHz. Meine Frage ist: Für welches sollte
ich mich entscheiden?
Der Wikipedia-Artikel zu ISM legt nahe, dass das 868 MHz Band (noch) weniger Störungen erwarten
lässt. Mit welcher Variante sollte ich denn besser durch die Decken kommen?
Vielen Dank!
Marian
Waldemar Krzok
Guest
Mon Jan 09, 2012 10:43 am
Am 09.01.2012 09:44, schrieb marian.steinbach_at_gmail.com:
Quote:
Und gleich eine Anschlussfrage: Was für eine Antenne brauche ich für solche Module?
Die Sende-Einheit soll mit Akku betrieben werden und daher möglichst geringen Stromverbrauch
haben.
Für diese Anwendung würde ich eher 868MHz nehmen. Oder 2.4GHz. 433MHz
ist wie Ausverkauf bei Media Markt. Ansonsten ist ziemlich viel abhängig
davon, wie weit dein Zähler ist, welche Installation so herum liegt etc.
Ist es ein Einfamilienhaus?
Ausserdem würde ich persönlich das ez430-RF2500 von TI nehmen. Nicht
nur, dass ich diese Dinge herumliegen habe, aber sie haben einen
unverschämt niedrigen Stromverbrauch und eine fast fertige Applikation
(einen Fernthermometer), die man für deine Zwecke anpassen kann. Es
kostet ca 30EUR inclusive 2 TRX-Module. Arduino ist sehr Stromgeil.
Bezüglich Antenne: ich würde versuchen mich an Heizung- bzw. Wasserrohre
mit einem Kondensator einkoppeln. Die ca 10m Reichweite der Module, ob
TI oder die Dingense von Reichelt können, je nach Bauweise des Hauses,
schnell 2m oder weniger werden.
Waldemar
--
My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.
Guest
Mon Jan 09, 2012 10:44 am
Und gleich eine Anschlussfrage: Was für eine Antenne brauche ich für solche Module?
Die Sende-Einheit soll mit Akku betrieben werden und daher möglichst geringen Stromverbrauch
haben.
Guest
Mon Jan 09, 2012 12:12 pm
On Monday, January 9, 2012 10:39:48 AM UTC+1, Waldemar Krzok wrote:
Quote:
Ist es ein Einfamilienhaus?
Nein, ein Mehrfamilienhaus, und ich bin Mieter. Daher soll meine Installation auch
nicht zu "intrusiv" wirken sein. Am liebsten möchte ich nur ein kleines Kästchen oder
Beutelchen unter den Gaszähler hängen, damit Mitarbeite des
Versorgungsunternehmens nicht gleich Manipulation wittern.
Quote:
Ausserdem würde ich persönlich das ez430-RF2500 von TI nehmen. Nicht
nur, dass ich diese Dinge herumliegen habe, aber sie haben einen
unverschämt niedrigen Stromverbrauch und eine fast fertige Applikation
(einen Fernthermometer), die man für deine Zwecke anpassen kann. Es
kostet ca 30EUR inclusive 2 TRX-Module. Arduino ist sehr Stromgeil.
Hmm. Als jemand, der praktisch keine Vorerfahrung hat, habe ich mich gerade
wegen der geringen Einstiegshürde auf Arduino eingeschossen. Wenn es sich
vermeiden lässt, möchte ich nicht unbedingt eine weitere Plattform/
Entwicklungsumgebung mit einbeziehen.
Die TI-Kits finde ich im Online-Handel übrigens ab 50 EUR aufwärts.
Der Stromverbrauch des Arduino Pro Mini sollte im sleep mode unter 2 mA
liegen. Das klingt für mich in Ordnung.
Quote:
Bezüglich Antenne: ich würde versuchen mich an Heizung- bzw. Wasserrohre
mit einem Kondensator einkoppeln. Die ca 10m Reichweite der Module, ob
TI oder die Dingense von Reichelt können, je nach Bauweise des Hauses,
schnell 2m oder weniger werden.
Wie macht man das? (Antenne mit Kondensator an Rohre koppeln)
Danke und Grüße
Marian
Matthias Weingart
Guest
Mon Jan 09, 2012 4:07 pm
marian.steinbach_at_gmail.com:
Quote:
Der Stromverbrauch des Arduino Pro Mini sollte im sleep mode unter 2 mA
liegen. Das klingt fr mich in Ordnung.
Naja bei 2000mAh Akkus (also Mignonzellen) heissen 2mA alle 41 Tage die Akkus
nachzuladen. Eine MSP430 Lösung kann da auf 2uA im Sleep kommen, das sind
dann 41000Tage, zumindest theoretisch.
Aber ihmo sollten auch einige Atmels weiter runter mit dem Strom kommen
können - immer mal über die RTC aufwecken und sonst komplett schlafen
schicken.
M.
Guest
Mon Jan 09, 2012 4:36 pm
Wenn möglich, würde ich das Board gerne durch den Reed-Releais "aufwachen" lassen. D.h.: immer, wenn 10 Liter Gas verbraucht wurden, wird das Board aktiv und funkt eine Nachricht. Danach geht es wieder schlafen. Das wäre zumindest meine Idealvorstellung. Sollte eigentlich auch möglich sein. Das Stichwort wäre "Interrupt", wenn ich das richtig verstanden habe. Die Alternative, per Watchdog Timer, wäre wohl deutlich stromzehrender. Ich lasse mich gerne auf ein Experiment ein und hänge halt zur Not einen größeren Akku dran, wenn mir das Austauschen zu nervig wird.
Angenommen, ich nehme die 868 MHz Variante der ISM-Module. Das Altbau-Treppenhaus ist nur aus Holz, da sollten meine Chancen doch gut stehen. Wie müsste die Antenne für sowas beschaffen sein?
Grüße vom
Marian
Joerg
Guest
Mon Jan 09, 2012 4:59 pm
marian.steinbach_at_gmail.com wrote:
Quote:
On Monday, January 9, 2012 10:39:48 AM UTC+1, Waldemar Krzok wrote:
Ist es ein Einfamilienhaus?
Nein, ein Mehrfamilienhaus, und ich bin Mieter. Daher soll meine Installation auch
nicht zu "intrusiv" wirken sein. Am liebsten möchte ich nur ein kleines Kästchen oder
Beutelchen unter den Gaszähler hängen, damit Mitarbeite des
Versorgungsunternehmens nicht gleich Manipulation wittern.
"Herr Kommissar, da haengt so ein komischer Knubbel an einem Gaszaehler
der letzte Woche noch nicht da war"
....
"Schroeder, lassen sie sofort alles in 1km Umkreis evakuieren,
alarmieren Sie die Feuerwehr und das Innenministerium!"
:-)
Quote:
Ausserdem würde ich persönlich das ez430-RF2500 von TI nehmen. Nicht
nur, dass ich diese Dinge herumliegen habe, aber sie haben einen
unverschämt niedrigen Stromverbrauch und eine fast fertige Applikation
(einen Fernthermometer), die man für deine Zwecke anpassen kann. Es
kostet ca 30EUR inclusive 2 TRX-Module. Arduino ist sehr Stromgeil.
Hmm. Als jemand, der praktisch keine Vorerfahrung hat, habe ich mich gerade
wegen der geringen Einstiegshürde auf Arduino eingeschossen. Wenn es sich
vermeiden lässt, möchte ich nicht unbedingt eine weitere Plattform/
Entwicklungsumgebung mit einbeziehen.
Die Einstiegshuerde ist bei TI sehr niedrig. Kann ich aus Erfahrung
sagen da ich normalerweise keine Micro Controller programmiere und mit
dem EZ430 Kit (das fuer $20 ohne Funk) innerhalb weniger Stunden einen
Versuchsaufbau eines LED-Flugzeugpositionslichts laufen hatte, mit
Timing und allem. Der Funk-Teil ist normalerweise eine graphische
Oberflaeche in super-bequem Ausfuehrung, beinahe mit Sitzheizung und
Kaffeewaermer.
Quote:
Die TI-Kits finde ich im Online-Handel übrigens ab 50 EUR aufwärts.
Es geht billiger wenn man sich das aus Teilen von Bastellaeden
zusammenstoppelt, aber:
a. Der Stromverbrauch ist dann meist unangenehm hoch.
b. Es dauert alles laenger weil man keine so weit integrierte
Entwicklungsumgebung hat wie bei TI. Vermutlich machen andere uC Firmen
wie etwa Atmel aehnliche Lockvogel-Angebote, koennte sich ein Blick lohnen.
Quote:
Der Stromverbrauch des Arduino Pro Mini sollte im sleep mode unter 2 mA
liegen. Das klingt für mich in Ordnung.
Wie Matthias schrieb, das ist viel zu hoch. Jeden Monat in den Keller
muessen, irgendwann doch mal vergessen, Daten unbrauchbar geworden.
Ich kenne Eure Gaszaehler nicht, nehme aber an dass nur alle paar
Sekunden so ein Reed-Puls kommt. Sonst wuerde das Relais ja nicht lange
leben. Dann kann man das so machen:
Der MSP430 Prozessor verbringt den Loewenanteil der Zeit mit dem was
Loewen auch meist tun, schlafen. Da braucht er nur wenige Mikroampere.
Der Reed Kontakt loest einen Interrupt aus, welcher bei uC-Programmen
sowas wie ein "Wecker" ist. Normalerweise loest der eine Unterbrechung
eines laufenden Programms aus, hier aber weckt er den MSP430 auf. Ein
winziges Programm startet, das macht aber nichts anderes als einen
Speicherplatz um den Wert "1" zu inkrementieren. Sofort danach geht der
MSP430 wieder schlafen. Hoert sich alles kompliziert an aber der MSP430
kann in unter 10 Mikrosekunden aufwachen und solche Routinen laufen
rasend schnell. Das sorgt fuer ein grosses Verhaeltnis von Schlaf- zu
Aktivphasen und der Stromverbrauch wird gemittelt entsprechend minimal.
In diesem Prograemmchen muss dann noch eine Routine drin sein welche den
Sendeteil aktiviert. Aber nur alle xx Inkrementierungen, musst Du
auswaehlen. Oder eben alle paar Minuten, geht auch. Dann sendet es den
Inhalt dieses Speicherplatzes in den ersten Stock. Anschliessend wird
der Sendeteil wieder abgeschaltet und auch der MSP430 geht schlafen bis
zum naechsten Reed Puls.
Senden kosten viel Saft, sollte man also nicht uebertreiben mit der
Haeufigkeit der "Durchsagen".
Quote:
Bezüglich Antenne: ich würde versuchen mich an Heizung- bzw. Wasserrohre
mit einem Kondensator einkoppeln. Die ca 10m Reichweite der Module, ob
TI oder die Dingense von Reichelt können, je nach Bauweise des Hauses,
schnell 2m oder weniger werden.
Wie macht man das? (Antenne mit Kondensator an Rohre koppeln)
Bringt bei so hohen Frequenzen meist nicht viel. Du hast auch keine
gescheite Erde. Wenn es sein muss, dann eine Schleifenantenne machen und
das parallel zum Rohr montieren, in der Hoffnung dass wenigstens ein
bischen einkoppelt.
Trick 17 falls das mit diesen Modulen geht: Amplitude-Shift Keying als
Sendeart auswaehlen, die Info xx Mal senden und oben am PC korrelieren.
So holt man Signale "aus der Grasnarbe raus". Da das mehr Energie kostet
solltest Du dann vielleicht noch seltener senden lassen. Eine
Richtantenne oben in der Wohnung koennte auch helfen, ich weiss aber
nicht ob das in Deutschland erlaubt ist wenn darueber auch gesendet wuerde.
--
Gruesse, Joerg
http://www.analogconsultants.com/
Matthias Weingart
Guest
Mon Jan 09, 2012 5:57 pm
marian.steinbach_at_gmail.com:
Quote:
Angenommen, ich nehme die 868 MHz Variante der ISM-Module. Das
Altbau-Treppenhaus ist nur aus Holz, da sollten meine Chancen doch gut
stehen. Wie msste die Antenne fr sowas beschaffen sein?
Naja, es gibt ja Module mit "Chipantenne", d.h. die Antenne ist da schon
drauf. Reicht eventuell aus. Du kannst Dir auch selber eine Antenne basteln:
ein Stück Draht in die Antennenbuchse stecken (bzw. an einen Stecker löten)
und millimeterweise abschneiden, bis die Feldstärke optimal ist. Dazu muss
das Modul RSSI anzeigen können (Empfangsfeldstärke).
M.
Waldemar Krzok
Guest
Mon Jan 09, 2012 6:17 pm
Am 09.01.2012 17:55, schrieb marian.steinbach_at_gmail.com:
Quote:
On Monday, January 9, 2012 4:59:39 PM UTC+1, Joerg wrote:
Der Stromverbrauch des Arduino Pro Mini sollte im sleep mode unter 2 mA
liegen. Das klingt für mich in Ordnung.
Wie Matthias schrieb, das ist viel zu hoch. Jeden Monat in den Keller
muessen, irgendwann doch mal vergessen, Daten unbrauchbar geworden.
Das war eine eher hoch angesetzte Schätzung. Den tatsächlichen Bedarf werde
ich wohl erst feststellen können, wenn ein Prototyp eine Weile gelaufen ist.
Ich kenne Eure Gaszaehler nicht, nehme aber an dass nur alle paar
Sekunden so ein Reed-Puls kommt. Sonst wuerde das Relais ja nicht lange
leben. Dann kann man das so machen:
Die Impulse kommen deutlich seltener, nämlich immer dann, wenn 10 Liter Gas
verbraucht wurden. Ich habe mich noch nicht hingestellt und das gemessen,
wie lange das dauert. Wenn ich daran denke, wie lange ich im VW-Bus mit 10
Litern Gas kochen kann, muss das eine ganze Weile dauern.
Der MSP430 Prozessor verbringt den Loewenanteil der Zeit mit dem was
Loewen auch meist tun, schlafen. Da braucht er nur wenige Mikroampere.
Der Reed Kontakt loest einen Interrupt aus, welcher bei uC-Programmen
sowas wie ein "Wecker" ist. Normalerweise loest der eine Unterbrechung
eines laufenden Programms aus, hier aber weckt er den MSP430 auf. Ein
winziges Programm startet, das macht aber nichts anderes als einen
Speicherplatz um den Wert "1" zu inkrementieren. Sofort danach geht der
MSP430 wieder schlafen. Hoert sich alles kompliziert an aber der MSP430
kann in unter 10 Mikrosekunden aufwachen und solche Routinen laufen
rasend schnell. Das sorgt fuer ein grosses Verhaeltnis von Schlaf- zu
Aktivphasen und der Stromverbrauch wird gemittelt entsprechend minimal.
In diesem Prograemmchen muss dann noch eine Routine drin sein welche den
Sendeteil aktiviert. Aber nur alle xx Inkrementierungen, musst Du
auswaehlen. Oder eben alle paar Minuten, geht auch. Dann sendet es den
Inhalt dieses Speicherplatzes in den ersten Stock. Anschliessend wird
der Sendeteil wieder abgeschaltet und auch der MSP430 geht schlafen bis
zum naechsten Reed Puls.
Senden kosten viel Saft, sollte man also nicht uebertreiben mit der
Haeufigkeit der "Durchsagen".
Da der Zählimpuls eben nicht so häufig, vermutlich nur wenige Male pro Stunde
kommt, werde ich mal als erstes versuchen, wie es funktioniert, wenn ich bei jedem
Impuls die Daten direkt sende. Dann werde ich ja merken, wie viel das Gerät zieht.
...
Trick 17 falls das mit diesen Modulen geht: Amplitude-Shift Keying als
Sendeart auswaehlen, die Info xx Mal senden und oben am PC korrelieren.
So holt man Signale "aus der Grasnarbe raus". Da das mehr Energie kostet
solltest Du dann vielleicht noch seltener senden lassen. Eine
Richtantenne oben in der Wohnung koennte auch helfen, ich weiss aber
nicht ob das in Deutschland erlaubt ist wenn darueber auch gesendet wuerde.
Oben soll eigentlich nur empfangen werden, damit die Sender an den Sensoren
möglichst primitiv ausfallen können. Zwei-Wege-Kommunikation macht es IMHO
nur aufwändiger.
Das mit dem redundanten Senden halte ich auch für einen guten Ansatz. Abgesehen
davon kann ich mit jedem Zählimpuls hochzählen, so dass der Empfänger merkt, wenn
er Impulse "übersehen" hat.
Eine weitere Möglichkeit wäre es, mit jedem Sendevorgang den letzten und evtl auch
vorletzten Zählwert, einschließlich Zeitdifferenz, nochmal zu übertragen. Damit kann auch
der Zeitpunkt einer ausgelassenen Messung noch rekonstruiert werden.
Allerdings steigt mit zunehmender Nachrichtenlänge die Wahrscheinlichkeit, dass die
Nachricht vollständig übertragen wird, ja nicht unbedingt. Und der Energieverbrauchst für
das Senden steigt leicht.
Ich habe hier einen Testaufbau mit dem RF2500 von TI. Der sendet 10x pro
Sekunde ein Datagramm mit Tastenzustand (4 bit), Temperatur und
Batteriespannung an den Host. Es läuft ca 2 Monate bei 2xLR03 Zellen on
board. Inclusive senden. Ohne Senden wird das Ding wohl 1 Jahr oder mehr
durchhalten. Dito, wenn du die Frequenz von 10Hz auf 0.1Hz reduzierst.
Dann kann man über energy harvesting nachdenken und die Besaftung aus
der Solarzelle melken. Ab- und zu kommt einer in den Keller und macht
das Licht an

.
Waldemar
--
My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.
Frank Reutter
Guest
Mon Jan 09, 2012 6:29 pm
<marian.steinbach_at_gmail.com> wrote:
Quote:
Die Impulse kommen deutlich seltener, nämlich immer dann, wenn 10 Liter Gas
verbraucht wurden. Ich habe mich noch nicht hingestellt und das gemessen,
wie lange das dauert. Wenn ich daran denke, wie lange ich im VW-Bus mit 10
Litern Gas kochen kann, muss das eine ganze Weile dauern.
Räusper.
Die 10 Liter Gas in der Flasche im VW-Bus stehen unter hohem Druck und
sind flüssig. Die 10 Liter im Gaszähler sind gasförmig und reichen nicht
ganz so lang.
cu
f
--
....ausserdem halte ich verdunkelte Heckscheiben für antisozial und dumm.
Joerg
Guest
Mon Jan 09, 2012 6:34 pm
marian.steinbach_at_gmail.com wrote:
Quote:
On Monday, January 9, 2012 4:59:39 PM UTC+1, Joerg wrote:
Der Stromverbrauch des Arduino Pro Mini sollte im sleep mode unter 2 mA
liegen. Das klingt für mich in Ordnung.
Wie Matthias schrieb, das ist viel zu hoch. Jeden Monat in den Keller
muessen, irgendwann doch mal vergessen, Daten unbrauchbar geworden.
Das war eine eher hoch angesetzte Schätzung. Den tatsächlichen Bedarf werde
ich wohl erst feststellen können, wenn ein Prototyp eine Weile gelaufen ist.
Kannst Du auch beschleunigen indem Du ein paar Mal per Hand den Kontakt
betaetigst und dann mit dem Digital-Oszilloskp aufintegrierst was pro
Aktion verbraucht wird. Dann hochrechnen.
Quote:
Ich kenne Eure Gaszaehler nicht, nehme aber an dass nur alle paar
Sekunden so ein Reed-Puls kommt. Sonst wuerde das Relais ja nicht lange
leben. Dann kann man das so machen:
Die Impulse kommen deutlich seltener, nämlich immer dann, wenn 10 Liter Gas
verbraucht wurden. Ich habe mich noch nicht hingestellt und das gemessen,
wie lange das dauert. Wenn ich daran denke, wie lange ich im VW-Bus mit 10
Litern Gas kochen kann, muss das eine ganze Weile dauern.
Oh ja, wenn Ihr nur damit kocht und Heisswasser bereitet dauert das
ewig. Bei der Heizung koennte man in etwas berechnen. Kenne ich mich
nicht so mit aus weil wir Propan haben und nur die komprimierte Menge
angezeigt wird. Sind pro Monat so 10-15 Gallonen, oder rund 50 Liter.
Quote:
Der MSP430 Prozessor verbringt den Loewenanteil der Zeit mit dem was
Loewen auch meist tun, schlafen. Da braucht er nur wenige Mikroampere.
Der Reed Kontakt loest einen Interrupt aus, welcher bei uC-Programmen
sowas wie ein "Wecker" ist. Normalerweise loest der eine Unterbrechung
eines laufenden Programms aus, hier aber weckt er den MSP430 auf. Ein
winziges Programm startet, das macht aber nichts anderes als einen
Speicherplatz um den Wert "1" zu inkrementieren. Sofort danach geht der
MSP430 wieder schlafen. Hoert sich alles kompliziert an aber der MSP430
kann in unter 10 Mikrosekunden aufwachen und solche Routinen laufen
rasend schnell. Das sorgt fuer ein grosses Verhaeltnis von Schlaf- zu
Aktivphasen und der Stromverbrauch wird gemittelt entsprechend minimal.
In diesem Prograemmchen muss dann noch eine Routine drin sein welche den
Sendeteil aktiviert. Aber nur alle xx Inkrementierungen, musst Du
auswaehlen. Oder eben alle paar Minuten, geht auch. Dann sendet es den
Inhalt dieses Speicherplatzes in den ersten Stock. Anschliessend wird
der Sendeteil wieder abgeschaltet und auch der MSP430 geht schlafen bis
zum naechsten Reed Puls.
Senden kosten viel Saft, sollte man also nicht uebertreiben mit der
Haeufigkeit der "Durchsagen".
Da der Zählimpuls eben nicht so häufig, vermutlich nur wenige Male pro Stunde
kommt, werde ich mal als erstes versuchen, wie es funktioniert, wenn ich bei jedem
Impuls die Daten direkt sende. Dann werde ich ja merken, wie viel das Gerät zieht.
Zur Sicherheit wuerde ich dennoch abspeichern und die Gesamtsumme
mitsenden. So kann man eine oder mehrere verpasste Aussendungen ausbuegeln.
Quote:
...
Trick 17 falls das mit diesen Modulen geht: Amplitude-Shift Keying als
Sendeart auswaehlen, die Info xx Mal senden und oben am PC korrelieren.
So holt man Signale "aus der Grasnarbe raus". Da das mehr Energie kostet
solltest Du dann vielleicht noch seltener senden lassen. Eine
Richtantenne oben in der Wohnung koennte auch helfen, ich weiss aber
nicht ob das in Deutschland erlaubt ist wenn darueber auch gesendet wuerde.
Oben soll eigentlich nur empfangen werden, damit die Sender an den Sensoren
möglichst primitiv ausfallen können. Zwei-Wege-Kommunikation macht es IMHO
nur aufwändiger.
Das mit dem redundanten Senden halte ich auch für einen guten Ansatz. Abgesehen
davon kann ich mit jedem Zählimpuls hochzählen, so dass der Empfänger merkt, wenn
er Impulse "übersehen" hat.
Eine weitere Möglichkeit wäre es, mit jedem Sendevorgang den letzten und evtl auch
vorletzten Zählwert, einschließlich Zeitdifferenz, nochmal zu übertragen. Damit kann auch
der Zeitpunkt einer ausgelassenen Messung noch rekonstruiert werden.
Oder einfach die Gesamtsumme senden. Ich weiss ja nicht was Ihr pro Jahr
so an Gas verputzt, aber mehr als 2-3 Bytes wird das ja nicht.
Quote:
Allerdings steigt mit zunehmender Nachrichtenlänge die Wahrscheinlichkeit, dass die
Nachricht vollständig übertragen wird, ja nicht unbedingt. Und der Energieverbrauchst für
das Senden steigt leicht.
Bei ein paar Bytes ist das in der Praxis unerheblich. Noch eine Idee
aber eher als Bonbon fuer spaeter: Der MSP430 koennte messen wann die
Batterie absackt und dann nur noch die Pulse speichern aber nicht mehr
senden. Wenn der auch noch in Flash speichert dann kannst Du gemuetlich
ohne Hektik irgendwann die Batterien wechseln gehen, nichts geht verloren.
--
Gruesse, Joerg
http://www.analogconsultants.com/
Guest
Mon Jan 09, 2012 6:55 pm
On Monday, January 9, 2012 4:59:39 PM UTC+1, Joerg wrote:
Quote:
Der Stromverbrauch des Arduino Pro Mini sollte im sleep mode unter 2 mA
liegen. Das klingt für mich in Ordnung.
Wie Matthias schrieb, das ist viel zu hoch. Jeden Monat in den Keller
muessen, irgendwann doch mal vergessen, Daten unbrauchbar geworden.
Das war eine eher hoch angesetzte Schätzung. Den tatsächlichen Bedarf werde
ich wohl erst feststellen können, wenn ein Prototyp eine Weile gelaufen ist.
Quote:
Ich kenne Eure Gaszaehler nicht, nehme aber an dass nur alle paar
Sekunden so ein Reed-Puls kommt. Sonst wuerde das Relais ja nicht lange
leben. Dann kann man das so machen:
Die Impulse kommen deutlich seltener, nämlich immer dann, wenn 10 Liter Gas
verbraucht wurden. Ich habe mich noch nicht hingestellt und das gemessen,
wie lange das dauert. Wenn ich daran denke, wie lange ich im VW-Bus mit 10
Litern Gas kochen kann, muss das eine ganze Weile dauern.
Quote:
Der MSP430 Prozessor verbringt den Loewenanteil der Zeit mit dem was
Loewen auch meist tun, schlafen. Da braucht er nur wenige Mikroampere.
Der Reed Kontakt loest einen Interrupt aus, welcher bei uC-Programmen
sowas wie ein "Wecker" ist. Normalerweise loest der eine Unterbrechung
eines laufenden Programms aus, hier aber weckt er den MSP430 auf. Ein
winziges Programm startet, das macht aber nichts anderes als einen
Speicherplatz um den Wert "1" zu inkrementieren. Sofort danach geht der
MSP430 wieder schlafen. Hoert sich alles kompliziert an aber der MSP430
kann in unter 10 Mikrosekunden aufwachen und solche Routinen laufen
rasend schnell. Das sorgt fuer ein grosses Verhaeltnis von Schlaf- zu
Aktivphasen und der Stromverbrauch wird gemittelt entsprechend minimal.
In diesem Prograemmchen muss dann noch eine Routine drin sein welche den
Sendeteil aktiviert. Aber nur alle xx Inkrementierungen, musst Du
auswaehlen. Oder eben alle paar Minuten, geht auch. Dann sendet es den
Inhalt dieses Speicherplatzes in den ersten Stock. Anschliessend wird
der Sendeteil wieder abgeschaltet und auch der MSP430 geht schlafen bis
zum naechsten Reed Puls.
Senden kosten viel Saft, sollte man also nicht uebertreiben mit der
Haeufigkeit der "Durchsagen".
Da der Zählimpuls eben nicht so häufig, vermutlich nur wenige Male pro Stunde
kommt, werde ich mal als erstes versuchen, wie es funktioniert, wenn ich bei jedem
Impuls die Daten direkt sende. Dann werde ich ja merken, wie viel das Gerät zieht.
Quote:
...
Trick 17 falls das mit diesen Modulen geht: Amplitude-Shift Keying als
Sendeart auswaehlen, die Info xx Mal senden und oben am PC korrelieren.
So holt man Signale "aus der Grasnarbe raus". Da das mehr Energie kostet
solltest Du dann vielleicht noch seltener senden lassen. Eine
Richtantenne oben in der Wohnung koennte auch helfen, ich weiss aber
nicht ob das in Deutschland erlaubt ist wenn darueber auch gesendet wuerde.
Oben soll eigentlich nur empfangen werden, damit die Sender an den Sensoren
möglichst primitiv ausfallen können. Zwei-Wege-Kommunikation macht es IMHO
nur aufwändiger.
Das mit dem redundanten Senden halte ich auch für einen guten Ansatz. Abgesehen
davon kann ich mit jedem Zählimpuls hochzählen, so dass der Empfänger merkt, wenn
er Impulse "übersehen" hat.
Eine weitere Möglichkeit wäre es, mit jedem Sendevorgang den letzten und evtl auch
vorletzten Zählwert, einschließlich Zeitdifferenz, nochmal zu übertragen. Damit kann auch
der Zeitpunkt einer ausgelassenen Messung noch rekonstruiert werden.
Allerdings steigt mit zunehmender Nachrichtenlänge die Wahrscheinlichkeit, dass die
Nachricht vollständig übertragen wird, ja nicht unbedingt. Und der Energieverbrauchst für
das Senden steigt leicht.
Grüße
Marian
Marte Schwarz
Guest
Mon Jan 09, 2012 6:58 pm
Hi Marian,
Quote:
Wie Matthias schrieb, das ist viel zu hoch. Jeden Monat in den Keller
muessen, irgendwann doch mal vergessen, Daten unbrauchbar geworden.
.... oder nicht mitbekommen, dass gesendet wurde, weil ein Störer an war,
oder noch schlimmer durch einen Störer gleich eine ganze Salve abbekommen...
Einfach den lokalen Zählerstand schicken, dann ist ein
Übertragungsfehler schnell erkannt und folgenlos.
Quote:
Der MSP430 Prozessor verbringt den Loewenanteil der Zeit mit dem was
Loewen auch meist tun, schlafen. Da braucht er nur wenige Mikroampere.
Der Reed Kontakt loest einen Interrupt aus, welcher bei uC-Programmen
sowas wie ein "Wecker" ist. Normalerweise loest der eine Unterbrechung
eines laufenden Programms aus, hier aber weckt er den MSP430 auf. Ein
winziges Programm startet, das macht aber nichts anderes als einen
Speicherplatz um den Wert "1" zu inkrementieren. Sofort danach geht der
MSP430 wieder schlafen. Hoert sich alles kompliziert an aber der MSP430
kann in unter 10 Mikrosekunden aufwachen und solche Routinen laufen
rasend schnell. Das sorgt fuer ein grosses Verhaeltnis von Schlaf- zu
Aktivphasen und der Stromverbrauch wird gemittelt entsprechend minimal.
In diesem Prograemmchen muss dann noch eine Routine drin sein welche den
Sendeteil aktiviert. Aber nur alle xx Inkrementierungen, musst Du
auswaehlen. Oder eben alle paar Minuten, geht auch. Dann sendet es den
Inhalt dieses Speicherplatzes in den ersten Stock. Anschliessend wird
der Sendeteil wieder abgeschaltet und auch der MSP430 geht schlafen bis
zum naechsten Reed Puls.
Zur Not, leg Dir im MSP eine "Datei" an, wo Du zu jedem Impuls die
Uhrzeit mitschreibst.
Quote:
Da der Zählimpuls eben nicht so häufig, vermutlich nur wenige Male pro Stunde
kommt, werde ich mal als erstes versuchen, wie es funktioniert, wenn ich bei jedem
Impuls die Daten direkt sende. Dann werde ich ja merken, wie viel das Gerät zieht.
Das wirst Du ganz schnell wieder verwerfen... dann hast Du aber
wenigstens Erfahrung gesammelt ;-)
Quote:
Richtantenne oben in der Wohnung koennte auch helfen, ich weiss aber
nicht ob das in Deutschland erlaubt ist wenn darueber auch gesendet wuerde.
Auf 433 MHz drf man vieles, im 867er fast nichts. Man muss eben mal in
die Tabellen schauen, was man bei welcher Frequenz machen darf... im
867er Band ist das sehr differenziert aufgeteilt, wo Daten, und in
welchem Tastverhältnis und mit welcher Leistung (auf Kugelstrahler
normiert!) erlaubt sind...
Quote:
Oben soll eigentlich nur empfangen werden, damit die Sender an den Sensoren
möglichst primitiv ausfallen können. Zwei-Wege-Kommunikation macht es IMHO
nur aufwändiger.
Das verbietet dann aber sofort ein Protokoll, das Fehler nicht erkennbar
hält.
Quote:
Das mit dem redundanten Senden halte ich auch für einen guten Ansatz. Abgesehen
davon kann ich mit jedem Zählimpuls hochzählen, so dass der Empfänger merkt, wenn
er Impulse "übersehen" hat.
Das wäre ein Mindestmaß.
Quote:
Eine weitere Möglichkeit wäre es, mit jedem Sendevorgang den letzten
und evtl auch
vorletzten Zählwert, einschließlich Zeitdifferenz, nochmal zu übertragen. Damit kann auch
der Zeitpunkt einer ausgelassenen Messung noch rekonstruiert werden.
Allerdings steigt mit zunehmender Nachrichtenlänge die Wahrscheinlichkeit, dass die
Nachricht vollständig übertragen wird, ja nicht unbedingt. Und der Energieverbrauchst für
das Senden steigt leicht.
Eben, deswegen übertrage das Teil selten und dann so, dass Du den Rest
rekonstruieren kannst, wenn Du denn den Verlauf unter Tags brauchst...
Marte
BTW, wie weit willst Du senden und durch vieviele Holzdecken (mit
welcher Füllung zwischen dem Holz)?
Joerg
Guest
Mon Jan 09, 2012 7:04 pm
marian.steinbach_at_gmail.com wrote:
Quote:
On Monday, January 9, 2012 6:34:20 PM UTC+1, Joerg wrote:
...
Kannst Du auch beschleunigen indem Du ein paar Mal per Hand den Kontakt
betaetigst und dann mit dem Digital-Oszilloskp aufintegrierst was pro
Aktion verbraucht wird. Dann hochrechnen.
Nicht, dass es mir drauf ankäme, aber ich befürchte, hier nicht mehr ernst genommen
zu werden, wenn ich sage, dass ich *kein* Oszilloskop besitze.
Noe, wir haben alle mal angefangen und manchmal muss man eben
improvisieren. Man kann auch ein Behelfs-Oszilloskop an den Laptop oder
den PC basteln, aber brauchst Du hier nicht unbedingt.
Quote:
Oh ja, wenn Ihr nur damit kocht und Heisswasser bereitet dauert das
ewig. Bei der Heizung koennte man in etwas berechnen. Kenne ich mich
nicht so mit aus weil wir Propan haben und nur die komprimierte Menge
angezeigt wird. Sind pro Monat so 10-15 Gallonen, oder rund 50 Liter.
Mir reicht es, wenn ich es empirisch feststelle.
Du kannst das ja auch anfangs mit dem Zaehlerstand vergleichen, der ist
normalerweise geeicht. Oder kalibriert. Oder wie immer das bei Euch
heisst :-)
Quote:
...
Eine weitere Möglichkeit wäre es, mit jedem Sendevorgang den letzten und evtl auch
vorletzten Zählwert, einschließlich Zeitdifferenz, nochmal zu übertragen. Damit kann auch
der Zeitpunkt einer ausgelassenen Messung noch rekonstruiert werden.
Oder einfach die Gesamtsumme senden. Ich weiss ja nicht was Ihr pro Jahr
so an Gas verputzt, aber mehr als 2-3 Bytes wird das ja nicht.
Die Sende-Einheit kennt ja die Gesamtsumme gar nicht. Sie merkt immer nur, wenn wieder
10 Liter verbraucht wurden. Also kann sie nur bei 1 anfangen zu zählen.
Du kannst den uC da drauf bei den meisten Systemen programmieren,
jedenfalls bei den MSP430 Modulen. Dann kannst Du die 10l-Pulse
aufsummieren lassen und diese Summe senden. Wenn am PC oben im ersten
Stock Spruenge im Zahlenwert auftauchen weisst Du dass die Funkstrecke,
wie das bei Euch so schoen heisst, grenzwertig ist.
Quote:
Bei ein paar Bytes ist das in der Praxis unerheblich. Noch eine Idee
aber eher als Bonbon fuer spaeter: Der MSP430 koennte messen wann die
Batterie absackt und dann nur noch die Pulse speichern aber nicht mehr
senden. Wenn der auch noch in Flash speichert dann kannst Du gemuetlich
ohne Hektik irgendwann die Batterien wechseln gehen, nichts geht verloren.
Oder der Sender sendet eine zusätzliche Warnnachricht, wenn die Spannung abfällt.
Das geht auch.
BTW, Du drueckst vermutlich immer "Reply-All", bei mit kommt immer noch
eine Kopie Deiner Posts im Postfach an. Kein Problem fuer mich, koennte
andere aber nerven.
--
Gruesse, Joerg
http://www.analogconsultants.com/
Kai Ebersbach
Guest
Mon Jan 09, 2012 7:06 pm
Moin,
Am 09.01.2012 17:55, schrieb marian.steinbach_at_gmail.com:
Quote:
Die Impulse kommen deutlich seltener, nämlich immer dann, wenn 10 Liter Gas
verbraucht wurden. Ich habe mich noch nicht hingestellt und das gemessen,
wie lange das dauert. Wenn ich daran denke, wie lange ich im VW-Bus mit 10
Litern Gas kochen kann, muss das eine ganze Weile dauern.
Da hast Du aber auch 10 Liter Flüssiggas... Im Erdgasnetz ist dat Zeugs
gasförmig. 10 Liter sind da schnell durch... Hast Du mal beobachtet, wie
schnell die 2. Stelle Deines Gaszählers weiterzählt? Dann hast Du etwa
einen Anhaltspunkt, wie oft Dein Zählmodul aufgeweckt werden muss und ob
sich das überhaupt lohnt, es Schlafen zu schicken.
Ansonsten solltest Du sicherstellen, dass bei Funkstörungen kein
Zählsignal "übersehen" wird, also ein Zählen sollte direkt am Gaszähler
stattfinden und das Zählergebnis dann von Zeit zu Zeit zu Deiner "Basis"
in der Wohnung übermittelt werden.
Das Zählen sollte ein einfacher Atmel in der Klasse eines AtMega8
hinbekommen, ggf. noch mit Anzeige auf einem LCD-Modul und Ansteuerung
des Senders. Die Anzeige muss ja nicht dauernd laufen, sondern ggf. auf
Knopfdruck, sie erleichtert allerdings die "Nullstellung" falls Dein
Zählmodul mal abstürzt oder sonst wie neu gestartet werden muss.
Gutes Gelingen und viele Grüße
Kai
Goto page 1, 2, 3 Next