BaroneRosso.it - Forum Modellismo

BaroneRosso.it - Forum Modellismo (https://www.baronerosso.it/forum/)
-   Elimodellismo Elettronica (https://www.baronerosso.it/forum/elimodellismo-elettronica/)
-   -   BlHeli: ovvero rendere un discreto regolatore un super esc (https://www.baronerosso.it/forum/elimodellismo-elettronica/245440-blheli-ovvero-rendere-un-discreto-regolatore-un-super-esc.html)

liftbag 10 aprile 12 21:13

BlHeli: ovvero rendere un discreto regolatore un super esc
 
La premessa doverosa è che tutto quanto riportato in questa specie di guida è il frutto del lavoro di un gruppo di appassionati modellisti e programmatori, in particolare di Steffen (sskaug su helifreak) che hanno reso disponibile il frutto del loro lavoro sulle pagine di helifreak e di rcgroups.
In particolare ho seguito il topic di Steffen su helifreak, cui vi prego di fare riferimento per una comprensione più approfondita dell'argomento.

Poiché ho trovato il progetto utile e la realizzazione pratica semplice ed alla portata dei più, ho pensato di condensarlo in italiano sulle pagine del barone.


Cosa è BlHeli?

E' un progetto che si è posto come obbiettivo la modifica di un certo tipo di regolatori molto diffusi nella conversione brushless dell'mCPX e che ha raggiunto gli obbiettivi prefissati che erano principalmente quattro:

1- migliorare le performances finalizzando i parametri all'utilizzo con l'mCP X
2- eliminare la necessità di un convertitore di segnale esterno
3- includere la modalità governor anche a 1S
4- ottimizzare l'esc per pilotare efficacemente un motore brushless di coda.


E' un progetto utile solo per i possessori di mCP X?

Assolutamente no. In realtà i motori brushless in uso sull'mCP X sono da tempo utilizzati come upgrades su moltissimi altri micro modelli, soprattutto Walkera.
Inoltre, la possibilità di invertire la polarità del segnale di ingresso rende compatibile l'esc sia agli usuali standard E-flite che a quelli di Walkera.
Questo è anche il motivo della scelta di collocazione di questa discussione.


Occorrono competenze teoriche da programmatore per usufruirne?

No. Il grande merito di Steffen e degli altri è quello di aver messo a disposizione il codice già compilato e pronto per essere scaricaro nella mcu del regolatore.
Semmai serve un minimo di abilità nelle saldature elettroniche e un minimo di conoscenza del pc.


E' un progetto multipiattaforma pc?

Al momento no. Il software necessario è disponibile solo per windows ed anch'io al momento lo uso su osx grazie a parallel desktop con una versione demo di windows 8.


Quali esc possono essere riprogrammati con BlHeli?

Il progetto si divide in due branch, quello per gli esc basati su mcu Silicon Labs e quelli basati su Atmel.
Almeno per ora, tratterò i primi, perché molto più utilizzati sull'mCP X, e sono:

TGY DP3A
SuperMicro System - 3.5A
Oversky XP-3A
Oversky XP-7A
Oversky XP12A
Turnigy 6A



La riprogrammazione dell'esc

Per prima cosa è necessario procurarsi il Silicon Labs ToolStick.
E' in vendita sul sito SiliconLabs e quello da ordinare è al link TOOLSTICKBA (17.50$) a questa pagina: USB ToolStick
E' possibile trovarlo altrove, ad esempio io l'ho ordinato da Mouser Electronics, ma in questo caso costa di più ed è disponibile soltanto la spedizione veloce che ne fa lievitare ulteriormente il prezzo.
Così come arriva non è utilizzabile per i nostri scopi, e dobbiamo modificarlo un poco.

Questo è il ToolStick, così come arriva

http://img163.imageshack.us/img163/2...lstickba01.jpg

Per poterlo usare occorre portare fuori tre fili, il positivo, il negativo ed il segnale.

La copertura in plastica si apre facilmente aiutandosi con un cutter, poi si può decidere di non usarla più, oppure di farci un foro per far uscire i fili.
Io ho preferito tenerlo chiuso e far uscire i fili.

Sul lato anteriore si salda il filo del segnale, ma occorre anche cortocircuitare due pin indicati in foto

http://img403.imageshack.us/img403/6...lstickba02.jpg

Dal lato posteriopre si preleva il + e il -

http://img100.imageshack.us/img100/2...lstickba03.jpg

Ecco quindi come si presenta una volta richiuso

http://img805.imageshack.us/img805/6...lstickba04.jpg

http://img171.imageshack.us/img171/4...lstickba05.jpg


E' molto comodo utilizzare un connettore sia per le esigenze di riprogrammazione che per la modifica dei parametri via pc.
Io ho utilizzato connettori a 3 pin di AEOrc, perché sono leggeri e sottili e possono quindi essere lasciati permanentemente sull'esc per tutte le esigenze di aggiornamento software.

Sul toolstick ho usato il maschio, indicando chiaramente il significato dei pin, perché questi connettori non sono polarizzati

http://img525.imageshack.us/img525/9...lstickba06.jpg


Sugli esc, uso ovviamente la femmina e per ora, sull'XP-12A e sul 7A ho trovato una sistemazione ottimale.

I punti sull'esc dove collegare il ToolStick sono indicati con precisione nel primo post di helifreak, ingrandendo le miniature delle fotografie dei vari regolatori.

E' importante ricordare che per poter utilizzare l'XP-7A e l'XP-12A occorre rimuovere un condensatore, come chiaramente indicato nelle fotografie del primo post del topic su helifreak.

L'XP-12A con il connettore saldato ed il condensatore rimosso

http://img515.imageshack.us/img515/8572/xp12a01.jpg


e collegato al toolstick

http://img62.imageshack.us/img62/1808/xp12a02.jpg


Questo invece è l'XP-7A: il segnale, come nella foto sopra, è a destra, il negativo a sinistra ed il positivo al centro

http://img404.imageshack.us/img404/7003/xp7a01.jpg


Il software FLASH Programming Utility, da utilizzare per riprogrammare l'esc, è scaricabile dal sito SiliconLabs.
E' possibile flashare l'esc anche con il software BlHeliSetup sviluppato dall'utente helifreak 4712, scaricabile a questa pagina, che contiene le dll del software originale Silicon Labs per comunicare con il toolstick.
Inoltre questo software consente di settare i parametri dell'esc via pc, di nominare ciacun esc con un nome univoco, di salvare le impostazioni in un file .ini e di poterle importare, di disabilitare la programmazione via TX, e di settare il cut-off e la possibilità di invertire il senso di rotazione del motore.

I binari compilati per i vari escs sono disponibili al github di sskaug, nella sottocartella SiLabs/Hex files, ma è facile che si possano trovare versioni più recenti alla pagina del blog di 4712 postata poche righe sopra.
Hanno estensione .hex e sono chiaramente descritti nel nome.
Per ciascun esc esiste la versione main e la versione tail, destinate ovviamente all'utilizzo con main motor la prima e tail motor la seconda. Ma è bene precisare che soltanto gli esc 1s, quelli da 3 e 3.5A dispongono dell'opzione per migliorare la velocità di riduzione del regime di rotazione.

La procedura per riprogrammare l'esc con il software silicon labs è descritta in questo pdf.

Invece, se volete riprogrammare col software BlHeli-Setup, aprite l'applicazione, fate click sul pulsante "Read Setup" in basso a sinistra, facoltativamente inserite un nome univoco nel campo "Name", cliccate sul pulsante "Flash BlHeli Hex File", navigate nel file system del pc e scegliete il file .hex appropriato ed il software lo trasferirà nella mcu dell'esc in un istante.

Tutto qui. Ora potete variare i parametri dell'esc, sempre con il software BlHeli-Setup, oppure tramite la trasmittente, sempre che non ne abbiate inibito l'utilizzo con BlHeli-Setup.

Per usare la trasmittente, fate riferimento all'apposita guida.



Utilizzo del BlHeli ESC come main

Il meccanismo di armamento dell'esc è appena più laborioso del solito, ma è un workaround per aggirare l'ostacolo del ritardo durante la fase di armamento della 3 in 1 dell'mCP X, ritardo che ostacola l'ingresso in modalità programmazione con gli esc non riprogrammati.


Armamento dell'esc in modalità volo

La parte in blu è riferita all'mCP X, ma il meccanismo di armamento è valido per tutti gli elicotteri.

Accendendo l'elicottero, l'esc si troverà in ogni caso uno 0 throttle in ingresso, perché o lo avete impostato voi sulla TX, oppure se avete il gas alzato, la 3 in 1 non si arma.
Appena alimentato, l'esc emette tre beep in rapida sequenza e rimane in attesa disarmato.

Appena gli arriva un valore di throttle diverso da 0 (ma non 100%) emette un beep lungo confermando l'inizio della sequenza di armamento.

La sequenza di armamento si completa appena il gas torna a 0, cosa che fa armare l'esc e che quindi farà partire il motore al successivo aumento del throttle.


Armamento dell'esc in modalità programmazione

La procedura è simile, quindi si comincia alzando il throttle di poco.

1) Appena terminato il beep lungo di conferma, invece di portare il gas a 0 si porta al 100%. L'esc restituisce dei singoli beep all'infinito rimanendo in attesa.

2) Si porta il gas a 0. L'esc restituisce una serie infinita di doppi beep.

3) Si riporta il gas al 100%. L'esc emette 4 beep in rapida sequenza per tre volte, dopodiché inizia la sequenza di suoni che indicano le funzioni ed i valori da scegliere.


