# Re: Voltage vs Torque

The brain does no voltage regulation from the battery to the motor, it just varies the pulse width to increase/decrease speed. And this is a good thing. I hope that they won’t implement some kind of voltage clamp, because it would just limit everyone for no good reason.

Right now you can (if you want) power your robot with a 7.2v battery to get the “standard” speed, you can throw an 8.4v battery in and get a little faster or you could even use the 9.6v battery pack to get even crazier speed.

I believe that the new vex brains will have a couple of dc speed controller ports built in (as well as the current pwm), but this of course is not the same thing and not what you are talking about.

The motors do not contain anything to keep them going at the same speed. I believe people refer to that as motors with built in PID, where you tell the motor “go this speed” and it then uses what ever power it needs. Instead, vex sends it what ever power you request and the motors move at what ever speed. You could use an encoder and programming to make your own system that does this though.

I think Lego Mindstorms behave sort of like you describe.

There must be two kinds of people in the world - I hope they do so that I can predict in advance how the motor will behave, regardless of the state of my battery (within common sense limits).

If I were building an RC car, that might be attractive; and I understand that some Vex customers enjoy doing that sort of thing. However, I and many Vex customers build autonomous and teleoperated machines/robots. For me predictability is a very good thing.

Thanks for the info, but read again, a feedback loop controlling speed is exactly what I did not describe. I instead asked about (and suggested) a fairly simple open-loop method of decoupling motor speeds (for a given PWM command) from battery voltage (when the battery’s open circuit voltage is somewhere above pitiful and the current drain isn’t pulling the battery voltage down below pitiful). That method would be limiting the max Voltage the motor “sees” to some value on the lower end of what a battery should sustain when it has maybe 25% or more of its charge left.

Blake

What if Vex makes limited motors and non-limited motors? The limited motors would be like Blake described and the non-limited would have a higher voltage rating and it would be for the power expander. You can plug in a nine volt battery and have presice and fast motors. Say you wanted a drag racing robot that takes pictures of what it sees when it’s driving. Plug the 4 drive motors in to the power expander with a nine volt battery and the 4 limited camera opperating motors into the MCU.

From what it sounds like, all Vex would need to do would be:

1. To make VEX Extension Cables with a 6V voltage regulator in the center.
2. To allow people to make their own for competition. Since voltage regulators cost about \$1 each, I don’t think there’s a major issue here.

I don’t see why it’s worth changing the motor.

*I’m guessing at 6V. The main reason I’m going with a 6V regulator is that they’re easy enough to purchase.

That isn’t a bad idea, just throw a 6v voltage regulator onto a short extension cable and then you’ll have what you want, right? And as a bonus, it is cheap, easy to do and completely reversible (and doesn’t force it on everyone else). Motors that always go the same (slow) speed no matter what voltage they are sent.

Can you get voltage regulators that can be set at different values? Say 4v - 7v in 1v incriments or something? It’d be kind of neat to have a 4v, 5v, 6v and perhaps a 3v or 7v as well. If it could be one device with a knob/button to select, that’d be neat.

Why wouldn’t motors that control their speed using sensors achieve the same goal? You tell it to go X speed and it uses what ever power it has available to achieve that? Are there cases where that isn’t as desirable as sending a known max voltage?

Actually, I think there are three. People like you and I that feel strongly one way or another (who probably represent a small minority) and people that wouldn’t even notice or care

So the problem with both of these statements is that depending on voltage and speed of your motors is not as reliable as using feedback. I personally feel that writing a robot program that says “turn motor 1 on for 5 seconds” and depending on that for reliability isn’t great programming.

Lets say you want to move an arm in a predictable, repeatable way. You tell your motor to turn on for 5 seconds because you’ve measured it and it goes 30 degrees in this time. But now you have a load on the arm and it doesn’t actually go 30 degrees, just 15.

The same can be said of pretty much any situation where you are using a time burst to achieve repeatability. Sure, there are going to be some situations where this works great. Anytime your load never changes, for example.

