I'm trying to provide analog control to a Bluetooth controlled car, via Arduino. I have joystick app (as the pot). It send values between 0 to 255 So I'm thinking... Whether this flow down here 👇 will work?

Joystick app --> Bluetooth Rx --> DAC --> Vs pin of L293D. Or motor?

Is Arduino required at all? Or is the serial word enough to translate into voltage via DAC?

  • 1
    You need a PWM signal for a motor driver, not a DAC. – Majenko Aug 27 '16 at 13:32
  • @Majenko but I am using a simple dc motor not any servo or stepper motor – Niranjan Dixit Aug 27 '16 at 13:52
  • So? What difference does that make? A motor driver requires PWM. A DAC (unless it's a very expensive industrial one designed for the purpose) cannot directly drive a motor. – Majenko Aug 27 '16 at 13:53
  • @Majenko that's what... I mean to use the output of the DAC to use with the "motor voltage" pin of l293d. – Niranjan Dixit Aug 27 '16 at 13:54
  • 1
    The power you put into the supply pins of the motor driver is what is used directly by the motor. That supply has to have enough current to drive the motor, which a DAC cannot provide. The motor driver is designed to switch a high current supply on and off to the motor. That is how it controls the speed. To use a DAC you will first have to convert that voltage into a PWM waveform to switch the EN pins of the driver so it can switch a high current source to drive the motor. The driver does not magic extra power from thin air. – Majenko Aug 27 '16 at 14:03

No, you cannot. A DAC cannot provide enough current to either directly drive a motor or to power a motor driver (which is basically driving the motor directly through a switch anyway).

A motor driver requires a PWM signal to rapidly switch a high current source on and off to set the motor speed.

You could feed the DAC output into the input of a voltage-to-PWM converter chip which would then feed the motor driver's EN pin, but that is pretty pointless when you could just use a small microcontroller to receive the digital speed value and directly generate a PWM signal.

After all, that is the kind of job that small microcontrollers are designed for...

| improve this answer | |

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.