Neuer "Sensor": MultiWii Mega2560 mit Duplex EX

  • Henning
  • Henning's Avatar Offline Autor
  • Elite Mitglied
  • Elite Mitglied
  • Beiträge: 316
  • Dank erhalten: 144

Neuer "Sensor": MultiWii Mega2560 mit Duplex EX wurde erstellt von Henning

Posted 22 Feb. 2015 23:40 #1
Hallo zusammen,

... MultiWii spricht Duplex EX ...

Für Multicopter mit MultiWii-Controller auf Basis des Atmel MEGA2560 (z.B. Crius AIO-Boards) habe ich in den letzten Tagen eine Duplex-EX Schnittstelle in den MultiWii-Code eingebaut. Um dessen Daten über Telemetrie zu übertragen, ist nur eine Verbindung zwischen UART3 des FC und EXT des RSAT erforderlich, sonst keine zusätzliche Hardware. Im CRIUS 2.0 läuft das Sensorprotokoll in einer MultiWii 2.3 mit, ohne die Zykluszeit von 2500us zu beeinträchtigen.

Was man ins Sensorprotokoll packt, ist natürlich Geschmackssache - aber Lipo-Spannung, Flughöhe, Temperatur, GPS-Sats und -Position sind mE auf jeden Fall sinnvoll. Wer einen Stromsensor im FC nutzt, kann natürlich auch Strom und Lipo-Kapa einbauen. Im MultiWii-Code sind ja die meisten Parameter als globale Var angelegt, daher hat die Sensorroutine freien Zugriff auf viele Systemdaten, zB auch Reglerparameter etc.
Eine Menusteuerung ist noch keine drin, die wäre aber möglich, zB zum Einstellen der PID-Parameter.

Vorher in der Dämmerung war ich kurz probefliegen mit meinem "Versuchsträger" FlyduMini - DUPLEX EX tut wunderbar... :whistle:

Wer fliegt im Forum MultiWii? Bei Bedarf kann ich den Arduino MultiWii-Code gerne posten.

Mit sensorischen Grüßen,
Henning
Last Edit:22 Feb. 2015 23:41 von Henning

Anhänge:

Letzte Änderung: 22 Feb. 2015 23:41 von Henning. Begründung: Bilder
Folgende Benutzer bedankten sich: 0n3 70uch, KeesBlokland

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • cmfs
  • cmfs's Avatar Offline
  • Neues Mitglied
  • Neues Mitglied
  • Beiträge: 16
  • Dank erhalten: 2

cmfs antwortete auf Neuer "Sensor": MultiWii Mega2560 mit Duplex EX

Posted 23 Feb. 2015 07:33 #2
Hallo!

Kannst du mir den sketch bzw. die Änderungen schicken?
Fliege 2.31
Frage: Kann ich das Signal parallel abgreifen wenn Uart belegt? (BT, OSD)
Welche Pins stecke ich wo in den Ex

Menü Steuerung der PID Werte wäre schon interessant

Danke im Voraus
chris
von cmfs

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • bendh
  • bendh's Avatar Offline
  • Platinum Mitglied
  • Platinum Mitglied
  • Beiträge: 332
  • Dank erhalten: 64

bendh antwortete auf Neuer "Sensor": MultiWii Mega2560 mit Duplex EX

Posted 23 Feb. 2015 09:35 #3
Ich fliege zwar noch die Version 2.1 aber mit Jetisoft basierend auf Alexander Buschek.
Ich habe auch eine Version 1.9 mit Jetisoft von Quax.
Mit beiden kann ich die PID-Werte einstellen. Sie sind jedoch nur mit der Jetibox einstell- und anzeigbar, da ich keinen Jetisender habe.
Es betrifft auch nur den Arduino mit ATMega328.

Gruß Bernd
Gruß Bernd
Last Edit:23 Feb. 2015 09:37 von bendh
Letzte Änderung: 23 Feb. 2015 09:37 von bendh.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • Henning
  • Henning's Avatar Offline Autor
  • Elite Mitglied
  • Elite Mitglied
  • Beiträge: 316
  • Dank erhalten: 144

Henning antwortete auf Neuer "Sensor": MultiWii Mega2560 mit Duplex EX

Posted 23 Feb. 2015 23:16 #4
Hallo zusammen,

da die serielle Schnittstelle im Jeti 9-Bit-Format doch recht speziell konfiguriert werden muss, lassen sich leider die MultiWii-eigenen Routinen nicht zur Initialisierung und Ansteuerung der Telemetrie nutzen.

Ausserdem werden die Telemetrie-Daten ja fortlaufend ausgegeben und nicht nur im "PID-Setup"-Modus wie bei den Versionen von Quax und A.Buschek. Daher ist eine gemeinsame Nutzung der UART mit anderen Protokollen nicht möglich, d.h. das Duplex-EX Protokoll erfordert eine komplett dafür freigestellte Schnittstelle. Hier der komplette Sketch, für den CRIUS AIO meines X525v3: MultiWii Duplex EX

Zur Hardware: UART-TX wird einfach an RSAT-EXT angeschlossen, bei Bedarf kann RX über 100Ohm ... 2kOhm mit TX verbunden werden.

Sicher geht der Code noch eleganter, aber ich habe die Zuordnung erstmal fest auf UART3 gelegt (= Telemetrie-Port der MultiWii, sofern vorhanden), und die Routinen drumherum entsprechend neu codiert - natürlich mit DEFINE aus der config.h schaltbar...

Die Jeti-spezifischen Teile liegen in JETI.CPP und JETI.H, modifiziert sind ausserdem MultWii.cpp, GPS.cpp, config.h und def.h (gekennzeichnet durch Kommentare "mod HST" im Sourcecode).

Viel Spaß beim Austesten!
Gruß
. Henning
Last Edit:23 Feb. 2015 23:23 von Henning
Letzte Änderung: 23 Feb. 2015 23:23 von Henning.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • schiwo1
  • schiwo1's Avatar Offline
  • Platinum Mitglied
  • Platinum Mitglied
  • Beiträge: 490
  • Dank erhalten: 154

schiwo1 antwortete auf Neuer "Sensor": MultiWii Mega2560 mit Duplex EX

Posted 23 Feb. 2015 23:19 #5
Super job, Henning!
Frage, könntest du das auch für den Pixhawk/APM entwickeln?
Ich würde mich auch an den Unkosten beteiligen.
Gruß Stephan
von schiwo1

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • 0n3 70uch
  • 0n3 70uch's Avatar Offline
  • Premium Mitglied
  • Premium Mitglied
  • Beiträge: 133
  • Dank erhalten: 31

0n3 70uch antwortete auf Re:Neuer "Sensor": MultiWii Mega2560 mit Duplex EX

Posted 24 Feb. 2015 09:03 #6
Hi,

gibt es für Arducopter bereits. Läuft allerdings über einen zusätzlichen Arduino Pro Mini. Suche mal nach Mav2Duplex.

Gruß
Fabi
JETI4ever
von 0n3 70uch

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.988 Sekunden