We’re rewarding the question askers & reputations are being recalculated! Read more.

# Tag Info

34

Simply stopping a motor from turning does not by itself hurt it. Think about it. The motor is stopped when you first apply power, and nothing gets hurt. Most motors are designed so that the mechanical forces from the maximum torque won't hurt the motor. The reason some motors shouldn't be stalled with full voltage applied is heat. All the electrical ...

26

When using the Servo library on an Arduino, a common source of servo buzz is that the interrupt-driven servo routines don't actually give a very stable output pulse. Because the AVR takes interrupts for servicing the millis() clock and other things in the Arduino runtime, the jitter in the Servo library is on the order of several microseconds, which ...

21

This is called "buzz". There are a couple of things that will cause it. Instability in the power to the servo is a common cause. R/C servos can draw some BIG spikes when they first put the motor in motion. Many years ago, I played with a Tower Hobbies Royal Titan Standard servo, controlling it from a 555 and a one-transistor inverter. Dead-simple ...

20

You are correct, this will avoid passing a heavy current through the breadboard. Make sure the wires that go from the power supply to the motor are capable of carrying the maximum expected current. Ideally take these wires separately all the way back to the power supply and run another pair of wires from the power supply to the breadboard.

18

An increased torque causes an increased current to flow: - With no torque you get the no-load current and maximum speed. With full stalling torque you get a stalled rotor and maximum current. Either end produces zero mechanical output so all the electrical power taken is burnt in the motor. Clearly, with a constant voltage applied, the power burnt is very ...

15

I'll give you some advice, but the first thing you need to do is be aware that you're trying something that may well be beyond your abilities. .03 degrees (1/2 milliradian or 2 minutes of arc) requires a great deal of care, and probably access to a good machine shop. In order: 1) You are correct to be leery of microstepping. It simply will not give you the ...

13

There is a lot of noise in the answers to this question that seem to be conflating "servo motor" as a generic term for variety of closed-loop feedback servo systems, and "servo motor" as used basically exclusively within the RC model community. Note that "servo motor" does NOT specifically refer to the pulse-duration-controlled potentiometer-feedback non-...

11

This is a 3-phase permanent magnet (PM) servomotor. Induction motors do not have permanent magnets, therefore it is a synchronous motor. If any two phase connections between the motor and controller are swapped, the motor will reverse. Since the controller can reverse the motor electronically, it may make no difference how the motor is wired during ...

10

I still would try to use a microcontroller, that's going to be the easiest solution. Do you plan to remove the sensor inputs and the servo output from the controller? That will give you 4 extra pins. Isn't there a device in the same microcontroller family with a few more pins? Alternatively you could use a small separate microcontroller to handle the sensor ...

10

Looks like a gray code rotary encoder. There is a nice tutorial here of a two output version. Good to wrap your head around. You've got four outputs, so it's a four bit gray encoder. There are some truth tables of those outputs here and shown below. But, now that you know what you're looking for you'll find a plethora of information. It'll make your head ...

10

The reason that adding a capacitor helps is because when the DC motor which actually drives the servo is starts or stops, it injects some noise into your power supply (+5V). This causes the sensor part of your servo to read a slightly different value for the position of the actuator, since the sensor is just a potentiometer wired between +5 and GND with the ...

8

I would recommend a stepper motor plus worm drive. You will be able to keep this perfectly still, which is what you want for a camera. A servo motor contains a circuit which actively tries to maintain the position of the motor. This system can be affected by external forces, electrical noise from the angle sensor, and poor tuning of the control algorithm. ...

8

While the other current answer to this question quotes a comprehensive enough answer courtesy WikiPedia, here is a simplified TL;DR: Stepper motor: Moves in steps, with a fixed number of steps per revolution. Thus, controllable across any number of revolutions, in jumps of the step size. Could be unidirectional or bidirectional. Each step is exactly the ...

8

No diode is needed, but you should put both some bulk capacitance and high frequency bypass capacitance across the power leads. Keep in mind that this is a "hobby servo" motor. You are not driving the motor directly. You are sending signals to a controller in the same package as the motor, and that controller drives the motor. Therefore, you should try ...

