Vielleicht habe ich das Problem nicht genau genug beschrieben. Während der Formulierung scheint mir das aber auch klarer zu werden. Die Fahrsteuerung funktioniert soweit auch ohne Positionsregler als reine Steuerung. Anstelle einer Fahrpositionierung möchte ich den Akku steuern. Der Motor dient hierzu einfach als steuerbare Last. Er fährt nicht von Position A nach B sondern eben nur soviel wie Energie zur Verfügung steht. Momentan funktioniert das so, daß er erst losfährt wenn die Batterie voll ist. 100% volle Batterie sind schlecht für deren Lebensdauer. Ausserdem geht Energie verloren, wenn die Solarzelle mehr liefert wie der Motor verbraucht weil sie nicht mehr zwischengespeichert werden kann. Vergleiche auch Marsroboter Spirit/Curiosity o.ä. Die bekommen Marstäglich eine unbekannte Menge Energie in einen Akku fester Größe geliefert. Damit sollen sie eine maximale Fahrstrecke bewältigen, möglichst viele Versuche mit ihren Sensoren machen. Beim Losfahren ist aber meist noch gar nicht klar was und wohin. Irgendwann geht der Akku zu 'Ende weil die Sonne nichts mehr liefert. Es ist jetzt Aufgabe des Reglers dem Motor zu sagen, daß er seine Leistungsaufnahme drosseln soll.Vielleicht nur noch aus einem Loch rausfahren so daß die Position am nächsten Sonnenaufgang ideal ist um frühzeitig mit der Akkuladung zu starten. Insgesamt muß aber ein gutes Sicherheitspolster im Akku verbleiben, so daß der Funkverkehr auch bei Nachtfrost niemals ausfallen wird. Deshalb wird beim Sonnenaufgang mit einer absichtlich pessimistischen Prognose noch immer etwas Akkuladung vorhanden sein. Mit dieser kann man dann frühzeitig losfahren um den Akku auf minimalen Ladezustand zu entleeren. Möglichst kurz bevor er während des anstehenden Tags sowieso wieder geladen werden wird und dabei eine maximale Energiemenge aufnehmen muß.
Also: Der Encoder liefert bei einer Fahrpositions Kaskade das Geschwindigkeitssignal in den inneren Regler und aufsummiert das Positionssignal in den äusseren Positionsregler.
Jetzt: Der Strom-Shunt des Akkus liefert dem inneren schnellen Stromregler ein Stromsignal. Der Coulomb Zähler im Batterie Monitor IC summiert die Ampereskunden auf, was den Istwert-Ladezustand SOC für einen äusseren langsamen Regelkreis gibt.
Der innere Regelkreis beeinflusst den Istwert des äusseren Regelkreises indirekt, weil ja bekannt ist, daß der Akku Ladezustand bei Entladestrom irgendwann kleiner wird und bei Ladestrom irgendwann größer wird. Der schnelle innere Stromregler kann aber längst reagieren, bevor der Akku einen geänderten Ladezustand viel zu spät zurückmeldet. Nähert sich der Akku Ladezstand seinem Ende, so gibt der übergeordnete langsame äussere SOC Regler einen niedrigeren Strom für den inneren Stromregler vor. Der Roboter kann solange noch mit einer verringerten Motorleistung langsam irgendwo hinfahren. Bei hohem SOC kann er umgekehrt maximale Geschwindigkeiten und Beschleunigungen fahren, weil der Strom sonst wegen zu vollem Akku sowieso verloren gehen würde.
Die Anfahrströme sollten im Sekundenbereich kein Problem sein. Die liefert der Akku problemlos wozu ich auch nur max 0,3-0,4C veranschlage. Eher zu hohe Dauerströme denn er soll wenigstens einen Tag autark fahren können. Das geht nur <<0,1C. Verringert man die Stromentnahme gegen Entladeende, geht die Spannung wegen der Entlastung mitunter wieder etwas nach oben ohne daß der Coulomb Zähler den Ladezustand deshalb korrigiert. Man sollte sich also nicht mit maximaler Last an das Entladeende rantasten um etwas mehr aus dem Akku rausholen zu können (Peukert-Exponent) Es ist also eher eine Leistungsbetrachtung als reiner Strom. Die Akkuspannung ist nahezu konstant. Die Motorspannung nicht. D.h. der Motor kann auch mit kleiner Geschwindigkeit, kleiner Spannung aber hohem Strom einen hohen Drehmoment bringen aber eben nur bei langsamer Geschwindigkeit. Aber ich werde das alles selbst ausprobieren müssen.
Lesezeichen