Seite 10 von 16
Re: Übersicht - "AskSinPP"
Verfasst: 10.04.2020, 18:39
von jp112sdl
emil70 hat geschrieben: ↑10.04.2020, 18:31
Verstehe ich das Richtig, das nun beim einschalten A0 und A1 gebrückt werden?
Nein, der Relaisausgang ist Pin 5
https://github.com/jp112sdl/Beispiel_As ... R1.ino#L33
Der hat im EIN-Zustand HIGH Pegel und im AUS-Zustand LOW Pegel.
Die Brücke zwischen A0 und A1 ist einzubauen, wenn der Relaisausgang invertiert werden soll (EIN = LOW, AUS = HIGH)
Re: Übersicht - "AskSinPP"
Verfasst: 10.04.2020, 20:05
von emil70
Danke für die Erklärung
Dann bringt mir das aber so nix. Bei dem alten Hörmanantrieb ( 20 Jahre) muss die 0 Volt vom Anschluss 20 an Anschluss 21 gebrückt werden.
Wenn ich an Pin 5 das Kabel von Anschluss 21 mache und an GND das Kabel von Anschluss 22 oder auch nur das Kabel von Anschluss 21 machen geht es nicht
Oder muss das anders verkabelt werden??
Re: Übersicht - "AskSinPP"
Verfasst: 10.04.2020, 20:44
von jp112sdl
emil70 hat geschrieben: ↑10.04.2020, 20:05
Wenn ich an Pin 5 das Kabel von Anschluss 21 mache und an GND das Kabel von Anschluss 22 oder auch nur das Kabel von Anschluss 21 machen geht es nicht
Dann kannst du nur hoffen, dass dein Arduino noch funktioniert.
Bei meinem Hörmann liegen am Impulseingang im Leerlauf 24V an
Du musst dann schon noch ein Relais anschließen.
Re: Übersicht - "AskSinPP"
Verfasst: 10.04.2020, 20:47
von Psi
Oder n MOSFET
Ich hatte vor längerem mal ein Gespräch mit jemandem der n esp einsetzt. Ich versuche mal raus zu finden wer das war
Re: Übersicht - "AskSinPP"
Verfasst: 10.04.2020, 21:02
von jp112sdl
Dann wohl eher ein Optokoppler. Aber ich wollt es so einfach wie möglich halten
Re: Übersicht - "AskSinPP"
Verfasst: 10.04.2020, 21:11
von Psi
Optocoupler... Natürlich
und nicht wirklich schwierig, gibt sogar ne Platine dazu...
https://github.com/psi-4ward/HM-LC-Dim1PWM-LinearPWM
Re: Übersicht - "AskSinPP"
Verfasst: 11.04.2020, 19:51
von emil70
Danke für die Hilfe und Info
Ein Relais wollte ich eigentlich vermeiden
Bedeutet aber auch, es gibt kein Sketch wo man ein Signal durchschleifen kann?
Re: Übersicht - "AskSinPP"
Verfasst: 11.04.2020, 20:11
von Psi
Was meint signal durchschleifen? Ein oprokoppler schaltung besteht aus 2 Bauteilen, das ist noch vertretbar
Re: Übersicht - "AskSinPP"
Verfasst: 11.04.2020, 21:39
von jp112sdl
emil70 hat geschrieben: ↑11.04.2020, 19:51
kein Sketch wo man ein Signal durchschleifen kann?
Du vermischst gerade Hardware mit Software!
Ein Sketch kann nicht richten, was die Hardware nicht leistet
Re: Übersicht - "AskSinPP"
Verfasst: 21.06.2020, 10:00
von jp112sdl
Ich habe ein Skript erstellt, das mir alle meine selbst gebauten Geräte nach Raumname sortiert auflistet.
Nur um mal eine Übersicht zu bekommen.
Vielleicht ist es für den ein oder anderen auch interessant.
Das Skript basiert auf der Grundlage, dass ich bei der Seriennummernvergabe keine Schnittmenge mit den Originalgeräten habe.
So werden nur Geräte der CCU aufgelistet, deren Seriennummer
- 10stellig ist (HmIP fliegt gleich raus)
- an 2.+3. Stelle nicht EQ hat
- an 2.+3. Stelle nicht TK hat (Telekom-Geräte)
- an 2.+3. Stelle nicht AA hat (alte Wandtastermodelle)
- nicht mit CUX beginnt (CUxD...)
- nicht mit INT beginnt (Gruppen)
Für meinen Gerätepark passt das Ergebnis.
Optimierungen sind sehr willkommen... TCL ist nicht meine Lieblingssprache -.-
Code: Alles auswählen
string ch = "";
string room = "";
string lastRoom = "";
string result = "Raum\t\t\tSeriennum.\t[B] Gerätename (B = Batteriegerät)\n==============================================================\n";
integer hbCount = 0;
object chans = dom.GetObject(ID_CHANNELS);
object rooms = dom.GetObject(ID_ROOMS);
rooms.SortByName();
foreach(room, rooms.EnumUsedIDs()) {
foreach(ch, chans.EnumUsedIDs()) {
object oCh = dom.GetObject(ch);
object oDev = dom.GetObject(oCh.Device());
string adr = oCh.Address();
var devAddress = oDev.Address();
if (
(devAddress.Length() == 10) &&
(adr.Substr(1,2) != "EQ") &&
(adr.Substr(1,2) != "TK") &&
(adr.Substr(1,2) != "AA") &&
(!adr.StartsWith("CUX")) &&
(!adr.StartsWith("INT"))
) {
var chRoom = oCh.ChnRoom();
var devName = oDev.Name();
var roomName = dom.GetObject(room).Name();
if ((chRoom == room) && (!result.Contains("\t"#devAddress#"\t"))) {
string hasBattery = "[ ] ";
if (dom.GetObject("BidCos-RF."#devAddress#":0.LOWBAT")) { hasBattery = "[X] ";}
string spacer = "\t";
if (roomName.Length() < 4) {spacer = spacer # "\t";}
if (roomName.Length() < 8) {spacer = spacer # "\t";}
if (roomName.Length() < 12) {spacer = spacer # "\t";}
if (hbCount == 0) { lastRoom = room; }
if (room != lastRoom) {
lastRoom = room;
result = result#"--------------------------------------------------------------\n";
}
result = result # roomName # spacer # devAddress # "\t" # hasBattery # devName # "\n";
hbCount = hbCount + 1;
}
}
}
}
!dom.GetObject(ID_SYSTEM_VARIABLES).Get("HB_DeviceList").State(result);
WriteLine(result);
WriteLine("Anzahl Geräte: "#hbCount.ToString(0));
EDIT: Das mit den Batteriegeräten stimmt nicht. Leider haben auch die originalen Netzgeräte eine LOWBAT Datenpunkt.