<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Giuseppe Benfenati - Web developer</title>
	<atom:link href="http://www.exitweb.it/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.exitweb.it</link>
	<description>PHP, MySQL, Zend Framework Developer</description>
	<lastBuildDate>Sat, 28 Jan 2012 15:42:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Controllo remoto con jQuery</title>
		<link>http://www.exitweb.it/2011/02/15/controllo-remoto-jquery/</link>
		<comments>http://www.exitweb.it/2011/02/15/controllo-remoto-jquery/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 18:41:18 +0000</pubDate>
		<dc:creator>gbenfe</dc:creator>
				<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://www.exitweb.it/?p=38</guid>
		<description><![CDATA[Ho recentemente lavorato ad un progetto di controllo remoto via web. Obbiettivo: poter controllare e monitorare apparecchiature elettroniche a distanza che dispongono di una porta di comunicazione RS485 la quale a sua volta utilizza un protocollo industriale. Un dispositivo di interfaccia con a bordo un webserver si interfaccia direttamente alla porta RS485. L&#8217;obiettivo è stato quello di [...]]]></description>
			<content:encoded><![CDATA[<p>Ho recentemente lavorato ad un progetto di controllo remoto via web.</p>
<h4>Obbiettivo:</h4>
<p>poter controllare e monitorare apparecchiature elettroniche a distanza che dispongono di una porta di comunicazione RS485 la quale a sua volta utilizza un protocollo industriale.<br />
Un dispositivo di interfaccia con a bordo un webserver si interfaccia direttamente alla porta RS485.<br />
L&#8217;obiettivo è stato quello di creare una interfaccia web con funzionalità 2.0 che potesse funzionare su tale dispositivo.<span id="more-38"></span></p>
<h4>La sfida:</h4>
<p>le sfide sono state molteplici  in quando l&#8217;applicazione:</p>
<ul>
<li>doveva funzionare su un webserver dove non era disponibile <strong>nessun linguaggio di scripting lato server</strong> come PHP</li>
<li>disporre di un&#8217; interfaccia grafica doveva visualizzare strumenti di misura graficamente accattivanti, ma <strong>senza utilizzare la tecnologia Flash</strong></li>
<li>doveva essere distribuita a livello internazionale, quindi occorreva prevedere la <strong>localizzazione in diverse lingue</strong></li>
<li> <strong>facilmente configurabile</strong> per poterla adattare ai vari modelli di apparecchiature</li>
<li>doveva essere <strong>cross browser</strong> e compatibile anche per  <strong>l&#8217;utilizzo su dispositivi smartphone</strong></li>
<li>doveva prevedere una sezione di backend per la gestione dei settaggi del dispositivo e per la gestione degli utenti</li>
</ul>
<h4>Le scelte:</h4>
<p>dopo una attenta analisi del progetto è stata effettuata la scelta di realizzare l&#8217;applicazione sfruttando esclusivamente javascript e più precisamente il framework jQuery.<br />
La persona che si è occupata della programmazione del webserver, che usa il linguaggio C, ha realizzato una serie di CGi attraverso i quali ho avuto la possibilità di effettuare le varie chiamate Ajax per ottenere i parametri da visualizzare.<br />
E&#8217; stato scelto CorMVC per poter utilizzare un pattern MVC e quindi separare le viste dalla business logic.<br />
La configurazione, in base al modello delle apparecchiature, è stata resa modulare tramite il caricamento dinamico di diversi file XML.<br />
Per gli strumenti è stato realizzato un plugin a doc di jQuery e tramite un altro plugin ho potuto gestire la localizzazione dell&#8217;applicazione nelle varie lingue richieste.<br />
La funzionalità cross browser è stata in gran parte rispettata accettando un lieve degrado per quello che riguarda browser un pò datati, del resto non si può avere tutto.</p>
<h4><strong>Il risultato:</strong></h4>
<p>di seguito riporto alcune delle schermate dell&#8217;applicazione realizzata.<br />
L&#8217;accesso avviene tramite l&#8217;autenticazione dell&#8217;utente, da cui vengono impostati i vari livelli di accesso alle varie funzionalità.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-48" title="Controllo remoto - Pagina di login" src="http://www.exitweb.it/wp-content/uploads/2011/02/login.jpg" alt="" width="400" height="200" /></p>
<p>Poi si passa alla schermata dove vengono visualizzati i parametri di funzionamento dell&#8217;apparecchiatura. se si dispone dei privilegi necessari, oltre alla lettura dei parametri, c&#8217;è la possibilità di eseguire dei comandi.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-49" title="Controllo remoto - Pagina di monitor" src="http://www.exitweb.it/wp-content/uploads/2011/02/monitor.jpg" alt="" width="400" height="412" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.exitweb.it/2011/02/15/controllo-remoto-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

