Forum: Mikrocontroller und Digitale Elektronik Verständnisfrage Ablauf µC Steuerung mit GUI


von MikroAnfaenger (Gast)


Lesenswert?

Hallo,

mein Ziel ist es, in einem Nebenraum ein paar Temperaturfühler auslesen 
zu können und ein paar LEDs zu schalten. In dem Raum ist eine 
Ethernet-Leitung. In meinem Raum steht ein Rechner mit Windows7 und 
ebenfalls eine Ethernet-Leitung. Ich möchte das ganze mit einem 
Mikrocontroller realisieren und diesen von dem Windows7 Rechner aus 
steuern (graphische Oberfläche, am besten .NET).

Das Problem: Da ich wirklich ganz neu bin im Bereich µC und bisher nur 
Programmiererfahrungen für VB.NET und C# habe, kann ich mir das System 
noch nicht so ganz vorstellen. Also wie dort kommuniziert werden kann.

Sehe ich das richtig, dass ich eine Software auf dem µC erstelle, welche 
als Art Client die I/Os lesen und schreiben kann. Diese Software kann 
ich dann über Ethernet mit meinem .NET-Programm ansprechen? Also ist der 
Windowsrechner eine Art Master? Die Verbindung wäre dann mittels TCP/IP 
und Sockets hergestellt? Im Grunde würde ich doch dann eine Art 
Bus-Protokoll nutzen. Es werden Befehle an den Client gesendet und 
entsprechende Antworten kommen zurück, oder?

Was ich suche, ist praktisch eine Art Überblick, was der µC für ein 
Programm/OS hat und wie ich diesen über Ethernet ansprechen kann. 
Irgendwie stehe ich da gerade auf dem Schlauch. Andere Foreneinträge 
haben mich eher noch verwirrt als geholfen...

Viele Grüße!

von Stefan F. (Gast)


Lesenswert?

Schau Dir mal an, wie ich die Kommunikation realisiert habe: 
http://stefanfrings.de/net_io/index.html

Auf jeden Fall rate ich dazu, ein Textbasiertes Protokoll zu benutzen, 
welches man manuell mit Telnet oder Netcat ausprobieren kann. Das 
erleichtert die Fehleranalyse erheblich.

> Also ist der Windowsrechner eine Art Master?

Ja, so würde ich das machen. Es sei denn, deine Sensoren sollen mit 
Batterien betrieben werden. Dann ist es besser, wenn sie selbst z.B. 
Stündlich Werte an irgendeinen Server senden und sich dazwischen 
schlafen legen - wegen dem Stromverbrauch. In diesem Fall brauchst du 
aber noch eine dritte Komponente, nämlich den Server der immer 
erreichbar ist und die Daten zwischenspeichert.

Offensichtlich geht es Dir um eine nette Bastelei, so daß 
Zuverlässigkeit und Einhaltung diverser Normen weniger wichtig sind. In 
diesem falle würde ich erwägen, statt Ethernet lieber WLAN zu verwenden, 
denn das ist zur Zeit wesentlich billiger.

Siehe dazu: http://stefanfrings.de/esp8266/index.html und 
http://stefanfrings.de/wlan_io/index.html

von Sina A. (sinapse)


Lesenswert?

MikroAnfaenger schrieb:
> Ich möchte das ganze mit einem
> Mikrocontroller realisieren und diesen von dem Windows7 Rechner aus
> steuern (graphische Oberfläche, am besten .NET).

mit einem raspi ist das sehr viel einfacher gemacht... da ist mit einem 
betriebssystem alles schon vorgefertigt... entweder du hast andere 
gründe für n uC oder du willst einfach in die uC welt eintauchen... dann 
ist das natuerlich grund genug für n uC


> Sehe ich das richtig, dass ich eine Software auf dem µC erstelle, welche
> als Art Client die I/Os lesen und schreiben kann. Diese Software kann
> ich dann über Ethernet mit meinem .NET-Programm ansprechen? Also ist der
> Windowsrechner eine Art Master?

wer master und wer slave ist kannst du entscheiden... denke es macht 
sinn den uC als slave zu betreiben.

> Die Verbindung wäre dann mittels TCP/IP
> und Sockets hergestellt? Im Grunde würde ich doch dann eine Art
> Bus-Protokoll nutzen. Es werden Befehle an den Client gesendet und
> entsprechende Antworten kommen zurück, oder?

ja, sobald du einen tcp server/client auf dem uC realisiert hast, läuft 
die kommunikation wie zwischen zwei pc s.


> Was ich suche, ist praktisch eine Art Überblick, was der µC für ein
> Programm/OS hat und wie ich diesen über Ethernet ansprechen kann.

für dein projekt ist ein OS auf dem uC nicht notwendig... du brauchst du 
nur eine tcp/ip library für deinen uC.  such dir also einen uC raus der 
ethernet kann und du eine lib dafür findest.

z.b. 
https://www.myembedded.de/2016/07/27/ethernet-schnittstelle-fuer-das-stm32f4-discovery-board/

hab da 5sec nach gegoogelt... findest bestimmt noch andere dinge.


wenn ich dir aber einen tip geben darf... wenn es dir ums lernen geht, 
und du einen einstieg finden willst... nimm RS232 statt ethernet. 
ethernet ist schon ziemlich high level... dementsprechend sind die uC 
dafür auch vergleichsweise komplex... wenn du mit RS232 anfängst findest 
sehr viel kleinere uC,die nicht so komplex sind. dann wird der einstieg 
sehr viel mehr spass machen.. wird sowieso frustrierend genug ;)

beispiel für nen einfachen uC

http://www.watterott.com/de/Atmel-MEGA-1284P-Xplained-ATMEGA1284P-XPLD

wieder 5sec gegoogelt... findest bestimmt noch andere dinge

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.