But you can achieve much much higher reliability using simple feed back. On an arm, throw a potentiameter on there and you can move to position X at what ever speed you want and still reliability get there.

Throw a rotation counter on a wheel and you can move what ever desired distance you want (assuming no slippage) in a reliable way.

Throw an accelerameter on and you can move exactly as much as you want even with slippage.

What sort of problems have you run into that this would solve? NiCD rechargeable batteries are pretty good about putting out constant voltages. They are a bit high right off the charger, but until they are close to dead they have a pretty stable voltage curve. And Vex is hardly taxing on these NiCD. A 2000mah battery should last an hour or two in many “hobby” robots, and even in competition robots I bet they last 30-60 minutes.

Edit: Also, I guess your post was a product suggestion and not a question right? I didn’t realize that when I was replying. Obviously you know how it currently works

So in conclusion, blah blah blah, I think the above idea of an inline voltage regulator is an excellent one and I’ll probably make 1 or 2 myself, just to toy with.

The advantage of built-in voltage regulation is that it is more reliable than the current state of affairs (and it would help limit the differences in teams’ performance that are due to finances).

The disadvantage of using built-in feedback is that it is probably way more expensive than the voltage regulation.

I think we are pretty close to agreeing on this subject/suggestion; but we might not be able to bridge that last little gap.

It isn’t like they can go back and change my hardware, so I guess I would be okay with them doing it. That said, they have already got the new brains ready to go so I am fairly certain they wouldn’t implement this in the up coming devices.

I imagine in-line voltage regulators would be just as reliable as being built into the brain itself and it would still allow the flexibility of not using it.

Where is the team performance problem due to financial restraints? Is it that some teams can afford to have 2-3 sets of batteries and others only have 1?

An in-line doo-dad would be OK with me, if everyone in tournaments were using it.

More like the difference between having 2-3 per robot and 6-8 (or more) per robot. It’s just one more cost that low-budget teams have to face. You can eat a metaphiorical elephant one bite at a time, and you can hurt low-budget teams one \$20 battery at a time.

Also, if during competitions you constantly stick the same handful of barely discharged batteries on a charger to get them back up above 8 V for the 3 minutes of a match, then I believe that you are probably dramatically reducing the the battery’s useful capacity/lifespan. That is a hidden cost that sneaks up on you as you find you have to replace batteries because they won’t last long enough to do you much good when you are off the competition field.

There seems to be two issues here:

1. Predictability
2. Disadvantages of a low-budget team

The problem with #2 is that solutions for it in this thread seem counter-productive:

Any low-budget team forced to buy in-line doo-dads for every one of their motors, or worse, all new motors or an all new microcontroller is going to be discouraged even more. I’d hate to see money that was going to be spent on Omni Directional wheels spent on more cables required just to participate.

This is simply one of those cases where I think the cure may be worse than the original problem. While it’s true that budget is an issue, we also recognize that driver skill plays a large part and even Stinky* can beat MIT’s sponsored best.

As it is now the low budget teams will already have to afford to upgrade to vexnet. I don’t want them to have to pay to downgrade their motors as well.

I’m guessing that the season after next would be the earliest something like this could become a mandatory competition item and/or that any new motors might have been altered.

Also one device per robot that plugs into the microcontroller and regulates all 8 motors ports at the same time (8 regulators) could be the best compromise for how to implement it.

On the other hand, one device that sits in series with the battery (or 2-3 batteries for the hobbyist who wants more than one battery in parallel) might be an even better compromise?

Finally - Omni-wheels are fun; but so is understanding how electric motors work; and understanding that low-defect manufacturing processes (such as manufacturing a high score) require controlling/eliminating sources of variation/uncertainty, before applying any driver’s skills (humans are expensive), can be a rather valuable career skill.

I’m not saying you are wrong, but I do think there are plenty valid counter-arguments to be weighed before IFI makes a decision (if they haven’t already :)).

