電動滑板,不能少了控制電路!一起完成最後階段

先前已經把硬體完成了,總不能直接把馬達接上電源就算完成吧?!

第一篇:讓我們打造一台懶人滑板吧,目標3500元台幣!

第三篇:只要3500以內的預算,就可以打造一台電動滑板!(Part.3 程式邏輯編寫)

請不要把這次選用的12v 300w的馬達直接接上電池,暴力的程度可能會讓你受傷

(瞬間起轉會產生極大慣性,導致馬達甩出)

 

我把滑板完成後,實際使用時大概都只開到60%的動力就覺的滑行速度足夠,當然上坡就另當別論。

這個滑板的初版設計概念只是要讓它滿足以下的條件,所以就電路來說會有點簡陋:

  1. 不使用遙控器
  2. 減少踢板滑行次數
  3. 好玩

不過電路部份是可以升級的,後續會在改良...有興趣的朋友歡迎繼續追蹤

這篇文章製作步驟有非常多的測試,為的就是讓讀者可以一步一步的穩定向前進行製作

製作完成可以下載 Sketch 實際使用

 

電路方面需要很細心,按照步驟做。

此專案有一定危險性且實做者須自行負起責任,建議讀懂整篇文章後在進行實做。

 

難易度

 

★★★★☆

 

怎麼做

想辦法讓滑板聽你的話!!基於以下兩點我們再來設計滑板的控制電路

  • 怎麼告訴滑板要走囉!?如同其機車或是開車一般都會有一個油門控制,常見的滑板控制是使用無線遙控方式。
  • 再來若玩過滑板的朋友因該都會先感覺到不穩的恐懼感。首先要先學會重心平衡再來才是滑行,因此要避免滑板太過猛烈的起步導致人體重心不穩(電動滑板若直接把電源接入馬達一定保證摔個四腳朝天!)

因此我利用開關黏貼在滑板上,當開關訊號通知電子迴路告知滑板啟動,在讓電子迴路自動變速控制馬達緩緩啟動!


因為使用的是腳採開關,所以開關位子研究結果是會影響安全性跟順暢性,我認為最佳位置在於後腳的 "腳跟"

這個位置可以滿足以下的條件:

  • 因為利用腳掌當支稱點,所以當不踩開關時雙腳依舊都是站立在滑板上(有點類似後腳墊腳尖的動作)
  • 當遇到危險或是需要停下,可以馬上跳下滑板。且因要跳下滑板後腳一定會先離開開關,形成了一個防止暴衝的保護(此為滑板的基本動作,最快停車方式)
  • 無論電動滑板或一般滑板需要滑的好,基本功重心一定要抓好,而重心最佳位置通常是在滑板的前半段,這有跟一般交通工具有些為的差別。因此想讓滑板自動滑動必須刻意去踩踏開關,所以安全性相對比較高

 

輕觸開關有四支腳位,在未壓下開關時,金屬腳兩支有導通兩隻沒有,建議先用電錶測量後在進行焊接。

開關焊接好之後,我是使用泡綿雙面膠黏貼在滑板上,緊度很牢靠!

 

接下來要製作電路,電路控制方式是把 IRF3205 當成開關使用,當Arduino使用小電壓訊號通知 IRF3205 時,它就會把大電壓電流導通到馬達身上。

但IRF3205有兩點需要注意,首先它所接收的訊號必須要 10V~20V 之間才能好好的工作,否則會產生高熱直接燒毀。 因此另外做了一個升壓模組來把電壓訊號轉換

其次因為接的是大功率馬達,馬達很容易產生逆向的電流跑回來把 IRF3205 燒毀,所以需要額外再加一個大功率的二極體 MBRF2020CT-Y 來消耗馬達的逆向電流

這兩個晶體都是會發燙的元件,之後我們在實際使用時必須鎖上散熱片來散熱

 

在滑板上我們已經定位好所有的元件要擺放的位置,因此需要先準備連接導線的長度,以免模組完成後發現線不夠長而懊悔!

