Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 2,281 a 2,295 (di 4,367 totali)
  • Autore
    Post
  • in risposta a: Trasmissione dati in UDP da PC a SlimLine #39351
    Sergio Bertana
    Amministratore del forum

    Il sistema come dicevo nel post precedente và in stop resettando l’uscita di Ready che a sua volta blocca tutti i moduli di espansione (Spia gialla spenta). Ho analizzato i logs e come si vede vi sono una serie di eccezioni di watchdog, lo strano è l’indirizzo a cui avvengono 0x00000000 (Che versione hai del software ?), perchè l’errato indirizzo sulla eccezione di watchdog è un bug risolto sull’ultima versione, l’indirizzo è utile per capire dove avviene l’eccezione (Topic).

    Per normativa un programma non deve mai arrestarsi, quindi il sistema su eccezione tenta un riavvio, ma se il riavvio non riesce per 10 volte consecutive, per sicurezza si arresta in stop (Topic).

    Non mi spiego il tuo problema, la saturazione del buffer UDP non dovrebbe generare in alcun modo l’aresto ma solo la perdita di pacchetti dati. Comunque attiviamo una serie di test per cercare di riprodurre in laboratorio il problema. Nel caso non riuscissimo a vederlo potremmo organizzare una assistenza via TeamViewer.

    in risposta a: Problemi di connessione tra due ATC-1000 in paired #39349
    Sergio Bertana
    Amministratore del forum

    Quindi se ho ben capito il protocollo di programmazione non è il Modbus ma un protocollo proprietario. In questo caso se chi ha fatto il programma ha assunto che la comunicazione sia sempre su seriale magari in full duplex è evidente che i ritardi della conversione potrebbero originare la criticità che lamenti. Se il software prevede la possibilità di impostare dei tempi di attesa puoi lavorare su questo per cercare di eliminare il problema.

    Le comunicazioni su rete Ethernet avvengono a pacchetti non c’è altro modo per inviare dati sulla rete e la velocità con la quale viaggiano i dati è variabile, dipende dal tipo di rete 10/100/1000 Mhz e dal traffico presente.

    in risposta a: Configurazione programma HWg-Trigger #39347
    Sergio Bertana
    Amministratore del forum

    Vediamo una configurazione per inviare un SMS tramite HWg-SMS-GW3 alla accensione del PC dove è in esecuzione il programma HWg-Trigger. Per prima cosa definire come evento Windows Power-Up Init, e come azione Send SMS (Remote SMS GW), con il pulsante Modem Settings è possibile impostare l’indirizzo IP del dispositivo HWg-SMS-GW3 di invio SMS (Screenshot). In questo topic si trovano le informazioni per la configurazione del dispositivo.

    Il pulsante Send Testing SMS permette di testare l’invio di un SMS di prova, si apre una finestra che permette di inputare il numero di telefono a cui inviare il messaggio. Arriverà un SMS con il testo “HWg PD Trigger testing SMS“.

    Il tasto Edit SMS permette di definire fino a 3 numeri di telefono a cui inviare l’SMS ed il testo dell’SMS da inviare (Screenshot). Effettuata l’impostazione di tutti i parametri è possibile eseguire il test completo di funzionamento agendo sul pulsante Test Action.

    Terminata la configurazione, il programma verrà eseguito come servizio ed alla accensione del PC provvederà ad inviare il messaggio impostato.

    in risposta a: Problemi di connessione tra due ATC-1000 in paired #39346
    Sergio Bertana
    Amministratore del forum

    Non riesco a capire cosa intendi dire con “si connettono e poi ogni 2 secondi circa si disconnettono e si riconnettono“. I convertitori non hanno indicazioni connessione avvenuta o non.

    Se il tuo problema è il software di programmazione della duemmegi contatto che ti dice CPU connessa e sconnessa potrebbe essere un problema legato a dei ritardi di comunicazione. Come espresso molte volte in questo forum le trasmissioni seriali su ethernet sono trasmissioni a pacchetto (I dati sono impacchettati, trasmessi, spacchettati) e tutto questo richiede un minimo di tempo che in alcuni casi potrebbero dare problemi.

    Tieni conto che l’ATC-1000 è l’entry level della gamma di convertitori Ethernet-Seriale e che è il più lento di tutti nelle operazioni di impacchettamento. Però abbiamo moltissimi utenti che lo utilizzano nelle più svariate applicazioni senza alcun problema. Se il protocollo utilizzato dalla CPU duemmegi contatto è come sono risalito da Internet il Modbus, non dovrebbero esserci problemi abbiamo migliaia di applicazioni in Modbus con gli ATC-1000.

    in risposta a: Trasmissione dati in UDP da PC a SlimLine #39345
    Sergio Bertana
    Amministratore del forum

    Non mi dici che versione hai del sistema operativo, dalla versione SFW184B000 abbiamo riscritto parte dello stack TCP/IP se hai una versione precedente ti consiglio di eseguire l’upgrade (Vedi FAQ).

    I pacchetti UDP sono bufferizzati in un buffer FIFO circolare, ad ogni loop della task di background (Back) il buffer viene controllato ed i dati sono estratti. L’unico problema che posso immaginare è che se sei troppo veloce nell’inviare i dati e/o se il tempo di esecuzione della task Back è troppo elevato (Screenshot) potresti perdere dei pacchetti.

    Non capisco cosa vuol dire i moduli si spengono, posso immaginare che l’esecuzione del programma si arresti (Viene disabilitata l’uscita di Ready). Se è così sarebbe utile avere il file di log e/o analizzare il risultato del comando Syslog (Topic).

    Il file di log di sistema (Logs.txt) si trova nella cartella System, per vederlo ci si connette in FTP con il sistema e si scarica il file (Topic), oppure è possibile da pagina web indirizzare il file per vederlo nel browser (Screenshot).

    in risposta a: Differenza tra import di libreria ed import di oggetti #39344
    Sergio Bertana
    Amministratore del forum

    Come ti dicevo gli oggetti della libreria eLLabUtyLib si possono utilizzare singolarmente senza collegare l’intera libreria. Tu devi utilizzare il FB ModbusMaster, benissimo allora nel tuo progetto potrai importare solo quell’oggetto e non collegare tutta la libreria.

    Dal menù Project scegli Import Object from library, poi selezioni la cartella dove si trovano le librerie di LogicLab e scegli la libreria desiderata. Con un doppio click si apre l’elenco di tutti gli oggetti presenti e tu potrai importare nel tuo progetto gli oggetti che ti interessano (Screenshot).

    in risposta a: Make a program with a MID protection against copy #39342
    Sergio Bertana
    Amministratore del forum

    Yes the customer can buy the MID directly, we will register the code to him and only the products we sell to him can have its MID programmed on. The MID code is not secret, it can be directly seen on the web page (See screenshot), secret (Crypt) is the part of code that checks it.

    If you would like to protect some parts of your own code, you have to write functions or FBs and encrypt them with your own password. So you can use them inside the code you develop for the customer. A good practise is to include all of them inside a library you supply to the customer.

    in risposta a: Make a program with a MID protection against copy #39340
    Sergio Bertana
    Amministratore del forum

    The MID, is a code that can be written only by Elsist, we can assign a MID code to a customer and write it on the products the customer buys. A special function allows the customer to check by program if the product has the proper MID or not, so by checking it on own programs, functions or FBs it’s possible to stop them if the MID doesn’t match.

    With the MID code you can develop programs, functions or FBs that can be run only on a products that have the proper MID written on. So anyone can copy or backup the software but it doesn’t be run in an hardware tha hasn’t the proper MID.

    Your FBs can be protected by checking the MID by code on them, and obviously the source code of these FBs must be encrypted (Like ours) otherwise anyone can modify the code to bypass the MID control. To encrypt an object, choose from the Logic Lab the object, with the mouse right button menu, select encrypt (See screenshot), and then set a password (a unique password for all the objects or separate password for any object).

    in risposta a: Disponibilità protocollo Modbus sullo SlimLine CODESYS #39339
    Sergio Bertana
    Amministratore del forum

    Le librerie a cui fai riferimento sono librerie comerciali di altri fornitori, non le conosco e non le utilizzo, visto che per gestire le seriali sullo SlimLine c’è il blocco funzione SysSerialPort che gestisce sia la RS232 che la RS485 in modo ottimale.

    Per gli altri utenti del forum l’esempio WeightAcquire a cui ti riferisci è disponibile in questo topic. Ma esempi di comunicazione bidirezionale c’è ne sono nel forum segui i links da questo topic. Puoi anche dare una occhiata a questo topic.

    in risposta a: Precisione e velocità acquisizione modulo I/O analogico #39337
    Sergio Bertana
    Amministratore del forum

    Vediamo di fare un pò di chiarezza, il modulo di acquisizione PCB126 è un modulo intelligente dove su di una scheda base un processore gestisce il dialogo con il modulo CPU dello SlimLine. Su questa scheda base si possono alloggiare fino a 2 modulini di I/O analogico che vengono gestiti dal processore della scheda base.

    Nel caso di ingressi analogici, il modulino porta fino a 5 ingressi che sono multiplexati su di un unico convertitore A/D, per convertire un segnale da Pt100/Pt1000 il convertitore A/D impiega circa 60mS. Ora avremo nel caso peggiore 5 sonde di temperatura per modulino per un totale di 300mS.

    Quindi 5 o 10 sonde hanno comunque un tempo massimo di acquisizione di 300mS, se poi nel tuo caso le sonde sono 20 vorrà dire che avrai due moduli di espansione PCB126 ma il tempo totale sarà sempre di 300mS.

    Ora veniamo alla sincronizzazione, l’acquisizione è asincrona rispetto alla lettura da parte della funzione SysGetAnInp, quindi per avere la certezza che vi sia stata una nuova acuisizione su tutti i 20 canali, l’unico modo è basarsi sul tempo. Se metti una temporizzazione superiore ai 300mS (Io userei il tempo di 500mS) sei certo che ad ogni base tempo tutti e 20 i canali hanno acquisisto un nuovo valore di temperatura.

    in risposta a: Informazioni connessione con PC in RNDIS #39335
    Sergio Bertana
    Amministratore del forum

    Attenzione la classe non si riferisce all’ultimo numero “122” ma si riferisce alla parte di indirizzo mascherata dalla subnet mask (Vedi Wikipedia). Quindi devi verificare che nelle altre schede non hai classi che si sovrappongono, se non sei sicuro consiglio di provare a disabilitare tutte le altre schede tranne l’RNDIS e provare.

    in risposta a: Aggiornamento automatico firmware drive #39333
    Sergio Bertana
    Amministratore del forum

    Intanto per realizzare quello che chiedi devi conoscere il protocollo necessario all’aggiornamento del firmware sul drive. Ammettendo che sia documentato o che comunque tu conosca le procedure da seguire vediamo come poter procedere.

    Visto che ti riferisci come prima possibilità ai terminali operatore, partiamo da questa ipotesi. Lo strumento macro tramite il Free protocol permette di gestire completamente la comunicazione, sia seriale che ethernet. Purtroppo però non ha nessuna istruzione per gestire il file system. Quindi anche se potresti parlare con il drive non saresti in grado da leggere via macro i files trasferiti (Magari in FTP) nel file system del terminale.

    Altra possibilità potrebbe essere utilizzare un modulo CPU della famiglia SlimLine, in questo caso lavorando con il linguaggio ST hai la possibilità sia di gestire liberamente le connessioni sia seriali che ethernet, inoltre hai tutte le funzioni per accedere al file system. Quindi potresti in FTP scaricare i file di firmware nel file system del prodotto e poi trasferirli nel tuo drive.

    I moduli CPU della famiglia LogicLab hanno un file system proprietario quindi non puoi leggere SDCard scritte da un PC ed il sistema non supporta i PenDrive USB. Mentre il modulo CPU della famiglia CODESYS ha un file system FAT ed è compatibile con il PC oltre a poter gestire anche PenDrive connessi via USB, Topic.

    in risposta a: Informazioni connessione con PC in RNDIS #39332
    Sergio Bertana
    Amministratore del forum

    Quindi se ho ben capito stai parlando di connessione in RNDIS. Posso immaginare che sia un problema di networking, su porta RNDIS lo SlimLine ha di default l’indirizzo 192.168.1.122, quindi devi impostare il driver RNDIS nella stessa classe di rete 192.168.1.xxx.

    Sei sicuro che in quella stessa classe nel PC non hai altre schede di rete, esempio rete ethernet, adattatore WiFi, ecc… perchè in questo caso i pacchetti IP in uscita non sanno che strada scegliere. Se sei in questa situazione devi cambiare la classe di rete di una delle interfacce.

    in risposta a: Gestione isteresi su comando riscaldatore #39330
    Sergio Bertana
    Amministratore del forum

    Allego l’FB OnOffRegulation che ho realizzato per gestire la regolazione degli aerotermi in azienda. Il FB gestisce la soglia di temperatura con una banda morta per evitare le pendolazioni sul comando (Stampa, libreria).

    in risposta a: Collegamento termoresistenze Pt100/Pt1000 #39329
    Sergio Bertana
    Amministratore del forum

    Non sò se può servirti ma ti allego l’FB OnOffRegulation che ho realizzato per gestire la regolazione degli aerotermi in azienda. Il FB gestisce la soglia di temperatura con una banda morta per evitare le pendolazioni sul comando (Stampa, libreria).

    In questo topic trovi ulteriori informazioni su un argomento analogo.

Stai visualizzando 15 post - dal 2,281 a 2,295 (di 4,367 totali)