Autor Thema: Relaisplatine einbinden  (Gelesen 15821 mal)

Offline Puschel74

  • Hero Member
  • *****
  • Beiträge: 9838
Aw: Relaisplatine einbinden
« Antwort #15 am: 27 Februar 2013, 20:17:16 »
Hallo,

(mal kurz kapern)

@Volker
Wenn du so nett wärst und deine Konfig bzw. deine Vorgehensweise zum einbinden von I2C über den AVR-NET-IO kurz erklären könntest bitte?
Ich möchte mir am WE endlich mal Ethersex kompilieren und auf meinen AVR-Net flashen.
Das einbinden der analogen Ports ist ja im Wiki recht gut beschrieben und hat auch auf Anhieb geklappt.
Ich vermute mal das im make menuconfig nur die zusätzliche Auswahl von I2C zu machen ist und nach dem make einfach auf den ATMega flashen.
Hast du eine classdef für I2C?
Wenn ja. Würdest du diese bereit stellen?
Evtl. als Wiki-Eintrag??

Danke schonmal.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Offline Volker

  • Jr. Member
  • **
  • Beiträge: 53
Aw: Relaisplatine einbinden
« Antwort #16 am: 28 Februar 2013, 10:44:17 »
Hallo Puschel,

wie du bereits erwähnt hast im make menuconfig I2C aktivieren, dann im Untermenu von I2C die entsprechenden Devices aktivieren, kompilieren und flashen.

Eine spezielle classdef für I2C habe ich nicht, da ich im Moment nur ein LCD-Display damit betreibe. Die Zeilen dafür poste ich dir mal.


#Display Commands
set lcd_pos params line col
set lcd_pos cmd {"lcd goto %line %col"}

set lcd_text params text
set lcd_text cmd {"lcd write %text"}

set lcd_clear cmd {"lcd clear"}

set lcd_bl params state
set lcd_bl cmd {"lcd backlight %state"}
#


Ansonsten findest du hier alle Befehle für Ethersex.

Sorry, das ich dir nicht mehr behilflich sein kann.
MfG

Volker

RasPi als FHEM-Plattform, BananaPi, HMLan, HM-LC_Bl1PBU-FM, HM-LC-SW4-DR, HM-LC-SW4-PCB, HM-TC-IT-WM-W-EU, HM-CC-RT-DN

Offline Puschel74

  • Hero Member
  • *****
  • Beiträge: 9838
Aw: Relaisplatine einbinden
« Antwort #17 am: 28 Februar 2013, 17:28:38 »
Hallo,

Zitat
Sorry, das ich dir nicht mehr behilflich sein kann.


Du beliebst zu scherzen ;-)

Vielen Dank für den Link und die classdef für das LCD-Display.

Ich muss mal schauen, irgendwo liegt noch ein Display rum.
Das werd ich am Wochenende gleich mal anhängen - hoffentlich kann ich mich mal wieder ein paar Stunden in Ruhe mit fhem
beschäftigen.

Danke nochmal Volker.

Grüße

P.S.: Der Link zeigt auf eine leere Seite. Sind wohl noch keine Befehle hinterlegt.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Offline ilmtuelp0815

  • Jr. Member
  • **
  • Beiträge: 58
Aw: Relaisplatine einbinden
« Antwort #18 am: 01 März 2013, 10:03:46 »

(siehe Anhang / see attachement)

(siehe Anhang / see attachement)

(siehe Anhang / see attachement)

(siehe Anhang / see attachement)
Hi ThomasL!
Leider hast du nicht beschrieben wie und wofür du die Relaisplatine einsetzt. Ich habe auch div. Relaisplatinen, die ich in FHEM sinnvoll einbinden möchte (s. Bilder).
Derzeit nutze ich die Ralaisplatine mit dem FS20SM4. Leider eigentlich nur als Zustandsanzeige. Bei zustandsänderung sendet FHEM ein Signal an den jeweiligen Kanal des SM4, der schaltet das Relais und die LED leuchtet.
Die Relaisplatine mit den 8 Relais (Eingänge für Sensoren/Lichschranken 24V gedacht) wollte ich so einsetzen, dass bei Betätigung der Relais der S8M ein Signal an FHEMm sendet. Leider liegt ggf. am Relais ja dann Dauerspannung an und FHEM bzw. der SM8 benötigt nur einen Impuls nach Gound. So muss man da noch eine weitere Mimik zwischenschalten.
Ich wäre auch an Vorschlägen für die sinnvolle Nutzung der Relaisplatinen interessiert.
CControl beinhaltet ja auch Portaus- und Eingänge sowoe einen I²C Port. Leider ist das System wohl technisch veraltet.    
   
FHEM auf FRITZ!Box 7390, SuSE 12.3 und Cubieboard2
CUL und HM-LAN
FS20: FHT80b, TFK, KSE, FMS, DU-2, ST-4, SM4, S4M, SM8

