modellbau:multicopter_platine

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

modellbau:multicopter_platine [2017/04/13 18:26]
modellbau:multicopter_platine [2020/11/01 16:40] (aktuell)
Zeile 1: Zeile 1:
 +====== kkmulticopter Platine ======
  
 +Die kkmulticopter Platine ist eine der einfachsten und günstigsten Möglichkeiten einen sehr gut stabilisierten Tri-, Quattro- (+ und x Anordnung), Hexa- oder Y6-Copter zu bauen. Auch Modelle mit zwei schwenkbaren Rotoren à la Osprey sind realisierbar. Momentan gibt es neben mehreren Platinen mit bedrahteten Bauteilen. Und eine Platine mit SMD Bauteilen. Deren Aufbau in der Version 5 wird hier beschrieben. Viele denken das Löten von SMD Bauteilen besonders schwierig ist, aber dem ist eigentlich gar nicht so. Das am schwierigsten ein zu lötende Bauteil in dieser Schaltung ist der IC mit seinen 32 Beinen, aber wie man weiter unten sieht ist es mit einem Trick gar nicht so schwer. 
 +===== Material =====
 +<html><table cellspacing="10"><tr><td></html>
 +<imgcaption image1|Die leere Platine>
 +{{:modellbau:multicopter_platine:aufbau:dscn9933.jpg?480}}
 +</imgcaption>
 +
 +
 +<html><td valign=center></html>
 +^Bauteil^Bezeichnung^Bauform^Bezugsquelle^
 +|IC1 | Atmega48/88/168/328|  TQFP|  Reichelt|
 +|IC3  |  LM317LZ|  TO-92|  Reichelt|
 +|R1, R2, R3, R12  |  100Ohm|  0805|  Reichelt|
 +|R4 |  4.7Ohm|  0805|  Reichelt|
 +|R5, R6, R8|  10-25kOhm|  Potentiometer (3314j)|  HK401B Gyro oder ebay|
 +|R7  |  680Ohm|  0805|  Reichelt|
 +|R9  |  220Ohm|  0805|  Reichelt|
 +|R10  |  68Ohm|  0805|  Reichelt|
 +|R11  |  4.7kOhm|  0805|  Reichelt|
 +|C1, C2, C3, C4, C7, C9, C11|  22-47uF|  EIA 3528-21/Kemet B|  HK401B Gyro oder ebay|
 +|C5, C6, C8  |  0.68uF|  EIA 3528-21/Kemet B|  Reichelt|
 +|C10  |  2.2uF|  EIA 3528-21/Kemet B|  Reichelt|
 +|LED1  |  rot|  0805|  Reichelt|
 +<html></td></tr></table></html>
 +
 +{{  :modellbau:multicopter_platine:ausschlachten:dscn9962.jpg?320}}
 +{{  :modellbau:multicopter_platine:ausschlachten:dscn9943.jpg?320}}
 +Bei Problemen beim Schreiben der Firmware C10 gegen 100nF tauschen.
 +
 +Zusätzlich benötigt man noch:
 +  * 3 Hobbyking [[hk>10113|HK401B Gyros]] oder [[deal>20020|Mystery Gyros]]
 +  * 4 Servokabel zum anschiessen an den Empfänger, kann von den Gyros recycelt werden.
 +  * 4-6 3polige Stiftleisten oder gleiche Anzahl an Servobuchsen-Kabeln, kann von den Gyros recycelt werden (3 verfügbar).
 +  * 2x3polige Stiftleiste oder 1x6polig halbieren. 
 +Für alle Bauteile, die es nicht im Gyro gibt, habe ich einen [[http://www.reichelt.de/?ACTION=20;AWKID=278407;PROVID=2084|Reichelt-Warenkorb]] erstellt, dieser enthält auch ausreichend Stiftleisten.
 +===== Werkzeuge und Hilfsmittel =====
 +{{:modellbau:multicopter_platine:aufbau:dscn9931.jpg?320  }}
 +  * regelbare Lötstation mit feiner und normaler Spitze.
 +  * Lötzinn 1,5mm
 +  * Lötzinn 0,5mm 
 +  * Doppelseitiges-Klebeband zum fixieren der Platine, sollte nicht zu gut kleben.
 +  * Spitze Pinzetten, die gut schliessen.
 +  * Elektroniker-Seitenschneider
 +  * Dritte Hand
 +  * Abisolierwerkzeug
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9940.jpg?320  }}
 +Besonders praktische Hilfsmittel für das Auflöten des IC:\\
 +  * Löthonig oder anderes Flussmittel (säurefrei), wird benötigt wenn das 0,5mm Lötzinn nicht gut verfliesst.
 +  * Steichholz oder etwas anderes zum Auftragen des Löthonigs.
 +  * Entlötsauglitze
 +===== Gyrorecycling =====
 +
 +{{:modellbau:multicopter_platine:ausschlachten:dscn9943.jpg?320  }} {{  :modellbau:multicopter_platine:ausschlachten:dscn9944.jpg?320}} Aus diesem super günstigen Gyro (ca. 10€) wird das Objekt unserer Begierde (rechts) gewonnen. Dabei enthält er für dieses Projekt weitere interessante Bauteile.
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:ausschlachten:dscn9945.jpg?320  }} {{  :modellbau:multicopter_platine:ausschlachten:dscn9946.jpg?320}} Wie zwei Potis mit 25kOhm und drei Tantalkondensatoren mit 22µF. Es ist empfehlenswert diese Bauteile auch aus den Gyros zu gewinnen, das die Potis in Deutschland nicht einfach zu bekommen sind. Auch die Kondensatoren findet man in dieser Baugrösse nicht beim Elektronikhändler um die Ecke. (siehe Pfeile)
 +~~CL~~
 +{{:modellbau:multicopter_platine:ausschlachten:dscn9947.jpg?320 }} {{  :modellbau:multicopter_platine:ausschlachten:dscn9948.jpg?320}} Zum auslöten gebe ich immer etwas frisches Lötzinn an die auszulösenden Teile, und hebele die Teile mit einer gewinkelten Pinzette aus. Die Platine auf der der Gyro sitzt wird ebenfalls mit etwas frischen Lötzinn und Entlötsauglitze behandelt, bis die Platine in dem Schlitz in dem sie sitzt leicht wackelt. Wenn sie jetzt immer noch nicht raus will wird mit dem Seitenschneider vorsichtig etwas mehr Platz gemacht. Von der Rückseite der Gyro-Platine keine Bauteile entlöten.
 +~~CL~~
 +{{:modellbau:multicopter_platine:ausschlachten:dscn9950.jpg?320  }} Und schon hat man diese Teile und noch zwei nützliche Kabel aus dem HK401B Gyro raus operiert.
 +
 + 
 +
 +
 +  
 +===== Bestückung =====
 +{{:modellbau:multicopter_platine:aufbau:dscn9932.jpg?320  }} Platine mit einem kleinen Stück doppelseitigem Klebeband auf dem Tisch befestigen. Ein etwas dickeres Klebeband mit schlechter Klebeeigenschaft ist optimal, dann kann man die Platine immer wieder in eine zu löten gute Position drehen. 
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9934.jpg?320  }} Ich verzinne immer eines der Pads die ich als nächstes bestücken will. Wenn das Lötzinn keine gute Flusseigenschaften hat, da riskiert man mehr kalte Lötstellen als einem lieb ist, nehme ich Löthonig dazu. Dazu dippe ich das Zinn ein wenig in den Löthonig. Natürlich funktionieren auch andere Flussmittel, aber sie sollten säurefrei sein. Sonst muss man Lötspitze und Platine nach getaner Arbeit reinigen um nicht später Korrosion an Bauteilen oder der Lötspitze zu haben.
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9935.jpg?320  }} Letzte Möglichkeit aufzuhören!!! Hier mal ein Grössenvergleich. Das ist ein Widerstand in der Bauform 0805, das kleinste Bauteil in dem Lötpuzzle. Die Bauteile nehme ich immer mit einer geraden spitzen Pinzette, so dass ein Pad des Bauteils gut auf das Pad der Platine gelegt werden kann. Dann wird mit dem Lötkolben die erste Seite angelötet, wenn das Bauteil nicht richtig aufliegt, wird noch mal von oben auf das Bauteil gedrückt und nachgelötet.
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9936.jpg?320  }} {{  :modellbau:multicopter_platine:aufbau:dscn9937.jpg?320}} Ich beginne die Bestückung immer mit der LED (LED1) und ihrem Vorwiderstand (R7), da ich nie sicher bin wie herum man die LED einlöten muss. Das liegt allerdings an der sehr spartanischen Markierung auf der Rückseite der LED. Jedenfalls sollte nach einlöten der Bauteile die LED leuchten wenn man den Pluspol an den zum IC nächsten Pad des Vorwiderstandes anlegt und den Minus-Pol an das Pad der LED, die am nächsten zum IC liegt.
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9938.jpg?320  }} {{  :modellbau:multicopter_platine:aufbau:dscn9939.jpg?320}} Jetzt kommt das komplizierteste. Das einlöten des IC. Mit seinen vielen Beinen ist die exakte Ausrichtung sehr wichtig, hier kann eine Lupe oder eine Digitalkamera die Makroaufnahmen machen kann, sehr hilfreich sein. Der ATmega 48/88/... hat noch einen weiteren Nachteil, an allen Seiten hat er gleich viele Beine. Doch auf der Platine wie auch auf dem Chip ist eine Ecke mit einem Punkt markiert. Und genau die müssen übereinander zum liegen kommen.\\ Jetzt werden alle Pads mit Löthonig ganz dünn eingestrichen, das schon erwähnte Streichholz ist dafür optimal da es nicht die Oberfläche der Platine beschädigt. Bei Verwendung der Lötpaste einfach alle Pads einstreichen, wirklich einmal über alle Pads pro Seite. Das Lot fliesst weitgehend beim Löten an die Pads. 
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9941.jpg?320  }} Dann wird der IC positioniert, wenn das zufriedenstellend geschehen ist, wird ein Pin angelötet. Danach wird mit der Lupe oder der Digitalkamera, der genau Sitz kontrolliert. Dann kann ruhig grosszügig der Rest der Pins angelötet werden. Danach werden alle Kurzschlüsse mit der Entlötlitze wieder entfernt. Aber Vorsicht nicht zu viel wieder weg nehmen!
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9942.jpg?320  }} Anschliessend werden die restlichen Widerstände eingelötet. Bei R4 und R11 muss aufgepasst werden. Man kann sie leicht verwechseln, leider liegen aber drei Nullen dazwischen. Und der Mikrokontroller würde nicht aus dem Reset kommen und nicht booten. Die LED blitzt dann nicht kurz auf nach dem Anlegen der Betriebsspannung. Selbes gilt für R7 und R10, dann ist aber der Spannungsregler falsch eingestellt und der Vorwiderstand für die LED ist dann auch zu klein.
 +~~CL~~
 +{{:modellbau:multicopter_platine:aufbau:dscn9951.jpg?320  }} {{  :modellbau:multicopter_platine:aufbau:dscn9952.jpg?320}} Jetzt kommen mit den Potis wieder schön grosse Bauteile. Bei der Montage muss man aber darauf achten entweder nur ganz dünn die Pads zu verzinnen. Oder man gibt wieder etwas Löthonig auf die Pads und verzinnt nicht. Bei der ersten Variante besteht die Gefahr das die Potis etwas schräg stehen (siehe linkes Bild). Die Potis im rechten Bild sind ohne vorverzinnte Pads eingelötet worden. Die Potis sollten möglichst weit Richtung Platinenrand platziert werden, damit man später noch an den Kondensatoren gut löten kann. 
 +~~CL~~
 +{{:modellbau:multicopter_platine:aufbau:dscn9953.jpg?320  }} Jetzt kommen mit den ganzen Tantalkondensatoren wieder einige recycelte Bauteile. Bei den Kondensatoren ist auf die Polung zu achten. Leider sind dies nicht auf der Platine markiert. Wenn alle Kondensatoren drauf sind, sind auch schon alle SMD Bauteile verbaut.
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9954.jpg?320  }} Jetzt kommen endlich die letzten Bauteile mit Beinchen. Auch die sechs Anschlüsse für die Regler können wenn gewünscht mit Stiftleisten versehen werden.
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9955.jpg?320  }} {{  :modellbau:multicopter_platine:aufbau:dscn9956.jpg?320}} Jetzt fehlen nur noch die Gyros. Zuerst werden die beiden liegenden eingebaut. Dazu werden sie mit Heißkleber befestigt. Man muss darauf achten, dass die Achsen stimmen und die Gyros nicht verdreht sind. Dann noch das stehende Gyro aufkleben. 
 +~~CL~~
 +
 +{{:modellbau:multicopter_platine:aufbau:dscn9957.jpg?320  }} {{  :modellbau:multicopter_platine:aufbau:dscn9958.jpg?320}} Zu guter letzt werden die Gyros mit der Platine verlötet. Die liegenden werden mit kurzen L-Förmigen Drahtstücken fest gelötet. Bei dem Stehenden einfach mit Drahtstücken verlöten, zuerst an den Kontakten der Gyros und dann an der Platine. Jetzt noch schnell die Kabel anlöten und fertig.
 +~~CL~~
 +
 +
 +
 +  
 +===== Firmware flashen =====
 +Die folgenden Beispiele gelten für den ATmega48 (m48) in Kombination mit einem [[http://www.fischl.de/usbasp/|USBasp Programmer]]. Als Software zum Programmieren verwende ich bevorzugt [[http://www.nongnu.org/avrdude/|avrdude]]. Das ist zwar nichts Buntes zum wild rumklicken, aber dafür hat man die volle Kontrolle über das was passiert. Und es funktioniert sogar auf allen Betriebssystemen die ich benutze. Und auch an Windows Benutzer wurde von den Entwicklern von avrdude gedacht. Wie man den USBasp unter Linux ans laufen bekommt habe ich ja schon [[elektronik:avr:usbasplinux|hier]] beschrieben. Bei neueren Distributionen ist dies allerdings nicht mehr notwendig. Wer es einfacher und mit GUI haben will der kann mein "[[en:modellbau:kkmulticopterflashtool|KKmulticopter Flash Tool]]" verwenden.
 +
 +<color red>Ganz wichtig ist, darauf zu achten, dass man frei von statischen Aufladungen arbeitet. Nicht mal eben auf der Mikrofaser Couch ne neue firmware einspielen. Das geht mit Sicherheit in die Hose.</color>
 +
 +Zu erst wird mit 0xE2 die low fuse neu geflasht. Das bewirkt, dass der 8MHz Takt nicht mehr durch 8 geteilt wird. 0xE2 gilt auch für den ATmega88 (m88). Wenn ein anderer Controller benutzt wird muss entsprechend der korrekte Wert für die Fuses bestimmt werden. Dabei hilft der [[http://www.engbedded.com/fusecalc/|Engbedded AVR Fuse Calculator]].
 +<code>
 +avrdude -c usbasp -p m48 -U lfuse:w:0xE2:m
 +</code>
 +Wenn alles richtig läuft sollte die folgende oder eine Ähnliche Ausgabe kommen.
 +<code>
 +avrdude: warning: cannot set sck period. please check for usbasp firmware update.
 +avrdude: AVR device initialized and ready to accept instructions
 +
 +Reading | ################################################## | 100% 0.02s
 +
 +avrdude: Device signature = 0x1e9205
 +avrdude: reading input file "0xE2"
 +avrdude: writing lfuse (1 bytes):
 +
 +Writing | ################################################## | 100% 0.02s
 +
 +avrdude: 1 bytes of lfuse written
 +avrdude: verifying lfuse memory against 0xE2:
 +avrdude: load data lfuse data from input file 0xE2:
 +avrdude: input file 0xE2 contains 1 bytes
 +avrdude: reading on-chip lfuse data:
 +
 +Reading | ################################################## | 100% 0.01s
 +
 +avrdude: verifying ...
 +avrdude: 1 bytes of lfuse verified
 +
 +avrdude: safemode: Fuses OK
 +
 +avrdude done.  Thank you.
 +</code>
 +Und direkt hinterher die firmware.
 +<code>
 +avrdude -c usbasp -p m48 -U flash:w:TricopterV1_5_M48_M88.hex 
 +</code>
 +Hier nach sollte etwas wie das hier kommen.
 +<code>
 +avrdude: warning: cannot set sck period. please check for usbasp firmware update.
 +avrdude: AVR device initialized and ready to accept instructions
 +
 +Reading | ################################################## | 100% 0.02s
 +
 +avrdude: Device signature = 0x1e9205
 +avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
 +         To disable this feature, specify the -D option.
 +avrdude: erasing chip
 +avrdude: warning: cannot set sck period. please check for usbasp firmware update.
 +avrdude: reading input file "TricopterV1_5_M48_M88.hex"
 +avrdude: input file TricopterV1_5_M48_M88.hex auto detected as Intel Hex
 +avrdude: writing flash (4044 bytes):
 +
 +Writing | ################################################## | 100% 30.12s
 +
 +
 +
 +avrdude: 4044 bytes of flash written
 +avrdude: verifying flash memory against TricopterV1_5_M48_M88.hex:
 +avrdude: load data flash data from input file TricopterV1_5_M48_M88.hex:
 +avrdude: input file TricopterV1_5_M48_M88.hex auto detected as Intel Hex
 +avrdude: input file TricopterV1_5_M48_M88.hex contains 4044 bytes
 +avrdude: reading on-chip flash data:
 +
 +Reading | ################################################## | 100% 18.64s
 +
 +
 +
 +avrdude: verifying ...
 +avrdude: 4044 bytes of flash verified
 +
 +avrdude: safemode: Fuses OK
 +
 +avrdude done.  Thank you.
 +</code>
 +Wenn alles funktioniert hat sollte beim nächsten Anstecken der Versorgungsspannung an die Platine, die Led kurz aufblitzen. Bei Problemen beim Schreiben der Firmware, C10 gegen 100nF tauschen.
 +
 +===== Inbetriebnahme =====
 +{{  :modellbau:multicopter_platine:inbetrieb:steckerbelegung.jpg?480}}
 +
 +====Steckerbelegung zum Empfänger====
 +(links<->rechts)
 +  - Querruder
 +  - Höhe
 +  - Motor
 +  - Seite
 +
 +==== Steckerbelegung für Tricopter ====
 +  - Motor links vorne
 +  - Motor rechts vorne
 +  - Motor hinten
 +  - Servo 
 +
 +==== Steckerbelegung für Quadrocopter ====
 +  - Motor vorne
 +  - Motor links
 +  - Motor rechts
 +  - Motor hinten
 +
 +~~CL~~
 +
 +==== Scharfschalten der Platine ====
 +
 +Wenn an der Platine die Betriebsspannung angeschlossen wird, blitzt die LED kurz auf. Aber sonst passiert nichts weiter. Das ist beabsichtigt damit es nicht zu einem "Frühstart" oder anderen Unfällen kommen kann. Deshalb muss zum Scharfschalten (bei Mode2) linke Knüppel nach unten rechts bewegt werden bis die LED dauerhaft leuchtet. Zum Sichern wird der Knüppel nach unten links bewegt.  
 +Das kann man recht gut im folgenden Video sehen. Falls das nicht funktioniert, sollte man die Trimmung für Gas und Heck überprüfen. 
 +
 +{{youtube>Tq7jVRPGbeE}}
 +
 +==== Grundeinstellung ====
 +Als Ausgangspunkt für die ersten Schwebeversuche wurden 50% Dual Rate auf Gas und Roll(Querruder) gesetzt und 100% bei dem Heckservo eingestellt. Die Potis stehen auf ca. 50%. Nun wird versucht zu schweben. Und anschliessend die Werte der Potis so lange erhöhr bis der Tricopter (oder was immer mit der Platine betrieben wird) aufschaukelt. Dann wird wieder etwas zurück genommen. Für dynamisches herumbolzen sollen niedrigere Werte zum gewünschten Ziel führen.
 +
 +==== Gasweg der Regler einstellen ====
 +Falls es die verwendeten Regler es erlauben, kann man mit folgender Vorgehensweise den Weg der Regler einstellen.
 + 
 +  -Das Poti für die Einstellung der Heckempfinlichkeit (Yaw) auf Null drehen. Das ist bei der SMD Variante ganz Rechts.
 +  -Sender anschalten.
 +  -Gasstick auf die höchste Stellung bringen.
 +  -Die Platine anschalten.
 +  -Warten bis der Regler die Programmierung des Wegs angenommen hat.
 +  -Gasstick wieder auf Null ziehen, jetzt sollten die Regler normal initialisieren.
 +  -Platine wieder ausschalten.
 +  -Das Poti wieder zurück auf die alte Position stellen.
 + 
 +==== Wirkrichtung der Geber checken ====
 +Bitte folgende Schritte ohne die Propeller durchführen.
 +
 +  -Alles einschalten und Platine scharf schalten.
 +  -Etwas Gas geben so das alle Motoren laufen.
 +  -Den Pitch-Knüppel (Höhenruder) nach vorne drücken. Der Motor im Heck sollte jetzt schneller laufen. Ansonsten die Wirkrichtung dieses Gebers reversen.
 +  -Den Roll-Knüppel (Querruder) nach links drücken. Der rechte Motor sollte jetzt schneller laufen. Wenn dem nicht so ist Geber reversen.
 +  -Gier-Knüppel (Seitenruder) nach links bewegen. Beim Tricopter sollte das Heckservo das Heck nach rechts neigen, so dass der Copter sich gegen den Uhrzeiger dreht. Beim Quattrocopter muss der vordere und hintere Motor schneller werden. Sonst Geber reversen.
 + 
 + 
 +==== Gyrowirkrichtung kontrollieren ====
 +Wieder alle Einstellungen ohne Propeller testen.
 +
 +  -Alles einschalten und Platine scharf schalten.
 +  -Etwas Gas geben so das alle Motoren laufen.
 +  -Copter nach vorne neigen. Vorderer Motor(e) sollten schneller werden. Sonst Wirkrichtung des Nick-Gyro ändern.
 +  -Copter nach links negen. Linker Motor sollte schneller werden. Sonst Wirkrichtung des Roll-Gyro ändern.
 +  -Copter im Uhrzeigersinn drehen. Beim Tricopter sollte das Heckservo den Heck-Motor nach rechts drehen. Beim Quattrocopter sollten vorderer und hinterer Motor schneller werden. Sonst Wirkrichtung des Yaw-Gyro ändern.
 + 
 +==== Gyrowirkrichtung ändern ====
 + 
 +  -Roll Poti auf Null stellen. Bei der SMD Platine ganz nach Rechts drehen.
 +  -Platine einschalten.
 +  -LED blinkt 10 mal schnell.
 +  -Den Geber bewegen dessen Gyro reversed werden soll.
 +  -LED blinkt dauerhaft.
 +  -Platine wieder ausschalten.
 +Zum Einstellen von weiteren Gyros die ganze Prozedur ab Punkt 2 wiederholen. Zum Schluss das Roll Poti wieder auf seine alte Stellung bringen. 
 + 
 +
 +===== Links =====
 +  * [[http://www.kkmulticopter.com|Offizielle Homepage zur kkmulticopter-Platine]]
 +  * [[http://www.rcgroups.com/forums/showthread.php?t=1143569|RCgroups Thread]]
 +  * [[http://www.rclineforum.de/forum/thread.php?threadid=281543|RCLine Thread]]
 +  * [[modellbau:kkmulticopter]]
 +  * [[modellbau:kkminiquattro]]