0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

線性時(shí)鐘詳細(xì)制作教程

454398 ? 作者:工程師吳畏 ? 2018-09-17 11:44 ? 次閱讀

相信童鞋們溫暖的小窩里都少不了一塊鐘表,滴滴答答不停走動(dòng)的表針忠實(shí)的指示著時(shí)間。這些圓型時(shí)鐘極具20世紀(jì)特色,現(xiàn)在我就給大家看一些更具后現(xiàn)代感的東西。

這是一個(gè)時(shí)鐘DIY的全部過程:從開始的構(gòu)想到制作流程的每一步,都將原汁原味的呈現(xiàn)出來。

我們要制作的東西,叫做線性時(shí)鐘。什么是線性時(shí)鐘呢?顧名思義,所謂線性時(shí)鐘就是把圓形鐘面上的數(shù)字拉直,然后按直線排列起來。想象一下,要是在家里或是辦公室放著一個(gè)這么Geek的時(shí)鐘,一定會(huì)有種很潮的感覺。

我雄心勃勃,希望將來能把線性時(shí)鐘推向市場(chǎng),讓它走進(jìn)千家萬戶。如果你看了之后,準(zhǔn)備親自操刀DIY一個(gè),或是靈光閃現(xiàn)想對(duì)它進(jìn)行改進(jìn)的話,本文提供全套制作方案和使用的零件列表。

這個(gè)線性時(shí)鐘是一個(gè)簡(jiǎn)化版本,用了很多常見的零件。它只是個(gè)檢驗(yàn)可行性的愿型。制作過程并不復(fù)雜,如果零件、工具齊全,一晚上足以搞定。我選擇的元件大都比較容易找到,制作時(shí)也無需對(duì)它們開膛破肚,更用不著太特殊的東西,而且制作精度的要求也不太高。

之后介紹了我試圖改進(jìn)線性時(shí)鐘所做的幾種嘗試以及最終定型方案。我很享受整個(gè)DIY過程,我相信你看過之后肯定也按捺不住、蠢蠢欲動(dòng)了吧。下面就讓我們開始吧!

1 設(shè)定目標(biāo)

這里選取了我設(shè)計(jì)時(shí)畫的部分草圖。

從中可以大致看出線性時(shí)鐘逐漸成形的過程。

這個(gè)過程確實(shí)很辛苦。我甚至因?yàn)榭蓪?shí)現(xiàn)的方法太多,不知如何選擇而陷入僵局。

我提前設(shè)定了一些線性時(shí)鐘應(yīng)該具備的特性:

1、小功率,最好不用電源線,僅用電池就能工作

2、造價(jià)低,適應(yīng)普通零售商店的價(jià)格范圍

3、水平、垂直放置皆可使用

4、指針不走動(dòng)時(shí)不能有噪音

5、重量輕,無需特殊的架子或鉤子就能固定到墻上

6、滿足多數(shù)人審美觀點(diǎn)需求,要有多種樣式、顏色和材料可供選擇

我猶豫了很長(zhǎng)時(shí)間之后,終于選定了一個(gè)比較簡(jiǎn)單的機(jī)械設(shè)計(jì)方案,即用一個(gè)繞線輪來控制裝有彈簧的蝸牛凸輪的轉(zhuǎn)向,并通過他們來帶動(dòng)齒輪組,控制指針移動(dòng)。

時(shí)鐘信號(hào)來源于一個(gè)石英鐘機(jī)芯,機(jī)芯每秒鐘發(fā)出一個(gè)脈沖信號(hào),該信號(hào)可作為時(shí)鐘的計(jì)時(shí)裝置。其實(shí)有很多電子設(shè)備都能實(shí)現(xiàn)計(jì)時(shí)功能,比如時(shí)鐘芯片和無線電時(shí)鐘等,但是為了簡(jiǎn)單起見,我還是選擇了石英芯片,因?yàn)槲覍?duì)它比較熟悉,并且有利于控制成本。

為了避免往時(shí)鐘上安裝討厭的電源線,我決定用電池作為時(shí)鐘的能源。因此我主要考慮使用彈簧驅(qū)動(dòng)裝置,這樣電機(jī)之類的就不必使用了,只需每分鐘給個(gè)脈沖信號(hào)就行。但如果按照這個(gè)思路制作,難度會(huì)很大,所以在本文中我將設(shè)計(jì)簡(jiǎn)化為使用微控制器來驅(qū)動(dòng)步進(jìn)電機(jī)。

看到這里,童鞋們可以直接跳到最后去看看制作完的線性時(shí)鐘是個(gè)神馬模樣。

2 最終定型設(shè)計(jì)

線性時(shí)鐘的設(shè)計(jì)理念是用常規(guī)的原理,設(shè)計(jì)出一個(gè)具有非常規(guī)外形的時(shí)鐘。我想讓制作出的時(shí)鐘達(dá)到這樣一種效果:乍一看根本不像時(shí)鐘,但定睛一看又確確實(shí)實(shí)是個(gè)時(shí)鐘。它具備普通時(shí)鐘的一切要素(指針、數(shù)字等),但是外形卻完全顛覆常規(guī),令人難以置信??吹竭@里也許會(huì)有童鞋不理解:“你要做線性時(shí)鐘,可是如果表針走到頭之后怎么辦呢?——不要著急,耐心看下去,我會(huì)給你個(gè)滿意答復(fù)的哦。

從外觀上看,它也不會(huì)令人感到突兀,因?yàn)槲蚁胱屗苋谌氲狡胀彝ブ腥?,所以在顏色和材料的選擇上都考慮了這一點(diǎn)。但是它的外形的確是與眾不同,橫著放,會(huì)讓我們想起老式收音機(jī)上的調(diào)頻指針,豎著放會(huì)讓人聯(lián)想到氣壓計(jì)、溫度計(jì)之類的儀器。

在水平狀態(tài)下時(shí),它可以懸掛到墻上,或是當(dāng)做書架或者壁爐架使用。豎起來放置時(shí)看時(shí)間可能困難一些,因?yàn)樯舷伦x數(shù)總要比左右讀數(shù)更別扭一些。

