Hutschienen_24_Relais_Webserver

@System-Fan,
Habe den Server ausbauen müssen und bei der Gelegenheit ein paar Bilder gemacht.

Serieller Speicher war defekt, hat sich in teilweise in Kohlenstoff verwandelt, alle anderen Bauteile waren ok, warum auch immer…

Und ein Bild von meinem neuesten Splien, ein Schalterdosenaktor mit RS485.
Soll mit SNAP-Protokoll laufen ist aber noch in meinem Kopf und nicht im Programmspeicher.
Diesmal in SMD, damit es auf eine Platine geht.
Auf der einen Platinenseite 230Volt, auf der anderen Seite die Elektronik.
Später wird auch die Grundplatine vom 230Volt-IN-Hutschienenmodul,
die 24-fach Webserver-Relaisplatine, das Touchscreendisplay
und das 8-fach Jalu-Modul auf RS485 gebracht. Später…
Gruß Helmut

Hi Helmut,

danke für die Bilder! :slight_smile:

Gruß.

Ich würde die Kommunikation mit dem WebControl gerne per UDP hin bekommen, blicks aber nicht und finde auch nichts im Forum.

Kannst jemand bitte mal etwas genauer beschreiben, wie das in IPS konfiguriert werden muss?

Kann man das rein in PHP machen, oder muss man irgend welche Instanzen in IPS dafür konfigurieren?

DANKE im Vorraus.

Hallo, und wie übergibst Du den User-Namen und das Passwort ?
Bei mir bringt ein
$fp = fopen ( 'http://192.168.40.112/?a5=1 ', ‚r‘ ); oder
$fp = fopen ( 'http://admin:basic@192.168.40.112/?a1=1 ', ‚r‘ );
nur folgende Fehlermeldung:

Warning: fopen(http://...@192.168.40.112/?a1=1 ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.0 401 Unauthorized
in C:\Programme\IP-Symcon2\scripts\27062.ips.php on line 3
Warning: fclose(): supplied argument is not a valid stream resource in C:\Programme\IP-Symcon2\scripts\27062.ips.php on line 4

Der Aufruf funktioniert üblicherweise nur bei FTP.

Wie funktioniert die Webseite? Meldest du dich über entsprechende Felder (User, Passwort) im Webform an? Eventuell werden User/Passwort in „hidden“-Feldern gepuffert. Dann wäre vielleicht eine Übergabe durch
http://192.168.40.112/?a1=1&user=admin&passwort=basic“ möglich, das hängt vom Formular und den Feldnamen ab.

Könntest du den Quelltext der Webseite (nach der Anmeldung) mal bereitstellen?

Hallo,

in dem Fall entweder die Konfig des Webservers so modifizieren, dass
bei Abfrage genau über diesen Client kein Passwort benötigt wird, oder
aber mit curl_setopt ein Passwort setzen:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, „http://192.168.200.110/?a5=1“);
curl_setopt($ch,CURLOPT_USERPWD,"$user:$pass");
curl_exec($ch);
curl_close($ch);

Gruss und frohes neues

@juergen852
Erst einmal wünsche ich ein frohes und gesundes Jahr 2009 für alle.
Hab’ nicht so die Ahnung von PHP, aber versuche dochmal wenn du schalten willst:

<?
/*
*******************************
 IP-SYMCON Event Scripting
*******************************
File     : Webserver.ips.php
Trigger  : 
Interval : 
*/
$url=( 'http://helmutswebserver.dyndns.org/IOVAL.CGI?ax5=0 '  );
 readfile($url);


?>

must mit update den Zustand wieder ansehen
Output=O
Input=I
irritiert ein wenig

Webserver ist iM. ONLein
Gruß Helmut

Euch auch allen noch ein Frohes Neues natürlich!!!

Hmmmm irgend was mach ich noch falsch.

$user = "admin";
$pass = "basic";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://192.22.79.20/?b0=1");
curl_setopt($ch,CURLOPT_USERPWD,"$user:$pass");
curl_exec($ch);
curl_close($ch);

Quittiert mir IPS mit

Fatal error:  Call to undefined function curl_init() in [Scripte	est] on line 16

Wenn ich den Webserver so einstelle, dass er keine Passwörter will, reicht auch ein einfaches

fopen ("http://192.22.79.20/?b1=1","r");

um einwandfrei zu schalten. (Danke auch an Helmut !!) :slight_smile:

Habt ihr schon raus bekommen, wie man aus IPS die Stati auslesen kann? :confused:

Die Doku zu dem Teil welches ich verwende liegt bei:
http://www.digitale-elektronik.de/shopsystem/webControl-Server-Basic-Manual.pdf

Ziel wäre es, die digitalen Eingänge abfragen zu können (Störmelungen etc.)

Hallo Jürgen,

curl hast aber schon in deine PHP.ini mit eingebunden.

Hallo,
??? iM. braucht der Webserver nur ein Passwort wenn er konfiguriert werden soll, zum Schalten nicht…
Gruß Helmut

Hallo,

außer das Du curl nicht installiert hast eigentlich nichts ;-).
Curl gibt es ab PHP 4.0.2.
Gruss

