Forum: Mikrocontroller und Digitale Elektronik Parameter eines uC basierten Reglers extern einstellen


von Regler (Gast)


Lesenswert?

Hallo,

habe mich gerade gefragt, ob man die Parameter eines PID-Reglers 
irgendwie extern einstellen kann.
Ich verwende einen ATtiny26, der leider nur relativ wenige IOs hat, die 
ich zudem bereits reichlich (Digitale Sollwert-Vorgabe, Strombegrenzung 
mit AC und Spannungsmessung mit ADC und externer Referenz, Ausgänge auf 
PortB für Statusmeldungen über LEDs) nutze. Da ist nicht mehr viel übrig 
(3 Ports), insbesondere für einen genaue Einstellung von mehreren 
Parametern.
Für jeden Versuch den Chip neu zu flashen, finde ich weniger elegant und 
ist aufwendig.
Auch UART ist leider nicht bei dem Chip verfügbar...
Gibt es einfache, sprich aufsteckbare, USI-UART-Wandler? Oder: Wie wird 
sowas sonst in der Praxis gelöst?

Grüße,
R

von Karl H. (kbuchegg)


Lesenswert?

Regler schrieb:

> habe mich gerade gefragt, ob man die Parameter eines PID-Reglers
> irgendwie extern einstellen kann.

Wenn du es programmieren kannst, ist es auch realisierbar :-)

> Auch UART ist leider nicht bei dem Chip verfügbar...

Es gibt auch Software UART

> Gibt es einfache, sprich aufsteckbare, USI-UART-Wandler? Oder: Wie wird
> sowas sonst in der Praxis gelöst?

Da du den ADC sowieso in Verwendung hast, könnte ich mir auch 
vorstellen, dass mit einem zusätzlichen Taster ein Poti an den ADC 
gekoppelt wird, mit dem man den/die Parameter verändern kann.
Oder 3 Taster: 1 selektiert den Parameter, die anderen beiden sind 
rauf/runter

Während der Änderung werden die LED als Anzeige misbraucht, welcher 
Parameter gerade verändert wird, falss überhaupt.


3 Pins sind auch ausreichend um daran Schieberegister auf einer 
Zusatzplatine anzuschliessen. 4 wären besser um zwischen 
Eingangsschieberegister und Ausgangsschieberegister unterscheiden zu 
können, aber da könnte man ja auch wieder einen LED Ausgang misbrauchen.
Auf der Zusatzplatine mit den Schieberegistern sitzt dann ein LCD und 
ein paar Taster zur Benutzereingabe.

Oder ....

von Regler (Gast)


Lesenswert?

Karl heinz Buchegger schrieb:
> Software UART

Ist der aufwendig? Soviel Flash hat der ATtiny leider nicht. Brauche ich 
dafür mehr als 2-3 Ausgänge?

von Karl H. (kbuchegg)


Lesenswert?

Regler schrieb:
> Karl heinz Buchegger schrieb:
>> Software UART
>
> Ist der aufwendig?

Was ich mich aus dem Kopf heraus erinnern kann: Nicht wirklich
Such in der Codesammlung. Da müsstest du was finden.

> Brauche ich
> dafür mehr als 2-3 Ausgänge?

So wie bei jeder anderen UART auch: 2 Stück. Einer für TxD, einer für 
RxD. Und natürlich noch Zugang zur Masse.

von Regler (Gast)


Lesenswert?

Karl heinz Buchegger schrieb:
> ein Poti an den ADC
> gekoppelt wird, mit dem man den/die Parameter verändern kann.

Dank' Dir.

Das war die Idee, die ich brauchte. Bei Sollwert 0 wird jetzt der 
ADC-Eingang geändert und ein analoger Wert, als die Verstärkung 
eingelesen. Damit kann ich einen Parameter des PIDs einstellen.
Die anderen gemachten Vorschläge scheitern am notwendigen Speicher (2K 
Speicher sind nicht viel, ATtiny461 ist aber schon unterwegs), den 
verfügbaren Schnittstellen und/oder am verfügbaren Platz auf der 
Platine.
Wären außerdem ein wenig overkill.
Den analogen Wert kann ich dann auch messen und später dokumentieren 
bzw. fest einprogrammieren. Erstmal landet er im EEPROM.
Für den I-Anteil muss ich dann zwar nochmal flashen, aber das geht ok.
Den D-Anteil werd ich erstmal weglassen.

Nochmal Danke!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.