3 線性時(shí)鐘原型----簡(jiǎn)介和零件目錄

在完成線性時(shí)鐘制作的過程中,我利用手頭的材料制作出一個(gè)線性時(shí)鐘的原型,用它來驗(yàn)證某些想法的可行性。

制作原型的目的是為了盡快確定可行的制作方案,摸清制作的難度以及需要的時(shí)間,并借此推測(cè)預(yù)定時(shí)間內(nèi)最多能測(cè)試幾個(gè)版本。

下面就是我選擇的制作材料,材料的選擇并非因?yàn)樗鼈兺昝肋m用,只是碰巧想到,或是恰好有現(xiàn)成的,所以換成其他可替換的零件肯定也是沒問題的。

3.1 底座

○ 我用泡沫夾芯板來制作底座,因?yàn)樗亓枯p,而且硬度高,強(qiáng)度大,切割比較方便,切痕清晰。如果沒有泡沫板,那瓦楞紙板也是個(gè)不錯(cuò)的選擇。

3.2 運(yùn)轉(zhuǎn)部分

○ 2個(gè)窗簾導(dǎo)軌----我花了7英鎊(11美元)從John Lewis商店買了個(gè)PVC材料的導(dǎo)軌。導(dǎo)軌需要兩段,它的長(zhǎng)度就是線性時(shí)鐘的長(zhǎng)度。我將一個(gè)125公分的窗簾導(dǎo)軌鋸成了兩段,因此測(cè)試機(jī)的長(zhǎng)度就是62.5厘米。

○ 4個(gè)縫紉機(jī)繞線輪當(dāng)作傳動(dòng)輪----塑料的比較好,而且更便宜。

○ 2個(gè)滑輪安裝在時(shí)鐘另一端----我恰好有滑輪,如果沒有滑輪也可以用縫紉機(jī)繞線輪代替。

○ 繞線要要找稍微粗一點(diǎn)的,還要找些松緊帶,一些輕木片之類的能在導(dǎo)軌槽里來回滑動(dòng)的薄片。

3.3 控制核心

○ 帶有Adafruit Motorshield 的Arduino控制板--用這么智能的裝備貌似是殺雞用牛刀了,因?yàn)槲仪『糜幸粋€(gè)性能不錯(cuò)的板子,所以就直接用上了。步進(jìn)電機(jī)控制的原理并不復(fù)雜,如果你有個(gè)暫時(shí)不用的Arduino兼容板,再有幾片L293芯片,就可以很容易的在面包板上搭建出控制電路來驅(qū)動(dòng)步進(jìn)電機(jī)。你可以直接在Tom Igoe的步進(jìn)電機(jī)專題中查到用Arduino驅(qū)動(dòng)步進(jìn)電機(jī)的電路。但是,這樣的獨(dú)立電路不如Motorshield自帶的控制庫(kù)性能強(qiáng)勁。

○ 所有版本的邏輯/計(jì)時(shí)部分的代碼都是相同的,只是接口部分代碼可能有少許不同。據(jù)我所知,所有的Arduino兼容板實(shí)現(xiàn)這些功能都是小菜一碟。

○ 2個(gè)步進(jìn)電機(jī)——我測(cè)試的這種步進(jìn)電機(jī)極其便宜,因此轉(zhuǎn)矩不大,精度不高,每轉(zhuǎn)一圈只分成20步,沒花多少銀子就買到了。同時(shí)我還制作了一個(gè)用NEMA17 步進(jìn)電機(jī)組裝的版本,它的性能強(qiáng)勁了不少,轉(zhuǎn)動(dòng)一圈分為400步,重量在1磅左右,單價(jià)約14英鎊。買到它們之后,我就不再需要廉價(jià)的電機(jī)了。

○ 需要修改Arduino程序中“stepsPerRevolution”的參數(shù)來匹配你所選用的步進(jìn)電機(jī)。

○ 在微控制器(arduino)沒有連接到電腦上的時(shí)候,還要找個(gè)6-9V的直流電源給它供電。

3.4 工具

● 主要就是刀子——不找把鋒利的刀子,泡沫夾芯板就不容易切割整齊。所以最好能找把新的長(zhǎng)刀刃裁紙刀,而且切割的時(shí)候要掌握好要領(lǐng),最好是像鋸木頭那樣來回輕輕的割,而不要像劈柴那樣用蠻力去砍。

● 粘合劑——常見的帶粘性的東西都用到了:強(qiáng)力膠水,熱熔膠,萬能膠,牛皮紙膠帶。

● 焊接用的電烙鐵或是螺旋接線柱,還有導(dǎo)線。

4 線性時(shí)鐘原型----繞線輪

● 我制作的線性時(shí)鐘大約10cm寬,首先把泡沫板裁剪到大致的寬度。

● 把窗簾導(dǎo)軌粘到上面。

● 泡沫板長(zhǎng)度不太重要,我找到的板子長(zhǎng)度不夠,需要用膠水把兩塊板子粘起來,即使中間留點(diǎn)縫隙影響也不大。我用的膠水就是普通的萬能膠,用它足以應(yīng)付PVC滑軌和泡沫板,但是它能溶解聚苯乙烯材料做的泡沫板,所以用它粘泡沫板邊的時(shí)候要注意。

● 粘滑軌的時(shí)候也要小心些,粘之前,先看看滑軌是否彎曲,要是彎曲,務(wù)必要把它掰直??梢圆眉粜╅L(zhǎng)條狀的東西卡在滑軌間,并用松緊帶固定,這樣等待膠水晾干時(shí),滑軌就能保持筆直。擠膠水時(shí)注意要沿著滑軌的邊,盡量避免過量的膠水溶解泡沫板。

5 線性時(shí)鐘原型----繞線輪

● 把兩個(gè)縫紉機(jī)繞線輪粘到一起。

● 粘貼面要打磨平整,然后用強(qiáng)力膠水粘住。

