Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Novembre 29, 2010 alle 9:15 am in risposta a: Connessione con I/O distribuiti TRP via modbus RTU #36594
Sergio Bertana
Amministratore del forumIl modulo TRPC26 utilizza il comando modbus 01 Read Coil Status per la lettura dello stato dei 16 ingressi digitali, mentre il modulo TRPC24 utilizza il comando modbus 15 Force Multiple Coils per la scrittura delle 16 uscite digitali. Utilizzando il blocco funzione ModbusRTUMaster (Estratto manuale), è possibile eseguire la lettura degli ingressi dal modulo TRPC26 e la scrittura delle uscite sul modulo TRPC24.
Ho realizzato un programma su SLine che effettua ciclicamente la lettura dei 16 ingressi del modulo di ingressi e li appoggia in 16 variabili BOOL (TRPC26Input[0..15]), copia 16 variabili BOOL (TRPC24Output[0..15]) sulle 16 uscite logiche del modulo di uscita. I due moduli sono stati connessi in rete RS485, occorre definire al modulo di ingressi logici indirizzo 0x01 (Default), al modulo uscite logiche indirizzo 0x02, vedi post.
Nel programma troverai un programma ladder Logic, che appoggia l’ingresso DI0 del moduli di ingressi sull’uscita DO0 del modulo di uscita. Potrai aggiungere tutte le logiche che ti servono aggiungendo linee a questo file e/o aggiungendo altri programmi al progetto.
Il programma TRPComm esegue la letura e scrittura ciclica dei moduli di I/O, i programmi InputRead e OuputWrite, eseguono lo swap dei bits letti e da scrivere verso i moduli TRP per poter avere le variabili BOOL ordinate in funzione degli I/O sul modulo. Stampa programma, download programma.
Novembre 29, 2010 alle 8:33 am in risposta a: Impostazione indirizzo nodo modbus moduli I/O distribuito #36593Sergio Bertana
Amministratore del forumE’ possibile connettersi al modulo in RS485 definendo parametri di comunicazione 9600, n, 8, 1, i moduli TRP sono settati di default con indirizzo 0x01. Come visibile dal manuale del prodotto è possibile con un comando modbus eseguire il set dell’indirizzo del modulo (Vedere capitolo Set up the module’s address). Il comando è ID 46 04 IP 00 00 00 (CRC), dove ID è l’indirizzo attuale del modulo, di default è 0x01, IP è l’indirizzo che si vuole definire, mentre il CRC deve essere calcolato utilizzando l’algoritmo definito dalle specifiche modbus.
Attenzione! tutti i caratteri della stringa (Trattandosi di modbus RTU) sono da considerarsi binari. Per inviare caratteri binari consiglio di utilizzare il programma Toolly. Per impostare ad esempio l’indirizzo 0x02 occorre inviare la stringa modbus 01 46 04 02 00 00 00 F5 1E (Da programma Terminal $01$46$04$02$00$00$00$F5$1E). Per impostare ad esempio l’indirizzo 0x03 occorre inviare la stringa modbus 01 46 04 03 00 00 00 F4 E2 (Da programma Terminal $01$46$04$03$00$00$00$F4$E2). Il nuovo indirizzo verrà memorizzato permanentemente nel modulo il quale risponderà a comandi modbus che iniziano con l’indirizzo definito, vedere anche questo post.Novembre 27, 2010 alle 5:20 pm in risposta a: Convertitore USB/Seriale per registratore di cassa #36592Sergio Bertana
Amministratore del forumI modelli che hai indicato possono funzionare entrambi senza problemi in unione al registratore di cassa. In merito al problema che tu lamenti con l’uso di altri convertitori, posso riportare che esistono in commercio diversi tipi di convertitori USB/seriali, le differenze tra i vari modelli a parte la costruzione piu o meno professionale è da ricercare nel chipset utilizzato
.I chipset piu utilizzati sono il Prolific, il Moschip (Puoi trovare informazioni in questo post), e FTDI (Puoi trovare informazioni in questo
post). Nella nostra gamma di prodotti abbiamo convertitori USB/Seriali basati sul chipset di tutti e tre i produttori. A mio parere tutti questi produttori hanno a corredo drivers affidabili, FTDI si distingue sugli altri per una maggiore disponibilità di informazioni ed è il più attivo sul rilascio dei drivers per le nuove versioni di sistema operativo.L’ATC-810 è un convertitore economico, l’ATC-850 ha come suo vantaggio l’isolamento galvanico tra la porta USB e la porta seriale, e mette a disposizione interfaccie RS232, RS422, RS485. Entrambi i modelli utilizzano il chipset FTDI.
In generale ti posso dire che su ATC-810 abbiamo avuto qualche problema di compatibilità nella connessione con dei modem, problemi superati con l’ATC-850. Credo che il problema sia di ricercare nei livelli dei segnali RS232 che probabilmente nell’ATC-810 sono molto vicini ai limiti della specifica.
Novembre 26, 2010 alle 12:53 pm in risposta a: Conversione formato con convertitori seriale/fibra #36591Sergio Bertana
Amministratore del forumTutti i convertitori seriale/fibra da noi trattati permettono di gestire indifferentemente comunicazioni seriali nei diversi formati RS232, RS422, RS485. E’ quindi possibile avere da un lato un convetitore che gestisce una RS232 e dall’altro lato un convertitore che gestisce una RS422 o RS485. I convertitori gestiscono la modalità di commutazione linea RS485 automatica.
Naturalmente i convertitori utilizzati dalled ue estremità della fibra devono essere dello stesso modello. Si sceglierà il convertitore per fibre multimodali se la distanza di connessione non è molto elevata (Fino a 2 Km) mentre occorrerà utilizzare il convertitore per fibre monomodali se la distanza di connessione è maggiore (Fino a 20 Km).
Novembre 26, 2010 alle 9:51 am in risposta a: Funzionamento convertitore seriale da RS232 a RS422/485 #36590Sergio Bertana
Amministratore del forumRimando alla lettura di questo post per ulteriori informazioni, ed aggiungo alcune considerazioni sul convertitore ATC-105. Questo convertitore è un modello economico e come tale non utilizza un convertitore DC/DC per l’alimentazione della parte RS232.
L’alimentazione della parte RS232 è ricavata dagli stessi segnali presenti sul connettore, in pratica i segnali TXD, RTS, DTR, cooperano per l’alimentazione del dispositivo. Il dispositivo funziona anche solo connettendo i tre fili Rx, Tx e GND della seriale. In merito alle connessioni sul connettore DB9 della RS232, sul manuale del prodotto sono riportati solo i 3 fili indispensabili, di seguito riporto la reale connessione:
Pin 1:
Pin 2: TxD
Pin 3: RxD
Pin 4: DTR (Connesso con pin 6)
Pin 5: GND
pin 6: DSR (Connesso con pin 4)
Pin 7: RTS (Connesso con pin 8)
Pin 8: CTS (Connesso con pin 7)
Pin 9:Novembre 26, 2010 alle 9:24 am in risposta a: Differenze tra i diversi convertitori da RS232 a RS485 #36589Sergio Bertana
Amministratore del forumIn merito al livello dei segnali RS232 riporto le caratteristiche di tensione richieste dallo standard EIA RS-232 sui segnali, che sono:
Mark: Compresi tra -3 e -15 V;
Space: Compresi tra +3 e +15 V;
Incertezza: Compresi tra -3 e +3 V;Come visto precedentemente i convertitori che distribuiamo hanno livelli di tensione sulla RS232 diversi. Tutti i livelli sono in accordo alle specifiche EIA, ma nel modello ATC-105 vista la particolarità del suo circuito di alimentazione (Derivato dai segnali Rx/Tx della RS232) sono molto vicini ai limiti inferiori della specifica.
Per chiarezza e per permettere di verificare la compatibilità dei livelli di tensione dei segnali RS232 in uscita dai diversi convertitori, riporto una rilevazione oscillografica degli stessi.
Novembre 23, 2010 alle 9:56 am in risposta a: Problemi di configurazione convertitore WiFi/Seriale #36588Sergio Bertana
Amministratore del forumRicordo che se nella definizione di SSID e passphrase per sicurezza WPA e/o WPA2 ci sono degli spazi, essi vanno sostituiti con il carattere $.
Con il comando set wlan ssid <string>, definire SSID della rete wireless.
Con il comando set wlan phrase <string>, definire la passphrase per sicurezza WPA e/o WPA2.Nota: se SSID o passphrase contengono spazi, occorre sostituirli con $, per esempio the “yellow brick road” diventa”yellow$brick$road”.
Novembre 22, 2010 alle 4:59 pm in risposta a: Virtual COM su convertitore WiFi seriale ATC-2000WF #36587Sergio Bertana
Amministratore del forumIl programma HW VirtualSerialPort prevede di defaul l’invio di una stringa di mantenimento connessione, si tratta di una stringa binaria che viene inviata ad intervalli di tempo regolare, i dati inviati sono riportati in uscita dalla seriale del convertitore.
Per evitare l’invio di questi dati occorre togliere il tick dalla opzione NVT Enable nel tab Settings del programma.
Novembre 22, 2010 alle 4:04 pm in risposta a: Virtual COM su convertitore WiFi seriale ATC-2000WF #36586Sergio Bertana
Amministratore del forumPer l’installazione di una Virtual COM per il convertitore WiFi seriale ATC-2000WF è possibile utilizzare il programma HW VirtualSerialPort presente nel CD allegato al prodotto, il programma è anche disponibile per il download direttamente dal sito dello sviluppatore HWGroup. Seguendo le informazioni reperibili dal sito è possibile configurare il programma in base alle proprie necessità. Le informazioni essenziali da definire nel tab Virtual Serial Port, sono:IP Address: Definire l’indirizzo IP del dispositivo ATC-2000WF.Port: Definire la porta configurata sul dispositivo ATC-2000WF come server (Di default 2000).COM Name: Nome della porta sul PC.A questo punto agendo sul tasto Create COM, verrà creata la porta COM definita nel PC, i dati inviati sulla porta saranno inviati in uscita sulla seriale del convertitore ATC-2000WF e viceversa.Attenzione! L’UART in uscita dal modulo supporta solo 8 bit di dati e nessuna parità, per l’impostazione dei parametri seriali occorre utilizzare i comandi definiti nel manuale del prodotto:set uart baud <rate>, imposta baud rate.set uart flow <0,1>, imposta il controllo di flusso.
Novembre 22, 2010 alle 3:12 pm in risposta a: Connessione convertitore Wi-Fi seriale ad access point #36585Sergio Bertana
Amministratore del forumUtilizzando un programma di emulazione terminale impostato a 9600, n, 8, inviare i caratteri $$$ per forzare la modalità comandi sul modulo, il modulo risponde con CMD.
Con il comando set wlan ssid <string>, definire SSID della rete wireless.
Con il comando set wlan phrase <string>, definire la passphrase per sicurezza WPA e/o WPA2.Nota: se SSID o passphrase contengono spazi, occorre sostituirli con $, per esempio the “yellow brick road” diventa”yellow$brick$road”.
Con il comando set wlan join 1, si esegue il join con la rete definita in SSID. Lasciare channel settato a 0 per permettere al modulo di eseguire lo scan di tutti i canali.
Il comando save, esegue il salvataggio della configurazione nel file di default.
Alla accensione il modulo sulla porta seriale invierà un report delle operazioni del tipo:
WiFly Ver 2.18, 02-02-2010
MAC Addr=00:06:66:00:39:94
Auto-Assoc Elsist WiFi chan=1 mode=OPEN SCAN OK
Joining Elsist WiFi now..
Associated!
DHCP: Start
DHCP in 16ms, lease=691200s
IF=UP
DHCP=ON
IP=192.168.0.37:2000
NM=255.255.255.0
GW=192.168.0.1
Listen on 2000Questo stà ad indicare che si è connesso all’access point, il DHCP gli ha asegnato l’indirizzo 192.168.0.37, e sulla porta 2000 verrà connessa la porta seriale del modulo.
Sergio Bertana
Amministratore del forumIn merito alla seconda domanda, cioè la creazione di una rete di comunicazione di massa, credo la soluzione migliore sia di andare su dispositivi WiFi della linea Ubiquiti che sono nati appositamente per questo tipo di applicazione, e tra l’altro hanno anche costi inferiori.
Con questi dispositivi si crea una vera e propria rete TCP/IP con possibilità di inserire telecamere ed altri dispositivi IP.
Sergio Bertana
Amministratore del forumTutte le frequenza che hai citato sia nella gamma 169Mhz, 433Mhz e 868Mhz hanno restrizioni all’uso, in pratica come riporta la normativa ERC/REC 70-03 si possono utilizzare per trasmissioni dati in telemetria utilizzando la banda per una percentuale del tempo che può variare da 1% al 10%, (Esempio 1 Sec di trasmissione e 9 Sec pausa).
Per quanto riguarda la banda 169Mhz ti rimando a questo post, in cui sono riportate le normative relative.
Per la banda 868Mhz (Allego estratto direttiva ERC/REC 70-03), esiste un limite di 25 mW per le frequenze inferiori alla gamma g3, e comunque l’impegno di banda non deve superare 1%. Nella gamma g3 (Frequenze da 869.400 a 869.650Mhz) la potenza è ammessa fino a 500mW e l’impegno della banda arriva al 10%.
In pratica puoi usare il nostro modem DL868 settato sulla frequenza centrale della gamma g3 (869.525 Mhz) con antenna Yagi per arrivare ad una potenza di 500mW e.r.p.
Novembre 20, 2010 alle 10:01 am in risposta a: Verifica conformità del software a specifica Welmec #36537Sergio Bertana
Amministratore del forumIl numero univoco si trova nelle variabili di sistema System variables di sola lettura, si tratta di una variabile UDINT a 32 bits e si chiama SysApplID.
Per poterla leggere da modbus occorre trasferirla in una variabile allocata nella DB100 in modo da essere accessibile dai comandi modbus di lettura registri.
Attenzione! Le variabili DW in area DB100 devono essere sempre allocate in indirizzi divisibili per 4, le variabili W in indirizzi divisibili per 2.
Allego per il download un semplice programma che ne esegue l’appoggio in MD100.16, l’appoggio è effettuato nella task di boot. Da modbus devi leggere 2 registri a partire da indirizzo 40008.
Sergio Bertana
Amministratore del forumIn riferimento a LogicLab anche se è un prodotto italiano, essendo rivolto ad un pubblico internazionale attualmente ha come manuale di uso solo la versione in inglese. Stiamo preparando una versione in italiano ma non sò ancora dire quando sarà pronta.
Per quanto riguarda le informazioni sulla programmazione dello SlimLine, i blocchi funzione, esempi di programmi, ecc esiste un manuale in italiano redatto da noi che ritengo esaustivo, puoi fare il download dalla pagina dello SlimLine dell’ultima versione del Manuale programmazione IEC61131-3 su sistema SlimLine.
Per quanto riguarda i merker, counter, timer ecc. il sistema oltre ai 4Kb di memoria dell’area MX100, ha una memoria dati di 8Kb per le variabili allocate in modo dinamico, ed ulteriori 1Kb per le variabili allocate in modo dinamico ritentive. Quindi in totale hai ha disposizione 13Kb in cui puoi allocare merker, timer, counter ecc. Ogni merker utilizza 1 byte, i timer e counter dipende dal tipo che usi (eTON, eTOF, eTP, CTU, CTD, CTUD, ecc), possono utilizzare da 8 a 16 bytes.
Tutte le schede comprendono i morsetti a vite estraibili per la connessione all’impianto.
Il sistema và alimentato con una tensione continua compresa tra 10 e 30 Vdc della corrente adeguata, nel tuo caso almeno 2.5A. Se disponi già di questa tensione non ti serve l’alimentatore.
Novembre 16, 2010 alle 2:32 pm in risposta a: Connessione con inverter Toshiba TOSVERT VF-nC3 Series #36579Sergio Bertana
Amministratore del forumGli inverter Toshiba supportano oltre al protocolloTOSHIBA Inverter Protocol, anche una parte del protocollo Modbus Rtu, come visibile dal RS485 Communication Function Instruction Manual.
Quindi è possibile collegare all’inverter tutti i terminali touch screen Weintek, sia la serie i che la serie MT8000. Per semplificarti la realizazione del programma allego un progetto EasyBuilder pronto allo scopo. Il programma visualizza e permette di impostare alcune variabili dell’inverter.
Per l’indirizzamento delle variabili nell’inverter fai riferimento alle pagine 59 e 60 del manuale Toshiba. Ricordati che gli indirizzi delle variabili nel programma EasyBuilder è in decimale, mentre nel manuale inverter è riportato in esadecimale. Quindi per esempio la corrente in uscita si trova nel registro FD03 (64771 nel progetto EasyBuilder), la tensione in ingresso si trova nel registro FD04 (64772 nel progetto EasyBuilder) e così via. -
AutorePost