Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 16 a 30 (di 4,355 totali)
  • Autore
    Post
  • in risposta a: Invio dati via mail #84074
    Sergio Bertana
    Amministratore del forum

    In effetti con un pò di impegno si riesce ad usare come server di posta anche GMail.

    Occorre gestire la password per app secondarie, ecco una piccola guida.

    in risposta a: Inserimento dati tramite FB ModbusMaster #84070
    Sergio Bertana
    Amministratore del forum

    Aggiungo una doverosa precisazione…

    Il protocollo Modbus prevede registri a 16 bits, e non specifica l’endianness dei dati se espressi su registri di dimensioni maggiori come nel tuo caso un registro DINT a 32 bits.

    I dati nei sistemi basati su architettura ARM come i ns SlimLine hanno una architettura Little-Endian, la memorizzazione inizia dal byte meno significativo per finire col più significativo.

    Ma può essere che il dispositivo dove viene effettuata la scrittura abbia una architettura Big-Endian quindi il dato scritto non verrebbe interpretato correttamente, in questo caso è possibile convertire l’endianness del dato da inviare in Modbus con la funzione SwapData.

    in risposta a: Utilizzo inverter su tornio #84060
    Sergio Bertana
    Amministratore del forum

    Hai diverse possibilità di arresto motore in emergenza.

    • Arresto inerziale: Utilizzando il circuito STO (Safe Torque Off), oppure programmando il parametro P01.08 Stop selection al valore 1, si ottiene un arresto inerziale.
    • Arresto in frenatura: Si può mantenere l’arresto decelerato con tempo di rampa impostato nel parametro P00.12 Deceleration time 1, e poi si imposta una soglia di frenatura DC parametro P01.09 Starting frequency of DC breaking while stop con una corrente di frenatura DC parametro P01.11 Stop DC breaking current ed un tempo di frenatura parametro P01.12 Stop DC breaking time.

    L’arresto di emergenza dipende dalle normative, un arresto con il circuito STO scollega il motore dall’inverter quindi equivale alla apertura del teleruttore di comando di un motore asincrono AC. È quindi assimilabile a un arresto di emergenza secondo normative di sicurezza (assenza di energia al motore).

    Un arresto controllato in corrente provoca un arresto istantaneo del motore ma il motore rimane controllato dall’inverter.

    in risposta a: Acquisizione di più dispositivi Wiegand #84046
    Sergio Bertana
    Amministratore del forum

    Il protocollo Wiegand non ha uno standard rigido, ma la maggior parte dei dispositivi sul mercato segue delle specifiche de facto abbastanza consolidate.

    • Larghezza impulso (Pulse Width): Da 20 µs a 100 µs tipico più comune 50 µs. (Significa che quando viene trasmesso un bit, la linea D0 o D1 viene portata bassa per quel tempo).
    • Intervallo tra impulsi (Pulse Interval): Da 200 µs a 20 ms, tipico  1~2 ms tra un bit e il successivo.
    • Sequenza di bit: I bit sono inviati in sequenza su D0 e D1, con timing definito sopra.
    • Frame completo (es. Wiegand-26): 1 bit di parità iniziale, 24 bit di dati (generalmente 8 bit Facility Code+16 bit ID), 1 bit di parità finale, totale 26 bit inviati in  26~30 ms.

    Come visto esiste una grande differenza tra i vari dispositivi, ad esempio il lettore RFID R3 ha una larghezza di impulso di 500us ed intervallo di 2ms in tal caso è possibile acquisire su di un modulo CPU direttamente gli ingressi in polling in task Fast (Può essere eseguito al minimo ogni 100uS vedi SysSetTaskLpTime). Non è possibile acquisire gli ingressi in polling così velocemente dai moduli di estensione perchè l’acquisizione necessita di circa 400uS.

    Per poter acquisire ingressi Wiegand più veloci vedi la soluzione proposta nell’esempio ST_WiegandDcd di questo articolo. Dove i 2 ingressi sono connessi a 2 contatori, quindi occorre acquisire il conteggio ogni tempo di intervallo che anche nel caso minimo di 1 mS è ampiamente gestibile dalla task Fast. Ma anche in questo caso non è possibile acquisire i counters in polling così velocemente dai moduli di estensione.

    Venendo alla tua necessità l’unica soluzione applicabile è utilizzare un modulo CPU compact, con l’opzione 4 counter e connettere al modulo 2 dispositivi. Per acquisire 8 lettori ti serviranno 4 moduli che potrai connettere tra di loro in ethernet ad esempio con il FB DataTransfer. Potrai utilizzare gli I/O liberi dei moduli come I/O digitali per la tua applicazione.

    in risposta a: Supporto APN privati su router #84037
    Sergio Bertana
    Amministratore del forum

    I moduli 4G (gateway/router cellulari) di Milesight supportano APN personalizzati, incluse impostazioni di APN private.

    Dalla pagina web di configurazione cellulare si può configurare APN (Access Point Name) secondo il requisito dell’operatore utilizzato. Ci sono anche campi per username e password, se richiesti dall’operatore, ed il tipo di autenticazione (None/PAP/CHAP) e PIN della SIM.

    Quindi, a meno di resrizioni particolare dell’operatore posso ragionevolmente dire che i dispositivi Milesight 4G possono usare APN privati, non sembra che ci siano restrizioni tecniche che impediscano questo.

    in risposta a: How to initialize a structured type variable #84031
    Sergio Bertana
    Amministratore del forum

    Errors are generated only if you declare the MS data structure as CONSTANT.

    VAR CONSTANT
        MS : MYSTRUCT := (V1:=FALSE, V2:=[10,20,30,40]);
    END_VAR

    Without the CONSTANT attribute, the program works correctly.
    I have informed Axel about this problem and I am still waiting for their response.

    in risposta a: Inserimento dati tramite FB ModbusMaster #84021
    Sergio Bertana
    Amministratore del forum

    Il FB ModbusMaster invia il dato al tuo dispositivo utilizzando i comandi

    • 16#06 Preset single register (Se scrivi un solo registro)
    • 16#10 Preset multiple registers (Se scrivi più registri)

    In entrambi i casi se i valori sono espressi su una variabile a 16 bit il dato presente nella variabile è inviato al dispositivo slave. Da quello che dici sembra sia il tuo dispositivo slave a non accettare valori negativi.

    Come dice giustamente Concetto occore verificare la documentazione del tuo dispositivo.

    in risposta a: L’EGX81-W può essere utilizzato al posto del Cinterion BGS2T #84010
    Sergio Bertana
    Amministratore del forum

    L’EGX81-W di Telit-Cinterion è indicato come replacement (“pin-to-pin successor”) del Cinterion BGS2T in generale:

    • Housing: Entrambi hanno formato industriale robusto, con dimensioni compatte e possibilità di montaggio DIN o a pannello.
    • Connettori: Pinout e connettori RS232/RS485 equivalenti. EGX81-W è pensato come replacement diretto.
    • Antenna: Entrambi con connettore SMA femmina standard.
    • Alimentazione: BGS2T: Alimentazione tipica 5–15 V DC. EGX81-W: Range esteso 5–30 V DC.
    • Interfaccia: Interfaccia seriale su entrambi disponibile in varianti RS232 o RS485.
    • Rete: BGS2T: GSM/GPRS quad‑band (850/900/1800/1900 MHz). EGX81-W: LTE Cat M1 (bande globali, es. B1, B3, B5, B8, B20, ecc.) GSM/GPRS quad‑band per fallback.
    • Temperature Operative: BGS2T: -30 °C a +75 °C. EGX81-W: -40 °C a +85 °C.

    Da quanto esposto può essere utilizzato come replacement ma da questo topic si evicono alcune differenze:

    • Baudrate: BGS2T: Auto baudrate. EGX81-W: Di default comunicazione è settata a 115200, n, 8, 1.
    • Segnale CTS: EGX81-W: Non trasmette se il segnale CTS è basso.
    • Comandi AT: EGX81-W non gestisce i comandi voce (Circuit Switched) ATD<number>, ATA, ATH.
    in risposta a: SDM630 Eastron lampeggio LED rosso su frontale #84004
    Sergio Bertana
    Amministratore del forum

    L’SDM630-Modbus ha un LED rosso che lampeggia proporzionalmente all’energia attiva consumata. La costante tipica è 1000 impulsi/kWh (1 impulso=1 Wh). Quindi il lampeggio del LED indica quanta energia si stà consumando, più veloce è il lampeggio più energia si consuma.

    Oltre al LED, il contatore ha 2 uscite a transistor optoisolate configurabili (Vedi topic), si può scegliere se ogni uscita rappresenta:

    • Energia attiva importata/esportata
    • Energia reattiva importata/esportata

    In conclusione:

    • Il LED frontale è utile per test visivo veloce.
    • Le uscite impulsive possono essere usate per collegare il contatore a datalogger, PLC, sistemi di monitoraggio.
    in risposta a: Invio dati via mail #83994
    Sergio Bertana
    Amministratore del forum

    Dipende dal server SMTP che usi. Alcuni hanno necessità di aprire porte o creare password per dispositivi esterni.

    Con il PC il test può andare bene perché windows usa credenziali e accessi anche del PC in uso.

    Non so che  server SMTP utilizzi, ma sicuramente GMail è il più ostico da fare accettare.

    in risposta a: Upload software da touch screen MT200D #83985
    Sergio Bertana
    Amministratore del forum

    Sui pannelli Weintek l’upload del programma può avere una protezione con password.

    • Protezione dall’upload, in tal caso non è possibile eseguire l’upload del programma.
    • Protezione dalla decompilazione, in tal caso è possibile eseguire l’upload ed il successivo download su un pannello identico.
    • Nessuna protezione, in tal caso è possibile eseguire l’upload e poi l’eventuale modifica in EasyBuilder ed il download su di un nuovo pannello anche diverso.

    Purtroppo il pannello a cui ti riferisci è un modello vecchio di oltre 20 anni e da quel modello di pannello l’upload non è possibile.

    Nel caso tu avessi i files del progetto originale in tal caso è possibile con alcuni passaggi convertire il progetto per la nuova serie di pannelli.

    in risposta a: How to initialize a structured type variable #83971
    Sergio Bertana
    Amministratore del forum

    Yes, it is possible. The error you mentioned is probably this:

    MyProgram.MS – warning G0290: MS => Constant without initial value

    It has no reference number, but the description indicates that the constant doesn’t have any initial value. To declare a structured data type, you must also assign it a value.

    • You can initialize values in the data structure definition as follows:
      MYSTRUCT: STRUCT
          V1 : BOOL := TRUE;
          V2 : UINT := 20;
      END_STRUCT;
    • Or you can initialize the value directly when you instantiate the data structure variable in the program, like this:
      VAR CONSTANT
          MS : MYSTRUCT := (V1:=FALSE, V2:=30);
      END_VAR
    in risposta a: Cambio di velocità seriale durante esecuzione Modbus #83964
    Sergio Bertana
    Amministratore del forum

    Sicuramente è possibile cambiare al volo le impostazioni delle porte seriali, per farlo basta chiudere la porta e riaprirla con le nuove impostazioni.

    Ma il dubbio è se sia ortodosso fare coesistere parametri di comunicazione diversi sulla stessa linea RS485 Modbus. Perchè i dispositivi con il baud rate diverso potrebbero male interpretare i dati è magari portarsi in condizione di errore.

    Se hai come immagino un modulo CPU con più seriali ti conviene utilizzare una porta RS232 convertendola in RS485 con un convertitore come questo per realizzare una seconda rete RS485 con cui dialogare con i nuovi dispositivi.

    Se il tuo modulo CPU ha una porta Ethernet puoi utilizzare uno o più convertitori come questo per creare altre reti RS485 tramite connessione Ethernet. In questo modo potrai configurare i parametri di comunicazione adatti su ogni rete evitando problemi di connessione.

    in risposta a: Connessione ad Internet da PLC connesso alla LAN2 del pannello HMI #83943
    Sergio Bertana
    Amministratore del forum

    Purtroppo la tua esigenza non può essere risolta nel modo che hai descritto, per motivi di sicurezza dalla LAN2 non è possibile raggiungere la LAN1 quindi sfruttarla per la connessione Internet. Vediamo come altri clienti che utilizzano i ns PLC SlimLine hanno risolto questa situazione, la soluzione è comunque adattabile a tutti i PLC.

    • Si utilizza la sola LAN1 sia per la connessione al PLC che alla rete del cliente, lasciando in DHCP sia il pannello HMI che il PLC. In questo modo si autoconfigurano entrambi sulla rete del cliente.
    • Si gestisce una connessione seriale aggiuntiva tra il pannello ed il PLC.
    • Tramite la connessione seriale il pannello chiede al PLC l’indirizzo IP che gli è stato assegnato dal server DHCP e lo imposta nelle LW-9600~3 (Per il Device 4).
    • Così la connessione in ethernet è operativa sull’indirizzo IP assegnato al PLC.
    • Consiglio di visualizzare in una pagina del pannello gli indirizzi IP del pannello (LW-9129~32) e del PLC ( LW-9600~3) in modo da poterli impostare nel Pass-Through da EasyAccess.
    in risposta a: Weincloud TAG History aggregazione di TAG string #83935
    Sergio Bertana
    Amministratore del forum

    Ho chiesto a Weintek ed in rffetti al momento non è possibile aggregare in un oggetto Tag History variabili di tipo stringa.

    Come vedi dallo screenshot le variabili stringa sono in grigio e non è possibile selezionarle.

Stai visualizzando 15 post - dal 16 a 30 (di 4,355 totali)