Daten von mehreren uc konsoldieren

Gast #3851543
Lesenswert?
• ▲
▼
Hallo zusammen

Ich habe in einem Ethernet-Netz mit vier Mikrocontrollermodulen. Jedes 
stellt 8 Temperaturwerte bereit und kann 8 Relais ansteuern. Die uC 
haben auch einen intetrierten Webserver.

Nun würde ich die Messwerte und Steuervariablen aller uc-Module gerne 
auf einer einzigen Webseite darstellen und von dort aus auch die Relais 
steuern.

Ich könnte mir hierfür z.B. einen zentralen PC vorstellen auf dem der 
Internet Information Server installiert ist und dort ein Programm läuft, 
welches die Daten sychronisiert..


Wie würdet ihr das lösen? Gibt es vieleicht schon etwas Fertiges, mit 
dem ich zumindest die Daten synchronisieren kann und "nur" mehr das 
Web-Interface programmieren muß?

Vielen Dank für eure Tipps und beste Grüsse

Geri
Gast #3851786
Lesenswert?
• ▲
▼
Hallo Peter

Vielen Dank für deinen Tipp. Aha, und das geht.

Kannst du mir bitte etwas genauer schildern wie das funktioniert? Ich 
möchte ja Daten von mehreren Controllern auf einer Webseite darstellen 
und von dort aus steuern.

Der Zugriff auf eine Webseite (mit Javascript) erfolgt ja immer nunr auf 
einen Domain-Namen oder IP-Adresse. Wie kommt man aber zu den Daten der 
anderen Controller?

..oder vielleicht ab

Beste Grüsse
Geri
Gast #3862767
Lesenswert?
• ▲
▼
So habe nach den Schlüsselwörtern gesurft, bin aber noch nicht richtig 
schlau daraus geworden. Kennt jemand von euch vielleicht noch ein paar 
gute Links wo die Techniken des "cross origin resource sharing" für 
Newbies beschrieben werden - evtl. mit Beispielen

Vielen Dank

Geri
Gast #3862909
Lesenswert?
• ▲
▼
Geri schrieb:
> So habe nach den Schlüsselwörtern gesurft, bin aber noch nicht richtig
Sag uns erst mal wie dein Webserver Befehle an die Module weiterleitet 
wie der konfiguriert ist,... Da muss ja schon irgendwas drauf laufen 
(PHP,...?)

Bullshitbingo kannst du dann später spielen - "cross origin resource 
sharing" - leck mich fett, für jede Trivialität ein Begriff.
Gast #3862915
Lesenswert?
• ▲
▼
lebensmittelhändler schrieb:
> Geri schrieb:
>> So habe nach den Schlüsselwörtern gesurft, bin aber noch nicht richtig
> Sag uns erst mal wie dein Webserver Befehle an die Module weiterleitet
> wie der konfiguriert ist,... Da muss ja schon irgendwas drauf laufen
> (PHP,...?)

nein muss er nicht.


Er braucht einfach nur eine Webseite mit JavaScript. Diese kann lokal 
auf der Festplatte oder auf irgendeinem Webspace liegen.

Du musst dann "nur" JavaScript programieren. mit JQuery ruft er von den 
Modulen die Daten ab und baut sie in die seite an.
Gast #3863415
Lesenswert?
• ▲
▼
Hallo zusammen

Vielen Dank für eure zahlreichen Rückmeldungen.

Bei meiner Anwendung ist auf jedem Controller einen Webserver 
integriert.
Auf dem Webserver liegt eine Webseite auf die der Benutzer zugreifen 
kann und digitale Ausgänge lesen und schreiben kann.
Gerne würde ich nun gleichzeitig auf allen Controller einen Ausgang 
setzen und den Status aller Controller anzeigen. Von mir aus könnte man 
zentral auch einen Webserver laufen lassen, welcher die Daten irgendwie 
konsolidiert. Der Benutzer würde dann immer "nur" auf eine Webseite auf 
dem zentralen Webserver zugreifen.

…wenn das halt überhaupt geht…

Beste Grüße

Geri
Gast #3863962
Lesenswert?
• ▲
▼
Peter II schrieb:
> lebensmittelhändler schrieb:
>> Er will nicht nur Daten abrufen sondern auch Kommandos zurückschicken.
>
> das ist bei HTML kein unterschied.
> ein http://ip/daten?test=x
> sendet etwas und liefert eine Antwort.
Das ist mir auch klar, nur müsste man mal wissen was "Webserver auf MC" 
genau ist. Kann der nur statische Seiten raushauen, ist der Code 
vorhanden, ...

