trovare isctruzioni per 485 inverter aurora PVI12.5

Un saluto a tutti, sono nuovo nel sito ed ho acquistato da una settimana arduino due.
il mio progetto è questo.
leggere i dati di un inverter fotovoltaico in 485 e pilotare ad un determinato valore di potenza delle resistenze nel boiler.
Potrei realizzare l'impianto con un TA e 4 relè amperometrici , ma ho preferito acquistare arduino e cimentarmi nei vari progetti.
In rete non ho trovato come collegare la 485 e soprattutto come pilotare le uscite dopo aver letto dei valori.
Grazie in anticipo per le risposte

Ciao 79flavio79
Hai la descrizioni del inverter per interpretare i dati trasmessi o richiedere dati?
L' Arduino DUE non é la scelta opportuna. È meglio usare il Arduino UNO perché funziona a 5V e perché la sua potenza di calcolo basta per l' applicazione che vuoi fare.

Ciao Uwe

79flavio79:
Un saluto a tutti, sono nuovo nel sito ed ho acquistato da una settimana arduino due.
il mio progetto è questo.
leggere i dati di un inverter fotovoltaico in 485 e pilotare ad un determinato valore di potenza delle resistenze nel boiler.
Potrei realizzare l'impianto con un TA e 4 relè amperometrici , ma ho preferito acquistare arduino e cimentarmi nei vari progetti.
In rete non ho trovato come collegare la 485 e soprattutto come pilotare le uscite dopo aver letto dei valori.
Grazie in anticipo per le risposte

Un pò sul generico direi...

Quando avrai le idee più chiare , soprattutto sui parametri che vuoi leggere dall'inverter fammi sapere, ho il set completo di comandi.

Quello che vorrei fare passo dopo passo è questo:
-collegare l'inverter aurora PVI12.5 tramite RS485 all'arduino due
-estrarre dall'inverter i dati di potenza istantanea (ad esempio 800Wp)
-quando il valore di potenza raggiunge 1700Wp attivare un OUTPUT1
-quando il valore di potenza raggiunge 2900Wp attivare un OUTPUT2
-quando il valore di potenza raggiunge 4100Wp attivare un OUTPUT3
-quando il valore di potenza raggiunge 5300Wp attivare un OUTPUT4
-quando il valore di potenza raggiunge 6500Wp attivare un OUTPUT5
-quando il valore di potenza raggiunge 7700Wp attivare un OUTPUT6
tutto questo per gestire l'energia in eccesso dato che ho contratto scambio sul posto.
sucessivamente su due display mi piacerebbe far scrivere tutti i dati dell'inverte (potenza istantanea, potenza prodotta giornalmente, ecc ecc)

ciao,
premetto che non sono un' esperto e sono alle prime armi .......
anch'io sto studiando per realizzare un sistema per controllare la produzione dei pannelli fv che mi montano a giorni e poi farci fare cose diverse dalle tue , ma il concetto iniziale è lo stesso ed anche inverter molto simile ( io aurora pvi 3.0 )

Di sicuro e ben documentato trovi la lettura di quanto produci misurando la corrente in uscita dall' inverter o dal contatore di produzione e poi con dei calcoli ( anche questi documentati ) arrivi ai watt istantanei prodotti.
x Questo metodo trovi info qui How to build an arduino energy monitor | Archived Forum e guarda nei tre link a metà pagina, poi trovi anche qui Enerduino e anche qui Lettura contatore GSE con arduino - Solare Termico, Fotovoltaico e Risparmio Energetico

per l'interfacciamento via rs485 , di ben documentato e collaudato trovi sistemi diversi da arduino, come il pogoplug modificato o il rapsberry modificato , da qui poi ( poco documentato per quanto ne so io ) dovresti interfacciarti con arduino tramite LAN / wifi / usb....

per un'interfacciamento diretto inverter - arduino tramite 485 interessa molto anche me ma non ne so niente, ho solo trovato questo http://www.robot-italy.com/it/1000pads-mini-rs485-board.html oppure questa SparkFun Transceiver Breakout - RS-485 - BOB-10124 - SparkFun Electronics poi però bisogna capire cosa chiedere all' inverter e sopratutto come :slight_smile: :stuck_out_tongue_closed_eyes:

ciao

mflash:
per un'interfacciamento diretto inverter - arduino tramite 485 interessa molto anche me ma non ne so niente, ho solo trovato questo http://www.robot-italy.com/it/1000pads-mini-rs485-board.html oppure questa SparkFun Transceiver Breakout - RS-485 - BOB-10124 - SparkFun Electronics poi però bisogna capire cosa chiedere all' inverter e sopratutto come :slight_smile: :stuck_out_tongue_closed_eyes:

ciao

Ciao, la comunicazione che avviene nel bus rs485 con quell'inverter (il tuo è identico al mio) è abbastanza semplice.
Baudrate 19200 8 bit di dati , nessuna parità e 1 bit di stop.

