第1步:PCB
PCB制造
我用 eagle 繪制了pcb,然后PCBWay.com制造了它。
PCB組裝:
我焊接了所有沒(méi)有焊劑助焊劑的smd組件。我不建議你像我這樣做。
PCB采用5-6v 2A電源供電。
PCB組件:
1X Atmega32u4
1X 1uf電容器
1X 0.1uf電容器
1X 10uf電容器
2X 22pf電容器
1X led
1X 10K電阻器
1X 1K電阻器
2X 22電阻器
1X 16mhz Quartz
usb connecto r
power jack
PCB的角色
PCB連續(xù)與計(jì)算機(jī)通信。該P(yáng)CB僅用于控制伺服電機(jī)。
步驟2:3D打印
警告: inferieur.stl , superieur.stl 和 plateau.stl 文件不是3D可打印的。 inferieur.stl和superieur.stl由丙烯酸制成。您可以使用CNC制造這些零件,但您也可以在亞克力板上自行切割,因?yàn)檫@些零件的設(shè)計(jì)并不復(fù)雜。 plateau.stl 可以用紙板切割。
第3步:零件裝配
機(jī)械部件:
Futaba伺服s3003
磁鐵和球
13X M4 * 10mm螺栓
10X M4螺母
15X
3X M4 * 10mm螺栓
3X M4螺母
USB網(wǎng)絡(luò)攝像頭
鋁管:長(zhǎng)474毫米,直徑8毫米
步驟4:PCB編程
PCB包含與arduino leonardo相同的微控制器。因此可以使用Arduino軟件進(jìn)行編程。代碼可以在這里下載。
在編程PCB之前,你必須刻錄引導(dǎo)加載程序:Arduino作為ISP和Arduino引導(dǎo)加載程序
刻錄引導(dǎo)加載程序
你需要一個(gè)Arduino
將ArduinoISP草圖(arduino軟件/例子/ArduinoISP)上傳到你的Arduino板上
如圖所示進(jìn)行連接
從工具》主板菜單中選擇“Arduino Leonardo”。
從工具》程序員
選擇“Arduino as ISP”
運(yùn)行工具》刻錄引導(dǎo)程序
此過(guò)程可能需要幾分鐘。
斷開(kāi)所有電纜。
完成此步驟后,您必須使用USB電纜將pcb連接到計(jì)算機(jī)并上傳此代碼。
步驟5: Python程序
最重要的代碼是在控制系統(tǒng)的計(jì)算機(jī)中。你可以在這里找到代碼。
如何運(yùn)作。第一步是找到球的位置。相機(jī)發(fā)送計(jì)算機(jī)實(shí)時(shí)視頻。 python程序接收視頻并且必須處理它。我使用OpenCV庫(kù)來(lái)進(jìn)行圖像處理。該程序由于其顏色而檢測(cè)到球。這里球是橙色的,然后程序?qū)⑵骄鶊D像的所有橙色像素的位置以找到球的位置。
現(xiàn)在我們可以獲得球位置了用PID(比例,積分和微分)控制計(jì)算電路板的傾斜度。該規(guī)定分三個(gè)階段進(jìn)行。第一步是最簡(jiǎn)單的。想象一下,我們想要將球穩(wěn)定在棋盤(pán)中央。球離中心越遠(yuǎn),就越需要傾斜球板。然后你必須測(cè)量球的速度:球離開(kāi)中心的速度越快,你就越需要傾斜棋盤(pán)。
-
pcb
+關(guān)注
關(guān)注
4368文章
23492瀏覽量
409736 -
伺服
+關(guān)注
關(guān)注
16文章
669瀏覽量
41844
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論