專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> Arduino >> 瀏覽文章

3D打印制作的Arduino互動(dòng)作品-骷髏精靈

作者:RobotBase   來源:來自RobotBase   點(diǎn)擊數(shù):  更新時(shí)間:2014年07月30日   【字體:

  

 

    正所謂“一夜成名天下知”,在過去的30年間,快速成型技術(shù)在傳統(tǒng)工業(yè)制造方式的擠壓下,只能蜷縮在制造業(yè)的某些角落。然而今天,在開源運(yùn)動(dòng)的助推下,硬件作為軟件的附屬已變得十分廉價(jià),3D打印技術(shù)也因此迎來了它的高速發(fā)展期。各種桌面型3D打印設(shè)備層出不窮,在網(wǎng)上搜索3D打印機(jī),會(huì)瀏覽到數(shù)以萬計(jì)的相關(guān)內(nèi)容。從MakerBot、Ultimaker這些優(yōu)秀的桌面型3D打印機(jī)到提供給電子愛好者的各種開源硬件,這些神奇的東西終將改變我們未來的生活。
    喜歡嘗鮮的筆者老早就購置了一臺3D打印機(jī),這款打印機(jī)采用的是相對成熟的FDM技術(shù),據(jù)說,它是目前市場上最可靠的桌面型3D打印機(jī)。材料使用的是廉價(jià)的環(huán)保可降解絲材PLA。


 
圖1 筆者使用的MakerBot 3D打印機(jī)
  

    從第一次開始打印,筆者就深深的愛上了這臺3D打印機(jī)。有了它,自己再也不必為了滿屋翻找合適的零部件。一般的外殼與支撐結(jié)構(gòu)、通孔,甚至是關(guān)鍵的連接件,只要是經(jīng)過合理的設(shè)計(jì),都可以一次打印搞定。把筆者從鋸條、電鉆、手銼的原始DIY生活中解放出來了,幾乎實(shí)現(xiàn)了從設(shè)計(jì)到制造的一體化,省時(shí)又省力。我們姑且不談什么產(chǎn)業(yè)鏈、什么生態(tài)圈,就以上的幾個(gè)優(yōu)點(diǎn),筆者發(fā)自肺腑的告訴你:“3D打印機(jī),值得擁有”。
    筆者在萬圣節(jié)來臨之際,想給好友DIY一個(gè)小禮物。整個(gè)禮物的外殼都是這臺>MakerBot 3D打印機(jī)的杰作,透過本書,我會(huì)將這個(gè)小禮物的制作全過程,向你娓娓道來。
 

骷髏精靈——3D打印與Arduino完美結(jié)合

    說了半天3D打印,其實(shí)它早已是開源領(lǐng)域的一個(gè)熱議話題;而Arduino,則是流行已久的簡單、易用的開發(fā)板。這兩款神器落在熱衷于改變生活的筆者手里,會(huì)創(chuàng)造出怎樣的驚喜呢?下面就和大家一起分享用3D打印機(jī)+Arduino控制器+避障傳感器等部件制作的一款新奇小禮物:放置在盒子上的一個(gè)靈異骷髏頭,我喜歡叫它“骷髏精靈”。在內(nèi)部Arduino的控制下,它的兩個(gè)眼睛會(huì)隨時(shí)盯著面前的你!拿它當(dāng)作萬圣節(jié)禮物送給朋友一定搞怪。.
    為了制作這樣一個(gè)詭異的萬圣節(jié)禮物,筆者想起了早先在Thingiverse下載的骷髏模型。打算以它為藍(lán)本,進(jìn)行一番Arduino電控改造。首先,把模型文件放入MakerWare中,配置為低精度打印,等待Gcode生成完畢,存入SD卡,開始打印。


 
圖2 模型放入MakerWare中
 

    接下來,還要為這個(gè)骷髏頭設(shè)計(jì)兩個(gè)炯炯有神的大眼睛,在SolidWorks里,我們直接為眼球添加一個(gè)安裝孔,直接3D打印出來,省去了后續(xù)的鉆孔操作。當(dāng)然,如果前期,孔的大小不是很確定,也可以先在Solidworks里隨便開一個(gè)小孔,這樣后期用電鉆擴(kuò)孔會(huì)很方便。


 
圖3 Solidworks繪制骷髏眼球
 

    為了禮品的美觀,我們還需要繪制一個(gè)外殼,即能夠做為承托骷髏頭的底座,也能夠安置我們的Arduino控制板。


 
圖4 用SolidWorks繪制骷髏頭底座
 