HM: HM-Sec-SD

Offline Volker

  • Jr. Member
  • **
  • Beiträge: 53
Aw: Relaisplatine einbinden
« Antwort #19 am: 01 März 2013, 10:36:17 »
Hallo,
ist wohl beim kopieren etwas schief gelaufen hier nochmal der link.

http://www.ethersex.de/index.php/ECMD_Reference
MfG

Volker

RasPi als FHEM-Plattform, BananaPi, HMLan, HM-LC_Bl1PBU-FM, HM-LC-SW4-DR, HM-LC-SW4-PCB, HM-TC-IT-WM-W-EU, HM-CC-RT-DN

Marco_81

  • Gast
Aw: Relaisplatine einbinden
« Antwort #20 am: 01 März 2013, 18:03:56 »
Habe i2c mittlerweile auch etwas im Griff über Avr-Netio mit Ethersex-Firmware,
die Arbeit liegt nicht in der classdef,
dort braucht man zum Beispiel für einen pcf8574 nur
i2c wbb <Adresse> <hexwert> fürs Schreiben
oder
i2c rbb <Adresse> <hexwert> fürs lesen

Ich habe für die einzelnen Ausgänge Dummys genommen,
nur den einzelnen Baustein (mit i2c-Adresse) als ECMDDevice,
die Dummys haben als Zusatz zur Verknüpfung _X im Namen,
zum Beispiel pcf1_0,
dazu ein Notify für alle 8 Dummys:
define pcf1_n notify pcf1_[0-7] { pcfset("@") }

und natürlich die Hauptarbeit,
die sub:

sub pcfset($) {
my ($obj) = @_;
my @namearr = split("_",$obj);
my $instate = fhem ("get ".$namearr[0]." state");
my @isstate=split(" ",$instate);
my $outstate=hex($isstate[1]);
my $setbit = 1;
for(my $i = 0; $i <= $namearr[1];) {
if ($i==$namearr[1])
{
$outstate |= $setbit;
if (Value($obj) eq "off")
{
$outstate ^= $setbit;
}
}
$setbit=$setbit*2;
$i++;
}
my $outhex = sprintf("%x", $outstate);
fhem ("set ".$namearr[0]." state ".$outhex);
}

Edit:
Die niedliche classdef fehlte ;-)

params chipAD
get state cmd {"i2c rbb %chipAD"}
set state params outvar
set state cmd {"i2c wbb %chipAD %outvar"}

Offline ThomasL

  • Jr. Member
  • **
  • Beiträge: 60
Aw: Relaisplatine einbinden
« Antwort #21 am: 03 März 2013, 21:20:39 »
Zitat von: ntruchsess schrieb am Di, 26 Februar 2013 15:18
Naja, so eine ganz simple Relaisplantine wie diese hier kannst Du z.B. direkt an einen Arduino hängen und die Relais mit FRM_IN oder FRM_OUT ansteuern. Alternativ mit einem DS2408 über OneWire mit OWSWITCH. Oder halt an einem AVR-NetIO über ECMD. Für letzteren gibt es auch eine passende Relaiskarte die man nur anstecken muss
Nichts gegen I2C als Bussystem an sich, der MAX7311 ist halt in FHEM noch über kein Modul unmittelbar unterstützt.

Gruß,

Norbert


So ich bin jetzt soweit, dass ich mir eine weitere Relaisplatine zulege und die alte wie gehabt betreibe.
Jetzt habe ich heute Abend viel gesucht, aber noch nicht das Richtige gefunden.
Es soll möglichst preiswert sein. Ich möchte nur einfache Geräte schalten.
Also ein einfaches Ein/Aus per FHEM reicht.
Den AVR-NetIO finde ich sehr interessant, allerdings ist ist die Relaiskarte dazu im Moment nicht lieferbar (und auch nur als Bausatz).
Bietet vielleicht jemand eine fertige Relaiskarte zum Verkauf an?
Zusätzlich benötige ich dann noch einen ISP Programmer. Welcher wäre denn da zu empfehlen?

Alternative ist diese  Relaisplantine http://www.sainsmart.com/8-channel-dc-5v-relay-module-for-arduino-pic-arm-dsp-avr-msp430-ttl-logic.html].
Was benötige ich denn noch genau dafür?
Sie sollte über Netzwerk schaltbar sein. Ich hab viele verschieden Geräte gefunden und bin durcheinander.
Für eine delaierte Aufstellung bin ich sehr sehr dankbar.
Ich möchte nichts falsches kaufen.

Viele n Dank
Thomas

Offline Volker

  • Jr. Member
  • **
  • Beiträge: 53
Aw: Relaisplatine einbinden
« Antwort #22 am: 05 März 2013, 19:53:15 »
Hallo,
als ISP-Programmer kann ich den hier empfehlen. Funktioniert unter windows und Linux.
MfG

Volker

