Popular Post Chriull Posted January 12, 2020 Popular Post Share Posted January 12, 2020 (edited) 9 hours ago, travsformation said: ... The "issue" (if you can call it that) that I had was that voltage drops quickly when in motion, so from 34% battery at idle, I was often down to 21% battery / 70.8V when in motion, meaning that I was getting a lot of 35 km/h speed alarms. I guess my question is: with voltage fluctuating so drastically while riding, how representative is it in terms of actual battery level / safety margin? Hi - I opened a new topic to try to answer your question and not dillute @Seba's EUC World topic... Short answer: The reported battery voltage has, especially at higher burdens nothing to do with the state of charge (battery level) or safety margin. Long answer: A first approximation equivalent circuit diagram of a battery is a perfect voltage Source delivering a voltage U_0, then a series resistance (internal battery resistance) and than the outer connections of the battery at which a voltage U_batt can be measured (this is measured and reported by KS wheels). The internal resistance of a LiIon cell as used in EUCs is around 30-50 mOhm, lets say 40 mOhm. Then a 20s6p Battery pack has 40/1000 * 20/6 Ohm = 0.13 Ohm. The internal Battery Voltage U_0 is corresponding to the battery level (state of charge) - as by measuring the battery without load (U_batt == U_0) after ~30 min resting time shows quite perfectly the state of charge. The 30 min resting time for good accuracy are needed, because this abovementioned equivalent circuit diagram with just the internal resistance is only a first approximation. There exist better approximations with more resistances and capacitances, but i found nowhere some data in regard to our used LiIon cells ... So what to do with this knowledge. KS wheels measure U_batt and the battery current I_batt - so one can calculate easily U_0 = U_batt + I_batt * R_internal_battery. This leads to the following: The dark black line (fluctuating between ~60-65V) is the reported U_batt, the much more stable grey line in this range is U_0, calculated as described above. (green: Battery Current, blue: Speed) So with this value EUC World (and/or any other app) could show the battery capacity much more precise. Regarding Safety Margin: The max torque over speed motor limit diagram depends on U_0 and not U_batt! So this U_0 would be the right value to be used for voltage dependent alarms! This is because this max torque over speed limit line is determined by the following equivalent circuit diagram: Our battery, with the state of charge dependent perfect voltage source U_0, then the internal resistance of the battery then the coil resistance of the motor and then the motor generated voltage U_emf. (As this is for the max torque curve the motor driver with it's PWMing is of no interest. duty_cycle = 100%) So one has a voltage difference of (U_0 - U_emf) over a resistance of (R_internal_battery + R_coil). U_emf = k * speed. I = (U_0 - U_emf)/(R_internal_battery+R_coil). ... with the torque beeing proportional to I (M = k1 * I) By this one comes to the dropping limit line. For a speed == 0 is U_emf = 0V and I_max = U_0 / (R_internal_battery + R_coil) going down to a current of zero a the maximum no load speed. As one sees the maximum available torque is dependend on U_0 (and the speed), not on U_batt! But of course a high voltage sag caused by the high motor current is a sign that one gets nearer to the limit... Ps.: And by the better approximations this available U_0 (which determines the limit) goes a little bit down under burden and recovers once the burden releases... Edited January 12, 2020 by Chriull 6 Quote Link to comment Share on other sites More sharing options...
Aneta Posted January 13, 2020 Share Posted January 13, 2020 Brilliant (and very practical, too!) analysis! Quote Link to comment Share on other sites More sharing options...
Chriull Posted January 13, 2020 Author Share Posted January 13, 2020 Here a "better" graph - with the voltage scaled to the right y-axis, so the differences are better to be seen: In this log between ~ 15:01:30 and 15:02:30 the measured battery voltage ~60V (black line) results in a charge % shown of 50%, the U_0 of ~62V (grey line) would show the (better) 64% state of charge. But still after the burden the voltage settles at ~63V beeing ~70%. So here can nicely be seen the "direct voltage sag" by the current and internal resistance and the more realistic approximation with some voltage sag over time in burden situations which recovers again... 1 Quote Link to comment Share on other sites More sharing options...
Planemo Posted January 13, 2020 Share Posted January 13, 2020 So the short question is...should we ride with the EUC World 'realistic battery level' on or off? 1 Quote Link to comment Share on other sites More sharing options...
RockyTop Posted January 13, 2020 Share Posted January 13, 2020 @travsformation I hope you are studying this. There will be a test later. 3 Quote Link to comment Share on other sites More sharing options...
Chriull Posted January 13, 2020 Author Share Posted January 13, 2020 46 minutes ago, Planemo said: So the short question is...should we ride with the EUC World 'realistic battery level' on or off? That's different topic imho. Afaik EUC worlds realistic battery level is based on the lower charge per volt at lower cell voltages? So (or however else it works ) it's, as the name says more realistic. Just if one is already used to the old, original charge % and can cope with them it's better to stay with that setting. 1 Quote Link to comment Share on other sites More sharing options...
Planemo Posted January 13, 2020 Share Posted January 13, 2020 4 minutes ago, Chriull said: That's different topic imho. Afaik EUC worlds realistic battery level is based on the lower charge per volt at lower cell voltages? You lost me a bit there AFAIK having the option 'on' makes the app take into account the voltage under duress to provide the battery levels for the alarms/average readings. I thought this would relate to exactly what your posts mentioned above, apologies if it doesn't. Quote Link to comment Share on other sites More sharing options...
Chriull Posted January 13, 2020 Author Share Posted January 13, 2020 5 minutes ago, Planemo said: I thought this would relate to exactly what your posts mentioned above, apologies if it doesn't. Maybe @Seba implemented this? Could easily be that i did not get this detail. What i tried to explain above was an new charge % from @palachzzz, afair. So - if something new is implemented i take everything back and claim the opposite Quote Link to comment Share on other sites More sharing options...
Seba Posted January 13, 2020 Share Posted January 13, 2020 1 hour ago, Planemo said: So the short question is...should we ride with the EUC World 'realistic battery level' on or off? It's completely up to you. As @Chriull explained, battery voltage is only very roughly linked to state of charge (read: electricity remainin inside battery). It's nothing unusual that battery level displayed by app will swing within 10-15% range depending on your speed, acceleration etc. "Standard" algorithm is similar to what OEM apps show. "Optimized" is more like a fuel gauge in your car. When it will reach 0% you will still have some charge inside battery, but your EUC will start to throttle maximum speed. This is more conservative approach, but safer. Just try both modes and stay with the one that fit your preferences. 3 Quote Link to comment Share on other sites More sharing options...
Aneta Posted January 13, 2020 Share Posted January 13, 2020 Can battery's "burden fatigue" and recovery be somehow modeled, too? To produce a "batt % vs time" curve that always has a negative slope (provided there is no significant recharge from regen). Quote Link to comment Share on other sites More sharing options...
Chriull Posted January 13, 2020 Author Share Posted January 13, 2020 11 minutes ago, Aneta said: Can battery's "burden fatigue" and recovery be somehow modeled, too? Yes - there are more complex equivalent circuits for this (some capacitors and resistors). But no data - at least i did not find some. And for extensive measurements to get the data oneself it's not interesting enough - at least not for me by now. 11 minutes ago, Aneta said: To produce a "batt % vs time" curve that always has a negative slope (provided there is no significant recharge from regen). The "self regeneration" without any recharge produces positive slopes for LiIon cells. 1 Quote Link to comment Share on other sites More sharing options...
travsformation Posted January 14, 2020 Share Posted January 14, 2020 (edited) On 1/13/2020 at 12:08 AM, Chriull said: Hi - I opened a new topic to try to answer your question and not dillute @Seba's EUC World topic... Short answer: The reported battery voltage has, especially at higher burdens nothing to do with the state of charge (battery level) or safety margin. Thanks @Chriull!!! I appreciate you taking the time to answer, AND that you prevented me from further derailing the EUC World thread... Seeing your answer, I now understand why Seba has been pretending not to notice my question (which I've asked several times in the past too) So...after reading your explanation about 15 times, the way this works, if I understood correctly is.... forget it, who am I trying to fool...? But I'm going to give it my best shot anyway (no, @RockyTop, I'm not doing so for your entertainment) So basically, the value that most accurately reflects a stable, precise battery level is only representative of battery level, but not of the amount of torque available, and therefore, the safety margin...? (the latter depending on U_0, and fluctuating more depending on the load?) I guess I was hoping for some sort of "unified, all-encompassing" value applicable to both scenarios; a workaround so those momentary 10-15% drops in battery voltage (caused by acceleration, etc) aren't accounted for in terms of my speed alarms, so that the 20% battery I've set for my 40 km/h (battery-dependent) speed alarm doesn't fluctuate depending on whether I'm braking, coasting or accelerating. But now that I (think I) vaguely understand how this works, I gather that's not possible. So the question is: I've set my battery-dependent speed alarms so they warn me slightly before I get throttling tiltback: 40 km/h @ 20% battery / 32 km/h @ 15% battery I've based those figures on this graph: But...I'm using the "optimized" battery level algorithm, and am assuming the above graph was probably done based on OEM battery level algorithms. So my current settings are probably...over-over-kill...? So perhaps it should use: a) The alarms I currently have in place and the standard, OEM-style algorithm, or b) Optmized algorithm and slightly higher speed alarms? c) Stick with the over-kill so I absolutely guarantee I don't faceplant and loose the few brain cells I have left? @Seba, you see why it's important for there to be an acoustic warning 5-ish km/h before the wheel enforces speed throttling? So people with limited brain capacity such as myself don't implode while trying to figure out the best speed alarm settings / pester you and @Chriull with questions whose answers they have trouble understanding... 7 hours ago, Seba said: "Standard" algorithm is similar to what OEM apps show. "Optimized" is more like a fuel gauge in your car. When it will reach 0% you will still have some charge inside battery, but your EUC will start to throttle maximum speed. This is more conservative approach, but safer. Couldn't you provide a shorter and more simple to understand explanation, like @Chriull did? I'm just joking, I really appreciate you taking the time to give me the explanation you did, Chriull. Although a lot of it passed through my brain, short-circuited a few cells and came out the other side, no matter how hard I tried to understand, I'm still eager to learn, and if you've managed to make someone like me comprehend even a small portion of how this works, that's no small accomplishment BTW, Seba, the car analogy doesn't work for me. My car marks 3/4 of a tank when going downhill and turning left, and 1/4 when going uphill and turning right Yes, as you've probably guessed, it's neither a Tesla nor a car built during the last two decades (I think it cost me less than my 18XL) 8 hours ago, RockyTop said: @travsformation I hope you are studying this. There will be a test later. How did I do? I think Chriull is going to make me repeat the semester... Edited January 14, 2020 by travsformation 1 Quote Link to comment Share on other sites More sharing options...
RockyTop Posted January 14, 2020 Share Posted January 14, 2020 (edited) @travsformation I was still sharpening my #2 pencil. I wasn’t really for an essay. I am going to wait to see if you are correct then copy your answers. Edited January 14, 2020 by RockyTop 1 Quote Link to comment Share on other sites More sharing options...
travsformation Posted January 14, 2020 Share Posted January 14, 2020 10 minutes ago, RockyTop said: @travsformation I was still sharpening my #2 pencil. I wasn’t really for an essay. I am going to wait to see if you are correct then copy your answers. Wise move to wait before copying the wrong person's answers... Quote Link to comment Share on other sites More sharing options...
Chriull Posted January 14, 2020 Author Share Posted January 14, 2020 6 hours ago, travsformation said: Thanks @Chriull!!! I appreciate you taking the time to answer, AND that you prevented me from further derailing the EUC World thread... You're welcome But it's not the question that's dangerous, but the answer and were it could lead to... Quote So basically, the value that most accurately reflects a stable, precise battery level is only representative of battery level, but not of the amount of torque available, and therefore, the safety margin...? (the latter depending on U_0, and fluctuating more depending on the load?) The limit depends on the actual U_0. The actual motor current flowing (torque used) and actual speed determines how far (or near) one is from(to) this limit. (How much torque margin is left) The measured and shown battery voltage is some value depending on U_0 and the battery current and is of no importance for this topic. But of course it's connected to all this relevant values and the best we have. And the Firmware does the speed throttling based on this value! Quote So the question is: I've set my battery-dependent speed alarms so they warn me slightly before I get throttling tiltback: 40 km/h @ 20% battery / 32 km/h @ 15% battery That's perfect - you have an alarm that warns you before the tiltback kicks in. That the tiltback comes in some cases maybe some 10-20% too early is nothing we can change... Quote But...I'm using the "optimized" battery level algorithm, and am assuming the above graph was probably done based on OEM battery level algorithms. Yes - for sure. Speed throttling happens based on the charge % which is taken purely linear from battery voltage. Quote So my current settings are probably...over-over-kill...? The tilt back warning should be based on standard charge %, the optimized battery level is to get a better and more accurate number for the real state of charge of the battery. Quote So perhaps it should use: a) The alarms I currently have in place and the standard, OEM-style algorithm, or Yes! Quote b) Optmized algorithm and slightly higher speed alarms? Won't really work out, imho. But you could try. Should either not be very reliable as tiltback warning or give you "too much" safety margin... Or you just have to guess the right % values - depends upon how exactly the optimized algorithm works. Quote @Seba, you see why it's important for there to be an acoustic warning 5-ish km/h before the wheel enforces speed throttling? So people with limited brain capacity such as myself don't implode while trying to figure out the best speed alarm settings / pester you and @Chriull with questions whose answers they have trouble understanding... Couldn't you provide a shorter and more simple to understand explanation, like @Chriull did? From what i've got/followed from the "battery level" calculations: Standard (OEM) just takes max and min cell voltages (some 4.1x as max and 3.3/3.15/3.0V for min, depending on the wheel) and calculate linearly the percentage from the actual voltage. Since the first charge % by this calculation contain more energy than the last % afair ? @palachzzz ? changed this accordingly to some non linear calculation making the charge % more accurate (but unused for all the riders which already were used to interpret the original numbers) Imho @Seba also could have added some flattening over time to this for his "optimized battery level"? Maybe he also accounts, that at lower charge % (lower battery voltage) more current is taken for the same burden, as he mentioned. So for the same motor current = torque a battery is drained faster if almost empty as it would be if full... The difference should be like the voltage ratio 84V:66 V which are 27% difference! For the KS18XL going from 84V:60V the factor is 1.4! Quote How did I do? I think Chriull is going to make me repeat the semester... Hmm... Maybe we skip this course, just discuss the topic from time to time and forget the test ... slowly we reach slippery territory... 1 Quote Link to comment Share on other sites More sharing options...
Popular Post Seba Posted January 14, 2020 Popular Post Share Posted January 14, 2020 1 hour ago, Chriull said: Standard (OEM) just takes max and min cell voltages (some 4.1x as max and 3.3/3.15/3.0V for min, depending on the wheel) and calculate linearly the percentage from the actual voltage. Since the first charge % by this calculation contain more energy than the last % afair ? @palachzzz ? changed this accordingly to some non linear calculation making the charge % more accurate (but unused for all the riders which already were used to interpret the original numbers) Imho @Seba also could have added some flattening over time to this for his "optimized battery level"? EUC World uses technique called 2D mapping to generate battery level from voltage. I plan to implement 3D mapping (that will also use battery current), but this will take some time as I have to gather enough real-world data to create reliable value maps for each wheel. 4 Quote Link to comment Share on other sites More sharing options...
Chriull Posted January 14, 2020 Author Share Posted January 14, 2020 59 minutes ago, Seba said: EUC World uses technique called 2D mapping to generate battery level from voltage. Even better! 59 minutes ago, Seba said: Iplan to implement 3D mapping (that will also use battery current), but this will take some time as I have to gather enough real-world data to create reliable value maps for each wheel. Just GW should fail with this approach - still the ?last? wheel that does not report negative/regenerative currents. And motor currents... But maybe this mapping still provides better numbers? Quote Link to comment Share on other sites More sharing options...
Daley1 Posted January 15, 2020 Share Posted January 15, 2020 I,m going back to skool an get me an ed -u -cation in fisics and e-lec-tronics cause I,m sure I,m missing a few neurons from me frontal lobe tryin to understand this! 2 Quote Link to comment Share on other sites More sharing options...
travsformation Posted January 16, 2020 Share Posted January 16, 2020 (edited) On 1/14/2020 at 9:20 AM, Chriull said: You're welcome But it's not the question that's dangerous, but the answer and were it could lead to... I'm not even sure what you mean by that, so the only dangerous answer I can think of is the realization of my own stupidity On 1/14/2020 at 9:20 AM, Chriull said: That's perfect - you have an alarm that warns you before the tiltback kicks in. That the tiltback comes in some cases maybe some 10-20% too early is nothing we can change... On 1/14/2020 at 9:20 AM, Chriull said: The tilt back warning should be based on standard charge %, the optimized battery level is to get a better and more accurate number for the real state of charge of the battery. Thanks, Chriull! I was ultimately interested in the practical aspect, but also curious about the how and why, but since understanding how this works is clearly beyond me, I think I should stick to practical matters Hopefully, your technical explanations won't be wasted, as now that it's been engraved for posterity, perhaps it'll be useful to other users (who have more neurons than me) On 1/14/2020 at 9:20 AM, Chriull said: Or you just have to guess the right % values - depends upon how exactly the optimized algorithm works. Yeah, I think using OEM-style algorithm is much easier... On 1/14/2020 at 9:20 AM, Chriull said: Hmm... Maybe we skip this course, just discuss the topic from time to time and forget the test ... slowly we reach slippery territory... Slowly? Slippery? I'd already slid down the icy hill of U_0 at full speed and bashed my head against the wall of U_batt by the end of your 1st post... Thanks for sparing me the humiliation of the test; although I do think that since it was @RockyTop's idea for there to be a test in the first place, it would be an honorable move on his part to volunteer to take one himself Edited January 16, 2020 by travsformation 1 Quote Link to comment Share on other sites More sharing options...
RockyTop Posted January 16, 2020 Share Posted January 16, 2020 2 hours ago, travsformation said: Hopefully, your technical explanations won't be wasted, as now that it's been engraved for posterity, perhaps it'll be useful to other users (who have more neurons than me) Not waisted here. Even though I Adjust and repair motor drives, I am not used to having to worry about battery power. 2 hours ago, travsformation said: Thanks for sparing me the humiliation of the test; although I do think that since it was @RockyTop's idea for there to be a test in the first place, it would be an honorable move on his part to volunteer to take one himself WOW !! Look at the time! Got to Go!! 1 Quote Link to comment Share on other sites More sharing options...
Aneta Posted January 16, 2020 Share Posted January 16, 2020 What is 2D mapping? Quote Link to comment Share on other sites More sharing options...
Seba Posted January 16, 2020 Share Posted January 16, 2020 1 hour ago, Aneta said: What is 2D mapping? Speaking simply it's two-dimensional grid (usually array) containing values that addressed by [x][y]. For example if x will be voltage and y will be temperature, you can get temperature-compensated output value. If you add another dimension ([x][y][z]), you can account for load. Of course it's a little more complicates, as you have to use interpolation between nearest grid nodes, but general idea is as described above. 2 Quote Link to comment Share on other sites More sharing options...
Planemo Posted January 17, 2020 Share Posted January 17, 2020 Similar to mapping car ecu's then. Fuel is 1D, ignition is 2D, then pressure (turbo or supercharger) is 3D, then add air temp (4D) and independant cold start maps (5D) along with anti stall (6D) and anti lag (7D) and maybe to top it all off launch control (8D) and you up up to a world of pain, especially if starting from scratch. I have been there, I feel for you Seba. 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.