Mikrocontroller schneller laufen lassen

OP #5642941
Lesenswert?

Hi

ich habe ein ganz doofes Problem: eine Platine mit einem NXP uC hat ein 
festes Programm (an das ich nicht heran komme) und ich müßte in der 
Steuerung der Platine (über LCD) einen bestimmten Wert höher setzen 
können, als die Software es erlaubt (festes cut off in der Firmware). 
Für die Funktion der Platine wäre es wohl unerheblich, wenn ich diesen 
Wert höher setzen würde (sie würde das mitmachen). Ich muss den Wert nur 
ca. 1% höher setzen können, als die geflashte Firmware es erlaubt.

Die Steuerplatine "steigt aus", sobald ein Messwert über der 
Maximalschwelle liegt.

Bei dem Wert handelt es sich um eine Frequenzmessung.

Jetzt ist mir folgende Idee gekommen: Das Ding hat einen 12 Mhz Quartz. 
Würde ich den durch z.b. 12.27 Mhz ersetzen, würde das Programm um ca. 
2% schneller ablaufen. Alle Frequenz-Messwerte, welche die Platine nun 
misst, müßten so um etwa 2% tiefer liegen.

Ich möchte mit anderen Worten durch Beschleunigung des Takts, die 
Platine falsch messen lassen und sie doch noch zur Mitarbeit bewegen 
oberhalb der fest einprogrammierten Schwelle.

Da es sich ja um nur 2% handelt, dürfte es elektrisch keine Probleme 
geben.

Hat jemand schon so etwas mal versucht?

Wird der Quarz anschwingen, wenn die Schaltung ursprünglich für 12 Mhz 
gedacht war und ich direkt einen 12.27 einsetze? Oder müßten auch die C 
ersetzt werden (Pierce Schaltung).
Beitrag #5643104 wurde von einem Moderator gelöscht.
Gast #5643130
Lesenswert?

Piter K. schrieb:
> Jetzt ist mir folgende Idee gekommen: Das Ding hat einen 12 Mhz Quartz.
> Würde ich den durch z.b. 12.27 Mhz ersetzen, würde das Programm um ca.
> 2% schneller ablaufen. Alle Frequenz-Messwerte, welche die Platine nun
> misst, müßten so um etwa 2% tiefer liegen.

Könnte funzen, aber wenn z.B der Watchdog an einem 2 Taktgeber hängt was 
dann?

Kannst du nicht einfach den Eingangstakt runterteilen?
Gast #5643644
Lesenswert?

Stefanus F. schrieb:
> Sicher nicht. Außer wenn der Computer am anderen Ende der Leitung
> ebenfalls übertaktet wird.

Dann rechne mal nach, um welchen Bruchteil einer Bitzeit die Flanken des 
letzten Bits verschoben sind, wenn der Takt 2% abweicht und die Signale 
sauber sind. Warum sollte das schon schief gehen?
Gast #5643652
Lesenswert?

Bei 12MHz Systemtakt läuft die Schnittstelle bereits sehr wahrscheinlich 
nicht mit exakt der richtigen Bitrate. Lege da nochmal 2% drauf und du 
provozierst Probleme.

Ich muss allerdings zugeben, dass ich 10% Übertaktung im Sinn hatte. Das 
war falsch.
OP #5643677
Lesenswert?

Das Problem ist komplexer als ich es hier darstellen kann.

Die Platine ist eine Platine eines Wechselrichters, der bei 60.5 Hz (in 
den US) "aussteigt". Da wir eine schwebende Frequenz haben (Schwankungen 
zwischen 59.5 und 60.5Hz im 1-2 Sekundentakt), läuft der Wechselrichter 
nicht (overfrequency).

Normalerweise bestimmt das eine UL Norm, daß die Wechselrichter ab 60.5 
Hz abzuschalten haben. Der Hersteller stellt sich quer und schiebt die 
Norm vor (dabei dient die Norm dme Schutz des Netzes bei Overload = 
Overfrequency). Doch bei uns liegen Netzstörungen vor, so daß eine 
Schwebung im Stromnetz die Frequenz zwischen den beiden Werten 
"scheinbar" pendeln läßt.

Der Hersteller läßt keine Einstellung über 60.5 Hz zu (fest eingebrannt 
in die Firmware).

Da ist mir eben als "Hack" diese Idee gekommen: der uC etwas schneller 
laufen lassen, dann sind seine Frequenzmessungen etwas verschoben und 
der Wechselrichter tolleriert nicht nur 60.49 Hz sondern bis 61 Hz...
(die Frage ist ob er dann immer läuft und andere Funktionen erhalten 
bleiben).
Gast #5643693
Lesenswert?

Piter K. schrieb:
> (die Frage ist ob er dann immer läuft und andere Funktionen erhalten
> bleiben).

Alle anderen zeitkritischen Routinen (sofern überhaupt vorhanden) wie 
die genannten Datenübertragungsprotokolle UART und USB geraten dann aus 
dem Takt.

Alles andere sollte weiter funktionieren (mit entsprechend definierten 
Abweichungen).


Etwas anderes wäre es, wenn du den uC ÜBERTAKTEST. Dann müsstest du 
wahrscheinlich einen externen Oszillator verwenden (den uC also 
"zwangsbetakten"), die Betriebsspannung wahrscheinlich etwas über der 
max. zulässigen Spezifikation betreiben und den uC dann am besten mit 
einem Kühlkörper versehen. Kann aber sein, dass dann einzelne Segmente 
nicht mehr zuverlässig arbeiten, obwohl der Controller ansich seine 
Arbeit tut.
Das aber nur als theoretische Betrachtung.
Gast #5643720
Lesenswert?

