Super169 发表于 2014-3-22 18:36:25

請問是否可以直接用 PWM 控制馬達的轉速?

剛拿到一個普通的 3-6V 馬達, 想用 UNO 直接去控制它的速度.

直接連到 3.3V 或 5V 都沒問題, 可以轉動, 但只是定速.
當我連到 D9 的 PWM pin, 再嘗試以 analogWrite 去設定速度, 就完全不轉動.
甚至我直接在 D9 輸出 255, 也沒有反應.

我用的只係一般2 pin 的馬達, 舵航 或 步進 馬達控制板好像不合用.

請問如果我想控制馬達的轉速, 是否可以直接用 UNO 板連線?需要加上什麼東西嗎?
還是要購買專用的控制板?

qptimus 发表于 2014-3-22 21:30:05

单片机不能直接驱动功率器件,你要加功放,例如H桥或者驱动芯片

Super169 发表于 2014-3-22 22:49:55

qptimus 发表于 2014-3-22 21:30 static/image/common/back.gif
单片机不能直接驱动功率器件,你要加功放,例如H桥或者驱动芯片

oh, 明白.原來不可以單獨用 PWH 控制, 看來是我想得太簡單了.:P

hesun 发表于 2014-3-23 00:01:15

小心烧芯片!

春泥蛋炒饭 发表于 2014-3-23 03:06:05

数字引脚提供的电流不能高于40mA,根本带不动电机,没烧芯片就是万幸

Super169 发表于 2014-3-23 11:54:08

本帖最后由 Super169 于 2014-3-23 11:58 编辑

oh...原來有這樣的限制, 沒留意, 以後要多加小心了, 幸好芯片沒燒掉.
剛剛再 check 過, 原來自己的馬達控制模塊 L293D motor control shield 除了可以控制 servo 及 stepper 以外, 還可以對 dc motor 控速, 當初只為 stepper 而買, 一直無留意.

但 L293D motor control shield 有個問題, 由於是 shield 的緣故, 不知它用了那些 pin, 模塊上亦沒有接口, 插上了之後, 就不可以加其他 sensor.
加上 screw shield 後, 也不知那個接口還可以用.

____消失灬 发表于 2014-3-23 16:12:34

D0,D1,D2,D13,A0~A5没有用D6,D7可以控制左上角的两个舵机插口

Super169 发表于 2014-3-23 18:37:05

____消失灬 发表于 2014-3-23 16:12 static/image/common/back.gif
D0,D1,D2,D13,A0~A5没有用D6,D7可以控制左上角的两个舵机插口

唔該哂, 我試下拉幾條線比 sensor 同 OLED 用先.
D0/D1 基本上都唔用 (留比 PC), 即係 digital 得番 D2/D13, 無哂 PWM....真係去得幾盡.
好在 A4-A5 無用, I2C 既仲用得番.

我另外有塊 serial 16 servo control, 不知是否可以 control 一般 DC motor (初步睇可能唔得, 佢既 command 只接受 角度 而不是 速度).

唔知有無 I2C / SPI / 串口 既 motor controller, 可以唔駛用咁多 I/O.

____消失灬 发表于 2014-3-23 22:49:01

那个啥我有点看不懂      OLED不是用在I2C吗   serial 16 servo control是16位舵机驱动吧这个驱动可以用串口驱动就是D0和D1脚驱动   如果你只是驱动两个直流电机的话可以用L298N驱动

Super169 发表于 2014-3-24 01:04:44

____消失灬 发表于 2014-3-23 22:49 static/image/common/back.gif
那个啥我有点看不懂      OLED不是用在I2C吗   serial 16 servo control是16位舵机驱动吧这个驱动可以用 ...

我想要驅動四個直流馬達 (前後及速度), 另外再加一些不同的 傳感.

如果用 L293D, 就會用了很多 I/O.

L298N 好像要用 4 個 I/O 控制 2 隻, 兩張 L298N 的話就是 8 個 I/O 了, 跟 L293D 差不多.

但如果用 16 servo control, 不知是否可以用來控制一般直流馬達, 如果可以的話就最好了, 那是串口的, 兩個 I/O 就可以控制 16 台.但我之前測試時, 那些命令都是在指定時間去到某個位置, 好像不可以控制速度和方向 (勉強說是可以, 但只在 360 度內轉動, 又是兩回事了).如果可以, 就是最好了.

請問如果需要驅動四個直流電機 (只需前後及速度), 用那個方法可以最省 I/O 呢?

Super169 发表于 2014-3-24 01:14:42

oh, 在網上再找找看, 原來是有 i2c 的控制板 (Adafruit Motor Shield V2), 淘寶也有一塊 "直流伺服 PID电机 驱动模块 串口/I2C控制 闭环反馈 arduino例程".....但價錢....可能多買一塊 nano/pro mini, 用串口連線再接 L293D, 功能更好, 而且便宜得多.

____消失灬 发表于 2014-3-24 09:38:57

Super169 发表于 2014-3-24 01:04 static/image/common/back.gif
我想要驅動四個直流馬達 (前後及速度), 另外再加一些不同的 傳感.

如果用 L293D, 就會用了很多 I/O.


好像舵机控制器控制不了直流电机
页: [1]
查看完整版本: 請問是否可以直接用 PWM 控制馬達的轉速?