Android Handy als Mensch-Maschine Interface

Gast #2731868
Lesenswert?

Moin,

um größere oder kleiner Gerätschaften zu steuern, bedarf es gewöhnlich 
Schalter und Displays. Beides könnte theoretisch mit einem Android Handy 
dargestellt werden und daher diese Elemente ersetzen. Daher die Frage:

Gibt es eine Möglichkeit, ein Android Handy (oder Pad) z.B. per USB mit 
einem Microcontroller zu verheiraten, so dass die Zustände von Buttons 
oder alphanumerischen Fensterinhalten (also Bits und Bytes) an einen 
Microcontroller übertragen werden können? Natürlich sollte auch der 
umgekehrte Weg möglich sein und Zustände bzw Werte an die "LED"s und 
Anzeigen auf das Handy übertragen werden.

Wurde so etwas schon einmal realisiert und dokumentiert? Gibt es da 
Bastel- oder gar fertige Lösungen?

Gruß
Schuschu
#2732064
Lesenswert?

Das funktioniert auch mit dem Arduino MEGA ADK, der hat eine USB-Host 
Schnittstelle. Für das Handy habe ich eine kleine App heruntergeladen, 
die heißt Handbag: http://rancidbacon.com/p/android-arduino-handbag/
Der Vorteil ist, dass man nur den Code für den Arduino schreiben muss 
(also simples C / C++) und sich die Programmierung des Handys sparen 
kann. Ich steuere damit ein paar DACs und lese die Spannungswerte wieder 
ein. Für meine Anwendung reicht das vollkommen.
Nachteil ist natürlich, dass du immer eine USB-Verbindung benötigst.

LG,
John
Gast #2732073
Lesenswert?

Mit USB sind die Einheiten mit einem Kabel Verbunden. Stört meistens. 
Außerdem hast du eine galvanische Verbindung von deiner Anwendung zum 
Handy
(mit allen daraus resultierenden Problemen)
Die Beste Variante ist ein serielles Bluetoothmodul. Läuft problemlos 
über RS232 Protokoll.
Ich verwende schon seit längerem nur mehr mein Handy (Android - Galaxy) 
als Display, Taster, Schalter, akustische Meldungen ... für meine 
Mikroprozessoren.
Gast #2732554
Lesenswert?

Raven schrieb:

> Die Beste Variante ist ein serielles Bluetoothmodul. Läuft problemlos
> über RS232 Protokoll.
> Ich verwende schon seit längerem nur mehr mein Handy (Android - Galaxy)
> als Display, Taster, Schalter, akustische Meldungen ... für meine
> Mikroprozessoren.

Wie programmierst du? Gibts eine gute Einführung/Tutorial für die 
Android programmierung?
#2732968
Lesenswert?

Raven schrieb:
> Mit USB sind die Einheiten mit einem Kabel Verbunden. Stört meistens.
> Außerdem hast du eine galvanische Verbindung von deiner Anwendung zum
> Handy

ADUM4160 und 3160

Von Microchip gibt es sowohl für Android als auch iOS entsprechende 
Hardware und Software.
http://www.microchip.com/pagehandler/en-us/technology/smartphoneaccessory/tools/android.html
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2680&dDocName=en553676
Gast #2733565
Lesenswert?

die Programmierung auf Prozessorseite ist indifferend. Es
müssen nur DatenBytes über die RS232 ausgewertet werden.

Die Software fürs Handy ist in Java geschrieben. Das dazugehörige
SDK ist unter http://developer.android.com/sdk/index.html
herunter zu laden. Bluetooth wird toll unterstützt. Wenn du
Interesse hast kann ich Dir auch den JavaCode für die
RS232-Komunikation geben.

Als RS232-Bluetoothmodul verwende ich dieses
http://www.ribu.at/OnLi_Kat.htm
Gast #2733671
Lesenswert?

Raven schrieb:
> Wenn du
> Interesse hast kann ich Dir auch den JavaCode für die
> RS232-Komunikation geben.

Hallo,
ich verwende ein BTM222 und einen ATMEGA256.
Auf der PC-Seite programmiere ich mit Labwindows/CVI.
PC und ATMEGA unterhalten sich über Bluetooth.
Nun möchte ich statt dem PC ein Android-Smartphone verwenden.
Zur Einarbeitung wäre mir dein Java-Code äusserst hilfreich.
#2733681
Lesenswert?

Wenn Du was haben willst, das auch noch in einem Jahr funktioniert, nimm 
einen Webserver und mache die Schnittstelle über Browser. Da ist es dann 
egal welches Endgerät Du hast, und es ist weniger Arbeit als da jetzt 
irgendwie einen Mikrocontroller an ein Mobiltelefon dran zu kriegen.

Fertige Webserver die statische Seiten und dynamische Inhalte ausliefern 
können gibts für so ziemlich jeden Mikrocontroller.
Gast #2733917
Lesenswert?

Im File Bluetoothservice sind alle Subroutines vorhanden die du 
benötigst
um eine serielle Verbindung herzustellen. Im anderen File ist eine
Beispielaktivity enthalten die das Service verwendet. Das sollte reichen
um die Bluetoothfunktionen zu verstehen.

Die Bluetoothfunktion kann im Simulator nicht simuliert werden! Die 
entsprechenden BluetoothZeilen müssen auskommentiert werden um den Rest
simulieren zu können.
Als Tutorial für Android und Bluetooth kann ich
http://developer.android.com/guide/topics/connectivity/bluetooth.html
empfehlen. Von dort bin ich ausgegangen.
Ein wichtiger Hinweis bei eigenen seriellen Bluetoothanwendungen ist die 
Verwendung der UUID "00001101-0000-1000-8000-00805F9B34FB". Ohne die
funktioniert nichts!
Angehängte Dateien:
Gast #2736462
Lesenswert?

Hallo
Habe mir mal die sachen angeschaut, leider fehlen paar Dinge, z.B. mit 
dem Classtextview finde ich rein gar nichts.
Leider funktionieren die Demos zu den Bluetooth Chat nicht richtig, ich 
bekomme immer ein runterskaliertes Bild auf meinem Tablet.
Es scheint das er dann immer ein 3.2"Bild auf 10.2" Hochskaliert.
Gast #2737227
Lesenswert?

natürlich funktioniert es so nicht. Das beigelegte Aktivityfile ist nur 
ein Teil einer kompletten App die den Datenaustausch via Bluetooth 
zwischen Handy (Galaxy) und Mikrocontroller ermöglicht. Du solltest nur 
die Teile
verwenden die für  die Bluetoothkomunikation zuständig sind.
Mit den beiden Files müßte es mit ein wenig Programmiererfahrung ohne 
weiteres möglich sein, eine App für die Komunikation zwischen einem 
entsprechenden  Bluetoothmodul am Mikrocontroller und einem 
Android-Handy zu erstellen.

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