Re: Relais schalten unkontrolliert Kategorie: I²C-Bus (von Muhli - 9.02.2006 21:25) | ||
Als Antwort auf Re: Relais schalten unkontrolliert von wema - 9.02.2006 17:13 | ||
| ||
Hallo Ich selber betreibe meine Jalousien auch mit dem Max7311, und habe genau die gleichen Probleme. Als Abhilfe habe ich einen I2C MUX (von Andreâ??) vor den Max7311 Geschaltet. Also der I2C-Bus erreicht den Max7311 nur dann wenn ich vorher auf den Mux-Ausgang schalte an dem der Max7311 hängt. Ist sicher nicht das Ideale, aber seit dem habe ich keine fehl Funktionen an meinen Jalousien und Garagen Toren. GruÃ? Muhli > Hallo Jürgen, hallo André, > > @Jürgen, > einen Fehler in der Software kann ich zu 100% ausschlieÃ?en. Da ich erstens nur mit dem Taster-Thread > auf das Max7311-Modul zugreife und zweitens immer ein Flag setze (Rollladen hoch oder runter). > In meiner Fehlerüberprüfung überprüfe ich das Flag UND den Port des max7311 mittels > max7311.getoutw(adresse). Aber trotzdem vielen Dank für die Gedanken. > > @André, > das mit den Störungen auf den Versorgungsleitungen befüchte ich auch. Der Bus ist gepuffert, > zusätzliche Wioderstände habe ich jedoch nirgends eingebaut. > Die Länge beträgt am ersten Abschnitt ca. 15m und dann im zweiten Abschnitt nochmals so ca. 12m. > > Bzgl. der Softwareüberprüfung siehe Text oben. Ich frage in einem extra Thread ständig Flags und > max7311-Ports ab. Sollten die Ports geschaltet sein (auch nur einer von ihnen) ohne dass das > entsprechende Flag gesetzt ist, gehe ich von einer Fehlsteuerung aus und schalte alle Ports ab. > UND trotzdem laufen teilweise einige Rollläden runter!!??? > Nur mal hier zur Vollständigkeit einen Auszug meines Fehlerüberwachungsteiles: > > //--------------vierter Versuch zur Reduzierung von Fehlauslösungen 09.01.06--- > //Hierbei wird bei der Ansteuerung der Rollläden jeweils die glabale Variable > //"rollAn" je angesteuertem Rollladen um 1 addiert. Bei jedem abgeschaltetem > //Rollladen wird "rollAn" wieder um 1 vermindert. > //Sollte nun kein Roll. durch die Software mehr aktiv sein, müÃ?te auch die Variable > //auf 0 stehen. Würde jetzt bei einer Ã?berprüfung der geschalteten Ausgänge auch > //nur ein Ausgang eingeschaltet sein, müÃ?te von eine Fehlansteuerung ausgegangen > //werden!!!!! > int maxWord1,maxWord2,ok; > run 255; // Damit während der Ã?berprüfung nicht noch > // eine Taste gedrückt werden kann und damit den Ã?berprüfungsteil durchein- > // ander bringt, wird diesem Thread kurzfrstig höchste Priorität gegeben! > maxWord1=max7311.getOutw(3); //Daten als Word lesen > maxWord2=max7311.getOutw(4); > if rollAn==0 and (maxWord1 != 0 or maxWord2 != 0) > // Wenn rollAn gleich 0 ist (d.h. kein Rollladen ist durch Software ange- > // steuert) aber mindestens ein Ausgang der max7311 geschaltet ist, muÃ? > // eine Fehlsteuerung vorliegen. Daher beide Max7311 abschalten! > { > max7311.setw(3,0); > max7311.setw(4,0); > } > run 32; //wieder Standardpriorität !!!! > > > Hoffe und versuche weiter, dies in den Griff zu bekommen. > > GruÃ?, > wema | ||
Antwort schreiben Antworten: Re: Relais schalten unkontrolliert (von wema - 10.02.2006 0:05) Re: Relais schalten unkontrolliert (von krassos - 10.02.2006 17:20) |