Re: cheali charger - accurate Vout

328 views
Skip to first unread message

Paweł Si

unread,
Jan 31, 2014, 8:53:29 AM1/31/14
to cheali-...@googlegroups.com, Vladimír Perešíni, Nagy Jozsef



2014-01-31 Vladimír Perešíni <v.per...@gmail.com>

 

Pekný deň.

 

Keď som našiel článok aj s odkazmi na rcmodely.cevaro.sk cheali nabíjač, hneď som do toho pustil tiež. Mám HC EcoSix 50W 5A - to je clon iMax resp. turnigy...

Cením si Vašu prácu - ale narazil som na problém.

Pokiaľ potrebujem nabíjať 1 článok NiMh, Lipol - meranie napätia napriek kalibrácii nie je presné - je to dôsledok toho, že v BAT- je zaradený odpor na snímanie prúdu. A tak veľkosť meraného napätia je závislá od veľkosti prúdu pri nabíjaní alebo vybíjaní. Môžete mi naznačiť úpravu do programu, kde by sa Vout=Vout+-Iout*R (0,05ohm) ?

 


Trochę podobny do języka polskiego ;)

Translator...

 

Have a nice day.

 

When I found an article and tells the CHEAL charger on rcmodely.cevaro.sk, I immediately set to it also. I have a HC EcoSix 50W 5A - it's clone iMax respectively. Turnigy ...

I appreciate your work - but I encountered a problem.

If you need to charge 1 article NiMh, Lipoly wihout balancer - despite calibration voltage measurement is not accurate - it is a consequence of the BAT-is ranked resistor current sensing. So the size of the measured voltage is dependent on the size of current when charging or discharging. Can you suggest modification to the program, which would be Vout = Vout * Iout +-R (0.05 ohm)?

  

(R46||R47 + VT8)

 

Prúd sa meria ADC3

Ubat-  bez multiplexu  ADC1

Ubat- s multiplexom ADC6/Y0

Ubat+ ADC0

 

Current is measured ADC3

Ubat-without multiplex ADC1

Ubat-with multiplex ADC6/Y0

Ubat + ADC0

 

Môžete sa na to pozrieť a poradiť mi?

You can look at it and advise me?

 

Ďakujem - thank you

 

Vladimír Perešíni  alias vperhing J

 

Banská Bystrica, Slovakia


 

Of course you're right, there is a small offset in the battery voltage reading,
I have not noticed this before.

I looked at the chargers schematics and it seems to me that there might be a better solution:
Vout = ADC0-ADC1
but I'm not sure if the voltage dividers on ADC0 and ADC1 are appropriate,
but it's definitely worth a try, 
I'm currently a little busy so if You want to try It out
You should change "imaxB6-generic/adc.cpp" to (I have not tested this ;) ):

