-1
\$\begingroup\$

I am by no means good at electronics or electrical stuff. I have recently got into the hobby by working on my own personal project. I want to be able to control a 12 volt servo motor that takes a 12 volt signal with an arduino PWM pin. I have tried using a tip120 transistor by following this tutorial: http://bildr.org/2011/03/high-power-control-with-arduino-and-tip120/ however I'm just not sure how to connect the tip120 to my servo motor. Any suggestions?

\$\endgroup\$
  • \$\begingroup\$ If you aren't good then go shopping instead. It's also cheaper \$\endgroup\$ – Sunnyskyguy EE75 Apr 4 '18 at 2:52
  • \$\begingroup\$ You have the right idea about using a transistor to use your motor and this is a handy website to help you out. However, I would definitely not recommend using the TIP120 (which is an NPN transistor). BJTs are known for consuming more power. I would recommend using a FET device instead, something like an nMOS device. \$\endgroup\$ – KingDuken Apr 4 '18 at 3:02
  • \$\begingroup\$ (you also need a 12v power supply to drive the load as well) \$\endgroup\$ – KingDuken Apr 4 '18 at 3:04
  • \$\begingroup\$ Any datasheet of that 12V servo Motor? \$\endgroup\$ – Dhans Apr 4 '18 at 3:33
  • \$\begingroup\$ What motor exactly is this? What you describe is extremely unusual so much so that it's far more likely to be a result of confusion. You wouldn't typically want a 12v PWM signal into a servo amp, and if you have just a bare motor without a servo amp, you'd need bidirectional PWM such as from an H-bridge, not to mention a feedback mechanism and an error amplifier (probably in software) to close the loop. \$\endgroup\$ – Chris Stratton Apr 4 '18 at 4:26
-1
\$\begingroup\$

Connect the servo just like the light bulb is. The PWM signal on the Base of the Transistor will control your servo as if it was directly connected to the Arduino.

\$\endgroup\$
  • 1
    \$\begingroup\$ This is a partially good answer. However, you're missing one important thing, something that will drive the load. \$\endgroup\$ – KingDuken Apr 4 '18 at 2:53
  • \$\begingroup\$ This is quite unlikely to actually work, for many reasons not the least of which that the question is almost certainly mistaken. Please consider deleting this rather than leaving it here to further confusion. \$\endgroup\$ – Chris Stratton Apr 4 '18 at 4:40
  • \$\begingroup\$ PWM signal should be sent to the Servo Motor pin(Normally it does have with Arduino connections). Not to the base of the transistor and the answer is incorrect. Please delete this. \$\endgroup\$ – Dhans Apr 4 '18 at 6:01
-1
\$\begingroup\$

Actually, the title of your question is right but the chosen circuit for that need is wrong at all. That circuit won't work, because the control signal needed for a servo motor is omitted in that circuit. Servo motors do need that control when it is controlled by Arduino. The PWM signal will be sent to the servo motor and a potentiometer mechanism is there find its current position and according to the incoming pulse, the servo motor will move to the desired position.

If you need to control the motor with 12V PWM signal, then you need a level shifter circuit of 5V PWM signal to 12V PWM signal. Here is the simple circuit for that need.

enter image description here

Keep in mind that this circuit inverts the logic level of the input (i.e) when an input is high, then the output will be low and vice versa.

Output graph:

enter image description here

When you see the graph, an aforementioned concept can be understood.

Actually, I have found this good circuit from here and experimented it with multisim.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.