現在滑板上測量每個位置的距離,並準備以下線材。(以下為參考值,實際長度依照當下狀況調整)

  • 22 AWG 細線3條 3cm - Arduino 至 升壓總模組 (5V+ ,負極,控制端)
  • 22 AWG 細線2條 40cm - 腳踏開關 至 Arduino (2條訊號線)
  • 22 AWG 細線2條 10cm - 電池輸出源頭 至 Arduino (正負極)
  • 22 AWG 細線1條 15cm - Arduino 至 IRF3205 (1條訊號線)
  • 18 AWG 細線2條 20cm - MBRF2020CT-Y 至 馬達 (2條防逆流線)
  • 18 AWG 細線1條 3cm - MBRF2020CT-Y 兩端連結
  • 10 AWG 細線1條 (藍色)20cm - IRF3205 至 馬達
  • 10 AWG 細線1條(藍色) 20cm - IRF3205 至 電池負極
  • 10 AWG 細線1條(紅色) 40cm - 電池正極 至 馬達

 

現在要來製作升壓電路,這個電路是由國大陸的一個電子發燒友網站找到,感謝分享(*若來源錯煩請告知修正)原理圖如下:

焊接LM555晶片須注意,不要焊接太久以免晶片壞死,不要超過1秒。
或許也可以另外購買晶片插座,先焊上插座最後整體電路都完成在插上晶片,這樣就可以保證晶片不會在焊接時過熱燒壞。

以上完成升壓電路,此電路的功能是把輸入電壓乘以兩倍,再進行輸出。(此電路原理雖然為兩倍電路,但通常輸出大概只能達到180~170%左右)

完成此電路後,建議先進行功能測試。請先準備四節AA電池盒及乾電池作為輸入電壓用,或者也可以使用一條不要的USB傳輸線將線頭剪斷,留下紅色(+)與黑色(-),USB提供的5V電壓也可以作為使用

(這裡需要注意LM555必須要提供 4.5V~16V之間電壓 才能正常運作)

先檢測輸入電壓是否足夠4.5V~16V

 

檢查輸出電壓是否有達到輸入的兩倍電壓 180~170%以上,若電壓低於170%請檢查電路是否有短路?

有時候焊接用的錫油殘留也很容易造成短路,最好在焊接完畢後,用去漬油清洗一下

(記得等電路板冷卻後,不可插上電源在行清洗,清洗後請等電路板徹底乾燥)

 

完成測量後,為了防止升壓電路產生的高壓逆流對Arduino造成影響,所以必須使用光耦合器來隔離。並且利用電晶體組成了一個自動的運算開關。

 

現在我們要進行測試,當Arduino訊號輸入時,光耦合器可不可以正常運作。

正常狀態當訊號輸入時,A光耦合器會接通,而B光耦合器會斷開,若訊號切斷時,動作則隨之相反。

請先準備四節AA電池盒及電池作為控制訊號電壓用,或者也可以使用一條不要的USB傳輸線將線頭剪斷,留下紅色(+)與黑色(-),USB提供的5V電壓也可以作為使用

  A光耦合器 B光耦合器
訊號輸入 接通    ✔ 斷開   ✘

訊號切斷

斷開   ✘ 接通   ✔

 

當測試後確認沒問題,就可以把升壓電路輸出端連接到光耦合器的輸入端。所以當Arduino 送入訊號到光耦合器內,就可隨意控制兩倍電壓輸出或者切斷

 

接下來連接Arduino與自製的升壓總模組,首先先使用內建的Blink來測試一下動作如何。

但Blink必須要先修改 Pin的號碼(預設是13號,要改成9號)

 

插著USB啟動Arduino,並把四節AA電池盒正負極電源接入升壓總模組電池電源輸入端,並且用三用電錶測量訊號輸出點,測試完成後拔掉USB就可以讓輸出不再動作

(使用三用電錶測量時每隔1秒就把電壓拉高,並且間隔1秒再把電壓降回0)

 

一切正常就緒,我們可以把輸出連接至 IRF3205 在使用一顆LED來代替馬達進行導通測試,因為目前Arduino內部包含著Blink的程式碼,所以LED也應當一開一關的閃爍

 

進行到這裡電路基本上都已經完成,再把LED換成馬達時必須注意先將  IRF3205 及 MBRF2020CT-Y 鎖上散熱片,因為馬達運轉時耗電量極大晶片勢必會產生很多廢熱