RasPi als FHEM-Plattform, BananaPi, HMLan, HM-LC_Bl1PBU-FM, HM-LC-SW4-DR, HM-LC-SW4-PCB, HM-TC-IT-WM-W-EU, HM-CC-RT-DN

Offline ThomasL

  • Jr. Member
  • **
  • Beiträge: 60
Aw: Relaisplatine einbinden
« Antwort #23 am: 06 März 2013, 11:07:02 »
Zitat von: Rohan schrieb am Di, 26 Februar 2013 11:13
Zitat von: ThomasL schrieb am Di, 26 Februar 2013 10:49
Das hört sich sehr interessant an.



Vorsicht: der neue Due ist nicht pinkompatibel zu einigen Shields (Aufsatzboards).



Ich hab jetzt einiges gelesen, und möchte mir den Due kaufen.
Welcher Ethernetshield passt denn dazu. Da bin ich mir unsicher.

Grüße
Thomas

Offline Rohan

  • Hero Member
  • *****
  • Beiträge: 1060
  • Bin kein Hero, bin Anwender
    • http://keine
Aw: Relaisplatine einbinden
« Antwort #24 am: 06 März 2013, 11:27:19 »
Hallo Thomas,

Zitat von: ThomasL schrieb am Mi, 06 März 2013 11:07
... Ich hab jetzt einiges gelesen, und möchte mir den Due kaufen.
Welcher Ethernetshield passt denn dazu. Da bin ich mir unsicher.


Hmmm.... lt. Massimo soll man lediglich darauf achten, dass das Ethernet-Shield nicht älter als 1 Jahr ist (Aussage von Dezember 2012). Könnte aber evtl. noch Restbestände / Lagerhüter geben.

Ich würde auf jeden Fall

- keinen Clone kaufen (gibt es ja auch bei den Shields)
- nicht in der Bucht kaufen (ich habe schon häufiger bei Watterott bzw. komputer.de ohne Probleme gekauft. Beide sind auch offen für vorherige Anfragen!)

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

Offline ThomasL

  • Jr. Member
  • **
  • Beiträge: 60
Aw: Relaisplatine einbinden
« Antwort #25 am: 06 März 2013, 13:48:07 »
Danke Thomas!

Ich habe eine andere Frage Richtung Programmierung.
Ist es eigentlich möglich aus dem FHEM bestimmte programmierte Funktionen auszuführen?
Also wenn ich zum Beispiel ein Funktion "Blinklicht" im DUE abgelegt habe,
kann diese vom FHEM gestartet werden?
Oder muss die Logik dafür im FHEM abgelegt werden?

Danke
Thomas

Offline Rohan

  • Hero Member
  • *****
  • Beiträge: 1060
  • Bin kein Hero, bin Anwender
    • http://keine
Aw: Relaisplatine einbinden
« Antwort #26 am: 06 März 2013, 13:51:56 »
Wiki, Punkt 1

Oder meintest du jetzt etwas anderes?

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

Offline ThomasL

  • Jr. Member
  • **
  • Beiträge: 60
Aw: Relaisplatine einbinden
« Antwort #27 am: 06 März 2013, 14:03:45 »
Zitat von: Rohan schrieb am Mi, 06 März 2013 13:51
Wiki, Punkt 1

Oder meintest du jetzt etwas anderes?

Gruß
Thomas


meinst Du diesen Punkt:
>Arduino (bzw. Klon) mit Ethernet-Shield (z.B. mit ENC28J60 Chip) und gewünschten Sensoren kaufen

Im Wiki habe ich nur über die Möglichkeiten gelesen, die Ein-/Ausgänge anzusteuern.
Das ist ja prima.
Mit der original Firmware kann bzw. muss man ja eigene Funktionen hinterlegen,
zB. ein blinken an Pin1.
Meine Frage ist nun, ob man diese Funktionen aus dem FHEM aufrufen kann.
Dann wäre die Logik ausgelagert.
Ich würde gerne folgendes realisieren:
Der Due kann ja auch ein Audiosignal ausgeben.
Dieses würde ich gerne für Sprachausgabe nutzen.
Auf der Due die Funktionen hinterlegen und von FHEM dann antriggern.

Grüße
Thomas

Offline Rohan

  • Hero Member
  • *****
  • Beiträge: 1060
  • Bin kein Hero, bin Anwender
    • http://keine
Aw: Relaisplatine einbinden
« Antwort #28 am: 06 März 2013, 14:08:59 »
Hi,

ob du jetzt einen Port ansteuerst oder einen / verschiedene Variablenwert(e) setzt/setzen lässt, deren Inhalt in main() immer wieder abgefragt wird und der Arduino entsprechend reagieren soll, dürfte das kleinste Problem dabei sein ;)

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

Offline ThomasL

  • Jr. Member
  • **
  • Beiträge: 60
Aw: Relaisplatine einbinden
« Antwort #29 am: 06 März 2013, 15:50:33 »
Ah,
prima!

 

decade-submarginal