Funzioni ed FB supporto inverter Power One (eLLabPowerOneLib) ------------------------------------------------------------- Power One è uno dei principali produttori mondiale di sistemi di alimentazione. Power One è di diritto anche nel settore delle energie alternative con applicazioni per sistemi eolici ed inverter fotovoltaici. Oggi una strategia convincente nell’ambito delle energie alternative non può prescindere dallo sviluppo di soluzioni per il risparmio energetico. La linea di Inverter fotovoltaici Aurora, comprende sia modelli per la connessione in rete sia isolati, con o senza trasformatore e concepiti per applicazioni da esterno e da interno. Tutti i prodotti della gamma si posizionano per soluzioni di progetto e tecnologia costruttiva ai vertici del mercato e sono caratterizzati da elevatissima affidabilità, innovazione ed efficienza. **Inverter Aurora** Alta efficienza di conversione e estrema facilità di manutenzione grazie alla possibilità di inserzione e disinserzione rapida dei moduli fotovoltaici. La scalabilità del sistema grazie alla architettura "Add-on" consente di coprire un’ampia gamma di applicazioni (fino a 300kW su singolo armadio). Disponibile anche la versione senza trasformatore BT per connessione diretta ad una cella di media tensione (con trasf. MT). AuroraDSPMeasure, Aurora measure request to DSP ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +-----------------------+-----------------------+ | **Type** | **Library** | +-----------------------+-----------------------+ | FB | eLLabPowerOneLib_B100 | +-----------------------+-----------------------+ |image0| Questo blocco funzione esegue la lettura delle misure dal DSP di un inverter Aurora della Power One, connesso al dispositivo di I/O definito in **File**. Questo è un blocco funzione protetto per utilizzarlo occorre richiedere il codice di protezione, vedi `protezione funzioni e blocchi funzione <#ChpFctFBProtection>`__. E' comunque possibile utilizzarlo liberamente in modo test per 30 Min. Viene utilizzata la funzione `GetPolynomialCRC <#FctGetPolynomialCRC>`__ per il calcolo del CRC dei frame dati da e verso l'inverter. La connessione con gli inverters è in RS485 multidrop, occorre definire in **Address** l'indirizzo dell'inverter con cui si vuole dialogare. In **Measure** occorre indicare il codice della misura da leggere (Vedi codici misura). Attivando l'ingresso Start viene eseguita la lettura della misura indicata, terminata la lettura viene attivata per un loop l'uscita **Done**, in caso di errore esecuzione viene attivata per un loop l'uscita **Fault** ed incrementato il valore in **Errors**. +-----------------------------------+-----------------------------------+ | **Enable** (BOOL) | Comando di abilitazione blocco | | | funzione. | +-----------------------------------+-----------------------------------+ | **Start** (BOOL) | Comando di esecuzione lettura | | | misura. | +-----------------------------------+-----------------------------------+ | **File** (FILEP) | Flusso dati **stream** ritornato | | | dalla funzione **Sysfopen**. | +-----------------------------------+-----------------------------------+ | **Address** (USINT) | Indirizzo inverter (Range da 0 a | | | 255). | +-----------------------------------+-----------------------------------+ | **Measure** (USINT) | Tipo misura da effettuare su | | | inverter (Vedi codici misura). | +-----------------------------------+-----------------------------------+ | **Done** (BOOL) | Attivo per un loop al termine | | | della esecuzione del comando. | +-----------------------------------+-----------------------------------+ | **Fault** (BOOL) | Attivo per un loop su errore | | | esecuzione del comando. | +-----------------------------------+-----------------------------------+ | **Value** (REAL) | Valore misura acquisito da | | | inverter (E' nella relativa unità | | | di misura). | +-----------------------------------+-----------------------------------+ | **Errors** (UDINT) | Numero di errori, incrementato ad | | | ogni nuovo errore, raggiunto | | | valore massimo riparte da 0. | +-----------------------------------+-----------------------------------+ **Codici misura** Nella variabile **Measure** occorre definire il codice della misura da effettuare dall'inverter secondo la tabella. +-----------------------+-----------------------+-----------------------+ | **Codice** | **Descrizione** | **Um** | +-----------------------+-----------------------+-----------------------+ | 1 | Grid Voltage (For | V | | | three-phases systems | | | | is the mean) | | +-----------------------+-----------------------+-----------------------+ | 2 | Grid Current (For | A | | | three-phases systems | | | | is the mean) | | +-----------------------+-----------------------+-----------------------+ | 3 | Grid Power (For | W | | | three-phases systems | | | | is the mean) | | +-----------------------+-----------------------+-----------------------+ | 4 | Frequency (For | Hz | | | three-phases systems | | | | is the mean) | | +-----------------------+-----------------------+-----------------------+ | 5 | Vbulk (For Inverter | V | | | with more Bulk is the | | | | sum) | | +-----------------------+-----------------------+-----------------------+ | 6 | Ileak (Dc/Dc) | A | +-----------------------+-----------------------+-----------------------+ | 7 | Ileak (Inverter) | A | +-----------------------+-----------------------+-----------------------+ | 21 | Inverter Temperature | °C | +-----------------------+-----------------------+-----------------------+ | 22 | Booster Temperature | °C | +-----------------------+-----------------------+-----------------------+ | 23 | Input 1 Voltage | V | | | (Input Voltage for | | | | single channel | | | | module) | | +-----------------------+-----------------------+-----------------------+ | 25 | Input 1 Current | A | | | (Input Current for | | | | single channel | | | | module) | | +-----------------------+-----------------------+-----------------------+ | 26 | Input 2 Voltage | V | | | (Input Voltage for | | | | single channel | | | | module) | | +-----------------------+-----------------------+-----------------------+ | 27 | Input 2 Current | A | | | (Input Current for | | | | single channel | | | | module) | | +-----------------------+-----------------------+-----------------------+ | 28 | Grid Voltage (Dc/Dc) | V | +-----------------------+-----------------------+-----------------------+ | 29 | Grid Frequency | Hz | | | (Dc/Dc) | | +-----------------------+-----------------------+-----------------------+ +------------+---------------------------------+--------+ | **Codice** | **Descrizione** | **Um** | +------------+---------------------------------+--------+ | 30 | Isolation Resistance (Riso) | | +------------+---------------------------------+--------+ | 31 | Vbulk (Dc/Dc) | V | +------------+---------------------------------+--------+ | 32 | Average Grid Voltage (VgridAvg) | V | +------------+---------------------------------+--------+ | 33 | VbulkMid | V | +------------+---------------------------------+--------+ | 34 | Power Peak | W | +------------+---------------------------------+--------+ | 35 | Power Peak Today | W | +------------+---------------------------------+--------+ | 36 | Grid Voltage neutral | V | +------------+---------------------------------+--------+ | 37 | Wind Generator Frequency | Hz | +------------+---------------------------------+--------+ | 38 | Grid Voltage neutral-phase | V | +------------+---------------------------------+--------+ | 39 | Grid Current phase r | A | +------------+---------------------------------+--------+ | 40 | Grid Current phase s | A | +------------+---------------------------------+--------+ | 41 | Grid Current phase t | A | +------------+---------------------------------+--------+ | 42 | Frequency phase r | Hz | +------------+---------------------------------+--------+ | 43 | Frequency phase s | Hz | +------------+---------------------------------+--------+ | 44 | Frequency phase t | Hz | +------------+---------------------------------+--------+ | 45 | Vbulk + | V | +------------+---------------------------------+--------+ | 46 | Vbulk - | V | +------------+---------------------------------+--------+ | 47 | Supervisor Temperature | °C | +------------+---------------------------------+--------+ | 48 | Alim. Temperature | °C | +------------+---------------------------------+--------+ | 49 | Heat Sink Temperature | °C | +------------+---------------------------------+--------+ | 61 | Grid Voltage phase r | V | +------------+---------------------------------+--------+ | 62 | Grid Voltage phase s | V | +------------+---------------------------------+--------+ | 63 | Grid Voltage phase t | V | +------------+---------------------------------+--------+ **Codici di errore** In caso di errore si attiva l'uscita **Fault**, con `SysGetLastError <#FctSysGetLastError>`__ è possibile rilevare il codice di errore. +-----------------------------------+-----------------------------------+ | 10030010 | Valore di **File** non definito. | +-----------------------------------+-----------------------------------+ | 10030020 | FB protetta, terminato tempo | | | funzionamento in modo demo. | +-----------------------------------+-----------------------------------+ | 10030050 | Timeout esecuzione. | +-----------------------------------+-----------------------------------+ | 10030070 | Errore case gestione. | +-----------------------------------+-----------------------------------+ | 10030100 | Errore CRC risposta da inverter | | | Aurora. | +-----------------------------------+-----------------------------------+ | 10030200 | Errore ricezione “Transmission | | | state” da inverter Aurora. | +-----------------------------------+-----------------------------------+ | 10030251 | Errore da inverter Aurora | | | “Command is not implemented”. | +-----------------------------------+-----------------------------------+ | 10030252 | Errore da inverter Aurora | | | “Variable does not exist”. | +-----------------------------------+-----------------------------------+ | 10030253 | Errore da inverter Aurora | | | “Variable value is out of range”. | +-----------------------------------+-----------------------------------+ | 10030254 | Errore da inverter Aurora “EEprom | | | not accessible”. | +-----------------------------------+-----------------------------------+ | 10030255 | Errore da inverter Aurora “Not | | | Toggled Service Mode”. | +-----------------------------------+-----------------------------------+ | 10030256 | Errore da inverter Aurora “Can | | | not send the command to internal | | | micro”. | +-----------------------------------+-----------------------------------+ | 10030257 | Errore da inverter Aurora | | | “Command not Executed”. | +-----------------------------------+-----------------------------------+ | 10030258 | Errore da inverter Aurora “The | | | variable is not available, | | | retry”. | +-----------------------------------+-----------------------------------+ **Esempi** """"""""""""" Viene eseguita la lettura della misura 21 (Inverter Temperature) dall'inverter con indirizzo 4, il valore ritornato è trasferito nella variabile **Value**. Di default la porta seriale và impostata a **19200, n 8, 1**. **Definizione variabili** |image1| **Esempio LD** |image2| AuroraCEnergy, Aurora cumulated energy reading +-----------------------+-----------------------+ | **Type** | **Library** | +-----------------------+-----------------------+ | FB | eLLabPowerOneLib_B100 | +-----------------------+-----------------------+ |image3| Questo blocco funzione esegue la lettura della energia generata da un inverter Aurora della Power One, connesso al dispositivo di I/O definito in **File**. Questo è un blocco funzione protetto per utilizzarlo occorre richiedere il codice di protezione, vedi `protezione funzioni e blocchi funzione <#ChpFctFBProtection>`__. E' comunque possibile utilizzarlo liberamente in modo test per 30 Min. Viene utilizzata la funzione `GetPolynomialCRC <#FctGetPolynomialCRC>`__ per il calcolo del CRC dei frame dati da e verso l'inverter. La connessione con gli inverters è in RS485 multidrop, occorre definire in **Address** l'indirizzo dell'inverter con cui si vuole dialogare. In **Parameter** occorre indicare il parametro da leggere (Vedi codici parametro). Attivando l'ingresso Start viene eseguita la lettura della misura indicata, terminata la lettura viene attivata per un loop l'uscita **Done**, in caso di errore esecuzione viene attivata per un loop l'uscita **Fault** ed incrementato il valore in **Errors**. +-----------------------------------+-----------------------------------+ | **Enable** (BOOL) | Comando di abilitazione blocco | | | funzione. | +-----------------------------------+-----------------------------------+ | **Start** (BOOL) | Comando di esecuzione lettura | | | misura. | +-----------------------------------+-----------------------------------+ | **File** (FILEP) | Flusso dati **stream** ritornato | | | dalla funzione **Sysfopen**. | +-----------------------------------+-----------------------------------+ | **Address** (USINT) | Indirizzo inverter (Range da 0 a | | | 255). | +-----------------------------------+-----------------------------------+ | **Parameter** (USINT) | Codice parametro da acquisire da | | | inverter (Vedi codici parametro). | +-----------------------------------+-----------------------------------+ | **Done** (BOOL) | Attivo per un loop al termine | | | della esecuzione del comando. | +-----------------------------------+-----------------------------------+ | **Fault** (BOOL) | Attivo per un loop su errore | | | esecuzione del comando. | +-----------------------------------+-----------------------------------+ | **Value** (UDINT) | Valore parametro acquisito da | | | inverter (E' nella relativa unità | | | di misura). | +-----------------------------------+-----------------------------------+ | **Errors** (UDINT) | Numero di errori, incrementato ad | | | ogni nuovo errore, raggiunto | | | valore massimo riparte da 0. | +-----------------------------------+-----------------------------------+ **Codici parametro** Nella variabile **Parameter** occorre definire il codice del parametro da leggere dall'inverter secondo la tabella. +-----------------------+-----------------------+-----------------------+ | **Codice** | **Descrizione** | **Um** | +-----------------------+-----------------------+-----------------------+ | 0 | Daily energy | Kw | +-----------------------+-----------------------+-----------------------+ | 1 | Weekly Energy | Kw | +-----------------------+-----------------------+-----------------------+ | 3 | Month Energy (Energy | Kw | | | from the first day of | | | | current calendar | | | | month) | | +-----------------------+-----------------------+-----------------------+ | 4 | Year Energy (Energy | Kw | | | from the first day of | | | | current calendar | | | | year) | | +-----------------------+-----------------------+-----------------------+ | 5 | Total Energy (Total | Kw | | | lifetime) | | +-----------------------+-----------------------+-----------------------+ | 6 | Partial Energy | Kw | | | (Cumulated since | | | | reset) | | +-----------------------+-----------------------+-----------------------+ **Codici di errore** In caso di errore si attiva l'uscita **Fault**, con `SysGetLastError <#FctSysGetLastError>`__ è possibile rilevare il codice di errore. +----------+----------------------------------------------------------+ | 10031010 | Valore di **File** non definito. | +----------+----------------------------------------------------------+ | 10031020 | FB protetta, terminato tempo funzionamento in modo demo. | +----------+----------------------------------------------------------+ | 10031050 | Timeout esecuzione. | +----------+----------------------------------------------------------+ | 10031060 | Codice parametro errato. | +----------+----------------------------------------------------------+ | 10031070 | Errore case gestione. | +----------+----------------------------------------------------------+ | 10031100 | Errore CRC risposta da inverter Aurora. | +----------+----------------------------------------------------------+ **Esempi** """""""""""" Viene eseguita la lettura del totale energia prodotta dall'inverter con indirizzo 1, il valore ritornato è trasferito nella variabile **Value**. Di default la porta seriale và impostata a **19200, n 8, 1**. **Definizione variabili** |image4| **Esempio LD** |image5| .. |image0| image:: media/image1.jpg :width: 1.55139in :height: 1.31528in .. |image1| image:: media/image2.jpg :width: 7.08681in :height: 0.93681in .. |image2| image:: media/image3.jpg :width: 7.08681in :height: 5.64931in .. |image3| image:: media/image4.jpg :width: 1.54306in :height: 1.33472in .. |image4| image:: media/image5.jpg :width: 7.08681in :height: 0.91319in .. |image5| image:: media/image6.jpg :width: 7.08681in :height: 5.47222in