為了防止它燒毀,就先安裝上散熱器吧!我使用的是CPU散熱鰭片,因為這個廢電腦內就可以取得,面積夠大夠涼快。

 

散熱器需要進行加工才有辦法鎖上晶體,所以必須要先準備電鑽先鎖上2.6mm的鑽頭

之後在使用M3 攻牙刀 進行攻牙,攻牙時是利用牙刀去把孔內削出螺紋,過程雖然像是在鎖螺絲一般,但需要注意不能一次轉到底否則容易讓牙刀斷裂在孔內。

雖然這個金屬是鋁製,本身硬度不高,但攻牙時最好是 正旋入半圈退後1/4圈 依此不斷依此步驟直到適當深度,且旋轉速度需要緩慢穩定盡量拿直不要偏一邊,若有任何卡住切記不要硬轉。

鑽好孔之後,才能使用攻牙刀進行攻牙(TAPS),下圖是正在攻牙的狀況

 

最後將電路塞入盒子,並將散熱器固定好,在塗上AB膠以防止振動造成電極歪掉短路造成燒毀,

 

 

這個模組另外需要注意一點,電池正負極接線端絕對不能插錯,建議多花一點錢買個RC專用的電池插頭來焊接(大電流T插)

第一次插大電池時請注意,最好先帶一層麻布手套,因為萬一電路的某個部份沒有檢查到因此短路,

通常電線會最先發燙並且外皮熔燬,這時候若有帶著麻布手套就不用怕,馬上拔掉吧!

 

(我曾插錯過一次,一瞬間的電流把我的電線全部熔燬,因為沒有帶手套所以手指也因此燙傷。切記安全至上,一有問題馬上拔除電源)

 

最後要我們把實際要驅動的Sketch更新到Arduino內就可以了,此時接上電池手按壓開關因該就會驅動馬達。

 

 

前一篇 只要3500以內的預算,就可以打造一台電動滑板!(Part.1 先準備好材料並且做硬體)

下一篇 會來稍微簡述一下Sketch用意。希望可創造出更多的發展

 

 

 

檢測時最需注意的是電線的溫度狀況,其次是晶片再來就是電池與馬達。

材料

  • 電子迴路-升壓區零件
    • LM555 x1顆 約20元
    • 1KΩ 1/4 電阻 x2顆 約30元
    • 10KΩ 1/4 電阻 x1顆 約30元
    • 20KΩ 1/4 電阻 x1顆 約30元
    • 43KΩ 1/4 電阻 x1顆 約30元
    • 150Ω 1/4 電阻 x1顆 約30元
    • 100UF 25V 電容 x2顆 約10元
    • 0.1UF 104 陶瓷電容 x2顆 約2元
    • PC123 光耦合器 x2顆 約20元
    • 1N4007 二極體 x2顆 約10元
    • SS9012電晶體 x1顆 約5元
    • SS9013電晶體 x1顆 約5元
  • 電子迴路-一般零件
    • 散熱片 約150元
    • MBRF2020CT-Y  二極體 x1顆 約20元
    • MOSFET IRF3205 約30元
    • 5x7 cm 洞洞板 約5元
    • 3m 22AWG 細電線 約30元
    • 1m 18AWG 細電線 約30元
    • 1m 10AWG 粗電線 約100元
    • 775 12v 300w馬達 約350元
    • 8.4v Ni-MH 3000mAh 電池 約800元
    • 10x10mm 輕觸開關 約20元
    • Arduino nano 約100元
    • 蜂鳴器 5v 自激 約25元
  • 硬體零件
    • Longboard 長板(滑板)約1500元
    • ABS 3D列印零件 100t 2GT 皮帶盤 約150元
    • 鋁合金 16t 2GT 皮帶盤 約100元
    • 環形皮帶 250mm 2GT 約150元
    • 塑鋼土 100g 約70元
    • 保鮮小盒子 約50元
    • M5x60mm 內六角螺絲+螺母 3組 約50元
    • M4x10mm 十字螺絲含墊片2組 約10元
    • M3x30mm 十字螺絲含螺帽、墊片 13組 約50元
    • R1030ZZ 軸承2顆 約100元
    • AB膠

