welche Programmiersprache?

Gast #2882351
Lesenswert?

hallo,

ihr kennt doch bestimmt alle die AR-Drone, welches mit einem iphone bzw. 
android gesteuert wird. In welcher Programmiersprache ist denn die 
AR-Drone programmiert bzw. die Software vom Smartphone? In welcher 
Sprache verständigen sie sich denn? gibt es irgendwo eine ausführliche 
erklärung zum durchlesen?

gruß
jo
Gast #2882359
Lesenswert?

Wieso interessiert dich das? Die "Verständigungssprache" nennt sich 
übrigens Protokoll.
Und eine Programmiersprache ist nur ein Mittel um Funktionalität 
erzeugen und darstellen zu können. Ob es jetzt ASM, C (wahrscheinlich in 
der Drohne) oder irgendwas anderes ist, ist doch eher egal.
#2882939
Lesenswert?

wie ist es möglich, dass du dich mit einem franzosen auf englisch 
unterhältst? (ok, franzose und englisch ist ein schlechte beispiel)

ihr seid ja auch in verschiedenen sprachen "programmiert"...

ernsthaft:
ein protokoll kann man sich wie eine genau definierte sprache 
vorstellen. solange beide gesprächsteilnehmer genau wissen was die 
einzelnen "worte" bedeuten können sie die sprache verstehen, auch wenn 
der gesprächspartner in einer vollständig anderen programmiersprache 
geschrieben ist.
#2882940
Lesenswert?

jo schrieb:
> Naja, weil, wenn ich mal so überlege, die Ar-drone ist in C programmiert
> und die software dazu in Java , wie ist es denn möglich das sie trotzdem
> miteinander kommunizieren können.

Auf genau die gleiche Art, auf die auch ein Kisuaheli sprechender 
Schachspieler mit einem Aborigine Schachspieler eine Partie Schach 
spielen kann: sie haben sich auf einen Satz Symbole geeinigt, die von 
beiden in der gleichen Art und Weise interpretiert werden.


Wie kannst du in Neapel auf einer Kreuzung wissen, was der Polizist in 
Kruezungsmitte anordent? Du kannst ja gar kein Italienisch?
Ganz einfach: Du weisst, wenn er den Arm hebt, dann bedeutet das 
'Achtung'. Siehst du seine ausgebreiteten Arme quer (und du den Mann 
frontal), dann darfst du nicht fahren. Siehst du ihn von der Seite, dann 
darfst du fahren.
Und das alles ohne dass du Italienisch kannst. Woher wißt du das? Das 
hast du in deiner Sprache in der Fahrschule gelernt. Und der Polizist 
hat das eben in seiner Sprache gelernt. Und da diese Symbole überall 
gleich sind, versteht ihr euch.
#2882942
Lesenswert?

jo schrieb:
> Naja, weil, wenn ich mal so überlege, die Ar-drone ist in C programmiert
> und die software dazu in Java , wie ist es denn möglich das sie trotzdem
> miteinander kommunizieren können.

Die Kommunikation geht über Funk per WIFI/WLAN!

Den Funkwellen zwischen der Fernsteuerung und dem gesteuerten Gerät ist 
es vollkommen schnurz, womit die ausgetauschten Funkbefehle für das WLAN 
programmiert worden sind.
#2882955
Lesenswert?

jo schrieb:

> wie ist es denn möglich das sie trotzdem
> miteinander kommunizieren können.

Wie ist es möglich, dass dich ein Kutschenpferd 'versteht' was du 
willst?

Du sitzt auf der Kutsche und machst "Brrrrrr" und das Pferd bleibt 
stehen.
Bedeutet "Brrrrrr" für dich in deiner Sprache irgendwas besonderes? 
Nein.
Bedeutet "Brrrrrr" für das Pferd in seiner Sprache irgendwas besonders? 
Nein.

Und trotzdem funktioniert es. Das Pferd hat gelernt, stehen zu bleiben, 
wenn es "Brrrrrr" hört und du hast gelernt, "Brrrrrr" zu sagen, wenn du 
willst das das Pferd stehen bleibt.


Was also hindert das iPhone, sagen wir mal den Zahlencode 42 zu 
schicken, wenn die Anweisung "steigen" lauten soll, oder 89, wenn die 
Drohne sinken soll?
Richtig. Nichts.
Man hätte auch Singalflaggen benutzen können und eine Webcam auf der 
Drohne, die die Flaggen erkennt. Aber so ist es einfacher, wenn das 
iPhone einfach nur verabredete Codes über die Funkstrecke schickt :-)
Persönliche Seite #2882969
Lesenswert?

Karl Heinz Buchegger schrieb:
> Wie kannst du in Neapel auf einer Kreuzung wissen, was der Polizist in
> Kruezungsmitte anordent?

OT: Ist aber gut, daß Du hier drauf verzichtet hast, das naheliegende 
Beispiel einer Verkehrsampel zu verwenden -- die nämlich hat in Neapel 
eine ganz andere Bedeutung. Sobald auch nur ein bisschen Verkehr ist, 
wird sie ignoriert, beachtet wird sie nur, wenn dabei kein anderer 
(hinter einem fahrender) gestört werden könnte ...
Gast #2883302
Lesenswert?

jo schrieb:

> alles klar. also ist es gar nicht so wichtig, dass die beiden nicht in
> der selben Programmiersprache programmiert sind. sie verstehen sich ja
> irgendwie :)

Ich kenne die AR-Drohne nicht.

Aber: Versuch doch mal, sie in Pferdesprache zu steuern: Hüüüüaah, 
brrrrr. ;-)
(Firma: Schweigstill IT) Persönliche Seite #2883857
Lesenswert?

In der Tat ist die Programmiersprache egal, in der die Firmware der 
ARdrone und die zugehörige App geschrieben sind.

Es gibt jedoch auch spezielle Beschreibungssprachen für die 
Datenkommunikation, z.B. ASN.1, aus denen auf der einen Seite Funktionen 
in "normalen" Programmiersprachen wie C, C++, Pascal, Java o.ä. 
generiert werden, und auf der anderen Seite auch Anforderungen an die 
Kommunikationsschnittstelle definiert werden.

Dies sollte man jedoch nicht mit Beschreibungssprachen wie z.B. XML 
verwechseln, die direkt als Datenformat bei der Kommunikation geeignet 
sind. Jedoch gibt es gerade auch für XML Funktionsbibliotheken und 
Programmgeneratoren, um die Erzeugung und Auswertung in 
Programmiersprachen zu ermöglichen.
Gast #2884092
Lesenswert?

jo schrieb:
> Eumel schrieb:
>> Die Programme auf deinem Pc sind doch auch in unterschiedlichen Sprachen
>> geschrieben :)
>
> stimmt. habe ich gar nicht so drauf geachtet :)

Oder auch, um die Kommunikation zwischen verschiedenen Systemen 
einzubinden:
Web-Dienste sind z.B. oft in PHP programmiert. Trotzdem kann man die 
Webseiten auch auf einem Browser anschauen, der nicht in PHP 
programmiert ist.
Und die Textausgaben, die ein in BASIC programmierter µC an die serielle 
Schnittstelle schickt, können auch dann auf dem PC dargestellt werden, 
wenn das Terminalprogramm in C++ geschrieben ist.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren