介紹:本教程將逐步介紹如何使用RAK Wireless的WisCAM攝像頭開發(fā)板,開發(fā)板運(yùn)基于Linux系統(tǒng),可以很方便的輸入RTSP流。我們還將深入討論Linux相關(guān)內(nèi)容、串口調(diào)試和無(wú)線連接。最后,我們將看到如何使用內(nèi)建的ser2net功能,發(fā)送HTTP請(qǐng)求來(lái)修改模組設(shè)置。
Wiscam 淘寶購(gòu)買鏈接:https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-14938546650.18.638a2e6T0NUOm&id=543901093786
開發(fā)板
WisCAM是一款功能強(qiáng)大、基于嵌入式Linux的IP攝像頭,通過(guò)rtsp協(xié)議可以輕松獲取視頻流。模塊核心硬件基于ARM926EJ-32位RISC CPU內(nèi)核的Nuvoton N32905R3DN處理器, 頻率可達(dá)200MHz @ 1.8V。在這樣資源受限的硬件上能夠運(yùn)行功能強(qiáng)大的linux還是挺不可思議的!
Rakwireless WisCAM模組
開發(fā)板其他功能:
·Wi-Fi:硬件上的網(wǎng)絡(luò)功能是通過(guò)板載的RTL8189FTV Wi-Fi芯片提供,該芯片支持IEEE802.11 b/g/n協(xié)議、外置天線和SDIO接口
·SD卡和擴(kuò)展板:開發(fā)板有一個(gè)帶有USB HOST和SD卡接口的擴(kuò)展板
·攝像頭:包含一塊性能不錯(cuò)的攝像頭模組,可以通過(guò)采集圖像來(lái)做更多功能
·支持Nabto 的點(diǎn)對(duì)點(diǎn)通信。Nabto點(diǎn)對(duì)點(diǎn)通信已經(jīng)集成,下一次我們將演示怎么遠(yuǎn)程獲取視頻
開發(fā)板為我們預(yù)留了很多非常實(shí)用的功能,具有大量的GPIO、外設(shè)接口及視頻功能,很適合DIY!
下面框圖展示了開發(fā)板怎么傳輸視頻流的
WisCAM 軟件框圖
GPIO:
開發(fā)板預(yù)留很多GPIO,并兼容Arduino,下面是WisCAM的引腳對(duì)應(yīng)圖,包括一個(gè)10-bit的ADC,一個(gè)麥克風(fēng),一個(gè)UART,一個(gè)揚(yáng)聲器和十二個(gè)GPIO(連接不同的擴(kuò)展板,GPIO的序號(hào)也會(huì)有變化)
一些重要的引腳映射如下所示:
WisCAM PinOUT
引腳默認(rèn)配置
·HUR_TXD/PWM1/GPD[1] UART 透明傳輸輸出引腳,3.3V
·HUR_TXD/PWM1/GPD[1] UART 透明傳輸接收引腳,3.3V
·IOH1高電平使能揚(yáng)聲器:默認(rèn)關(guān)閉
·BOOT/GPA7 恢復(fù)模式/正常工作模式:
上電檢測(cè)如果為高電平進(jìn)入恢復(fù)模式,如果為低電平則進(jìn)入燒寫模式
·URTXD/ GPA10系統(tǒng)調(diào)試輸出引腳,3.3V
·URTXD/ GPA10系統(tǒng)調(diào)試接收引腳,3.3V.
·直流5V輸入,也可以通過(guò)micro-USB供電
讓板子跑起來(lái)!
在這之前,確保你已經(jīng)在ios或android安裝了RAKVideo app,如果你想在電腦上觀看視頻,那必須確保你在windows或者linux上安裝了VLC
·iOS:https://itunes.apple.com/us/app/rakvideo/id1107121689?mt=8
·Android:https://www.pgyer.com/wiscam
USB模式:電源接口和UVC模式
開發(fā)板的Micro-USB接口連接電源和電腦是有不同的功能
UVC模式:
UVC模式就像一個(gè)USB攝像頭,用AMCap或者NuwicamUVC工具就可以觀看視頻
·AMCap:https://amcap.en.softonic.com/
·GTK+ UVC Viewer:http://guvcview.sourceforge.net/
picture showing the placement of status LED on WisCAM
畫面狀態(tài)LED
UVC模式:
UVC是IP攝像機(jī)中的常見標(biāo)準(zhǔn),并有合適的庫(kù)來(lái)處理UVC標(biāo)準(zhǔn)。 LibUVC可以在https://github.com/ktossell/libuvc上找到,有關(guān)如何使用庫(kù)的文檔可以從以下網(wǎng)址獲得:https://int80k.com/libuvc/doc/
電源模式:
當(dāng)通過(guò)micro USB將開發(fā)板連接到電源時(shí),開發(fā)板將進(jìn)入電源模式。 WLAN0 和 WLAN1將被激活,WLAN1工作在SOFT-AP模式, SSID為WisEye-xx-xx-x-xx-x。 默認(rèn)加密方式為WPA2PSK,密碼為12345678。
建立本地流服務(wù)
開發(fā)板可以本地獲取視頻和廣播視頻流到連接的設(shè)備。 WLAN1接受來(lái)自STA設(shè)備的請(qǐng)求,允許連接到Wiseye AP。 一旦連接,開發(fā)板的IP固定為192.168.100.1,所有連接到開發(fā)板的設(shè)備都可以獲取視頻流。
也可以在Android(或iOS)上安裝Wiscam APP,打開APP后,在啟動(dòng)頁(yè)面中單擊右上角的鉛筆圖標(biāo),會(huì)顯示一個(gè)彈出窗口,填上上面講到的RTSP URL地址,然后單擊確定。 如果開發(fā)板連接到了電源,并且手機(jī)連接了Soft AP,那么說(shuō)明開發(fā)板正在運(yùn)行,并且已經(jīng)準(zhǔn)備好將視頻傳輸?shù)紸ndroid/iOS設(shè)備。
Android app 截圖
正在連接開發(fā)板App 截圖
Windows上使用:
如果你的電腦連接到了wisap的SSID,可以安裝VLC來(lái)獲取視頻流,
選擇Media-打開網(wǎng)絡(luò)串流:將彈出下面對(duì)話框
在對(duì)話框中輸入上面提供的RTSPURL并點(diǎn)擊播放,將會(huì)收到來(lái)自Wiscam的視頻流
提示:如果播放失敗
·確認(rèn)開發(fā)板已經(jīng)上電并且藍(lán)燈閃爍。表明正在傳輸視頻,并且確保電源是5V 2A規(guī)格
·確認(rèn)你的設(shè)備已經(jīng)連接到開發(fā)板的SOFTAP
通過(guò)STA模式連接開發(fā)板:
由于這是一個(gè)帶無(wú)線功能的linux開發(fā)板,所以終端用戶可以將開發(fā)板連接到另一個(gè)AP,而不是作為AP。
HTTP方式:
開發(fā)板提供了一個(gè)基于ser2net程序的HTTP接口,瀏覽器可以使用網(wǎng)絡(luò)功能來(lái)完成設(shè)置。AP或 Station模式都可以使用。
下面列出了通過(guò)HTTP GET命令的接口:
(http://192.168.100.1/cgi-bin/param.cgi?action=list&group=xxxx
這里的xxxx選項(xiàng)有:wifi/stream/nabto
Wi-Fi連接參數(shù)如下:
可以通過(guò)下面兩個(gè)url命令設(shè)置STA模式下的SSID和密碼,{}中的是需要你修改的
http://{IP-Addressof camera}/cgi-bin/param.cgi?action=update&group=wifi&SSID={wifi name}
http://{IP-Addressof camera}/cgi-bin/param.cgi?action=update&group=wifi&AUTH_KEY={wifi
password}
其他重要設(shè)置:
如上一節(jié)所述,開發(fā)板提供視頻流,nabto和restart.cgi兩個(gè)腳本,分別設(shè)置攝像頭參數(shù)和內(nèi)置的Nabto配置。 我們將在另一個(gè)教程中通過(guò)Nabto P2P連接到開發(fā)板。
開發(fā)板的Linux相關(guān)說(shuō)明
很有意思的是,該主板上運(yùn)行的是Linux 2.6內(nèi)核版本。這是精簡(jiǎn)版的Linux版本,上面運(yùn)行了很少的服務(wù)和應(yīng)用程序。所以不要指望像包管理器,GUI這樣的應(yīng)用程序
然而,這在個(gè)簡(jiǎn)單的開發(fā)板里面增加了很多關(guān)于攝像頭相關(guān)的配置和處理能力。和其他嵌入式Linux類似,安裝了許多重要的服務(wù)和程序
·busybox.1.15.2Linux 工具h(yuǎn)ttp://www.busybox.net/about.html
·dnsmasq-2.60DHCP 服務(wù)器http://www.thekelleys.org.uk/dnsmasq/doc.html
·HostapdWi-Fi 熱點(diǎn)和認(rèn)證服務(wù)器http://hostap.epitest.fi/wpa_supplicant/
·spook-20050207RTSP 服務(wù)器http://www.litech.org/spook/
·wireless-tool.29網(wǎng)絡(luò)配置 utilitieshttp://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
·wpa_supplicantIEEE 802.11i supplicant http://hostap.epitest.fi/wpa_supplicant/
·ser2net-2.10.0串口轉(zhuǎn)網(wǎng)絡(luò)
·http://ser2net.sourceforge.net/
·boa-0.94.13輕量級(jí)web服務(wù)器http://www.boa.org/
STA恢復(fù)模式!!!!:
可能會(huì)發(fā)生這樣的情況:我們通過(guò)ser2net設(shè)備發(fā)送HTTP命令,導(dǎo)致STA配置失敗,這樣的話我們需要恢復(fù)到出廠AP模式。
下拉GPA5
保持GPA5下拉5秒,開發(fā)板將會(huì)恢復(fù)出廠并重啟!
USB串口連接:
為了方便調(diào)試,需要將開發(fā)板串口連接到Windows或Linux PC以查看系統(tǒng)信息。 我們可以使用FTDI串口線,接線如下:
·串口線GND連接開發(fā)板GND
·串口線RX連接開發(fā)板TXD
·串口線TX連接開發(fā)板RXD
連接完成后,打開串口工具,例如putty,設(shè)置參數(shù)波特率115200-8-N-1
這樣你就可以訪問(wèn)linux終端,輸入一些常用的命令試試吧!
其他有意思的玩法:
開發(fā)板可以應(yīng)用于圖像識(shí)別、可視化編程等用途。 下面是介紹:
Processing: Processing是一種基于Java的創(chuàng)意編程語(yǔ)言,可幫助程序員使用創(chuàng)意編碼繪制畫布。該平臺(tái)已經(jīng)很穩(wěn)定,現(xiàn)在對(duì)于視頻應(yīng)用項(xiàng)目來(lái)說(shuō)非常成熟:
Resources:
https://processing.org/
Procesing + OpenCV library:https://github.com/atduskgreg/opencv-processing
Processing + gstreamer implementation for video processing:https://github.com/processing/processing-video/wiki
OpenFrameworks:openFrameworks是一個(gè)開源的C++工具包,可以通過(guò)提供一個(gè)簡(jiǎn)單的實(shí)驗(yàn)性框架來(lái)協(xié)助創(chuàng)作
Openframeworks and Gstreamer:https://github.com/arturoc/ofxGStreamer
Openframworks rtsp stream handling (MacOS example):http://blog.geoffdonaldson.com/2013/02/14/using-the-gstreamer-sdk-in-openframeworks-under-osx-10-8-mountain-lion/
硬件
PCB 和原理圖
https://github.com/RAKWireless/WisCam/blob/master/Files/WisCam_1V2_SCH%26PCB_2017.07.06.zip
源代碼
WisCam git
開發(fā)板Linux固件和其他程序
https://github.com/RAKWireless/WisCam
Nuwicam
Nuwicam例程 可以運(yùn)行在WisCam上
https://github.com/OpenNuvoton/NuMaker_NuWicam_Samples
-
wiscam
+關(guān)注
關(guān)注
0文章
3瀏覽量
5431 -
瑞科慧聯(lián)
+關(guān)注
關(guān)注
0文章
12瀏覽量
7612
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論