第1步:清單
首先,您必須找到所需的所有部件:
步進電機:我使用過一個從舊打印機恢復的。您可以在打印機,掃描儀,任何類型的機器人,有時是電器等中找到這些電機。您將識別它們,因為它們有4根或更多根電線。
Arduino :我使用(克隆)納米版本因為它的尺寸很方便,但每個人都是一樣的。
你將還需要一個 DC-DC降壓電壓調節(jié)器來調節(jié)12V望遠鏡電源的電壓(或者你可以使用一些電池)來運行電機和Arduino所需的電壓。
當然, Nunchuck (a假的也很好)
各種尺寸的齒輪將運動從電機傳遞到旋鈕
1(紅色)Led
1電阻( 220歐姆)
1個穿孔板
金屬板或一點點巧妙地將設備連接到您的伸縮臂上應對
電線,士兵,(最終)面包板,連接器,工具
當然,特別是第6和第7點取決于你的望遠鏡,所以我不能真的告訴你如何做這部分項目,但在這里你可以解開你的巧妙!
我做的第一件事就是找路將電機連接到望遠鏡管上。
我很幸運,因為我從打印機中恢復的電機有一個板(我稱之為電機板),內置兩個齒輪,所以我只需要在望遠鏡上擋住那個板。但是,你真的不需要它,你可以直接將電機連接到我將要談論的L形板上。
我設法切割了我車庫里的1mm金屬板為了獲得一個L形板。
利用固定聚焦旋鈕的兩個螺絲,我將L板固定在望遠鏡上,然后將電機板安裝到L型,如同圖片。通過這種方式,我最終也可以通過旋轉L電極上的電機板將電機與聚焦器分開(用于手動調節(jié))。
完成后,問題是:如何轉動旋轉運動從我在電機板上的齒輪到聚焦旋鈕?
我雖然是傳動帶,但我沒有人,它本來很難找到一個合適的長度并找到兩個齒輪開車吧。此外,腰帶有可能在未來失去彈性;所以我放棄了這個選項。
我認為最好的解決方案是通過齒輪直接將電機連接到旋鈕。
現在的問題是:我用什么齒輪必須使用,我在哪里可以找到它們?
如果您足夠幸運,您的旋鈕已經開槽(作為齒輪),您只需在電機樞軸上插入兼容的齒輪,然后觸摸帶凹槽的旋鈕。
然而,我的旋鈕幾乎是光滑的,所以我需要在旋鈕上安裝一個齒輪并與安裝在電機上的齒輪進行通信(或者就像我的齒輪系一樣)。我選擇3D打印那個裝備,這樣我就能得到我所需要的。結果非常好,我終于能夠將動作從電機轉移到旋鈕。
我還安裝了一塊加強板(如圖所示),以防止主板彎曲旋轉電機。
好的,機制準備就緒,讓我們現在跳到“復雜”部分!
第3步:電氣工程師
現在我們需要控制電機。
注意#1:在附件中你會發(fā)現電氣方案,arduino引腳方案,降壓數據表和l293方案。除此之外,您還可以在面包板上找到電路設置的標簽圖片。請注意,面包板右側有兩個按鈕。只是忽略它們,我們不會使用它們,它們應該沒有在那里:)
注意#2:如果你打算使用我的設置(Arduino Nano)你沒問題,否則你只需要最終改變一些引腳連接。
要做的第一件事就是建立電子電路。
我上傳了這個方案,所以你很容易設置它。
你可以先在面包板上試一下電路,然后(在編寫arduino之后(下一步是關于它))將所有東西都焊接在一個穿孔板上,就像我一樣。
現在,我想向你解釋這個計劃,這樣你就可以深刻地意識到你在做什么。
所以:
首先,你需要力量。我將整個電路連接到我用于望遠鏡支架的電源供應商,但您可以按照自己的喜好進行操作。根據您購買的步進電機,您需要一個特定的電壓才能運行。在我的情況下它大約是8伏特,所以我需要一個DCDC降壓(能夠降低連續(xù)電流電壓的設備)從12V到8V。我選擇了MP1584(請參閱附帶的文檔),這也允許我調節(jié)輸出電壓。
然后我將所有需要電源的電機(電機,l293d,arduino)連接到降壓的+輸出。
特別是,您可以通過引腳30上的引腳為arduino供電(有關更多信息,請參閱arduino網站)。要為電機和l293d供電,必須在l293d芯片上為引腳1,8,9,16供電。
現在,將l293d上的引腳4,5,12,13和arduino上的引腳4連接到電路共同點(它基本上是電壓降低的輸出)。
完成后,你必須將電機連接到l293d芯片,以便從arduino控制它。
通常的步進電機由兩個線圈組成,一個是垂直線圈,另一個是水平線圈。在它們內部有一個由磁鐵構成的轉子。交替線圈上的電流,可以在線圈內部產生旋轉磁場(View Biot-Savart定律)。磁鐵(或轉子)受到該旋轉磁場的影響,并開始自身旋轉,以便與場線對齊。這將導致轉子旋轉。
這基本上就是步進電機的工作方式(我將在下一步詳細解釋它)
現在我們要做的是識別哪些電線來自線圈,哪個電線來自另一個。您可以使用數字萬用表檢查哪些導線相互連接:嘗試所有組合,然后您將確定與兩個線圈相對應的兩對導線。
完成后,連接一根導線從l293d上的一個線圈到引腳3,另一個(從相同的線圈)到l293d上的引腳6。另外,將另外兩根線從另一根線圈連接到l293d上的引腳11和14上。
現在你必須將l293d連接到arduino:
按照方案完成。
接下來要做的是將nunchuck連接到arduino,它將收到來自它的數據并控制電機。
首先,除非你有一個用于雙節(jié)棍特殊銷釘的槽,否則切斷雙節(jié)棍線。你現在將有來自雙節(jié)棍的5條小線。我們將只使用它們中的4個(白色,黃色,綠色和紅色)。
為了進行通信,雙節(jié)棍使用I2C協(xié)議,該協(xié)議使用由時鐘線和數據構成的總線一。黃色線是時鐘的黃色線。將其連接到arduino上的模擬A5引腳。雙節(jié)棍綠線用于數據。將它連接到arduino上的A4引腳。雙節(jié)棍紅線用于3.3V營養(yǎng)。 Arduino具有3.3V輸出引腳(引腳17),因此將紅線連接到它。將雙節(jié)棍白線連接到電路公共地。
好的,你差不多完成了。
只需在電路中添加一個LED(紅色是夜間觀察的最佳選擇),這樣我們就可以得到一些關于正在發(fā)生的事情的反饋。在電路中。
我們想要的效果是當我們向前或向后推動雙節(jié)棍操縱桿時,讓LED更亮。為此,我們需要一個特殊的arduino引腳,一個具有PWM功能的引腳,允許您調制輸出脈沖以調節(jié)LED亮度。在arduino上使用16針。將其連接到220歐姆電阻器,然后連接到LED的陽極。然后將LED陰極連接到地面。
最后,您必須調節(jié)dcdc上的螺絲降壓,以便輸出正確的電壓(見圖)。 (你可以通過將dcdc降低電源并使用數字萬用表測量輸出電壓,同時根據電機數據表調節(jié)輸出電壓(注意不要克服通過引腳為arduino供電的最大電壓)(它是這里所說的20V:https://store.arduino.cc/arduino-nano)。
哦,做得好!
現在,在焊接一切之前,讓我們告訴arduino它是什么必須這樣做!
第4步:軟件工程師
注意:我已經附加了我在此項目中使用的.ino版本和.txt版本的代碼
在這里,我們將對arduino進行編程并告訴它它與從nunchuck接收的數據有什么關系。
在做任何事情之前,斷開arduino引腳30和4與前一個電路的連接,從現在開始我們將通過usb將arduino連接到我們的電腦,它將從USB連接接收所需的電源。
完成后,使用micro usb電纜將arduino連接到您的電腦。比啟動arduino應用程序(你可以從這里下載:https://www.arduino.cc/en/Main/Software?)并從[工具 - 》端口]中選擇你已連接到arduino的usb串口。現在創(chuàng)建一個新項目。我們已準備好開始。
我們可以將目標劃分為兩個子目標:
從雙節(jié)棍獲取數據
使用這些數據控制電機(和LED)
讓我們繼續(xù)訂購:
從nunchuck收集數據的最簡單方法是使用專用庫(它被稱為ArduinoNunchuck,您可以從這里下載:http://www.marcopucci.it/wp-content/uploads/2013/。..)
下載并將其導入arduino軟件。
由于這個庫,arduino會將來自雙節(jié)棍的數據存儲在某些特定的數字變量中。我們只需要一個與操縱桿垂直運動相對應的一個,它叫做nunchuk.analogX。我們需要知道的是當操縱桿處于靜止狀態(tài)時nunchuk.analogX的價值是多少。為了做到這一點,從arduino應用程序轉到[files-》 examples-》 arduino nunchuck-》 arduino nunchuck demo]并運行它。打開串行監(jiān)視器,您將看到一個數字列表。 (與附圖中的相似)在第一列中顯示了與nunchuk.analogX對應的不同時刻的數字。嘗試垂直移動操縱桿,您將看到它們發(fā)生變化。你要做的就是記住當操縱桿處于靜止狀態(tài)時以及處于兩個極端時所獲得的數字(我的是:其余為124,極端向上為255,極端向下為0)。
稍后您將需要這些數字。
現在讓我們轉到任務編號2:我們如何控制步進電機?
實際上,有幾個這樣做的庫,比如Stepper或者AccelStepper,但我更喜歡編寫自己的代碼來控制電機。該想法是,如在前一步驟中所解釋的,對于步進電機旋轉,它需要旋轉磁場,其中連接到樞軸的轉子(即磁體)可以旋轉。在你的電機中有兩個線圈,相互垂直,兩個都垂直于電機樞軸(見附圖)。通過這種設置,您可以通過這種方式獲得旋轉磁場:
如果線圈A中的電流向上并且線圈B中的電流為零,由于物理學,我們知道線圈A內部會有是一個向下的磁場,所以轉子北極將是下行。
我們將A中的電流變?yōu)榱悖孊中的電流向右流動,因此磁場將向左,轉子向北桿將左側
然后我們讓A中的電流向下流動,我們將B中的電流設置為零,因此磁場向上,轉子北極向上
最后我們將A中的電流設置為零,讓B中的電流向左流動。磁場現在向右,轉子北極是右側
EtVoilà,磁場順時針旋轉一圈,因此轉子也是如此,因此電機的樞軸也是如此。
交換步驟2和4我們得到一個逆時針旋轉。
我們可以通過改變每一步之間的時間延遲來改變電機速度:延遲越小,電機就越快。
正如您將在附帶的代碼中看到的那樣,在實現arduino代碼完成一次完整轉換所需的前4個步驟中沒有任何困難。
然后我們讓arduino在循環(huán)中執(zhí)行這4個步驟
現在,我們都知道如何從雙節(jié)棍中獲取數據以及如何控制電機。
我們要做的就是使用數據從nunchuck到控制電機。
我們可以通過在nunchuk.analogX中使用數字arduino存儲來實現,因為我們垂直移動操縱桿。
我們將創(chuàng)建一些范圍的nunchuk.analogX變量的值,并為每個范圍分配電機旋轉步驟之間的延遲時間值。
這樣做,在垂直移動操縱桿的同時,根據我們“落入”的范圍,我們將獲得不同的電機轉速。
另外,我們將告訴arduino如果nunchuk.analogX大于我們?yōu)椴倏v桿靜止位置獲得的值,則電機必須順時針移動。如果nunchuk.analogX小于靜止值,則電機必須逆時針移動。
這樣,根據我們推動操縱桿的方向,電機將以不同的速度順時針移動,并且如果我們向后推動操縱桿,則相反。
無論如何,代碼被評論得足以讓你很難迷失它。
最后要做的事情是控制LED。
我們可以通過使用函數analogWrite(LED,亮度)來調節(jié)LED亮度,取決于操縱桿位置,其中“l(fā)ed”代表引腳(在我們的例子中為16)附著,并且“亮度”是量化LED亮度的數字。該數字必須與nunchuk.analogX給出的值成比例。經過一些試驗,我發(fā)現“亮度”的最佳表達方式是:亮度= 6 ^ abs(nunchuk.analogX - 124)
這樣,當操縱桿位于時,LED會亮一點靜止位置(意味著電路開啟),如果我們向上或向下移動操縱桿,它將增加亮度。
好的,一切都應該很好,現在可以焊接了!
第5步:設計師
注意:在附圖中你可以找到一些照片烙鐵在作用和焊接的各個階段。除此之外,我重新安裝了電氣方案,以便在焊接前仔細檢查連接是否有用。
現在一切正常,我們必須重新排列所有內容。更好的方式。
首先,我們必須焊接我們已經放置在面包板上的所有組件(步驟2)。
我(顯然)使用了烙鐵和支撐底座PerfBoard。我使用從絞線上切割的電線制作了所有連接。我還決定不直接焊接arduino和l293d芯片。相反,我焊接了兩個插槽,我插入了兩個組件。
我選擇使用USB連接器將Nunchuck連接到電路板(因為它只有4根電線)。所以我將USB引腳連接到雙節(jié)線(如圖中所示)和USB插槽連接到PerfBoard(確保在完成所有這些連接器的連接時遵守電氣方案)。
然后,我選擇白色6針連接器(雖然正如我在介紹中所說的那樣(當然你只需要4)將電機連接到電路板上。 (我選擇這個連接器只是因為它已經安裝在我的電機線上)。對于電源連接,我選擇了一個普通的圓柱形插孔,然后我連接到(正如我所說的,如圖所示)我用于望遠鏡支架的12V電源。在任何情況下,您都可以使用您喜歡的每個連接器(只需確保它有足夠的引腳作為您必須連接的電線)。
焊接完所有東西之后,我連接了所有電線,我給了電源和。..
結果令人驚訝。即使在300倍視距目鏡下,我也可以在焦距上進行最小的校正而不會在我的視野中進行最小的移動。
與手動調焦器調整相比,它只是白天和白天。
我做的最后一件事是3D打印一個專門為我的電路板設計的盒子,然后我把它掛在我的望遠鏡上,用一根繩子和一個鉤子,如下圖所示。
第6步:快樂的天文學家!
我給你留下了一個關于行動中的惡魔裝置的短片和一些終極Nunchuck&Arduino Controlled Focuser的照片。
-
聚焦
+關注
關注
0文章
10瀏覽量
8725 -
望遠鏡
+關注
關注
0文章
129瀏覽量
15836
發(fā)布評論請先 登錄
相關推薦
評論