Le funzioni sono indicate da beep lunghi, quindi un beep lungo significa prima funzione, due beep lunghi seconda funzione e così via.
Subito di seguito ai beep lunghi di funzione seguono i beep corti che indicano il valore da impostare.
Ogni valore selezionabile per la funzione è ripetuto tre volte, per dare il tempo di operare la scelta.

Quando si arriva al valore desiderato di una certa funzione si deve portare il gas a 0.
L'esc emette quattro beep per tre volte per indicare che il valore è stato memorizzato, dopodiché si resetta tornando in attesa di armarsi o di rientrare in modalità di programmazione.



Le modalità di utilizzo con firmware Main


Il BlHeli è un codice sviluppato per esc da elicottero, non è quindi prevista la funzione brake, neanche se si disabilita il governor.

Una volta riprogrammato l'esc potrà funzionare senza governor, oppure con governor in due differenti modalità; TX e Arm.

In modalità TX i giri del motore saranno funzione del valore del canale throttle.
Esiste un foglio excel che dovrebbe descrivere tale relazione, ma non io non ci capisco niente e sono più pragmatico, misuro i giri col tachometro con gas al 100% e mi tengo sotto di almeno il 15% in modo da avere una certa riserva per il governor, poi semmai aggiusto via via se sento che il motore cala sotto sforzo o che non cala mai.
Con questa modalità le curve gas per il volo devono essere piatte, tipo 80-80-80.


