RECS 101: UN WEB SERVER EMBEDDED PER APPLICAZIONI DI CONTROLLO REMOTO TRAMITE TCP/IP – 2° Parte
FE Marzo-Aprile 2003 – RECS 101 - Intellisystem Technologies

RECS 101: UN WEB SERVER EMBEDDED PER APPLICAZIONI DI CONTROLLO REMOTO TRAMITE TCP/IP – 2° Parte

In questa seconda parte della presentazione del dispositivo RECS 101 sono affrontati i seguenti argomenti: le problematiche inerenti la configurazione dei parametri di rete per il corretto utilizzo del dispositivo all’interno di una rete Intranet/Internet; Come effettuare le operazioni di upload dell’interfaccia GUI personalizzata all’interno della memoria flash del dispositivo; In conclusione vengono presentati due possibili circuiti d’interfaccia che permettono allo sviluppatore di implementare in modo sicuro un proprio hardware per interfacciare RECS 101 a qualsiasi dispositivo/impianto da controllare via Internet.  

CONFIGURAZIONE DEI PARAMETRI DI RETE

Prima di poter utilizzare RECS 101 occorre configurare correttamente i suoi  parametri di rete utilizzando il programma shareware di utilità RECS Utility, scaricabile al seguente indirizzo http://www.intellisystem.it/recs/ download.htm. RECS Utility è stato progettato e realizzato per lavorare su piattaforma Microsoft Windows sui sistemi operativi delle versioni 95/98/ME/NT/2000 e XP Home/Professional. Una volta installato ed eseguito RECS Utility, verrà visualizzata la maschera iniziale del programma che permette di impostare l’indirizzo IP di RECS 101 (fig. 1) Prima di configurare l’indirizzo IP da assegnare al dispositivo è necessario avere informazioni sulla struttura degli indirizzi IP della rete in cui si andrà ad installare RECS 101. Pertanto occorrerà conoscere: • Un indirizzo IP non utilizzato all’interno della struttura; • La Subnet Mask della struttura. RECS 101 è preconfigurato in fase di testing con le seguenti impostazioni di fabbrica: Indirizzo IP: 172.16.10.103 Subnet Mask: 255.255.255.0 Per impostare o cambiare l’indirizzo IP di RECS 101 occorre prima reinizializzare l’indirizzo IP al valore di default 0.0.0.0 (operazione che verrà descritta di seguito). Inizializzare un nuovo indirizzo IP per RECS 101 implica la rimozione dell’associazione IP/MAC memorizzata all’interno del PC che s’intende adoperare. Tale informazione è memorizzata nella cache del protocollo ARP. Tramite il comando mostrato di seguito è possibile visualizzare tutte le associazioni IP/MAC presenti nel PC (ovviamente gli indirizzi IP riportati nell’esempio sono puramente fittizi): La rimozione di tale associazione va fatta utilizzando il comando ARP nel modo seguente; >> arp –d 192.168.1.15 Adesso si è pronti a reinizializzare l’indirizzo IP all’interno del dispositivo RECS 101. Selezionando la finestra “Configurazione indirizzo IP” e premendo il pulsante “Cancella indirizzo IP” sarà visualizzata la finestra riportata in fig. 2. Dopo aver correttamente impostato l’indirizzo IP che si vuole cancellare, automaticamente alla pressione del pulsante “OK” l’indirizzo IP di RECS 101 sarà impostato al suo valore di default 0.0.0.0. Nel caso in cui non si conosce a priori il vecchio indirizzo IP del dispositivo, si può adoperare la funzione di ricerca indirizzo IP tramite la pressione del pulsante “Ricerca indirizzo IP”. Sarà visualizzata la finestra riportata in fig. 3. Inserendo l’indirizzo MAC riportato nel pannello posteriore del dispositivo (fig.4) e pre- mendo il pulsante “Trova” dopo qualche istante il software restituirà l’indirizzo IP correntemente impostato nel dispositivo RECS 101. Occorre sottolineare che la ricerca non avrà esito positivo se la Subnet Mask del PC adoperato per la configurazione è diversa da quella impostata all’interno del dispositivo RECS 101 che per default è 255.255.255.0. Verificare anche l’indirizzo IP del PC da cui accedete a RECS 101 facendo in modo che l’indirizzo del PC ricada all’interno della stessa Subnet Mask di RECS 101.Ad esempio, supponendo che RECS 101 sia configurato nel modo seguente: Indirizzo IP: 172.16.10.103 Subnet Mask: 255.255.255.0 il PC con il quale si vuole accedere a RECS 101 dovrà avere la seguente configurazione: Indirizzo IP: 172.16.10.xxx Subnet Mask: 255.255.255.0 Dove “xxx” sta per qualsiasi numero compreso tra 0 e 255. Per modificare la configurazione dell’indirizzo IP e della Subnet Mask del PC occorre adoperare l’esatta funzionalità di Windows (fig. 5). Una volta rimosso con successo il vecchio indirizzo IP precedentemente assegnato a RECS 101 si è pronti per inserire in nuovo indirizzo IP selezionando la finestra “Configurazione indirizzo IP” (fig. 1). Se nella tabella “DataBase BootP” appare la vecchia configurazione del dispositivo, occorre premere il pulsante “Modifica configurazione” altrimenti premere il pulsante “Aggiungi nuovo dispositivo”: si aprirà la finestra riportata in fig. 6. Tale finestra presenterà i valori in precedenza impostati nel caso in cui il dispositivo sia già presente nel DataBase BootP. Viceversa conterrà i campi vuoti. La fig. 6 riporta l’esempio di quest’ultimo caso. Modificare il campo “Indirizzo IP” col nuovo indirizzo IP, il campo “Indirizzo MAC” (l’indirizzo MAC del vostro dispositivo è situato nel pannello posteriore, fig. 4), il campo “Gateway” (se esiste un Gateway nella vostra rete) ed in fine il campo “Subnet Mask” (fig. 6). Premendo il tasto “Aggiungi” le informazioni editate saranno memorizzate nel database degli indirizzi IP associato a RECS Utility. Per completare la configurazione dell’indirizzo IP memorizzato occorre lanciare le funzionalità del server BootP premendo il pulsante “Avvio BootP” della finestra “Configurazione indirizzo IP” (fig. 1). Attendere qualche istante sino a quando lo stato del dispositivo evidenzia la scritta “Invio della replica BootP all’indirizzo IP “ [ x x x . x x x . x x x . x x x ] ” ( d o v e “xxx.xxx.xxx.xxx” sarà il nuovo indirizzo IP impostato). Attendere sino a quando il led Tx non finisca di lampeggiare, quindi premere il pulsante “Arresto BootP” (fig. 1). A questo punto l’indirizzo IP di RECS 101 è stato cambiato. Se l’inizializzazione dell’indirizzo IP è avvenuta con successo, il Led TX del dispositivo lampeggerà in continuazione. Per verificarne il corretto funzionamento utilizzare il comando Ping da DOS. Ad esempio, supponendo che il nuovo indirizzo sia 172.16.10.105, se il comando Ping risponde come di seguito riportato, allora la modifica dell’indirizzo IP ha avuto successo. In caso contrario ripetere tutto il procedimento descritto. Potrebbe capitare il caso che il dispositivo RECS 101 sia settato con un indirizzo IP non compatibile con la rete nella quale RECS 101 è stato installato. Ciò si traduce nel fatto che RECS 101 non può essere indirizzato e di conseguenza non è possibile cambiare il suo indirizzo IP. In questo caso l’unica soluzione praticabile è quella di sconnettere RECS 101 dalla rete Lan nella quale era installato e connetterlo direttamente ad un PC dotato d’interfaccia Ethernet mediante un cavo di rete incrociato. Le operazioni da compiere sono riassunte nei seguenti punti: 1.Scollegare RECS 101 dalla rete Lan. 2.Collegare RECS 101 ad un PC tramite un cavo di rete incrociato. Le figure 7 e 8 mostrano la differenza di connessione tra un cavo di rete dritto ed uno incrociato. RECS 101 può essere collegato direttamente ad internet e quindi rendere le sue applicazioni visibili da tutte le parti del mondo se è configurato con un indirizzo IP statico. La fig. 9 ne rappresenta una possibile connessione. In sintesi ciò che occorre è: 1.Un indirizzo IP statico, ovvero un indirizzo IP che abbia visibilità su Internet. 2.Una connessione diretta ad internet ad esempio ADSL o una rete LAN perennemente connessa. 3.Condividere la connessione ad internet tramite un Router e/o un Hub/Switch. 4.Collegare RECS 101 alla rete dopo averlo configurato con il relativo indirizzo IP statico.