diff --git a/src/hardware/imaxB6-generic/adc.cpp b/src/hardware/imaxB6-generic/adc.cpp
index 51ecb52..57691f4 100644
--- a/src/hardware/imaxB6-generic/adc.cpp
+++ b/src/hardware/imaxB6-generic/adc.cpp
@@ -74,7 +74,7 @@ const adc_correlation order_analogInputs_on[] PROGMEM = {
     {MADDR_V_BALANSER1,             MUX0_Z_A_PIN,           AnalogInputs::Vb1_pin,         false, true},
     {-1,                            SMPS_CURRENT_PIN,       AnalogInputs::Ismps,           true,  false},
     {MADDR_V_BALANSER2,             MUX0_Z_A_PIN,           AnalogInputs::Vb2_pin,         false, true},
-    {-1,                            OUTPUT_VOLATAGE_PIN,    AnalogInputs::Vout ,           false, false},
+    {-1,                            16,                     AnalogInputs::Vout,            false, false},
     {MADDR_V_BALANSER6,             MUX0_Z_A_PIN,           AnalogInputs::Vb6_pin,         false, false},
     {-1,                            SMPS_CURRENT_PIN,       AnalogInputs::Ismps,           true,  false},
     {MADDR_V_BALANSER5,             MUX0_Z_A_PIN,           AnalogInputs::Vb5_pin,         false, false},


Also you need to be aware that the voltage reading  on the main leads
has a 30mV resolution so You won't gain too much.
Of course you can always connect the battery additionally to the first 2 pins on the balance port
where the resolution is 5mV. (the voltage should be < 4.20V)

Best Regards,
Paweł

ps.
Please always write to cheali-...@googlegroups.com



Nagy Jozsef

unread,
Jan 31, 2014, 11:05:59 AM1/31/14
to Vladimir Peresini, Paweł Si, cheali-...@googlegroups.com
Thanx Pawel.



2014-01-31 Vladimir Peresini <v.per...@gmail.com>:
Thank you. 'll try

 

Vladimír Perešíni  alias vpershing J

 

Banská Bystrica, Slovakia


 

Paweł Si

unread,
Jan 31, 2014, 2:27:27 PM1/31/14
to Nagy Jozsef, Vladimir Peresini, cheali-...@googlegroups.com



2014-01-31 Nagy Jozsef <nagy.jo...@gmail.com>:
Thanx Pawel.



2014-01-31 Vladimir Peresini <v.per...@gmail.com>:

Also you need to be aware that the voltage reading  on the main leads
has a 30mV resolution so You won't gain too much.
Of course you can always connect the battery additionally to the first 2 pins on the balance port
where the resolution is 5mV. (the voltage should be < 4.20V)

Best Regards,
Paweł
 

maybe we could also use the differential amplifier with Gain = 10x for small voltages,

Message has been deleted

Nagy Jozsef

unread,
Feb 25, 2014, 5:08:49 AM2/25/14
to cheali-...@googlegroups.com, Nagy Jozsef, Vladimir Peresini
Hi PaWel.


This modification need the Gtpower version too?
adc.cpp :54
-    {-1,                    OUTPUT_VOLATAGE_PIN,    AnalogInputs::Vout,             0}, 
+   {-1,                    BALANCER6_LOAD_PIN,    AnalogInputs::Vout,             0},

thx
Jozsef

Paweł Si

unread,
Feb 25, 2014, 4:25:02 PM2/25/14
to cheali-...@googlegroups.com
2014-02-25 11:08 GMT+01:00 Nagy Jozsef <nagy.jo...@gmail.com>:
Hi PaWel.


This modification need the Gtpower version too?
adc.cpp :54
-    {-1,                    OUTPUT_VOLATAGE_PIN,    AnalogInputs::Vout,             0}, 
+   {-1,                    BALANCER6_LOAD_PIN,    AnalogInputs::Vout,             0},



the change should be more like this:
-    {-1,                            OUTPUT_VOLATAGE_PIN,    AnalogInputs::Vout ,           0},
+    {-1,                            16,                     AnalogInputs::Vout,            0},
 
But I'm still not sure if this works.

If you can wait a little more,
I'm planing to rewrite the adc.cpp file, with this change included

Best Regards
Paweł

Paweł Si

unread,
Mar 23, 2014, 2:17:51 PM3/23/14
to cheali-...@googlegroups.com
I've added "Vout" measurement method suggested by Vladimír (in last commit), now:
 "Vout" = "Vout_plus_pin" - "Vout_minus_pin"
 (Vout = ADC0 - ADC1)

Voltages on these two pins can be also calibrated independently:
1. when a standard calibration is performed (in "options"->"calibrate"->"voltage")
   the "Vout_plus_pin" and "Vout_minus_pin" voltages are calibrated with the same values (displayed as "Vout")
   ("Vout_plus_pin" calibration is copied into "Vout_minus_pin") 
   - This should be good enough for normal use.
2. If a better result is required (specially for "Vout_minus_pin") one can do a independent calibration
   in "options"->"calibration"->"expert DANGER!".
   a) go to "options"->"calibration"->"expert DANGER!"
   b) reverse the battery connection (to be extra save use an R~1K in series with the battery)
   c) set the measured voltage in "Vminus:"
      - the voltage should be measured between: 
       "Bat-" (battery black connector) and "GND" (PCB ground - I'm using the GND from "usbasp") 

Best Regards
Paweł

Reply all
Reply to author
Forward
0 new messages