Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 3,811 a 3,825 (di 4,309 totali)
  • Autore
    Post
  • in risposta a: Prodotti per building automation #36898
    Sergio Bertana
    Amministratore del forum

    La domotica o “Building automation” è un settore che stà acquisendo sempre più interesse, sono molte le richieste che ci giungono in questo campo di applicazione. Per quanto riguarda la risposta alla domanda se nostri prodoti possono essere utilizzati in questo ambito la risposta è sicuramente si. Ma occorre ricordare che essendo prodotti general purpose, non sono già programmati per questo specifico scopo, occorre provvedere alla relativa programmazione. Se questo aspetto da una parte rende meno immediato l’utilizzo dei prodotti, dall’altra ne estende la configurabilità permettendo di adattarsi a tutte le casistiche. Un sistema programmato dallo stesso utente è sicuramente il più vicino alle proprie necessità, nessuno conosce meglio di noi stessi quello che ci serve. Ricordo che se non si hanno capacità di programmazione in ambito PLC, linguaggi IEC61131 è preferibile scegliere prodotti già programmati. Detto questo vediamo le diverse possibilità. Utilizzando la famiglia di prodotti SlimLine puoi disporre di scede di I/O logici e/o analogici a cui connettere i vari sensori e gestire le sequenze di automazione. Naturalmente pensando ad una casa conviene ipotizzare più sistemi SlimLine tra loro interconnessi in rete ethernet. Per il controllo accessi puoi utilizzare i dispositivi iButton (Vedi post), per il controllo temperatura puoi interfacciare le sonde direttamente ai moduli SlimLine, oppure utilizzare dispositivi remoti HTemp in RS485 (Vedi post) o in rete ethernet (Vedi post). Per gli I/O logici degli interruttori e degli attuatori puoi collegarli ai moduli dello SlimLine oppure utilizzare moduli di I/O remoto in RS485 (Vedi post). La visualizzazione dello stato dell’impianto può essere fatta da uno o più terminali touchscreen connessi in rete ethernet con le CPU SlimLine (Vedi post), i terminali possono essere consultati in modo virtuale anche da smartphone (Vedi post). In generale l’unico limite è la fantasia e la capacità di realizzare il programma adatto alle proprie necessità, blocchi funzioni per la connessione ad inverter solari (Vedi post) o a contatori di energia (Vedi post), e molto altro completano la gamma dell’offerta.

    in risposta a: Comunicazione tra carrelli e PLC al’interno di un forno #36897
    Sergio Bertana
    Amministratore del forum

    In effetti la comunicazione all’interno di un ambiente in cui esistono masse ferrose può essere difficoltosa specie utilizzando frequenze elevate come quelle dei 2.4GHz dei sistemi WiFi o ZigBee. Nel tuo caso trattandosi di comunicazioni in RS232 sceglierei sicuramente soluzioni basate su radiomodem piuttosto che su access point WiFi e convertitori ethernet/seriale. Se non altro per il fatto che si trasmette solo il pacchetto dati seriali senza l’aggiunta degli headers TCP delle comunicazioni su reti WiFi.Inoltre il tipo di interrogazione a polling dei diversi carrelli da parte del PLC centrale si adatta benissimo a reti di radiomodem, dove un radiomodem master trasmette e tutti ricevono il pacchetto, sarà il solo dispositivo interrogato connesso al radiomodem slave a rispondere al master.Il radiomodem ATC3200, come detto utilizza la comunicazione ZigBee e quindi la stessa frequenza 2.4GHz dei dispositivi WiFi, pertanto potrebbe “patire” gli stessi problemi di comunicazione, anche se il protocollo ZigBee è più semplice da gestire rispetto al protocollo WiFi e quindi anche più “robusto”. In alternativa ci si può orientare sui radiomodem della serie D5, nella serie puoi trovare soluzioni a frequenze inferiori (Esempio 169MHz) che dovrebbero dare i migliori risultati nel tuo tipo di applicazione. Purtroppo nel campo delle trasmissioni radio è quasi impossibile determinare con certezza la funzionalità di una soluzione, ci sono dei criteri di massima che danno una indicazione sulla possibile fattibilità di una connessione, ma il risultato finale si può determinare solo da prove pratiche.

    in risposta a: Gestione I/O logici su SlimLine da pagina web in PHP #36896
    Sergio Bertana
    Amministratore del forum

    In questo post, si trovano informazioni utili sull’utilizzo dei sockets da script php.

    in risposta a: Gestione convertitore Ethernet/seriale da pagina web #36895
    Sergio Bertana
    Amministratore del forum

    Nel mio php.ini ho le seguenti impostazioni:

    extension_dir = “./ext”
    extension=php_sockets.dll

    Quando si effettuano modifiche al file php.ini per renderle operative occorre riavviare IIS, meglio ancora riavviare l’intero PC.

    Per verificare se le estensioni sono viste correttamente dal php, eseguendo phpinfo nella pagina ritornata ci deve essere una sezione sockets con una tabella che indica Sockets Support enabled.

    in risposta a: Aggiungere porte seriali RS422/485 su SlimLine #36893
    Sergio Bertana
    Amministratore del forum

    L’utilizzo di un terminale con interfaccia ethernet tra l’altro permette di poter accedere al terminale da remoto tramite un qualunque browser o tramite smartphone (Vedi post).

    Per interfacciare il tuo sensore alla porta seriale dello SlimLine ti consiglio di cercare nel forum esempi di utilizzo della porta seriale in particolare puoi dare una occhiata a questo post

    in risposta a: Aggiungere porte seriali RS422/485 su SlimLine #36892
    Sergio Bertana
    Amministratore del forum

    Il modulo CPU SlimLine dispone nella Versione Full RS485 di una porta RS422/485 e di 2 ulteriori porte RS232. Tutte le porte possono essere gestite nello stesso modo, quindi anche le porte RS232 con l’aggiunta di un convertitore RS232/RS485 è possibile utilizzarle per connessioni in RS422/485.

    Aggiungo per completezza che è possibile aggiungere porte seriali utilizzando i moduli Mixed I/O (Ogni modulo aggiunge una porta RS232) od il modulo espansione analogico (Ogni modulo aggiunge una porta RS232 o RS422/485).

    Per accedere alle porte seriali presenti sul modulo CPU occorre utilizzare la funzione Sysfopen definendo il nome della porta da utilizzare. Esistono moduli di estensione che sono provvisti di porte seriali, l’accesso a queste porte è esattamente uguale a quello delle porte presenti sul modulo CPU, occorre definire come nome della porta da utilizzare la definizione PCOMx.y dove con x si indica l’indirizzo del modulo e con y il numero di porta presente sul modulo. (Esempio PCOM0.0 definisce la porta 0 presente sul modulo 0, PCOM1.2 definisce la porta 2 presente sul modulo 1.

    Ma nel tuo caso mi domando perchè hai connesso il terminale alla porta RS422/485 e non alla porta RS232, forse il motivo è la distanza tra il terminale e la CPU (Maggiore di 15 metri).In questi casi io consiglio di utilizzare la versione ethernet del terminale, e di connettere il terminale alla CPU tramite rete ethernet. Tra l’altro questo facilita molto la programmazione sia del modulo CPU che del terminale, usando uno switch è possibile interconnettere tutti e due contemporaneamente al PC e di raggiungerli semplicemente tramite indirizzo IP.

    in risposta a: Monitoraggio di una catena di negozi di surgelati #36891
    Sergio Bertana
    Amministratore del forum

    Con i moduli di ingressi analogici puoi collegare quante sonde tu vuoi, ogni modulo può accettare fina o 10 ingressi analogici e puoi mettere più moduli connessi alla CPU.

    Da linguaggio ST puoi gestire in modo trasparente la porta seriale, ma per interfacciarti con le schede Micheletti devi conoscerne il protocollo.

    Il pannello TouchScreen è fatto proprio per lo scopo che tu necessiti, con un tool di sviluppo grafico (Puoi farne il download dal sito) crei pagine dove puoi inserire pulsanti, lampade, strumenti analogici, bar graph che si “animano” con lo stato delle variabili PLC. Puoi creare anche una visualizzazione a lista degli allarmi con l’ora di quando sono avvenuti ed il testi in chiaro della condizione di allarme.

    Perchè creare la porta tramite il PLC, il convertitore Ethernet/Seriale fà esattamente questo, permettendo al software Micheletti di entrare nel sistema. Diversa invece è la visualizzazione di dati letti dal sistema Micheletti, se sviluppi il protocollo, puoi visualizzare i dati di temperatura, anomalie, ecc direttamente sul pannello TouchScreen.

    Il pannello di supervisione interrogabile da remoto solo con password ed indirizzo ip è lo stesso pannello TouchScreen, tu vedrai nella pagina web la rappresentazione virtuale del pannello con le spie luminose, i testi degli allarmi, e potrai interagire “pigiando” sui pulsanti virtuali.

    in risposta a: Gestione convertitore Ethernet/seriale da pagina web #36889
    Sergio Bertana
    Amministratore del forum

    Sembra tuto corretto tranne come hai correttamente notato tu stesso l’indirizzo di invio del form, devi modificare <form action=”/Procedures/ModbusSkt/ModbusSkt.php” method=”post”> con l’indirizzo di dove hai salvato la pagina sul tuo server <form action=”/Send Command.php” method=”post”>.

    Non occorre creare altre pagine, come vedi la pagina php che ho creato contiene sia la parte HTML che viene visualizzata, con il form per la definizione dei comandi AT, sia la parte di script php che esegue la connessione con il convertitore ATC 2000. Sarà il server IIS ad inviare al browser la parte HTML della pagina ed ad eseguire la parte di script php.

    Lo statement if (isset($_REQUEST[‘Command’])) infatti controlla se la richiesta di visualizazione della pagina contiene il parametro POST Command definito, se non è definito (Come nel caso di richiesta pagina da browser) lo script non fà nulla. Se è definito (come nel caso di richiesta pagina su invio del form), lo script esegue la connessione.

    Non serve avere il virtual COM attivo, perchè tu non operi da porta seriale virtuale, anzi potrebbe essere dannoso, se il convertitore ATC 2000 è impostato per accettare una sola connessione TCP, il software virtual COM la impegna impedendo allo script php di potersi connettere.

    in risposta a: Monitoraggio di una catena di negozi di surgelati #36887
    Sergio Bertana
    Amministratore del forum

    La domanda è molto articolata, vediamo di dare alcuni suggerimenti. Come sistema PLC consiglio la famiglia SlimLine, nella gamma oltre al modulo CPU si trovano estensioni per ingressi/uscite digitali e analogiche. Gli ingressi analogici sono già predisposti per acquisizione di sonde di temperatura Pt100/Pt1000. In alternativa si possono utilizzare le sonde One-Wire con l’apposito adattore (Vedi post). Mediante il linguaggio ST è possibile creare appositi blocchi funzioni per la gestione dei protocolli seriali verso le centrali frigo ed acquisirne i valori all’interno del PLC. La CPU SlimLine può gestire un modem GSM per la ricezione e l’invio di messaggi SMS (Vedi post), ma anche in questo caso scrivendo appositi blocchi funzione in ST è possibile in teoria anche gestire i protocolli richiesti dagli istituti di vigilanza. Come interfaccia operatore consiglio un pannello TouchScreen, su cui potrai realizzare anche un sinottico dell’impianto, i pannelli possono anche storicizzare valori di variabili in un file impotabile da Excel. Per sostituire Teamviewer, puoi utilizzare dei convertitori Ethernet/Seriali che saranno visti da remoto come porte seriali virtuali (Vedi post). Quello che non è chiaro è l’accessibilità web, premesso che si deve utilizzare un router per accedere da remoto via TCP/IP, il PLC SlimLine non ha un web server integrato, si può interrogarlo da un remoto via TCP/IP utilizzando uno script PHP (Vedi post). Oppure soluzione alternativa, si può raggiungere da remoto il pannello operatore (Utilizzando un client VNC) anche da uno smartphone (Vedi post).

    in risposta a: Gestione convertitore Ethernet/seriale da pagina web #36884
    Sergio Bertana
    Amministratore del forum

    Certo che è possibile fare quello che desideri, naturalmente occorre conoscere la programmazione in PHP. Anche se và al di là del puro supporto tecnico, visto che in periodo di ferie c’è un po più di tempo, ti ho preparato un programma PHP che visualizza un form con la richiesta di definizione del comando AT da inviare in uscita al convertitore.

    Definito il comando nella apposita casella di testo con il tasto Send si invia il form allo script PHP che invia il comando al convertitore ed aspetta la risposta. La risposta termina con la ricezione di <CR> o per timeout. La stringa di risposta ricevuta è ritornata nella pagina web in una casella di testo. Questa è la pagina web con lo script PHP pronto per l’uso (Download), di seguito lo script PHP.

    Attenzione! Affinchè funzioni lo script và caricato su di un server IIS o Apache che gestisca l’interprete PHP.

        $IPAddress=”192.168.0.95″; //Indirizzo IP convertitore
        $PortNr=23; //Porta host convertitore
        set_time_limit(5); //Imposto tempo limite socket (5 Sec)

        // Eseguo creazione e connessione al socket.

        if (($Skt=socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false)
            {echo “socket_create “.socket_strerror(socket_last_error()); return;}
       
        if (!socket_connect($Skt, $IPAddress, $PortNr ))
            {echo “socket_connect “.socket_strerror(socket_last_error()); socket_close($TRPSkt); return;}

        // Eseguo invio comando e ricezione risposta.
       
        $IString=””;
        socket_set_nonblock($Skt); //Set nonblocking mode for socket
        $TimeBf=time(); //Salvo tempo per timeout
        socket_write($Skt, $_REQUEST[‘Command’].”r”);

        while(TRUE)
        {
            $Ch=socket_read ($Skt, 1, PHP_BINARY_READ);
            $IString.=$Ch;

            // Esco su ricezione <CR> oppure per timeout.
           
            if (($Ch == “r”) || (time() > $TimeBf+2))
            {
                echo “Answer: <input name=”Answer” type=”text” value=””.$IString.”” size=”20″/>”;
                socket_close($Skt);
                exit;
            }
        }

    in risposta a: Gestione convertitore Ethernet/seriale da pagina web #36882
    Sergio Bertana
    Amministratore del forum

    Aggiungo al post precedente alcune note relative all’interfacciamento verso la stufa a pellet o verso qualsiasi altro dispositivo anche non dotato di interfaccia seriale. E’ possibile utilizzare in alternativa al semplice convertitore Ethernet/seriale un dispositivo programmabile come i prodotti della nostra famiglia SlimLine. Questi prodotti sono programmabili secondo la IEC-61131 ed è possibile intefacciarli su rete ethernet utilizzando il protocollo modbus over IP. Ecco quindi che è possibile realizzare il programma che dialoga con la porta seriale della stufa a pellet, e/o acquisisce grandezze digitali e/o analogiche realizzando anche eventuali logiche di regolazione e di automazione. I dati utili per il preset e per la visualizzazione saranno poi appoggiati su variabili di memoria che lo script del web server andrà ad interrogare con il protocollo modbus over IP.

    in risposta a: Gestione convertitore Ethernet/seriale da pagina web #36881
    Sergio Bertana
    Amministratore del forum

    Il convertitore Ethernet/seriale ATC-2000 come tutti i dispositivi di questo tipo accetta una (o più) connessioni TCP o UDP dalla rete Ethernet su di una certa porta, e tutti i dati ricevuti da questa connessione sono ritrasmessi in uscita sulla porta seriale e viceversa. Il convertitore può essere configurato per operare da Server, in tal caso occorre aprire la connessione verso l’IP del convertitore con un programma client. Oppure da client, in tal caso appena acceso cercherà di connettersi ad un server (Esempio un programma su PC oppure un’altro convertitore per creare una rete seriale su TCP), il cui IP deve essere definito nella configurazione. La nostra utility Toolly permette di configurarsi sia come client che come server per testarne il funzionamento. Il server web del dispositivo serve solo per fornire una interfaccia web di configurazione, non è possibile gestire l’invio e la ricezione di dati. Per risolvere il tuo problema devi realizzare un programma sul tuo web server che gestisca l’apertura del socket verso il convertitore, e l’intera comunicazione con il dispositivo (Stufa a pellet) ad esso connesso, visualizzando i dati nella pagina web ritornata al browser. Puoi fare questo utilizzando qualsiasi programma di Server-side scripting (Php, ASP, Perl, Phyton, ecc).

    in risposta a: Come utilizzare la SDCard per il salvataggio di file di log #36880
    Sergio Bertana
    Amministratore del forum

    Per quanto riguarda la tua esigenza di scrivere su SDCard un file di log, ho realizzato un semplice programma LogicLab (Download) che salva un file denominato CLog.txt, con all’interno 50 records di log del valore di tensione acquisita da un ingresso analogico.

    Il file contiene records salvati in formato CSV in modo da essere facilmente importabili in Excel, ogni record contiene 5 campi separati da “;” (Esempio: 01;12;12;03;01.8;). Il 1° campo è un progressivo di record da 0 a 49. Nel 2°, 3°, 4° campo è riportata l’ora, minuti, secondi di record. Nel 5° campo è riportato il valore di tensione acquisito in volt.

    La scrittura del record di log è eseguita da questo programma in ST (Listato), che “riempie” l’array LogRecord con stringa la ascii di log (5 campi separati da “;”). La funzione SysVarsnprintf scrive il valore seguito dal codice terminatore “0”, quindi occorre iniziare la scrittura del valore successivo alla posizione dell’array dove la scrittura precedente ha posto il codice terminatore.

    Terminato il record di log, con la funzione Sysfseek, viene eseguito il posizionamento sul file nella posizione di scrittura, e con la funzione Sysfwrite ne viene eseguita la scrittura.

    in risposta a: Come utilizzare la SDCard per il salvataggio di file di log #36879
    Sergio Bertana
    Amministratore del forum

    Il sistema operativo dello SlimLine dalla versione SFW167C100 (Per l’upgrade vedi FAQ), supporta il file system. Sono gestite due directories Storage (Da 100 Kb) situata sulla memoria EEPROM presente sul modulo CPU, SDCard (Max 512 Mb) presente sulla scheda SD Card che deve essere inserita nel modulo CPU.Per poter accedere alle directories occorre eseguire la formattazione, comando Format da Telnet. Per l’elenco completo dei comandi Telnet riferirsi al manuale di riferimento, le credenziali di accesso di default sia Telnet che Ftp per l’amministratore sono Username: Admin, Password Admin.In linea al comando Format occorre definire il numero di files accettati per ogni directory, fino ad un massimo di 12 files totali. Il primo parametro è riferito ai files in Storage, il secondo ai files in SDCard (Se non presente inserire 0). Esempio, per avere 2 files su storage e 4 su SDCard daremo il comando Format 2, 4, se il comando viene eseguito correttamente ritornerà il messaggio Format Ok, Storage:2 files, SDCard:4 files.Collegandosi allo SlimLine con un client Ftp (Esempio FileZilla), sarà possibile visualizzare il tree delle directories ed accedere in lettura e scrittura, creando, cancellando, editando i files all’interno di esse (Vedi screenshot).

    in risposta a: SlimLine SD-Card management #36878
    Sergio Bertana
    Amministratore del forum

    Abbiamo rilasciato in data odierna la nuova versione SFW167C100 del sistema operativo che prevede la gestione del file system sia su memoria EEPROM interna allo slim line (Directory Storage) che su SDCard (Directory SDCard), vedi FAQ. In questo post un programma LogicLab per salvare un file di Log su SDCard.

Stai visualizzando 15 post - dal 3,811 a 3,825 (di 4,309 totali)