UPLOAD DELL’INTERFACCIA UTENTE PERSONALIZZATA

Per sfruttare al massimo le potenzialità di RECS 101, occorre personalizzare l’interfaccia grafica del dispositivo agendo e/o modificando i files forniti dal costruttore. Definita l’interfaccia utente per l’applicazione che s’intende progettare non resta che fare l’upload all’interno della memoria flash di RECS 101. Si ricorda che la memoria totale a disposizione dell’utente è di 500 KByte, con supporto fino a 256 differenti file. Poiché RECS 101 utilizza un file system proprietario, i file relativi all’interfaccia web sono gestiti mediante una tabella interna di tipo “file index”. Per trasferire i files all’interno di RECS 101 è necessario procedere prima alla creazione di un file di progetto che rappresenta l’immagine dei files che dovranno essere memorizzati all’interno della memoria flash. Il file di progetto, che presenta un’estensione *.REC, può essere unicamente gestito dal web server integrato in RECS 101. RECS Utility contiene al suo interno delle funzionalità dedicate alla costruzione e all’upload di questo tipo di file. Per procedere all’upload dell’interfaccia utente personalizzata occorre seguire i seguenti passi: 1) Creare e/o modificare le pagine web personalizzate con qualsiasi software di web-publishing. 2) Impostare i parametri dell’applet in funzione delle esigenze di progetto. 3) Utilizzare il software RECS Utility per creare il file di progetto *.REC. 4) Fare l’upload del file di progetto all’interno di RECS 101. Di seguito è presentato un esempio illustrativo atto a descrivere l’operazione di upload dell’interfaccia personalizzata presente nel CD-Rom fornito in dotazione situata all’interno della cartella “CP” (il lettore può scaricare tale software direttamente da questo indirizzo: http://www.intellisystem.it/recs/ downloads/CP.zip). Poiché l’upload del file di progetto avviene mediante il protocollo UDP (protocollo che non prevede la conferma della ricezione dei pacchetti inviati) il lettore, in realtà, pur non avendo a disposizione RECS 101 può emulare tale funzionamento anche se il dispositivo non è fisicamente connesso alla rete. Le operazioni da compiere per procedere all’operazione di upload sono le seguenti: 1) Dopo aver lanciato RECS Utility selezionare l’opzione “Web Upload” come riportato in fig. 10. 2) Premere il pulsante “Seleziona Files di progetto” e selezionare la cartella contenente i files (Ad esempio la cartella Control Panel “CP” contenuta all’interno del CD-Rom fornito in dotazione), premere “ok” per proseguire (fig. 11). 3) Inserire quindi il nome da assegnare al file di progetto e premere il pulsante “Salva” (fig. 12). 4) Premere il pulsante “Upload” per trasferire il file immagine all’interno di RECS 101. Questa procedura attiverà una barra di progressione che indica lo stato d’avanzamento dell’operazione di upload in corso. Al termine di tale fase sarà visualizzato un messaggio che comunica la chiusura dell’operazione. Nel caso si volessero programmare più RECS 101 con la stessa interfaccia utente e quindi col medesimo indirizzo IP si possono saltare le fasi descritte nei punti 1-4 a patto di possedere il file di progetto *.REC. In questo caso premere il pulsante “Seleziona File di progetto” (fig. 10), selezionare il file di progetto da trasferire in RECS 101 (fig. 13), quindi procedere con l’operazione di upload premendo il pulsante “Upload” (fig. 10).

IMPLEMENTAZIONE DELLE INTERFACCE HARDWARE SULLE PORTE DI INPUT/OUTPUT

RECS 101 si interfaccia con l’impianto o dispositivo da controllare mediante due porte a 16 bit digitali, rispettivamente, una di Input ed un’altra di Output poste sul frontalino posteriore. La fig. 14 riporta la piedinatura dei connettori Cannon a 25 poli che ospitano tali porte. Il progettista che intende interfacciare RECS 101 deve predisporre delle interfacce che consentono il corretto rispetto delle caratteristiche elettroniche della logica TTL implementata nelle due porte. Di seguito distingueremo due tipi d’interfacce rispettivamente una per la porta di Input ed un’altra per la porta di Output. UNITÀ D’INPUT Poiché l’interfaccia di I/O di RECS 101 lavora con livelli logici TTL il dispositivo da interfacciare alla porta d’ingresso deve presentare anch’esso un interfaccia di tipo TTL. I 16 bit d’ingresso per l’applicazione fornita sono stati progettati per funzionare in logica TTL “Low Active”. Non sempre però i dispositivi hanno delle porte TTL e perciò, in questo caso, è opportuno adoperare un circuito che interponendosi tra RECS 101 e il dispositivo da interfacciare possa connettere i due dispositivi senza che essi corrano il rischio di danneggiarsi. Il circuito suggerito utilizza dei fotoaccopiatori che, garantendo un totale isolamento tra i due dispositivi, ne assicurano il corretto funzionamento. La fig. 15 mostra una possibile realizzazione del circuito proposto.

UNITÀ D’OUTPUT

RECS 101 è dotato 16 uscite che lavorano con livelli logici TTL progettati per funzionare in logica “High Active”. Affinché RECS 101 possa essere correttamente interfacciato con un altro dispositivo che lavora con tensioni diverse si consiglia l’uso di fotaccopiatori che garantendo un totale isolamento tra i due dispositivi ne assicurano il corretto funzionamento. La fig. 16 mostra lo schema elettrico di un circuito d’esempio per la realizzazione di un’interfaccia d’uscita da collegare a RECS 101. Tale circuito si presta benissimo per tutte quelle applicazioni nelle quali è necessario effettuare un controllo di tipo ON/OFF di carichi di qualunque tipo. Poiché il circuito contiene dei relay assieme agli optoisolatori si ottiene un circuito doppiamente isolato sia galvanicamente (per mezzo dei realy) che otticamente (mediante l’uso di fotoaccoppiatori). Questa proprietà è da non sottovalutare per prevenire possibili rischi di danneggiamento di RECS 101 o peggio ancora di tutti i sistemi presenti nella rete a cui è connesso RECS 101: in questo modo si è sicuri che per qualsiasi operazione errata compiuta a valle dell’interfaccia il danno è comunque confinato al danneggiamento dell’interfaccia stessa.

DEVELOPER’S BOARD

Su richiesta dell’utente, Intellisystem Technologies è in grado di fornire una developer’s board per il dispositivo RECS 101 (fig. 17). La developer’s board di RECS 101 è una scheda che integra al suo interno 16 switches per la simulazione dei 16 ingressi digitali di RECS 101 e 16 display a LED per le relative 16 uscite. Gli switch relativi ai 16 ingressi sono stati progettati per lavorare secondo logica TTL “Low Active”, e i 16 display relativi all’output sono stati progettati per lavorare secondo logica TTL “High Active” compatibilmente alle specifiche di RECS 101. Le tabelle 1 e 2 riportate di segui- to riassumono quanto detto in precedenza. La RECS developer’s board non necessita di alimentazione esterna poiché gli viene fornita direttamente da RECS 101 tramite i due connettori relativi all’IO. Mediante la RECS developer’s board è possibile progettare e sviluppare applicazioni senza aver a disposizione l’eventuale impianto da controllare. Dotata di due connettori ausiliari la RECS developer’s board permette allo sviluppatore di estendere le sue funzionalità ad altri dispositivi elettronici in modo da poter effettuare velocemente le comuni operazioni di debugging delle applicazioni. La fig. 18 riporta la piedinatura dei connettori ausiliari descritti in precedenza.

Nel prossimo numero si discuterà dei seguenti argomenti riguardanti RECS 101: 1) Protocollo di comunicazione implementato in RECS 101. 2) Monitor dello stato di I/O. 3) Controllo dei comandi di Output. 4) Comunicare con RECS 101: L’interfaccia Socket in C. 5) Comunicare con RECS 101: L’interfaccia Socket in Java.

