![]() |
Datenaustausch zwischen PC und Arduino, zukünftig zusätzlich über Android
Hallo,
habe mit verschiedene ![]() ![]() Meine erste Idee: - Datenaustasch per TCP - Arduino als Server - PC und Android als Client - Komponente unter Delphi XE2 ist Indy10 TIdTCPClient - Zum Test: Umsetzung einer Server-Applikation (Simulation der Ardiuno-Funktionalität) mit Delphi XE2 und Indy10 TIdTCPServer auf gleichem oder anderem PC Hat jemand schon mal etwas ähnliches umgesetzt oder kann mir Informationen zur Anwendung der Indy10 bzw. TCP senden. Bzgl. Ethernet Datentransfer etc. bin ich Neuling. Vielleicht kenn jemand eine Doku die hinsichtlich Ethernet und Verwendung/Umsetzung mit Delphi weiterhilft. Gruß DelphiFan2008 |
AW: Datenaustausch zwischen PC und Arduino, zukünftig zusätzlich über Android
Zitat:
Muss man den Arduino-Simulationsserver selber programmieren, oder gibt es vielleicht schon eine Beispielimplementierung (es muss nicht in Delphi sein) für Testzwecke? Das würde es mir als Android Entwickler ja ermöglichen, einen Teil zumindest zu programmieren und Android Unittests laufen zu lassen ohne ein physisches Device anschliessen zu müssen. |
AW: Datenaustausch zwischen PC und Arduino, zukünftig zusätzlich über Android
Hallo,
danke für die schnelle Antwort. Das Arduino Board besitzt eine eigene an C angelehnte Entwicklungsumgebung, welche es sehr einfach mach auf dem µC-Board Programme zu erstellen. Die Beschreibung der Arduino-Ethernet-Library ist ![]() ![]() Der "Datenlayer" über TCP in der/den Applikationen muss aus meiner Sicht natürlich selbst gestaltet werden. z.B. Gesendeter Datenframe vom Client an Server <Cmd><Data><CRC> Rückmeldung vom Server <Cmd><DataSet><CRC> Gruß DelphiFan2008 |
AW: Datenaustausch zwischen PC und Arduino, zukünftig zusätzlich über Android
Zitat:
Ist die Kommunikation nur als Request/Response (Client sendet an Arduino und wartet - blockierend - auf Antwort) geplant, oder soll das Arduino Device selber die Initiative ergreifen und unabhängig von einem vorhergehenden Request Daten an den Client senden können? Falls nein (es wird also nur Request/Response benötigt) könnte man HTTP als Protokoll verwenden, oder ist das aufgrund beschränkter Systemresourcen nicht gewünscht? Denn mit einem so bewährten Protokoll wären ja einige Probleme gegenüber Eigenkreationen gelöst, unter anderem was die Ausgereiftheit und die Verfügbarkeit von Clientbibliotheken, auch auf anderen Plattformen, betrifft. Man könnte sofort mit der eigentlichen Daten/Anwendungssxhicht loslegen, und bestehende Infrastruktur nutzen. Konkret zum Beispiel den Indy HTTP Client. Update: ein HTTP Server für Arduino ist zum Beispiel ![]() * HTTP Methods: GET, HEAD, POST, PUT, DELETE, PATCH * Web Forms * JSON/RESTful interface * HTTP Basic Authentication Neben der primären Nutzung über die Delphi / Android Clients hätte man damit auch die Möglichkeit, ein einfaches webbasiertes Administrationsinterface zu erstellen. |
AW: Datenaustausch zwischen PC und Arduino, zukünftig zusätzlich über Android
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
habe im beigefügten Bild die Grundidee abgebildet. Per Arduino werden die Befehle per TCP empfangen und ein Status an die Clients versendet (welche Lampen sind gerade an, Status von I/O-Ports, A/D-Wandler, Timer etc.) abhängig von Protokoll. Eventuell zyklisches Senden/Empfangen, kann über Client Ein-/Ausgeschaltet werden, ebenfalls Zyklus. Die Arduino Library bietet ja zum einfachen Senden/Empfangen entsprechende Routinen, Bsp. ![]() Gruß DelphiFan2008 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz