SharkLab
grafický program pro nabíječky Shark
nově upravený pro podporu nabíječek e-Station BC6 Dual Power
Po delší době váhání jsem se rozhodl, že si pořídím novou nabíječku akumulátorů. Volba padla na nabíječku Shark 20, Je za relativně přijatelnou cenu, lze k ní přikoupit balancer PB-5, případně teplotní čidlo. Co mne lákalo nejvíce, byla možnost komunikace s počítačem a nechat si tak zobrazit nabíjecí/vybíjecí charakteristiky akumulátoru. Jestli to skutečně byla správná volba nevím. Posuďte sami.
Nemilým překvapením byla skutečnost, že teplotní čidlo, které se normálně připojuje do nabíječky a v případě použití balanceru se přepojuje k balanceru (protože na jeho místo přijde komunikační kabel), v nové verzi již není kam připojit. Konektor prostě chybí. že bych se špatně informoval před koupí? Nikoli. Na Internetu dodavatel, tedy firma Pelikán, tvrdí (ještě měsíc po mém upozornění), že teplotní čidlo se použít dá. Ve stažených manuálech, všude, kromě manuálu k výrobku. To je ale trochu pozdě.
Druhým zklamáním pak byl ovládací program. Ten se připojí pomocí USB kabelu, který si zákazník musí koupit k programu. Hned při prvním nabíjení jsem si všiml, že udaný proud na displeji nabíječky nesouhlasí s indexem na Y se proudu. Ne hned tak o málo ale asi o 20%. Jenom proud, ostatní údaje byli správné. Mezi další nectnosti patřilo to, že jsem během asi 5 nabíjení nikdy nedostal celou křivku. Program prostě bez varování skončil. Zkoušel jsem instalovat program na jiné dva počítače, ale výsledek byl stejný.
Nezbylo než se pusti do vývoje vlastního programu. Po večerech za zhruba 2 týdny byla hotova první verze programu. Tady je.
|
| náhled programu |
Co umí první verze na rozdíl od orinálního programu?
- grafické zobrazení jednotlivých LiPol článků
- automaticé ukládání naměřených dat, které lze vypnout v konfiguraci programu
- snad přesnější zobrazení měřených údajů
- zobrazení údajů v grafu na jediný klik levého tlačítka myši
- zobrazení nastavení parametrů nabíječky
- zoom grafu
- výstup do .csv souboru
- je to freeware
Co bude umět další verze
- uživatelské škálování Y osy
- co mě, případně Vás, napadne.
Download programu SharkLab. (poslední data z 14. července 2007, 8:52:57)
Driver pro Vista, W7 a 8 (11.10.2013)
Historie programu, seznam opravených chyb a nové funkce.
Čas od času, jakmile budu mít novější verzi, dám ji na WEB. Pokud Vás program zaujme, můžete se občas podívat, jestli je tu nová verze. Bude-li o program zájem předělám tyhle stránky aby vypadaly více k světu. Některá z příštích verzí by mohla sama upozornit, že je připravena nová verze.
Budu rád za jakékoli připomínky, nápady atd.
Jak tedy nabíječka komunikuje s počítačem?
Snadno.
V počítači je nainstalován SW "bridge" mezi USB a virtuálním sériovým portem. Na rychlosti 9600Bd je vysílán zhruba každou vteřinu blok dat. Blok začíná údajem 0x7D a končí 0x7F. Všechny údaje mezi mají nastavem nejvyšší bit. Tím se dá snadno zjistit počátek bloku a měřené údaje pak nikdy nelze se začátkem bloku splést. Údaje jsou přnášeny po jednotlivém znaku nebo po dvojicích. Jedná-li se o dvojici znaků, pak nižší (dříve vyslaný) obsahuje hodnotu před desetinou čárkou, vyšší znak (vyslaný později) pak hodnotu za destinnou čárkou.
Popis struktury je následující:
typedef struct _shark_Rx_ {
char startChar; // 0x7B
unsigned char b_v_type : 1, // LiPol type 0 - 3.7V 1 - 3.6V
a2 : 1,
b_safetyTimer : 1, // 1 - safety timer ON (safetyTimer je nastavena hodnota)
a4 : 1,
b_keyBeep : 1, // 1 - ON
b_buzzer : 1, // 1 - ON
b3 : 1,
b_capcut : 1; // 1 - capacity cut-off ON
// (capacityCutOff je nastavena hodnota)
char NiCd_sensDpeak; // NiCd Sensitivity D.peak [mv] 04 - default
char NiMH_sensDpeak; // NiMH Sensitivity D.peak [mv] 04 - default
char temp_cutOFF; // teplota pro ukonceni prace
char wasteTime; // prodleva mezi nabijecim a vybijecim cyklem
char backLight; // podsvetleni v %
char inputPowerLow; // minimalni vstupni napeti
char chargeState; // 0xX0 = vybijeni , 0xX1 = nabijeni
// X je priznak cyklickeho nabijeni/vybijeni
char NiCd_chargeCurrent; // nastaveny nabijeci proud
char NiCd_dischargeCurrent; // nastaveny vybijeci proud
char NiCd_cycleOrder; // 0 - DSCH>CHG, 1 - CHG>DSCH
char NiCd_cycle; // NiCd cycle
char NiMH_chargeCurrent; // nastaveny nabijeci proud
char NiMH_dischargeCurrent; // nastaveny vybijeci proud
char NiMH_cycleOrder; // 0 - DSCH>CHG, 1 - CHG>DSCH
char NiMH_cycle; // NiMH cycle
char LiPol_chargeCurrent; // nstaveny nabijeci proud
char numCellCH; // pocet LiPol clanku pri nabijeni
char LiPol_dischargeCurrent; // nastaveny vybijeci proud
char numCellDCH; // pocet LiPol clanku pri vybijeni
char Pb_chargeCurrent; // nstaveny nabijeci proud
char Pb_chargeVoltage; // 1 - 2.0V 2 - 4.0V ...
char pgmSelect; // vyber programu
char runState; // 0 - neprobiha nabijeni ani vybijeni
char __X4; // 0
char NiMH_dischEnd; // NiMH - napeti pro ukonceni vybijeni
char __X5; // 0
char NiCd_dischEnd; // NiCd - napeti pro ukonceni vybijeni
char safetyTimer [2];
char capacityCutOff [2];
char current [2]; // nabijeci proud pres baterii (mereny)
char packVoltage [2]; // celkove napeti vsech clanku
char temperature [2];
char __X7 [2]; // 0 0
char inpVoltage [2];
char capacity [2];
char cell_01 [2]; // napeti clanku 1
char cell_02 [2]; // napeti clanku 2
char cell_03 [2]; // napeti clanku 3
char cell_04 [2]; // napeti clanku 4
char cell_05 [2]; // napeti clanku 5
char cell_06 [2]; // napeti clanku 6
char cell_07 [2]; // napeti clanku 7
char cell_08 [2]; // napeti clanku 8
char cell_09 [2]; // napeti clanku 9
char cell_10 [2]; // napeti clanku 10
char cell_11 [2]; // napeti clanku 11
char cell_12 [2]; // napeti clanku 12
char runTime [2];
char napeti [2]; // ???
char N2 [2];
char lastChar; // 0x7D
} RX_DATA;
Nabíječka e-Station BC6 Dual Power
Motto : Konečně někdo přišel na to, že "6" je sudé, slušně dělitelné číslo.Když se rozhlédnu po modelářských prodejnách v sekci LiPol baterií, vidím prakticky samé dvou a tříčlánky. Sám nepoužívám jiné. Většinou mám tříčlánky. Snad každý potvrdí, že se nevyplácí, s ohledem na životnost, nabíjet je proudem větším než 1C. Já je nabíjím tak 0.8C. Jakmile jdu létat jsou to vybité minimálně 4 trojčlánky. Jeden kus je nabit tak za 80-100 minut, takže je mohu použít tak nejdříve po 6-8 hodinách.
Nabíječka Shark 20 umí pouze 5 článků, Shark 30 už umí 6 článků, jenomže dlouho se nevyráběl balancer pro 6 článků. Nově prodávaná nabíječka MC6 můj problém vyřešila. Mohu v ní totiž nabíjet dva tříčlánky naráz. Jen se musí správně nastrkat do dodaných konektorů. Pokud ale používáte své vlastní konektory, jako já, je možno vyrobit nabíjecí "kolejnici" kam mohu nastrkat téměř libovolné kombinace do součtu šesti článků.


V čem je tedy tato nabíječka jiná než nabíječky Shark?
- podpora 6ti článků LiPol/LiOn
- podpora článků LiFe
- integrovaný balancer
- funkce pro "skladování" LiPol
- možnost časového posunu programové kontroly počtu LiPol článků
- integrovaný zdroj 220V pro proudy do 5A
- přehlednější údaje na displeji
- rychlejší pokles proudu při druhé fázi nabíjení LiPol (konstantní napětí, pokles proudu)
- nutnost zakoupit/vyrobit USB výstupní převodník
- nepodstatné - ale chybí změna intenzity podsvětlení
- mohla by už konečně umožnit nastavit libovolné koncové napětí na Li-xx článcích
Vše má ale malý háček. Komunikační protokol některé nové udaje neobsahuje. Už od počátku mi chyběla v protokolu identifikace typu nabíječky. Pro SharkLab i originální e-Station je to sice jednodušší, ale některé údaje pak prostě chybí.
Nemám nabíječku dlouho a tak musím ještě některé parametry proměřit, zda zobrazované údaje odpovídají skutečnosti. Trochu by mne zajímalo, jak principiálně funguje integrovaný balancer. Ty externí od Sharka jsou autonomní a během nabíjecího či vybíjecího cyklu srovnávají napětí tak, že článek s nejvyšším napětím vybíjí maximálním proudem 500mA. Tím ale nemůže souhlasit hodnota dodaného či odebraného náboje. Integrovaný balancer tuto problematiku může řešit a "přepustit" tak proud z nejvíce nabitého článku do článků ostatních. Firma Atmel na to dělá dokonce speciální procesor.

