4線式 硬碟馬達的控制紀錄....
一開始手上有很多刻壞掉的硬碟,原本只是想看看硬碟內部長得什麼樣子,拆完後發現裡面的無刷馬達還真是順暢,心想著若可以再利用不知道有多有趣...但似乎不是那麼的簡單。
先說無刷,有點類似交流電機,又或者是步進馬達完全靠電子產生磁場相斥推動,省略了電刷的機械構造(因此不會有電刷磨損的問題),而驅動的理論,這有點深奧(我不是本科只是玩玩XD)。
不過上網找資料應該都很多,我其實也看了很多,啥六步方波....頭真的很暈
好在高職有學過8051單晶片,驅動的控制應該只要可以寫入51就行了,我的想法很簡單
還記得8051的跑馬燈程式,這幾乎是最簡單的東西。我們把概念套用一下應該可行!
先說無刷,有點類似交流電機,又或者是步進馬達完全靠電子產生磁場相斥推動,省略了電刷的機械構造(因此不會有電刷磨損的問題),而驅動的理論,這有點深奧(我不是本科只是玩玩XD)。
不過上網找資料應該都很多,我其實也看了很多,啥六步方波....頭真的很暈
好在高職有學過8051單晶片,驅動的控制應該只要可以寫入51就行了,我的想法很簡單
還記得8051的跑馬燈程式,這幾乎是最簡單的東西。我們把概念套用一下應該可行!
首先先分屍!~
遇到的第一個問題就是螺絲,硬碟用的螺絲是米字型的但是我沒有用米字型的板手
只好暴力拆解了,拿出斜口鉗用力的夾住,夾至螺絲頭變形在轉動...(反正是壞的硬碟)
螺絲拆解
拆的過程還算順利,用力夾兩手努力轉!
分解後各部份的零件
零件有點雜,我們只需要硬碟的馬達,剩下的先丟在一邊吧。
接下來就是要準備了解一下,這顆馬達通電會作出什麼反應
馬達是四條線
很多硬碟好像都是4線,不像是模型飛機或是船用的無刷只有三線
先把電線焊上去,方便之後的作業
在上頭畫上一個標記,就是等等要觀察的重要資訊
因為馬達內部的繞線方式有點像是三相電機,不過不懂也沒關係,我們知道內部的線圈若是用電表測量不管怎麼量,阻抗因該是都要相同,所以我們來測測
接點測量
首先拿三用電表,把測量A/B點-----得到的數值紀錄一下
在測量A/C-----在記錄一下,A/D....
依序測量(還好只有四條線,不然要量很多次)
1.A/B
2.A/C
3.A/D
4.B/C
5.B/D
6.C/D
接下來你會得到一些數字,你會發現其中3組數字相同另外3組數字相同。
而兩組比較起來剛好是倍數,所以內部線路推測大概是下圖的構造。
A與B有通,測量時電經過2次線圈
A與C有通,測量時電經過2次線圈
A與D有通,測量時電經過1次線圈
B與C有通,測量時電經過2次線圈
B與D有通,測量時電經過1次線圈
C與D有通,測量時電經過1次線圈
接下來我們是要知道送電時,馬達會怎麼動。
依照XXX定律.....(我忘了)
反正就是給電,他就會轉一個角度。
那我們在紙上,依序紀錄送電的線頭號碼與轉動的位子
(要送多少V的電壓?我隨手拿一個三號電池接上任一兩端線他就會動了,所以...試試吧)
這只是先前紀錄的,示意示意而已,不要照著量....
所幸在我零件盒找到一個東西,叫做光耦合器(這也很像繼電器)。
光耦合裡面埋了一個LED還有一個當有感受到光線時就會導通的開關,因此我們只要把內部的LED點亮,輸入與輸出就會通了!
至於馬達的三條線要怎麼接,第四條我暫時不管他。
這樣我們就完成了
1.寫程式
2.接線路
準備工作都好了!
轉轉轉!!~
後續問題
1.馬達可能會抖,原因是送電切換的時間跟馬達旋轉的速度不對,這就要偵測轉子,並對你的程式切換時間進行修正(微調快一點,或是慢一點,不然都是你送你的電,我轉我的)
2.起轉可能不順利,可能跟電壓或是送電的起始錯誤(換線或是改程式)
最後來個偷吃步
上網買個無刷馬達的電子變速器,接上三條線,搞定!效能會很高喔!只是要花點小錢
不過還是得靠8051,因為電變會偵測輸入的訊號送出轉速高低,所以8051只要寫入步進馬達的程式來控制電變
我覺得這樣比較簡單....
2.A/C
3.A/D
4.B/C
5.B/D
6.C/D
接下來你會得到一些數字,你會發現其中3組數字相同另外3組數字相同。
而兩組比較起來剛好是倍數,所以內部線路推測大概是下圖的構造。
A與B有通,測量時電經過2次線圈
A與C有通,測量時電經過2次線圈
A與D有通,測量時電經過1次線圈
B與C有通,測量時電經過2次線圈
B與D有通,測量時電經過1次線圈
C與D有通,測量時電經過1次線圈
這樣我們就大概知道,送電時要將電力傳入哪個線頭內。
答案是A/B/C(取最大的電阻搭配)
接下來我們是要知道送電時,馬達會怎麼動。
依照XXX定律.....(我忘了)
反正就是給電,他就會轉一個角度。
那我們在紙上,依序紀錄送電的線頭號碼與轉動的位子
(要送多少V的電壓?我隨手拿一個三號電池接上任一兩端線他就會動了,所以...試試吧)
這只是先前紀錄的,示意示意而已,不要照著量....
紀錄後我們就可以知道,當AB給電會轉到某個角度,而就可以知道若我要轉到下一個角度是要給誰電力~所以就依此類推..算出轉360度的順序搭配組合
(說到這就已經符合六步方波的送電概念了)。
所以要接上電池就會轉是不太可能的,除非你用超神速的動作快速的接上A/B然後又換B/C然後又......我想這個工作應該留給8051去做就好。(我用華邦W78E52C 1個)
8051怎麼驅動馬達?
記得剛剛講的,依序記錄下來的線頭組合嗎?
在這8051只是扮演著開關切換角色而已,而跑馬燈不是很適合嗎
記得以前寫跑馬燈,會寫入先量第一顆然後等多久在亮下一顆,利用這個方法導通組合1然後2...3...4.....重複的執行。
8051程式大概的範例
寫好就燒進去8051囉!~
由於這裡我是利用了8051的6支I/O腳
3支負責正極
3支負責負極
這又扯到如何接線,基本上8051的訊號電壓是推不動馬達的,我們要借助其他東西,比如MOSFET或是其他的電晶體&開關。
這些東西作用很像繼電器,當有訊號輸入這些mosfet或是電晶體他就會導通輸入與輸出
我手上也沒有功率晶體MOSFET只有9013電晶體。
那就用9013來當功率晶體好了(我也不想去買,有點遠)反正會動就達到目的了
9013有三隻腳,在這裡做為一個輸入(接電源源頭,我的源頭是5V/500mA),一個輸出(接馬達),一個接收訊號(接8051的I/O)。
當有訊號給9013他就會導通輸入與輸出,訊號切斷電源就跟著切斷
但是這樣還是推不動..........,所以有2個方式
1.把9013串成達林頓,就可以加大電流
2.用其他更強的代替品
所幸在我零件盒找到一個東西,叫做光耦合器(這也很像繼電器)。
光耦合裡面埋了一個LED還有一個當有感受到光線時就會導通的開關,因此我們只要把內部的LED點亮,輸入與輸出就會通了!
光耦合,這裡我畫簡單一點,示意示意....(我用TLP521-4兩顆)
所以!LED的一隻腳就接8051 I/O腳,一支接負極,當程式告之8051送電囉!
他就會把電源灌到LED,因此開關被照亮,就通了
(所以開關那端,你可以串接上更強的電源比如9V 12V 之類的電源)
至於馬達的三條線要怎麼接,第四條我暫時不管他。
線路大概像下面這樣接
1.寫程式
2.接線路
準備工作都好了!
OK送電
轉轉轉!!~
後續問題
1.馬達可能會抖,原因是送電切換的時間跟馬達旋轉的速度不對,這就要偵測轉子,並對你的程式切換時間進行修正(微調快一點,或是慢一點,不然都是你送你的電,我轉我的)
2.起轉可能不順利,可能跟電壓或是送電的起始錯誤(換線或是改程式)
最後來個偷吃步
上網買個無刷馬達的電子變速器,接上三條線,搞定!效能會很高喔!只是要花點小錢
不過還是得靠8051,因為電變會偵測輸入的訊號送出轉速高低,所以8051只要寫入步進馬達的程式來控制電變
我覺得這樣比較簡單....

