Unterschiede zwischen den Revisionen 86 und 134 (über 48 Versionen hinweg)
Revision 86 vom 21.02.2009 23:10
Größe: 19702
Autor: LegoM
Kommentar: Kl. Korr.
Revision 134 vom 12.08.2010 23:41
Größe: 19973
Autor: Brunweil
Kommentar: Sprachfehler tief betrübt!
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
##||<tablewidth="200px" tablestyle="text-align: center;"bgcolor="#ffffa0">Page in [:en/FlightCtrl:english] ||
[[TableOfContents([maxdepth])]]
||<tablewidth="200px" tablestyle="text-align: center;"bgcolor="#ffffa0"> {{http://mikrokopter.de/images/fra.gif}} Page en [[fr/FlightCtrl|français]] ||
<<TableOfContents>>
Zeile 7: Zeile 7:
Hier eine Liste der [[KategorieFirmware| Firmware]]
Zeile 11: Zeile 13:

||<tablewidth="200px"style="TEXT-ALIGN: center">Abbildung V1.0 ||<style="TEXT-ALIGN: center">Abbildung V1.3 ||
|| http://mikrocontroller.cco-ev.de/images/kopter/FlightCtrl1.jpg || https://www.mikrocontroller.com/images/FlightCtrlV1_3.jpg ||
|| http://mikrocontroller.cco-ev.de/images/kopter/FlightCtrl_unten.jpg ||[[ImageLink(http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=18551,http://gallery.mikrokopter.de/main.php/v/tech/fc_1_3_unten2.jpg.html)]]||
 . [[BR]]
##[[BR]] Abildung V1.1 TODO [[BR]] Abildung V1.2 TODO
||<tablewidth="200px"style="text-align: center;">Abbildung V1.0 ||<style="text-align: center;">Abbildung V1.3 ||<style="text-align: center;">Abbildung V2.0 ||
|| {{http://mikrocontroller.cco-ev.de/images/kopter/FlightCtrl1.jpg}} || {{https://www.mikrocontroller.com/images/FlightCtrlV1_3.jpg}} ||[[http://gallery.mikrokopter.de/main.php/v/tech/FCMETOP.jpg.html?g2_imageViewsIndex=2|{{http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=42251&g2_serialNumber=2}}]]||
|| {{http://mikrocontroller.cco-ev.de/images/kopter/FlightCtrl_unten.jpg}} ||[[http://gallery.mikrokopter.de/main.php/v/tech/fc_1_3_unten2.jpg.html|{{http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=18551}}]]||[[http://gallery.mikrokopter.de/main.php/v/tech/FCMEBEST.jpg.html?g2_imageViewsIndex=2|{{http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=42140&g2_serialNumber=2}}]]||
|| || ||[[http://gallery.mikrokopter.de/main.php/v/tech/fc-me-seite.jpg.html?g2_imageViewsIndex=2|{{http://gallery.mikrokopter.de/main.php?g2_view=core.DownloadItem&g2_itemId=33177&g2_serialNumber=2}}]]||


 . <<BR>>
Zeile 18: Zeile 22:
Es gibt insgesamt vier Versionen der Flight-Ctrl: V1.0, V1.1, V1.2, V1.3 . Zwischen den Versionen 1.0 bis 1.2 gibt es nur kleine/minimale Unterschiede.[[BR]][[BR]] Bestückte und unbestückte Platinen unterscheiden sich in erster Linie in der Farbe:

 . rot - bestückt
Es gibt insgesamt sechs Versionen der Flight-Ctrl: V1.0, V1.1, V1.2, V1.3, V2.0 (ME) und V2.1 (ME). Zwischen den Versionen 1.0 bis 1.2 gibt es nur kleine/minimale Unterschiede.<<BR>><<BR>> Bestückte und unbestückte Platinen unterscheiden sich in erster Linie in der Farbe:

 . rot/schwarz - bestückt
Zeile 22: Zeile 26:
[[BR]]'''Eine umfassende Übersicht der FlightCtrl Versionen/Historie befinden sich auf der Seite [:Ctrl History:Ctrl_History]. (Stand: 25.03.2008)'''

= Technische Daten =
== Version V1.0 ==
<<BR>>'''Eine umfassende Übersicht der FlightCtrl Versionen/Historie befinden sich auf der Seite [[Ctrl_History|Ctrl_History]]. (Stand: 25.03.2008)'''


=
= Technische Daten ==
=== Version V1.0 ===
Zeile 27: Zeile 32:
 * Sensoren: 3x [:GyroScope:Gyros (ENBC-03JA)], 3-Achs-Beschleunigungsssensor (LIS3L02AS4), [:Höhensensor:Luftdrucksensor (MPX4115)]  * Sensoren: 3x [[GyroScope|Gyros (ENBC-03JA)]], 3-Achs-Beschleunigungsssensor (LIS3L02AS4), [[Höhensensor|Luftdrucksensor (MPX4115)]]
Zeile 30: Zeile 35:
 * Anschlüsse: Eingang für ["RC-Empfänger"], I2C-Bus für Motor-Regler, ISP-Stecker, universeller Erweiterungsstecker (Debugging, GPS,...)  * Anschlüsse: Eingang für [[RC-Empfänger]], I2C-Bus für Motor-Regler, ISP-Stecker, universeller Erweiterungsstecker (Debugging, GPS,...)
Zeile 34: Zeile 39:
 * weitere Komponenten extern anschliessbar  * weitere Komponenten extern anschließbar
Zeile 37: Zeile 42:
== Version V1.1/V1.2 == === Version V1.1/V1.2 ===
Zeile 42: Zeile 47:
== Version V1.3 == === Version V1.3 ===
Zeile 46: Zeile 51:
 * einseitige Bestückung - es ist jetzt möglich die FlightCtrl wesentlich flacher aufzubauen  * einseitige Bestückung - es ist jetzt möglich, die FlightCtrl wesentlich flacher aufzubauen
Zeile 48: Zeile 53:
 * optional: 2ter Spannungsregler für Servoversorgung bestückbar (nicht im Lieferumfang)  * optional: zweiter Spannungsregler 7805 für Servoversorgung bestückbar (z.B. für Kamera-Tilt-Servo, Ausrichtung wie der erste 7805 mit Kühlfläche nach außen, nicht im Lieferumfang)
Zeile 52: Zeile 57:
 * '''Achtung!''' Die Transistoren (PDTC143) an den Schaltausgängen SV2 der Version 1.3 können nur noch 100mA schalten!
'''Hinweise:'''

 * Bezüglich der GyroScope gibt es verschiedene Bauformen und Versionen. Von den bedrahteten Gyros gibt es den ENBC-03JA und den ENBC-03JB. Der ENBC-03JR ist in SMD-Bauform.
Elektrisch unterscheiden sie sich nicht voneinander. Allerdings ist die innere Taktfrequenz der Gyros leicht unterschiedlich. Aufgrund des großen mechanischen Abstandes zueinander sind unterschiedliche Gyrosfrequenzen nicht unbedingt erforderlich - stören aber auch nicht.
 * /!\ Die Transistoren (PDTC143) an den Schaltausgängen SV2 der Version 1.3 können nur noch 100mA schalten! Das entspricht beispielsweise einem halben LED-Streifen (3 Stück der 2x3 LED).
=== Variante ME ===
 * siehe [[FlightCtrl_ME|FlightControl ME]]
 * wird nicht als neue Version, sondern als eigene Variante parallel zur bisherigen Version 1.3 vertrieben
 * hochwertige Gyroskope in MEMS-Technologie vom
Hersteller Analog Devices
 * 5 Servoausgänge
 * im Lieferumfang ist jetzt ein Recom-Schaltregler
 * optional: 2ter Spannungsregler für Servoversorgung bestückbar (nicht im Lieferumfang)
 * Servo und ext. Beleuchtung über Stiftleiste anschließbar
 * 4-lagiges Design
== H
inweise ==
 * Bezüglich der GyroScope gibt es verschiedene Bauformen und Versionen. Von den bedrahteten Gyros gibt es den ENBC-03JA und den ENBC-03JB. Der ENBC-03JR ist in SMD-Bauform. Elektrisch unterscheiden sie sich nicht voneinander. Allerdings ist die innere Taktfrequenz der Gyros leicht unterschiedlich. Aufgrund des großen mechanischen Abstandes zueinander sind unterschiedliche Gyrosfrequenzen nicht unbedingt erforderlich - stören aber auch nicht.
Zeile 59: Zeile 70:
 * Ab Firmware V0.76: Die Servos werden erst nach dem Kalibrieren des Mikrokopter angesteuert! Ausnahme: Wenn keine BL-Ctrl gefunden wurden, werden die Servos sofort aktiviert (z.B. für Stand-alone Anwendungen der FC)
Zeile 60: Zeile 72:
Lochabstand: 45mm (63mm in der Diagonale)[[BR]] Höhe: TODO
Platine: 50*50 mm

Lochabstand: 45mm (63mm in der Diagonale)<<BR>> Höhe: TODO

== Auswirkungen der Unterschiede zwischen FC 1.3 und 2.0 ME ==
 * Die ME-Variante verwendet hochwertigere Gyroskope. Sie haben keine Temperaturdrift mehr, so dass man den MK bspw. nicht mehr nach der "Abkühlphase" erneut kalibrieren muss. Ebenso berichten Anwender im Forum, dass die Gyroskope der ersten Variante in einigen wenigen Fällen empfindlich auf Wechsel zw. Schatten und Sonnenlicht reagieren und damit das Fliegen instabiler machen.
 * ME kann fünf Servos steuern, 1.x nur einen.
 * Ein paar Meinungen dazu finden sich auch in diesem Forumsbeitrag: http://forum.mikrokopter.de/topic-post177790.html
Zeile 97: Zeile 115:
Hier wird der Empfänger angeschlossen. Über zwei Leitungen wird der Empfänger versorgt und über die dritte liefert er das RC-Summensignal zurück. Im Gegensatz zu einem normalen Servo-PPM-Signal sind in dem Summensignal alle von der Fernbedienung gesendeten Kanäle enthalten. In jedem Empfänger ist dieses Signal vorhanden, allerdings liefern nur wenige dieses Signal zum direkten Abgriff an einen Stecker (z.B. der RX3 Multi von ACT). (--> ["RC-Empfänger"]) Hier wird der Empfänger angeschlossen. Über zwei Leitungen wird der Empfänger versorgt und über die dritte liefert er das RC-Summensignal zurück. Im Gegensatz zu einem normalen Servo-PPM-Signal sind in dem Summensignal alle von der Fernbedienung gesendeten Kanäle enthalten. In jedem Empfänger ist dieses Signal vorhanden, allerdings liefern nur wenige dieses Signal zum direkten Abgriff an einen Stecker (z.B. der RX3 Multi von ACT). (--> [[RC-Empfänger]])
Zeile 100: Zeile 118:
An diesem Bus werden die BL-Regler angeschlossen, über den sie die Steuerbefehle erhalten. Die Flight-Ctrl erfordert unseren speziellen [:BrushlessCtrl:Brushless-Motor-Regler], damit eine schnelle Kommunikation per I2C-Bus möglich ist. Standard-Motor-Regler können '''nicht''' verwendet werden, weil sie nicht schnell genug angesteuert werden können. Der I2C-Bus verfügt über eine Taktleitung (SCL) und eine Datenleitung (SDA). Im Bus werden alle SCL-Leitungen und alle SDA-Leitungen miteinander verschaltet. An diesem Bus werden die BL-Regler angeschlossen, über den sie die Steuerbefehle erhalten. Die Flight-Ctrl erfordert unseren speziellen [[BrushlessCtrl|Brushless-Motor-Regler]], damit eine schnelle Kommunikation per I2C-Bus möglich ist. Standard-Motor-Regler können '''nicht''' verwendet werden, weil sie nicht schnell genug angesteuert werden können. Der I2C-Bus verfügt über eine Taktleitung (SCL) und eine Datenleitung (SDA). Im Bus werden alle SCL-Leitungen und alle SDA-Leitungen miteinander verschaltet.
Zeile 103: Zeile 121:
Hier wird zum Testen und Parametrieren z.B. ein PC angeschlossen. Der Pegel ist TTL-Pegel(0/+5V) und nicht V24(-10/+10V). Aus diesem Grund muss ein Schnittstellenkonverter angeschlossen werden, falls mit der Seriellen Schnittstelle des PCs kommuniziert werden soll. Später kann diese Schnittstelle auch zur Kommunikation (asynchron) mit anderen Controllern verwendet werden.
Dies geschieht normalerweise über die SerCon.
Hier wird zum Testen und Parametrieren z.B. ein PC angeschlossen. Der Pegel ist TTL-Pegel(0/+5V) und nicht V24(-10/+10V). Aus diesem Grund muss ein Schnittstellenkonverter angeschlossen werden, falls mit der Seriellen Schnittstelle des PCs kommuniziert werden soll. Später kann diese Schnittstelle auch zur Kommunikation (asynchron) mit anderen Controllern verwendet werden. Dies geschieht normalerweise über die SerCon.
Zeile 107: Zeile 124:
Der ATMEL-Controller wird darüber mittels eines ISP-Interfaces programmiert. Später kann diese Schnittstelle auch zur schnellen Kommunikation (synchron Seriell) mit anderen Controllern verwendet werden.
Hierzu ist die SerCon hilfreich.
Der ATMEL-Controller wird darüber mittels eines ISP-Interfaces programmiert. Später kann diese Schnittstelle auch zur schnellen Kommunikation (synchron Seriell) mit anderen Controllern verwendet werden. Hierzu ist die SerCon hilfreich. Achtet bitte auf die von der ATMEL Belegung abweichende Pin Belegung beim Anschluss eines ISP Programmierers.
Zeile 114: Zeile 130:
Der Aufbau ist abhängig, ob die Platine bestückt oder unbestückt ist. Bei der bestückten Version müssen nur zwei Kondensatoren, ein Schalter, die Stiftleisten sowie die Kabel aufgelötet werden. Die Software ist bereits aufgespielt. Weitere Informationen sind hier zu finden:[[BR]] ["FCAufbauBestueckt"]

Der Aufbau der unbestückten Platine dauert länger und ist fehleranfälliger, allerdings auch kostengünstiger. Und man lernt die Platine, den Aufbau und die Funktion besser kennen. Es lohnt sich also für die technisch Interessierten. Der genaue Aufbau wird hier beschrieben:[[BR]] ["FCAufbauUnbestueckt"]
Der Aufbau ist abhängig, ob die Platine bestückt oder unbestückt ist. Bei der bestückten Version müssen nur zwei Kondensatoren, ein Schalter, die Stiftleisten sowie die Kabel aufgelötet werden. Die Software ist bereits aufgespielt. Weitere Informationen sind hier zu finden:<<BR>> [[FCAufbauBestueckt]]

Der Aufbau der unbestückten Platine dauert länger und ist fehleranfälliger, allerdings auch kostengünstiger. Und man lernt die Platine, den Aufbau und die Funktion besser kennen. Es lohnt sich also für die technisch Interessierten. Der genaue Aufbau wird hier beschrieben:<<BR>> [[FCAufbauUnbestueckt]]
Zeile 119: Zeile 135:
Zum Thema Verkabelung gibt es eine eigene Wiki-Seite: [[BR]] ElektronikVerkabelung Zum Thema Verkabelung gibt es eine eigene Wiki-Seite: <<BR>> ElektronikVerkabelung
Zeile 124: Zeile 140:
[[ImageLink(FlightCtrl_Schaltplan_kl.gif,attachment:FlightCtrl_Schaltplan.gif)]]

(Klicken für hohe Auflösung) [[BR]] [[BR]]
[[attachment:FlightCtrl_Schaltplan.gif|{{attachment:FlightCtrl_Schaltplan_kl.gif}}]]

(Klicken für hohe Auflösung) <<BR>> <<BR>>
Zeile 130: Zeile 146:
[[ImageLink(FlightCtrl_V1_1_Schaltplan_klein.gif,attachment:FlightCtrl_V1_1_Schaltplan.gif)]]

(Klicken für hohe Auflösung) [[BR]]
[attachment:FCAufbauUnbestueckt/FlightCtrl_V1_2.pdf Schaltplan und Bestückungsplan V1.2 als PDF]

[attachment:FCAufbauUnbestueckt/Flight-Ctrl_1_2.txt Stückliste V1.2 als TXT]
[[
BR]]
[[attachment:FlightCtrl_V1_1_Schaltplan.gif|{{attachment:FlightCtrl_V1_1_Schaltplan_klein.gif}}]]

(Klicken für hohe Auflösung) <<BR>> [[attachment:FCAufbauUnbestueckt/FlightCtrl_V1_2.pdf|Schaltplan und Bestückungsplan V1.2 als PDF]]

[[attachment:FCAufbauUnbestueckt/Flight-Ctrl_1_2.txt|Stückliste V1.2 als TXT]] <<BR>>
Zeile 140: Zeile 154:
[[ImageLink(FC_V1_3_klein.gif,attachment:FC_V1_3.gif)]]

(Klicken für hohe Auflösung) [[BR]]

[http://www.mikrokopter.de/files/Flight-Ctrl_1_3_doku.pdf Schaltplan und Bestückungsplan V1.3 als PDF]
[[attachment:FC_V1_3.gif|{{attachment:FC_V1_3_klein.gif}}]]

(Klicken für hohe Auflösung) <<BR>>

[[http://www.mikrokopter.de/files/Flight-Ctrl_1_3_doku.pdf|Schaltplan und Bestückungsplan V1.3 als PDF]]

[[http://gallery.mikrokopter.de/main.php/v/tech/FC1_3+Bestueckungsplan.jpeg.html|Bestückungsplan V1.3 im Detail]]

[[http://www.mikrokopter.de/files/Flight-Ctrl_1_3.txt|Stückliste V1.3 als TXT]]

!FlightCtrl V2.0 "ME:

[[attachment:FlightCtrl_V2_0_Schaltplan.png|{{attachment:FlightCtrl_V2_0_Schaltplan_klein.png}}]]

!FlightCtrl V2.1 "ME:

[[http://mikrocontroller.com/files/Flight-Ctrl_ME_2_1f.pdf|{{http://www.mikrokopter.de/ucwiki/FlightCtrl?action=AttachFile&do=get&target=FlightCtrl_V2_0_Schaltplan_klein.png}}]]

(Klicken für hohe Auflösung) <<BR>>

[[http://www.mikrokopter.de/files/Flight-Ctrl_ME_2_0_doc.pdf|Schaltplan und Bestückungsplan V2.0 als PDF]]
Zeile 147: Zeile 177:
Die Software ist für alle Versionen geschrieben. Die Hardwareversionen werden anhand der Polarität der roten LED (LED2) erkannt. Bei der Version 1.0 ist die Anode der roten LED direkt am AVR angeschlossen, bei der Version 1.1 hingegen die Kathode. [[BR]] Download der Hexfiles und des Quellcodes: [http://svn.mikrokopter.de/mikrowebsvn/listing.php?repname=FlightCtrl&path=/tags/&rev=0&sc=0 SVN-System] Die Software ist für alle Versionen geschrieben. Die Hardwareversionen werden anhand der Polarität der roten LED (LED2) erkannt. Bei der Version 1.0 ist die Anode der roten LED direkt am AVR angeschlossen, bei der Version 1.1 hingegen die Kathode. <<BR>> Download der Hexfiles und des Quellcodes: [[http://svn.mikrokopter.de/mikrowebsvn/listing.php?repname=FlightCtrl&path=/tags/&rev=0&sc=0|SVN-System]]

<<Anchor(SWDev)>>
Zeile 155: Zeile 187:
1. Download und Installation von [http://downloads.sourceforge.net/winavr/WinAVR-20071221-install.exe?modtime=1198191629&big_mirror=0 WinAVR (LINK)] (gegebenfalls auch zukünftig [http://sourceforge.net/project/showfiles.php?group_id=68108 neuerer Versionen (LINK)] nicht den Release Candidate, sondern aktuell die 20071221)

2. Download und Installation von einem [[Subversion]]-Client z.B. [http://tortoisesvn.net/downloads Tortoise (LINK)]
Subversion (oder kurz SVN) ist eine Versionsverwaltungskontrolle, die bei der Verwaltung von Quellcode hilft, an dem mehrere Menschen arbeiten, wie in diesem Fall dem Quadcopter. Mehr zu Subversion findet man in der Wikipedia unter [http://de.wikipedia.org/wiki/Subversion_(Software)|Subversion (Link)] oder auf der [http://subversion.tigris.org/|Website des Subversion-Projektes (Link englisch)]

Nachdem beides installiert wurde, muss nun "Tortoise" konfiguriert werden. "Tortoise" ist nach der Installation am einfachsten über den Windows-Explorer als Kontextmenü (anwählen eines Verzeichnissses oder Datei, dann RECHTE Maustaste drücken) erreichbar. Um die aktuellen Sourcen aus dem "Mikrokopter SVN" "auszuchecken", muss man "Tortoise" mitteilen, wo sich dieses befindet und wohin die Datei auf dem eigenen Computer abgelegt werden sollen. Das muß nur einmal gemacht werden, später reicht es dann einfach für den jeweiligen Pfad "SVN Update" anzuwählen und schon hat man die neuen Sourcen des jeweiligen Pfades auf dem Computer.

Klick im Windows-Explorer mit der RECHTEN Maustaste auf das Laufwerk/Ordner, in welchen das Subversion-Repository ausgechekct werden soll (also in dieses Verzeichnis werden die Dateien vom Server heruntergeladen z.b. "C:/MK-SVN"). Es öffnet sich das Kontextmenü. Dort sieht man Einträge, welche z.B. "SVN Checkout.." und "TortoiseSVN" heißen. Hier wählt man "SVN Checkout" aus, worauf sich ein Dialog öffnet, in welchem einige Einstellungen vorgenommen werden müssen.

a) wo liegt das Repository des SVN? b) wohin genau soll es lokal angelegt werden?

zu a) Die Sourcen der Flight-CTRL liegen unter

{{{
http://mikrocontroller.cco-ev.de/mikrosvn/FlightCtrl/}}}
diese trägt man bei "URL of repository" ein.

zu b) Lokal z.B.

{{{
C:\MKSVN\FlightCtrl}}}
was bei "Checkout directory" eingetragen wird. Die beiden Checkboxen bleiben "aus", die Option auf "HEAD Revision" stehen. Danach auf den "OK" Button klicken, worauf man gefragt wird, ob das lokale Verzeichnis angelegt werden soll, was man bestätigten muss. Nun wird die komplette "Flight Controll SVN" auf den lokalen Rechner kopiert, was je nach Internetverbindung schon etwas dauern kann. Man kann aber auch ein einziges bestimmtes Projekt auswählen.

Nachdem der Download fertig ist, befindet sich unter "C:\MKSVN\FlightCtrl" eine komplette Kopie des "Mikrokopter FlightCtrl SVN" Ordners. Wenn jetzt von jemandem Änderungen im "Mikrokopter !FligthCtrl SVN" gemacht werden, reicht es, mit der rechten Maustaste im Kontextmenü "C:\MKSVN\FlightCtrl" anzuklicken und dort "SVN Update" anzuwählen. Damit werden alle Änderungen auf die lokalen Dateien angewendet. ''''''

'''VORSICHT beim Anwählen des Menüpunkt "SVN Commit"''', denn hiermit trägt man seine eigenen lokalen Änderungen ins "Mikrokopter FlightCtrl SVN" ein.

1. Das Hochladen funktioniert nur durch Eingabe von User/Password aus dem Forum. Man kann also nicht einfach so mal versehentlich draufklicken.

2. Der Autor kann einzelne oder auch alle Dateien sperren. Damit können sie von keinem Anderen mehr verändert werden. Der Sinn und Zweck eines solchen Source-Code-Verwaltungssystems ist der, dass mehrere Programmierer an dem Code arbeiten können.

Die selbe Vorgehensweise lässt sich natürlich auch für das "Mikrokopter BL-CTRL SVN" durchführen, hier wäre der Pfad

{{{
http://mikrocontroller.cco-ev.de/mikrosvn/BL-Ctrl/}}}
lokal z.B.

{{{
C:\MKSVN\BL-CTRL}}}
nehmen.

Das "Mikrokopter Projects SVN" bekommt man über

{{{
http://mikrocontroller.cco-ev.de/mikrosvn/Projects/}}}
lokal dann z.B.

{{{
C:\MKSVN\Projects}}}
Weiter gehts mit dem Kompilieren, was jetzt nur noch ein paar Klicks sind. Zum Kompilieren startet man "Programmers Notepad", welches mit "WinAVR" mitinstalliert wurde. Im "Programmers Notepad" öffnen wir unter "File" -> "Open Project(s)..." die jeweilige Projektdatei der Quellen, welche kompiliert werden sollen.
1. Download und Installation von [[http://downloads.sourceforge.net/winavr/WinAVR-20060421-install.exe?use_mirror=mesh|WinAVR (LINK)]] (Alle neueren Versionen als WinAVR-20060421 zeigen Performanceverluste). Siehe auch [[http://forum.mikrokopter.de/topic-post124526.html|Forum]]

2. Download und Installation von einem [[Subversion]]-Client und Einrichten des Zugriffs auf den Source-Code. Das alles steht hier: MikroKopterRepository

Weiter gehts mit dem Kompilieren, was jetzt nur noch ein paar Klicks sind. Zum Kompilieren startet man "Programmers Notepad", welches mit "WinAVR" mit installiert wurde. Im "Programmers Notepad" öffnen wir unter "File" -> "Open Project(s)..." die jeweilige Projektdatei der Quellen, welche kompiliert werden sollen.
Zeile 217: Zeile 204:
zeigt, steht das neue Hexfile zur Verfügung. Die erzeugten Hexfiles werden üblicherweise im Stammverzeichnis der jeweiligen Sourcedateien erzeugt, bei manchen Sourcen extra Verzeichnise wie z.B. "Hex-Files" vorhanden sind. Wer nicht sicher ist, prüft das Datum der Files. Ein "Make Clean" räumt das Sourcen-Verzeichnis auf, in dem es sämtliche nicht benötigten, beim Kompilieren erstellten Temporär-Dateien löscht. Die Hex Datei bleibt dabei erhalten. zeigt, steht das neue Hexfile zur Verfügung. Die erzeugten Hexfiles werden üblicherweise im Stammverzeichnis der jeweiligen Sourcedateien erzeugt, bei manchen Sourcen extra Verzeichnisse wie z.B. "Hex-Files" vorhanden sind. Wer nicht sicher ist, prüft das Datum der Files. Ein "Make Clean" räumt das Sourcen-Verzeichnis auf, in dem es sämtliche nicht benötigten, beim Kompilieren erstellten Temporär-Dateien löscht. Die Hex Datei bleibt dabei erhalten.
Zeile 222: Zeile 209:
Bevor man loslegen kann, benötigt man den "avr-gcc"-Compiler. Unter Debian-basierten Betriebssystemen wie etwa Ubuntu installiert man diesen mit 
{{{
apt-get install avr-gcc}}}. Zum Übertragen des übersetzten elf-files über die SerCon benötigt man AvrDude. Das aktuelle AvrDude aus Debian unterstützt dies nicht, man muss erst ein eigenes AvrDude übersetzen. Wie dies funktioniert, steht hier im Wiki unter AvrDude.

Man kann den Mikrokopter-Quellcode auch unter Linux übersetzen. Ein beherztes: 
Bevor man loslegen kann, benötigt man den "avr-gcc"-Compiler. Unter Debian-basierten Betriebssystemen wie etwa Ubuntu installiert man diesen mit

{{{
apt-get install gcc-avr avr-libc}}}
. Zum Übertragen des übersetzten elf-files über die SerCon benötigt man AvrDude. Das aktuelle AvrDude aus Debian unterstützt dies nicht, man muss erst ein eigenes AvrDude übersetzen. Wie dies funktioniert, steht hier im Wiki unter AvrDude.

Man kann den Mikrokopter-Quellcode auch unter Linux übersetzen. Ein beherztes:
Zeile 229: Zeile 219:
bringt auch unter Linux die Sourcen auf die Platte.
Will man nur die aktuelle Version haben, reicht auch ein 
bringt auch unter Linux die Sourcen auf die Platte. Will man nur die aktuelle Version haben, reicht auch ein
Zeile 235: Zeile 225:
Subversion (oder kurz SVN) ist eine Versionsverwaltungskontrolle, die bei der Verwaltung von Quellcode hilft, an dem mehrere Menschen arbeiten, wie in diesem Fall dem Quadrocopter. Mehr zu Subversion findet man in der Wikipedia unter [http://de.wikipedia.org/wiki/Subversion_(Software)|Subversion (Link)] oder auf der [http://subversion.tigris.org/|Website des Subversion-Projektes]. (Mehr zu Subversion und dem Repository findet sich hier: MikroKopterRepository)
Zeile 239: Zeile 229:
Sobald SVN den Kopiervorgang beendet hat, wechselt man einfach in das Unterverzeichnis mit dem Quellcode, den man übersetzen möchte und führt den Befehl {{{make}}} aus. Daraufhin wird eine .elf-Datei erstellt. Diese kann man nun mittels AvrDude and den Quadcopter übertragen. Sobald SVN den Kopiervorgang beendet hat, wechselt man einfach in das Unterverzeichnis mit dem Quellcode, den man übersetzen möchte und führt den Befehl {{{make}}} aus. Daraufhin wird eine .elf-Datei erstellt. Diese kann man nun mittels AvrDude an den Quadcopter übertragen.

Falls es bei {{{make}}} den Übersetzungs-Fehler gibt (Ubuntu 8.10 intrepid):

{{{
uart.c: In function ‘__vector_20’:
uart.c:133: warning: asm operand 0 probably doesn’t match constraints
uart.c:133: error: impossible constraint in ‘asm’
}}}
dann hilft es, im File /usr/avr/include/avr/wdt.h nach {{{#define wdt_enable(value)}}} zu suchen und dort nach der Zeile

{{{
|| defined(__AVR_ATmega644__) \
}}}
die folgende Zeile einzufügen:

{{{
|| defined(__AVR_ATmega644P__) \
}}}
Zeile 244: Zeile 251:
= Akustische Signale, Fehlermeldungen (Summer, Piepen) =
Der an der FC angeschlossene Summer kann vielfältige Arten von Informationen vor und während des Fluges abgeben.

Zuallererst wären da mal die [[Fehlersignale]]. Weiterhin kann auch der aktivierte [[Höhensensor]] so konfiguriert werden, dass er in bestimmten Zuständen piept. Außerdem gibt es bei eingeschaltetem Position Hold (PH) der GPS Funktion des Navi-Ctrls regel- und unregelmäßige kurze Piepsignale, die den aktuellen Zustand anzeigen.
Zeile 249: Zeile 261:
Siehe auch: [[SafetyFirst|Sicherheit und Checkliste]]
Zeile 253: Zeile 267:
 * [:FCAufbauUnbestueckt:FC Aufbauanleitung für unbestückte Platinen]
 * [:
FCAufbauBestueckt:FC Aufbauanleitung für vorbestückte Platinen]
 * [:Ctrl
History:Versions-Historie]
 * [:
UmbauFlightCtrl:Umbau 1.0 auf 1.1]
 * [:
BL-Ctrl Anleitung:BL-Ctrl_Anleitung]
 * ["
3V Update"]
 * [[FCAufbauUnbestueckt|FC Aufbauanleitung für unbestückte Platinen]]
 * [[
FCAufbauBestueckt|FC Aufbauanleitung für vorbestückte Platinen]]
 * [[Ctrl_
History|Versions-Historie]]
 * [[
UmbauFlightCtrl|Umbau 1.0 auf 1.1]]
 * [[
BL-Ctrl_Anleitung|BL-Ctrl_Anleitung]]
 * [[
3V_Update]]
Zeile 261: Zeile 275:
 * [[Umbau1.1auf1.3]]
 * [[UmbauME|Umbau 1.2 auf ME (2.0)]]

https://mikrokopter.de/images/fra.gif Page en français

Einleitung

Die folgende Seite enthält allgemeine Informationen zur Hauptplatine des MikroKopter-Projekts, der Flight-Control.

Hier eine Liste der Firmware

Die Flight-Ctrl: Was ist das?

Die Flight-Ctrl ist die Hauptplatine des MikroKopter. Auf ihr befinden sich sämtliche Sensoren, die zum Fliegen erforderlich sind, sowie der Mikrocontroller.

(GyroScope, BeschleunigungsSensor und LuftdruckSensor).Der LuftdruckSensor ist optional und für die Grundfunktion nicht erforderlich.

Abbildung V1.0

Abbildung V1.3

Abbildung V2.0

http://mikrocontroller.cco-ev.de/images/kopter/FlightCtrl1.jpg

https://www.mikrocontroller.com/images/FlightCtrlV1_3.jpg

http://gallery.mikrokopter.de/main.php/v/tech/FCMETOP.jpg.html?g2_imageViewsIndex=2

http://mikrocontroller.cco-ev.de/images/kopter/FlightCtrl_unten.jpg

http://gallery.mikrokopter.de/main.php/v/tech/fc_1_3_unten2.jpg.html

http://gallery.mikrokopter.de/main.php/v/tech/FCMEBEST.jpg.html?g2_imageViewsIndex=2

http://gallery.mikrokopter.de/main.php/v/tech/fc-me-seite.jpg.html?g2_imageViewsIndex=2


Versionen

Es gibt insgesamt sechs Versionen der Flight-Ctrl: V1.0, V1.1, V1.2, V1.3, V2.0 (ME) und V2.1 (ME). Zwischen den Versionen 1.0 bis 1.2 gibt es nur kleine/minimale Unterschiede.

Bestückte und unbestückte Platinen unterscheiden sich in erster Linie in der Farbe:

  • rot/schwarz - bestückt
  • grün - unbestückt


Eine umfassende Übersicht der FlightCtrl Versionen/Historie befinden sich auf der Seite Ctrl_History. (Stand: 25.03.2008)

Technische Daten

Version V1.0

  • Controller: AVR Atmel ATMEGA644 @20MHz
  • Sensoren: 3x Gyros (ENBC-03JA), 3-Achs-Beschleunigungsssensor (LIS3L02AS4), Luftdrucksensor (MPX4115)

  • Statusanzeige: 2 LEDs (rot,grün), Elektromagnetischer Summer (z.B. für Unterspannung, Ortung, Funkausfall,...)
  • Ausgänge: 2 Transistorausgänge (z.B. für zusätzliche LEDs),
  • Anschlüsse: Eingang für RC-Empfänger, I2C-Bus für Motor-Regler, ISP-Stecker, universeller Erweiterungsstecker (Debugging, GPS,...)

  • Sonstiges: unbenutzte Portpins auf Lötpads geführt (für eigene Erweiterungen)
  • Abmessungen: ca. 50 x 50mm
  • Gewicht (bestückt): 23g
  • weitere Komponenten extern anschließbar
    • z.B. GPS, Datenlogger,...
  • UmbauFlightCtrl auf v1.1 möglich.

Version V1.1/V1.2

(Es werden nur Unterschiede aufgeführt)

  • Controller: AVR Atmel ATMEGA644P @20MHz
  • Sensoren: 3x GyroScope (ENBC-03JA,ENBC-03JB oder ENBC-03JR)

Version V1.3

(Es werden nur Unterschiede aufgeführt)

  • automatischer Gyroabgleich, d.h. kein manuelles Anpassen von Widerständen mehr erforderlich
  • einseitige Bestückung - es ist jetzt möglich, die FlightCtrl wesentlich flacher aufzubauen

  • externe Anschlussflächen (Versorgung, I2C usw.) wurden vergrößert
  • optional: zweiter Spannungsregler 7805 für Servoversorgung bestückbar (z.B. für Kamera-Tilt-Servo, Ausrichtung wie der erste 7805 mit Kühlfläche nach außen, nicht im Lieferumfang)
  • Servo und ext. Beleuchtung über Stiftleiste anschließbar
  • neuer (kompatibler) ACC-Sensor
  • jetzt 4-lagiges Design
  • /!\ Die Transistoren (PDTC143) an den Schaltausgängen SV2 der Version 1.3 können nur noch 100mA schalten! Das entspricht beispielsweise einem halben LED-Streifen (3 Stück der 2x3 LED).

Variante ME

  • siehe FlightControl ME

  • wird nicht als neue Version, sondern als eigene Variante parallel zur bisherigen Version 1.3 vertrieben
  • hochwertige Gyroskope in MEMS-Technologie vom Hersteller Analog Devices
  • 5 Servoausgänge
  • im Lieferumfang ist jetzt ein Recom-Schaltregler
  • optional: 2ter Spannungsregler für Servoversorgung bestückbar (nicht im Lieferumfang)
  • Servo und ext. Beleuchtung über Stiftleiste anschließbar
  • 4-lagiges Design

Hinweise

  • Bezüglich der GyroScope gibt es verschiedene Bauformen und Versionen. Von den bedrahteten Gyros gibt es den ENBC-03JA und den ENBC-03JB. Der ENBC-03JR ist in SMD-Bauform. Elektrisch unterscheiden sie sich nicht voneinander. Allerdings ist die innere Taktfrequenz der Gyros leicht unterschiedlich. Aufgrund des großen mechanischen Abstandes zueinander sind unterschiedliche Gyrosfrequenzen nicht unbedingt erforderlich - stören aber auch nicht.

  • Zur akustischen Anzeige wird ein Mikrolautsprecher verwendet. Dieser enthält einen Magneten. Sollte ein Kompass integriert werden, muss der Summer möglichst weit entfernt am Rahmen angebracht werden. Sonst beeinflusst dieser die Messung des Kompasses.
  • Ab Firmware V0.76: Die Servos werden erst nach dem Kalibrieren des Mikrokopter angesteuert! Ausnahme: Wenn keine BL-Ctrl gefunden wurden, werden die Servos sofort aktiviert (z.B. für Stand-alone Anwendungen der FC)

Abmessungen

Platine: 50*50 mm

Lochabstand: 45mm (63mm in der Diagonale)
Höhe: TODO

Auswirkungen der Unterschiede zwischen FC 1.3 und 2.0 ME

  • Die ME-Variante verwendet hochwertigere Gyroskope. Sie haben keine Temperaturdrift mehr, so dass man den MK bspw. nicht mehr nach der "Abkühlphase" erneut kalibrieren muss. Ebenso berichten Anwender im Forum, dass die Gyroskope der ersten Variante in einigen wenigen Fällen empfindlich auf Wechsel zw. Schatten und Sonnenlicht reagieren und damit das Fliegen instabiler machen.
  • ME kann fünf Servos steuern, 1.x nur einen.
  • Ein paar Meinungen dazu finden sich auch in diesem Forumsbeitrag: http://forum.mikrokopter.de/topic-post177790.html

Aufgaben

  • Messen der Drehgeschwindigkeiten der drei Achsen
  • Messen von Beschleunigungswerten der drei Achsen
  • Messen des Luftdrucks für die Höhenstabilisierung (Optional)
  • Messen der Batteriespannung mit Unterspannungserkennung
  • Auswerten des Fernbedienungssignals (RC-Signal)
  • Verarbeiten der Sensordaten und Berechnung der aktuellen Fluglage
  • Ansteuern der vier BL-Regler zur Motoransteuerung

Auswahl der Bauelemente

Mikrocontroller

Die Kriterien bei der Auswahl des Controllers waren:

  • ausreichende Performance
  • gute Verfügbarkeit
  • geringer Preis
  • gut zu löten
  • kostenlose Entwicklungssoftware verfügbar

Deshalb fiel die Wahl auf einen ATMega 644(P).

GyroScope

Die GyroScope (Gyros) messen die Winkelgeschwindigkeit (Drehgeschwindigkeit) um jeweils eine Achse. Es werden drei dieser Sensoren benötigt, um alle drei Achsen zu stabilisieren. Diese Sensoren sind die elementarsten Bauelemente. (--> GyroScope) Die Gyros arbeiten intern mit einer Frequenz. Gleicher Index = gleiche Frequenz. Damit Gyros auf engem Raum keine "Schwebungen" durch Frequenzmischung erzeugen, kann man Gyros unterschiedlicher Frequenzen verwenden, z.B. Typ A + Typ B.

Beim MikroKopter ist designbedingt keine Beeinflussung nachweisbar. Deswegen geht auch 3x A, oder 3x B, bzw. 3x C. Ideal wäre 1x A, 1x B, 1x C. Der A-Typ arbeitet mit 22kHz und der B-Typ mit 24kHz.

  • ENC-03RA und ENC-03RB der SMD-Typ mit 8x4mm der gerade einmal 0,2g wiegt
  • ENC-03MA und ENC-03MB mit 12,2x7mm mit 0,4g
  • ENC-03JA und ENC-03JB mit 15,44x8mm mit 1g

Beschleunigungs-Sensor (ACC-Sensor)

Die Hauptfunktion der Beschleunigungssensoren ist, die aktuelle Neigung des MikroKopters zu messen und die Höhenregelung zu unterstützen. Hier wird ein Drei-Achsen-Sensor verwendet. Theoretisch kann auf diese Sensoren verzichtet werden, wenn der Quadrokopter im sog. Heading-Hold-Modus (TODO: Link) betrieben werden soll. Weitere Informationen: BeschleunigungsSensor

Luftdrucksensor

Er dient zur Stabilisierung der Flughöhe. Dieser Sensor ist optional. Die Drucköffnungen können mit Klebeband abgeklebt werden, in das mit einer kleinen Nadel ein kleines Loch gestoßen wird. Das schützt vor Wind und Licht. (--> LuftdruckSensor)

Schnittstellen

PPM-Anschluss

Hier wird der Empfänger angeschlossen. Über zwei Leitungen wird der Empfänger versorgt und über die dritte liefert er das RC-Summensignal zurück. Im Gegensatz zu einem normalen Servo-PPM-Signal sind in dem Summensignal alle von der Fernbedienung gesendeten Kanäle enthalten. In jedem Empfänger ist dieses Signal vorhanden, allerdings liefern nur wenige dieses Signal zum direkten Abgriff an einen Stecker (z.B. der RX3 Multi von ACT). (--> RC-Empfänger)

I2C-Bus

An diesem Bus werden die BL-Regler angeschlossen, über den sie die Steuerbefehle erhalten. Die Flight-Ctrl erfordert unseren speziellen Brushless-Motor-Regler, damit eine schnelle Kommunikation per I2C-Bus möglich ist. Standard-Motor-Regler können nicht verwendet werden, weil sie nicht schnell genug angesteuert werden können. Der I2C-Bus verfügt über eine Taktleitung (SCL) und eine Datenleitung (SDA). Im Bus werden alle SCL-Leitungen und alle SDA-Leitungen miteinander verschaltet.

Serielle Schnittstelle (SIO)

Hier wird zum Testen und Parametrieren z.B. ein PC angeschlossen. Der Pegel ist TTL-Pegel(0/+5V) und nicht V24(-10/+10V). Aus diesem Grund muss ein Schnittstellenkonverter angeschlossen werden, falls mit der Seriellen Schnittstelle des PCs kommuniziert werden soll. Später kann diese Schnittstelle auch zur Kommunikation (asynchron) mit anderen Controllern verwendet werden. Dies geschieht normalerweise über die SerCon.

ISP-Schnittstelle (synchron)

Der ATMEL-Controller wird darüber mittels eines ISP-Interfaces programmiert. Später kann diese Schnittstelle auch zur schnellen Kommunikation (synchron Seriell) mit anderen Controllern verwendet werden. Hierzu ist die SerCon hilfreich. Achtet bitte auf die von der ATMEL Belegung abweichende Pin Belegung beim Anschluss eines ISP Programmierers.

Kompass-Anschluss

Ein digitaler Kompass kann an den PC4-Eingang des universellen Steckers angeschlossen werden. Weitere Hinweise: TODO: Link

Aufbau

Der Aufbau ist abhängig, ob die Platine bestückt oder unbestückt ist. Bei der bestückten Version müssen nur zwei Kondensatoren, ein Schalter, die Stiftleisten sowie die Kabel aufgelötet werden. Die Software ist bereits aufgespielt. Weitere Informationen sind hier zu finden:
FCAufbauBestueckt

Der Aufbau der unbestückten Platine dauert länger und ist fehleranfälliger, allerdings auch kostengünstiger. Und man lernt die Platine, den Aufbau und die Funktion besser kennen. Es lohnt sich also für die technisch Interessierten. Der genaue Aufbau wird hier beschrieben:
FCAufbauUnbestueckt

Verkabelung

Zum Thema Verkabelung gibt es eine eigene Wiki-Seite:
ElektronikVerkabelung

Schaltpläne

FlightCtrl V1.0:

attachment:FlightCtrl_Schaltplan.gif

(Klicken für hohe Auflösung)

FlightCtrl V1.1/1.2:

attachment:FlightCtrl_V1_1_Schaltplan.gif

(Klicken für hohe Auflösung)
Schaltplan und Bestückungsplan V1.2 als PDF

Stückliste V1.2 als TXT

FlightCtrl V1.3:

attachment:FC_V1_3.gif

(Klicken für hohe Auflösung)

Schaltplan und Bestückungsplan V1.3 als PDF

Bestückungsplan V1.3 im Detail

Stückliste V1.3 als TXT

FlightCtrl V2.0 "ME:

attachment:FlightCtrl_V2_0_Schaltplan.png

FlightCtrl V2.1 "ME:

http://mikrocontroller.com/files/Flight-Ctrl_ME_2_1f.pdf

(Klicken für hohe Auflösung)

Schaltplan und Bestückungsplan V2.0 als PDF

Software

Die Software ist für alle Versionen geschrieben. Die Hardwareversionen werden anhand der Polarität der roten LED (LED2) erkannt. Bei der Version 1.0 ist die Anode der roten LED direkt am AVR angeschlossen, bei der Version 1.1 hingegen die Kathode.
Download der Hexfiles und des Quellcodes: SVN-System

Softwareentwicklung

Das Downloaden und Compilieren eines im SVN abgelegten Quelltextes wird im Folgenden beschrieben.

unter Windows

Zuerst wird das komplette Projekt incl. aller Dateien auf deinen lokalen Computer übertragen, um es selber kompilieren zu können. Es hat sich folgende Vorgehensweise als vorteilhaft erwiesen:

1. Download und Installation von WinAVR (LINK) (Alle neueren Versionen als WinAVR-20060421 zeigen Performanceverluste). Siehe auch Forum

2. Download und Installation von einem Subversion-Client und Einrichten des Zugriffs auf den Source-Code. Das alles steht hier: MikroKopterRepository

Weiter gehts mit dem Kompilieren, was jetzt nur noch ein paar Klicks sind. Zum Kompilieren startet man "Programmers Notepad", welches mit "WinAVR" mit installiert wurde. Im "Programmers Notepad" öffnen wir unter "File" -> "Open Project(s)..." die jeweilige Projektdatei der Quellen, welche kompiliert werden sollen.

Angenommen, es sollen Jokos Sourcen kompiliert werden, dann wählt man

C:\MKSVN\FlightCtrl\branches\Flight-Ctrl_V0_xx_GPS_Joko\Quellen_Flight-Ctrl_V0_68d_4_GPS_CMPS_MM3FP_FREEUART\flight.pnproj

aus.

Nun muss im "Programmers Notepad" nur noch unter "Tools" zuerst der Punkt "Make Clean" und dann "Make All" ausgewählt werden. Nachdem der Compiler fertig ist und im "Output" Fenster (unten) ein

Errors: none
kore-------- end --------

zeigt, steht das neue Hexfile zur Verfügung. Die erzeugten Hexfiles werden üblicherweise im Stammverzeichnis der jeweiligen Sourcedateien erzeugt, bei manchen Sourcen extra Verzeichnisse wie z.B. "Hex-Files" vorhanden sind. Wer nicht sicher ist, prüft das Datum der Files. Ein "Make Clean" räumt das Sourcen-Verzeichnis auf, in dem es sämtliche nicht benötigten, beim Kompilieren erstellten Temporär-Dateien löscht. Die Hex Datei bleibt dabei erhalten.

Zum Upload des Compilats in die FC benötigt man den gepatchen AvrDude.

unter Linux

Bevor man loslegen kann, benötigt man den "avr-gcc"-Compiler. Unter Debian-basierten Betriebssystemen wie etwa Ubuntu installiert man diesen mit

apt-get install gcc-avr avr-libc

. Zum Übertragen des übersetzten elf-files über die SerCon benötigt man AvrDude. Das aktuelle AvrDude aus Debian unterstützt dies nicht, man muss erst ein eigenes AvrDude übersetzen. Wie dies funktioniert, steht hier im Wiki unter AvrDude.

Man kann den Mikrokopter-Quellcode auch unter Linux übersetzen. Ein beherztes:

svn co http://mikrocontroller.cco-ev.de/mikrosvn/FlightCtrl 

bringt auch unter Linux die Sourcen auf die Platte. Will man nur die aktuelle Version haben, reicht auch ein

svn co http://mikrocontroller.cco-ev.de/mikrosvn/FlightCtrl/tags/<Versionsnummer> 

Wobei man die Versionsnummer durch die aktuelle ersetzt (z.B. V0.71h).

(Mehr zu Subversion und dem Repository findet sich hier: MikroKopterRepository)

Der Befehl svn co (Subversion checkout) sorgt dafür, dass eine lokale Kopie des FlightCtrl-Quellcodes auf die Festplatte des lokalen Rechners kopiert wird.

Sobald SVN den Kopiervorgang beendet hat, wechselt man einfach in das Unterverzeichnis mit dem Quellcode, den man übersetzen möchte und führt den Befehl make aus. Daraufhin wird eine .elf-Datei erstellt. Diese kann man nun mittels AvrDude an den Quadcopter übertragen.

Falls es bei make den Übersetzungs-Fehler gibt (Ubuntu 8.10 intrepid):

uart.c: In function ‘__vector_20’:
uart.c:133: warning: asm operand 0 probably doesn’t match constraints
uart.c:133: error: impossible constraint in ‘asm’

dann hilft es, im File /usr/avr/include/avr/wdt.h nach #define wdt_enable(value) zu suchen und dort nach der Zeile

|| defined(__AVR_ATmega644__) \

die folgende Zeile einzufügen:

|| defined(__AVR_ATmega644P__) \

Einbau

Der Pfeil auf der einen Ecke der Platine zeigt in Flugrichtung. Dementsprechend muss die Platine in den Rahmen eingebaut werden. Zur Befestigung haben sich Stehbolzen aus Kunststoff bewährt. Sie isolieren die Platine gegen den Rahmen und verhindern somit Kurzschlüsse und Störungen.

Akustische Signale, Fehlermeldungen (Summer, Piepen)

Der an der FC angeschlossene Summer kann vielfältige Arten von Informationen vor und während des Fluges abgeben.

Zuallererst wären da mal die Fehlersignale. Weiterhin kann auch der aktivierte Höhensensor so konfiguriert werden, dass er in bestimmten Zuständen piept. Außerdem gibt es bei eingeschaltetem Position Hold (PH) der GPS Funktion des Navi-Ctrls regel- und unregelmäßige kurze Piepsignale, die den aktuellen Zustand anzeigen.

Allgemeine Sicherheitshinweise:

Wir garantieren nicht für fehlerfreies Verhalten der Elektronik oder Software. Trotz sorgfältiger Erstellung und Überprüfung übernehmen wir keinerlei Garantie oder Haftung (direkter oder indirekter Art) für die Fehlerfreiheit der Software, der Hardware oder Informationen. Sie benutzen die Elektronik auf eigene Gefahr (dies gilt auch für dazugehörige PC-Programme). Weiterhin übernehmen wir keinerlei Haftung für Folgeschäden an Sachwerten oder Personen, die durch Anwendung entstehen. Es liegt in ihrer Verantwortung, einen vollständigen Systemtest durchzuführen.

Der MikroKopter ist kein Kinderspielzeug! Dafür ist er zu teuer und zu gefährlich. Nicht über Personen fliegen! Eine Modellbauversicherung ist auf jeden Fall vor dem ersten Flug abzuschließen, dies ist gesetzlich vorgeschrieben! Hausratversicherungen decken Schäden durch Flugmodelle nicht ab! Näheres dazu unter VersicherungsPflicht.

Siehe auch: Sicherheit und Checkliste

Nutzungsbedingungen

Es gilt für das gesamte MikroKopter-Projekt (Hardware, Software und Dokumentation), dass eine Nutzung (auch auszugsweise) nur für den privaten (nicht-kommerziellen) Gebrauch zulässig ist. Sollten direkte oder indirekte kommerzielle Absichten verfolgt werden, ist mit uns Kontakt bzgl. der Nutzungsbedingungen aufzunehmen.

Weiterführende Links