特別的操作工具

  • 2.6mm 鑽頭
  • 鑽床或電鑽
  • M3 攻牙刀 (第2攻)
  • 攻牙刀板手
  • 夾住工件的虎鉗
  • 3.5mm 鑽頭
  • 手持砂輪機
 
 
文章標籤
創作者介紹

MakerKo 為了創造而活

MakerKo 發表在 痞客邦 PIXNET 留言(17) 人氣()


留言列表 (17)

發表留言
  • VENICE0926
  • 你好:很好玩的專案,料件清單是否少了SS9012及SS9013雙極結晶體管。
  • 謝謝你的提醒,我已經加進文章去了!

    MakerKo 於 2016/11/20 22:12 回覆

  • 融融
  • 你好 我想請問一下你的 8.4v電池是裝兩顆嗎
  • 不是,我裝一顆,一顆就有8.4v,這是一種遙控車使用的電池。

    MakerKo 於 2016/12/20 19:49 回覆

  • Ryan
  • 建議你直接出兩顆IR2103之類的IC做2組half-bridge gate driver取代NE555
  • 謝謝您的建議,我找時間來試試看!
    這樣的優點是?

    MakerKo 於 2017/01/06 18:33 回覆

  • Andy  Tsai
  • 您好我是資訊科高三的學生,因為專題的關係剛好看到這篇文章覺得有興趣,但看完文章後還是覺得不太懂,例如:1.我們是打算把腳踏開關改成用藍芽控制,但不大懂程式碼要如何製作,另外,2.我還是不太懂PART.2的製作步驟,是要先一一考慮零件是否能夠適用再來決定要不要替換那些零件嗎?是否方便幫我指點迷津謝謝。
  • 1.你若要嘗試藍牙控制,建議先理解一下藍牙的sketch如何寫。 你有經驗嗎?

    若有試過因該就很容易理解怎麼改寫。


    2.建議先能了解整個系統的狀態是怎麼工作,再去依照妳要的需求對症下藥。

    你問題在哪呢?一起來討論看看

    MakerKo 於 2017/10/16 20:02 回覆

  • Andy  Tsai
  • 1.沒有經驗ㄝ....但是想嘗試一下
    2.其實我們基本ˋ上都是跟您一樣,只是我們的開關是把腳踏開關改成藍芽控制,但不太清楚要如何製作@@方便提供個方向參考參考嗎?
  • ok。
    首先需要先理解程式能不能看得懂,但因為我這邊沒有寫這樣的文章,所以也只能請你去別人家的blog爬爬文。通常這種文章都是想要拿來做遙控車的。
    關鍵字:arduino 藍芽互相通訊


    硬體上你要準備兩套藍芽模組(一組發射,一組接收),在加上一套拿來當遙控器的mini pro主板。

    買到材料後,先學習怎麼發送跟接收文字。
    一般來說用uno當作練習硬體會比較方便,因為都有內建的usb通訊。

    可能需要先設定好模組,通常賣模組的,都會有介紹如何操作,買前先問問。

    設定好後,對這兩組的arduino上傳不同的sketch(一組發射,一組接收)
    讓他們兩個自己通訊,插上電 "發射端"發射一個英文字母給"接收端"看看有沒有辦法成功。

    若可以你就成功一半了!

    接下來就是接收端改寫一下程式,判斷收到某個字母的時候,就會驅動某支腳位通電或是跑一下什麼迴圈。
    說到這你因該了解了吧?

    MakerKo 於 2017/10/24 20:36 回覆

  • Andy tsai
  • 那請問可以直接用一塊arduino還是UNO做這些事情嗎?就不用用到那麼多塊模組
  • 很多模組,你是指哪個部分?

    MakerKo 於 2017/11/06 11:00 回覆

  • 悄悄話
  • Andy tsai
  • 請問那個控制訊號的接腳一定要是 9 pin嗎?為什麼?
    還有nano板是不是要接地?那是要接到哪裡去?
  • 因為程式內部定義是用9pin 你可以改其他試試(程式如何定義,外部就要配合)

    MakerKo 於 2017/12/11 14:24 回覆

  • Andy tsai
  • 另外想請問升壓電路是還能用其他方法來替代嗎?是有哪幾種呢?
  • 你可以考慮看看現成模組 關鍵字 升壓模組

    MakerKo 於 2017/12/11 14:29 回覆

  • 訪客
  • 板主你好

    我用你的方法測試光耦合的時候

    第一張圖無法成功導通 (給予訊號,左邊的光耦合)

    但是第二張圖卻能成功導通 (中斷訊號,右邊的光耦合)

    我確定線路應該跟你的圖接的一樣

    想請問一下為什麼會這樣?

    還是說還有什麼可能會導致這樣?

    感謝你
  • 1你的光耦合是哪種型號呢?你輸入的控制訊號電壓跟規格書的相同嗎?
    2通常在這樣的狀況下,你可以先單獨測試光耦是否正常。(先將訊號接入,電表測量是否有導通,或是斷開)
    3沒問題後,有可能是電晶體&電路上有短路或是問題,所以單獨測試電晶體的狀況。
    都沒問題後再組起來,共同測試。

    MakerKo 於 2017/12/24 15:19 回覆

  • 訪客
  • 板主你好

    請問PC123還有分細節的規格嗎? 我使用的應該是PC123 DIP-4

    輸入訊號有試過AA電池合的6V和UBS的5V

    在測試你上圖的B光耦合是OK的(訊號斷開)

    但是A就是都不會導通(有依上圖的地方接上訊號線,但是是剛說的6V和5V)

    然後想請問一下單獨測試PC123的話要怎麼測才正確?

    例如正負電接哪個腳位 訊號哪個腳位

    我有試過POWER接1 2腳 訊號接3或4 但是都沒通 不知道我是不是接錯了= =

    有查過規格書但不是很懂 所以想請問你 謝謝!

    另外線路部分我檢查過N次了確定跟你圖上的一樣 但就是上圖的A光耦合怎麼都不會通

    我自己的實力也不夠真的摸不太出來 所以想請問板主

    拜託再次麻煩你了!感謝
  • 因為回復沒辦法貼圖,你可以參考規格書腳位說明
    通常會有以下四個腳未標示說明如下
    Anode >>正電輸入
    (控制訊號+,注意這個輸入電流不能太大喔我通常會串上250歐以上的電阻,在5V的環境)
    Cathode >>接地
    Emitter >>接電錶+
    Collector >>接電錶-

    然後你把電表轉到逼逼聲的那個位子,或是電阻的檔位。觀察一下
    若沒通,你用電表測量一下Anode .Cathode ,因該是會通。

    其實這種晶體內部埋著一顆LED,通常1/2腳就是LED正負極。有可能操作過程讓LED燒掉了...

    MakerKo 於 2017/12/28 10:20 回覆

  • 訪客
  • 板主你好

    我是樓上的發問人

    想補充問一下~我後來發現我的電晶體9012跟9013好像不是SS開頭的

    應該是C9013跟UTC9012

    請問不知道是不是這兩個電晶體的關係(NPN會因為這樣而不同嗎?)

    所以我在想如果兩個都換成SS9012跟SS9013是否能解決上圖A光耦合不會導通的問題

    我光耦合應該是用夏普的PC123 不知道這個是不是也有ˋ問題

    至於線路應該是都正常

    還請樓主有空可以解惑小弟 感謝!
  • C 或是 SS 或是UTC 是廠家的代號,代表不同廠家做的。
    以這種初階應用,基本使用上只有區分PNP / NPN 兩種,對不同廠牌來說因該是不會有差異。
    至於應用在光耦合前,有可能會因為廠牌關係使得光耦合要通不通的(內部的性能不同)。

    電晶體當作開關操作時,可以說像是水龍頭,當你輸入B極電流越大,他導通的流量就越大。
    因此微調一下電阻 43K 這個電阻值,
    (有一個方便的做法,買一個可變電阻取代這電阻,然後慢慢微調,直到你滿意。)

    我猜可能是因為零件的性能不同,因此電晶體需要更大電流輸入才能打開到需要的狀態。
    你是9013側出問題嗎?
    試著調整一下把43K下降到20~10K試試(讓9013開啟量變大)。

    祝你成功!

    MakerKo 於 2017/12/28 10:37 回覆

  • 訪客
  • 版主你好

    不好意思我又忘記問一個問題

    請問關於PC123光耦合部分 你說的"導通"是指

    我三用電表要發出"嗶嗶"聲才算導通

    還是說只要出現電阻值就算導通?

    感謝解答
  • 嗶嗶才算導通 >> YES
    在線路上的阻值低到某個程度,才會有嗶嗶聲。
    因此在沒聲音出現前但有數值出現,可以視為內部的線路阻力很大(大塞車),使電流流量下降。

    通常光耦合要當成開關,都希望線路內部阻力越小越好。

    MakerKo 於 2017/12/28 10:12 回覆

  • 訪客
  • 請問腳踏開關的兩條訊號線是接到ARDUINO NANO的哪兩個PIN呢?
  • 你可以參考一下第三篇,開關街的腳位我這邊設定是在11號。
    你可以變更,但必須搭配程式碼修改!

    MakerKo 於 2017/12/28 10:40 回覆

  • 訪客
  • 關於腳踏開關的接腳位置我的意思是
    請問開關的兩條線是兩條都接到PIN11嗎
    還是一條是PIN11 那麼另一條呢?
    是說開關這個觸發行為是怎麼去觸發PIN11的呢?
  • +5v

    MakerKo 於 2017/12/30 10:15 回覆

  • 訪客
  • 請問一下~
    我在做最後測試的時候接上LED燈 而arduino的程式我是用內建單純的HIGH LOW
    間隔是5秒 但是我的LED燈並不是即時的亮與暗交替
    而是亮完之後會慢慢暗下來 過5秒後雖然還沒完全暗掉 但因為5秒又到了
    所以再亮回去 就這樣反覆
    想請問這樣是正常的嗎?

    我去量IRF3205接收10V訊號的那個腳位和電池接地的電壓
    在光耦合導通時確實有到10V 但5秒後沒通時大概還勝下有2~4V不等
    想請問是不是這個原因
    請問有什麼解決辦法嗎~

    然後我把版主你的MOTO的程式導入後 將arduino的5V和PIN11做踏板
    結果踏板按下去後感覺好像沒有發送訊號給光耦合那邊的樣子
    光耦合依舊是切斷訊號的那個導通(B) 我繼續按踏板感覺A光耦合卻沒導通
    請問是訊號沒送出去嗎?
    不好意思問題有點多~感謝回答
  • 我們把問題分兩部分解決。
    1. IRF3205 這個元件比較特殊,送訊號給時就會導通,但是切斷後並不會馬上切斷輸出,而是要通不通的。因為訊號腳上面會存留一點點電

    要解決這問題則是要把IRF3205控制端上面的餘電通通放掉,放越快關閉速度越快。

    所以光耦合設計兩顆,一顆是用來把電源快速送入,一顆用來快速放光。

    所以LED要關不關這問題,可能要往回檢查一下,看看問題是在電晶體?還是光耦合?又或者IRF3205

    2.嗯?! 沒導通? 你可以幫我測測看按下按鈕後Arduino有乖乖送訊號嗎?
    (若吧開關的+5v改成GND 有反應嗎?)


    這個跟程式如何寫有關。若沒訊號可以再利用程式庫內一些範例來測試一下...

    MakerKo 於 2018/01/05 20:18 回覆

  • 訪客
  • 不好意思再借我問一個"電池"的問題
    我買ˋ的電池跟樓主你的一樣 8.4V 3000mah的電池一條
    但是我在測試時接上去原件後 電壓大約勝下5V多(有ˋ時候6V多)(我量電池本身電壓)
    是因為有經過電阻的關係嗎? 這樣是正常的嗎?
    因為有發現到如果是這樣 經過升壓模組後出去給IRF的電壓可能會不足10V
    請問這樣是不是要換12V的電池才可以?
    謝謝
  • 電壓掉太多了,這現象很奇怪(馬達未驅動狀態)
    你檢查一下有沒有漏電,或是電路接點太近導致短路。

    還是?你電池沒充飽?

    MakerKo 於 2018/01/05 20:00 回覆