● 在時(shí)鐘運(yùn)行中,一個(gè)輪繞線,另一個(gè)輪放線。你可能會(huì)想:兩個(gè)繞線輪粘在一起,不就相當(dāng)于一個(gè)嗎,那只用一個(gè)長(zhǎng)一些的線筒可不可以呢?嗯,這種想法應(yīng)該是對(duì)的,但是如果這樣的話兩根線可能會(huì)攪在一起,所以為了讓它們運(yùn)行更流暢我使用了兩個(gè)繞線輪。

● 這里還需要設(shè)法把繞線輪和步進(jìn)電機(jī)的軸連在一起。恰好,我的電機(jī)軸上帶有一個(gè)銅環(huán),剛好能塞到繞線輪的孔里,大小還蠻合適。我用熱熔膠把軸和繞線輪牢牢地固定在一起,要是不放心,你還可以用環(huán)氧樹脂來粘,強(qiáng)度保證給力。

● 這里注意要在繞線輪和電機(jī)外殼之間留點(diǎn)縫隙,確保電機(jī)旋轉(zhuǎn)時(shí)沒有障礙。縫隙有兩張紙那么厚就可以,在固定的時(shí)候可以預(yù)先拿兩張紙墊到縫隙里,這樣就不用擔(dān)心繞線輪和電機(jī)外殼接觸了。

● 在每個(gè)繞線輪上纏一根比時(shí)鐘稍長(zhǎng)的線,兩根線的方向相反,為確保線頭不松散,把線頭用藍(lán)丁膠(BLU - TACK)粘一下,再裁剪它們到一定長(zhǎng)度。

6 線性時(shí)鐘原型---安裝電機(jī)

● 把和電機(jī)固定好的繞線輪安裝到時(shí)鐘底座端部--安裝的時(shí)候注意高度,要讓繞過上方繞線輪的線恰好能通過滑軌的槽而不會(huì)碰到滑軌。

● 繞線輪上的線要橫穿整條滑軌,然后通過滑軌另一端的惰輪引回來,再繞到繞線輪的另一側(cè)。

● 看起來想繞好這圈線也不容易,如果你有鏈條、傳送帶之類的物品,可以拿來代替繞線。我就用珠鏈(卷簾上的)做過測(cè)試,但是用起來有點(diǎn)滯重,我選的電機(jī)又比較小,用珠鏈傳動(dòng)時(shí)轉(zhuǎn)動(dòng)不流暢。然后把電機(jī)固定在底座上開好的圓槽里,我的電機(jī)小且輕,所以不用做任何處理,摩擦力就能把它們固定住。這樣做優(yōu)點(diǎn)是可以方便調(diào)整,但是缺點(diǎn)是容易受外力影響而掉下來。

7 線性時(shí)鐘原型----惰輪

● 時(shí)鐘的另一端需裝上惰輪(就是不做功的滑輪)。惰輪的位置要放準(zhǔn),它的一側(cè)應(yīng)對(duì)準(zhǔn)滑軌槽的中線。這樣穿過滑軌槽從繞線輪上引來的線就不會(huì)碰到槽的內(nèi)壁,也就能順利的繞過惰輪了。

● 繞線輪的進(jìn)線側(cè)對(duì)位置的要求就沒有這么苛刻了,只要使線能夠順暢的經(jīng)過整個(gè)時(shí)鐘,再繞回到繞線輪上就行。為了讓出繞線的通路,我在時(shí)鐘內(nèi)側(cè)剪掉了好幾個(gè)“路障”。

●惰輪安放的角度沒特殊要求,只要能保證進(jìn)出線不碰到時(shí)鐘的兩側(cè)就合適。好的,安放成功!是不是看起來很不錯(cuò)哦,不過唯一的不足就是一旦安放完畢就不太容易調(diào)整了。

8 線性時(shí)鐘原型----滑動(dòng)塊和指示器

● 用輕木做個(gè)類似雪橇的有兩條腿的滑動(dòng)塊,用來在滑軌上滑動(dòng)。在其中的一條腿上刻出凹槽來固定繩子。

● 作為一名老手,我制作的時(shí)候沒有先做好再往上裝,而是直接在滑軌上組裝的。

● 安裝好之后,等膠水一干,滑動(dòng)塊可以滑動(dòng),我就迫不及待的進(jìn)入了下一步的工作。最后,還需要從硬紙板或者其他什么東西裁下幾個(gè)細(xì)條,當(dāng)做時(shí)鐘的指針。

● 下面這個(gè)滑塊就不錯(cuò),做這樣的滑塊還真是個(gè)技術(shù)活。

9 線性時(shí)鐘原型----繞線

時(shí)鐘的繞線輪直徑和上面繞線的多少密切相關(guān),繞線越多它體型就越胖,步長(zhǎng)就變得越長(zhǎng)---也就是說,因?yàn)榫€是逐漸繞上去的,電機(jī)每前進(jìn)一步繞線輪上就多繞一些線。這在實(shí)際中會(huì)引起一個(gè)小問題,當(dāng)其中一個(gè)繞線輪繞滿線之后那么傳動(dòng)中的線會(huì)略微變形。

為了補(bǔ)償這個(gè)變化(雖然不嚴(yán)重,但也足以引起一些問題),兩邊的繞線回路可以用一條松緊帶捆在一起。這樣繞線就有了足夠的伸縮性,松的時(shí)候能保持運(yùn)行的流暢,在被拉緊得時(shí)候又能提供足夠的張力保持不變形。

這有一定的難度,我的制作過程都已經(jīng)用圖片展示出來:

● 保證每一對(duì)繞線輪上的線都足夠在時(shí)鐘上繞一圈。也就是說,要把這一對(duì)繞線輪上引出的線從時(shí)鐘另一端的惰輪上繞過再引回來。把兩個(gè)繞線輪上的線截成同樣長(zhǎng)度。

● 每個(gè)繞線輪只繞一半的線,把兩個(gè)繞線輪的線頭沿滑塊槽引到惰輪。

● 用手指捏住兩個(gè)線頭,沿著滑塊槽的方向來回扯動(dòng),試著讓線在繞線輪來回纏繞幾圈,感覺一下張力的變化程度。這樣松緊帶會(huì)拉到多緊你就心里有數(shù)了。如果變化很小(繞線較細(xì)時(shí)),那么松緊帶就不必放的太松。如果變化很大(繞線較粗時(shí)),這時(shí)就有必要讓松緊帶富余一些了。