圖5 3D打印骷髏模型過程
 

    嗯,不錯(cuò)。這些結(jié)構(gòu)零部件就先交給3D打印機(jī)來加工吧。想讓骷髏精靈的眼球盯著面前的人轉(zhuǎn)動(dòng)起來,除了“眼球”相關(guān)機(jī)構(gòu)的設(shè)計(jì)外,更重要的是電控部分的程序設(shè)計(jì)。接下來給大家說明下它的電路控制部分的組成。
 

眼睛轉(zhuǎn)起來——控制板與傳感器挑選
 
   為了實(shí)現(xiàn)讓骷髏精靈的眼睛盯著面前物體移動(dòng),我們需要一些能夠檢測面前障礙物的傳感器,除此之外是一種能夠帶動(dòng)眼睛轉(zhuǎn)動(dòng)的電機(jī)。最重要的是控制核心板,由它來接收傳感器信號,執(zhí)行特定程序,最終驅(qū)動(dòng)控制電機(jī)運(yùn)動(dòng),實(shí)現(xiàn)我們想要的功能。別急,筆者這就為大家慢慢介紹自己的硬件搭配方案。
    控制器:身為一個(gè)電子制作迷,筆者一定會(huì)選擇Arduino系列控制器,因?yàn)樗唵我子、方便可靠;不過考慮到如今許多人身邊都閑置有Micro-USB接口的手機(jī)數(shù)據(jù)線,筆者要給大家推薦的是一款配備Micro USB接口的CarDuino UNO控制器。它的功能與Arduino UNO完全一致,但板上的Micro USB接口會(huì)為你省去購買數(shù)據(jù)線的開銷,板子更強(qiáng),接口標(biāo)注更清晰。


 
圖6 CarDuino UNO 控制器
 

CarDuino UNO控制器的基本參數(shù)
控制芯片 ATmega328
運(yùn)行電壓 5V
輸入電壓 7-12V
數(shù)字I/O口 14個(gè)(6路具備PWM功能)
模擬輸入口 6個(gè)
Flash空間 32KB(0.5KB被bootloader使用)
SRAM 2KB
EEPROM 1KB
時(shí)鐘頻率 16MHz
數(shù)據(jù)接口 Micro-USB

 

    驅(qū)動(dòng)電機(jī):骷髏頭的兩只眼睛需要能夠轉(zhuǎn)動(dòng),不過這里攜帶的負(fù)載質(zhì)量小,且轉(zhuǎn)向始終是同步的,筆者選用了一個(gè)小巧的9g伺服舵機(jī),至于具體的傳動(dòng)結(jié)構(gòu),就留到后面詳細(xì)敘述。


 
圖7微型伺服舵機(jī)
 

    避障傳感器:檢測面前物體的傳感器,筆者將用到的是一種Mini紅外避障傳感器,它板載兩個(gè)電位器,一個(gè)調(diào)節(jié)感應(yīng)范圍、一個(gè)調(diào)節(jié)靈敏度,能夠適應(yīng)環(huán)境,靈活易用。


 
圖8 Mini紅外避障傳感器
 

    為了我們的小制作更加美觀,筆者也特別地為Mini紅外避障傳感器設(shè)計(jì)了外殼,一起交給3D打印機(jī)來加工。


 

圖9  3D打印的紅外避障傳感器外殼

 

    傳感器擴(kuò)展板:由于手頭恰好有一塊傳感器擴(kuò)展板,筆者也就懶得用多余的杜邦線了,直接把傳感器與舵機(jī)的3P接線頭插接在該擴(kuò)展板上對應(yīng)接口上即可。


 

圖10傳感器擴(kuò)展板
 

    所需要的電路元件已經(jīng)選擇好了,接下來只要把UNO擴(kuò)展板插接在CarDuino UNO上,四個(gè)紅外避障傳感器分別連接在擴(kuò)展板的數(shù)字2、數(shù)字3、數(shù)字4、數(shù)字5接口,舵機(jī)連接在數(shù)字9接口,下面羅列電路控制方面的基本硬件構(gòu)成:


 
圖11 硬件構(gòu)成框圖
 

眼睛轉(zhuǎn)起來——機(jī)械結(jié)構(gòu)設(shè)計(jì)
 
    接下來著重介紹下眼睛動(dòng)作的機(jī)械結(jié)構(gòu)。本著一切從簡的目的,這次筆者并沒有打算使用3D打印機(jī)來加工復(fù)雜的機(jī)械傳動(dòng)結(jié)構(gòu)。而是找來兩個(gè)廢棄的按動(dòng)式圓珠筆,發(fā)揮我們的優(yōu)良傳統(tǒng):拆!
    把其中的兩根圓珠筆芯當(dāng)做骷髏精靈眼睛的轉(zhuǎn)軸,筆芯從骷髏的眼眶下方穿出,圓珠筆芯則方便的與“眼球”穿接。這樣,圓珠筆芯一旋轉(zhuǎn),就會(huì)帶動(dòng)眼球一起旋轉(zhuǎn)。
 


