Author Topic: 50$ robot 9V and 4.8V battery holder  (Read 697 times)

0 Members and 1 Guest are viewing this topic.

Offline garriwilsonTopic starter

  • Supreme Robot
  • *****
  • Posts: 345
  • Helpful? 0
50$ robot 9V and 4.8V battery holder
« on: October 27, 2013, 12:43:43 PM »
Hey guys,

In the case of using a 4.8V battery holder for the 50$ robot to power the servos, why is it necessary to have a separate 9V battery powering the electronics? Since 4.8 V is already below 5V, is it a viable option to just use the battery pack for the electronics, without the voltage regulator? I feel like dissipating 4V of the 9V battery is a waste, so there is probably a reason, which is what I want to know.

Thanks in advance

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: 50$ robot 9V and 4.8V battery holder
« Reply #1 on: October 27, 2013, 12:57:34 PM »
Two reasons:

1) Microcontrollers are finicky about power quality, and the motors will generate EMI on the wiring back to the battery; if the battery is hooked straight to the microcontroller, that EMI will interfere.

2) a "4.8V" battery pack may be as high as 6.0V when fully charged (topped up) and as low as 3.6 when discharged. A microcontroller wants a steady voltage supply, which an unregulated battery will not be able to generate.

If you don't want the second battery, you might want a SEPIC or Boost/Buck switching voltage regulator to generate 5V out from 3V-6V in. Pololu has a few options. The cheapest is this:
http://www.pololu.com/catalog/product/2119


Offline garriwilsonTopic starter

  • Supreme Robot
  • *****
  • Posts: 345
  • Helpful? 0
Re: 50$ robot 9V and 4.8V battery holder
« Reply #2 on: October 27, 2013, 10:00:08 PM »
So EMI is not a problem when using a 6V battery pack?

Offline johnwarfin

  • Full Member
  • ***
  • Posts: 120
  • Helpful? 3
Re: 50$ robot 9V and 4.8V battery holder
« Reply #3 on: October 28, 2013, 06:14:56 AM »
i found a 3cell holder (3.6v nominal, 4.2v max) works perfectly with no regulators at all required. a 10ohm/.1mfd rc between motor circuit and mcu fixes any noise problems.

btw technically its not emi but simple noise spikes on the power rail that cause mcu reset.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: 50$ robot 9V and 4.8V battery holder
« Reply #4 on: October 28, 2013, 09:33:02 AM »
Right, so you're using a filter (looks like RL to me, not RC) instead of a regulator, which is okay, if you can stand the voltage drop over the resistor. For anything bigger than very small motors, that's starting to become hard to tolerate. (You can also build an LC filter for a little better performance, for more cost.)