● 在兩根線的末端都打上大約一英寸的結(jié),兩根線不直接連接,而是用一段適當(dāng)長(zhǎng)度的松緊帶連起來,先在松緊帶的一端打一個(gè)結(jié)。

● 把松緊帶打結(jié)的一端捆到從惰輪引來的線上(來自于另一端的收線輪)

● 然后再來回扯一扯線,試試看把松緊帶的節(jié)套到繞線的哪個(gè)位置比較合適,然后再打上結(jié)固定住。我在繞線的線頭上多打了幾個(gè)結(jié),這樣方便調(diào)整松緊帶的長(zhǎng)短。

● 松緊帶上的結(jié)要能卡到你開的滑動(dòng)塊凹槽上。如果怕不結(jié)實(shí)可以再用膠水粘一下,但是我發(fā)現(xiàn)只要把結(jié)塞進(jìn)槽里,它就不容易跑出來了。

10 線性時(shí)鐘原型----電路部分

● 電路部分主要由一塊Arduino板和一塊Adafruit Motorshield板組成。通常電機(jī)和Arduino板不宜使用同一個(gè)電源供電,但是在這個(gè)DIY中電機(jī)的功率很小,只需要很小的電壓就能驅(qū)動(dòng)。所以我就插了根跳線,讓arduino板的電源同時(shí)給Motorshield供電。

● 接下來又做了幾根4針腳的延長(zhǎng)線,因?yàn)槲业牟竭M(jìn)電機(jī)恰好有幾個(gè)那樣的接口,只是接口上的線稍細(xì)了些。

● 我對(duì)步進(jìn)電機(jī)了解也不太深,只能大致給童鞋們說一說基本原理:步進(jìn)電機(jī)中都有兩個(gè)線圈,對(duì)兩個(gè)線圈輸入一定頻率和極性的脈沖信號(hào),就能驅(qū)動(dòng)轉(zhuǎn)子向指定方向旋轉(zhuǎn)。在我所用的步進(jìn)電機(jī)上,這兩個(gè)線圈是相互獨(dú)立的,所以電機(jī)上引出了四根線。關(guān)于這種型號(hào)步進(jìn)電機(jī)的詳細(xì)介紹可以查閱下面。

● 兩根線連接到一個(gè)線圈上,另外兩根連到另一個(gè)線圈。借助萬用表確定怎樣正確連線。然后一個(gè)線圈的兩根線連到Motorshield板的1、2輸出端上,另一線圈連到4 、5輸出端。這里要注意線的極性,不要接反。

● 測(cè)試程序時(shí)無需等待,可以直接把程序中millisPerSecond的值改為200,它的轉(zhuǎn)速就會(huì)變成原來的5倍。你也可以改變步長(zhǎng),步長(zhǎng)變化會(huì)改變每個(gè)周期電機(jī)移動(dòng)的步數(shù)。

11 線性時(shí)鐘原型---程序

程序其實(shí)并不復(fù)雜,但是你必須要有最新版的Adafruit Motorshield驅(qū)動(dòng)。因?yàn)槠渲械囊粋€(gè)更新在這個(gè)程序代碼里有重要作用。

程序代碼:

程序中有三個(gè)內(nèi)部時(shí)間定義,由三個(gè)整型變量組成:currentSeconds, currentMinutes 和 currentHours。這三個(gè)時(shí)間在程序開始前預(yù)置,并隨著程序運(yùn)行自動(dòng)累加。

程序的主循環(huán)語句記錄開始時(shí)間,然后連續(xù)檢測(cè)時(shí)間是否超過1000毫秒。如果超過的話,內(nèi)部時(shí)鐘時(shí)間加1(doTick()),然后觸發(fā)子程序使時(shí)鐘上的指針移動(dòng)(renderTime())。

doTick()子程序負(fù)責(zé)累加時(shí)間,由秒到分鐘,由分鐘到小時(shí),并且在必要時(shí)重置時(shí)間。

renderTime()子程序的作用是把累加的時(shí)間轉(zhuǎn)換成時(shí)鐘面板上的時(shí)分秒的位置,更準(zhǔn)確的說就是步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的步數(shù)。這個(gè)程序能判斷指針當(dāng)前位置,(啟動(dòng)時(shí)設(shè)定在00:00的位置,也就是時(shí)鐘最左邊的位置),通過指針當(dāng)前位置和初始位置的比較來決定步進(jìn)電機(jī)的運(yùn)動(dòng)方向。

使用Arduino的內(nèi)部計(jì)時(shí)器有時(shí)會(huì)不太可靠。這個(gè)問題有很多解決方法, Arduino主頁 中也介紹了一些讓計(jì)時(shí)更準(zhǔn)確的方法,也可以使用時(shí)間函數(shù)庫(kù)??紤]到這僅僅是一臺(tái)測(cè)試機(jī),我采用了一種比較簡(jiǎn)略的解決方案(這貌似是我想偷懶時(shí)的一貫借口哦)。

因?yàn)槲沂褂玫氖茿dafruit公司的Motorshield板,所以便用AFMotor函數(shù)庫(kù)來驅(qū)動(dòng)電機(jī)。如果你通過其他電路驅(qū)動(dòng)步進(jìn)電機(jī),也可以選用Arduino步進(jìn)電機(jī)函數(shù)庫(kù)中的其他一些子程序來加快編程。如果你下載了我的程序,記得文件必須保存為.pde后綴,文件名可以自己修改。

** 程序 **

12 線性時(shí)鐘原型---修改軟件程序

你所選的步進(jìn)電機(jī)不一定和我用的相同,為了使程序適用于不同的電機(jī)要進(jìn)行修改,主要有以下幾處:

1、改變電機(jī)聲明變量的參數(shù)

AF_Stepper hourHand(20, 1); // hours

AF_Stepper minuteHand(20, 2); // minutes

