Raspberry Pi Telemetrie Mavlink Java

Status
Nicht offen für weitere Antworten.

digital_wadik

Well-known member
#1
Hi,

bin grade an einem sehr spannenden Projekt dabei.
Erstmal zum aufbau:

Habe mein APM 2.5.2 mit dem Raspberry pi verbunden die Verbindung funktioniert auch Problem los.
Für mein Projekt brauche ich jedoch die Verbindung zum Mavlink durch ein Java Programm.
möchte eine art HUD entwickeln
Ich selber kann Java Programmieren.

Das Problem:
Ich finde keine API Dokumentation zur Mavlink Library. Die Library habe ich mir gezogen.
Konnte aber keine weiteren Infos finden.
Das es funktioniert steht außer Frage. Gibt ja genug Android Apps die Mavlink bereits implementiert haben.

Gibt es vlt. erfahrene Java Programmierer unter euch oder hat jemand von euch schon mit Mavlink in C gearbeitet.
Für jede Hilfe wäre ich echt dankbar.
Das ist das einzige Problem das ich in meinem Projekt habe.


Gruß
Wadik
 

digital_wadik

Well-known member
#3
Ja die lib datei habe ich mir ja auch schon gezogen. Ok die Dokumentation ist grade mal auf zwei methoden reduziert oder wars das schon. Mal sehen was sich damit machen lässt.

Hatt jemand ne ahnung wie ich ne richtige UART verbindung in Java programmiere ? bzw welche lib gibt es dort. Habe jetzt nur rxtx lib gefunden und die Doku dazu finde ich auch nicht.

Ist vlt. Das falsche Forum hier aber vlt. habe ich ja glück und es findet sich noch ein Java programmierer.
 

digital_wadik

Well-known member
#5
Darauf bin ich auch schon gestoßen. Habs aber ihrgendwie nicht zum laufen bekommen. Komisch mit I2c hat ich nie solche probleme :/

Naja werde mich mal intensiver reinhängen.

Trozdem danke ;)


Habe noch die pi4j lib ausprobiert da bekomme ich auf jeden fall ein lebenszeichen von der FC jedoch konnte ich erstmal nicht mehr damit anfangen.
 
Zuletzt bearbeitet:

Rangarid

Erfahrener Benutzer
#6
Achso mit dem Raspi bist du ja eh unter Linux, da brauchst du kein RXTX, das brauchst du nur unter Windows. Linux hat nativen Seriellen Support unter Java. Hat was mit den MS Lizenzen zutun. Die Klassen und alles heißen aber gleich.
 

lazyzero

... zu viel geflashdingst
#7
Achso mit dem Raspi bist du ja eh unter Linux, da brauchst du kein RXTX, das brauchst du nur unter Windows. Linux hat nativen Seriellen Support unter Java. Hat was mit den MS Lizenzen zutun. Die Klassen und alles heißen aber gleich.
So, so. Kannst du mich mal darauf stoßen? Finde dazu nix.

Wenn Du Beispiele zu zur Nutzung von rxtxlib unter raspberry brauchst dann schau dir mla den Code vom UniversalGCodeSender an. Da findest Du auch die passenden JNI Dateien.

Um die librxtx zu benutzen brauchst Du namlich nicht nur die JAR DAtei mit der Lib sondern auch noch den "nativen Treiber" (JNI) für das verwendete Betriebssystem & Architektur.
 

Rangarid

Erfahrener Benutzer
#8
So, so. Kannst du mich mal darauf stoßen? Finde dazu nix.
Vielleicht wurde das inzwischen auch wieder geändert aber hier stehts:
http://www.oracle.com/technetwork/java/index-jsp-141752.html

The Java Communications API (also known as javax.comm) provides applications access to RS-232 hardware (serial ports) and limited access to IEEE-1284 (parallel ports), SPP mode.
[...]
Implementations of the API are currently available for Solaris SPARC, Solaris x86, and Linux x86.
hatte das letzte mal damit zutun vor 3 Jahren, da hatte ich mich aber nur kurz damit beschäftigt. Hatte das deshalb noch irgendwie so im Hinterkopf...

Hier die API dazu:
http://docs.oracle.com/cd/E17802_01...reference/api/javax/comm/package-summary.html
 
#10
Wäre es nicht eine option Mavproxy zu verwenden? Dann müsstest du dir um die ganze Kommunikation gar nicht groß kümmern und falls mavlink mal weiterentwickelt wird musst du die Änderungen auch nicht selber nachimplementieren.
http://tridge.github.io/MAVProxy/
http://dev.ardupilot.com/wiki/raspberry-pi-via-mavlink/
Phyton Scripte kannst du in Java mit dem Python Java Interpretor oder dem Java Native Inteface aufrufen.
Verwendest du zwischen dem rpi und den APM einen Logic Level Converter?
 

digital_wadik

Well-known member
#11
Danke für die hilfe Leute. Werde mich da mal drauf stürzen.

@timoski danach habe ich gesucht :)

Ja habe dazwischen den Logic Level Converter von Sparkfun funktioniert super.
 

digital_wadik

Well-known member
#12
Habe mir mal die API des phytonInterpreter angesehen. Die ist echt genial. Und benhaltet genau die Methoden die ich erwartet habe. Danke noch mal @timoski für den hinweis :)
 
#13
Freut mich wenn ich helfen konnte.
Ich möchte demnächst auch mein rpi mit meinem APM verbinden und die Telemetrie dann über einen UMTS laufen lassen. Eigentlich habe ich schon alles da was ich dafür brauche, nur fehlt mir gerade leider die Zeit es umzusetzen.
 
#15
Danke für den Link. Das es die auch in Deutschland gibt hab ich irgendwie übersehen und im Ausland bestellen war mir zu teuer. Habe mir jetzt schon 2N7000 Mosfets und Wiederstände beim Conrad geholt. Ich versuch's dann erstmal damit, aber falls es nicht funktioniert, weiß ich ja jetzt wo ich günstig einen LLC herbekomme.
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten