Sergio Bertana
Risposte nei forum create
-
AutorePost
-
Sergio Bertana
Amministratore del forumThe answer is in the previous posts if you use the Virtual COM you can use any Ethernet to serial converter (ATC-1000 is the cheapest). For Wireless communication if you use the WiFi you can use any WiFi to serial converter, with a Virtual COM (I suggest the ATC-1000WF).
Febbraio 10, 2015 alle 3:08 pm in risposta a: Eseguire Ping di un indirizzo IP per testare comunicazione #38714Sergio Bertana
Amministratore del forumMolte volte per ripristinare il funzionamento di un sistema non presidiato, ove possibile, viene eseguito un reboot dell’intero sistema SlimLine che se tramite le sue uscite logiche alimenta i dispositivi di connessione di rete (Switches, Routers, Access point WiFi , ecc) può gestire anche lo spenimento e la riaccensione degli stessi.
Questa funzione definita Ping reboot, garantisce tramite lo spegnimento e la riaccensione di tutti i dispositivi di ripristinare il funzionamento nel caso di blocchi accidentali. Anche se il sistema SlimLine è già di per se controllato dal suo circuito di Watchdog integrato.
Come si vede dalla stampa del programma nel caso di più di 3 errori di Ping consecutivi viene incrementato un contatore di reboot NrOfRestarts (Variabile allocata in DB 100.2048 che è una zona RETAIN). Dopo 1 secondo dall’incremento della variabile viene eseguito un loop WHILE infinito che fà intervenire il circuito di Watchdog che resetta in modo hardware il sistema disattivando tutte le uscite (Topic). Il sistema poi riparte in modo autonomo (Non ci deve essere LogicLab connesso).
La pausa di 1 secondo è stata inserita per dare tempo al sistema operativo di salvare l’area RETAIN in modo da avere NrOfRestarts salvato (Download programma sorgente).
Sergio Bertana
Amministratore del forumJust a remark for people who has experience in PLC programming at a paragonable cost to the Ethernet to serial converter it’s possible to use our SlimLine ARM7 Compact Ethernet with the DataStreamExch (Manual abstract) (See topic with source program), or ModbusTCPGateway (Manual abstract) (See topic with source program) FBs it’s possible to have both the type of converters.
Sergio Bertana
Amministratore del forumThe ATC-3001 communicates in the same manner but operates a protocol translation. So the equipment connected to the ethernet communicates with the Modbus TCP protocol and the module converts it to Modbus RTU or Ascii to the serial line and vice versa. As you see in this topic unfortunately the converter doesn’t manages the node ID between modbus TCP to RTU/AScii so it’s not possible to create a daisy chain connection on the RS485 serial line.
To conclude this report if you connect to the meters by using a Virtual COM you can use any Ethernet to serial converter, your software uses the modbus RTU protocol over the Virtual COM and it’s possible to have a daisy chain on a RS485 network.
If you want to eliminate the Virtual COM (To avoid any possible compatibility problems) it’s possible connect to the Ethernet to serial converter in TCP mode (Only if your software allows this), but in this case, specially for the SCADA softwares you have to use the Modbus TCP protocol, and so it must be used a Modbus gateway module as ATC-3001 and it’s not possible to have a daisy chain on a RS485 network.
Sergio Bertana
Amministratore del forumAll the Ethernet to Serial Converters (and which we distribute also) are able to work in several different ways, usually they are configurable by a web browser. The Wireless to serial converters work in the same way, the ATC-1000WF has a web interface the ATC-2000WF no.
Server: They accept an TCP/IP connection on a dedicated TCP port (It’s possible to define which) and when a client connect to them all the characters received by this connection are sent to the serial line and vice versa.
Client: You must define to which IP server and TCP port it has to connect, ad when a character is received by the serial line it connects to the server and sends the received character to int and vice versa.
UDP: A TCP connection is made by the UDP protocol and the converter acts as a Client/Server. This is a faster communication way but you must define the IP address of the UDP server and so it’s difficult to use through Internet connection.
All of them have a Virtual COM program that install a serial COM in your PC, so you just open the communication on this port and dialogue with it exactly as a standard COM port. Pay attention: unfortunately the virtual COM software has compatibility problem and the TCP/IP communication introduces some delay that can compromise the modbus communication. The only way to know if your program work well is to test.
Sergio Bertana
Amministratore del forumIl pannello è Master CAN quindi puoi caricare i file EDS dei dispositivi slave (Puoi impostare i soli PDO).
Anche la serie eMT3000 utilizza EasyBuilder Pro, quindi non vi sono problemi nell’importare i progetti sviluppati per le altre serie di terminali. Parti dal progetto importato e poi aggiungi la parte di gestione inverter.
Sergio Bertana
Amministratore del forumHere the answers.
1. All the catalogs, program tools, program examples, are on the site, it’s possible to freely download them by registering.
2. The product is a Programable Logic Controller and can be programmed using the 5 languages of the IEC-61131 norm through CODESYS. As a suggestion, you can find similar products in the SlimLine family more cheaper, they are programmable trough the LogicLab instead of CODESYS.
3. In this forum you can find a lot of applications, mostly of them are written in Italian but all have the source code downloadable and usually the comments in the source code are in English.
4. The product manages up to 16 extension modules the modules can have up to 48 logic I/Os each.
5. The module has Ethernet connection and supports TCP/IP protocol. It has also embedded servers for Telnet, FTP and HTPP.
6. The choice of the Internet connection depend only by your needs. You can connect through ADSL, UMTS, WiFi, Satellite.
7. What do you mean exactly for cloud support, you can connect the system to web services located on the cloud. Some examples in PHP are available on the forum for the LogicLab products but the two families are very similar.
8. Yes sure there are some examples how to write CSV files on the forum (See topic, topic).
9. The FTP server is available.
10. You can write your own program that access directly to SQL server, or as some customer make, the program dialogues with a web application (Written in ASP or PHP) that interfaces to SQL server.
11. Yes sure CODESYS uses the WebVisu environment (See topic).
12. The operating system is multitasking.
Sergio Bertana
Amministratore del forumLogicLab ad ogni compilazione ritorna le informazioni relative all’impiego di memoria del programma compilato, ecco un esempio:
Code size: 72E0h ( 28 KByte)
Free code space: 10D10h ( 67 KByte)Indica che il programma compilato stà utilizzando circa 28 KBytes e rimangono 67 Kbytes di memoria codice libera. La memoria libera varia in funzione del dsispositivo che utilizzi. I modelli Compact dispongono di metà memoria CODE rispetto ai modelli normali. Naturalmente più righe di programma scrivi più utilizzi memoria.
Data space: 2000h ( 8 KByte)
Free data space: 197Ah ( 6 KByte)Indica che il programma compilato stà utilizzando circa 2 KBytes e rimangono 6 Kbytes di memoria DATA libera, più variabili allochi più utilizzi memoria DATA. La memoria DATA ha la stessa dimensione su tutti i dispositivi sia normali che Compact. Ricordo che oltre a questi 8 KBytes di memoria DATA tutti i dispositivi hanno 4 KBytes aggiuntivi di memoria DATA accessibile come DB 100, di questi 2 KBytes sono ritentivi.
Retain data space: 3E8h ( 0 KByte)
Free retain data space: 3E8h ( 0 KByte)Indica che il programma non stà utilizzando la memoria RETAIN e quindi rimangono 1000 bytes di memoria libera. La memoria RETAIN ha la stessa dimensione su tutti i dispositivi sia normali che Compact. Questa area di memoria viene utilizzata ogni volta che definisci attributo RETAIN su una variabile.
NOTA: Per quanto riguarda le FB ogni istanza della stessa FB utilizza nuova memoria in area DATA ma è utilizzata una sola volta la memoria in area CODE per contenere il codice della FB.
Sergio Bertana
Amministratore del forumNella Guida connessioni PLC è riportato il protocollo Lenze e un po di tempo fà un cliente mi ha accennato alla connessione con un inverter Lenze ma sinceramente non riesco più a ricordare chi fosse il cliente per eventualmente chiedere informazioni.
Se utilizzi la connessione in RS485 ed hai sul PC una porta RS485 (Eventualmente puoi utilizzare un convertitore USB-Seriale) puoi provare con il programma EasyBuilder Pro a fare un semplice progetto e simularlo direttamente sul PC (Senza terminale) testando se funziona il protocollo di comunicazione.
Per la comunicazione in CAN invece devi utilizzare la serie eMT3000 ed in questo caso il test è possibile solo disponendo del terminale.
Gennaio 31, 2015 alle 10:26 am in risposta a: Visualizzazione ore di funzionamento ed allarmi su HMI #38705Sergio Bertana
Amministratore del forumLa tua soluzione dimostra come vi siano diverse soluzioni allo stesso problema, tu per fare il contaore hai scomodato Timer e Counter. Sinceramente ti consiglio di utilizzare la soluzione vista nel post precedente, utilizzando una semplice operazione di somma con la base tempi di 1 secondo già fornita dal sistema operativo (Ecco lo screenshot).
Se la struttura HMIVars è allocata come credo nella DB100 per essere accessibile da Modbus ma ad indirizzi inferiori al 2048, si trova in un’area che non è ritentiva, quindi alla accensione del sistema riparte da “0”. In merito al valore massimo conteggiabile devi fare riferimento al range indicato per ogni tipo di variabile (Vedi tabella).
Come vedi se la variabile HMIVars.Tempo è di tipo UINT il suo valore massimo è 65535 quindi poco più di 18 ore poi si azzera e riparte a contare da “0”. Se è di tipo UDINT (Ti consiglio questo) il suo valore massimo è 4294967295 poco più di 136 anni. Naturalmente per leggere una variabile UDINT (32 bits) da Modbus dovrai leggere due registri a 16 bits consecutivi.
Sergio Bertana
Amministratore del forumQuello che fai è corretto, è un normale cast di una variabile, unica accortezza è controllare che il valore massimo che assume la variabile REAL dopo i calcoli non superi il valore che può essere espresso in una variabile UINT (65535).
Nel tuo caso il massimo può essere 10.0*16.0*100.0=16000.
Ma se fai tutte le operazioni così come mi scrivi il compilatore non deve dare nessuna warning e la conversione deve funzionare come vedi dal mio screenshot. Non è che la variabile WORD è allocata in memoria ad un indirizzo che non è divisibile per 2.
Gennaio 29, 2015 alle 5:33 pm in risposta a: Visualizzazione ore di funzionamento ed allarmi su HMI #38701Sergio Bertana
Amministratore del forumI modi in cui procedere sono molteplici, e sono dettati solo dalla fantasia del programmatore, credo che nel forum vi siano già spunti su cui basarsi ma volendo darti una traccia precisa, molto schematicamente ho realizzato un relè Passo/Passo di comando di una uscita logica.
Se l’uscita è attiva viene eseguito un conteggio del tempo (In secondi) e il valore del tempo è visualizzato su di un pannello operatore. Come vedi dal programma (Screenshot) il comando Passo/Passo (Topic) opera sulla variabile Cmd che è definita RETAIN in questo modo il suo stato è mantenuto allo spegnimento.
Per il conteggio del tempo viene utilizzata la variabile HourCount di tipo REAL allocata nella DB100.2048 che è un’area RETAIN ed è accessibile da terminale HMI via Modbus (Comando 3x address 41024). Inutile dire che per il reset del contaore basterà su comando eseguire un MOVE del valore 0 nella variabile HourCount.
Nel programma del terminale per la visualizzazione del contaore utilizzo un oggetto di introduzione numerica a cui associo una funzione di scalatura che divide per 3600 (Topic). Naturalmente la visualizazione sarà espressa in ore con due o più cifre decimali che rappresentano i decimi di ora e non i minuti ed i secondi. Ti allego il progetto del programma SlimLine e terminale HMI per il download.
La gestione degli allarmi è ampiamente trattata in questo topic.
Gennaio 29, 2015 alle 11:11 am in risposta a: Ripristino parametri modem dopo mancanza alimentazione #38699Sergio Bertana
Amministratore del forumIl comando AT&W salva i parametri di configurazione nella memoria non volatile e questi parametri sono ricaricati alla riaccensione esattamente come fà il comando ATZ. Se guardi il manuale comandi AT del modem leggi. AT&W stores the currently set parameters to a user defined profile in the non-volatile memory. The user defined profile will be restored automatically after power-up. Quindi se non ti funziona il dubbio che vi siano altri parametri che non sono salvati dal comando AT&W, esempio quelli relativi ai comandi AT+IPR o AT+ICF (Topic) o semplicemente non hai il baudrate fissato e quindi il modem vuole ricevere almeno un AT per autosettarsi il modo di comunicazione. In questo caso i comandi AT+IPR o AT+ICF possono essere di aiuto. Ultima ipotesi e che la microinterruzione di tensione non permetta al modem di autoresettarsi completamente e si porti in uno stato di malfunzionamento. Se tu hai fatto il programma sul PLC puoi con una uscita logica spegnerlo ed accenderlo proprio come gestiamo noi con il blocco funzione di gestione modem sui ns sistemi SlimLine.
Sergio Bertana
Amministratore del forumNon sò il valore ohmico del tuo tradsuttore potenziometrico, se inferiore ai 5KΩ lo puoi inserire in serie nella catena di lettura delle sonde di temperatura Pt100/Pt1000 (Vedi schema).
Puoi inserire anche più di un potenziometro in serie l’importante è che la somma totale delle resistenze non superi i 16KΩ. Nel calcolo del valore di resistenza totale tieni conto del caso peggiore del sensore resistivo (Per una Pt1000 a 120 gradi sono 1456.8Ω).
Se il valore ohmico del potenziometro supera i 5KΩ non puoi acquisirlo in resistenza ma devi alimentare il potenziometro acquisendo il valore di tensione sul cursore, il valore acquisito và linearizzato con la funzione VaPotentiometer come descritto prima in questo topic.
Sergio Bertana
Amministratore del forumIl convertitore ATC-1000WF permette di collegare i sistemi di pesatura in WiFi e quindi di poter scambiare i dati con il protocollo Modbus ma il suo web server visualizza solo le pagine di configurazione, non permette di visualizzare i dati. Per visualizzare i dati devi appoggiarti ad un dispositivo in grado di gestire il protocollo Modbus.
Ad esempio puoi utilizzare un programma SCADA, ne esistono anche per smartphone (Topic), ma attenzione visto che la comunicazione sarà poi in TCP/IP lo SCADA utilizzerà il protocollo Modbus TCP e non il protocollo Modbus RTU. Alcuni programmi SCADA permettono anche di utilizzare il protocollo Modbus RTU su comunicazioni TCP/IP ma lo devi verificare.
-
AutorePost