Troop191Robotics
USA
Asked
— Edited
I have a box of VEX motors, both 2-wire dc motors and 3-wire PWM motors, which contain an internal motor controller. When I connect a 3-wire PWM motor to EZ B and try to control with PWM, nothing happens. Yet, when I connect it to a servo slider, I can control it. I am sourcing power from an external source, rather than from the EZ B port. Any thoughts?
Thanks again,
Brian
Their pwm uses a servo signal. Read the manual from those devices.
The 3-wire VEX motors are continuous rotation servos, not motors.
Perfect, there you go
So use the modified servo controls. Documentation prevails
Hello & thanks again,
I believe that the VEX "servo' contains: a conventional dc motor, a gear box, a controller, which converts pulse width to drive levels and an H-bridge. The older ones do not contain any feedback mechanisms such as a potentiometer or opticcal shaft encoder. I believe that their transfer function is as follows:
1.5 mS PW = stopped 1.5 mS to 2 mS is increasing forward power 1.5 mS to 1 mS is increasing reverse power
I also thought that conventional servos had the following transfer function:
1.5 mS PW = 90 degrees 1.5 mS to 2 mS is increasing towards 180 degrees 1.5 mS to 1 mS is increasing towards 0 degrees.
DC motors, which are controlled by varying duty cycle, on the other hand simply use an integrator as the controller, which in turn drives the H bridge.
So, I am still a bit puzzled by my results. I guess that its time to connect up the oscilloscope. I should have done that in the first place. We're having fun and both the kids and I are learning.
Thanks again,
Brian
Hello, you answered your question
You do not need an oscilloscope because what you just posted explains it. Servos use a PWM signal, but they are not PWM (if that makes sense).
You can read how servos work here: https://synthiam.com/Tutorials/Hardware.aspx?id=4
And here is how PWM works: http://www.youtube.com/watch?feature=player_embedded&v=kY8iJ84J4GE
:)
Hi DJ,
I really appreciate your patience in dealing with the slow student in the class. I think that I am getting tripped up in the terminology. Here is my current understanding.
The PWM port on EZ B ramps the duty cycle from 0% to 100%. So, devices such as LED's and conventional dc motors, which are controlled via average power input will respond as expected. For example a 50% duty will integrate up to .5 Vmax and .25 Pmax.
"Servos" on the other hand respond to pulse width. There controller operates on a discontinuous function. There is a dead band at 1.5 mS. Pulse widths above 1.5 mS will ramp forward in position or rotational speed. Pulse widths below 1.5 mS will ramp backwards in either position or rotational speed.
Given these definitions, unlike the VEX definitions, my 3-wire VEX devices need to be treated as "servos". I should also be able to low-pass filter the EZ B PWM output and drive my 2-wire VEX devices. The good news to glean from all of this is that we have switched over from VEX to EZ-Robot.
Thanks again & great videos,
Brian & Team
I like your explanation better than mine. You're hired!