Alternative zum DS2423 Counter

Begonnen von dougie, 09 Februar 2013, 16:30:08

Vorheriges Thema - Nächstes Thema

Rohan

Hallo Ralf,

wollte nur noch Mal Danke sagen! Heute Nacht war ein 4 stündiger Stromausfall und das externe AA-Batteriepack (wie du es auch benutzt) hat insgesamt 6 Stck. deiner alternativen DS2423 Counter ausreichend lange gestützt, so dass sie nicht ihre Werte verloren haben.

Gruß
Thomas
Fhem auf Mini-ITX mit Celeron 2-Core, HMLAN (> 55 Devices), CUL (FS20 und EM), RFXtrx 433E, Arduino (einige DS18B20), RPi mit 1-Wire (DS2423 für S0-Signale, DS18B20+), RPi/Arduino mit MQ-5 und MQ-9 (CO- und CNG/LPG-Sensor), CO-20 IAQ Sensor

Punkt

Hallo zusammen,

ich verfolge diesen Thread nun schon eine Weile und finde die Idee des Software-1wire-Slaves sehr interessant.
Nun habe ich zu diesem Thema eine kurze Frage:

Die Software (Sketch?) ist ja für diesen ATTiny geschrieben.

Würde diese auch auf einem ATMega laufen?

Der Hintergrund ist folgender:
Ich wollte mit einem Arduino Pro Mini eine Steuerung für eine Kühlanlage realisieren.
Diese sollte aber auch zusätzlich von FHEM per 1wire abfragbar / einstellbar sein.

Warum will ich diesen Umweg gehen und nicht direkt per FHEM die Temperatur abfragen und die Kühlanlage steuern?
Nun - das mache ich bisher. Allerdings habe ich einfach das Problem daß wenn mein Raspberry ausfällt mein Kühlhaus nicht mehr geregelt wird - und das ist sehr schlecht... :-)

Mein Plan ist also folgender:

- Arduino mit eigenem Display und Tastatur zur Eingabe der Solltemperatur steuert das Kühlhaus
- Solltemperatur kann aus dem Arduino über 1wire von FHEM ausgelesen werden und auch gesetzt werden
- Zusätzlich wird die Solltemperatur im EEPROM des Arduino abgelegt für den Fall eines Resets

Desweiteren wäre der Nachbau eines DS2423 mit einem Arduino Pro Mini ebenfalls sehr praktisch weil die Werte im EEPROM abgelegt werden könnten und so bei einem Stromausfall ebenfalls erhalten blieben...

Meint ihr das könnte Möglich sein?
Ich hab im Netz einiges gesucht aber bisher nichts gefunden mit dem ich da etwas anfangen kann im Bezug auf Software-1wire-Slave für den Arduino... :-/

Könnte ich die Software des ATTiny dazu verwenden/ausbauen?


Danke und viele Grüße

Michael
FHEM auf LXD-Container (Ubuntu 24.04) mit 1wire-Bus und I2C-Extensions
Datenbank: influxdb
verschiedene "Satellitensysteme" mit ESP-8266

ritchie

#437
Hi,

ich wüsste nicht, warum die Software nicht auch auf einem ATMega laufen sollte. Du musst hier nur die entsprechenden Register ändern (Anpassen auf die des Atmega).

Hierbei solltest Du nur darauf achten, das Du Deine Regelung im Hauptprogramm laufen läßt und die 1wire Bus Steuerung via Interrupt.

Deine Regelung sollte hierbei keine Interrupts verwenden, da Dir an sonsten evtl. 1wire Abfragen verloren gehen.

Gruss R.

P.S.: Die Software ist in C auf geschrieben.
Schau mal hier nach: http://forum.fhem.de/index.php/topic,22431.msg158105.html#msg158105
IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

Punkt

#438
Hallo Ritchie,

erstmal: Danke für deine Antwort!  :)

Leider bin ich zwar eigentlich recht bewandert was Computer angeht - aber Mikrocontroller stehe ich noch ziemlich am Anfang.  ::)
Ich habe aktuell mein Display am Arduino zum Laufen bekommen und auch mein Keypad korrekt zum Arbeiten gebracht.
....aber: weiter reichen meine Kenntnisse aktuell noch nicht.  :-\

Ehrlich gesagt: weis ich aktuell noch nicht wie ich das mit dem Anpassen der Register machen soll bzw. was ich da tun muss...  :-[

Interrupts nutzt meine Regelung nicht - zumindest nicht wissentlich  ;D

Ich habe aktuell auf meinem Arduino die Onewire-Library von Markus Lange https://github.com/MarkusLange/OneWireSlave am laufen.
Mein Arduino blinkt zwar eifrig - aber auf meinem Bus erkenne ich den Arduino noch nicht.
Einen weiteren DS18B20 erkennt mein Busmaster - der funktioniert also...

Ich hab als dsslavepin die 2 eingetragen - laut Internet sind beim Nano die Pins 2 und 3 Interrupt-Pins.
Ich hab dann Pin2 mit meiner Datenleitung des Busses verbunden und dann noch GND miteinander verbunden - das sollte doch normalerweise passen, oder?

....aktuell bin ich mehr verwirrt als dass ich eine Lösung sehe... :)

Edit: lieber wäre es mir natürlich wenn ich deine Library zum Laufen bekäme - dann hätte ich mehr Auswahl an Slaves...  ;)
FHEM auf LXD-Container (Ubuntu 24.04) mit 1wire-Bus und I2C-Extensions
Datenbank: influxdb
verschiedene "Satellitensysteme" mit ESP-8266