第一行,改變數(shù)值20可以設(shè)定電機(jī)旋轉(zhuǎn)一圈移動(dòng)的步數(shù)。一般可設(shè)置為200(就是每步1.8度)。如果你沒有所用電機(jī)的參數(shù)資料,那就只能通過實(shí)驗(yàn)來檢測(cè)了,我相信你肯定能夠設(shè)法得到這個(gè)數(shù)據(jù)。

2、改變stepsPerClock的參數(shù)

int stepsPerClock = 592;

這一步可能比較復(fù)雜,因?yàn)檫@個(gè)數(shù)據(jù)取決于線性時(shí)鐘的長(zhǎng)度,電機(jī)每轉(zhuǎn)一圈的步數(shù)以及繞線輪的直徑,需要利用公式計(jì)算出來。我只計(jì)算了電機(jī)移動(dòng)100步時(shí)滑動(dòng)塊的移動(dòng)距離,通過它就能方便的算出滑動(dòng)塊移動(dòng)整個(gè)時(shí)鐘長(zhǎng)度時(shí),電機(jī)需要移動(dòng)多少步。這里注意應(yīng)在時(shí)鐘兩端留出余量,防止滑動(dòng)塊從時(shí)鐘兩端滑落。

3、調(diào)整當(dāng)前時(shí)間:

這個(gè)版本的程序中設(shè)置初始時(shí)間不太方便,下一版本中會(huì)進(jìn)行修改,使我們能用Arduino板上的按鈕來改變時(shí)間。

int currentSeconds = 0;

int currentMinutes = 55;

int currentHours = 11;

如果按照上面的值設(shè)定,時(shí)鐘啟動(dòng)時(shí)指針會(huì)指向11點(diǎn)55分。有不少改進(jìn)方法使設(shè)置初始時(shí)間更加智能,但是在原型中這個(gè)程序已經(jīng)夠用了。

我通常設(shè)置的初始時(shí)間比當(dāng)前時(shí)刻晚一分鐘,這樣就留出了往arduino板上燒寫程序的時(shí)間,刷新完程序等到恰好一分鐘時(shí)再按下復(fù)位按鈕。時(shí)鐘剛啟動(dòng)時(shí),分針可能會(huì)有些錯(cuò)位,偏離整分鐘的位置,不用擔(dān)心,用手調(diào)整到準(zhǔn)確位置就可以了。

4、調(diào)整時(shí)間速度

通過下面這一行代碼可以改變計(jì)時(shí)的速度。在測(cè)試時(shí)我把計(jì)時(shí)速度調(diào)整為實(shí)際的5倍。

int const millisPerSecond = 200;

上面這段代碼設(shè)定每秒鐘為200毫秒,而實(shí)際應(yīng)該是1000毫秒,因此若想調(diào)回實(shí)際時(shí)間時(shí),只要把200再改為1000即可。

13 線性時(shí)鐘原型----指針、表盤

測(cè)試時(shí),先用手將滑動(dòng)塊移到起始位置(00:00)然后啟動(dòng)時(shí)鐘。如果你使用的是Arduino開發(fā)環(huán)境,還可以從串口接口的顯示器讀出時(shí)鐘內(nèi)部時(shí)間。當(dāng)內(nèi)部時(shí)鐘數(shù)值改變時(shí),電機(jī)就會(huì)運(yùn)轉(zhuǎn),帶動(dòng)時(shí)鐘表盤指針移動(dòng)到相應(yīng)位置。

雖然我知道實(shí)際過程可能沒有那樣簡(jiǎn)單,但是至少理論上是那樣的。

接下來還需要制作表盤,可以打印或者干脆自己動(dòng)手畫一個(gè),然后把兩個(gè)卡片紙做的指針粘到上面,看,我們的線性時(shí)鐘基本成型!注意兩個(gè)指針距表盤的高度不能相同,否則在移動(dòng)的過程中可能會(huì)“撞車”。此刻你就可以清理一下多余的雜物,再固定上支架,這樣就可以把時(shí)鐘立起來或者是掛起來。還可以再做一個(gè)外殼,把這些電子元件隱藏在里面。

14 原型的改進(jìn)

● 我最開始設(shè)想的時(shí)鐘使用彈簧作驅(qū)動(dòng),用石英機(jī)芯作時(shí)鐘信號(hào)源,再通過電磁鐵和齒輪傳動(dòng)鏈來帶動(dòng)表針移動(dòng)。

● 線性時(shí)鐘的原型完工后,我開始考慮如何改進(jìn)。它想走進(jìn)千家萬戶的話就必須要能適應(yīng)多種環(huán)境,所以我就想制作一個(gè)更實(shí)用的改進(jìn)版來對(duì)部件進(jìn)行測(cè)試。

● 在改進(jìn)版本中,我將一段兩米長(zhǎng)的鋁制滑軌鋸成兩段,代替原來的pvc滑軌。我原本以為鋁制的滑軌更牢固,因此時(shí)鐘就能做的更長(zhǎng)。可是在測(cè)試中,情況并非如此,鋁制滑軌帶來的改進(jìn)并不明顯。原因是鋁制滑軌并非在所有部分都那么光滑,尤其端部十分粗糙,因?yàn)橛捕雀?,想打磨光滑也很困難。如果最后還要對(duì)時(shí)鐘進(jìn)行包裝的話,那金屬滑軌就更沒有什么明顯的好處了。

15 改進(jìn)嘗試#1——珠狀鏈環(huán)

● 從卷簾上找一條珠鏈----因?yàn)闀r(shí)鐘長(zhǎng)一米,所以要把它連成一米長(zhǎng)的圓環(huán)---也就是說,所找的珠鏈至少要有兩米才行,這樣才可能連成這個(gè)鏈環(huán)。

● 可是有個(gè)問題,卷簾上只有一個(gè)珠鏈輪,所以我測(cè)繪了它,并和兩個(gè)支架和一些安裝在導(dǎo)軌上的滑動(dòng)塊一同進(jìn)行3D打印。

● 我在http://www.shapeways.com 上把設(shè)計(jì)圖3D打印成實(shí)體零件,下面就是這些零件的STL文件,我相信它們會(huì)對(duì)你有幫助的。

** 圖樣一 **

** 圖樣二 **

** 圖樣三 **

