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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

wifi小車制作圖解

454398 ? 作者:工程師吳畏 ? 2018-09-18 09:36 ? 次閱讀

利用網(wǎng)絡攝像頭的報警輸出端口的繼電器開開合合形成一個二進制的編碼,然后用一個Arduino來進行譯碼,擴展了網(wǎng)絡攝像頭的I/O口

1、網(wǎng)絡攝像頭

2、Arduino控制板

3、電機驅(qū)動擴展板

4、Arduino穩(wěn)壓板(為了保證網(wǎng)絡攝像頭穩(wěn)定的電源

5、10k電阻(端口上拉)及面包線

6、小車底盤、( 2WD / 4WD)(含直流電機、電源)

L298P電機驅(qū)動擴展板

穩(wěn)壓擴展板

網(wǎng)絡攝像頭我是在網(wǎng)上為了保證攝像頭使用電壓的穩(wěn)定,我沒有使用Arduino板上的5V電壓,而是單獨用了一個穩(wěn)壓擴展板。該擴展板在小車調(diào)試前期可不用,直接用穩(wěn)壓器給網(wǎng)絡攝像頭提供電源。小車底盤( 2WD /4WD)是路虎5履帶底盤。最后找了一個直插的10k電阻,再準備一些面包線,這樣所有的材料都準備好了。

穩(wěn)壓擴展板的使用很簡單,我們先來簡單介紹一下。如下圖的標識,將電池接到擴展板的輸入端子,輸入端子旁邊的兩個跳線帽要跳到PWRIN位置;然后調(diào)節(jié)輸出電壓微調(diào)電位器,用萬用表測量電源輸出端電壓使其穩(wěn)定在5V;最后將網(wǎng)路攝像頭電源接口與擴展板電源輸出端連在一起。

電機驅(qū)動板的使用大家可能都比較熟悉了,本人這里再簡單提兩句。先要選擇控制方式,這個制作中使用的是PWM方式;再者就是連接直流電機,如下圖所示的連接端子。M1+和M1—連接一個直流電機,M2+和M2—連接另一個直流電機,電機驅(qū)動板占用Arduino的4、5、6、7腳。

最后我們重點來說一下Arduino控制板與網(wǎng)絡攝像頭的連接。在網(wǎng)上的那篇文章中作者用攝像頭公司提供的插件做了一個運行在PC端的軟件,以此來控制繼電器產(chǎn)生寬窄不一的脈沖。這里我沒有采用這種方式,PC軟件的制作也不是誰都能完成的。本人采用的方式是直接用Arduino捕獲網(wǎng)絡攝像頭內(nèi)控制步進電機信號,拆掉了網(wǎng)絡攝像頭中左右轉(zhuǎn)的步進電機,用攝像頭本身左右旋轉(zhuǎn)的信號來控制小車的左右轉(zhuǎn),而用繼電器的吸合來控制小車的前進與停止。

開始拆攝像頭!

導線引出后,我們合上網(wǎng)絡攝像頭的底蓋,來看看它背面的接口。如下圖所示,在攝像頭后面最中間的是天線接口,天線右側(cè)的4個I/O口就是報警輸出端口,4個I/O用1、2、3、4標識,其中1、2是報警輸出端口,分別接到了繼電器兩端,3為報警輸入端口(此端口未用),4為攝像頭內(nèi)容電路的數(shù)字地。

這3個I/O(不包括3號I/O)加上之前的A+和B+總共5條線,與Arduino的連接關系如下圖所示。連接網(wǎng)絡攝像頭內(nèi)報警繼電器一端的2腳連到Arduino的GND,而連接繼電器另一端的1腳連到Arduino的9腳,同時在9腳加上10k的上拉電阻,這樣當繼電器未吸合時,9腳因為上拉電阻,所以狀態(tài)為高;而當繼電器吸合時,9腳接GND,所以狀態(tài)為低。網(wǎng)絡攝像頭報警接口的4腳也要連接到Arduino的GND,以使網(wǎng)絡攝像頭控制板與Arduino共地。A+與B+分別連接到Arduino的2、3腳,這兩個腳如果連反了可以在程序中調(diào)整

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

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

/**********************************************

捕獲步進電機信號控制直流電機

使用Arduino的外部中斷

created 2013

by Nille

**********************************************/

int InterruptA = 1; //定義InterruptA 為外部中斷1,也就是引腳3

int InterruptB = 0; //定義InterruptB 為外部中斷0,也就是引腳2

volatile int state = 0; //定義state用來保存小車左右轉(zhuǎn)的狀態(tài),

//1為左轉(zhuǎn),2為右轉(zhuǎn)

void setup()

{

//2、3腳為外部中斷0、1,用來捕獲A+、B+上的信號

pinMode(2, INPUT);

pinMode(3, INPUT);

//4、5、6、7用于控制直流電機

pinMode(4, OUTPUT);

pinMode(5, OUTPUT);

pinMode(6, OUTPUT);

pinMode(7, OUTPUT);

//9腳用于檢測繼電器的狀態(tài)

pinMode(9, INPUT);

// 監(jiān)視外部中斷輸入引腳的變化

attachInterrupt(InterruptA, stateInterruptA, FALLING);

attachInterrupt(InterruptB, stateInterruptB, FALLING);

}

void loop()

{

if(digitalRead(2) == LOW || digitalRead(3) == LOW)

{

if(state == 1)

{

//state為1時小車左轉(zhuǎn)

digitalWrite(4,LOW);

digitalWrite(7,HIGH);

analogWrite(5,240);

analogWrite(6,240);

}

else if(state == 2)

{

//state為2時小車右轉(zhuǎn)

digitalWrite(4,HIGH);

digitalWrite(7,LOW);

analogWrite(5,240);

analogWrite(6,240);

}

else

{

//小車停止

analogWrite(5,0);

analogWrite(6,0);

}

}

else

{

state = 0;

//在繼電器吸合的情況下

if(digitalRead(9) == 0)

{

//小車前進

digitalWrite(4,HIGH);

digitalWrite(7,HIGH);

analogWrite(5,250);

analogWrite(6,250);

}

else

{

//小車停止

analogWrite(5,0);

analogWrite(6,0);

}

}

}

//中斷函數(shù)stateInterruptA,當A+先收到脈沖則小車左轉(zhuǎn)

void stateInterruptA()

{

if(state == 0)

state = 1;

}

//中斷函數(shù)stateInterruptB,當B+先收到脈沖則小車左轉(zhuǎn)

void stateInterruptB()

{

if(state == 0)

state = 2;

}

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

完成后的wifi小車上電工作正常后,如圖下圖所示。wifi小車的控制與網(wǎng)絡攝像頭的控制方式類似,打開電腦端的瀏覽器,在地址欄中輸入網(wǎng)絡攝像頭的IP地址(不確定IP地址的話可以使用產(chǎn)品中附帶的IP網(wǎng)絡攝像頭搜索軟件搜一下)進入監(jiān)控界面,就使用界面右側(cè)的按鈕來控制這部簡易的wifi小車。另外該攝像頭還有一個廠家分配的唯一域名,只要在我們的路由器端簡單配置就能夠?qū)崿F(xiàn)廣域網(wǎng)條件下的小車控制了。