:):):slight_smile: Hallo Helmut und Rainer, da gibt es ja tatsächlich noch Jungs die noch später vor dem Rechner sitzen als ich… Guten Morgen auch an Symconnewbie und Danke für eure Hilfe.

PHP und Curl:
Also ich teste mit IPS2 und dort ist, wie bei der 1-er soweit ich weiß auch, lediglich die php5ts.dll dabei.
Ich könnte natürlich http://snaps.php.net/win32/php5.2-win32-latest.zip installieren, aber wie bekomme ich IPS dazu, damit zu arbeiten?
Auf meinem Rechner ist noch ein XAMPP installiert, in der Umgebung ist CURL installiert und läuft auch. Aber IPS ist davon ja nicht „betroffen“.

Die Sache mit dem Passwort: Ich möchte die Geräte in einem größeren Netz einsetzen. Wenn ich es weg lasse, geht es natürlich. Will ich aber eigentlich nicht… Muss ich aber vielleicht.

:confused: Wegen dem auslesen der Stati (mein Gerät hat 10 digitale Eingänge welche für das erfassen von Störmeldungen geeignet sind: Habt ihr da was hin bekommen?

Wegen der Ausleserrei:
teste mal folgendes, Teile der Seite (bei mir) http://helmutswebserver.dyndns.org/ioval.cgi (ist aus dem Frame meines Servers)
läßt sich mit dem Text-Parser unter IPS mit den Befehlen
„CUT-befor und Get-between“
relative leicht auslesen.
Du siehst uA. diesen Quelltext:

<tr>
	<td class=bLbl>Port A</td>
	<script type="text/javascript">
	lnb();
	lnb();
	ln(0,1,"ax5");
	ln(0,0,"ax4");
	ln(0,0,"ax3");
	ln(0,0,"ax2");
	ln(0,0,"ax1");
	ln(0,0,"ax0");
	</script>
</tr>

Welche Texte, für welchen Port, muss man mal ausprobieren.
Gute Beispiele für den Textparser, mit dessen Hilfe zB. Wettervorhersagen unter IPS ausgelesen werden, findest du hier im Forum zuhauf.

Bin nicht so der Erklärbär, schon gar nicht für PHP, hoffe aber das ich dich antriggern konnte.

Einer meiner nächsten Projekte wird ein Webserver - 230Volt~ -Hutschienenmodul für die 230Volt-Zustände in der Unterverteilung sein, wo mein erster Webserver jetzt sitzt.
Also so ähnlich wie das 230V~ -In- Hutschienenmodul aus der Bastelabteilung von mir.

Mit der Passwort-Geschichte kann ich dir nicht helfen, ev. helfen dir die POP3 und SMTP-Beispiele bei der Mailabfrage
oder bei Kamerabild-Einbindungen unter PHP in IPS hier.
Gruß Helmut

Hallo Helmut, hallo an die anderen Mitleser und Schreiber.

Ich muss diesem Beitrag mal hochholen, vielleicht gibt es ja ein paar gemeinsame Angriffspunkte.
Ich habe ein Single-Board-Computer (SBC65) seit ca. einem Jahr hier zu Hause und wollte damit meine Heimautomatisierung bewerkstelligen, bevor ich IPS fand.

Durch Helmuts Versuche habe ich das Teil mal wieder ans Tageslicht befördert und an IPS angeschlossen. Und siehe da, die Ausgabe läuft einwandfrei und wider Erwarten sehr schnell. Das Script zum Einschalten von 8 Ports und zum Ausschalten von 8 Ports braucht gerade mal 1,4s, und dabei sind alle Schaltaktionen über fopen gemacht und mit fclose abgeschlossen. Das hat mich schon sehr verwundert, wie schnell das über die LAN-Verbindung funktioniert.
Also als unabhängiges Schaltmodul (da ja nur LAN-Anschluss benötigt wird) ist die ganze Sache sehr zu empfehlen.
Vor einiger Zeit hatte ich auch einmal angefangen, die Webseiten des SBC65 in Anbetracht der zukünftigen Hausautomatisierung zu gestalten. 2 Screenshots hab ich mal angehängt.

Bei den Eingängen bin ich noch am Testen, leider ist mir auch nur die Methode des Auslesens der Webseite eingfallen, aber wenn jemand noch eine bessere Idee hat, bin ich ein dankbarer Abnehmer.

@Helmut
Ich habe übrigends auch großes Interesse an der Leiterplatte als Relaisplatine für den SBC. Wenn du also noch ein Exemplar übrig hättest würde ich mich sehr darüber freuen.

Was sonst noch alles mit dem SBC65 oder 68 (mit CAN) zu machen ist, lässt sich dem Datenblatt und dem Forum (wurde hier beides schon einmal genannt) entnehmen.

Viele Grüße aus Jena
Thilo
:slight_smile:

Hallo Thilo,
ich hatte zu Anfang im Layout noch ein/ige falsche Portpins auf Relais geführt (beim 24-fach Relais-Webserver).
Der Erfolg war, dass, wenn über SPI auf den Ethernetbaustein oder auf den EEprom geschrieben wurde, Relais „gerattert“ haben.

Davon habe ich noch 2 Platinen.

Abhilfe, wenn du nicht alle Relaismöglichkeiten nutzt, diese Relais einfach nicht nutzen.
Oder von Hand „umverdrahten“.

Auch ich habe angefangen den Webserver, bzw. die Seiten selbst zu gestalten.

Das funktioniert mit dem Bootlader von Modtronic easy.

Was ich von meinen HTML und Script-„schreiberei“ nicht sagen kann…:rolleyes:
Einiges funktioniert auf Anhieb, anderes ist wie von Uri Geller…

Einen solchen Fehler habe ich beim Eingangswebserver auch gemacht, ist im Layout korrigiert.
Deswegen die komische Portbeschriftung im Layout-Bild.

Ich klemme ihn um 23 Uhr mal an und mache `ne Hardcopy.

Edit: Habe festgestellt, man bekommt auch gif-Dateien auf den Webserver.

Aber ich würde dich bitten mal die Scripte hier zu veröffentlichen.

Gibt noch mehr hier, die den SBC-Webserver haben.:slight_smile:
Meiner, nicht immer Online: http://helmutswebserver.dyndns.org/

Ich gebe mal wieder den Erklärbär:

Wenn man sich so einen SBC-Webserver gekauft hat, holt man sich den NetWork Bootlader von der Homepage von Modtronix.

Mit Hilfe dieses Bootladers kann man, unter dem Reiter Webpage Creation, die zuvor erstellten, oder so wie ich es gemacht habe, die veränderten Webseiten oder Scripte in ein sogenanntes IMG-File compilieren.

Das Seiten-Verzeichnis und die URL des Webservers muß eingetragen werden.

Dann compiliert man die zuvor „angehakten“ Seiten zu einem Image-File.

Jetzt wechselt man oben am Reiter zu Firmware und Webpage-Update und drückt den Update Webpage-Button.

Dann fragt er nach Passwort usw. und losgehts.

Sekunden später ist die Seite sichtbar… oder auch nicht…

Man muß also kein Programmiergerät dafür haben, man kann sogar eine Fernwartung machen.

Sicher kann der versierte Script-Programmierer auch Verknüpfungen in einem Script machen.
Wie zB Zeitsteuerungen mit einem Port-Pin oder verknüfungen mit analogen Werten.

Oder man kann LM35 (Temperaturfühler) an die analogen Ports klemmen und in Abhängigkeit von dessen Wert über einen der PWM-Ausgänge auf mein 0 bis 5Volt auf 0 bis 10Volt Modul gehen und Ventile damit fahren und und….
Ein "Webbasierte Heizungssteuerung".

Wer in „C“ programmieren kann, der kann natürlich auch Firmware-Änderungen machen.

Alle Source-Files sind da, sollen, nach dem Übersetzen des C-Codes, auch über den Bootlader programmierbar sein.

Gruß Helmut

PS.: Ich werde nicht von Modtronix gesponsert, ich finde das Teil nur
… Rattenscharf. Na, hast einen Reim erwartet was?

Hallo Helmut,

jetzt fängst du aber wirklich an zu zaubern:
eine grafische Übersicht über die Heitzungssteuerung im SBC, Hut ab.

Sieht gut aus.

Viele Grüß0e
Thilo

Nee nee,
Grafik ist nicht von mir. War ein Versuch wieviel Gif in den Server passen.

Die Heizungsübersicht passt rein, das animierte UND-Glied auch.:wink:

Aber die animierten Augen sind schon mit URL-Link gemacht.

Oder man spart beim Aufbau ein, kein Frame, weniger Seiten.

Macht auch nichts, ein Bild bekommt man immer irgendwo abgelegt und dann im Server verLINKT.

Aber wenn du mal den Quellcode der Heizung anschaust, es ist zu begreifen wo die Daten rein müsssen und wie sie da plaziert werden (Auszug davon steht in Beitrag Nr #60 ).

Wenn man der Programmiersprache C mächtig ist, kann man noch viel mehr machen.
Oder eben mit Javascripts.

Gruß Helmut

Edit: Schluß vorerst: er läßt sich nicht mehr ansprechen. Auch nicht auf Reset-Adr. Kommt vom bösen Mustnichttun, immer rein und raus…

So,
lange hat es gedauert, aber nun folgt doch noch die gewünschte Veröffentlichung des Quellcodes für die beiden weiter vorne gezeigten Seiten des SBC65EC.

Ich habe mal die kompletten Dateien zu einem Archiv zusammengepackt und angehängt.

@Helmut:
Läuft dein SBC wieder oder hat er sich für immer verabschiedet?
Habe die Leiterplatte fertig eingebaut und auch mal ein Bild von meinem „SBC-65-Webserver“ angehängt.

Viele Grüße
Thilo

IO_js.rar (19.5 KB)

Hallo Thilo,
Na, das hast du ja schnell hinbekommen.
Mein Webserver ist zur Zeit ein 65er, den 68 habe ich noch nicht zum laufen bekommen.
Hab`aber iM auch keine Zeit.

http://helmutswebserver.dyndns.org und
Für so eine Seite wie:

http://helmutswebserver.dyndns.org/contact.htm

Versuche ich einen eigenen AVR-Webserver mit vielen DS18B20 zu bauen.
Denn der Code ist rel. einfach.
Variablen werden durch Positionsangaben in dem Hintergrundbild auf der Webseite eingeblendet: zB.:


<style type="text/css">
<!--
body { }
#schema{ position:relative;z-index:3;}
#tkol  { position:absolute; top:6px; left:792px; width:57px; height:50px; z-index:2; text-align:right; }
#tkol2 { position:absolute; top:51px; left:722px; width:57px; height:50px; z-index:2; text-align:right; }
#tkolv { position:absolute; top:131px; left:687px; width:57px; height:50px; z-index:2; text-align:right; }
#ta    { position:absolute; top:51px; left:437px; width:57px; height:50px; z-index:2; text-align:right; }
#tkes  { position:absolute; top:192px; left:178px; width:57px; height:50px; z-index:2; text-align:right; }
#tabg  { position:absolute; top:76px; left:178px; width:57px; height:50px; z-index:2; text-align:right; }
#tbwo  { position:absolute; top:266px; left:762px; width:57px; height:50px; z-index:2; text-align:right; }
#tbwu  { position:absolute; top:397px; left:762px; width

Gruß Helmut
Edit:

Ich für meinen Teil hatte an die PHP-Scripte zur Abfrage mit IPSymcon gedacht:)
Gruß Helmut

Edit: Hatte wegen einer Trauerfeier nicht so die Zeit. Mußte den Port-Pin A.4 zu Grabe tragen.
Nicht mehr nutzbar…
Aber er läuft ansonsten wieder.

Bild mit Variableneinblendung:

heizung.PNG