_________

A cura di Cristian Randieri. Articolo pubblicato sulla rivista Fare Elettronica N. 213/214 – Marzo/Aprile 2003.

Per scaricare l’articolo pubblicato sulla rivista, seguire il link riportato di seguito http://www.intellisystem.it/portfolio/fe-mar-apr-2003-recs-101-2-parte/

 _____________

Link consigliati per la lettura completa di tutti gli articoli

RECS 101: UN WEB SERVER EMBEDDED PER APPLICAZIONI DI CONTROLLO REMOTO TRAMITE TCP/IP – 1° Parte  

RECS 101: UN WEB SERVER EMBEDDED PER APPLICAZIONI DI CONTROLLO REMOTO TRAMITE TCP/IP – 3° Parte

RECS 101: UN WEB SERVER EMBEDDED PER APPLICAZIONI DI CONTROLLO REMOTO TRAMITE TCP/IP – 4° parte 

Cristian is a brilliant intelligent and great proactivity person and an effective communicator and visionary. He has built a strong (and deserved) reputation as someone with vision, diligence and honor. Cristian is not a simple engineer but he is a real Scientist. His knowledge is not restricted to the area it covers, but its impressive passion for all the technical topics led him to acquire great skills even in areas far from his original studies. Cristian is able to address and solve complex technical problems with excellent results. He is a valuable writer with great scientific background formed with more that 15 years of active research on experimental Nuclear Physics performed in the most famous international research laboratories such as CERN, ESRN, INF. He write about HI-Tech solutions topics and advanced research study applied to industry. He have more than 150 scientific & technical publications. He is also a technical and famous writer in Italy due to his interviews released on the most famous Industrial Italian magazine.

You must belogged in to post a comment.

Intellisystem Technologies