ritchie

Hallo Michael,

die Sache mit den Registern hat mit einer Menge lesen zu tun. Hierbei musst Du Dich mit beiden Controllern beschäftigen.
Wenn Du mit AtMega generell schon gearbeitet hast, sollte das eigentlich nicht so schwer sein.

Hier ein Beispiel:
Zuerst must Du Dir Deinen Schaltplan genau ansehen und die Portzuweisung anpassen...
Wo z.b. Dein 1-wire Port liegt ....

Hier musst Du auch die Steuerports "DDR" anpassen..
Zitat
#define OW_PORT PORTB                        //1 Wire Port
#define OW_PIN PINB                           //1 Wire Pin as number
#define OW_PORTN (1<<PINB2)                     //Pin as bit in registers
#define OW_PINN (1<<PINB2)
#define OW_DDR DDRB                           //pin direction register
#define SET_LOW OW_DDR|=OW_PINN;OW_PORT&=~OW_PORTN; //set 1-Wire line to low
#define RESET_LOW {OW_DDR&=~OW_PINN;}            //set 1-Wire pin as input

Ebenso die Interrupt und Port Initialization des Chips.
Meist heissen die Register ähnlich, wie zum Beispiel "TIMSK0" oder "TIMSK" je nach Controller.

Da ich den Arduino nicht kenne, würde ich Dir eher ein Forum hierfür empfehlen, da auch der Thread "Alternative zum DS2423 Counter"
nicht dafür gedacht ist. Dafür solltest Du, wenn überhaupt, hier einen neuen Thread eröffnen.


Wenn Du wissen willst, wie der 1-wire Bus arbeitet, kann ich Dir nur diese Seite empfehlen,
hier habe ich auch die Basis meiner Version gefunden und entsprechend erweitert. Aber auch die Dokumentation von Dallas, dem Hersteller des 1wire Bus ist nicht schlecht, und sollte man gelesen haben, wenn man damit arbeiten will.

http://www.tm3d.de/index.php/1-wire-device-mit-avr

Schau Dich am besten mal hier um:
http://www.mikrocontroller.net/
http://www.roboternetz.de/community/content/1-Roboternetz-Startseite

Generell ist Dein Ansatz nicht schlecht, da ich selber auch versuche nur "dedundante Systeme" mit FHEM zu steuern,
da das System zwar "stabil" läuft , aber wichtige System auch eigenständig laufen müssen, also auch ohne FHEM.

Da ist Dein ATMEGA genau die richtige Wahl.

Viele Grüße und viel Erfolg

R.






IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

dize

Hallo,

ich hätte Interesse an 2 unbestückten Platinen und 2 programmierten µC.
Ist das noch bestellbar?


Dank und Gruß

dize

dougie



Moin zusammen,

nach etwas längerer Abstinenz durch erhöhtes Arbeitsaufkommen anderenorts, wollte ich mich noch mal für das grosse Interesse an den Platinen bedanken.

Aktuell sind alle Platinen ausverkauft und ich müsste Nachschub bestellen.
Ich würde gerne den aktuellen Bedarf abschätzen und bitte Interessenten sich mal eben kurz zu melden, wie viele Platinen benötigt werden.

VG
Ralf

eldrik

#442
Hey Ralf,

ich würde erneut zwei Platinen benötigen.

Wo finde ich denn die Software von Tobias mit der Sicherung des Zählerwertes bei Stromausfall?

Gruß
Jens

dougie


@all

Ich hab neue Platinen geordert. Diese sollten Ende nächster Woche verfügbar sein.
Preise und alles andere bleibt wie gehabt. Zahlbar via PayPal und der Versand erfolgt kostengünstig als Brief.

VG
Ralf

MichaP

Hallo Ralf,
ich würde auch 2 Platinen nehmen. Ich will mit einem Ultraschallsensor den Wasserstand in der Zisterne abfragen.

VG
Micha

eldrik

an alle mitlesenden, wo finde ich die Software (am besten direkt Hex) mit der automatischen Sicherung des Zählerstandes im Eprom?

Über Hinweise, Uploads etc. würde ich mich freuen. :)

Greetz
Eldrik

Tobias

Seite 9 glaub ich

Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk

Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

eldrik

Hi,

habe mir jetzt eigene Hex Files mit der eeprom Sicherung erstellt (auf Seite 9/10 findet sich eine Kurzanleitung von Tobias) und via raspberry SPI die Attinys beschrieben.

Wenn die Counter keine Auffälligkeiten bezogen auf die neue Software zeigen, kann ich die Hex Files (fünf hab ich mir erstellt) versuchen hier anzuhängen.

Greetz
Eldrik

Tweak

Zitat von: eldrik am 14 Juli 2014, 00:37:33
Hi,

habe mir jetzt eigene Hex Files mit der eeprom Sicherung erstellt (auf Seite 9/10 findet sich eine Kurzanleitung von Tobias) und via raspberry SPI die Attinys beschrieben.

Wenn die Counter keine Auffälligkeiten bezogen auf die neue Software zeigen, kann ich die Hex Files (fünf hab ich mir erstellt) versuchen hier anzuhängen.

Greetz
Eldrik

Sehr interessant, muss dafür die Platine irgendwie gesondert angepasst werden?

Danke!
Mfg

DannyP

Hi,
Ich würde auch eine Platine mit einem programmierten Prozessor nehmen.
Schöne grüße
Daniel