Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 1,861 a 1,875 (di 4,367 totali)
  • Autore
    Post
  • in risposta a: Utilizzo funzione di download hot-swap #36209
    Sergio Bertana
    Amministratore del forum

    Effettivamente il compilatore di LogicLab può compilare in modalità hot-swap, è quindi in grado di ricompilare il progetto mantenendo l’allocazione delle variabili automatiche per permettere il caricamento a caldo del programma sul target.

    Attualmente però nessuno dei nostri sistemi supporta il caricamento a caldo, questo perchè per utilizzare il caricamento a caldo del programma occorre trasferire il programma su memoria RAM ed essendo tutti i nostri sistemi basati su core embedded non dispongono della memoria RAM sufficente per questo.

    Naturalmente siamo sensibili a questa possibilità, abbiamo già anche realizzato versioni di prova, ma per fare questo sui sistemi attuali abbiamo dovuto ridurre drasticamente la dimensione del programma. Appena potremo disporre di un hardware con sufficente memoria RAM la renderemo disponibile.

    in risposta a: Controllo funzionamento applicazione tramite heartbeat #36443
    Sergio Bertana
    Amministratore del forum

    Il flusso del programma così come l’hai descritto è perfetto, ed è legittima anche la tua perplessità. Ecco la stampa di un programma che esegue quello che ti necessita.

    La differenza di tempo “SysGetSysTime(TRUE)-TimeBf” essendo tra due valori di tipo UDINT mantiene il rapporto circolare è restituisce un valore corretto anche se vi è un rollover del valore di ritorno dalla funzione SysGetSysTime(TRUE).

    Attenzione il calcolo della differenza deve avvenire nell’intervallo di tempo necessario al rollover del valore, per spiegarmi esendo il tempo incrementato ad ogni uS il rollover avviene dopo 4294967295 uS pari a 4294 secondi. Se la differenza “SysGetSysTime(TRUE)-TimeBf” fosse eseguita con un valore di TimeBf salvato da più di 4294 secondi il risultato sarebbe in errore. Ecco perchè non ho scritto qualcosa del tipo:

    Error:=(SysGetSysTime(TRUE)-TimeBf) > 5000000;

    Perchè immaginando che l’ingresso di heartbeat non arrivi più ogni 4294 secondi avrei per 5 secondi l’uscita Error disattiva pur essendo in errore. Allego il programma sorgente.

    in risposta a: Riprodurre in modo continuo un file WAV #36442
    Sergio Bertana
    Amministratore del forum

    Non c’è un modo nativo di fare riprodurre in loop un file WAV. L’unico modo è quello di gestire come hai fatto tu la riproduzione del suono su di comando PLC  e poi fare lampeggiare il comando direttamente da PLC oppure da terminale tramite una macro.

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

    Per gestire il salvataggio di dati su file in formato CSV puoi utilizzare il FB StringToLogFile che permette appunto di salvare in un file formato CSV una stringa. Quindi puoi da programma creare la stringa con i dati che vuoi salvare nel file e poi eseguirne il salvataggio. Troverai in questi topic, topic dei programmi di esempio.

    In questo topic un esempio di FB che gestisce la lettura di una cella da un file CSV, il programma sorgente può essere utilizzato come base per una propria FB di lettura/scrittura di file CSV.

    in risposta a: Macchina per test valore di carico molla #36476
    Sergio Bertana
    Amministratore del forum

    Il programma che trovi in questo topic lo puoi utilizzare come base per la lettura della forza di compressione della molla. Tenendo conto che hai 90 cicli al minuto ogni ciclo dura circa 670 mS. Il FB StrainGaugeAcq se si imposta FilterCf a 1 è in grado di eseguire una acquisizione di peso in ca 32 mS, ma naturalmente senza nessun filtro avrai in lettura anche dei valori di rumore. Quindi dovrai impostare il corretto valore di FilterCf per acquisire nel modo migliore il valore di pressione della molla.

    Il problema è eseguire la lettura sul valore massimo di compressione della molla, meglio sarebbe avere un finecorsa sulla meccanica che ti informa che la molla è al suo valore massimo di compressione. In caso contrario devi ricavi il valore dalla lettura di peso. Effettuata la lettura del peso al picco di compressione non basta fare altro che compararlo con il valore di riferimento e se troppo basso segnalare errore.

    in risposta a: Crash comunicazione seriale con libreria NMEA #36480
    Sergio Bertana
    Amministratore del forum

    Rilasciata la nuova versione della libreria eLLabNMEALib_C000 (Estratto manuale), ha come detto nel post precedente la gestione dello spionaggio in questo modo è più facile capire e risolvere eventuali problemi di funzionamento. Allego il programma dimostrativo Ptp123b000 con gli esempi (Download).

    in risposta a: Impostare offset di lettura sensori su HWg-STE #36479
    Sergio Bertana
    Amministratore del forum

    In effetti è prevista l’impostazione di un valore di offset per il sensore. La pagina web di impostazione non è raggiungibile da links, ma occorre digitare l’indirizzo IP del dispositivo seguito dal percorso di pagina xxx.xxx.xxx.xxx/cgi-bin/sys/calibration.asp nel proprio browser (Vedi screenshot).

    In pratica è possibile definire per ogni sensore (Identificabile dal suo codice seriale) un valore di offset di lettura, per conoscere il codice del sensore occorre visualizzare la pagina dei sensori (Vedi screenshot).

    in risposta a: Automazione con comando di stepping motors #36531
    Sergio Bertana
    Amministratore del forum

    Applicazioni dei prodotti SlimLine per la gestione di automazioni con posizionamento di assi elettrici ne abbiamo molte, in quasi tutte le applicazioni vengono utilizzati dei driver (Motori brushless o stepping) intelligenti. Lo SlimLine gestisce gli assi con dei comandi via RS485 Modbus e/o protocollo proprietario del driver o via CAN bus. Nel caso di gestione di motori passo-passo puoi fare riferimento a questo topic.

    I moderni drivers integrano tutti in piccolo PLC con il quale puoi gestire internamente al driver le logiche veloci correlate alla gestione dell’asse e specie nelle connessioni in RS485 può essere utile fare gestire al PLC del driver le quote. Un cliente che opera con motori lineari nel campo dell’imballaggio deve gestire il posizionamento di più assi su diverse quote. Bene lo SlimLine precarica i valori di quota nei vari assi in base alle impostazioni della lavorazione poi il driver ricevendo lo start (Su ingresso digitale) provvede al posizionamento ritornando un Ok posizionamento su uscita digitale. Così lo SlimLine gestendo gli I/O digitali può con estrema velocità sincronizzare i movimenti come fossero pistoni pneumatici.

    in risposta a: Progetto startup HMI e modulo CPU SlimLine #36295
    Sergio Bertana
    Amministratore del forum

    A seguito della tua segnalazione ho ripreso il progetto HMIStartUp ed ho realizzato due versioni del programma terminale HMIStartUp-TCPIP che utilizza la connessione via modbus TCP/IP e HMIStartUp-COM che utilizza la connessione in seriale.

    Il tuo problema è nato dall’avere scelto MODBUS RTU (Adjustable), perché di default si assume come offset 0, mentre il Modbus standard ha offset 1, quindi avrai tutti gli indirizzi scalati di 1. Ed ecco perché ti funziona solo lo switch Output 0, che in realtà agisce sull’uscita 1. Per utilizzare la connessione seriale devi impostare il protocollo MODBUS RTU, RTU Over TCP e poi scegliere come interfaccia la porta seriale (Vedi screenshot).

    Come vedi ho anche impostato Number of resending commands a 2, per fare in modo che su un errore di comunicazione vengano eseguiti più tentativi prima di generare errore. Allego uno zip con i progetti del programma sullo SlimLine e dei due programmi su HMI (Download).

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

    Yes it’s right, you can power the output circuit with an external power supply. The minimum voltage you can use is 10.5 Volts and the value of the output voltage on the active outputs will be very near to the voltage applied.

    The output driver is a MOS circuit, so it in the On state has a resistance of 150mOhm as reported on the datasheet. So the voltage drop depends on the load you apply at the output.

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

    Non riesco a capire quale possa essere il tuo problema. Ma a questo punto credo che l’unica cosa da fare sia aprire una sessione di teleassistenza via TeamViewer così possiamo verificare insieme cosa succede. Qui puoi scaricare l’agente per il supporto tecnico remoto,  per ulteriori informazioni su come eseguire l’agente leggi la nota applicativa. Poi contatti telefonicamente il supporto tecnico e ci accordiamo per eseguirlo.

    in risposta a: Ricevere aggiornamenti da topic su forum Elsist #38899
    Sergio Bertana
    Amministratore del forum

    Grazie della richiesta, ci fa piacere che gli utenti del forum siano attenti e propositivi. In effetti questa possibilità è già nei nostri pensieri, il sito elsist.biz è nuovo, ed abbiamo cercato di portare nel nuovo sito tutta la mole di informazioni che avevamo nel sito precedente.

    Anche tutti i messaggi del forum sono stati reimportati eliminando quelli obsoleti e correggendo tutti i links per ridirigerli sulle nuove pagine del sito. Ci scusiamo per gli eventuali errori che ancora ci sono sia nel sito che nel forum, anche se ogni giorno effettuiamo le correzioni.

    La possibilità di iscrizione ai topics per essere informati sui nuovi posts pubblicati è una delle prossime evoluzioni del forum… Quindi non cambiate canale…

    in risposta a: Crash comunicazione seriale con libreria NMEA #36488
    Sergio Bertana
    Amministratore del forum

    Non mi dici se sono generati errori nella esecuzione della libreria (Gli errori si possono vedere inserendo nella finestra di watch di LogicLab la variabile SysLastError vedi screenshot).

    La libreria eNMEALib è stata realizzata molto tempo fa e non ha la gestione dello spionaggio che poteva esserti utile per capire il tuo problema, in questi giorni non ho molto tempo ma ti ho realizzato una versione beta della libreria eLLabNMEALib_C00_ che ha il blocco funzione NMEASInterface_v1 con la gestione dello spionaggio. Attivando SpyOn potrai vedere dalla console di spionaggio le stringhe ricevute e capire se non riceve nulla o se vi è un errore nella ricezione. Allego il progetto NMEAExample per il test (Download).

    in risposta a: ATC-1000 connessione con MCP Duemmegi non comunica #36534
    Sergio Bertana
    Amministratore del forum

    Ho dato una occhiata su Internet al prodotto MCP e se ho inteso bene utilizza per il dialogo seriale un protocollo proprietario FXP-XT, il protocollo è di tipo NRZ con 1 bit di start, 8 bit dati, nessuna parità, 1 bit di stop quindi una normale comunicazione seriale, non dovrebbero esserci problemi. Di solito come dico sempre nei vari posts i problemi che si possono avere nella conversione Ethernet/Seriale sono due:

    Il programma di virtualizzazione della porta và in conflitto con altri programmi del PC e quindi non si riesce a fare funzionare il VirtualCOM. In questo caso si può tentare di utilizzare altri programmi di virtualizzazione o in alternativa utilizzare due convertitori connessi in paired collegandone uno alla porta seriale del PC. Ma questo non è il tuo caso visto che mi dici che simulando la comunicazione con un programma terminale la VCOM funziona.

    La conversione Ethernet/Seriale introduce dei ritardi nella comunicazione e alcuni protocolli sono sensibili ai tempi di comunicazione e questi ritardi generano un errore di comunicazione. Ma il protocollo FXP come il Modbus sono protocolli a pacchetto e solitamente accettano ritardi tra la richiesta e la risposta.

    Ora venendo al tuo problema, posso solo fare delle ipotesi, hai impostato correttamente da pagina web i parametri di comunicazione seriale ? il VirtualCOM molte volte non riesce a gestirli in modo corretto quindi è sempre meglio impostarli da pagina WEB.

    Se sei connesso in RS485, hai terminato le estremità con le resistenze da 120? ? Hai provato ad invertire i fili RS485+/- ?

    in risposta a: Errore nella importazione progetto con LogicLab 2.5.0.0 #36933
    Sergio Bertana
    Amministratore del forum

    Il problema che lamenti è effettivamente un BUG che si è presentato con quella versione specifica di LogicLab. Il problema è già risolto nella nuova versione che è al momento in fase di testing. Non ho ancora una data ufficiale di rilascio, quindi per eseguire l’apertura del file .rsm devi utilizzare la versione precedente di LogicLab (Tutte le versioni sono scaricabili da qui). Ricordo che è possibile fare coesistere sullo stesso PC più installazioni di LogicLab, basta definire una cartella di installazione diversa per ogni versione.Il file rsm è un file generato da LogicLab che contiene il sorgente del progetto, ed è il file che viene trasferito nel sistema target.  Il file come hai fatto notare correttamente tu è anche scaricabile via FTP, sullo SlimLine si trova nella cartella Project ed ha nome Project.rsm.

Stai visualizzando 15 post - dal 1,861 a 1,875 (di 4,367 totali)