Forum: Mikrocontroller und Digitale Elektronik Frage zum iot


von Igor (Gast)


Lesenswert?

Hallo,

ich habe mir vor kurzen ein TI TM4C129-EXL Entwicklungsboard zugelegt, 
weil ich die Verbindung zu einem Server herstellen möchte.

Mittlerweile kann ich http Anfragen zu einem externen Server schicken 
und die Response korrekt empfangen.

Kommt man nun z.b mit einem internetfähigen Gerät in das gleiche lokale 
Netzwerk, wie das Entwicklungsboard, kann man im Browser die lokale IP 
des Entwicklungsboard eingeben und empfängt daraufhin eine 
html-Seite.Nun können Einstellungen vorgenommen und zurück zum 
Entwicklungsboard gesendet werden.

Jetzt möchte ich gerne prinzipiell Wissen, wie man das Entwicklungboard, 
über den Router hinweg, von der Ferne aus steuern kann?

Als Beispiel gibt es die Exosite: Internet of Things (IoT) Platform.
Hier kann man sein Entwicklungboard anmelden und über eine Exosite 
Webseite sein Board, über den Router hinweg, steuern.

Sendet das Entwicklungboard periodisch http-Anfragen an den Exosite 
Server und bekommt daraufhin eine Antwort, umso Einstellungen vom Server 
zum Board zu übertragen?

Oder ist das Board selber ein Server?

An diesem Punkt komme ich nicht weiter. Vielleicht könntet Ihr mir 
prinzipiell erklären, wie diese Kommunikation funktioniert.

Besten Dank

von ich (Gast)


Lesenswert?

Igor schrieb:
> Jetzt möchte ich gerne prinzipiell Wissen, wie man das Entwicklungboard,
> über den Router hinweg, von der Ferne aus steuern kann?

Portfreigabe

Igor schrieb:
> Als Beispiel gibt es die Exosite: Internet of Things (IoT) Platform.
> Hier kann man sein Entwicklungboard anmelden und über eine Exosite
> Webseite sein Board, über den Router hinweg, steuern.
>
> Sendet das Entwicklungboard periodisch http-Anfragen an den Exosite
> Server und bekommt daraufhin eine Antwort, umso Einstellungen vom Server
> zum Board zu übertragen?
>
> Oder ist das Board selber ein Server?

Wenn du dem Board keinen Port freigibst wird das Board als Server nicht 
funktionieren. Ich vermute, dass das Board periodisch anfragen an den 
Server sendet.

von GEKU (Gast)


Lesenswert?

Igor schrieb:
> kann man im Browser die lokale IP
> des Entwicklungsboard eingeben und empfängt daraufhin eine
> html-Seite

Das bedeutet, dass das Entwicklungsbord als WEB Server fungiert.

Erstens muss, wie im vorangegangen Post beschrieben das HTTP Port 80 von 
außen zugänglich sein. Dazu muss das Port im Router freigegeben 
werden. Ist das Port 80 schon in Verwendung (z.B. 8080), dann muss einen 
anderes Port verwendet werden (im WEB Browser ist dann der IP Adresse 
:8080 hinzu zu fügen).

Zweitens muss der Router Zugange zum Internet mit einer öffentlichen IP 
Adresse haben, ist diese nicht statisch vergeben, dann ist zusätzlich 
ein DynDNS zu verwenden. Ist der Router nicht im öffentlichen Netz, dann 
müssen WEB-Server und HTTP Client (Web-Browser) im gleichen Netz 
liegen (SIM Karte vom gleichen Provider ).

von Igor (Gast)


Lesenswert?

Hat noch keiner Erfahrungen mit der Exosite Plattform und Texas 
Instruments ?

von TestX (Gast)


Lesenswert?

Das Board wird einfach eine Verbindung zur TI Platform aufbauen...ob das 
jetzt über http oder direkt sockets etc geht musst du der Dokumentation 
entnehmen.

von Chr. M. (snowfly)


Lesenswert?

Warum willst du es nicht machen wie alle anderen?
Per MQTTT

von Klugscheisser (Gast)


Lesenswert?

Chr. M. schrieb:
> Warum willst du es nicht machen wie alle anderen?
> Per MQTTT

Weil er offenbar mit der Thematik gerade anfängt und noch nicht alles 
weiss.
Er muss erstmal die Basics lernen, damit er sich besser vorstellen kann, 
wie das passiert.

Analog zu dieser Thematik wäre erstes Basteln mit Strom Schaltern, 
Vorwiderständen und LEDs. Um zu verstehen was da passiert muss man 
erstmal den Vorwiderstand der LED berechnen können, bis man die LEDs in 
gewünschter Helligkeit und ohne Zerstörung am Leuchten hat.

Bis einer kommt und sagt: Warum machst Du es nicht wie alle anderen? Per 
KSQ.

Dann beginnt die Arbeit, erstmal rauszufinden, was ne KSQ ist.....

von Stefan F. (Gast)


Lesenswert?

Igor schrieb:
> Jetzt möchte ich gerne prinzipiell Wissen, wie man das Entwicklungboard,
> über den Router hinweg, von der Ferne aus steuern kann?

Prinzipiell kann ich davon nur abraten, Embedded Systeme direkt ins 
Internet (per Portfreigabe) zu hängen, denn das Internet ist voller 
Bösewichter und dein Mikrocontroller bietet kaum Schutzmaßnahmen.

Also muss etwas schützendes dazwischen. Zum Beispiel ein Apache HTTP 
Server, der nur noch simple Kommandos an deine Hardware sendet, nachdem 
er sich gründlich vergewissert hat, dass der aktuelle Benutzer das auch 
benutzen darf. Das heißt, dein neu erworbenes Board ist dann eben nicht 
mehr ein Webserver, sondern ein ferngesteuertes Dings.

Oder du könntest ein VPN Netzwerk einrichten. Dann hast du eine 
ordentliche Authentifizierung und eine verschlüsselte Verbindung von 
draußen in dein Heimnetz. Wer da rein will, muss sich einen VPN Client 
installieren und ein gültiges Zertifikat besitzen. Zu Hause brauchst du 
als Gegenstelle einen PC (oder Raspberry Pi o.ä.) als VPN Server.

Die meisten Online Dienste kommen ohne diesen Aufwand aus, denn sie 
beruhen darauf, dass alle Informationen und Kommandos auf einem 
öffentlich erreichbaren (Cloud) Server abgelegt werden und von den 
Endstellen regelmäßig abgerufen werden. Frage dich, ob du dem 
Übertragungsprotokoll und dem Dienstleister vertraust und was wohl 
passieren wird, wenn er sein Geschäft einstellt. Es wurden bereits 
einige Cloud Dienste für den Betrieb von Internet Radios und 
Haus-Automation eingestellt, was zum Ausfall zahlreicher Installationen 
führte.

Hier würde ich eher zu einem eigenen Server bei einem Webhoster raten, 
den man notfalls wechseln kann. Für ein paar Lichtschalter lohnt sich 
der Aufwand jedoch nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.