圖12 “眼睛”旋轉(zhuǎn)的機(jī)械結(jié)構(gòu)
 

    兩根轉(zhuǎn)軸的同步橫軸也是用的筆芯,連接銷用的是訂書釘。這樣,這根橫軸擺動(dòng)的同時(shí),就會(huì)間接帶動(dòng)上面的兩個(gè)眼球轉(zhuǎn)動(dòng)。試圖用舵機(jī)的搖臂直接與同步橫軸相連時(shí),筆者犯了難。因?yàn)槎姹坜D(zhuǎn)動(dòng)受限,轉(zhuǎn)角稍有不慎,舵機(jī)動(dòng)作就會(huì)卡住,容易損害舵機(jī)?粗烂嫔隙嘤嗟膬蓚(gè)彈簧,筆者當(dāng)時(shí)靈機(jī)一動(dòng)。把這其中一個(gè)拆出的彈簧拿來,套在同步橫軸上,搖臂連接到彈簧,間接帶動(dòng)同步橫軸。舵機(jī)轉(zhuǎn)動(dòng)過量時(shí),不會(huì)卡死,而是壓縮彈簧。


 
圖13 舵機(jī)帶動(dòng)“眼球”轉(zhuǎn)動(dòng)的機(jī)械結(jié)構(gòu)
 

    好了,一個(gè)由舵機(jī)擺動(dòng)進(jìn)而帶動(dòng)兩個(gè)眼球左右轉(zhuǎn)動(dòng)的機(jī)械結(jié)構(gòu)設(shè)計(jì)完成,然后安上后蓋。

 

 
圖14 初步組裝好的骷髏精靈
 

骷髏精靈之靈魂——Arduino程序編寫
 
    硬件與機(jī)械結(jié)構(gòu)制作完成了,趕快來寫程序吧,這個(gè)可是筆者的強(qiáng)項(xiàng)。思考下,程序要實(shí)現(xiàn)的功能是:當(dāng)人走進(jìn)骷髏精靈的“視力范圍”時(shí),它的眼睛就會(huì)盯向你,并且隨著你的移動(dòng)而轉(zhuǎn)動(dòng)。因?yàn)楣δ芎唵危绦驅(qū)懫饋硪膊浑y,基本邏輯就是,哪個(gè)紅外避障傳感器檢測到障礙物,就讓舵機(jī)旋轉(zhuǎn)到特定角度,好讓骷髏的眼睛盯向那一方向。不過要考慮好細(xì)節(jié),比如有兩個(gè)人或很多人圍著骷髏精靈,也就是多個(gè)紅外避障傳感器被同時(shí)觸發(fā)時(shí),它該看誰呢?看美女嗎?我是讓它誰也不看,目視前方,哈哈。話不多話,給大家看下四個(gè)紅外避障傳感器的布置以及程序的控制流程。


 
圖15 四個(gè)紅外傳感器部署位置與對應(yīng)序號
 


圖16 程序流程圖
 
圖17 程序編譯通過,準(zhǔn)備下載
 

骷髏變精靈——大功告成
 
    到此為止,我們的骷髏精靈就已經(jīng)大功告成了。筆者第一次弄時(shí),剛開始效果很不理想,眼睛不是盯著不動(dòng),就是一直在瘋狂的亂抖,很難停下來。原因是紅外傳感器對障礙物過于敏感。這時(shí)需要依照環(huán)境特點(diǎn)做靈敏度校正。如果你覺得感應(yīng)距離不合適,也應(yīng)該適當(dāng)調(diào)整感應(yīng)距離大小。
    眼睛轉(zhuǎn)動(dòng)范圍調(diào)整完畢,線路擺好,就可以合蓋,在裝進(jìn)萬圣節(jié)禮物包之前可以暢快的試玩啦!


 
圖18  骷髏精靈整體展示

 
    經(jīng)過一上午的努力,一個(gè)死寂的骷髏頭模型終于變成了一個(gè)活靈活現(xiàn)會(huì)動(dòng)的精靈。筆者不禁感慨,每天為了工作而忙碌,生活有時(shí)也會(huì)變得枯燥乏味。當(dāng)意志消沉無聊的時(shí)候,打開桌上的電腦,拿起Arduino寫個(gè)小程序,通過3D打印機(jī),動(dòng)動(dòng)手,很容易就會(huì)變廢為寶,制作出各種各樣有趣新奇的作品,筆者希望拋磚引玉,帶給大家一些創(chuàng)作靈感,同時(shí)也期望大家都能開源無私分享。

    


   

關(guān)閉窗口

相關(guān)文章