● 剛開始我還用輕木做了兩個(gè)滑輪。它們雖然可以工作,但是邊緣做不圓滑,所以就放棄了。

● 這些設(shè)計(jì)似乎看上去很棒,樣子很漂亮,表面也十分光滑。但正如我猜的那樣,它們有個(gè)缺陷,那就是太重,那兩個(gè)小電機(jī)根本奈何不了它們。如果電機(jī)的轉(zhuǎn)矩能再大一點(diǎn)兒那就是絕配,所以雖然這想法十分簡(jiǎn)潔,現(xiàn)在我也只能放棄。

16 改進(jìn)嘗試#2——繞線和摩擦輪傳動(dòng)

● 我又改回用一段繞線來作為傳動(dòng)帶,用我的小電機(jī)來驅(qū)動(dòng)。不過這次我嘗試用兩個(gè)嚙合齒輪來代替縫紉機(jī)繞線輪。這就能很好的解決繞線輪直徑隨繞線增多而變大的問題。

● 和滑輪一樣,嚙合齒輪也是從Rapid網(wǎng)站訂購(gòu)的。

● 固定在電機(jī)轉(zhuǎn)軸上的黃銅管由K&S Metals公司生產(chǎn),是我從附近的器材商店淘到的。

● 我又多加了兩個(gè)用塑料薄片裁剪成的引線裝置,它們可以使繞線和齒輪保持對(duì)齊。

● 看似一切都很美妙,也的確能工作,但它們也有很大的局限性,那就是對(duì)工作條件太敏感了。因?yàn)槭沁@套系統(tǒng)是靠摩擦力驅(qū)動(dòng),所以發(fā)生打滑的概率很大。即便剛開始運(yùn)行很好也不能保證永遠(yuǎn)不出類似問題。我絞盡腦汁也對(duì)它無可奈何,我想所有靠摩擦力驅(qū)動(dòng)的裝置都會(huì)遇到這樣的問題吧。

17 改進(jìn)嘗試#3——繞線輪的回歸

● 所以,最終只好又重新選擇了雙繞線輪,但是我還是做了一些改進(jìn),適當(dāng)改變其放置位置使繞線更均勻。提前盡量將繞線輪上的線繞均勻,這樣繞線的輪和不繞線的輪才有相同的轉(zhuǎn)動(dòng)速度。

● 它雖然不像珠鏈傳動(dòng)系統(tǒng)那樣簡(jiǎn)單,但是卻很安靜,更重要的是,它們重量輕,價(jià)格低,和這些小電機(jī)搭配很完美。

● 通過以上的過程,童鞋們也能感覺到,設(shè)計(jì)其實(shí)就是一個(gè)不斷改進(jìn),不斷折中的過程,經(jīng)過這樣的過程才能形成最終的實(shí)際作品。不經(jīng)過辛苦的摸索,直接想把紙上設(shè)想的方案完美轉(zhuǎn)化為現(xiàn)實(shí)是不太實(shí)際的做法。

18 收尾工作

● 我又在時(shí)鐘背后的槽里安上了幾個(gè)支腳,這樣它就能站起來了,如果往這些槽里穿上繩子還可以把它掛在墻上。

● 我覺得我更想給它做個(gè)殼子。

19 裝配電路

最后一步是安裝電路板??梢韵劝阉鼈冋吃谝粔K小泡沫板上,再將小泡沫板固定到時(shí)鐘背后。為了方便固定,可以在時(shí)鐘背后適當(dāng)?shù)耐谝恍┎邸?/p>

需要用到下面這些材料:

● 幾英寸長(zhǎng)的萬能電路板

● 連接用的導(dǎo)線

● 與Motorshield引腳相匹配的導(dǎo)線插頭

● 3個(gè)按鈕開關(guān)和1個(gè)LED燈(我用的是彎腳型開關(guān)和散光LED,這樣更便于操作。)

● 程序也進(jìn)行了修改,現(xiàn)在時(shí)鐘可以在按鈕的控制下開啟或關(guān)閉,當(dāng)它停止時(shí),表盤時(shí)間可以由另外兩個(gè)按鈕手動(dòng)調(diào)整。

● 實(shí)現(xiàn)此功能靠的是Alexander Brevig按鈕函數(shù)庫(kù)。有了這些調(diào)節(jié)按鈕,設(shè)置時(shí)間時(shí)就不用再連接電腦,時(shí)鐘也就更實(shí)用了。但是如果萬一時(shí)鐘掉電,還是需要進(jìn)行復(fù)位。

● 對(duì)時(shí)鐘的外觀進(jìn)行修整,使它看上去更像是一件產(chǎn)品。

● 3個(gè)開關(guān)分別連接2腳,9腳和10腳,LED燈連接在13腳。每個(gè)開關(guān)的另一腳都和地線相連,并且每個(gè)引腳都有上拉電阻(內(nèi)置于Arduino板上),所以只要不短路,各引腳默認(rèn)電壓就是+5V。

● 程序會(huì)檢測(cè)開關(guān)上的高(松開按鈕)低(按下按鈕)電平,當(dāng)程序檢測(cè)到按鈕松開時(shí)便開始工作。

** 程序2 **

20 時(shí)鐘指針制作

● 表針、繞線都固定在滑動(dòng)塊上,表針不應(yīng)變形,要始終保持在與表盤距離適當(dāng)?shù)奶囟ń嵌壬稀?/p>

● 一開始我只是用萬能膠把繞線和紙板做成的指針粘到滑動(dòng)塊上。

● 紙板做成的指針制作簡(jiǎn)單,但是卻不易保持形狀----它會(huì)逐漸自動(dòng)展開,這樣就容易和另一個(gè)指針在重合位置時(shí)“撞車”。

● 因此我又制作了一些新的指針,粘上了一些細(xì)鐵絲,這樣指針的形狀就能固定住了,然后再用從衣服上拆下的塑料粘扣把它們粘到滑動(dòng)塊上。

● 用塑料粘扣固定繞線和鐵絲非常牢固,固定好之后,再輕輕地把鐵絲掰到合適的角度上就OK了。

21 總體評(píng)價(jià)及改進(jìn)方向!

