Elektronik2000.de Forum
» E2000 - Software (Altes System)
» E2000-Logik
Hab ich einen Bug gefunden??
Seiten (2): [1] 2 »  
Autor Beitrag
 
benni (Betatester)
Hab ich einen Bug gefunden??
Hallo,

ich betreibe seit über einen halben Jahr meinen IO mit Software 2.1a1 als Schaltzentrale für meinen
EDV Schrank, hier werden über Timerbausteine div. Geräte geschaltet und ferngesteuert. Die komplette Anlage
läuft störungsfrei.

Da ich div. Funktionen ändern wollte habe ich bei der Gelegenheit die Firmware 2.1.6 aufgespielt.

Für einen Signaltest habe ich simples Programm erstellt um die Funktion der frischen Software zu testen.
8 virtuelle Schalter (In 9-16) auf jeweils einen Ausgang Out 1- 8. Zusätzlich liegt je 1 LCD Baustein an jedem
Schalter zur visuellen Kontrolle.

Nun kommt es zu folgenden Effekt:
Ich schalte die 8 Ausgänge einzeln Ein/Aus > alle Relais Schalten > Ausgänge werden im LCD angezeigt

Ich schalte alle 8 Ausgänge gleichzeitig an, angefangen bei 1+2+3+4 usw. wird nur der Ausgang 7 nicht geschaltet obwohl im LCD und der Liveview der Ausgang 7 als aktiv gekennzeichnet wird.

Ich ändere die Schaltreihenfolge in 8+7+6+5 usw. und alles ist wieder gut, mein Ausgang 7 schaltet auch.

Dies tritt beim Zugriff über den Browser und PC-Control auf, der Fehler ist reproduzierbar, die eingebaute CPU und
eine weitere wurden mehrfach geflasht, das Programm auch 3x neu geschrieben und gespeichert.

Ich weiß mir keinen Rat mehr und hoffe auf eure Hilfe.
benni ist offline  
 
Tropby (Administator)
Hallo benni,

kannst du uns bitte deine Projektdatei zur Verfügung stellen um uns den Fehler mal anzusehen?

Vielleicht hast du da wirklich einen Bug gefunden.
Tritt das nur dann auf wenn du 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 machst oder auch mit anderen kombinationen? Machst du das langsam oder schnell mit dem schlaten?

gruß
Tropby
_________________________
Elektronik2000.de | Software-Entwickler
Tropby ist offline  
 
Marcin
Hallo Tropby,

ein ähnliches Problem hatte ich auch.

Nach einspielen meine Projektdatei waren entweder auf einmal alle Eingänge EIN oder eben nur der Eingang 7.
Nachdem ich die Eingänge einmal durchgeschaltet habe, hatte ich keine weitere Probleme mehr.
Das ganze ist bei mir 3mal passiert.

Meine Projektdatei:

http://www.elektronik2000.de/forum/attachments.php?getid=223

Viele Grüße
Marcin
Marcin ist offline  
 
benni (Betatester)
Hallo Tropby,
meine Schaltgeschwindigkeit würde ich als sehr langsam bezeichnen, der Fehler tritt nur auf
wenn ich 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 schalte.
Bei geänderter Schaltreihenfolge z.b. 8+7+6+5+4+3+2+1 tritt der Feler nicht auf. Ich habe natürlich nicht alle Varianten probiert, aber es scheint so (unverbindlich) das Ausgang 7 nicht schaltet wenn vorher 5-6 Eingänge aktiviert wurden.

Das Programm kann ich leider nicht kurfristig hochladen, ist aber simpel gemacht. In 9 auf Out 1, In 10 auf Out 2
usw. in Der Deluxe Version habe ich In9 auf Out 1 + LCD1 Text "1" In 10 auf Out2 +LCD2 Text "2" usw.


In Liveview , im Browser und in PC-Control wird der Ausgang als aktiv angezeigt es findet aber keine Schaltung statt.

Gruß Bernd
benni ist offline  
 
benni (Betatester)
Hallo Tropby,

anbei mein Testprogramm (nochmal frisch geschrieben aber gleiches Ergebnis) zur Prüfung, die LCD-Anbindung habe ich
weggelassen, einfacher geht es nicht mehr.

Meine Fehlerbeschreibung möchte ich etwas ändern, Ausgang 7 schaltet nicht wenn vorher 6 beliebige andere
Ausgänge aktiviert wurden. Die Reihenfolge spielt keine Rolle.

Wenn Ausgang 7 nicht schaltet meine ich es gibt kein elektr. Sigal. Softwaretechnisch wird wird Out 7 aber als
aktiv angezeigt (in PC-Control, Browser oder LCD wenn programmiert)

