Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 11635|回復: 18
打印 上一主題 下一主題

請問微型震動馬達

[複製鏈接]
跳轉到指定樓層
1#
發表於 2010-11-8 20:03:11 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
最近在控制微型震動馬達
請問各位前輩
是否有可以控制它震動大小的震動馬達
好像都沒有可以用PWM控制的震動馬達
請問各位有沒有遇過這樣的問題

謝謝
2#
發表於 2010-11-9 16:32:26 | 只看該作者
振動馬達是因為"偏心"
或是因為裝了重心不在中間的重捶, 所以會抖
他只是顆DC馬達而已
直接給PWM訊號就能控制抖動大小

兩條線, 一條接地, 另外一條直接接PWM訊號就行了
roboard也可以直接這樣接, 程式就能直接控制抖動力道
3#
 樓主| 發表於 2010-11-9 17:10:05 | 只看該作者
像是扁型那樣的震動馬達
我問廠商 他們是說無法用PWM去控制震動大小
只能改變電壓去控制震動大小
我之前有用PWM去控制
完全無法感覺出有震動差異
只有on和off

請問mzw2008前輩
針對這樣的情況有甚麼辦法可以控制呢
4#
發表於 2010-11-9 17:17:28 | 只看該作者
PWM  ... Roboard 比較能輸出完整種類, 週期/高態/次數都能完全指定控制
普通機器人用的控制板出來的PWM
因為週期約是20~30ms, 高態部分0.5~2.5ms (這才是真正會動的部分)
高態部分佔整個週期很小的比例
所以你會"看不出來"
不是不能用

解法..
1. 像rayider老大自己作控制板就能搞定
2. 用roboard
3. 自己做PWM控制板, 能讓高態變成0.5~20ms 那就完全能控制了
   
但因為馬達需要比較大的電流
PWM那個訊號出來要經過放大電路去加強一下
5#
發表於 2010-11-9 17:30:32 | 只看該作者
本帖最後由 g921002 於 2010-11-9 17:32 編輯

這種馬達不是RC SERVO,不是用週期20ms.Duty 1-2ms這種信號控制。
輸入PWM信號最好在10K~20KHz。控制的Duty在20%-80%間。這樣應該就能看出效果了。

另一般的I/O扇出力不足,可以用2n2222(ICmax500mA)電晶體做電流放大去驅動。
6#
發表於 2010-11-9 17:32:56 | 只看該作者
忽然想到也可以用A/D腳去控制
反正馬達就是電壓高轉的快, 電壓低轉的慢
這部分roboard也有八組喔
7#
 樓主| 發表於 2010-11-9 19:54:48 | 只看該作者
各位前輩的意見很棒
只是小弟碰的不多
不是非常瞭解
我是利用微控器的DIO去控制馬達
而我加了一個BJT去放大電流
來驅動震動馬達
不知道各位前輩
關於用DIO可以去控制它震動大小嗎

謝謝
8#
發表於 2010-11-9 23:55:16 | 只看該作者
把事情先簡單化
震動DC馬達轉的快慢可利用電壓的高低變化辦到
或是高低態店壓的時間差
同一段時間中, 高態電壓時間越久轉的越快
DIO一定可以辦到的

其實應該不需要放大電路
因為微DC的電流可能數十mA甚至數mA而已
不能如預期轉動應和給的電壓根本錯誤有關(前面提到你根本就使用像是SERVO那種PWM)
9#
 樓主| 發表於 2010-11-10 09:24:36 | 只看該作者
mzw2008前輩
謝謝你的回覆
針對PWM,當我高態電壓時間加長
最後變成馬達只會一直震動
慢慢的把高態電壓時間減少
最後卻變成直接OFF

那如果是針對電壓高低調整
我該怎麼用DIO實現呢
10#
發表於 2010-11-10 12:19:01 | 只看該作者
馬達一直震動!
偏心馬達不就是為了一直震動嗎?
11#
 樓主| 發表於 2010-11-10 12:24:52 | 只看該作者