8

Does the level shifting circuit get the 5V and shift it back to 3.3V? Yes, that circuit works bidirectionally although it might be a good idea to have a pull-down resistor on the 3.3V logic line to 0 volts (see later on counter argument). When the 5V side is at 5V, R1 pulls up the 3V3 side via the base-emitter junction (a forward biased diode). When the 5V ...

8

One advantage i can think of is that the low inductance of axial-flux motors means that they have low electrical time constants, allowing current to flow very quickly into the armature for virtually instant torque production , which should translate to fast acceleration and deceleration which maybe desirable for high performance servo control.. BUT: ...

7

Servos work by listening for 20ms, then adjusting the position based on the duration of the high pulse. The high pulse (X below) can be between 1ms and 2ms long, with 1.5ms as the neutral or centre position. |------------20ms-----------| |-X-| ___ ___ _| |_______________________| |___ ... Depending on your ...

7

Given that you can replace the arduino for under $30 (or for about$5-6 if the atmega chip is socketed, or a mere \$3.50 for a blank atmega you can initialize on a breadboard using the arduinoISP sketch before you fry the current one), if you are more interested in learning about things, I'd say go ahead and build some driving circuits. On the other hand, if ...

7

I think this falls into what Horowitz and Hill might call "hybrid" and not necessarily analog, but here goes: Let's say you have a PWM signal in to control the position of the servo (A), and a pot on the servo, used to control the Pulse width of a timer circuit (like a model aircraft servo) whose output is B. You use simple XOR between the command pulse ...

7

This seems to be a very common type of question. In general, a power supply is rated for the voltage that it will deliver, and for the maximum current that it CAN deliver at that voltage. It is up to the load (the circuit that is powered) to draw the current it needs. So, when you have a circuit that states that it needs 5V 1500mA, you need a power supply ...

7

Yes, a rotary encoder can be added to any motor, including a servo that has been modified for continuous rotation, and used for position control. However, this is a bit counter-intuitive, since the servo's internal circuitry already provides position control, using the integrated potentiometer as a rotary sensor. Disconnecting this positioning mechanism, ...

7

You have declared the arrays k[] and z[] to have just one element each. Therefore, it is likely that the values you write to k[] are overwriting the values for z[], and the values for z[] are getting clobbered by other variables.

7

The Servo library doesn't use PWM. When you call write() it computes a pulse width in microseconds and stores it in a global array. Then there is a single timer that regularly triggers an interrupt which changes the output signals according to each channel's desired pulse width. You can find the source code below : Github link

7

"Why was a capacitor necessary to "stabilize" my Arduino?" A servo motor draws a substantial current in short peaks. And USB power is not designed to provide such current peaks (and the cable makes it worse), hence the current peaks cause the voltage to vary, which the Arduino is not designed for. A capacitor acts as a buffer for current, so as long as the ...

6

Many years ago, I breadboarded a 555 circuit to control a Tower Hobbies standard servo. Under normal conditions, the servo drew about 250 mA in motion. When "buzzing" (unstable), it was drawing half-amp spikes and more. What I learned: 1. Servos draw a lot of juice to turn the shaft through the gear train. I would never consider driving a standard servo ...

6

Assumption: Servo motor in question is a hobby-type servo, not an industrial high torque or heavy duty servo. The bulk of the current through a (hobby-type) servo motor is the current through the coils of the DC motor typically used within the servo housing. Some current is required by the servo controller circuitry, but that is negligible in comparison. ...

6

This requirement can be well met using sail winch servo motors, controlled by SPI or I2C servo controllers, or better yet, radio controlled 4-channel or better servo controllers such as used for RC toys. What? Sail winch servo motors are designed for one, or several turns, based on a servo control signal. They are specifically used for rolling and ...

6

Cost = Capability Although there are many good suggestions above, it may simply be that this laser cannot handle the stresses you've applied to it. Electrical Stress Your direct connection between servo and laser results in the servo feedback into the power line propagating to your laser diode. This is what the power rail looks like when a servo is ...

Only top voted, non community-wiki answers of a minimum length are eligible