psclab38 hat geschrieben:Mach ich dann später und melde mich nochmal...
Tut mir leid, hat leider etwas gedauert. Ich hab noch Debugausgaben eingebaut, um eventuelle Probleme leichter dokumentieren zu können.
So, jetzt hab ich die beiden Hexfiles hochgeladen. guckst Du hier:
http://dcg-firmware.cvs.sourceforge.net ... -firmware/
Die Standardparameter, die die Firmwaren mitbringen, sind für DCG -only, also müssen diejenigen mit DCG+DCG ein bißchen feintunen. Ich denke, für die 16-bit Version sollte Parameter 167 auf "7" und Parameter 170 auf "12.5" eingestellt werden. (Param 169 gibt's hier nicht, der wird intern berechnet)
Eine Bitte an die Mutigen: Rettet vor dem Update Eure derzeitigen Einstellungen, z.B. mit Dump von eep und hex.
Speziell um den Umstieg leichter zu machen, wäre es außerdem sinnvoll, die Parameter aus der Pascal-FW auch noch mit
ParamBackupRestore.vi zu retten und als ersten Versuch einfach in die C-FW zurückzuspielen. Evtl. stimmen die Kalbrierdaten nicht ganz, die anderen Parameter sollten aber kompatibel bleiben.
Um es anders zu formulieren: die C-FW hat nur mehr Parameter (bis auf die Ausnahme 169, s.o.), die alten Parameter von der Pascal-FW sollten aber passen. U.U. bis auf die exakte Kalibrierung.
Um Mißverständnissen vorzubeugen: die eep-Daten der Pascal-FW bitte NICHT einspielen. Die können nicht passen. Die C-FW belegt das EEPROM automtaisch mit Werten für DCG vor, es gibt keine eep-File.
Inzwischen habe ich nochmal nachvollzogen: CM hat in der Pascal-FW zwischen Version 2.842 und 2.91 die Umschaltung der Relais speziell für den Ripplemode geändert. Das Verhalten habe ich soweit mal übernommen, will es aber erläutern:
Mit der DCG+DCP gibt's bis ca. 12,5V die Versorgung über die erste Trafowicklung. Wenn die >>Sollspannung<< höher liegt, dann wird auf die höhere Trafowicklung hochgeschaltet. Soweit, so gut.
Wenn jetzt am Ausgang aufgrund von Strombegrenzung die >>GEMESSENE<< Spannung unter die Schaltschwelle fällt, dann schalten die Relais um, damit die Verlustleistung am Transistor verringert wird. Wenn der Überstromzustand wieder aufglöst wird, dann schaltet das Relais wieder hoch. (Das war vorher anders: Ging die >>GEMESSENE<< Spannung wieder über die Schwelle (+Hysterese), dann schalten die Relais wieder hoch.)
Im Falle des Ripplemodus ist das etwas komplizierter. Je nach Ripple-Einstellung ist die Ausgangsspannung und damit die gemessene Spannung nur ein Bruchteil der 100%-Sollspannung. Da aber je nach Meßzeitpunkt die gemessene Spannung mal die hohe und mal die niedrige Spannung sein kann, könnten die Relais jetzt wild hin- und herschalten. Um das zu vermeiden, hat die Pascal-FW von CM eine Änderung bekommen, die gemessene Spannungen runter bis zur niedrigen Ripplespannung erlaubt. Das führt in erster Linie zu höherer Verlustleistung am Transistor, je nach Tastverhältnis. Der Effekt ist bei Pascal und C-Firmware aber gleich. Ich kann nicht beurteilen, ob das eventuell Probleme machen könnte, da ich keine DCP habe. Bei extremem Tastverhältnis, und hohem Rippleanteil dürfte der Leistungstransistor ordentlich warm werden.
Die DCG2-Firmware ist bezüglich der Relaisumschaltung damit auf gleichem Stand wie die Pascal-Version, bis auf dies: Wenn ich die Pascal-Firmware richtig verstanden habe (ich hab's nicht ausprobiert), dann würden im Ripplefall die Relais nicht bei 12V runterschalten, wenn man die Sollspannung runterdreht, aber der Rippleanteil > 0 ist. Das habe ich hier noch geändert.
Spätestens jetzt dürfte ich alle Klarheiten beseitigt haben.
Um die korrekte Funktion zu testen, bitte ich Euch mal genau hinzusehen und das Ding in allen Lebenslagen zu prüfen. Für alle Fälle (um ein eventuelles Debuggen zu erleichtern) habe ich eine Debugausgabe zur Relaisumschaltung auf der Seriellen eingebaut. Da werden ein paar Settings- und Meßwerte ausgegeben, falls es Probleme geben sollte. Dieses "Feature" kommt natürlich wieder weg.