Moin,
ich benutze die TRelaisCard-Klasse von Andreas Hausladen, mit der man relativ einfach über die RS232-Schnittstelle eine Relaiskarte ansteuern kann.
Funktioniet auch prima, nur wenn ich da z.T. bis zu 30 Schaltungen pro Sekunde hinschicke, macht sie das irgendwann nicht mehr mit (nach ein paar Sek) und reagiert einfach nicht mehr.
Ein Aufruf von (TRelaisCard.)Reset lässt sie dann wieder funktionieren, ebenso wie das freigeben, neu erstellen und initialisieren der RelaisCard-Komponente.
Demnach wird das ja eher ein Software-Fehler sein, oder?
Ich habe keine Infos wie viele Schaltvorgänge die Karte mitmacht, aber was 100 mal 10 Sek. gut geht, könnte ja ansich auch gleich richtig lang gut gehen *find*
Bisher gibts für mich also nur die Lösung, weniger Befehle zu senden oder immer wieder zu resetten (mit ca. 10 Schaltungen pro Sek. im Duchschnitt kommt es aber auch schon u.U. nach 10 min zu nem Ausfall). Das ist aber nicht wirklich praktikabel, weil je mehr Schaltungen pro Sek. desto besser (OK, 30 wären ansich genug) und resetten nervt ja nur, weils im Hintergrund laufen soll. (Ist die Ansteuerung einer Art Lichtorgel über die bass.dll).
Nun suche ich eine Möglichkeit, entweder den Fehler gleich zu umgehen oder aber herauszufinden, ob die Relaiskarte einen Reset gebrauchen kann.. da der Reset ein paar zehntel Sekunden braucht, ist es nicht praktikabel, den einfach mal blind alle 5 Sek auszuführen o.Ä.
Leider hab ich zu der Klasse auch keine Doku und der Code ist zwar hübsch aber auch nicht wirklich kommentiert. Drum bringen mir die Dinge wie TRelaisCard.Status oder so auch wenig sagende Ergebnisse.. (angeblich immer ready etc.)
Viele Grüße
flo