While I agree with this 100%, I don’t think integrating an mandatory object into as locked system teaches it. If anything I think it removes the option to learn it.

For example, if I wanted to teach students to understand how electric motors worked, especially electric gearhead motors, Vex motors would be the last motors I used, simply because of competition rule <R15>a. In all honesty, I’d try to find some used/cheap servo motors and have the students disassemble them, study and modify the gearheads, make measurements based on voltage changes or changes to the signal, and, I would expect, ruin the motor by the end of the course. The last thing I want to do is ruin a motor the team needs to compete with. I’d rather they learned on some other motors acquired through donations or from a surplus outlet.

If you wanted to do this with a vex motor you could modify an extension cable as described above, and measure the performance of a motor under load throughout the life of a battery, from fully charged to almost dead with and without the modified extension. But to show things another way, if that modification was already integrated into the motor or controller the same experiment would be difficult to perform using the vex motors or controllers. The learning opportunity would be lost.

It’s my belief that open systems are better for learning and better for advancement. The few sections where vex systems are “closed” I consider a lost opportunity. The few sections where consumer sections are open (DD-WRT on routers, CHDK on Canon Camers, etc), I consider a wonderful opportunity. Making such a change mandatory for competition would be a loss to the Vex system in my opinion.

Well - Imagine this situation and see if it offers enough teaching moments.

Student: When we prepare for or go to competitions, why do we insert this one item between our battery and the microcontroller / power expander? The Vex machines we build seem to work just fine without it.

Teacher/mentor/coach: We and the other competitors use it so that our motors will turn at the same speed regardless of whether we use one battery for several matches or we use a fresh one for every match.

This means that we don’t have to spend money on extra batteries if we don’t want to, and it makes our machine’s performance repeatable. Oh by the way, companies that want to produce high quality products prize repeatable processes, and especially prize the employees who know how to create them.

Here, let’s set up an experiment to see how the motors perform with and without the voltage regulator connected to the battery.

Blake

Granted, I work with scouts as opposed to students in a class, but that doesn’t sound remotely believable to me. I simply don’t see them asking the question “Why?” because the self evident answer is “Because the rules say we have to do this.”.

As an example of this, my gut feeling is that few students actually understand (or care) what the third wire going to a Vex motor actually does or how it works. Clearly they’ve been running three wires to DC motors and I’m betting most of them have figured out that two of them are power and ground yet how many understand why that third wire is even there on a Vex gearhead motor? I’m betting there are a few who can figure out what the third wire does on a servo, but do they understand what it’s doing on Vex motors? (And there are plenty of gearhead motors out there without that third wire, apparently including the new high torque motors from Vex.)

So now we’re at three reasons for the same suggested device:

1. Predictability
2. Low Budget teams
3. Teachable moments

I see #1 as a reason to allow people to make/purchase such items, but not a reason to make it mandatory. To make it mandatory you’ve suggested that paying for another item is a good thing for teams with a restricted budget and that forcing students to use the item will create a teachable moment.

I’m supportive of the product being available, but I don’t see any benefit in making it mandatory for competition.

Note: I find it interesting when I realize that looking at photos from Dallas that it will be possible to have two high-torque servos on your robot IF you build them yourself out of the new motors and existing Vex products. I’m wondering which team will be the first to take advantage of this and how they’ll use them.

If the doo-dad is both rugged enough to last for several seasons, and is cheaper than buying and replacing batteries, then the economic argument might tilt in the direction of a one-time purchase of a single regulator for each competition robot.

At least

Using a potentiometer and a geared-down motor, we had high-torque servos on driving the arms on four of our five robots at Dallas. The new motors would just make them “higher-strength” servos.

Regulating voltage to motors to insure consistent RPM seems kind of like steering the fire engine from the wheel in the back instead of the big steering wheel in the front. What we want to control here is shaft RPM for a given PWM input, right? I’d be all in favor of gearhead motors with embedded shaft encoders, or a more-compact optical encoder. We already have computers on-board, so let’s use them to monitor adjust shaft RPM. With voltage regulation, we would still have to watch shaft speed to make sure anyway.