AVR microcontrollers only want to run at 8 MHz when fed less than 4.5V. They may "run" faster, but are not guaranteed by the manufacturer to actually keep doing that. The built-in clock (if you don't use an external crystal) runs at 8 MHz, so that's a good match for 3 volt systems.

The reason to use a regulator is that it not only makes sure you have the accurate voltage you need for stable operation, but it also serves as a very good spike filter. Most regulators are in the 80dB spike rejection range, and the worst I've seen was still a solid 60dB of spike rejection (which means roughly 1/1000th of a voltage spike gets through.)

Offline johnwarfin

  • Full Member
  • ***
  • Posts: 120
  • Helpful? 3
Re: 50$ robot 9V and 4.8V battery holder
« Reply #5 on: October 30, 2013, 04:07:19 PM »
actually rc (10ohm/.1-10uf) worked just as well as rl in all my rc and robot projects, including 6 motor hexacopter. and 1% the cost. mcu current is typically only a couple ma so voltage drop is in the microvolt range. even with gyro, accelerometer, compass, gps, the drop was acceptable. in fact its quite common these days for the led to draw more than the mcu circuit.

also note that avr chips work fine on 3.3v @16mhz even though not guaranteed. certainly for hobby use. in fact the new 3rd generation promini boards are jumper selectable for 3.3v@16mhz.

you are definitely right about regulators providing more noise immunity. and also obviously allow much bigger input voltages. but for my version of the $50 robot (capable of detecting and sorting m&ms by color) 3.6v/3cell was more than adequate. because of this i was able to cut component count and build time down to 1/3 what it was. and the motors last about 4x longer when tested to destruction.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: 50$ robot 9V and 4.8V battery holder
« Reply #6 on: October 31, 2013, 10:47:06 AM »
Quote
avr chips work fine on 3.3v @16mhz even though not guaranteed


There are already so many things that can go wrong with a robot project; why recommend that people add another thing to go wrong and be unsure about?

Sure, if you're building throttle and brake control systems for Toyota, you apparently have significant latitude in cutting corners, but these are robots we're talking about! Spec them wrong and they'll rise up, rebel, and take over the world!

Joking aside, I prefer to actually try to practice and teach good engineering practice, to reduce the number of things that can go wrong. (There's enough of those already...)


Offline johnwarfin

  • Full Member
  • ***
  • Posts: 120
  • Helpful? 3
Re: 50$ robot 9V and 4.8V battery holder
« Reply #7 on: October 31, 2013, 01:17:24 PM »
There are already so many things that can go wrong with a robot project; why recommend that people add another thing to go wrong and be unsure about?

because literally thousands (maybe millions) are running at 16mhz or 20mhz with not a single documented case of failure. if there ever was one it would be front page news on forums like arduino.cc and avrfreaks. the only reason companies like toyota dont is more of a liabilty issue than technical reality. lawyers crouching on the sidelnes waiting to pounce.

i recently had a similar discussion with a fellow who claimed eeprom fails at 3.3v. after much back and forth turned out he was failing to program the eesave fuse bit. of course we are all responsible for our own decisions. for me,  in this case, benefits far outweigh risks.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: 50$ robot 9V and 4.8V battery holder
« Reply #8 on: October 31, 2013, 08:12:43 PM »
Microprocessors are a very competitive business.

If Atmel were sure that their chips would work at 16 MHz at 3.3V, they would list them as working at 16 MHz at 3.3V, and get more design wins, and sell more chips.

The fact that they do not list them as running at 16 MHz at 3.3V means that they know something that you don't: there are enough cases of failure at 3.3V/16 MHz to only specify them for 5.0V.

For a hobby project? If you feel it's worth taking the risk for your project, feel free, as you are already aware of the trade-offs.
For a beginner? Stay as far within the lines as possible, because there are going to be enough other things to worry about to also be pushing the envelope on the parts you're using.


Offline johnwarfin

  • Full Member
  • ***
  • Posts: 120
  • Helpful? 3
Re: 50$ robot 9V and 4.8V battery holder
« Reply #9 on: November 01, 2013, 10:39:21 AM »
they know something that you don't: there are enough cases of failure at 3.3V/16 MHz to only specify them for 5.0V.

fyi 5v is not atmels limit for 16mhz. according to their charts 4.1v is common and as low as 3.9v for a few part numbers.

anyway ive had this discussion many times and even offered $100 reward for the capture of a single example of failure at 3.3v. out of many claiming the reward not one ever showed up in my mail. "oh.. its not worth it to go through all that trouble". 46 cents and and envelope. lol!

maybe you heard of mfg guardbanding and the principle of "cya"? my theory is atmel specs those few millivolts higher than 3.3v for these reasons and maybe also to avoid degrading business of their xmega and arm product line. product differentiaton. and as mentioned on the user end company men avoid it for insurance/liabilty issues.

but everybody must weigh risk against reward and we know where i came up here. ymmv. i see many cases of overdesign and "fuss" in the hobby world. not always a bad thing because it does keep us out of the bars and chasing loose wimmen. lol!

Offline waltr

  • Supreme Robot
  • *****
  • Posts: 1,943
  • Helpful? 98
Re: 50$ robot 9V and 4.8V battery holder
« Reply #10 on: November 01, 2013, 03:23:34 PM »
What about over a temperature range?
That should be part of the 16MHz/4.1V spec?
and is why many report that it works fine at 3.3V.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: 50$ robot 9V and 4.8V battery holder
« Reply #11 on: November 01, 2013, 04:42:34 PM »
Quote
why many report that it works fine at 3.3V

Because when you don't load the device, and use it in "nice" conditions, it probably works just fine.

Not everyone uses these parts in 75 degree temperatures, with 200 mA flowing out the GPIO pins, all peripherals turned on, and strict timing requirements.
If you do *none* of those things, chances are you'll never see a failure at 3.3V.

Offline johnwarfin

  • Full Member
  • ***
  • Posts: 120
  • Helpful? 3
Re: 50$ robot 9V and 4.8V battery holder
« Reply #12 on: November 02, 2013, 06:12:18 AM »
true. but hobbyists are unlikey to survive more than a few seconds, let alone play with robots, at -55C or +125C. at anything close to room temp 3.3v at 16mhz works out to be way safe. it would be rare to draw the max 200ma too. most io would be in the microamp range. only possible exception might be an led at a couple ma. generally if a chip gets hot its due to overvoltage or latchup and indicates bigger problems than current.

btw as part of my day job we did test a few tubes from several different lots at -40 to +85 to see just how far down they go. instruction execution failures (barrel shifter) began at around 1.7v and there were some issues with eeprom. one can make pretty reliable retention predictions by elevating frequency and temperature. ie 22mhz at 100deg so we dont really have to wait the 100 years atmel specs. bottom line is you can get away with a lot more if ee or self programming is not involved.

anyway its fun to make believe we are involved with medical or other mission critical applications and it cant hurt. for some the motto is "better safe than sorry". for me i get great pleasure accomplishing the most with the least. at hobby level anyway. one thing we all agree on is ymmv.

 


Get Your Ad Here

data_list