Esiste poi la modalità Arm, in cui il massimo valore di gas che l'esc vede durante la sequenza di armamento, determinerà i giri che utilizzerà in volo.


Approfondisco meglio.

Il governor di questo, come della maggior parte degli esc, fa corrispondere il valore di throttle ad un ben determinato valore dei giri al minuto del motore, che poi mantiene costante.

Tipicamente si imposta il modo volo Normal con una curva che termina al valore di throttle desiderato, ad esempio 0-20-40-60-80. La forma della curva non è importante, ma per ora mi è sembrato di capire che deve partire da 0, cioè sganciare l'hold con curva piatta a 80% non produce lo stesso risulatato, occorre salire da 0 con progressione fino al valore desiderato.
Poi occorre avere una seconda curva gas, idle (o stunt per Spektrum) di qualsiasi forma ma mai a 0%.

Si esegue quindi la prima parte dell'armamento dell'esc portando lo stick del gas al massimo (che corrisponde nel nostro esempio a 80%).
Poi a 0%.
Poi si tira l'hold e si inserisce il modo volo idle o stunt.
Quando si rilascia l'hold il motore parte in soft start fino ai giri preimpostati con il primo passo.

Perché questa modalità? Perché l'esc ignorerà il canale throttle per ogni valore diverso da zero (valore che lo disarmerà).
Questa cosa è piuttosto importante in certe applicazioni con l'mCP X, cui faccio un breve cenno nel prossimo post.

