The BattVolts line was intended to provide a warning before the battery reach it's cut off around 3.2 volts (it can go lower, but that's when the volt monitor switch cuts out) and not so much of a running voltage monitor - but it certainly could be used for that. I can't remember why R55 was never populated. With all the time I spent going over every detail of the Ringo hardware I'm can't remember the reasoning for this.
Because the Vcc to the processor is 3.5v, this battery voltage is measured in reference to the 3.5. If it's above, it's going to read high numbers. The R55 pad was added to bring this down as you suggest, but I see in all the schematics that it is listed as non-populated. If a resistor is added for R55 to create a divider off the 27k R50, it would be readable. Any divider that would bring 4.2 volts down to below 3.5 volts and you would be able to have a useful reading.
I'm glad you pointed this out. Don't know how we missed this all this time.
Thanks,
-Kevin
Trying to read battery level
-
- Posts: 5
- Joined: Sat May 21, 2016 8:09 pm [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
Trying to read battery level
I hear and I forget. I see and I remember. I do and I understand (Confucius)
-
- Posts: 5
- Joined: Sat May 21, 2016 8:09 pm [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
Re: Trying to read battery level
Hi Kevin!
Thank you very much for your answer and info; i've add a 47KOhm on R55 and it works. But first code shared here was wrong...
I had a big mistake attempting to set MotorCapBattVolts to 1 (line 2 of code); MotorCapsBattVolts defines the pin number of ADC!! (0 for Arduino A0)
Source_Select is line to control U8 digital switch; yes...looking schematics Is easy to understand...
Now, I can measure Batt voltage; simple battery indicator is easy to implement. When I have some more time to test battery levels, I will share code
Please Kevin, let me tell you something: scanning the electronic scheme I was pleasantly surprised how tremendously well thought are electronic design.
During KS campaign I did not think it was so well made.
Congratulations
Best regards...
Thank you very much for your answer and info; i've add a 47KOhm on R55 and it works. But first code shared here was wrong...
I had a big mistake attempting to set MotorCapBattVolts to 1 (line 2 of code); MotorCapsBattVolts defines the pin number of ADC!! (0 for Arduino A0)
Source_Select is line to control U8 digital switch; yes...looking schematics Is easy to understand...
Now, I can measure Batt voltage; simple battery indicator is easy to implement. When I have some more time to test battery levels, I will share code
Please Kevin, let me tell you something: scanning the electronic scheme I was pleasantly surprised how tremendously well thought are electronic design.
During KS campaign I did not think it was so well made.
Congratulations
Best regards...
I hear and I forget. I see and I remember. I do and I understand (Confucius)
-
- Posts: 5
- Joined: Sat May 21, 2016 8:09 pm [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
Re: Trying to read battery level
I hear and I forget. I see and I remember. I do and I understand (Confucius)
-
- Posts: 4
- Joined: Tue Sep 11, 2018 3:44 pm
- Location: Czech
- Contact:
Trying to read battery level
Hi,
which are the units that apeears on the .txt file in the channel of the battery? I mean, the column that represents the battery level channel 6 in my case is a number around 580 or 570 that represents the battery level of charge, isnt? How can i translate this number into voltage units?
Thanks
which are the units that apeears on the .txt file in the channel of the battery? I mean, the column that represents the battery level channel 6 in my case is a number around 580 or 570 that represents the battery level of charge, isnt? How can i translate this number into voltage units?
Thanks
[url="http://hd-wallpapersfd.info/category/fantasy/"]hd-wallpapersfd.info[/url]
-
- Posts: 180
- Joined: Tue Jul 28, 2015 12:56 am [phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1266: count(): Parameter must be an array or an object that implements Countable
Re: Trying to read battery level
I can't remember the units of the ADC, it should be whatever is standard for Arduino. The processor runs on 3.5 volts, so readings will be referenced from there. Going from memory here, I think max range of that ADC is 1024 at 3.5 volts. The main reason for that battery read line is to tell when battery voltage begins to drop below 3.5 volts. Normally the battery is 3.7 to 4.2, which is above the readable range.
On the original Ringo1 robot (the one with the ribbon cable to the programmer) you need to set Source_Select to HIGH, otherwise it is going to read the voltage of the motor capacitors (which after we actually made the robots we realized we didn't need because it is generally stable). This Source_Select is the same line that selects between the ambient light sensors and the bottom light sensors - so just set the robot to read the ambient sensors, then you can read the ADC on this channel (ADC0) to read the battery voltage.
On the Ringo2 robot, we got rid of the source select for the battery/motor. It now always reads the battery, so there's no need to care what the Source_Select is set to, since we don't need the Motor_Cap reading for anything.
Let me know if that helps.
Thanks,
-Kevin
On the original Ringo1 robot (the one with the ribbon cable to the programmer) you need to set Source_Select to HIGH, otherwise it is going to read the voltage of the motor capacitors (which after we actually made the robots we realized we didn't need because it is generally stable). This Source_Select is the same line that selects between the ambient light sensors and the bottom light sensors - so just set the robot to read the ambient sensors, then you can read the ADC on this channel (ADC0) to read the battery voltage.
On the Ringo2 robot, we got rid of the source select for the battery/motor. It now always reads the battery, so there's no need to care what the Source_Select is set to, since we don't need the Motor_Cap reading for anything.
Let me know if that helps.
Thanks,
-Kevin
Who is online
Users browsing this forum: No registered users and 0 guests