在最開頭我就列出了對(duì)線性時(shí)鐘的幾個(gè)要求:

低功耗---最好不用電源,僅靠電池就能使用:沒有達(dá)到

這個(gè)目標(biāo)?,F(xiàn)在的這個(gè)方案使用了一個(gè)arduino板和兩個(gè)步進(jìn)電機(jī)。如果只用電池的話,arduino板上的微處理器尚可堅(jiān)持些時(shí)日,但是再加上兩個(gè)電機(jī)的話,我估計(jì)能堅(jiān)持一周就不錯(cuò)了。雖然現(xiàn)在這個(gè)版本沒達(dá)到設(shè)想要求,但是也能夠接受,因?yàn)槲彝蝗灰庾R(shí)到即便是用電源供電也不一定非要從墻上引出根難看的黑線來。線性時(shí)鐘的電源線完全可以選用漂亮的纖維編織套管包裝,或是用像音箱線一類的扁平電源線。目前的情況看用電池供電還是個(gè)夢(mèng)想,但是我相信這個(gè)設(shè)想可以在一個(gè)不是微處理器和電機(jī)組合的版本中實(shí)現(xiàn)。

造價(jià)低——要在普通零售商店的價(jià)格范圍內(nèi)實(shí)現(xiàn)!至少我這么認(rèn)為。為了回復(fù)一個(gè)讀者的問題,我計(jì)算了一下使用簡(jiǎn)化電路時(shí)(非集成的分立元件電路)的成本,共計(jì)是40美元。如果批量購(gòu)進(jìn)配件的話,這個(gè)成本還可以更低。而且時(shí)鐘的制作并不復(fù)雜,所以人工成本也不高。40美元的成本中不包括外殼,因?yàn)椴煌馁|(zhì)和外觀的外殼價(jià)格也不盡相同,將外殼考慮進(jìn)去時(shí)成本可能更高一些。如果成本按60美元計(jì)算,那批發(fā)價(jià)格可以到 120美元,零售價(jià)格更可高達(dá)200美元以上。聽起來很誘人呦。如果我們?nèi)∠虚g環(huán)節(jié),進(jìn)行直銷,又能降低部分成本。

水平、垂直皆可使用——實(shí)現(xiàn)!該時(shí)鐘在任何狀態(tài)下都沒有靠重力工作的部件,滑動(dòng)塊和指針都很輕,所以時(shí)鐘在水平和垂直方向都能使用。

指針不走時(shí)不能有噪音----實(shí)現(xiàn)!如果電機(jī)持續(xù)發(fā)出嗡嗡嗡的聲音,那么這個(gè)聲音如果被時(shí)鐘外殼或墻壁放大會(huì)形成惱人的噪音。但是線性時(shí)鐘指針運(yùn)動(dòng)的空閑中電機(jī)不通電,因此也就不會(huì)有持續(xù)的噪音了。但是當(dāng)指針跳動(dòng)時(shí)滑動(dòng)塊還是會(huì)發(fā)出咔咔的聲音,不過我想用些毛氈應(yīng)該能減小噪音。

重量輕——無需特殊的架子或鉤子就能固定到墻上:實(shí)現(xiàn)!試驗(yàn)證明,把塑料的窗簾導(dǎo)軌升級(jí)到鋁制的做法似乎是做了個(gè)無用功,導(dǎo)軌變得更重但是卻沒起到什么作用。但即便是換成鋁制的導(dǎo)軌,墻上的掛鉤也能承擔(dān)起它的重量。加上個(gè)木質(zhì)外殼也不用過分擔(dān)心超重,因?yàn)橄鄬?duì)于懸掛,我更傾向于將線性時(shí)鐘擺放在某個(gè)地方(比如壁爐或書架上)。

滿足多數(shù)人審美觀點(diǎn)——要有多種樣式、顏色和材料供選擇:實(shí)現(xiàn)。之所以提這樣的要求是因?yàn)槲也幌胫谱鞒鰜淼臅r(shí)鐘看起來怪里怪氣,或是和普通家庭的格調(diào)迥異。我始終認(rèn)為我做的時(shí)鐘必須要有方便制作外殼的輪廓,而不能有突出的軸或是鐘擺,否則為了給這些突出物留空間,我就不得不破壞時(shí)鐘的外表了??粗@制作成功的時(shí)鐘,我很高興,在我給大家講它的制作過程時(shí),它已經(jīng)在我的桌子上滴滴答答的走了一周了。

不過要想制作成產(chǎn)品,還需要進(jìn)行一些改進(jìn):

● 用帶齒的鏈環(huán)或是珠狀鏈環(huán)來代替兩根繞線。這樣驅(qū)動(dòng)輪的直徑就不會(huì)變化(因?yàn)樗鼈儾粫?huì)層層堆積)。另外繞線在長(zhǎng)期的運(yùn)行中可能會(huì)變長(zhǎng),變松,這個(gè)問題可以嘗試用短點(diǎn)的彈簧或是松緊帶來解決。

● 使用獨(dú)立元件組成的電機(jī)驅(qū)動(dòng)電路來代替Adafruit的motorshield板。motorshield功能非常強(qiáng)大,但是用在這里顯得大材小用。 可以使用幾片L293芯片和一些三極管組成一個(gè)更加簡(jiǎn)單的電路,再搭配一個(gè)功能相對(duì)簡(jiǎn)單的arduino板,這樣成本能降低不少。

● 在時(shí)鐘的起點(diǎn)位置安裝一個(gè)指針位置檢測(cè)器,在指針每次到達(dá)起點(diǎn)時(shí)用來自動(dòng)調(diào)整指針的位置。

● 選擇更好的時(shí)鐘內(nèi)部計(jì)時(shí)方法。其實(shí)有很多方法都能實(shí)現(xiàn)這個(gè)目的,我感覺可以用石英鐘上的計(jì)時(shí)芯片來進(jìn)行改進(jìn)。

這些都是今后要改進(jìn)的方向。有些是為了提高產(chǎn)品的質(zhì)量,有些是為了控制成本。毫無疑問,一個(gè)成本過高的產(chǎn)品即使十分完美也是沒有商業(yè)價(jià)值的。