Per l'utilizzo dell'esc con il motore di coda, mi riservo di scrivere qualcosa non appena l'avrò provato.

Paolo

liftbag 10 aprile 12 21:14

La modalità Arm con l'mCP X
 
Il nostro piccoletto ha un mix throttle > tail programmato nella 3 in 1. Questo mix fa si che alla coda arrivi più potenza se aumenta il throttle.

Questa cosa può essere sfruttata in tre principali modi.

1- Creare una sorta di precompensazione di coppia (Revo Mix)
In modalità "arm", impostare una curva gas a V più o meno profonda non influenzerà minimamente il rotopre principale, ma aiuterà la coda a reagire ancora prima del feedback in arrivo dal tail gyro ogni volta che aumentiamo e diminuiamo il collettivo (e quindi quando aumentiamo la coppia).
E non solo! Impostando un'opportuno mix ciclico > gas è possibile estendere il revo mix anche all'utilizzo del ciclico, così come è possibile impostare nelle centraline flybarless evolute.

2- Aumentare la massima risposta della coda
Quando si ha un motore principale esorbitante, occorre una coda con potenzialità elevate per evitare il tail blow out. Utilizzare il governor normale, costringe a settare la curva gas a valori non superiori all'80%, cosa che limita la massima potenzialità della coda. Invece in modalità arm, è possibile avere un regime governato anche impostando il gas al 100%, sruttando al massimo le potenzialità della coda.
tanto per capisci, la prima volta che usai il governor su HP08S con il Phoenix10, ci rimasi male del fatto che la mia coda non teneva una mazza. Il motivo era semplicemente che il Phoenix con governor in modalità set rpm, necessita di un valore di throttle del 30% per il primo dei tre valori di giri al rotore impostabili.
Ma col 30% al main, che magari significa 6000 rpm, alla coda arriva troppo poco per contrastare.


3- Diminuire la massima risposta della coda
Questa è una necessità rara ed è il contrario di quella sopra, ma alcuni setup che prevedano motori medi o scarsi, uniti a coda brushless, potrebbero avvantaggiarsene per ridurre o annullare l'eccesso di risposta della coda. Addirittura, si potrebbe impostare una curva gas a V rovesciata per sedare l'eccesso di risposta della coda.

liftbag 11 aprile 12 00:48

Come rendere l'XP-3A il più leggero esc da 7/A
 
Come visto, anche il minuscolo XP-3A può essere flashato con la versione main del firmware BlHeli, dunque avrà tutte le caratteristiche dei due fratellini maggiori, compreso il governor nelle due modalità, a parte la possibilità di funzionare oltre i 4,2 volts.

Il suo limite è la corrente massima disponibile. Ma si può rimediare :fiu:

E' sufficiente sostituire i mosfet con altri migliori, ma il guadagno in prestazioni sarebbe limitato, e allora basta raddoppiare i fet saldando il secondo a cavallo del primo.

Attualmente non ho immagini mie da postare, quindi linko quelle dell'utente 4712 di helifreak.

In questa prima immagine si individuano le posizione dei due tipi di fet, quelli a canale N e quelli a canale P

http://www.helifreak.com/attachment....2&d=1333913327


Nelle altre due si vedono i fet impilati e saldati uno sopra l'altro

http://www.helifreak.com/attachment....3&d=1333913392

http://www.helifreak.com/attachment....4&d=1333913392

Mosfet di buona qualità sono questi P-channel e questi N-channel.

Naturalmente è superfluo dire che l'operazione è tutt'altro che semplice e richiede una buona attrezzatura per saldare ed una più che buona manualità.

Ma il risultato è quasi incredibile, pochi crederebbero che quel minuscolo esc possa pilotare un HP05S con governor ^_^

liftbag 11 aprile 12 00:54

Il massimo dall'XP-12A a 1S
 