Passando oltre le semplici impostazioni ti posso dire che il formato dei messaggi di richiesta verso l'inverter è il seguente:

Lunghezza messaggio 10 byte (fisso)

1 byte = id inverter (di default 2 sennò quello che gli avete impostato)
2/4 byte = comando da inviare, ce ne sono molti, alcuni di un solo byte, altri di 2 altri ancora di 3
5/8 byte = contengono i dati da passare all'inverter in alcuni comandi, ad esempio, quando si invia l'orario da pc per sincronizzarlo
9 byte = crc16 hi byte
10 byte= crc16 lo byte

In pratica:

Esempio : (banale richiesta di energia totale prodotta verso l'inverter con id 2)

02 4E 05 00 00 00 00 00 BC DD

alla quale l'inverter risponderà così

00 06 00 00 36 34 5A 62

dove

00 - bho (inizialmente pensavo si trattasse dell'id del master , ma in realtà si vede che quando si fanno alcuni tipi di richieste [es. S/N dell'inverter] questo dato è il primo byte della risposta).In realtà la mia supposizione ha sempre senso quando si parla di dati interi(32bit) e anche float(sempre 32bit)
06 - ribho (inizialmente pensavo si trattasse della lunghezza dei dati ma in realtà si vede che quando si fanno alcuni tipi di richieste [es. S/N dell'inverter] questo dato è il secondo byte della risposta).In realtà la mia supposizione ha sempre senso quando si parla di dati interi(32bit) e anche float(sempre 32bit)
00 00 36 34 - sono i byte che compongono il valore di 13876 (nel mio caso questo è il valore totale dell'energia prodotta)
C2 59 - crc 16 dei dati

Buon divertimento.

molto interessante.
ma sei riuscito ad avere costantemente in tempo reale la produzione ??

o altre cose oltre il totale prodotto ??

Si, posso leggere pressochè tutto , ad esempio tensione e corrente degli ingressi 1 e 2 (separati), tensione e corrente della griglia, potenza totale, giornaliera, picchi , temperatura dell'inverter etc etc etc.

poter vedere lo skretch sarebbe di utilità a molte persone, perchè io gira gira ma non ho trovato nulla di documentato in maniera precisa e FUNZIONANTE :slight_smile: su come pilotare un aurora con arduino

Mi suona un po tipo 'pappa pronta request' ...
Ci sono tutte le informazioni necessarie per mettersi giù e cominciare a fare due chiacchiere con l'inverter, non fate i pigri, breadboard alla mano e giù a provare! :grin:

trovo la risposta molto deludente ed inaspettata, non ho ora la voglia ne il tempo di dirle il perchè, le ricordo solo che il mondo arduino è OPEN se tutti ragionassero come lei .........

cmq se lo tenga stretto stretto il suo skretc ..

io quando avrò finito il mio lo renderò pubblico e ringrazio le tante persone che hanno messo online, sketc , foto, schemi etc etc ...cosi s'impara tutti ed ognuno mette un po del suo facendo crescere arduino e l'open .

pappa pronta request??? no comment

p.s. sul forum che conoscerà bene energeticambiente ci sono decine e decine di persone e miglia di post al riguardo ma senza soluzione e tutti si sono buttati su pogoplug ed rapsberry

Il punto è che io se vuole l'aiuto volentieri,ma non posso mettermi a scrivere sketch per altri.
Io ho una Board dedicata per fare quel mestiere, basata su un chip che non è lo standard utilizzato dagli Arduino (anche se simile) e soprattutto non è un fw scritto per Arduino ma direttamente in C per AVR.
Ho anche scritto una piccola applicazione .net per simulare l'inverter , se vuole posso fornirgliela gratuitamente.
Vorrei però puntualizzare che , il fatto che Arduino sia open non implica che si debba per forza trovare tutto già pronto, un po di buona volontà ci vuole.
Del resto io come lei, quando dovevo risolvere questo problema, appurato che non ci fosse niente che faceva al caso mio, mi sono rimboccato le maniche e ho fatto quello che mi serviva.
Quindi il mio modo di aiutarla può essere che se mi chiede una cosa, io le posso rispondere, se ha un problema posso aiutarla a risolverlo, ma aspettarsi uno sketch completo, già pronto, per di più FUNZIONANTE come ha sottolineato, mi sembra al di sopra di una semplice disponibilità dovuta al fatto che qui è tutto OPEN.

butto un aiutino anche se non ho tanta esperienza su arduino ma sull'inverter power one ne ho un bel po! ne abbiamo 8 collegati in rete e sono monitorati tramite 485. quello che interessa a te è la corrente prodotta dalle stringhe, che è il dato più costante. non prendere in considerazione gli altri valori perchè sono più altalenanti e ti ritroveresti con situazioni poco chiare. per farti capire meglio se hai una giornata spendida con temperatura ambiente bassa, es. 10°, la tua stringa produrrà per esempio 500volt e 10A mentre con una situazione uguale ma con temperatura ambiente alta, es 30°, la tua stringa produrra 450volt e 10A. non so se mi sono spiegato

Dovresti iniziare a costruirti un interfaccia per RS485, qui trovi un pò di informazioni a riguardo:

Gli integrati usati negli esempi citati si trovano facilmente anche sue bay:
http://members.ebay.it/ws/eBayISAPI.dll?ViewUserPage&userid=teknotel&ipg=2
e comunque basta cercare un pò su google Max485 + arduino (per esempio) per trovare tutto quello che serve per iniziare a "parlare" con l'inverter.

e io che pensavo che bastava collegare i 2 fili della 485 dell'inverter ai morsetti 0 e 1 dell'arduino...
per poi con una programma interrogare l'inverter.
Invece per interfacciare l'inverter e arduino sono obbligato a installare una schedina,dico bene?
Grazie per le risposte.
gli stimoli fanno andare avanti.

In reltà manca un integrato che faccia da convertitore, ma lo trovi facilmente e a poco prezzo. Comprese le spese di spedizione ho speso circa 3€...

ad esempio:
http://www.ebay.it/itm/IC-MAX485-CPA-interfaccia-MAX-485-RS-485-RS422-seriale-DIP8-/261149929124?pt=Componenti_elettronici_attivi&hash=item3ccdbfaea4

e va collegato così:
http://www.google.it/imgres?imgurl=http://dereenigne.org/wp-content/uploads/modbus.png&imgrefurl=http://dereenigne.org/tag/max485&h=1020&w=709&sz=107&tbnid=1vw70snqz-HqJM:&tbnh=90&tbnw=63&zoom=1&usg=__rDlciuXalz96qcTZQW3sPPKWOVw=&docid=oN62DW03Eq9oSM&hl=it&sa=X&ei=fqjoUMjiAemr4ASxlYC4BA&ved=0CDcQ9QEwAA&dur=4797

a livello hardware è tutto quanto serve.

grazie a tutti ora inizia ad essere tutto più chiaro.

Essendo un "arduino due" però andra collegato con una tensione pari a 3.3volt se non sbaglio.

Altra domanda agli esperti:
l'arduino due avendo 2 connettori usb già in 232 per la comunicazione seriale, non si potrebbe uscire dall'inverter con un adattatore 485/232 e collegarlo direttamente sulla porta usb "native"?

tapirinho:
In reltà manca un integrato che faccia da convertitore, ma lo trovi facilmente e a poco prezzo. Comprese le spese di spedizione ho speso circa 3€...

ad esempio:
http://www.ebay.it/itm/IC-MAX485-CPA-interfaccia-MAX-485-RS-485-RS422-seriale-DIP8-/261149929124?pt=Componenti_elettronici_attivi&hash=item3ccdbfaea4

e va collegato così:
http://www.google.it/imgres?imgurl=http://dereenigne.org/wp-content/uploads/modbus.png&imgrefurl=http://dereenigne.org/tag/max485&h=1020&w=709&sz=107&tbnid=1vw70snqz-HqJM:&tbnh=90&tbnw=63&zoom=1&usg=__rDlciuXalz96qcTZQW3sPPKWOVw=&docid=oN62DW03Eq9oSM&hl=it&sa=X&ei=fqjoUMjiAemr4ASxlYC4BA&ved=0CDcQ9QEwAA&dur=4797

a livello hardware è tutto quanto serve.

Salve, dove posso trovare la lista dei comandi ammessi da Aurora e le relative risposte?
Grazie
saluti

Ciao a tutti, so che sono sicuramente off-topic, però questo problema potrebbe essere condiviso anche da altri. Sto scrivendo un datalogger su un plc Codesys; ho già comunicato con l'inverter (un PVI3) spedendo 10 bytes di comando trovati qualche post più in su (02 4E 05 00 00 00 00 00 BC DD) e ottenendo i corretti 8 bytes di risposta, però i 2 dati di CRC che avevo inviato (BC e DD) erano però già "pronti" dall'esempio trovato. :roll_eyes:
Come si esegue il calcolo del CRC? ho provato a seguire l'indicazione presente nell'ultima pagina della documentazione che descrive il protocollo, tuttavia il CRC che ottengo non corrisponde a quello (corretto) dell'esempio. Posso avere qualche ulteriore informazione? avete già disponibile qualche esempio di programma in Codesys (o comunque IEC61131 o qualche libreria)?
Vi sarei molto grato per l'aiuto, in quanto sto cercando di fare dell'integrazione con inverter Aurora con PLC un progetto di business, pertanto qualunque informazione per me sarebbe preziosa!
Grazie, saluti

AuroraCommunicationProtocol_4_2.pdf (241 KB)