Wii Copter: Unterschied zwischen den Versionen

Aus HeliWiki
Zur Navigation springen Zur Suche springen
(Format der Überschriften korrigiert; Typos; Links wikifiziert; Layout korrigiert)
Zeile 1: Zeile 1:
=WICHTIG=
== Die Idee ==
 
'''Bitte nur Bilder und Texte verwenden an denen ihr auch die Rechte habt, oder deren Verwendung ausdrücklich erlaubt wurde!'''
 
Also nicht einfach einen Text kopieren, man muss sich schon die Arbeit machen den Sachverhalt mit eigenen Worten wieder zu geben.
 
(Dieser Abschnitt dient nur nochmal als Erinnerung und kann ggf. später gelöscht werden)
 
=Die Idee=
Die Grundidee ist es mit günstigen und einfach zu beschaffenden Komponenten einem Multicopter zu bauen.
Die Grundidee ist es mit günstigen und einfach zu beschaffenden Komponenten einem Multicopter zu bauen.


Dabei ist das ursprüngliche Projekt als Open-Source gehalten, so das es immer weitere Varianten gibt, wie das Projekt Ardu-Copter. Die Website mit dem Projekt, auf das sich hierbezogen wird, findet sich im Internet unter http://www.multiwii.com
Dabei ist [http://www.multiwii.com das ursprüngliche Projekt] als Open-Source gehalten, so dass es immer weitere Varianten gibt, wie z.B. das Projekt Ardu-Copter.


Obwohl auch optional eine Stabilisierung für eine Kamera und die Möglichkeit einer Höhenregelung über einen Luftdrucksensor vorgesehen ist liegt der  
Obwohl auch optional eine Stabilisierung für eine Kamera und die Möglichkeit einer Höhenregelung über einen Luftdrucksensor vorgesehen ist, liegt der Hauptanwendungsbereich bei der Fun-Fliegerei mit der Möglichkeit gelegentlich eine Kamera mit zu nehmen, aber auf Grund der fehlenden GPS-Navigation wohl weniger im Bereich der Luftbildfotografie.
Hauptanwendungsbereich bei der Fun-Fliegerei mit der Möglichkeit gelegentlich eine Kamera mit zu nehmen, aber auf Grund er fehlenden GPS-Navigation wohl weniger im Bereich der Luftbildfotografie.


=Komponenten=
== Komponenten ==
 
=== Arduino ===
== Arduino ==
Herzstück dieser Multicopter-Steuerung bildet das Arduino-Board, für gewöhnlich kommt das "Arduino Pro Mini 328 - 5V/16MHz" zum Einsatz.
Herzstück dieser Multicopter-Steuerung bildet das Arduino-Board, für gewöhnlich kommt das "Arduino Pro Mini 328 - 5V/16MHz" zum Einsatz.
Alternativ kann auch das "Arduino Nano V3.0" eingesetzt werden, was schon eine USB-Schnittstelle zum programmieren mitbringt oder das "Seeeduino Mega" welches mehr Ein- und Ausgänge zur Verfügung stellt.
Alternativ kann auch das "Arduino Nano V3.0" eingesetzt werden, was schon eine USB-Schnittstelle zum programmieren mitbringt oder das "Seeeduino Mega" welches mehr Ein- und Ausgänge zur Verfügung stellt.


Die Arduino-Board werden i.d.R. mit betriebsfertigem Bootloader ausgeliefert, es muß lediglich die Firmware aufgespielt werden und die Parameter für den Betrieb eignestellt werden ( Mittels GUI-Software [ GUI : Grafical User Interface ]).
Die Arduino-Board werden i.d.R. mit betriebsfertigem Bootloader ausgeliefert, es muß lediglich die Firmware aufgespielt werden und die Parameter für den Betrieb eingestellt werden (Mittels GUI-Software (GUI: Grafical User Interface)).


Die nötige Software findet man unter http://www.multiwii.com
Die nötige Software findet man unter http://www.multiwii.com


== Wii Motion Plus ==
=== Wii Motion Plus ===
Das Wii-Motion Plus ist ein Zubehörteil für die Wii-Spielekonsole das neben einem 3-Achsen-Gyroskop auch einen Microchip mit A/D-Wandler beinhaltet der die Sensoren ausliest und die Werte über einen I²C-Bus bereitstellt.
Das Wii-Motion Plus ist ein Zubehörteil für die Wii-Spielekonsole das neben einem 3-Achsen-Gyroskop auch einen Microchip mit A/D-Wandler beinhaltet der die Sensoren ausliest und die Werte über einen I²C-Bus bereitstellt.


[[Bild:Wii_Motion_Plus.jpg|200px]]
[[Bild:Wii_Motion_Plus.jpg|200px]]


== Wii Nunchuck (optional) ==
=== Wii Nunchuck (optional) ===
Ebenfalls ein Zubehörteil für die Wii-Spielekonsole das neben dem für den Betrieb im Wii-Copter überflüssigen Steuerstick einen 3-Achs-Beschleunigungssensor, der ebenfalls über den I²C-Bus abgefragt wird, bereitstellt.
Ebenfalls ein Zubehörteil für die Wii-Spielekonsole das neben dem für den Betrieb im Wii-Copter überflüssigen Steuerstick einen 3-Achs-Beschleunigungssensor, der ebenfalls über den I²C-Bus abgefragt wird, bereitstellt.


Zeile 40: Zeile 29:
Die Vorteile des BMA020 liegen im Vergleich zu anderen Beschleunigungssensoren wie dem ADXL345 und BMA180 im günstigerem Preis und darin das die Versorgungsspannung vom Regler-BEC verwendet werden kann. Die MultiWii Software unterstützt die oben genannten ACC ab der Version 1.6pre.
Die Vorteile des BMA020 liegen im Vergleich zu anderen Beschleunigungssensoren wie dem ADXL345 und BMA180 im günstigerem Preis und darin das die Versorgungsspannung vom Regler-BEC verwendet werden kann. Die MultiWii Software unterstützt die oben genannten ACC ab der Version 1.6pre.


== Brushless-Regler (ESC) ==
=== Brushless-Regler (ESC) ===
=== Einstellungen für Multiwii ===
==== Einstellungen für Multiwii ====
=== Alternative Firmware für ESC ===
==== Alternative Firmware für ESC ====
Mittlerweile hat sich herum gesprochen, dass es alternative Firmwares für die ESCs gibt.
Mittlerweile hat sich herum gesprochen, dass es alternative Firmwares für die ESCs gibt.
Durch das Flashen einer alternativen Firmware ist der Regler in der Lage durch die höhere Auflösung auf dem Reglerweg den Motor feiner ansteuern zu können.
Durch das Flashen einer alternativen Firmware ist der Regler in der Lage durch die höhere Auflösung auf dem Reglerweg den Motor feiner ansteuern zu können.
Speziell wird hier auf die alternative Firmware von [https://github.com/sim-/tgy Simon Kirby@Github] eingegangen.
Speziell wird hier auf die alternative Firmware von [https://github.com/sim-/tgy Simon Kirby@Github] eingegangen.


=== Tutorial: Pimp my ESC mit Simon´s Software ===
==== Tutorial: Pimp my ESC mit Simons Software ====
*;Was wird benötigt?
*; Was wird benötigt?
:unterstützter ESC mit Mikrocontroller (µC) [http://www.atmel.com/Images/doc8159.pdf Atmega8A] bzw. [http://www.atmel.com/Images/doc2486.pdf Atmega8]
: Unterstützter ESC mit Mikrocontroller (µC) [http://www.atmel.com/Images/doc8159.pdf Atmega8A] bzw. [http://www.atmel.com/Images/doc2486.pdf Atmega8]
:AVR ISP Programmer (zum erstmaligen Flashen des µCs)
: AVR ISP Programmer (zum erstmaligen Flashen des µCs)
:Möglichkeit die Pins vom µC mit Programmer zu verbinden (Löten, Nagel-Board usw.)
: Möglichkeit die Pins vom µC mit Programmer zu verbinden (Löten, Nagel-Board usw.)
:Software zum flashen: [http://lazyzero.de/en/modellbau/kkmulticopterflashtool KKmulticopter Flash Tool]
: Software zum Flashen: [http://lazyzero.de/en/modellbau/kkmulticopterflashtool KKmulticopter Flash Tool]
:[https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE#gid=0 Liste aller flashbaren ESCs] um die richtige Hex-Datei flashen zu können
: [https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE#gid=0 Liste aller flashbaren ESCs] um die richtige Hex-Datei flashen zu können


*;Verbinden von µC und Programmer
*; Verbinden von µC und Programmer
:es müssen MOSI, MISO, SCK, RST & GND zwischen µC und Programmer verbunden sein
: Es müssen MOSI, MISO, SCK, RST & GND zwischen µC und Programmer verbunden sein
:d.h. MOSI mit MOSI, MISO mit MISO, SCK mit SCK, RST mit RST und GND mit GND
: D.h. MOSI mit MOSI, MISO mit MISO, SCK mit SCK, RST mit RST und GND mit GND
:'''VCC am µC nicht anschließen, sondern den ESC mit einem Akku über die Akkuanschlusskabel versorgen'''
: '''VCC am µC nicht anschließen, sondern den ESC mit einem Akku über die Akkuanschlusskabel versorgen'''
:[[Datei:Atmega8_pinout.png]]
: [[Datei:Atmega8_pinout.png]]


*;Flashen des ESCs mit Hilfe des KKmulticopter Flash Tools inklusive Bootlader-Flash
*; Flashen des ESCs mit Hilfe des KKmulticopter Flash Tools inklusive Bootlader-Flash
:richtige Hex-Datei aus der [https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE#gid=0 Liste] ausfindig machen
: Richtige Hex-Datei aus der [https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE#gid=0 Liste] ausfindig machen
:Foto vom Flash Tool mit entsprechenden Voreinstellungen<br />[[Datei:KK FlashTool.png]]
: Foto vom Flash Tool mit entsprechenden Voreinstellungen<br />[[Datei:KK FlashTool.png]]
:richtige Hex-Datei öffen entsprechend der oben genannten Liste
: Richtige Hex-Datei öffen entsprechend der oben genannten Liste


== barometrischer Drucksensor (optional) ==
=== Barometrischer Drucksensor (optional) ===
Will man das der Multicopter selbstständig die Höhe halten kann muss man diese messen, dazu wird der "BMP085" verwendet, der wie auch die anderen Sensoren über den IC2-Bus abgefragt wird.
Will man das der Multicopter selbstständig die Höhe halten kann muss man diese messen, dazu wird der "BMP085" verwendet, der wie auch die anderen Sensoren über den IC2-Bus abgefragt wird.
Da dieser Sensor allerdings nur für Ca. 3,3V Betriebsspannug ausgelegt ist, aber die restliche Elektronik mit 5V arbeitet muss man entweder die Spannung über Dioden herabsetzen oder man setzt einen Pegelwandler (z.B. "Sparkfun BOB-08745") ein.
Da dieser Sensor allerdings nur für Ca. 3,3V Betriebsspannug ausgelegt ist, aber die restliche Elektronik mit 5V arbeitet muss man entweder die Spannung über Dioden herabsetzen oder man setzt einen Pegelwandler (z.B. "Sparkfun BOB-08745") ein.


=Aufbau=
== Aufbau ==
== Allgemein ==
=== Allgemein ===
Grundverdrahtung eines Quadro Wii Copters
Grundverdrahtung eines Quadro Wii Copters


[[Bild:Grundverdrahtung.jpg]]
[[Bild:Grundverdrahtung.jpg]]


Die Verbindung zum Empfänger erfolgt mit Einzelleitungen, + und - des Empfängers werden an einem Ausgang abgegriffen und mit dem Arduino-Board verbunden. Die Verbindung des Wii Motion Plus ( WMP ) erfolgt mit 4 Leitungen ( Vcc, Gnd, Data, Clock ). Wird ein Nunchuk ( NK ) oder BMA020 Beschleunigungssensor verwendet, so wird dieser mit 4 Leitungen mit dem WMP verbunden. Durch den I²C-Bus, der durchgeschleift ist, erfolgt mittels der Firmware ( Sketch ) im Arduino die Auswertung aller am I²C-Bus angeschlossenen Sensoren.
Die Verbindung zum Empfänger erfolgt mit Einzelleitungen, + und - des Empfängers werden an einem Ausgang abgegriffen und mit dem Arduino-Board verbunden. Die Verbindung des Wii Motion Plus (WMP) erfolgt mit 4 Leitungen (Vcc, Gnd, Data, Clock). Wird ein Nunchuk (NK) oder BMA020 Beschleunigungssensor verwendet, so wird dieser mit 4 Leitungen mit dem WMP verbunden. Durch den I²C-Bus, der durchgeschleift ist, erfolgt mittels der Firmware (Sketch) im Arduino die Auswertung aller am I²C-Bus angeschlossenen Sensoren.


Genaue Schaltpläne für die Verdrahtung der verschiedenen Modellmöglichkeiten ( Quad, Tri, Y6, .... ) findet man unter http://www.rcgroups.com/forums/showthread.php?t=1340771
Genaue Schaltpläne für die Verdrahtung der verschiedenen Modellmöglichkeiten (Quad, Tri, Y6, usw.) findet man bei [http://www.rcgroups.com/forums/showthread.php?t=1340771 rcgroups.com].


==Tricopter==
=== Tricopter ===
(hier soll was zum Anschluss der Regler und des Servos hin, incl. der möglichen Optionen was Zusatzfunktionen angeht )
(hier soll was zum Anschluss der Regler und des Servos hin, incl. der möglichen Optionen was Zusatzfunktionen angeht)
==Quadrocopter==
 
=== Quadrocopter ===
(sinngemäß wie Tricopter)  
(sinngemäß wie Tricopter)  
==Hexacopter==
 
=== Hexacopter ===
(sinngemäß wie Tricopter)  
(sinngemäß wie Tricopter)  
==Y-Hexacopter==
 
=== Y-Hexacopter ===
(sinngemäß wie Tricopter)  
(sinngemäß wie Tricopter)  
==Octocopter==
 
=== Octocopter ===
(sinngemäß wie Tricopter)
(sinngemäß wie Tricopter)


=Konfiguration=
== Konfiguration ==
(hier soll z.B was hin zum einstellen der Gaswerte ,des Senders, ...)  
(hier soll z.B was hin zum einstellen der Gaswerte, des Senders, ...)  


=Setup=
== Setup ==
(hier soll was hin zum einstellen der Regelparameter & Co)


(hier soll was hin zum einstellen der Regelparameter & Co)
=== PID - Was ist das, was macht es ===
==PID - Was ist das, was macht es==
Die PID-Werte (engl: proportional–integral–derivative, deu: proportional-integrierend-verzögernd) besteht aus den Anteilen des P-Gliedes, des I-Gliedes und des D-Gliedes. Diese drei Werte dienen zum Erfassen von sämtlichen für das System messbaren Einflüssen.<br/>
Die PID-Werte (engl: proportional–integral–derivative, deu: proportional-integrierend-verzögernd) besteht aus den Anteilen des P-Gliedes, des I-Gliedes und des D-Gliedes. Diese drei Werte dienen zum Erfassen von sämtlichen für das System messbaren Einflüssen.<br/>
Im Fall eines Multirotorsystems sind die Einflüsse Winkelveränderungen (Gyro), Beschleunigungen (ACC und Magnetometer) und Druckveränderungen (Barometer) existent, ständig durch die Sensoren zu erkennen und durch die PID-Regler auf die Lage stabilisierend zu wirken, um dabei ein nahezu schwingfreies Verhalten zu zeigen.<br/>
Im Fall eines Multirotorsystems sind die Einflüsse Winkelveränderungen (Gyro), Beschleunigungen (ACC und Magnetometer) und Druckveränderungen (Barometer) existent, ständig durch die Sensoren zu erkennen und durch die PID-Regler auf die Lage stabilisierend zu wirken, um dabei ein nahezu schwingfreies Verhalten zu zeigen.<br/>
Jedes Multirotorsystem reagiert durch seinen mechanischen und elektrischen Aufbau auf Einflüsse anders und benötigt daher eine ganz individuelle Einstellung.
Jedes Multirotorsystem reagiert durch seinen mechanischen und elektrischen Aufbau auf Einflüsse anders und benötigt daher eine ganz individuelle Einstellung.


===P-Wert===
==== P-Wert ====
 
P ist die Korrekturkraft die den Copter wieder in seine Ausgangsposition bringt. Je höher der P-Wert ist, desto höher ist die Kraft mit der der Copter wieder in seine Ausgangsposition zurückkehren will.
P ist die Korrekturkraft die den Copter wieder in seine Ausgangsposition bringt. Je höher der P-Wert ist, desto höher ist die Kraft mit der der Copter wieder in seine Ausgangsposition zurückkehren will.


Zeile 115: Zeile 107:
Bei Coptern mit 35 bis 40cm Achsabstand sind P-Werte von 3,0 bis 3,5 auf ROLL und PITCH empfehlenswert. Für weniger als 30cm Achsabstand sollte der Wert unter 3,0 liegen.
Bei Coptern mit 35 bis 40cm Achsabstand sind P-Werte von 3,0 bis 3,5 auf ROLL und PITCH empfehlenswert. Für weniger als 30cm Achsabstand sollte der Wert unter 3,0 liegen.


===I-Wert===
==== I-Wert ====
 
I ist der Zeitraum, bei dem die Winkel- und/oder Änderung abgetastet und gemittelt wird. Der Ausschlag der Korrekturkraft wird somit bestimmt, um zur Ausgangsposition zurück zukehren.  
I ist der Zeitraum, bei dem die Winkel- und/oder Änderung abgetastet und gemittelt wird. Der Ausschlag der Korrekturkraft wird somit bestimmt, um zur Ausgangsposition zurück zukehren.  


Zeile 128: Zeile 119:
Werte zwischen 0,010 und 0,050 sind in der Realität normal. Wert mit maximal 0,005 erhöhen oder senken.
Werte zwischen 0,010 und 0,050 sind in der Realität normal. Wert mit maximal 0,005 erhöhen oder senken.


===D-Wert===
==== D-Wert ====
 
D ist die Geschwindigkeit mit der der Copter in seine ursprüngliche Position zurückkehren soll. Dies spielt auch mit der Wirkung des P-Wertes zusammen. Der Wert bei D ist ein Negativwert!
D ist die Geschwindigkeit mit der der Copter in seine ursprüngliche Position zurückkehren soll. Dies spielt auch mit der Wirkung des P-Wertes zusammen. Der Wert bei D ist ein Negativwert!


Zeile 141: Zeile 131:
Werte zwischen 5 und 25 sind als normal anzusehen.
Werte zwischen 5 und 25 sind als normal anzusehen.


==Spannungsüberwachung==
=== Spannungsüberwachung ===
Für das Ausrechnen der ADC-Werte der Spannungsüberwachung gibt es eine kleine [http://www.rc-heli-fan.org/download/file.php?id=94426 Excel-Tabelle]. In der Tabelle einfach die gewünschte Warnschwelle (Spannung) eintragen und der ADC-Wert wird ausgerechnet. Ebenso ist eine Berechnung der Spannung eines ADC-Wertes möglich.


Für das Ausrechnen der ADC-Werte der Spannungsüberwachung gibt es eine kleine Exceltabelle. In der Tabelle einfach die gewünschte Warnschwelle (Spannung) eintragen und der ADC-Wert wird ausgerechnet. Ebenso ist eine Berechnung der Spannung eines ADC-Wertes möglich. [http://www.rc-heli-fan.org/download/file.php?id=94426 Hier] ist diese Datei zu finden.
== Betrieb ==
=== FAQ ===
==== Regler schalten nicht scharf, obwohl die Hardware die Scharfschaltung signalisiert ====
''Mögliche Ursachen:''
* Geberweg ist nicht korrekt eingestellt
** zunächst mit Hilfe der GUI alle Geberwege prüfen und am Sender auf 1000µs (Low), 1500 µs (Mid), 2000µs (High) einstellen (TravelAdjus / Endpunkte bzw. Mittenverstellung / Subtrim)
* Gasweg des Reglers paßt nicht zu dem eingestellten Bereich von 1000...2000 µs
** Regler neu einlernen
* Regler ab Werk fehlerbehaftet, z.b. keine oder fehlerhafte Firmware.
** Schließt man am einfachsten aus, indem man die Regler und Motoren VOR der Verwendung im Copter provisorisch verdrahtet und direkt am Empfänger überprüft. Dabei empfiehlt es sich, vorher bereits die Sendereinstellungen (Geberweg-Abgleich) durchgeführt zu haben. Bei neuen Projekten kann man einfach einen Modellspeicher aufrufen, auf dem bereits ein Multicopter eingerichtet ist (dort hat man i.d.r. bereits die Geberwege abgeglichen).


=Betrieb=
==== Permanentes diagonales Zittern des Copters im Schwebeflug, unregelmäßige Gasannahme, schwankende Drehzahlen ====
(Hier sollen allgemeine Hinweise zum betrieb hin )
''Ursache:'' Die verwendeten Regler bzw. deren Firmware vertragen sich nicht mit der Ansteuerfrequenz von 490 Hz.


'''=FAQ= Frequently Asked Question ( Häufig gestellte Fragen )'''
''Lösung:'' Kompatible Regler verwenden oder, sofern möglich, mit [[Wii_Copter#Tutorial:_Pimp_my_ESC_mit_Simons_Software|Simon-K.-Firmware]] flashen. Eine Übersicht über dafür geeignete Regler findet man [https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE#gid=0 hier].


Ein komplettes Workaround zum Regler-Flashen findet sich im [http://www.rc-heli-fan.org/post1408183.html#p1408183 Forum].


'''---'''
==== Wie programmiere ich die verwendeten Regler? ====
 
''Lösung:''
''Problem :'' Regler schalten nicht scharf, obwohl die Hardware die Scharfschaltung signalisiert
 
Mögliche Ursachen :
- Geberweg ist nicht korrekt eingestellt - zunächst mit Hilfe der GUI alle Geberwege prüfen und am Sender auf 1000µs ( Low ) , 1500 µs ( Mid ) , 2000µs (High) einstellen ( TravelAdjus / Endpunkte bzw. Mittenverstellung / Subtrim )
 
- Gasweg des Reglers paßt nicht zu dem eingestellten Bereich von 1000...2000 µs - Regler neu einlernen !
 
- Regler ab Werk fehlerbehaftet, z.b. keine oder fehlerhafte Firmware. Schließt man am einfachsten aus, indem man die Regler und Motoren VOR der Verwendung im Copter provisorisch verdrahtet und direkt am Empfänger überprüft. Dabei empfiehlt es sich, vorher bereits die Sendereinstellungen ( Geberweg-Abgleich ) durchgeführt zu haben. Bei neuen Projekten kann man einfach einen Modellspeicher aufrufen, auf dem bereits ein Multicopter eingerichtet ist ( dort hat man i.d.r. bereits die geberwege abgeglichen ).
 
'''---'''
 
''Problem :''permanentes Diagonales zittern / "wobbeln" des Copters im Schwebeflug, unregelmäßige Gasannahme, schwankende Drehzahlen
 
Ursache:
Die verwendeten Regler bzw. deren Firmware vertragen sich nicht mit der Ansteuerfrequenz von 490 Hz. Kompatible Regler verwenden oder, sofern möglich, mit Simon-K.-Firmware flashen. Die Firmware findet sich unter https://github.com und ist Donationware. Eine Übersicht über dafür geeignete regler findet man unter https://docs.google.com/spreadsheet/ccc?key=0AhR02IDNb7_MdEhfVjk3MkRHVzhKdjU1YzdBQkZZRlE#gid=0
 
'''Ein komplettes Workaround zum Regler-Flashen findet sich im Beitrag :''' http://www.rc-heli-fan.org/post1408183.html#p1408183
 
'''---'''
 
''Problem :''
wie programmiere ich die verwendeten Regler ?
 
''Lösung :''
Zunächst Grundeinstellung (Bremse: aus, Bat. Typ: Ni; Cut off: soft Cut; Cut off Volt: low; Start Mode: normal; Timing: entsprechend dem verw. Motor; Governer Mode: aus; PWM Frq: high) einstellen. Dazu je nach Typ entweder nach Regler-Anleitung mittels Setup-Funktion oder Programmierkarte verwenden.
Zunächst Grundeinstellung (Bremse: aus, Bat. Typ: Ni; Cut off: soft Cut; Cut off Volt: low; Start Mode: normal; Timing: entsprechend dem verw. Motor; Governer Mode: aus; PWM Frq: high) einstellen. Dazu je nach Typ entweder nach Regler-Anleitung mittels Setup-Funktion oder Programmierkarte verwenden.
   
   
Sind die Regler nicht so umfangreich zu proggen auf jeden Fall die Bremse raus nehmen!
Sind die Regler nicht so umfangreich zu proggen auf jeden Fall die Bremse raus nehmen!


1. Gas Kanal der Anlage über die Gui auf 1000µs bis 2000µs einstellen (bei Graupner ist es meist ca. 125% Servoweg)
# Gas Kanal der Anlage über die GUI auf 1000µs bis 2000µs einstellen (bei Graupner ist es meist ca. 125% Servoweg)
2. Regler am Gas Servo- Ausgang in einen normalen Empfänger stecken.
# Regler am Gas Servo- Ausgang in einen normalen Empfänger stecken.
3. Gas Knüppel auf Vollgas stellen.
# Gas Knüppel auf Vollgas stellen.
4. Regler mit Akku verbinden.
# Regler mit Akku verbinden.
5. Initialisierung des Reglers abwarten (meist ein Piep od. Tonfolge)
# Initialisierung des Reglers abwarten (meist ein Piep od. Tonfolge)
6. Gas-Knüppel in 0-Gas Stellung bringen (zügig und gleichmässige Bewegung) und Quittungston abwarten.
# Gas-Knüppel in 0-Gas Stellung bringen (zügig und gleichmässige Bewegung) und Quittungston abwarten.
7. Akku abstecken.
# Akku abstecken.
 
Zur Kontrolle den Akku nochmal anstecken und den gleichmässigen Anlauf (über einen Adapter für alle Regler falls vorhanden) am normalen Empfänger - Ausgang testen und mit den anderen Reglern vergleichen.
 
'''---'''
 
 
 
 
( to be continued )
 
=Links=
==RHF-Forum==
Der WII-Copter (Selbstbau-Projekt) http://www.rc-heli-fan.org/viewtopic.php?f=255&t=79362
 
Hauptseite des Ursprungs-Projektes mit Links zu verwendeten Firmware und Prog.-Software http://www.multiwii.com
 
LED-Steuerung MWClight http://www.rc-heli-fan.org/viewtopic.php?f=255&t=82517
 
MultiWiiKopter-Konfigurationsprogramm für Arduino (LCD) http://www.rc-heli-fan.org/viewtopic.php?f=255&t=80336


Baudokumentation - Mini Wii-Copter http://www.rc-heli-fan.org/viewtopic.php?f=255&t=82034
Zur Kontrolle den Akku nochmal anstecken und den gleichmässigen Anlauf (über einen Adapter für alle Regler falls vorhanden) am normalen Empfänger-Ausgang testen und mit den anderen Reglern vergleichen.


Baudokumentation - Wii-Y6 http://www.rc-heli-fan.org/viewtopic.php?f=255&t=81576
== Links ==
* [http://www.multiwii.com Hauptseite des Ursprungs-Projektes] mit Links zu verwendeten Firmware und Prog.-Software
* [http://openkopterframe.svn.sourceforge.net CAD-Dateien verschiedener Rahmen] (Opensource)


==Rahmen==
=== RHF-Forum ===
CAD-Dateien verschiedener Rahmen (Opensource)   http://openkopterframe.svn.sourceforge.net/
* [http://www.rc-heli-fan.org/viewtopic.php?f=255&t=79362 Der WII-Copter (Selbstbau-Projekt)]
* [http://www.rc-heli-fan.org/viewtopic.php?f=255&t=82517 LED-Steuerung MWClight]
* [http://www.rc-heli-fan.org/viewtopic.php?f=255&t=80336 MultiWiiKopter-Konfigurationsprogramm für Arduino (LCD)]
* [http://www.rc-heli-fan.org/viewtopic.php?f=255&t=82034 Baudokumentation - Mini Wii-Copter]
* [http://www.rc-heli-fan.org/viewtopic.php?f=255&t=81576 Baudokumentation - Wii-Y6]

Version vom 23. Juli 2012, 08:39 Uhr

Die Idee

Die Grundidee ist es mit günstigen und einfach zu beschaffenden Komponenten einem Multicopter zu bauen.

Dabei ist das ursprüngliche Projekt als Open-Source gehalten, so dass es immer weitere Varianten gibt, wie z.B. das Projekt Ardu-Copter.

Obwohl auch optional eine Stabilisierung für eine Kamera und die Möglichkeit einer Höhenregelung über einen Luftdrucksensor vorgesehen ist, liegt der Hauptanwendungsbereich bei der Fun-Fliegerei mit der Möglichkeit gelegentlich eine Kamera mit zu nehmen, aber auf Grund der fehlenden GPS-Navigation wohl weniger im Bereich der Luftbildfotografie.

Komponenten

Arduino

Herzstück dieser Multicopter-Steuerung bildet das Arduino-Board, für gewöhnlich kommt das "Arduino Pro Mini 328 - 5V/16MHz" zum Einsatz. Alternativ kann auch das "Arduino Nano V3.0" eingesetzt werden, was schon eine USB-Schnittstelle zum programmieren mitbringt oder das "Seeeduino Mega" welches mehr Ein- und Ausgänge zur Verfügung stellt.

Die Arduino-Board werden i.d.R. mit betriebsfertigem Bootloader ausgeliefert, es muß lediglich die Firmware aufgespielt werden und die Parameter für den Betrieb eingestellt werden (Mittels GUI-Software (GUI: Grafical User Interface)).

Die nötige Software findet man unter http://www.multiwii.com

Wii Motion Plus

Das Wii-Motion Plus ist ein Zubehörteil für die Wii-Spielekonsole das neben einem 3-Achsen-Gyroskop auch einen Microchip mit A/D-Wandler beinhaltet der die Sensoren ausliest und die Werte über einen I²C-Bus bereitstellt.

Wii Motion Plus.jpg

Wii Nunchuck (optional)

Ebenfalls ein Zubehörteil für die Wii-Spielekonsole das neben dem für den Betrieb im Wii-Copter überflüssigen Steuerstick einen 3-Achs-Beschleunigungssensor, der ebenfalls über den I²C-Bus abgefragt wird, bereitstellt.

Wii-Nunchuk.jpg

Weil es mit dem Sensor aus dem Nunchuck öfters zu Problemen gekommen ist, wird alternativ dazu der 3-Achsen-Beschleunigungssensor "BOSCH BMA020" der zudem auch noch günstiger ist.

Die Vorteile des BMA020 liegen im Vergleich zu anderen Beschleunigungssensoren wie dem ADXL345 und BMA180 im günstigerem Preis und darin das die Versorgungsspannung vom Regler-BEC verwendet werden kann. Die MultiWii Software unterstützt die oben genannten ACC ab der Version 1.6pre.

Brushless-Regler (ESC)

Einstellungen für Multiwii

Alternative Firmware für ESC

Mittlerweile hat sich herum gesprochen, dass es alternative Firmwares für die ESCs gibt. Durch das Flashen einer alternativen Firmware ist der Regler in der Lage durch die höhere Auflösung auf dem Reglerweg den Motor feiner ansteuern zu können. Speziell wird hier auf die alternative Firmware von Simon Kirby@Github eingegangen.

Tutorial: Pimp my ESC mit Simons Software

  • Was wird benötigt?
Unterstützter ESC mit Mikrocontroller (µC) Atmega8A bzw. Atmega8
AVR ISP Programmer (zum erstmaligen Flashen des µCs)
Möglichkeit die Pins vom µC mit Programmer zu verbinden (Löten, Nagel-Board usw.)
Software zum Flashen: KKmulticopter Flash Tool
Liste aller flashbaren ESCs um die richtige Hex-Datei flashen zu können
  • Verbinden von µC und Programmer
Es müssen MOSI, MISO, SCK, RST & GND zwischen µC und Programmer verbunden sein
D.h. MOSI mit MOSI, MISO mit MISO, SCK mit SCK, RST mit RST und GND mit GND
VCC am µC nicht anschließen, sondern den ESC mit einem Akku über die Akkuanschlusskabel versorgen
Atmega8 pinout.png
  • Flashen des ESCs mit Hilfe des KKmulticopter Flash Tools inklusive Bootlader-Flash
Richtige Hex-Datei aus der Liste ausfindig machen
Foto vom Flash Tool mit entsprechenden Voreinstellungen
KK FlashTool.png
Richtige Hex-Datei öffen entsprechend der oben genannten Liste

Barometrischer Drucksensor (optional)

Will man das der Multicopter selbstständig die Höhe halten kann muss man diese messen, dazu wird der "BMP085" verwendet, der wie auch die anderen Sensoren über den IC2-Bus abgefragt wird. Da dieser Sensor allerdings nur für Ca. 3,3V Betriebsspannug ausgelegt ist, aber die restliche Elektronik mit 5V arbeitet muss man entweder die Spannung über Dioden herabsetzen oder man setzt einen Pegelwandler (z.B. "Sparkfun BOB-08745") ein.

Aufbau

Allgemein

Grundverdrahtung eines Quadro Wii Copters

Grundverdrahtung.jpg

Die Verbindung zum Empfänger erfolgt mit Einzelleitungen, + und - des Empfängers werden an einem Ausgang abgegriffen und mit dem Arduino-Board verbunden. Die Verbindung des Wii Motion Plus (WMP) erfolgt mit 4 Leitungen (Vcc, Gnd, Data, Clock). Wird ein Nunchuk (NK) oder BMA020 Beschleunigungssensor verwendet, so wird dieser mit 4 Leitungen mit dem WMP verbunden. Durch den I²C-Bus, der durchgeschleift ist, erfolgt mittels der Firmware (Sketch) im Arduino die Auswertung aller am I²C-Bus angeschlossenen Sensoren.

Genaue Schaltpläne für die Verdrahtung der verschiedenen Modellmöglichkeiten (Quad, Tri, Y6, usw.) findet man bei rcgroups.com.

Tricopter

(hier soll was zum Anschluss der Regler und des Servos hin, incl. der möglichen Optionen was Zusatzfunktionen angeht)

Quadrocopter

(sinngemäß wie Tricopter)

Hexacopter

(sinngemäß wie Tricopter)

Y-Hexacopter

(sinngemäß wie Tricopter)

Octocopter

(sinngemäß wie Tricopter)

Konfiguration

(hier soll z.B was hin zum einstellen der Gaswerte, des Senders, ...)

Setup

(hier soll was hin zum einstellen der Regelparameter & Co)

PID - Was ist das, was macht es

Die PID-Werte (engl: proportional–integral–derivative, deu: proportional-integrierend-verzögernd) besteht aus den Anteilen des P-Gliedes, des I-Gliedes und des D-Gliedes. Diese drei Werte dienen zum Erfassen von sämtlichen für das System messbaren Einflüssen.
Im Fall eines Multirotorsystems sind die Einflüsse Winkelveränderungen (Gyro), Beschleunigungen (ACC und Magnetometer) und Druckveränderungen (Barometer) existent, ständig durch die Sensoren zu erkennen und durch die PID-Regler auf die Lage stabilisierend zu wirken, um dabei ein nahezu schwingfreies Verhalten zu zeigen.
Jedes Multirotorsystem reagiert durch seinen mechanischen und elektrischen Aufbau auf Einflüsse anders und benötigt daher eine ganz individuelle Einstellung.

P-Wert

P ist die Korrekturkraft die den Copter wieder in seine Ausgangsposition bringt. Je höher der P-Wert ist, desto höher ist die Kraft mit der der Copter wieder in seine Ausgangsposition zurückkehren will.

Erhöhung des P-Wertes: Der Copter ist immer stabil bis der P-Wert zu hoch ist. Dann beginnt der Copter zu schwingen und man beginnt die Kontrolle zu verlieren.

Senkung des P-Wertes: Wird der P-Wert zu weit gesenkt, gerät der Copter ebenfalls außer Kontrolle.

Praxiswerte: Bei Coptern mit 35 bis 40cm Achsabstand sind P-Werte von 3,0 bis 3,5 auf ROLL und PITCH empfehlenswert. Für weniger als 30cm Achsabstand sollte der Wert unter 3,0 liegen.

I-Wert

I ist der Zeitraum, bei dem die Winkel- und/oder Änderung abgetastet und gemittelt wird. Der Ausschlag der Korrekturkraft wird somit bestimmt, um zur Ausgangsposition zurück zukehren.

Erhöhung des I-Wertes: Wird der I-Wert erhöht, so erhöht man die Wahrscheinlichkeit die Ausgansposition zu halten und Drifts zu reduzieren. Ebenso steigt die Verzögerung für die Rückkehr in die Ausgansposition.

Senkung des I-Wertes: Die Verzögerung der Veränderung wird verkleinert, der Drift erhöht sich, die Fähigkeit Position zu halten wird reduziert.

Praxiswerte: Werte zwischen 0,010 und 0,050 sind in der Realität normal. Wert mit maximal 0,005 erhöhen oder senken.

D-Wert

D ist die Geschwindigkeit mit der der Copter in seine ursprüngliche Position zurückkehren soll. Dies spielt auch mit der Wirkung des P-Wertes zusammen. Der Wert bei D ist ein Negativwert!

Erhöhung des D-Wertes: Hier wird die Geschwindigkeit erhöht mit der der Copter in seine Ausgangsposition zurück will. Erhöhung des D-Wertes steigert die Wahrscheinlichkeit des Aufschwingens.

Senkung des D-Wertes: Reduziert die Geschwindigkeit mit der der Copter in seine Ausgangsposition zurückkehren will.

Praxiswerte: Werte zwischen 5 und 25 sind als normal anzusehen.

Spannungsüberwachung

Für das Ausrechnen der ADC-Werte der Spannungsüberwachung gibt es eine kleine Excel-Tabelle. In der Tabelle einfach die gewünschte Warnschwelle (Spannung) eintragen und der ADC-Wert wird ausgerechnet. Ebenso ist eine Berechnung der Spannung eines ADC-Wertes möglich.

Betrieb

FAQ

Regler schalten nicht scharf, obwohl die Hardware die Scharfschaltung signalisiert

Mögliche Ursachen:

  • Geberweg ist nicht korrekt eingestellt
    • zunächst mit Hilfe der GUI alle Geberwege prüfen und am Sender auf 1000µs (Low), 1500 µs (Mid), 2000µs (High) einstellen (TravelAdjus / Endpunkte bzw. Mittenverstellung / Subtrim)
  • Gasweg des Reglers paßt nicht zu dem eingestellten Bereich von 1000...2000 µs
    • Regler neu einlernen
  • Regler ab Werk fehlerbehaftet, z.b. keine oder fehlerhafte Firmware.
    • Schließt man am einfachsten aus, indem man die Regler und Motoren VOR der Verwendung im Copter provisorisch verdrahtet und direkt am Empfänger überprüft. Dabei empfiehlt es sich, vorher bereits die Sendereinstellungen (Geberweg-Abgleich) durchgeführt zu haben. Bei neuen Projekten kann man einfach einen Modellspeicher aufrufen, auf dem bereits ein Multicopter eingerichtet ist (dort hat man i.d.r. bereits die Geberwege abgeglichen).

Permanentes diagonales Zittern des Copters im Schwebeflug, unregelmäßige Gasannahme, schwankende Drehzahlen

Ursache: Die verwendeten Regler bzw. deren Firmware vertragen sich nicht mit der Ansteuerfrequenz von 490 Hz.

Lösung: Kompatible Regler verwenden oder, sofern möglich, mit Simon-K.-Firmware flashen. Eine Übersicht über dafür geeignete Regler findet man hier.

Ein komplettes Workaround zum Regler-Flashen findet sich im Forum.

Wie programmiere ich die verwendeten Regler?

Lösung: Zunächst Grundeinstellung (Bremse: aus, Bat. Typ: Ni; Cut off: soft Cut; Cut off Volt: low; Start Mode: normal; Timing: entsprechend dem verw. Motor; Governer Mode: aus; PWM Frq: high) einstellen. Dazu je nach Typ entweder nach Regler-Anleitung mittels Setup-Funktion oder Programmierkarte verwenden.

Sind die Regler nicht so umfangreich zu proggen auf jeden Fall die Bremse raus nehmen!

  1. Gas Kanal der Anlage über die GUI auf 1000µs bis 2000µs einstellen (bei Graupner ist es meist ca. 125% Servoweg)
  2. Regler am Gas Servo- Ausgang in einen normalen Empfänger stecken.
  3. Gas Knüppel auf Vollgas stellen.
  4. Regler mit Akku verbinden.
  5. Initialisierung des Reglers abwarten (meist ein Piep od. Tonfolge)
  6. Gas-Knüppel in 0-Gas Stellung bringen (zügig und gleichmässige Bewegung) und Quittungston abwarten.
  7. Akku abstecken.

Zur Kontrolle den Akku nochmal anstecken und den gleichmässigen Anlauf (über einen Adapter für alle Regler falls vorhanden) am normalen Empfänger-Ausgang testen und mit den anderen Reglern vergleichen.

Links

RHF-Forum