Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 1,876 a 1,890 (di 4,367 totali)
  • Autore
    Post
  • in risposta a: How to manage logic I/Os by modbus #37838
    Sergio Bertana
    Amministratore del forum

    The logic I/Os are managed by program on process image, so they are not directly accessible by modbus commands. The modbus commands can act only on the DB100 data memory. The DB100 area is accessible by all the modbus commads at offset address 40000.

    If you need to manage the logic I/Os by modbus you must write a simple program that copies the logic inputs to a BOOL variables on DB100 and copies BOOL variables from DB100 to logic outputs. This program can be writen by using any language, here the ModbusIOs program download, it’s a simple project with two example programs, one in LD ladder diagram and one in ST structured text (Screenshot).

    in risposta a: How to choose the proper output circuit #37837
    Sergio Bertana
    Amministratore del forum

    The SlimLine 16+8 digital I/O expansion module is available in two models. The one that uses a relay output circuit (Relay datasheet), typically has a minimum electrical life of 100000 cycles (2A 250Vac, 30Vdc, resistive load). The SSR model (SSR module datasheet), instead has an extremely long life.

    The SlimLine Static output expansion I/O module has an electronic driver output (Output driver datasheet), this output has an extremely long life, it cans drive only DC circuits with voltage from 10.5 to 45 Vdc.

    So for the the application on wich you need 2000 cycles per hour. If your load is an AC you can use the SSR output. If your load is DC you can use the static output. To close the 5Vdc circuit you must use the relay outputs. About the TOn/TOff times they are stable on the temperature range you request.

    in risposta a: Valore di ritorno operatore SIZEOF #38288
    Sergio Bertana
    Amministratore del forum

    Per capire il valore di ritorno dell’operatore SIZEOF occorre fare riferimento alla architettura del sistema, in un sistema ARM come lo SlimLine le variabili a 2 bytes sono allineate ad indirizzi divisibili per 2, mentre le variabili a 4 bytes sono allineate ad indirizzi divisibili per 4. Siccome una struttura può contenere dati disomogenei tra di loro (BOOL, BYTE, WORD, REAL, ecc) il compilatore di LogicLab alloca alla struttura una dimensione in byte pari al valore superiore divisibile per 4. Nel tuo caso i 30 bytes diventano 32, e se tu provassi a fare la struttura di 14 WORD (Quindi 28 bytes) essendo il valore divisibile per 4 SIZEOF ritornerebbe esattamente 28.

    Consiglio, nella definizione delle strutture conviene sempre manualmente allineare la dimensione ad un valore  divisibile per 4 aggiungendo delle variabili Dummy (Vedi screenshot). Ulteriori informazioni su questo argomento le trovi in questo topic.

    in risposta a: Connessione Pannelli con PLC BacNet IP #38287
    Sergio Bertana
    Amministratore del forum

    Se la connessione è in ethernet o seriale la simulazione del programma con EasyBuilderPro su PC funziona esattamente come sul pannello reale. Possono nascere problemi solo nel caso siano necessarie interfacce dedicate per l’interfacciamento.

    Con BacNet in alcuni casi ci sono stati problemi di acquisizione delle TAGs direttamente dal PLC, problemi che sono stati superati importando le TAGs da file e non da acquisizione diretta.

    in risposta a: Rilasciato FB MQTTClient per gestione protocollo MQTT #39378
    Sergio Bertana
    Amministratore del forum

    Attualmente la comunicazione è solo in chiaro, livelli di crittografia sono in previsione ma non ho date di rilascio.

    in risposta a: Modifica parametri network RNDIS USB su SlimSline Compact #37511
    Sergio Bertana
    Amministratore del forum

    Come primo suggerimento consiglio di utilizzare l’ultima versione di Toolly scaricabile dal sito. Dalla finestra Discoverer di Toolly è possibile individuare tutti i prodotti SlimLine e Netlog connessi in rete (Screenshot) anche se la classe del PC che esegue Toolly è diversa dalla classe di rete dei prodotti. Questo permette di configurare l’indirizzo di rete del dispositivo senza modificare l’impostazione IP del PC.

    Per sicurezza (Ossia per evitare di commettere errori e modificare le configurazioni di un altro dispositivo), l’operazione di modifica delle impostazioni è possibile solo nei primi 10 minuti di accensione del sistema. Quindi consiglio di spegnere il dispositivo e riaccenderlo e riprovare l’impostazione.

    in risposta a: Problema aggiornamento LogicLab 2.5.0.0 #37509
    Sergio Bertana
    Amministratore del forum

    Ricordo che le librerie si trovano nella directory di installazione di LogicLab e comunque nella sezione Downloads della pagina del sito è possibile eseguire il download delle eventuali nuove versioni.

    in risposta a: Comunicazione con dispositivi Modbus UDP #36291
    Sergio Bertana
    Amministratore del forum

    Dipende dal tipo di PLC usato e connessione, se fossero PLC in connessione seriale si puo fare un unica pagina e modificare a seconda del riquadro selezionato il numero di nodo PLC tramite la variabile LW-9300÷9331 (16bit) : driver ID of local PLC 0÷31.

    Ma visto che nel tuo caso la connessione è Ethernet attualmente non mi viene in mente un modo per bypassare il dover puntare oggetto per oggetto. Però se utilizzi uno SlimLine da gateway potresti delegare al programma sullo SlimLine la commutazione dei nodi. Il terminale gestisce sempre le stesse variabili, ma informa lo SlimLine della pagina visualizzata (O meglio del carrello indirizzato) e il programma provvederà a mappare sulle variabili gestite dal terminale il corretto carrello.

    in risposta a: Problema aggiornamento LogicLab 2.5.0.0 #36287
    Sergio Bertana
    Amministratore del forum

    La nuova versione di LogicLab è molto più restrittiva nei controlli sul codice sorgente, ed alcune “imprecisioni” presenti nelle nostre librerie che con le versioni precedenti venivano accettate, con la nuova versione non passano più il controllo sintattico. Il tuo è il problema classico in cui incappano molti, hai importato nei tuoi progetti la libreria PLCUtyLib, questa libreria è un contenitore di oggetti (Funzioni e Blocchi funzione) di varia utilità, non và mai importata nel progetto, ma si devono importare dalla libreria solo gli oggetti che si utilizzano. Il tutto è bene indicato in questo topic.

    Per risolvere il problema, se non usi molti degli oggetti presenti nella libreria ti consiglio di eliminare la libreria dal progetto ed importare solo gli oggetti che utilizzi. In alternativa puoi eliminare la vecchia versione di libreria ed includere la nuova che troverai nella cartella Libraries di LogicLab.

    Nota, le librerie nella nuva versione di LogicLab hanno estensione plclib non più pll come nella vecchia versione, e per poter utilizzare le nuove librerie devi convertire il progetto in plcprj (Basta fare un salva con il nome), Topic.

    in risposta a: Gestione password temporanea tramite macro #36314
    Sergio Bertana
    Amministratore del forum

    Si certo le macro dei terminali Weintek sono molto potenti e le aree di memoria che storicizzano le passwords sono scrivibili da macro. Quindi quello che chiedi è sicuramente fattibile, purtroppo non abbiamo esempi di programmi che realizzano qualcosa di simile a quello che necessiti.

    in risposta a: Stampa da terminale su più stampanti #38554
    Sergio Bertana
    Amministratore del forum

    Se sei bravo a sviluppare programmi su PC questo potrebbe essere un workaround al tuo problema.
    Con EasyPrinter come stai facendo ora puoi ricevere da più terminali le stampe, puoi configurare il programma per salvarle su disco, verranno salvate in directories diverse una per ogni terminale.

    Ora (e quì è la parte difficile) dovrai gestire la stampa dei files, a questo scopo potresti farti un programmino che analizza i files presenti nelle varie directories e ad ogni nuovo file lo manda in stampa.

    in risposta a: Remotare segnali logici ed analogici su connessione ethernet #37999
    Sergio Bertana
    Amministratore del forum

    Con i prodotti della famiglia SlimLine puoi realizzare quello che ti serve, un modulo CPU ha 2 ingressi analogici e quindi può acquisire direttamente l’ingresso 4÷20 mA che può trasmettere ad uno o più sistemi SlimLine via ethernet. Con la libreria eLLabDataExchLib (Topic) puoi scambiare dati tra i diversi sistemi SlimLine anche attraverso Internet. Per ricreare il segnale 4÷20 mA in uscita devi utilizzare un modulo di espansione I/O analogico. Se il sistema DCS accettasse anche ingressi a 0÷10 Volt potresti utilizzare in alternativa agli SlimLine due sistemi Netlog che hanno già al loro interno gli I/O analogici.

    in risposta a: Connettere dispositivi I2C al bus di espansione SlimLine #36634
    Sergio Bertana
    Amministratore del forum

    Il bus di espansione I2C dei sistemi SlimLine è a 5 Volts, il circuito interno ha già le resistenze di pull-up per il segnali di Clock e Dato. Se utilizzi dispositivi a 5 Volts puoi connetterli direttamente al bus  di espansione così come riportato nel Manuale riferimenti hardware.Se il tuo dispositivo a 3.3 Volts è tolerant 5 Volts lo puoi connettere direttamente, in caso contrario devi utilizzare un traslatore di livello I2C (Esempio un PCA9507) come quello indicato nel manuale.

    in risposta a: Gestire connessioni multiple da PC verso PLC #39962
    Sergio Bertana
    Amministratore del forum

    Aggiungo una soluzione alternativa adatta a chi sà programare, grazie alla versatilità dei nostri sistemi programmabili SlimLine è possibile autocostruirsi un gateway di comunicazione. Come riportato in questo topic ecco un semplice convertitore Ethernet/Seriale.Nella nostra libreria di blocchi funzione abbiamo anche il FB ModbusTCPGateway (Topic) che realizza proprio un gateway di comunicazione Modbus.Altro esempio interessante è il convertitore Modbus Ascii/RTU (Topic) di cui viene fornito il programma in codice sorgente.Quindi usando un modulo CPU SlimLine (Esempio questo) utilizzando il protocollo Omron Host Link (Di cui diamo un estratto) che prevede lo scambio di comandi e risposte tra il computer host ed il PLC. Il PLC attende la stringa di comando e solo al termine della sua ricezione (Se il comando era indirizzato a lui) invia la stringa di risposta. E’ possibile realizzare un gateway TCP/Seriale per la gestione della comunicazione tra più PC ed un PLC Omron.Per il test si può utilizzare un emulatore di terminale (Esempio Toolly) per gestire l’invio delle stringhe seriali al PLC Omron e poi per l’invio delle stesse stringhe in TCP allo SlimLine che stà eseguendo il programma gateway. Ecco le stringhe di test che avevo riportato in un mio vecchio topic.Prendendo in esame la comunicazione con un PLC impostato con indirizzo “0” è possibile inviare una stringa del tipo: @00MB1A03003C* seguita da return40 30 30 4D 42 31 41 30 33 30 30 33 43 2A 0D in esadecimale Il PLC risponderà con una stringa del tipo: @00MB00110000020E010000000000000000000039* seguita da return.

    in risposta a: Gestire connessioni multiple da PC verso PLC #39961
    Sergio Bertana
    Amministratore del forum

    Abbiamo convertitori Ethernet/Seriale che accettano connessioni multiple (Esempio l’ATC-3000), ma il problema nel tuo caso visto che si parla di PLC Omron è che devi gestire il protocollo di comunicazione Omron. Se i due PC lavorando in modo asincrono inviano una richiesta simultaneamente il convertitore invia le due richieste di seguito al PLC senza aspettare la risposta dal PLC creando una sovrapposizione di dati.Per gestire il tuo problema devi utilizzare un Gateway, che serializzi le richieste dei PC gestendo il protocollo. Abbiamo dei gateway ma solo per il protocollo Modbus (Vedi ATC-3002). Nel caso di un Gateway ti ricordo che sicuramente dovrai gestire nel PC un tempo di timeout più lungo, perché quando il PC2 invia una richiesta se il gateway stà già elaborando la richiesta del PC1 nè dovrà attendere il termine.

Stai visualizzando 15 post - dal 1,876 a 1,890 (di 4,367 totali)