兩代Wi-Fi遙控小車DIY攻略
連接眼睛和大腦
本文引用地址:http://www.j9360.com/article/247849.htm最后,重點來說一下Arduino控制板與網絡攝像頭的連接。網上有朋友用攝像頭公司提供的插件做了一個運行在PC端的app,以此來控制繼電器產生寬窄不一的脈沖。這里我沒有采用這種方式,做app也不是誰都能完成的。本人采用的方式是直接用Arduino捕獲攝像頭內控制步進電機的信號,拆掉了攝像頭中左右轉的步進電機,用攝像頭本身左右旋轉的信號來控制小車的左右轉,而用繼電器的吸合來控制小車的前進與停止。

具體方法如下:
導線引出后,我們合上攝像頭的底蓋,來看看它背面的接口。如下圖所示,在攝像頭后面最中間的是天線接口,天線右側的4個I/O口就是報警輸出端口,4個I/O用1、2、3、4標識,其中1、2是報警輸出端口,分別接到了繼電器兩端,3為報警輸入端口(此端口未用),4為攝像頭內容電路的數字地。
這3個I/O(不包括3號I/O)加上之前的A+和B+總共5條線,與Arduino的連接關系如下圖所示。連接攝像頭內報警繼電器一端的2腳連到Arduino的GND,而連接繼電器另一端的1腳連到Arduino的9腳,同時在9腳加上10k的上拉電阻,這樣當繼電器未吸合時,9腳因為上拉電阻,所以狀態為高;而當繼電器吸合時,9腳接GND,所以狀態為低。網絡攝像頭報警接口的4腳也要連接到Arduino的GND,以使網絡攝像頭控制板與Arduino共地。A+與B+分別連接到Arduino的2、3腳,這兩個腳如果連反了可以在程序中調整。

步進電機的控制方式是不斷的變化A、B兩相上的電壓大小和電流方向,這樣在A+和B+上就會產生一串脈沖。使用示波器觀察我們發現,當發送左轉的命令時,首先在A+上產生脈沖,而當發送右轉的命令時,首先在B+上產生脈沖,效果如下圖所示。

我們就利用A+、B+上的信號差異,以及繼電器的吸合來實現對小車的控制。Arduino端用到了外部中斷功能,2腳對應Arduino外部中斷0,3腳對應Arduino外部中斷1。
詳細代碼
/**********************************************




ps:可以在代碼中添加一些Serial.println()的語句來查看一下程序在我們控制攝像頭時能夠做出正確的相應。代碼調試完成后,如圖下圖所示,將Arduino控制板、電機驅動擴展板、穩壓擴展板層疊的插在一起固定在小車的后面,前方安裝好攝像頭。

完成后的Wi-Fi小車上電工作正常后,如圖下圖所示。Wi-Fi小車的控制與攝像頭的控制方式類似,打開電腦瀏覽器,在地址欄中輸入網絡攝像頭的IP地址進入監控界面,就可以使用界面右側的按鈕來控制這部簡易的Wi-Fi小車。另外,我選的這款攝像頭還有一個廠家分配的唯一域名,只要在我們的路由器端簡單配置就能夠實現廣域網條件下的小車控制了。

OK,大功告成!

評論