最后室內(nèi)效果圖:

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 線性時(shí)鐘
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    6192
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    超酷DIY之創(chuàng)意線性時(shí)鐘

    我們要制作的東西,叫做線性時(shí)鐘。什么是線性時(shí)鐘呢?所謂線性時(shí)
    發(fā)表于 03-21 10:00 ?1.1w次閱讀

    如何制作數(shù)字時(shí)鐘

    如何制作數(shù)字時(shí)鐘 花79美元讓一只LED亮起來似乎有些奢侈。你肯定更想用BASIC Stamp制作出更實(shí)用的東西?;ㄉ?00多美元,你就可以制作一臺(tái)精致的數(shù)字
    發(fā)表于 08-21 16:09 ?3520次閱讀

    LED旋轉(zhuǎn)時(shí)鐘制作 (1)

    電子發(fā)燒友網(wǎng)站提供《LED旋轉(zhuǎn)時(shí)鐘制作 (1).doc》資料免費(fèi)下載
    發(fā)表于 04-20 00:17 ?4次下載

    LED旋轉(zhuǎn)時(shí)鐘制作

    LED旋轉(zhuǎn)時(shí)鐘制作
    發(fā)表于 02-07 21:06 ?14次下載

    時(shí)鐘計(jì)時(shí)器設(shè)計(jì)與制作

    本文主要介紹了時(shí)鐘計(jì)時(shí)器設(shè)計(jì)與制作.
    發(fā)表于 06-26 08:00 ?43次下載
    <b class='flag-5'>時(shí)鐘</b>計(jì)時(shí)器設(shè)計(jì)與<b class='flag-5'>制作</b>

    如何制作一個(gè)多功能便攜時(shí)鐘

    在2012年世界末日的最后一個(gè)情人節(jié)里,給大家展示一款純手工打造的便攜時(shí)鐘,同樣也會(huì)像以前一樣配上詳細(xì)制作過程。有時(shí)鐘、溫度、秒表等功能。當(dāng)初制作
    的頭像 發(fā)表于 08-10 17:29 ?5593次閱讀
    如何<b class='flag-5'>制作</b>一個(gè)多功能便攜<b class='flag-5'>時(shí)鐘</b>?

    使用單片機(jī)制作數(shù)字可控時(shí)鐘的程序資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)制作數(shù)字可控時(shí)鐘的程序資料免費(fèi)下載。
    發(fā)表于 05-23 17:42 ?22次下載
    使用單片機(jī)<b class='flag-5'>制作</b>數(shù)字可控<b class='flag-5'>時(shí)鐘</b>的程序資料免費(fèi)下載

    使用單片機(jī)制作可調(diào)數(shù)字時(shí)鐘的匯編語言程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)制作可調(diào)數(shù)字時(shí)鐘的匯編語言程序免費(fèi)下載。
    發(fā)表于 08-28 15:48 ?16次下載
    使用單片機(jī)<b class='flag-5'>制作</b>可調(diào)數(shù)字<b class='flag-5'>時(shí)鐘</b>的匯編語言程序免費(fèi)下載

    線性電源及開關(guān)電源原理及設(shè)計(jì)制作

    線性電源及開關(guān)電源原理及設(shè)計(jì)制作(深圳市普德新星電源技術(shù)有限公司招聘信息)-介紹了線性電源與開關(guān)電源的原理及優(yōu)缺點(diǎn),具體電路的分析制作與調(diào)試。
    發(fā)表于 09-29 11:19 ?36次下載
    <b class='flag-5'>線性</b>電源及開關(guān)電源原理及設(shè)計(jì)<b class='flag-5'>制作</b>

    使用電子管制作時(shí)鐘

    電子發(fā)燒友網(wǎng)站提供《使用電子管制作時(shí)鐘.zip》資料免費(fèi)下載
    發(fā)表于 10-21 10:09 ?4次下載
    使用電子管<b class='flag-5'>制作</b><b class='flag-5'>時(shí)鐘</b>

    如何使用Arduino和LCD制作數(shù)字時(shí)鐘

    電子發(fā)燒友網(wǎng)站提供《如何使用Arduino和LCD制作數(shù)字時(shí)鐘.zip》資料免費(fèi)下載
    發(fā)表于 10-28 10:23 ?5次下載
    如何使用Arduino和LCD<b class='flag-5'>制作</b>數(shù)字<b class='flag-5'>時(shí)鐘</b>

    制作電壓表時(shí)鐘

    電子發(fā)燒友網(wǎng)站提供《制作電壓表時(shí)鐘.zip》資料免費(fèi)下載
    發(fā)表于 11-08 09:41 ?0次下載
    <b class='flag-5'>制作</b>電壓表<b class='flag-5'>時(shí)鐘</b>

    POV時(shí)鐘/顯示器制作

    方案介紹在這個(gè)項(xiàng)目中,我們將介紹如何以一種簡(jiǎn)單的方式制作酷的POV時(shí)鐘。硬件部件:Arduino Nano R3?? ?×?? ?1個(gè)?? ?9V電池(通用)?? ?×?? ?1個(gè)?? ?線性穩(wěn)壓器(7805)?? ?×?? ?
    發(fā)表于 12-29 10:06 ?0次下載

    DIY不尋常的線性時(shí)鐘

    電子發(fā)燒友網(wǎng)站提供《DIY不尋常的線性時(shí)鐘.zip》資料免費(fèi)下載
    發(fā)表于 02-09 09:37 ?0次下載
    DIY不尋常的<b class='flag-5'>線性</b><b class='flag-5'>時(shí)鐘</b>

    使用Arduino制作簡(jiǎn)單的數(shù)字時(shí)鐘

    電子發(fā)燒友網(wǎng)站提供《使用Arduino制作簡(jiǎn)單的數(shù)字時(shí)鐘.zip》資料免費(fèi)下載
    發(fā)表于 06-26 10:48 ?5次下載
    使用Arduino<b class='flag-5'>制作</b>簡(jiǎn)單的數(shù)字<b class='flag-5'>時(shí)鐘</b>