Elektrische Probleme liegen nicht vor, es gibt keine Spannungeinbrüche o.ä.

Wenn ich Ausgang 7 schalte bevor 6 andere Ausgänge geschaltet werden funktionieren alle Ausgänge
wie gewünscht.

Ich hoffe das euch meine Beschreibung verständlich rüberkommt, und bedanke mich für eure Unterstützung. Für meine
spätere Programmierung wäre es schön wenn dieser Fehler (sofern es einer ist) behoben werden könnte, da ich alle
8 Ausgänge in benutze.

Gruß

Bernd
Anhänge
benni ist offline  
 
Akim (Administator)
Hallo Benni !

Schalte mal bitte zwischen IN14 und out7 ein "oder" Glied.
Einfach von IN14 raus auf ein "oder" und vom "oder" Ausgang auf den Out7.
Akim ist offline  
 
benni (Betatester)
Hallo Akim,

danke für Deine Hilfe.
Habe das "oder" Glied eingebaut wie vorgeschlagen hat sich aber nichts geändert. gleiches gilt für die Kombinationen
In 15 --"oder"--Out 7
In14+15--"oder"-- Out 7

Anbei habe ich ein paar simple Testprogramme gehängt, es funktioniert nur Schaltung 2 !!
Bei Schaltung 5 blinkt z.B. Ausgang 7 nur solange bis ich "in 9" einschalte


Mein Rückschluß ist das Augang 7 nicht schaltet wenn 6 andere Ausgänge an sind.

Es wäre schön zu wissen ob dieser Fehler für Euch (oder auch andere User) reproduzierbar ist.


Gruß Bernd
Anhänge
benni ist offline  
 
Heidos (Betatester)
Ich habe gestern versucht diesen fehler bei meinen beiden NetIO's zu reproduzieren.
Egal welche Kombinationen ich genommen habe, es haben immer alle Ports fehlerfrei funktioniert.

Gruß
Heidos
Heidos ist offline  
 
benni (Betatester)
Hallo Heidos,

auch Dir vielen Dank das Du dich für das Problem interessierts. Wenn Du Lust hast probier mal meine Schaltung 5
von oben aus. Sehr simpel aber effektiv , Ist In 1 aus blinkt Port 7 im Sekundentakt , wenn Du In 9 einschaltest
(6 Outs an) schaltet(blinkt) Port 7 nicht mehr.

Testprogramm in out habe ich auf 2 CPUs ausprobiert auf beiden das gleiche Ergebniss. Auf meine 3. CPU läuft z.Zt.
noch die alte Software 2.1a1 mit der ich alle Ausgänge problemlos schalte. Gerne würde ich auch diese CPU
testen , leider ist mein Programm hierfür verloren da der USB sicherungsstick leider kaputt ist.

Gruß Bernd
benni ist offline  
 
benni (Betatester)
Fehler evt. gefunden
@ Akim + Trophy, tut mir leid wenn ich einen Bug vermutet habe, sorry aber es liegt an mir.

Nachdem ich mit einem Kollegen gemeinsam das Problem mehrfach nachgestellt hatte, kam die Idee anstatt mit
AVR Studio 4 die Software zu übertragen ein anderes Programm zu verwenden. Die Wahl fiel auf myAVR prog tool

Hierbei stellte ich fest (eigentlich durch spielen) das im EEprom einer bereits mehrfach neu beschriebenen CPU
noch die LCD Texte aus längst vergangenen Tagen enthalten waren. "myAVR" zeigt hex code und einige Klartext Schnipsel an bei der Funktion auslesen.

Nachdem ich mit AVR Studio die CPUs gezielt gelöscht habe, verhalten sich meine Testprogramme
so wie es sein sollte. Die von mir benutzte Option "Erase Device before programming" scheint das EEprom
nicht zu löschen. Ob diese Schlußfolgerung richtig ist weiß ich nicht, da meine Kenntnisse hierfür nicht reichen.

Vieleicht können andere User aber dies zur Fehlersuche verwenden. Für alle die etwas Schadenfreude empfinden
den sei gesagt "Ich weiß das ich besser mit dem orginal Programmer u. E2000 Software gearbeitet hätte , ich weiß auch
das das mit einer neuen CPU wohl nicht passiert wäre, aber man nimmt ja die Mittel die hat und die i.d.R auch funktionieren.

Bernd
benni ist offline  
Seiten (2): [1] 2 »  
 
Suche
» Erweiterte Suche
Optionen
Druckansicht Druckansicht
Thema weiterempfehlen Thema weiterempfehlen