Wie soll man da eine brauchbare Empfehlung geben? Mehr als allgemeines 
Blabla kommt da nicht bei raus.
Gast #3864195
Lesenswert?
• ▲
▼
lebensmittelhändler schrieb:
> Das ist mir auch klar, nur müsste man mal wissen was "Webserver auf MC"
> genau ist. Kann der nur statische Seiten raushauen, ist der Code
> vorhanden, ...

spielt doch überhaupt keine rolle, scheinbar kann er jetzt über den 
Webserver alles machen was er will. Damit kann er es auch von einer 
gemeinsamen seite bei JavaScript machen.
Gast #3864220
Lesenswert?
• ▲
▼
1. Wenn Du die Daten immer von den gleichen Geräten abrufst kannst Du 
Dir eine HTML Seite bauen in der Javascript (jQuery ist eine 
Javascriptbibliothek) enthalten ist. Das Skript dass Du Dir schreiben 
musst würde die Daten von den Geräten abrufen und auf der Seite sichtbar 
machen, umgekehrt kannst Du Dir Buttons reinprogrammieren die dann 
jeweisl auf den Geräten eine Aktion auslösen. Diese HTML Datei mit dem 
Javascript kopierst Du Dir einfach auf die PCs lokal auf denen Du messen 
und steuern willst.

2. Kauf Dir einen Minirechner (Raspberry etc.) auf dem ein kleiner 
Webserver läuft. Auf den die obige Datei kopieren, so kann man mit allen 
Geräten zugreifen ohne die Datei rumkopieren zu müssen.

Stefan
Gast #3864735
Lesenswert?
• ▲
▼
Hallo zusammen

Der Webserver, welcher auf dem Controller läuft, unterstützt Befehle für 
die Abfrage und das setzen von Variablen.
In eine html-Webseite, die dort läuft kann man z.B. denn Code z.B 
schreiben:


<input type="hidden" name="variable" value="DigitalOut1" size="50">

@Stefan: Vielen Dank für die Hinweise

add 1:
Die Daten würde ich immer von den gleichen Geräten lesen und schreiben.

>>Das Skript dass Du Dir schreiben musst würde die Daten von den Geräten abrufen

.aber eben, wie greift man über eine Webseite auf mehrere dezentrale 
Webserver zu?

.. oder vielleicht sehe ich den Wald ohne

add 2: könnte von mir auch auch IIs sein, ich hänge aber bereits bei 
Punkt 1:)

Beste Grüsse und vielen Dank!
Geri
#3865244
Lesenswert?
• ▲
▼
Geri schrieb:
> .aber eben, wie greift man über eine Webseite auf mehrere dezentrale
> Webserver zu?

Auf einer Webseite kann JavaScript enthalten sein. JavaScript läuft im 
Browser. JavaScript kann seinerseits HTTP requests an andere Server 
ausführen. Das ist das selbe Prinzip wie es bei Werbeverseuchten 
Webseiten zu finden ist: Du rufst eine Seite unter www.example.com auf 
und dann beginnt Dein Browser (oder besser gesagt die vielen 
eingebetteten JavaScript-Schnipsel der Werbebranche *von Deinem Browser 
aus*) ungefragt und vollautomatisch hunderte von Requests an hunderte 
von anderen zwielichtigen Servern in der ganzen Welt zu machen von denen 
Du noch nie was gehört hast. Direkt und ohne Umwege von Dir nach dort.

Das ist das selbe Prinzip. So kannst Du das für Deine Zwecke 
implementieren. Frag in einem Webdesigner-Forum wie das im einzelnen 
funktioniert.

Vielleicht verschaffst Du Dier dort auch erstmal generell einen 
Überblick wie die Interaktion zwischen einem Webserver und einem 
Webbrowser abläuft und wo man überall eingreifen oder ansetzen kann und 
wie das üblicherweise gehandhabt wird auf Webseiten die Elemente von 
verschiedenen Diensten auf einer einzigen Seite integrieren. Es gibt 
verscheidene Ansätze, manche sogar komplett ohne JavaScript, nur mit 
Frames oder Iframes und Du brauchst garantiert auch kein jquery dazu, 
das ist kein Muss, zu Lehrzwecken kann (oder sollte!) man das auch mal 
komplett mit nacktem JavaScript (oder ganz ohne JavaScript) 
durchexerzieren. Das ist eine ganze Wissenschaft für sich mit vielen 
Facetten (aber auch genausovielen Stolperfallen), also erstmal in Ruhe 
einen Gesamtüberblick verschaffen über den grundsätzlichen Aufbau des 
www und der Abläufe darin.

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