PS:突然發(fā)現(xiàn)美圖秀秀很好玩 所以 虛化背景 沒按到 按了 橡皮 結果有一幅圖被檫去一部分

因為原圖片過大 所以載圖

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

    關注

    6

    文章

    933

    瀏覽量

    54731
  • WIFI
    +關注

    關注

    81

    文章

    5282

    瀏覽量

    203101
  • Arduino
    +關注

    關注

    187

    文章

    6458

    瀏覽量

    186507
收藏 人收藏

    評論

    相關推薦

    寫字機的制作過程

    寫字機的制作過程,圖解,利用了core——XY的結構,詳細制作圖解,需要有一定制作基礎的DIY同學。
    發(fā)表于 09-27 07:41

    華為膠片制作圖標庫

    華為膠片制作圖標庫:
    發(fā)表于 06-24 15:41 ?65次下載
    華為膠片<b class='flag-5'>制作圖</b>標庫

    精選電子制作圖解66例_門宏

    書中以圖解的形式介紹了66例無線電和電子制作實例,包括趣味電子制作、收音機制作、無線話筒制作及業(yè)余無線電儀表
    發(fā)表于 04-27 15:47 ?0次下載
    精選電子<b class='flag-5'>制作圖解</b>66例_門宏

    精選電子制作圖解66例_門宏編著

    電子發(fā)燒友網(wǎng)站提供《精選電子制作圖解66例_門宏編著.txt》資料免費下載
    發(fā)表于 07-30 11:45 ?0次下載

    WIFI小車

    WIFI智能小車。
    發(fā)表于 04-13 13:56 ?29次下載

    創(chuàng)意小夜燈制作圖解

    創(chuàng)意小夜燈制作圖解
    的頭像 發(fā)表于 09-07 16:11 ?1.4w次閱讀

    發(fā)電機模型制作圖解

    發(fā)電機模型制作圖解
    的頭像 發(fā)表于 09-17 10:47 ?1.2w次閱讀

    巡線小車制作圖解

    做了一個巡線小車(技術不好,高手勿噴),需要電子元件有光敏電阻,電阻二極管,三極管,電位器等 先上電路圖:
    的頭像 發(fā)表于 09-14 09:12 ?1.9w次閱讀
    巡線<b class='flag-5'>小車</b><b class='flag-5'>制作圖解</b>

    會畫畫的小車制作圖解

    會畫畫的智能小車,你有沒有想過自己也做一個這樣的機器人小車呢?
    的頭像 發(fā)表于 09-12 10:29 ?6785次閱讀

    WIFI智能小車設計制作教程的詳細資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是WIFI智能小車設計制作教程的詳細資料免費下載。
    發(fā)表于 11-09 16:06 ?32次下載

    TYPE C板上16PIN臥式操作圖解

    TYPE C板上16PIN臥式操作圖解
    發(fā)表于 01-06 16:52 ?10次下載

    TYPE C板上16PIN臥式操作圖解

    TYPE C板上16PIN臥式操作圖解
    發(fā)表于 01-06 17:19 ?23次下載

    TYPE C板上16PIN貼片 側(cè)面操作圖解

    TYPE C板上16PIN貼片 側(cè)面操作圖解
    發(fā)表于 01-06 16:48 ?10次下載

    TYPE C 24PIN前插后貼側(cè)面操作圖解

    TYPE C 24PIN前插后貼側(cè)面操作圖解
    發(fā)表于 01-06 17:26 ?12次下載

    如何使用LED和蜂鳴器制作圖

    電子發(fā)燒友網(wǎng)站提供《如何使用LED和蜂鳴器制作圖案.zip》資料免費下載
    發(fā)表于 11-17 14:46 ?0次下載
    如何使用LED和蜂鳴器<b class='flag-5'>制作圖</b>案