Prvotní vybalancování dvou různě vybitých tříčlánků provede nabíječka za velice krátkou dobu. Zobrazené hodnoty odpovídají skutečným změřeným hodnotám měřeným na servisním konektoru přesným voltmetrem.
Trochu jiným způsobem pracuje BC6 než Shark 20/30 při druhé fázi nabíjení - konstantní napětí, snižující se proud. Zatímco software v nabíječče Shark postupně snižoval proud, BC6 proud snižuje trochu rychleji, ale snižování prokládá zcela jistě měřením. Když proud sníží příliš mnoho, vrátí se a proud přidá. Tím vlastně proud kolísá. Dochází tak k efektivnějšímu a rychlejšímu dobíjení.
Upravil jsem program SharkLab pro tuto nabíječku.
Množí se dotazy na zapojení teplotního senzoru.
V obou nabíječkách je použit obvod LM35. Napojen je na servo konektor. Propojení ukazuje následující tabulka.| servo | LM35 |
| signal | Vs (levá nožička) |
| +5V | Vout(prostřední nožička) |
| zem | GND (pravá nožička) |
Historie programu SharkLab
verze 1.1.1.135 14. července 2007, 8:52:57 - vyšší rozsah informačních sloupců LiPol článkú (3.60V - 4.25V) doplněný popisem hodnoty - čítač ve spodní liště - levý dvoklik ho vynuluje - zobrazení údajú středu kříže v grafu při pohybu myši (zmáčklé pravé tlačítko) - změna předdefinovaných barev LiPol článků - první trojice fialový, druhá trojice oranžový odstín) verze 1.1.1.124 15. června 2007, 12:02:47 - zrychlený skok na začátek a konec nazoomovaného grafu (tlačítka HOME, END) - progresivní posun zoomu pri drzeni tlacitka (LEFT, RIGHT) - seznam a aktivace oken v menu verze 1.1.1.110 10. června 2007, 17:31:25 - podpora nabíječek BC6 Dual Power - automatické počítání indexů os Y (u velkých kapacit a nízkých nedochází k přepisu hodnot přes sebe) - počet sledovaných LiPol článků je rozšířen na 6 (vhodné pro BC6 a balancer PB-6) - drobné, mě známé, chyby a nepřesnosti - je třeba uložit novou konfiguraci z menu "Nastavení-Konfigurace" verze 1.0.1.267 16. března 2007, 18:22:56 - volitelné přednastavení zobrazených křivek (Menu-Nastavení-Konfigurace) - detekce počtu LiPol článků při nastavení AUTO. Pouze ve spojení se zapnutým balancerem verze 1.0.1.251 25.října 2006, 18:50:53 - volitelná šířka čáry grafu (Menu-Nastavení-Konfigurace) verze 1.0.1.201 5. října 2006, 22:24:01 - odstraněna chyba, která způsobila, že se nespustilo načítání dat do okna. verze 1.0.1.198 2. října 2006, 21:42:40 - přidán údaj času do informačního průhledného okna - fix při čtení dat, kdy někdy došlo k přetečení paměti verze 1.0.1.118 18:47 10.9.2006 - oprava detekce procesu při vybíjení v cyklu - možnost zobrazení dotazu při ukončení programu verze 1.0.1.75 7:06 14.8.2006 - možnost zvětšit graf (zoom) - barevné zobrazení stupně nabití LiPol článků - odstraněna chyba ve vytížení procesoru verze ze dne 8.8.2006 23:44 - odstraněna chyba v zobrazení počtu nabíjených a vybíjených článků - dvoujazyčná verzeNa čem pracuji
- zatím nic nového
Fotografie nabíječky je převzata z propagačních materiálů firmy RCM Pelikán.