Power and cost issue with Bottango animation/animatronics class project

I’m in a bit of a pickle with this project. I have 2 class educators onboard so that’s cool and I prototyped a configuration where I was powering a servo from the 5V pin of an Arduino Nano which is derived from the USB 5V. Well, it was pointed out that while the spec for USB-A is 1.5A, PCs typically limit the output to 0.5A which is too low for reliable expectations of 30+ students/systems always working. The spec for the smallest SG90 servo is upto 0.250A(250mA) so there’s not much overhead and the teachers were talking about animating the eyes along with the mouth which would add a 2nd servo.

Background on how the project is projected to run:
The Gateway to Tech Media class will use Adobe products and AI to create a caricature of themselves and they will animate the mouth in Adobe, being all virtual. They will then print a copy of their design, scaled to a template/SVG I will provide. This includes them extracting the mouth/jaw section and possibly the eyes to be printed along with the full face and attach the printouts to a cardboard or plastic stiffening surface.

This will be done at the end of their 6 week class runtime so when they change classes to the Gateway to Tech Design class, they will take their printed designs with them. In the Gateway to Tech Design class we’ll create the animatronics systems and teach them Bottango so they can add voice and motion to their animatronic caricature along with getting an overview of the control system, motor/servo operations and power distribution.

I’ve designed a 3D printed mechanism which holds the servo and includes the sliding mouth/jaw mechanism and once the parts are finalized I’ll probably add a mounting system for the Arduino board.

My problem is that there’s not an inexpensive way to supply external power to the 5V servo motors in a way which middle school kids can work in a 6 week course where this section is only 2 weeks(5 class sessions).
I’ve not found any Arduino Uno or Arduino Nano setups which have a 5V power supply which can power both the Arduino and the servos. The shields all require the Arduino to be powered from USB and a separate power supply be used for the servos. Or the external power powers the Arduino via Vin but distribute the Arduino 5V regulated Vcc to the servos. And these added parts look like they would put the price over $20ea. Another project I had attemped which was an ESP32 car kit was $39 ea and that was too expensive to get funding for. So I’m shooting for half that this time and I have to I will fund some of it.

If it sparks any memory of something you’ve run across let me know. I was going for the Arduino Nano 5v since they are very inexpensive and thought I’d just need a Nano, some jumper wires and the servo to get the project operational and funded. Adding a shield and external power supply not only more than doubles the cost it also means every table needs not only power for their laptop but also a power strip for powering all of the servo power supplies with 6 students per table cluster.

All input welcome.

Quick thought:

… or something similar from aliexpress/amazon at a hopefully lower price (in bulk…)

Then get them to use a USB power pack (which kids may already have…) to power the project if the PC cannot supply power.

I also noted this:

You could maybe get the PCB made and send a ‘kit’ for this too at a reasonable cost??

But what I really wanted to say (apart from ‘sorry for multiple posts’) is that this is probably a non-issue in practice.

I think you would struggle to find a PC or laptop with only 500mA on the USB port these days, that’s the USB 1.1 standard. Are any machines without USB2 ports even able to run the Arduino toolchain these days? Maybe I’m just looking at this with a ‘western eye’ and assuming too much advancement everywhere.

The exception is if they are using PI’s or other SBC’s; they tend to already be marginal on power before you plug anything in.

If you need a ‘external power’ solution then I’d emphasise what I said above; rechargeable USB power packs fill this role nicely these days, and can be sourced very cheaply in bulk. Plus you can help justify the cost by pointing out that the kids will find the power pack useful after the project is done.

2 Likes

I’d found an Arduino Nano v3 shield for ~$2 ea which has a barrel jack to supply Vin on the Nano and for ~$10 I found a 7V 2A power supply. The regulator on the Nano is rated to 800mA, hearsay but I’m going with it, but without a heatsink 500mA is tops. Since I’ve 3D printed the animatronics mechanism there should be little drag on the servo so it’ll not be reaching high torque/draw.
I don’t know what the characteristics will be with both USB plugged in and the Vin so this could be a bust without special no-power USB cables.

I’ll also have to add a power strip for every student table cluster(6+) just to power the Arduino Nano Shield.

That sounds like a better solution. I’m sure the steppers will normally live well within the power budget unless they are both badly stalled, that 500mA limit is a continuous rating, I’m sure it will be fine. :smiley:

Having done a couple of stepper based projects; Try to make your code turn the steppers off (eg remove the pwm signal) when not in motion; these cheap steppers jitter badly; it’s noisy and wears them out. You can possibly use it as a coding example too; setting a timer to turn the stepper off in the future.

I don’t know what the characteristics will be with both USB plugged in and the Vin so this could be a bust without special no-power USB cables.

Assuming they clone the power supply correctly you are safe; the USB 5v line is isolated and protected in the official design. From the schematic:
image
simple, but safe.

1 Like

Currently there will be no coding since the Bottango(bottango.com) animatronics software has its own firmware to upload for realtime control from the computer. ie computer controlled animation over USB link. They have a wireless option in development over ESP32 and they have an option to generate code which can be uploaded to the Arduino for stand-alone operation. The stand-alone option is the only place where I could alter code to turn off servos when not changing position.

And thank you for checking the Arduino schematic. I will trace the circuit to verify.

1 Like

Nice! I hadn’t picked that up in the OP, they probably already do this, and anyway it’s a nicety, not a must-have. Keeping things simple, especially with educational stuff, is a plus point.

1 Like

Yes, exposure and reinforcement is the plan. For those who sign up for the class in their 8th year and show interest, I can then show them sensor sensing and coding using the same hardware.
And keeping the cost down has 2 benefits, it means I can get the school district to fund it and it means kids who are interested could get parental funding, or fund raising, for more parts.

2 Likes

If you want to do a pure USB powered, no external source of any kind. You provided the computers own power supply is as good as they advertise. You can cheat a little. Two USB cables. One for power and one to drive the controller. If needed the second can be a blind PD driver. That is, it will draw and supply a fix current or fixed voltage, depending on the model. Now you have power and data. The spare power can run to a simple transistor or mosfet gate with your ardunio putting along doing what m328p do acting as trigger for each gate. Best part is the entire rig is simple enough to show and tell the whole nine yards, save the PD device, that you can teach about in next years class.

It will be important to teach that While a MFG will advertise a particular power rating, often the reality doesn’t match, as the parts will over heat and blow long before supplying their max out. A fuse is often the most common part to blow on USB 2.0. However USB 3.0 uses both the 2.0 and 3.0 lanes. If the fuse on a 2.0 lane is blown on a 3.0 socket, there is no work around. But if a fuse is blown on the 3.0 lane, the 2.0 side will work just fine. Another interesting note is that Microsoft actually limits the power delivered by a device, even if it’s rated for it, even if the device connected has requested that power.
-We actually observed older drivers delivered full power, but more recent drivers did not. Microsoft pretends that never happened. We had no choice but to use power injectors that should not have been needed.

1 Like