由kona製作,以創用CC 姓名標示-非商業性-相同方式分享 3.0 台灣 授權條款釋出。
此作品衍生自kona。
感謝分享,今天教國中一年級的兒子拆硬碟馬達,想讓硬碟馬達轉,不過我不是電子本科,可能沒法讓它轉起來,不過電路板裝回去,用電源供應器給電後,應該可以轉吧!
回覆刪除基本上,驅動電路是在板子上沒錯,所以板子沒壞,通常都會動,只是不會加減速而已
刪除太強了!!原來硬碟馬達是這樣驅動的....
回覆刪除怪不得我直接焊兩條線接12V就是不動。。
網路上賣的電子變速器都好貴,我只是想廢物利用硬碟的小馬達而已。
哈哈,其實我原本是要拿來當小發電機,但效率不是很好。所以就拿來玩玩,拿以前學過的東西來複習一下
刪除不好意思想請問一下
回覆刪除程式中0x09照你的線路來看應該是P2.0跟2.3吧,但這兩隻腳同時打開的話就會直接回到電池中而不會進到線圈裡吧?
你這麼一說,對喔會短路。哈 抱歉!
刪除不過這個有點年代久遠,這個因該是我程式碼寫錯,我記得...當時搞到很晚。可能弄錯圖,上面的序列我後來有調整。
不過你有看出錯誤,我想您因該也成功運轉了吧?!
是的~感謝您提供這麼好的經驗分享^^
刪除請問這是步進馬達嗎?是幾相的呢?双極還是單極的呢?我也拆了幾個想廢物利用一下
回覆刪除這屬於無刷馬達,控制方式比較複雜一點,因該是三相直流電機。
刪除y字接法若是四線,其中一線可能是中心抽頭。
控制我覺的有點類似步進,不斷換相。比較困難的是時機要對。(你要知道轉子現在停在什麼角度,才有辦法推敲下一相的換相時機要提前幾毫秒或是延後)
你可以先試試光碟機的主軸無刷馬達(轉光碟的那一棵),通常這種馬達都黏在電路板上,且板上都配有霍爾感應,可以藉由感應了解馬達轉置什麼位置,然後準確的換相。
thanks.我試試看
回覆刪除