Der Hamming Code für den Arduino

Bei einer digitalen Funkübertragung kann es zu Störungen kommen und einzelne Bits werden falsch empfangen, kippen sozusagen um. Aus einer 1 wird eine 0.

Richard Wesley Hamming hat sich dazu Gedanken gemacht und eine Codierung entwickelt, die es erlaubt zu überprüfen ob alle Bits richtig übertragen wurden. Einzelne Bits können sogar rekonstruiert werden.

Hier sollen 4 Daten-Bits übertragen werden. Dazu werden nach einem bestimmten Schema 3 Paritäts-Bits hinzugefügt, die Daten werden codiert. Es müssen nun 7 Bits übertragen werden. Wird ein Bit falsch empfangen, so lässt es sich später bei der Decodierung rekonstruieren.

Die 4 Daten-Bits werden mit 3 Paritäts-Bit nach diesem Schema ergänzt.
Die Datenbits: d4, d3, d2, d1 Weiterlesen

Elastische Füße für den X-525 Quadrokopter

Heute auf dem Flohmarkt habe ich 10mm Silikonschlauch gefunden, damit habe ich 4 elastische Füße gebaut.

Ich habe 4 x 35cm davon abgeschnitten, an den Enden zwei 3mm Löcher gebohrt und das ganze zwischen jeweils 2 Unterlegscheiben festgeschraubt.

Das sorgt hoffentlich dafür dass die Alu Arme nicht mehr verbiegen bei einer unglücklichen Landung und er hoch und sicher im Gras steht. Bislang hat er das Gras abmäht und dadurch hatte ich immer schnell wieder unwuchtige Propeller. Weiterlesen

X-525 Quadrokopter Umbau

Ich habe einen X525 Quadrokopter  mit Multiwii Controller zusammengebaut. Nach vielen Versuchen mit den PID Werten für die Lageregelung im Multiwii Board ist er nicht ordentlich geflogen. Einige Abstürze, verbogene Arme und einige zerbrochene Propeller später habe ich ihn mit einer waagerechten Leine und USB Kabel zum PC abgeglichen. Dann ging es einigermassen.

Im Flug dreht er aber immer noch häufig weg, verliert also den Kurs. Wenn er dann weiter weg fliegt ist es sehr schwierig ihn wieder zurück zum Startpunkt zu bekommen. Ausserdem reagiert er sehr stark auf Vibrationen wenn die Propeller nicht ordentlich ausgewuchtet sind, er lässt sich dann zum Teil gar nicht mehr fliegen und schmiert schnell ab. Das führt immer wieder zu Bruch. Die Alu Arme verbiegen und auch die Motorhalter brechen weg. Das verwendete Alu Profil 13x13x0,5mm ist hier nicht als Meterware zu bekommen.

Die vier Motoren und die 30A Speedcontroller sind OK und werden weiter verwendet. Die Grundplatte ist gut und dafür vorgesehen die Arme für den Transport zusammenzuklappen. Das soll dieses mal auch funktionieren.

Nun baue ich ihn neu auf, nachdem ich aus den vorherigen Fehlern gelernt habe. Weiterlesen

LC Entstörfilter für meine FPV Kamera im Quadrokopter

Mein FPV Bildschirm hat Streifen, die durch die ESC Speedkontroller der Motoren verursacht werden. Das ist zu erkennen wenn ich Gas gebe und die Streifen im Display stärker werden.
Ich habe einen einfachen und gut funktionierenden LC Filter für meine FPV Kamera am Quadrokopter aus alten Teilen zusammen gelötet.

Eine Induktivität mit ca. 100 uH in Reihe in die Plus Leitung vom Akku.
Und zwei Kondensatoren dahinter zwischen die + und – Leitung.
Ein grosser Elko mit 1000uF 25V und parallel dazu einen kleinen Tantal Kondensator 1uF 35V.
Alle Teile sind gebraucht von einer PC Platine / Motherboard gekommen.

fpv-LC-Filter

Danke André für die Zeichnung.

Hier das Ergebnis bevor der Schrumpfschlauch drüber kommt. Weiterlesen

MCP-4725 / GY4725

MCP4725 12Bit DA Wandler vom Arduino ansteuern

Der Microchip MCP 4725 Digital zu Analog Wandler wird über den I²C Bus angesteuert. Er kann die Spannungen von GND bis VCC ausgeben mit einer 12 Bit Auflösung oder 4096 Werten. Bei 5V Versorgungsspannung ist das eine Auflösung von ca. 1,2 mV pro Bit.

MCP4725

Die Ansteuerung ist einfach mit 2 Leitungen zu bewerkstelligen
A4 > SDA
A5 > SCL Weiterlesen

RC Empfaenger

Servo Pulslänge vom RC Empfänger mit dem Arduino ermitteln

Der Fernsteuer Empfänger gibt die Servo Impulse raus. Diese Pulslänge möchte ich mit dem Arduino ermitteln und im Terminal ausgeben.

Dazu wird ein Servokanal an den Arduino angeschlossen.
+ an +5V
– an GND
Signal an D2

RC Empfänger Pulslänge messen

Hier das Programm mit serieller Ausgabe Weiterlesen

servo

Servosteuerung mit einem Poti und dem Arduino

Ein Poti kann die Stellung des Modellbau Servos vorgeben.

Dazu wird ein Poti mit ca. 1-100 kOhm an +5V und GND angeschlossen und der Mittelabgriff kommt auf einen analogen Arduino Eingang, z.B. A6.

Der Servo wird auch an +5V und GND angeschlossen und die Steuerleitung kommt an einen digitalen Ausgang, z.B. D2.

Poti Servo Ansteuerung

Von Arduino wird die Potispannung über den Analog Eingang von 0-1023 eingelesen und ein entsprechendes Pulssignal wird zum Servo ausgegeben. Weiterlesen