Schau mal was der intern so treibt. Wenn der mit anderen Modulen 
kommuniziert wirst du die auch frisieren müssen, damit das läuft. Könnte 
aber klappen.
Falls nicht, hast du wohl einen Haufen Elektroschrott und brauchst ne 
neue Unterhose wenn deren Netz auch so bissig ist wie unsers hier.
OP #5643768
Lesenswert?

Es ist ein KACO... den Support kannst vergessen. Die haben es verkauft 
und leisten im Endeffekt keinen Support.

Fast alle anderen Hersteller lassen ein Passwort beantragen, wo man dann 
in Notfällen über die Spezifikation gehen kann (die lassen sich das eben 
unterschreiben um dann aus dem Schneider zu sein). Elektrisch ist ein 
erweiterter Betriebsbereich überhaupt kein Problem. Nicht bei +- 1%.
Es sitzt eben im Flash irgendwo fest gebrannt 60.5Hz => AUS und der Wert 
läßt sich nicht weiter nach oben setzen, da UL Norm....

Wenn ich bloß den Flash lesen und überschreiben könnte... habe mit dem 
uC aber keine Erfahrung. Es wird nicht mal ein Firmware Update angeboten 
(wo man es zumindest versuchen könnte die binary zu hacken...).

Da bliebe mir als dirty work around den uC etwas schneller laufen zu 
lassen, dann würden ja 60.5 Hz aussehen wie 60 Hz (vergehen mehr zyklen 
zwischen Messungen des Nulldurchgangs). ich nehme mal an daß es so 
funktioniert.
Möglich wäre es auch, daß die Spannungsmessung taktabhängig ist, dann 
hat man eventuell ein Problem (imho ein Sigma-Delta Wandler misst nicht 
falsch, wenn der Takt eiert, nur die Messung dauert länger).

Daß was abraucht glaube ich nicht... bei 1% Taktabweichung kann sich die 
Schaltung nicht in Rauch auflösen.
Gast #5643917
Lesenswert?

Nehmen wir mal an die Software misst zwischen vergangener Flanke und 
aktueller Flanke des Wechselrichterausgangs den Zeitunterschied (z.B. 
mittels Captureregister), dann müsste man doch den Systemtakt reduzieren 
und nicht anheben damit dein Ziel erreicht wird, oder liege ich da 
falsch?
#5644028
Lesenswert?

Piter K. schrieb:
> Hier ein Video, wie bei uns das Netz eiert:
>
> https://ufile.io/u7td0

Oje, das ist ja schon ein ziemliches Gezappel. Wo ist das denn? 
Venezuela? Philippinen? Schlag dem Netzbetreiber doch mal vor 
UL-konformen Strom zu liefern ;)

Das mit dem erhöhen des Taktes sollte meiner Meinung nach gehen. Es 
werden zwar indirekt auch Reglerparameter beeinflusst aber bei 2% sollte 
das nicht viel ausmachen.
(Firma: EleLa - www.elela.de) #5644084
Lesenswert?

Ich weiß jetzt nicht um welche Leistungsklasse es geht, man könnte einen 
inverter dazwischen schalten:

AC-Netz -> 48V -> Wechselrichter

Damit wäre man in jedem Falls raus aus dem instabilen Netz.
Optional könnte man die 48V sogar mit Akkus auch noch stabilisieren, 
bzw. für kurze Unterbrechungen puffern, denn bei diesem Netz sind sicher 
1-2 Kurzzeit Ausfälle in der Woche drin.

Von dem µC die Taktfrequenz bei so einem komplexen Gerät wie einem FU 
hoch zu setzen halte ich nicht wirklich für machbar. Da geht (abgesehen 
von der Garantie) sicher irgend was anderes dann nicht mehr. Und dann 
kommen doch mal 61,5Hz 1x im Monat dann steigt der auch wieder aus.

Falls das kein Hobby-Projekt ist, sondern Du sitzt bei einem Kunde auf 
einer Baustelle und musst das zum Laufen bekommen, dann müssen Lösungen 
her die so gut sind dass man von diesem Problem nie wieder was hört.
Sollte es Hobby sein, dann, ja löte am µC Quarz rum und versuche dein 
Glück ;-)
OP #5644182
Lesenswert?

Christopher J. schrieb:
> Piter K. schrieb:
>> Hier ein Video, wie bei uns das Netz eiert:
>>
>> https://ufile.io/u7td0
>
> Oje, das ist ja schon ein ziemliches Gezappel. Wo ist das denn?
> Venezuela? Philippinen? Schlag dem Netzbetreiber doch mal vor
> UL-konformen Strom zu liefern ;)
>
> Das mit dem erhöhen des Taktes sollte meiner Meinung nach gehen. Es
> werden zwar indirekt auch Reglerparameter beeinflusst aber bei 2% sollte
> das nicht viel ausmachen.

Am besten wäre ein firmware-hack... ist halt schwierig, wenn keine 
firmware zur Verfügung gestellt wird.

Man kann es auch durch eine Inselanlage lösen, ist dann eben sehr 
teuer...
Beitrag #5644476 wurde von einem Moderator gelöscht.
Beitrag #5644594 wurde von einem Moderator gelöscht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren