Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 2,701 a 2,715 (di 4,367 totali)
  • Autore
    Post
  • in risposta a: Controllo/Monitoraggio sistema pesatura via Web #38672
    Sergio Bertana
    Amministratore del forum

    Esistono diverse possibilità per soddisfare la tua esigenza, vediamo alcuni suggerimenti.

    Sistema programmabile SlimLine e/o NetlogIII
    Questi prodotti hanno un web server integrato con cui è possibile visualizzare pagine web dinamiche (Topic). Tramite una rete RS485 è possibile acquisire in Modbus RTU i valori di peso dagli amplificatori di cella di carico (Topic) che saranno visualizzati nella pagina Web. Aggiungendo al modulo CPU uno o più moduli espansione I/O analogico è possibile acquisire il segnale di peso direttamente dalla cella di carico eliminando il costo dell’amplificatore (Topic).

    Terminale operatore
    Tramite una rete RS485 è possibile acquisire in Modbus RTU i valori di peso dagli amplificatori di cella di carico e visualizzarli sul terminale. Il terminale è visualizzabile da Web browser (Topic) e/o da Smartphone (Topic). E’ anche possibile utilizzare il modello Cloud HMI cMT-SVR direttamente visualizzabile tramite apposita App.

    Ora tu parli di poterli visualizzare da remoto, bisogna capire come tu puoi collegare i dispositivi ad Internet, se disponi di un IP pubblico (Statico o no), puoi configurare il Port Forwarding/NAT sul router per reindirizzare l’IP pubblico verso l’IP privato del dispositivo.

    Se non disponi di un IP pubblico devi realizzare una VPN o meglio utilizzare l’Easy Access 2.0 sul terminale operatore. In alternativa puoi pensare a soluzioni basate sul cloud (Topic).

    in risposta a: Modbus TCP/IP con convertitore Ethernet-Seriale #38671
    Sergio Bertana
    Amministratore del forum

    Come tutti i convertitori Ethernet-Seriale, anche l’ATC-1000 esegue la conversione pura dei dati ricevuti dalla connessione Ethernet verso la porta seriale e viceversa. A differenza dei gateway Modbus che eseguono la conversione dei protocolli, se sulla connessione Ethernet arriva un frame Modbus TCP/IP il frame viene passato esattamente uguale alla porta seriale e viceversa.

    Quindi per utilizzarlo sui tuoi azionamenti è obbligatorio che vengano eseguite modifiche sulla gestione del protocollo lato RS485. Il protocollo Modbus TC/IP in realtà incapsula il protocollo RTU, vengono aggiunti in testa 6 bytes e viene eliminato il campo CRC (2 bytes), vedi manuale.

    Detto questo, è possibile realizzare in uscita dalla seriale del convertitore una connessione RS485 in multidrop tra diversi azionamenti, ma in questo caso chiaramente dovrai interrogare gli azionamenti uno ad uno sulla stessa connessione TCP/IP senza alcun vantaggio di tempi.

    Diverso invece se equipaggi ogni azionamento con un converitore Ethernet-Seriale, in questo caso il PLC master potrà gestire tante connessioni TCP/IP con i vari convertitori, ed in questo caso le comunicazioni saranno in parallelo guadagnando sui tempi di comunicazione totali.

    in risposta a: Compatibilità I/O Controller II con versioni precedenti #38670
    Sergio Bertana
    Amministratore del forum

    Ho sentito il fornitore al riguardo che assicura la completa intercambiabilità dell’I/O Controller II con il modello precedente.

    Si scusano per le informazioni errate riportate sul manuale e ricordano di fare riferimento sempre alla tabella Technical specifications, provvedono subito a correggere i manuali.

    Quindi è possibile intercambiare l’I/O Controller II con il modello precedente senza preoccuparsi della compatibilità.

    in risposta a: Cenni sull’utilizzo del linguaggio SFC #38669
    Sergio Bertana
    Amministratore del forum

    Se guardi la nota il costrutto esatto per riferirsi alla flag di reset SFC della Action è [Programma]_[Action]_RESET_SFC. Quindi nel tuo esempio sarà Main_subSFC_RESET_SFC.

    Ho modificato l’esempio di prima aggiungendo una Action in SFC (ABlink) ed ho gestito il comando di reset del SFC della Action sia dal programma SFC principale (Screenshot), allego il programma sorgente.

    Il programma esegue 10 lampeggi della uscita e poi resta in attesa per 5 secondi con l’uscita attiva, prima di riprendere il ciclo dall’inizio. Con un ingresso digitale Di00CPU è possibile resettare in qualsiasi momento l’esecuzione del ciclo.

    in risposta a: Monitoraggio temperatura e consumi di punti vendita #38667
    Sergio Bertana
    Amministratore del forum

    Continuo la descrizione della applicazione dando indicazione sul rilevamento dei consumi elettrici. Come visto già nei vari links del  post precedente essendo il sistema programmabile è aperto a varie soluzioni per il monitoraggio dei consumi elettrici.

    La soluzione più naturale è quella di interfacciare il sistema con l’analizzatore da quadro che solitamente è già presente nel quadro di distribuzione. Nel caso non fosse presente si può montare un qualsiasi analizzatore commerciale provvisto di porta seriale con protocollo Modbus RTU, cito ad esempio il modello Smart più della Ducati Energia (Vedi datasheet), il modello Nano della Frer (Vedi datasheet) o ancora il modello ADR-D230 della Vemer (Vedi datasheet).

    Se ci si vuole limitare al solo controllo del consumo è possibile utilizzare dei contatori di energia da porre in cascata al contatore generale magari suddividendo le varie utenze. Esistono contatori con uscita Modbus e con uscita ad impulsi (Vedi datasheet).

    Esiste anche la possibilità di utilizzare un modulo di conversione da impulso ottico a segnale (Vedi datasheet) da applicare direttamente al contatore Enel esistente che permette tramite due ingressi digitali del modulo SlimLine di acquisire i consumi.

    Tutte queste soluzioni utilizzano prodotti facilmente reperibili sul mercato, alcuni di essi sono forniti da aziende con cui collaboriamo e di cui possiamo su richiesta farne fornitura.

    in risposta a: Aggiornamento automatico pagine web con AJAX #38666
    Sergio Bertana
    Amministratore del forum

    Il manuale a cui faccio riferimento è il Manuale programmazione IEC61131-3 che si trova nel pacchetto di installazione di LogicLab.Il topic è riferito ai sistemi programmabili con LogicLab, la tecnica AJAX è sviluppata utilizzando il Javascript all’interno di pagine HTML e si appoggia al server HTTP standard dei sistemi SlimLine e NetlogIII. Abbiamo un modulo SlimLine CPU CODESYS IEC61131-3 che si programma in CODESYS.

    in risposta a: Invio di stringhe con valore variabile su socket TCP #38664
    Sergio Bertana
    Amministratore del forum

    Non ho l’ultimo tuo programma, ma il perchè il quell’esempio ST viene ignorato l’ingresso l’ho spiegato nello screnshot, entri nella IF dove leggi l’ingresso solo sul fronte di connessione del socket poi non entri più.

    In pratica tutto quello che è scritto dentro la IF non viene mai eseguito IF vuol dire se… se è vera la condizione THEN allora esegui…

    IF (SktLsn.Connect <> WMsgPulse)  THEN è vera solo sul fronte di connessione perchè dopo
    WMsgPulse:=SktLsn.Connect; copia lo stato della connessione sul BOOL WMsgPulse

    E tu copiavi l’ingresso proprio dentro l’IF quindi non lo copiavi mai… o meglio lo avresti copiato una sola volta sulla connessione del socket.

    in risposta a: Riportare un grafico plot su pannello operatore #38662
    Sergio Bertana
    Amministratore del forum

    Per poter visualizzare in forma grafica 2 variabili combinate su unico grafico bisogna utilizzare l’oggetto Plot XY (Estratto manuale) dove il pannello legge da una tabella di dati il grafico da realizzare, la tabella si può leggere da registri del PLC o da registri del pannello (Screenshot).

    in risposta a: Connessione dispositivi STE con Paessler PRTG #38661
    Sergio Bertana
    Amministratore del forum

    I dispositivi STE come tutte le soluzioni per monitoraggio IP della HWgroup supportano il protocollo SNMP, sono in grado sia di rispondere ad interrogazione SNMP che di inviare TRAP su condizioni di allarme.

    Presso il fornitore è disponibile un prodotto On-Line per i test (Segui il link dal ns sito), dal menù system della pagina web del prodotto è possibile scaricare la SNMP MIB table con tutti gli OID delle grandezze rilevabili.

    Nel Vs caso disponete gìà di un software di monitoraggio, ma ricordo che HWgroup rende disponibile il software di monitoraggio PDMS (Gratuito fino a 3 sensori).

    in risposta a: Invio di stringhe con valore variabile su socket TCP #38660
    Sergio Bertana
    Amministratore del forum

    Ecco lo screenshot del tuo programma (Tanti piccoli errori da correggere e/o migliorie da consigliarti).

    Come vedi parlo di effetto -]P[- da creare in ST, nel linguaggio LD basta mettere il simbolo in ST devi creare l’effetto transizione per poter gestire il fronte di salita e/o discesa ecco come fare. AuxPls è una variabile BOOL locale nel tuo programma.

    IF (Ingresso <> AuxPls) THEN
      AuxPls:=Ingresso; (* Auxiliary pulse *)

      IF (Ingresso) THEN
        Tutto quello scritto qui avviene sul fronte di attivazione -]P[-
      END_IF;

      IF NOT(Ingresso) THEN
        Tutto quello scritto qui avviene sul fronte di disattivazione -]N[-
      END_IF;
    END_IF;

    Nel tuo progetto hai anche scelto di eseguire il download del codice sorgente ad ogni download e questo rallenta il download ad ogni modifica di programma, leggi attentamente questo topic.

    in risposta a: Invio di stringhe con valore variabile su socket TCP #38658
    Sergio Bertana
    Amministratore del forum

    Mi parli di array in cui mappi gli ingressi digitali da programma LD e sinceramente non ho ben chiaro a cosa ti riferisci in questo topic si parla di array di I/O digitali.

    Però vista la complessità della domanda forse è meglio se invii alla nostra eMail di supporto il programma così da poterlo verificare direttamente.

    in risposta a: Controllo accessi con lettore RFID con protocollo Wiegand #38656
    Sergio Bertana
    Amministratore del forum

    Per la lettura dei badge RFID come giustamente facevi notare abbiamo sviluppato un FB per gestire i  lettori della HID con interfaccia Clock e Data (Topic). Si è utilizzato questo tipo di interfaccia e non la Wiegand in quanto la gestione del protocollo è demandata interamente al software.

    Il protocollo Wiegand ha un impulso di durata 50uS ed impulsi di durata così limitata possono essere gestiti solo da hardware. I moduli di espansione I/O implementano un logica programmabile PLD che può tranquillamente gestire il protocollo Wiegand, ogni modulo dispone di 4 ingressi optoisolati veloci a 5V, quindi è possibile per ogni modulo acquisire 2 lettori Wiegand.

    Al momento attuale non abbiamo sviluppato una FB apposita per il Wiegand, ma contattando il ns ufficio commerciale è possibile richiedere una offerta per lo sviluppo sia del package hardware da installare sui moduli di I/O che della FB software di gestione. Non è comunque possibile gestire il protocollo Wiegand con gli ingressi digitali presenti sui moduli CPU.

    in risposta a: Invio di stringhe con valore variabile su socket TCP #38655
    Sergio Bertana
    Amministratore del forum

    Non capisco esattamente cosa intendi quando dici che gli I/O non vengono sentiti dal programma ST. Gli I/O logici possono essere gestiti indifferentemente da tutti e 5 i linguaggi della IEC61131. Mi viene il dubbio che tu abbia scritto il programma ma poi non lo abbia inserito in nessuna task di esecuzione.

    Anche se è più logico un circuito di Marcia/Arresto gestirlo in linguaggio LD ecco lo screenshot di un programma di esempio in linguaggio ST. Come vedi tutti gli I/O sono gestiti da ST, l’esecuzione del programma trattandosi di sequenze logiche l’ho inserita nella task Slow (Download programma).

    Attenzione, il programma postato precedentemente che gestiva una comunicazione su stream andava necessariamente eseguito nella task Back. Le varie tasks possono contenere più programmi da eseguire e l’esecuzione all’interno della task è effettuata in base all’elenco dall’alto verso il basso (Topic). Altro topic che tratta l’argomento.

    in risposta a: Invio di stringhe con valore variabile su socket TCP #38653
    Sergio Bertana
    Amministratore del forum

    Devi considerare il modo in cui sono eseguiti i programmi PLC, il programma viene ciclicamente eseguito nella task dove è inserito. Il programma del post precedente ad esempio è eseguito nella task di Back, essendo un programma molto semplice il tempo di esecuzione è estremamente veloce, come vedi nello screenshot, l’esecuzione del programma (Variabile SysTBackExTm) dura 15uS, il programma viene eseguito (Variabile SysTBackLpTm) ogni 372uS.

    Quindi quando tu dici che condizioni l’esecuzione all’ingresso logico del modulo CPU, tieni presente se attivi l’ingresso per 1 secondo, la funzione SysVarfprintf verrà eseguita circa 2700 volte.

    Se noti nel mio esempio la variabile SysClock1000 e di tipo -]P[- cioè fronte di salita, in pratica il ramo è attivo per un solo loop di programma quando la variabile passa dallo stato inattivo ad attivo.

    in risposta a: Comunicazione dati wireless in campo fotovoltaico #38651
    Sergio Bertana
    Amministratore del forum

    Il prodotto ATC-3200 è sicuramente più veloce in aria, ma, utilizzando frequenze molto più elevate (2.4GHz) la normativa impone un range di comunicazione molto ridotto (500 mt). A differenza della frequenza 868Mhz la frequenza molto più elevata subisce enormemente il disturbo degli ostacoli e soprattutto si consiglia di posizionare l’antenna in posizione più elevata rispetto al terreno.

Stai visualizzando 15 post - dal 2,701 a 2,715 (di 4,367 totali)