Come noto questo esc può operare con alimentazioni da 1S fino a 3S.
Però i fet di potenza utilizzati non sono molto a loro agio se usati a 1S.

Se si volesse spremere il massimo da un XP-12A flashato con BlHeli, perchè si vuole fare faville con un HP06V2 o un Turbo Ace 915, la cosa migliore è sostituire i fet con altri che danno il massimo a una cella.

Senza che riporto i link, Steffen ci da una mano in questo post :wink:

dex1 11 aprile 12 11:34

wow.

senza preamboli,e applicabile al MSr eflite?

liftbag 11 aprile 12 12:26

Citazione:

Originalmente inviato da dex1 (Messaggio 3140847)
wow.

senza preamboli,e applicabile al MSr eflite?

Si, anzi l'XP-3A è stato usato ormai quasi due anni fa da eqmod ed altri per la conversione brushless dell'mSR. Ora, potendolo riprogrammare si evita il convertitore.
Naturalmente la funzione di governor non è applicabile ad un passo fisso ed anzi, per l'mSR è meglio utilizzare la versione tail di BlHeli, perché è estremamente veloce nella risposta, ha una sorta di funzione freno che aiuta a calare rapidamente i giri quando richiesto e perché una volta armato rimane armato, e risponde al comado gas fino a quando non si toglie l'alimentazione.

Però, non so dirti dove si preleva il segnale di uscita par il main dalla mcu della 5 in 1 (si chiama così sull'mSR? non me lo ricordo più).

maRRRco 11 aprile 12 13:53

gran bel lavoro Lift :clap::clap::clap:

quando dici che non occorre più il convertitore ti riferisci al the Steve ?
come può accadere questo? non mi pare di vedere connessioni particolari, a parte un condensatore in meno e il pin per le interconnessioni con la chiavetta.
da qualche parte il segnale si deve pur prendere ... :unsure::unsure:
o da adesso basta solo l'alimentazione e la procedura per far riconoscere minimo e massimo di escursione gas?

liftbag 11 aprile 12 14:13

Citazione:

Originalmente inviato da maRRRco (Messaggio 3141084)
gran bel lavoro Lift :clap::clap::clap:

quando dici che non occorre più il convertitore ti riferisci al the Steve ?
come può accadere questo? non mi pare di vedere connessioni particolari, a parte un condensatore in meno e il pin per le interconnessioni con la chiavetta.
da qualche parte il segnale si deve pur prendere ... :unsure::unsure:
o da adesso basta solo l'alimentazione e la procedura per far riconoscere minimo e massimo di escursione gas?

Beh, ho omesso di illustrare il cablaggio dell'esc, ma non è cambiato nulla, si utilizza sempre lo stesso punto di ingresso per il segnale, solitamente cablato dalla fabbrica con un filo bianco che, unito al positivo del bec ed al negativo, andrebbero alla ricevente.

Solo che con BlHeli, l'esc è in grado di "capire" il segnale in uscita dalla mcu, mentre prima era necessario frapporre il TheSteve o altro convertitore :wink:

KenR1 11 aprile 12 16:47

Citazione:

Originalmente inviato da liftbag (Messaggio 3140502)
Come noto questo esc può operare con alimentazioni da 1S fino a 3S.
Però i fet di potenza utilizzati non sono molto a loro agio se usati a 1S.

Se si volesse spremere il massimo da un XP-12A flashato con BlHeli, perchè si vuole fare faville con un HP06V2 o un Turbo Ace 915, la cosa migliore è sostituire i fet con altri che danno il massimo a una cella.

Senza che riporto i link, Steffen ci da una mano in questo post :wink:

Lift,
non capisco quali vanno presi... ci sono i pdf con i datasheet ma quali sono i migliori?

liftbag 11 aprile 12 17:05

Citazione:

Originalmente inviato da KenR1 (Messaggio 3141394)
Lift,
non capisco quali vanno presi... ci sono i pdf con i datasheet ma quali sono i migliori?

La prima coppia è la più costosa, ma indubbiamente la migliore.
Sto pensando di prenderli anch'io per il mio TA915.


Sent from Tapatalk app


Tutti gli orari sono GMT +2. Adesso sono le 07:06.

Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002