Applicazione relativa al Web-IO digitale:
Web-IO digitale visualizzazione & controllo
Gli input, i counter e gli output del Web-IO digitale possono essere visualizzati piuttosto facilmente su una pagina web per mezzo di JavaScript e di alcune immagini. . L’integrazione dell’Applet Web-IO garantisce l’aggiornamento costante della visualizzazione.
Con il seguente esempio copy&paste potete riprodurre il vostro Web-IO digitale con i suoi input e output in una pagina web. Inoltre potete attivare gli output del Web-IO dalla pagina web.
Avete già alimentato con corrente
- il vostro Web-IO digitale,
- effettuato il collegamento alla vostra rete,
- e assegnato un indirizzo IP: con WuTility è facile!
Copiate dal seguente esempio il JavaScript (con sfondo blu) nell’area <head> della vostra pagina web.
<html>
<head>
<title>Web-IO Digital: Inputs/Outputs</title>
<script language="JavaScript" type="text/javascript">
<!--
var ypositopn = 175;
var xposition = 87;
var xdifferenc = 24;
ledinput = new Array(12);
ledoutput = new Array(12);
switchoutput = new Array(12);
outputvalue = new Array(12);
for (i=0; i<12; i++)
{
outputvalue[i] = false;
}
for (i=0; i<4; i++)
{
ledinput[i] = new multipic(100+i,"led_","gif",1,ypositopn,xposition + i*xdifferenc,"nolink");
status=i;
}
for (i=4; i<8; i++)
{
ledinput[i] = new multipic(100+i,"led_","gif",1,ypositopn,xposition + 26 + i*xdifferenc,"nolink");
}
for (i=8; i<12; i++)
{
ledinput[i] = new multipic(100+i,"led_","gif",1,ypositopn,xposition + 56 + i*xdifferenc,"nolink");
}
ypositopn = 327;
for (i=0; i<4; i++)
{
ledoutput[i] = new multipic(200+i,"led_","gif",1,ypositopn,xposition + i*xdifferenc,"nolink");
}
for (i=4; i<8; i++)
{
ledoutput[i] = new multipic(200+i,"led_","gif",1,ypositopn,xposition + 3 + i*xdifferenc,"nolink");
}
for (i=8; i<12; i++)
{
ledoutput[i] = new multipic(200+i,"led_","gif",1,ypositopn,xposition + 5 + i*xdifferenc,"nolink");
}
document.write("<img border=’0’ src=’stickersmall.gif’ style=’position:absolute; top:160px; left:10px’>");
ypositopn = 380;
xposition = 80;
xdifferenc = 25;
for (i=0; i<12; i++)
{
switchoutput[i] = new multipic(i,"switch_","gif",1,ypositopn,xposition + i*xdifferenc, "setOutput");
}
function multipic(id, img_name, img_ext, img_count, ypos, xpos, link)
{
img_count++;
this.multipics = new Array( img_count );
this.multipic_count = img_count;
this.multipic_id = id; // class variables
for (ii=0; ii<img_count; ii++)
{
this.multipics[ii] = new Image();
this.multipics[ii].src = img_name+ii+’.’+img_ext;
}
this.Set = picSet; // class method
if (link == "nolink")
{
document.write("<img id=’"+this.multipic_id+"’ style=position:absolute;top:"+ypos+"px;left:"+xpos+"px src="+this.multipics[0].src+" border=0>");
}
else
{
document.write("<a href=’javascript:" + link + "(" + id + ");’><img id=’"+this.multipic_id+"’ style=position:absolute;top:"+ypos+"px;left:"+xpos+"px src="+this.multipics[0].src+" border=0></a>");
}
}
function picSet(iCount)
{
for (ii=0; ii<this.multipic_count; ii++)
{
if(iCount==ii)
{
document.getElementById(this.multipic_id).src = this.multipics[ii].src;
}
}
}
function inputChanged( iDevice, iNr, iVal )
{
ledinput[iNr].Set(iVal);
}
function outputChanged( iDevice, iNr, iVal )
{
ledoutput[iNr].Set(iVal);
switchoutput[iNr].Set(iVal);
outputvalue[iNr] = iVal;
}
function setOutput(iNr)
{
if (outputvalue[iNr]==false)
{
document.applets["dio"].outputAccess( Math.pow( 2, iNr ), 0x0FFF );
}
else
{
document.applets["dio"].outputAccess( Math.pow( 2, iNr ), 0x0000 );
}
}
function setPassword()
{
document.applets["dio"].setPassword( document.forms[0].tfPassword.value );
document.forms[0].tfPassword.value = ’’;
}
</script>
</head>
...
- Copiate le indicazioni Applet (con sfondo blu) nell’area <body> della vostra pagina web.
- Inserite l’indirizzo IP del vostro Web-IO analogico.
...
<body style="background-color: #0099CC; font-family: Arial, Helvetica, sans-serif;">
<applet name="dio" archive="dio.jar" code="dio.class" codebase="http://10.40.50.5" height="0" width="0" mayscript>
<param name="device" value="0">
<param name="showerrors" value="off">
<param name="inputpolling" value="on">
<param name="outputpolling" value="on">
<param name="counterpolling" value="off">
<param name="pollingrate" value="1000">
Java ist nicht aktiviert oder wird nicht unterstützt
</applet>
...
Se avete protetto il vostro Web-IO mediante password, copiate anche il modulo password (con sfondo blu) nell’area <body> della vostra pagina web. La pagina web può in questo caso comunicare con il Web-IO solo dopo l’invio della password.
...
<form>
<p>Passwort:
<input type="password" name="tfPassword" maxlength="31" size="20">
<input type="button" value="senden" onclick="setPassword()">
</p>
</form>
</body>
</html>
Ora necessitate soltanto delle immagini relative all’oggetto della visualizzazione che vi mettiamo a disposizione qui per il download: .zip (ca. 12 KB). Archiviate le immagini nella directory nella quale si trova anche la pagina web con le indicazioni JavaScript e Applet.
Nessun problema: vi mettiamo a disposizione gratuitamente per 30 giorni il Web-IO digitale 2x input, 2x output PoE. Non dovete far altro che compilare l’ordinazione del campione e vi forniremo il Web-IO in prova in conto aperto. Se ci restituite l’apparecchio entro 30 giorni, vi riaccreditiamo l’intero importo della fattura.
All’ordinazione del campione