I live in a world of machines that do the same thing over and over day after day.

Magic? No they use sensors.

Sensors.

We have motors. We have computers. Don’t make the motors do more stuff, add sensors to them and let me decide with my cool computer on what to do with the information.

I had a note back and forth with Blake about this. In my mind its no spiff new voltage/amperage motor dodad. It’s sensors that we can use and read the values of and decide what to do from the input they give.

Low cost/low budget teams will be helped by this. A fixed control motor is a uni-tasker. Only does one thing one way. Now take a opti-sensor. Use it to control motor speed, arm movement, distance covered, gripper twist, 100’s of things! Lets not create uni-taskers, let’s create and use sensors with lots of possibilities.

Guys,

No, that is not what I want - What I want to do is remove the temptation to ruin batteries by trying to constantly have one (or a small handful) charged up to above 8 volts at the start of each/all matches.

I am not trying to either encourage or discourage using closed-loop feedback to control motor speed over a range of possible values. That is a separate topic.

I am suggesting eliminating the TOP speed advantage a robot gets (running its motors as fast as possible) when it uses a battery that can offer >8 Volts (open circuit); when the robot using that battery plays a match against a robot from a team that can’t afford to buy enough batteries to field a new/different battery each match, and/or doesn’t want to degrade their battery(s) by constantly sticking them onto a charger between every match.

Right now, to the extent the batteries’ open circuit voltages are correlated to the voltages the batteries can sustain under loads, a team that can put a fully-charged, new \$20 battery on the field (let’s guess at an open-circuit voltage of 8.2V) gets a noticeable speed advantage over a less well endowed team that reuses the battery that they used in the last few matches (it still has plenty of charge stored in it, but its open circuit voltage has dropped to maybe 7.3V).

Let’s assume that the speed advantage is proportional to the ratio of the batteries’ voltages, and guess that under load the voltages drop to 7.6V and 6.9V, respectively. 7.6/6.9 = 1.10 = 10% advantage to the team that could afford to buy enough batteries to have a new freshly-charged one ready for this match.

This advantage has nothing to do with speed control via a sensors and PID algorithms, or any other algorithms. The one team with the somewhat drained battery can not match the speed of the other teams robot, no matter how many sensors they use to measure that they are moving too slowly.

The point is not being able to control the motor speed across a range of possible values. The point is giving everyone the same TOP speed, regardless of whether they bring 20 batteries to a competition or 2 or 3.

Does this help put the focus back on my central motivation?

Aside from removing the speed difference described above (a difference that is bought, not designed and built), my opinion is that there would be some beneficial side-effects that would come from regulating the voltage coming out of the batteries. Those have come up in other posts. They are worth noting, but they are the “tail”, not the “dog”. Don’t let the tail wag the dog.

Blake

The obvious, cheapest and simplest solution to this problem is to limit the number of batteries a team is allowed to have. This achieves everything you desire with zero re-working of existing hardware, no crazy new doo-dads and no artificial limitations on motor voltages.

What would be wrong with that sort of solution? What you describe would already require a rule change, in that all teams would be required to use a voltage regulator doodad (costing more money) or a new vex brain (which I can tell you won’t happen any time soon) that has it built in (also costing more money).

The rule could be worded in such a way as to allow teams using more batteries on a single robot to have more batteries in total, ie “All teams are limited to 2x the number of batteries used on their robot.” This means a 1 batt robot has 1 spare and 1 live to use, a 2 batt robot would have 2 live and 2 spare.

Solve the problem with a rule instead of lots of money and a rule

You could also limit the number of chargers allowed to be used, either in addition or as a replacement to the battery limit rule. If teams are only allowed 1 charger per bot, they won’t be able to do much beyond replace missing capacity from the last match.