抱歉我講的不對
應該是說
感覺不到有震動大小的差異
只有ON/OFF的感覺
12#
發表於 2010-11-10 12:31:51 | 只看該作者
變動夠大的話, 震動速度應該有差哩

不過後來想想
這用類比訊號處理會更好
因為很容易表達高低電壓
EX:0~5V
我是用Roboard或是Arduino作的
單晶的話就得看板上前輩高人的指點了
13#
 樓主| 發表於 2010-11-10 14:46:37 | 只看該作者
好像用類比訊號會更好
只是不知道要如何用單晶片實現
應該要多加一些電路等等吧
14#
發表於 2010-11-10 16:04:15 | 只看該作者
先回到基礎來說
DC 馬達控制轉速怎麼作? 最後都是要變成電壓控制
電壓又可以用 DAC 方式 或是 PWM,
目的都是在變化電壓平均值
PWM 來做的話, 假設週期20~100%之間變化
但是要考慮馬達啟動電壓和最低電壓(通常不會一樣)
所以要先啟動,才能降低週期(為了降低轉速)
可能啟動週期就要50%, 看不出轉速也可能是pwm操作空間不夠,
或是電壓變化範圍不夠大, 要實際量看看才知道...

PWM輸出週期用大電容穩定交流信號,不就是會變化的DC嗎?
15#
 樓主| 發表於 2010-11-10 20:44:34 | 只看該作者
有一點瞭解了
謝謝各位前輩的建議
我會先嘗試一番的
謝謝
nichal 該用戶已被刪除
16#
發表於 2010-11-11 13:44:01 | 只看該作者
一般馬達的反應速度是屬於mS等級的
所以用mS等級的PWM去控制
會得到ON-OFF的結果
這是可以理解的

但是MCU都是uS等級的高速運算器
所以如果把PWM提高到uS等級
那感受上就會變成是電壓大小的變化

再綜合g921002 與mac1 大大的建議
用數位IO來控制時
就是把PWM的頻率提高到10K~20K
(建議是要16K~20K比較好, 不然會聽到噪音)
再加對大小電容來濾波兼穩壓
這樣就可以感受馬達的震動變化了

如果可以用類比的話
就可以用m大所提供的D/A 控制
再透過電壓放大電路就可以達成電壓大小的轉變
大致上就這樣囉!!
祝你實作成功~~~
17#
 樓主| 發表於 2010-11-11 18:33:41 | 只看該作者
謝謝各位的建議
對我的幫助非常大
謝謝
18#
發表於 2010-11-25 14:10:42 | 只看該作者
本帖最後由 samkung 於 2010-11-25 14:23 編輯

不嫌麻煩的話
可以考慮用電子電位器(digital Potentiometer)做分壓
想要調成多少電壓都可以隨意 SPI,I2C想得到的控制介面都有
應該效果可以很明顯吧 就是麻煩零件不好買而已

SIP教學 http://www.arduino.cc/en/Tutorial/SPIDigitalPot  
I2C教學 http://tronixstuff.wordpress.com ... no-and-the-i2c-bus/

IC購買可以考慮用MOUSER 找東西很方便
http://tw.mouser.com/Semiconduct ... iometer&FS=True
19#
發表於 2010-11-25 17:18:21 | 只看該作者
可以用數位電位器(Digital Potentiometer)做分壓
想要電壓多少它就給你多少 有SPI、I2C介面 也有用Hi/Lo控制步進  
SPI教學 http://www.arduino.cc/en/Tutorial/SPIDigitalPot
I2C教學 http://arduino.cc/en/Tutorial/DigitalPotentiometer
不過DIP的零件已經逐漸淡出市場 教學中的IC型號應該都買不到了
看教學瞭解一下概念就好 IC還是很多 數位電位器市場上還有上千種

IC挑選可以用MOUSER 篩選很方便 目前找零件最方便的網站
買就不一定要跟他買 畢竟單價跟運費都比較貴
http://tw.mouser.com/Semiconduct ... iometer&FS=True
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2024-4-29 03:02 , Processed in 0.254986 second(s), 8 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表