Forum: Mikrocontroller und Digitale Elektronik Drehbare Solaranlage


von Stefanie (Gast)


Lesenswert?

Hi,
nachdem ich mein erstes richtiges Mikrocontrollerprojekt und
erfolgreich abgeschlossen habe (Webboard mit dem Ethernutbetriebssystem
und Funkanbindung), habe ich mir etwas neues ausgedacht:

Ich habe vor mir eine Steuerung für eine drehbare Photovoltaikanlage zu
bauen und überlege mir gerade was ich brauche und wie es funktionieren
soll.

1. Die Hardware
-Atmega-Mikrocontroller (welcher?)
-JTAG-Schnittstelle
-2 digitale Temperatursensoren und für die Ausgabe ein LCD-Display
(muss nicht sein, es interessiert mich halt nur (einmal die Temp auf
der Platine und einmal bei den Solarplatten
-2 Cermet Drehwiderstände, die die Stellung der Motoren erkennt und zum
Ansteuern der Motoren je 2 Monostabile Relais
(eine Motor für die Drehbewegung(max. bis 220°) und eine für das
Schwenken(bis 70°))
-eine Funkuhr

2. Zur Software
Ich habe mir gedacht, dass ich die Anlage nicht aufgrund von Sensoren
steuern lasse, sondern ihr täglich den genauen Weg sage, den sie der
Reihe nach abfahren soll.
In einer Tabelle steht dann also:
Uhrzeit  Drehen   Neigen
Das sind die Sollwerte die mit den Istwerten verglichen und dann eben
angepasst werden sollen. Ich habe mir gedacht, dass ich die Anlage
12-15 mal am Tag nachführe. Diese Tabelle ändert sich dann ja mit der
Jahreszeit, so dass ich schätzungsweise 12mal im Jahr die Tabelle
ändern muss.
Evtl. muss man ja die verschiedenen Tabellen für die Monate nicht fest
programmieren, sondern könnte sich einen Algorithmus überlegen, wie sie
sich der Mikrocontroller selbst berechnen kann (doch ich glaube nicht
wirklich, dass dies gut passen würde)

Was sagt ihr dazu? Ist da ein grober Denkfehler drin?

von Michael W. (mictronics) Benutzerseite


Lesenswert?


von Stefanie (Gast)


Lesenswert?

Danke für den Link, aber ich habe es wirklich vor mit ohne aktuelle
Messung, sondern mit berechneten Werten zu machen. (Wußte gar nicht,
wie man den Sonnenstand berechnen kann)

Kann mir wer von euch eine Funkuhr empfehlen?

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Bei Angelika und Werner (Reichelt und Conrad) gibt es Platinen mit
entsprechender Funktion.
(Es gibt auch einen Wiki-Artikel zu dem Thema...)

Der Sonnenstand hängt mit der Position der Solaranlage und dem Datum
zusammen. Mit nur einer Tabelle wirst du nicht weit kommen...ausser sie
enthält Sinus-Werte...
Eine Nachführ-Regelung sollte mit einem Mikrocontroller einfacher
realisierbar sein.
Fischertechnik hatte in deren ersten Computingbaukasten (graue
Bausteine) eine Anlage wie du sie dir vorstellst als Versuch
beschrieben. Die Software lief auf einem Apple ][, Comodore VC20/C64
(mit ganzen 2MHz).
Möglich sollte es also sein (Messen, Steuern, Regeln müsste aber
einfacher sein...)
Um das Ding richtig positionieren zu können, solltest du vielleicht
noch überlegen, die Motoren per PWM anzusteuern.

von Karl heinz B. (kbucheg)


Lesenswert?

> Der Sonnenstand hängt mit der Position der Solaranlage und dem Datum
> zusammen.

Ganz abgesehen davon, dass die Anlage dann exakt waagrecht
und nach Süden ausgerichtet werden muss.
Mit einer aktiven Regelung vermeidet man diesen Aufwand
auf einfache Weise.

von tex (Gast)


Lesenswert?

Die Sache mit der Tabelle geht schon, ist aber etwas ungenau und auch
nicht nötig.
Generell kannst Du die ungefähren Winkel Monatsweise vorgeben, dann
musst Du die Tabelle nicht einmal tauschen.
<< sondern könnte sich einen Algorithmus überlegen, wie sie
sich der Mikrocontroller selbst berechnen kann (doch ich glaube nicht
wirklich, dass dies gut passen würde) >>
Das ist die (finde ich) beste Lösung hat aber ein paar kleine Hürden.
Bei HKW findest Du schöne kleine DCF-Module die dir sogar die UTC
ausgeben (besser für die Sonnenberechnung, weil sich die Sonne nicht an
die gesetzliche Zeit hält die der DCF-Sender abstrahlt sondern an die
reale Zeit am Ort)

von mirki (Gast)


Lesenswert?

So etwas hatten wir auch mal gemacht. Unsere Erfahrungen hatten gezeigt,
das eine Berechnung sinnvoller ist. Die Formel hierfür ist nicht sehr
kompliziert ( Tip : Nimm die Unterkante der Sonne anstelle die Mitte
).
Bei uns war die kompixität darin, das die Anlage auf drei "Beinen"
stand. Zwei in der länge variable und ein festes mit einem gelenk.
Hat super funktioniert. Als steuerung hatten wir einen PC genommen.
Sollte aber auch mit einem Mikrocontroller wunderbar funktionieren.

von Stefanie (Gast)


Lesenswert?

@mirki: Ist ja super, dass es auch wenn gibt, der die Stellung
berechnet! Wie oft hast du dann die Solarplatte nachfahren lassen?? Bei
einem Rechner ist der Speicherplatz ja kein Problem.

Ich kenn ne drehbare Solaranlage die steht öfter mal gegen Norden :-)
und das wollte ich durch die Berechnung eben vermeiden.

Doch das mit den DCF-Modulen ist ja nicht gerade ein günstiger Spaß,
unter 10€ gibts doch da gar nichts, oder?
Gibt es den kein fertiges Bauteil mit integrierter Antenne, dass ich
auf meiner Platine integrieren kann??

von inoffizieller WM-Rahul (Gast)


Lesenswert?

Schon bei einschlägigen Auktionshäusern geguckt?

von Daniel M. (usul27)


Lesenswert?

Was ich da noch bei der Hardware sehe: Drehwiderstände zur Feststellung
der Motorposition. Was sollen die genau tun? Ich vermute mal, die sind
dazu da, zu sehen, wie weit der Motor das ganze bewegt hat. Richtig?

Wenn ja, dann ist das keine sehr genaue Variante und sicher auch nicht
so unproblematisch. Daher würde ich eher den Einsatz von Schrittmotoren
oder - wenn die zu teuer sind - wenigstens Reflexlichtschranken
vorsehen, um die Anzahl der Drehungen des Motors genau messen zu
können.

von tex (Gast)


Lesenswert?

wenn Dir die DCF-Version zu teuer ist, nimm einfach ein RTC-Baustein.
Die sind genau genug.
Das mit dem Poti ist auch ok. Bei einem einfachen Poti kommst Du auf
eine Auflösung von ca 0,22 Grad. Das ist in der Regel genauer als das
Ergebnis Deiner Berechnung.
Wie ich schon sagte ist DCF eh nicht der Weisheit letzter Schluss bei
dieser Idee, weil der DCF-Sender die gesetzliche Zeit verbreitet also
auch Sommerzeit, aber die Sonne geht nun mal nach der kosmischen Uhr.

von Frank Schuessler (Gast)


Lesenswert?

Beim Lesen des Threads ist mir mit Blick auf meine Sat-Anlage folgendes
eingefallen; falls Du noch keine Motoren hast nur mal so als Anregung,
Du koenntest für die Drehung der Solarzelle Aktuatoren
(Schubstangenmotoren) fuer Satelliten Polarmount-Halterungen verwenden,
die haben gleich einen Impulsgeber mit drin und sind immun gegen
jegliche Wettereinflüsse.

Beispiel:

http://www.satshop.com/actuatord.htm

-fs-

von Peter Fischer (Gast)


Lesenswert?

Also:

IMO hat beides seine Berechtigung:

* aktive Regelung mit sensoren
 - einfach (justiert sich selber)
 - auf google nach "solar tracker" suchen, 1001 Anleitungen
 - braucht freies Feld (ob der Einfachheit keine Kollisionskontrolle
etc.
 - ziemlich einfach und dauerhaft.

* aktive Regelung mit Solarpositionsberechnung:
 - wer weiß wo die Sonne ist kann sich auch aktiv wegdrehen (zu heiß,
Sturm, Hagel, schöne seite über nacht nach unten, dann hat man am
nächsten Tag keine Vogelkacke oder 3m Schnee oder Eisregen auf dem
Panel)
 - wer die Winkelhalbierende in einer von 2 vektoren aufgespannten
Ebene ausrechnen kann, hat einen Heliostaten und kann sich Sonne auf
die Nordseite seines Hauses spiegeln.
 - Das Ding kann am Solaroptimum absichtlich vorbeiregeln ( z.B.
Hochwasser, Gegenstände im Verfahrweg, Viecher auf der Weide wo es
rumsteht, Wartungsposition..)

Solarposition ausrechnen: www.nrel.gov/docs/fy06osti/34302.pdf und
http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=4605&objectType=file

Wenn sich wer wundert warum beide mal "aktiv" davorstand;
es gibt noch eine

* "passive", mechanische Regelung (allerdings 1achsig), da sind
mehrere Ballastbehälter hinter dem solarpanel, eine Flüssigkeit
wechselt irgendwie von der warmen zur kalten seite und der verschobene
Ballast kippt das Panel in die gewünschte Richtung. noch einfacher und
noch dauerhafter, was bei Investitionszeiträumen von 20-30 jahren für
Solarpanels und der langsamkeit der Sonne keinen wirklichen Nachteil
darstellt.

Für alles kann man gute Gründe anführen, mann muß halt mal seine
Anforderungen zusammentragen.

DCF77-Uhrzeit:
 * http://www.mikrocontroller.net/forum/read-4-23408.html
 * http://www.mikrocontroller.net/forum/read-4-284553.html

Mapping zwischen lokalzeit und UTC/GMT gibt es in jedem Linux unter
/usr/share/zoneinfo/*

Zum Positionieren ein
* Planetengetriebe
* Zykloidengetriebe
* Harmonicdrive
(kann man aber normal nicht selber fertigen, aber wenn Du schweissrobos
ausschlachten kannst?)

oder

* Lagerung auf einem Kreuzgelenk und Antrieb per Wasserdruck und 2
Hydraulichen Zylindern
* Lagerung auf einem Kreuzgelenk und Antrieb per Pressluft und 2
Hydraulichen Zylindern und hydraulischer Vorlage

Die Getriebe sollten selbstsperrend sein (Winddruck auf Panel) und die
Motoren nicht dauernd unter Strom stehen (Energiverbrauch,
Standfestigkeit) also keine Steppermotoren.

Gewindestangen, Seilzüge etc, scheidet IMO wegen
Standfestigkeitsgründen bei ernthafter Anwendung aus.

von Peter Fischer (Gast)


Lesenswert?

ach ja hab noch was vergessen:

Die ganze Rechnerei und oben angedachte wettersensorenanbindung und DCF
Uhr etc.. braucht man nur einmal, da man mit etwas feldbusmäßigen sicher
mehrere Positionsantriebe steuern könnte.

Die Sonnenstrahlen fallen ja quasiparallel ein.

Noch ein Grund zum absichtlich unidealen Einstellen: wenn man mit dem
Tracker eine solarthermische Anlage statt Photovoltaik bewegen will,
dann kann man im Winter die 20-40% die ein Tracker unter idealen
Bedingungen bringen kann einsacken und im Sommer (wenn
Stillstandstemperaturen >320° Probleme bereiten, die Anlage aus der
Sonne drehen, wenn der Speicher voll ist.


Fällt irgendeinem noch ein einfacher/preiswerter/dauerhafter Antrieb
ein?

Man könnte pro Achse 2 Ballastwassergefäße benutzen (wie in dem anderen
Thread angedacht und hier zu sehen:
http://www.zomeworks.com/solar/trackrack/trackwork.html ) und statt dem
thermischen Antrieb die (in unseren Breiten frostsichere!) Flüssigkeit
mittels einer Schlauchpumpe/Perestaltikpumpe zwischen den 2 Tanks
bewegen.

Oder man installiert in jedem Tank eine Gummiblase so wie in einem
Heizungsausgleichsbehälter, die man wechselseitig mit Druckluft
aufpumpt und damit die Ballastflüssigkeit in den anderen Tank hinüber
verdrängt, so eine Art verstimmte Schlauchwasserwaage.

Oder man bastelt sich in jeden Tank eine Solenoiddosierpumpe, die pro
Impuls z.B. 10g Wasser in den anderen Tank pumpt...

Mag sich jetzt hanebüchern und eselig anhören, hat aber Vorteile:

Da das Panel "auf einem einstellbaren Pendel reitet", ist es nirgends
absolut festgemacht, d.h. es treten an keinem Getriebe Drehmoment und
Lastspitzen auf.

Man kann das ganze selber fertigen.

Zusätzliches Gewicht wie Schneelast  doofe Vögel  Nachbars noch
doofere Katze kippen einfach runter ;)

Es ist mechanisch einfach -> Hält lange!

von inoffizieller WM-Rahul (Gast)


Lesenswert?

>Die Getriebe sollten selbstsperrend sein

Schneckengetriebe lässt grüssen.

von Stefanie (Gast)


Lesenswert?

Also, vielen herzlichen Dank für die Mühe!!
Da kommen mir meine Fragen ja ganz blöd vor! (Naja, bin halt noch ne
Anfängerin)

Ich hab mir mal ein paar Gedanken zur Programmierung gemacht und zwar
habe ich mir so vorgestellt:


PCF8583 als RTC verwenden
Programmieren, dass er z.B.um 6:30 einen Interrupt an den ATmega senden
soll.
Der Atmega liest dann in der ISR das Datum und die Uhrzeit aus dem
PCF8583 aus.
Entsprechend des Datums wählt er eines der 12 „Monatsverläufen“ aus (->
diese verwendet er für den Rest des Tages, so dass er nur in der Früh
das erste Mal das Datum auslesen muss).
Nun vergleicht er ATmega die Stellung der Drehwiderstände mit der
gespeicherten Stellung, die er zu diesem Zeitpunkt sein soll und
schaltet die Relais, so dass die Motoren die Solaranlage in die
gewünschte Stellung fahren.
Als nächstes sende ich dem PCF8583, wenn er mir den nächsten Interrupt
schicken soll und lege den ATmega schlafen.
Wäre das eine Möglichkeit??
Die Stellungen, die der ATmega einstellen soll, habe ich vorher am
Computer berechnet und in Strukturen abgespeichert.


Ich habe mir auch mal den C-Code von diesem Link angeschaut:
www.nrel.gov/docs/fy06osti/34302.pdf   Wow, dass ist ganz schön heftig
und ich nehme an, dass man sowas nicht mit einem Atmega machen kann.
Aber könnte ich die Berechnung hier
http://de.wikipedia.org/wiki/Sonnenstand in einen C-Code umschreiben
und auf den Mikrocontroller spielen, oder kann der keinen Sinus
berechnen? (sorry für so dumme Fragen)

Es wäre halt schöner, wenn ich auf dem Atmega die Koordinaten berechnen
könnte.

von inoffizieller WM-Rahul (Gast)


Lesenswert?

>oder kann der keinen Sinus berechnen?

Man könnte den Sinus in eine Tabelle (lookuptable) schreiben...

Die Uhr kannst du auch mit dem AVR realisieren. Der würde sich in
regelmässigen kurzen Abständen dann kurz wecken lassen, die Uhr
weiterzählen, gucken, ob der "Wecker klingelt, und sich wieder
schlafen legen, wenn noch Zeit ist, sonst halt die Solarzelle
weiterbewegen, Wecker stellen und wieder schlafen legen.
Wenn man den AVR aber sowieso regelmässig wecken lässt, könnte man auch
gleich noch eine automatische (standortunabhängige) Nachführung
realisieren...

von einachser (Gast)


Lesenswert?

Wenn ich auch was anmerken darf:

Die passive Nachführung funzt etwa so: Es ist Kühlmittel in zwei Tanks
links und rechts angebracht, die Tanks sind einfach nur Rohre und mit
einem dünnen Rohr verbunden. An der Seite sind Bleche über den Tanks,
so daß sie teilweise abgeschattet werden. Steht das ganze nun nicht
senkrecht zur Sonne, bekommt der Tank der tiefer steht mehr Sonne ab,
das Kühlmittel wird wärmer und auf die andere Seite gedrückt.
Das funzt allerdings in D nur mässig weil man ordentliche Sonne dafür
braucht.

Ansonsten ist bei einer aktiven Nachführung die zweite Achse Blödsinn,
das bringt maximal 3-5% mehr. Dafür ist der Aufwand viel höher und das
Ganze wird anfälliger. Lohnt nicht.

Die beste Auslegung ist eine geneigte Achse.

von Peter Fischer (Gast)


Lesenswert?

Bei der Größe eines Projektes würd ich mir überlegen, ob man es nicht in
einzelne, gut testbare Module aufspaltet.

Ich weiß nicht, wie groß die machanische Anlage werden soll, aber ab
einer gewissen Größe sind so Sachen wie Rampensteuerung für die
Getriebemotoren absolut sinnvoll, um
Flattern/Resonanz/Drehmomentspitzen gar nicht erst aufkommen zu
lassen.

Ich hab mit freertos http://en.wikipedia.org/wiki/FreeRTOS noch nix
gemacht (nehms mir aber immer vor...)

Dann könnte man
* die Uhr
* Wettersensorauswertung
* Anlagenparameter wie Kollektortemperatur
* das Position-Soll von den Sonnenwerten
* das Positions-Soll von den Anlagenparametern (Nachts senkrecht o.ä.)
* die Regelung der Ist-Position
...
getrennt als Tasks laufen lassen.

Sollte man die RTC gg DCF austauschen wollen oder die Regelung der
Ist-Position von digital (ein/aus) auf ordentlich geregelte Rampen
umstellen wollen, geht das sicher einfacher, der Rest ist ja
wiederverwertbar.

Heliostaten bauen wäre z.B. \"nur\" das Austauschen der Regelung
der Ist-Position...

Entwickeln würd ich das im Simulator, bis die Tests vernünfig
ausfallen.

Zur Positionsbestimmung fällt mir im Moment nichts geniales ein,
absolut sollte diese sein (oder will man bei jedem Reset der Steuerung
oder Stromausfall die Anlage an den Nullpunkt zurückfahren sehen?).

Potis sind zum Basteln gut, aber draußen ist von -30° bis 350° (im
schwarz gestrichenen Gehäuse) alles drin, da ändert sich dann auch der
Widerstand und damit die Position. Also wenn, dann pro Achse 2
gegenläufige und Meßbrücke.
Potis sind Widerstände und brauchen Strom, am besten dauernd, weil
sonst die Eigentenperatur sich die ganze Zeit ändert...mit den oben
beschriebenen Problemen, die Schleifkontakte stellen bestimmt auch ein
Langzeitproblem dar.

absolute Encoder wären das beste, aber die Kosten!

Hat das mal wer mit aus Platinen geäzten Drehkondensatoren versucht?
Die könnte man selber fertigen.


Und dann sollte man sich überlegen, ob das ganze nicht doch arg
kompliziert wird...

Mach Dir ein Lastenheft, kategorisiere die Funktionen/Features nach
Notwendig/Optional/Schnickschnack und berücksichtige dabei so Sachen
wie Temperatur/Wetter- Gewitterfestigkeit/Haltbarkeit/Stromversorgung
am Einsatzort, dann fallen viele Sachen von Haus aus weg!

Was man weglassen kann, geht nie kaputt. Gilt besonders für vom
Marketing durchgedrückten Schnickschnack! ;)

von Stefanie (Gast)


Angehängte Dateien:

Lesenswert?

1. Ich kann mir ja vorstellen, dass es für ein Potentiometer unmöglich
ist bei -20°C und +100°C noch linear zu verlaufen, bloss wie soll ich 2
Potentiometer gegenläufig als Messbrücke anschließen (so wie Peter es
gemeint hat)?

2. Ich verstehe es mit den verschiedenen Tasts, die „parallel“
ablaufen, wenn ich ein Betriebssystem habe, doch würde bei folgendem
Beispiel auch ohne gehen:
Ich habe eine Wassertemperatur, die immer zwischen 50°C und 70°C
bleiben soll. Dies wird von dem Mikrocontroller beobachtet.
Gleichzeitig möchte wer über das angeschlossene LCD-Display eingeben,
dass die maximale Wassertemperatur nun 80°C sein darf. Wie funktioniert
das Parallel? Ich denke, wenn wer den Taster am LCD-Display drückt, dass
dann der Interrupt ausgelöst wird und in der Interruptroutine die
Tastatureingabe abgefragt wird. Kann er dann gleichzeitig noch die
aktuelle Temperatur überwachen (wenn der Anwender lange überlegt)?
Ich denke, dass dies bei der Solaranlage kein Problem wäre, da ich ja
eigentlich nur ganz sequentiell Werte abfahren muss und einen
Windsensor kann ich dann doch per Interrupt einlesen, oder??

3. Nun zur Programmierung die Uhrzeit und das Datum lese ich aus einem
DCF aus
Wenn die Berechnung nun auf einem kleinen Mikrocontroller zu schwierig
ist, könnte ich doch vorher die Werte in Tabellen abspeichern z.B. 2
Datensätze pro Monat (Werte aus der angehängten Grafik):
Die Werte würde ich in ein 2 Dimensionales Array schreiben.  zb x[8][2]
  steht für den Wert um 8 Uhr im Februar
Uhrzeit   [1] Jan     [2] Feb   [3] März   [4] April.....
5          120         110          90        75
6
7  Werte für die Position eintragen
8
9
...

Uhrzeit   [1] Jan     [2] Feb   [3] März   [4] April.....
5
6
7             Werte für die Neigung eintragen
8
9            5          15            25          32
...

Kann ich mir eine direkte Umsetzung vom aktuellen Sonnenstand für meine
Potis schreiben? Ich kann mir doch ausrechnen, bei welcher Stellung sie
welchen binären Wert haben und diesen gleich in die "Tabelle
schreiben".

von Peter Fischer (Gast)


Lesenswert?

Kann sein daß ich mich flapsig ausgrdrückt habe...war auch nach ner
langen Nacht.

Schau mal
http://upload.wikimedia.org/wikipedia/de/c/c9/Wheatstone_br%C3%BCckenschaltung.PNG

Die beiden Widerstände (im Bild R(v) und R(x)) sind die Teilwiderstände
deines Sensor-Potentiometers (lokal in deinem Antrieb montiert), die
beiden anderen Widerstände (im Bild R(v) und R(x)) sind die
Teilwiderstände deines Trimm-Potentiometers.

Wenn die beiden Potentiometer baugleich sind, ist die Brücke am
temperaturstabilsten.

Das eine Poti musst Du so einbauen, daß es in der Mitte des Drehwinkels
deines mechanischen Aufbaus den Abgriff grade in der Mitte macht, dann
so festschrauben. Das zweite Poti stellst Du auch auf die Mitte.

(Idealfall:) Beide Potis stehen in der Mitte(der Antrieb Deines
Kippantriebs auch), alle 4 Rs sind gleich groß, Deine Meßgröße U(a)=0.
Der Spannungsbereich geht von -U(e)/2 bis +U(e)/2(linker-rechter
Poti-Vollausschlag)

Was bringt das?

In den Potentiometer fällt ständig Spannung ab -> die werden
_ständig__ __gleichmäßig_ "geheizt" -> wenn der Abgriff einen
anderen Bereich abgreift, dann ist dieser schon vorgewärmt und heizt
sich nicht erst widerstands- und meßwertverfälschend nach).

Du hast 2 baugleiche Potis die sich bei Erwärmung gleich unideal
verhalten, gegeneinandergeschaltet -> temperaturindizierte Änderungen
haben sich ggs. auf.

Ich habe das zweite Poti Trimmpoti getauft, weil du damit (in Grenzen!)
den mittleren Arbeitspunkt (die Winkelhalbierende Deines Drehbereiches
einer Achse) nachstellen kanns ohne das erste Poti (das wahrscheinlich
irgendwo ziemlich fest eingebaut und schwer zugänglich ist, anfasst zu
müssen.

Die Kabel, mit denen Du U(a) in Deine Schaltung führst, bitte
verdrillen.

von Peter Fischer (Gast)


Lesenswert?

Korrektur:

Die beiden Widerstände (im Bild R(v) und R(x)) sind die
Teilwiderstände
deines Sensor-Potentiometers (lokal in deinem Antrieb montiert), die
beiden anderen Widerstände (im Bild R1 und R2) sind die
Teilwiderstände deines Trimm-Potentiometers.

Die Indices der Widerstände R(1) undR(2) waren falsch.

von Stefanie (Gast)


Angehängte Dateien:

Lesenswert?

@Peter: Hab ganz vielen herzlichen Dank für deine ausfühlichen
Erklärungen!!! Ich hab jetzt mal aufgemalt, wie ich es verstanden habe.

Ist es so richtig??

von Profi (Gast)


Lesenswert?

Ich kenne eine weitere genial einfache Methode:
Zwei im 60° bis 90°-Winkel stehende Solarzellen werden antiparallel
geschaltet und mitgeführt. Steht die Anlage genau in der Sonne, heben
sich die beiden Ströme auf. Wandert die Sonne weiter, gibt es eine
Strom- und Spannungsdifferenz. Entweder man verwendet kleine
Solarzellen und verstärkt das Signal, oder man nimmt große und betreibt
damit direkt den DC-Stellmotor.

Zur Höheneinstellung: evtl manuell, einmal im Monat genügt.
Bei Brauchwassererwärmung: evtl. sogar in der Winterstellung lassen, im
Sommer hat man mehr als genug.


Zu den Potis: kann mir jemand erklären, wodurch es zu einer
unterschiedlichen Erwärmung der beiden Teile kommen könnte? Doch nicht
durch den in den ADC fließenden Strom?
Meine Meinung: ein Poti genügt völlig, es geht doch nicht um
Präzisionspositionierung.


Zur Berechnung: Man kann auch mit einem µC sehr komplexe Kalkulationen
durchführen. Es kommt doch hier überhaupt nicht auf die Laufzeit an.

von Stefanie (Gast)


Angehängte Dateien:

Lesenswert?

Ich hab da noch ein paar Fragen zu der Potischaltung, die die aktuelle
Motorstellung erkennen soll.
1. Was, wenn das Potentiometer den Widerstand auf „0“ regeln würde,
dann hätte ich doch einen Kurzschluss in der Schaltung (siehe obiges
Bild)
2. Wie muss ich das Poti dimensionieren?
3. Damit ich Temperatureinflüsse vermeide, bringt es da was das andere
Poti (wie oben angedeutet entgegen zu schalten, oder ist das nur für
den Feinabgleich).
Beim Bild der Wheatstone-Brücke wäre an Punkt C der Schaltung ist der
Eingang des AD-Wandlers angeschlossen.
An Punkt B habe ich nun das Problem, dass ich dort an sich gerne Masse
anschließen würde, doch dann wäre ja R4 kurzgeschlossen, d.h. muss Pkt
B auch in einen AD-Pin geben ich nun die Differenz zu Pkt A bestimmen.
R3/R4 ist dann das Baugleiche Poti wie R2/R1.

von Tex A. (tex)


Lesenswert?

Hallo Stefanie
Ich würde vor der Hardwareentwicklung noch ein paar Gedanken
verschwenden, zu Fragen wie z.B.

Wie groß würde die Abweichung durch die Temperaturdrift sein?
Wie genau wird ein Potentiometer am 10Bit AD-Wandler des AVR meine
Position auflösen?
Wie stark werden sich Störungen auf meiner Messleitung auswirken?
Welche Genauigkeit wird die Mechanik meiner Anlage haben?
Welche Auswirkungen werden die Motoren und deren Induktionsströme auf
mein Meßergebnis haben?
Welche Genauigkeit möchte ich bei der Nachführung überhaupt erreichen?

Dann lösen sich vielleicht viele Probleme ganz von alleine in Luft auf.

von Stefan (Gast)


Lesenswert?

Hallo Stefanie,

vielen Dank für diesen interessanten Thread! Die Solartechnik ist ein
wirklich lohnenswertes Thema. Auch wenn Du inzwischen mit Informationen
"überschüttet" wurdest, will ich auch noch was beitragen.

Wenn man Solarkollektoren nachführt kann man maximal und unter der
Vorraussetzung perfekter Nachführung einachsig ca 30% und zweiachsig
ca. 36% mehr gewinnen gegenüber feststehenden Flächen. Dies gelingt
nur, wenn permanent nachgeführt wird und der Fehlwinkel der
Flächennormalen zur Sonne stets minimal ist. Bei Deinem ersten
Lösungsansatz im Stundentakt grob zweiachsig nachzuführen, kannst Du
schätzungsweise bestenfalls nur 20% gegenüber fester Aufständerung
gewinnen. Also wenig Gewinn im Vergleich zum Aufwand!

Ohne Dich von Deinen ursprünglichen Plänen abbringen zu wollen, schläge
ich Dir folgendes Konzept vor. Verwende eine einachsige Nachführung mit
Uhr als Vorsteuerung und zwei Fotozellen zur Feinsteuerung. Wenn Du
willst kannst Du die Neigung der Fläche von Hand zweimal im Jahr
jeweils zum Frühlings- und zum Herbstanfang auf Sommer- und
Winterbetrieb verstellen. Diese Variante hat den großen Vorteil, daß Du
mit einer simplen Tageszeituhr die grobe Richtung der Sonne mit der
Fläche anfahren kannst. So eine Uhr ließe sich auch ohne RTC in C
programmieren. Bei ATMEL gibt es ein Codebeispiel "3050.C". Wenn Du
noch zwei Fotosensoren zur Feinverstellung nimmst, sind die
Anforderungen an die Ganggenauigkeit der Uhr gering.

Mit der Vorsteuerung und Feineinstellung bist Du auch bei starker
Bewölkung in der Lage der Sonne zu folgen und sofort eingeschwungen,
sofern die Sonne wieder rauskommt. Ob Bewölkung oder Sonne vorherrscht
kannst Du über die Änderungshäufigkeit der Fotosignals ermitteln und so
eine Regelstrategie aufbauen.

Übrigens, was die Temperaturmessung angeht, so ist es in der
Solartechnik üblich zur Kollektortemperatur auch die Temperatur der
umgebenden Luft zu messen.

Ich wünsche Dir viel Erfolg und viel Spaß bei der Umsetzung Deines
Vorhabens. Gruß, Stefan

von Peter (Gast)


Lesenswert?

War grad ein paar Tage nicht im Land. Antworten nicht nur an Stefenie:

"Ist es so richtig??"

Ja, die Potis sind richtig. U(a) liegt zwischen den beiden Klemmen (2)
und (2(spiegelverkehrt)) an, nicht auf Masse bezogen.

"Meine Meinung: ein Poti genügt völlig, es geht doch nicht um
Präzisionspositionierung."

Ich habe mal an einem Hexapod gebastelt. Daß er heute noch nicht fertig
ist (so wie ich mir das wünsche), liegt mit daran, daß die
Linearschiebewiderstände (die ich zur Längenmessung X(0)..X(5)
verwenden wollte) ekelhaften Drift aufweisen.

Und auch durch alles möglich gestört werden (der Gesamtwiderstand ist
m.E. zu hoch, aber bei 290 mm verfahrweg darf man nicht wählerisch
sein...) Gut die Dinger sind sehr viel größer als normale Potis, aber
dafür hatte ich nicht halb so viel Temperaturunterschied auf meinem
Schreibtisch wie es ein in einem Sonnenkollektor verbautes Poti haben
kann. Ich verwendete auch brav geschirmte Litze. Trotzdem waren die
später digitalisierten Meßwerte erst nach 6-7 Minuten "stabil".

Nachdem die (durch den Leitungswasserdruck betriebene) Hydraulik dann
meist Sauerei verursacht hat, ist das Projekt irgendwann auf "Pause"
gesetzt worden.

(Einschub: Der hier http://www.cadsoft.de/people/kls/fltsim/index.htm
ist auch nie fertig geworden...obwohl er (selbst-"linearisierte")
Encoder benutzt hat! Bei Pneumatik hat er allerdings noch mit dem
Losbrechmoment zu kämpfen...)

Wenn irgendwie möglich, dann würde ich Encoder benutzen, wie weiter
oben schon ausgeführt: wenn das Teil groß wird, dann sogar einen
absoluten (eine kleine Zelle kann man schnell mal zwecks Referenzierung
gegen einen Endpositionsschalter fahren lassen, bei einem großeren
Kollektor wird das in endlicher Zeit schwierig bzw extrem nervig, da
der Antrieb im Verhältnis zur bewegten Masse sicher kleiner
dimensioniert ist, als eine von 2 Schrittmotoren zur Demozwecken
bewegte Solarzelle).

Auch ist bei einem Demoprojekt wohl nicht von Ganzjahresbetrieb die
Rede, man kann ganz anders auslegen, als bei etwas, was 30 Jahre
möglichst ohne Störung draussen funktionieren soll, damit es sich
abzahlt.

Mir schien, daß Stefanie aus irgendeinem Grund Potis einsetzen will,
und sie hat uns nicht mitgeteilt, daß es nur zum Ausprobieren ist.
Daraus schloss ich auf Ganzjahresbetrieb, deshalb wies ich auf die
mögliche Temperaturdifferenz hin und schlug den Einsatz 2er Potis in
der Meßbrücke vor.

Zum Vorführen für einen Tag oder 1 Woche reicht ein Poti, da gibt es
wohl keine großen Temperaturunterschiede.

"1. Was, wenn das Potentiometer den Widerstand auf „0“ regeln würde,
dann hätte ich doch einen Kurzschluss in der Schaltung (siehe obiges
Bild)"

Nö. Zwischen +5 und GND fällt immer die gleiche Spannung an R(v)+R(x)
ab. Natürlich darf der Gesamtwiderstand der Potis nichtso klein werden,
daß er die Versorgungsspannung vollständig runterzieht. Aber R(ges)
sollte auch nicht so groß werden, daß der Strom darin klein wird gegen
Eingetrahltes...

"die die aktuelle Motorstellung erkennen soll"

Ich bin sicher Du meinst das gleiche wie ich: die Stellung des
Kollektors (die vom Sensorpoti gemessen wird). Der wird ja sicher durch
irgendein Getriebe bewegt, und dieses vom Motor, und die Stellung dessen
kann uns Wurst sein.

Tja, wie Du das Problem mit Klemme (A) und (B) löst... Ich hatte für
mein Hexapod ein externes serielles A/D-Interface, mit Optokoppler und
potentialfreien Eingängen...da stellte sich das Problem nicht.
Externer Optokoppler..?

Kommt noch was hinzu: die zwischen (A) und (B) abgegriffene Spannung
kann von -5 bis +5 V gehen (einmal R1 und R3 ==0 , andermal R2 und R4
==0)

Hast Du Dir schon ein Lastenheft/Lastenzettel erstellt? Mach es bitte,
und schriftlich. Für Dich. Mit den bewährten Kategorien "Unbedingt
nötig"|"optional"|"Feature/Gimmick". Es hilft den Fokus bewahren
und was man weglassen kann, geht nicht kaputt.

Such mal im Internet nach "Taktscheibe" für absolute Winkelencoder
und nach "Gray-Code", vielleicht brauchst Du ja keine so große
Auflösung und kannst Dir die Dinger selber bauen.

Das Hauptproblem hierbei ist wieder zumeist temperaturbedingt:
Beschlag/Reif/Dreck auf der Taktscheibe, weshalb die käuflichen welchen
alle einem kunstvollen Gehäuse sitzen...und teuer sind.

In den diversen Roboterforen habe ich schon das ein oder andere Mal
selbergebastelte gesehen, aber die waren inkrementell.

Schau mal: http://www.peg.si/electro/angle.html , Winkelencoder
selbstgebaut.

Ein nicht-optischer (mechanischer) absoluter Winkelencoder ist der
Bourns ACE-128
http://www.mercateo.com/p/live~s.0*139-7005258/Drehcodierer_Absolut_EAW0J_B24_AE0128.html
(hab ich hier im Forum gefunden), kostet lt. Mercateo 8.25 € bei Tante
Farnell.

Ist aber lt Datenblatt komisch auszulesen (Datenblatt S.150). Hält
dafür 136 Jahre (bei 1 u/Tag )

Dafür sparst aber Nullpunktschalter und Referenzfahrt und weisst immer
wo du bist, sogar nach einem Reset.

Vielleicht bringt Dich das von den Potis die schon rumzuliegen scheinen
ab...

von Peter (Gast)


Lesenswert?

Hier habe ich ein Programm gefunden, mit dem man Taktscheiben entwerfen
kann: http://users.adelphia.net/~skbosko/Robot_top.htm

Kann das mal bitte wer ausprobieren, ob das was taugt? Ich hab hier
"nur" Linux und Solaris, und da läuft VB nicht besonders gut.

Besonders würd mich interessieren, wie die Druckausgabe auf
Präsentationsfolie ist (ob da Treppenartifakte an den Kanten oder
dergleichen drin sind).

Danke!

von Peter (Gast)


Lesenswert?

Hier hat ein Funkamateur einen Antennenrotor gebaut, mit absolutem
Encoder  mit 0,5° Auflösung, der über die Druckerschnittstelle
ausgelesen wird.

http://www.rrs-web.net/in3her/rotorsys_abs.html

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.