當(dāng)前位置:首頁 > 消費電子 > 消費電子
[導(dǎo)讀]摘要:寵物智能喂養(yǎng)系統(tǒng)是一種高效的遠程喂養(yǎng)系統(tǒng),可以通過WEB及移動終端(平板、手機)遠程控制寵物的科學(xué)喂食和喂水。文中以S3C6 410為核心處理器、紅外CCD攝像頭為視頻采集模塊以及TVP5150為視頻解碼器,構(gòu)建了高

摘要:寵物智能喂養(yǎng)系統(tǒng)是一種高效的遠程喂養(yǎng)系統(tǒng),可以通過WEB及移動終端(平板、手機)遠程控制寵物的科學(xué)喂食和喂水。文中以S3C6 410為核心處理器、紅外CCD攝像頭為視頻采集模塊以及TVP5150為視頻解碼器,構(gòu)建了高度集成的嵌入式實時視頻采集平臺,在此基礎(chǔ)上完成了寵物智能喂養(yǎng)系統(tǒng)的設(shè)計。該設(shè)計具有體積小、成本低、功耗低、穩(wěn)定性高、安全性好、操作便利等特點,極好地滿足了智能科學(xué)喂養(yǎng)寵物的需求。文中提出了一種適用于該喂養(yǎng)系統(tǒng)的視頻采集驅(qū)動設(shè)計方案,在Linux3.0.1版本內(nèi)核下,以Linux下處理視頻設(shè)備的最新標準-V4L2為基準完成驅(qū)動程序編寫。通過實驗證明該方案能成功實現(xiàn)視頻數(shù)據(jù)的采集。

隨著我國社會經(jīng)濟的快速發(fā)展,城市化進程不斷加速。我國國民生活水平不斷得到提高,我國寵物業(yè)也得到了飛速的發(fā)展。由于城市生活的封閉性、個性化和人口老齡化等問題不斷凸顯出來。人民生活中休閑、消費和情感寄托方式也呈多樣化的發(fā)展。家庭寵物的飼養(yǎng)已經(jīng)成為了城市居民生活消遣的新方式。

寵物的喂養(yǎng)和看護往往是寵物主人最關(guān)心的問題,目前寵物主要還是依靠人工進行喂食,寵物看護系統(tǒng)還停留在專人看護和寵物店托管的模式下?,F(xiàn)有的寵物看護裝置只解決了不讓寵物餓肚子的簡單層面,而沒有解決主人不在家時,寵物和主人的互動要求。主人比較關(guān)心的問題,比如寵物現(xiàn)在在做什么,有沒有吃飯,寵物健康狀況怎么樣等,這些心理訴求的滿足才是一套寵物看護系統(tǒng)要解決的問題。而現(xiàn)在的設(shè)備還不能滿足這一需求。

目前的家庭寵物看護系統(tǒng)為數(shù)不多,算得上看護系統(tǒng)的產(chǎn)品功能單一,只是簡單的測量寵物環(huán)境和喂食,不能同時滿足用戶既可以遠程喂養(yǎng)寵物又可以在線觀看寵物進食情況和活動狀況的需求。近年來隨著嵌入式技術(shù)迅速的發(fā)展,嵌入式系統(tǒng)已經(jīng)成熟并得到廣泛應(yīng)用,把嵌入式系統(tǒng)與Web技術(shù)結(jié)合起來,將Web技術(shù)引入到測控系統(tǒng),實現(xiàn)基于嵌入式Web服務(wù)器的遠程測控系統(tǒng),有良好的應(yīng)用前景。在嵌入式Linux平臺下利用Boa作為Web服務(wù)器的遠程測控系統(tǒng)可以實現(xiàn)上述需求,搭載有高度集成的嵌入式實時視頻采集平臺的寵物智能喂養(yǎng)系統(tǒng)能很好的滿足客戶的不同需求。通過嵌入式實時視頻采集平臺上的紅外CCD攝像頭,寵物主人可以在白天或者晚上用智能手機、平板電腦、PC電腦等通過WEB控制寵物進食同時可以查看寵物進食和活動情況。

在本系統(tǒng)中,驅(qū)動程序用來完成用戶和硬件的交互,是硬件設(shè)備正常工作的先決條件,充當(dāng)著不可缺少的角色。本文提出一種基于S3C64 10的Linux3.0.1內(nèi)核版本下的視頻采集系統(tǒng)驅(qū)動設(shè)計方案,并已成功用于寵物智能喂養(yǎng)系統(tǒng)中,收到良好的效果。

1 硬件系統(tǒng)構(gòu)架

寵物智能喂養(yǎng)系統(tǒng)主要由圖像采集模塊、視頻解碼模塊、S3C6410、喂食模塊、喂水模塊和顯示模塊組成。紅外CCD攝像頭用于采集智能喂養(yǎng)系統(tǒng)工作狀態(tài)中的寵物的進食和活動情況圖像,由于S3C6410不能識別采集到的PAL制式信號,因此需要做視頻解碼處理,這里選用TI公司推出的Tvp5150解碼器,用于將采集到的PAL制式信號轉(zhuǎn)換成YCrCb格式。S3C6410是整個系統(tǒng)的核心部分,轉(zhuǎn)換后的數(shù)字信號數(shù)據(jù)經(jīng)編碼DMA通道進入Camera單元的編碼縮放器,經(jīng)過高編碼質(zhì)量和壓縮比的H264編碼后保存到用戶程序開辟的緩存區(qū)中,然后傳輸?shù)絣ive555流媒體服務(wù)器接收程序中,live555實現(xiàn)了對編碼后視頻流的流化和相關(guān)的處理,最后通過嵌入網(wǎng)頁端的流媒體播放器VLC media player播放器實時顯示。系統(tǒng)中的喂食模塊可以實現(xiàn)寵物所需食物的定量投放,喂水模塊可以實現(xiàn)自動喂水和遠程喂水的功能。另外為了方便對圖像進行相關(guān)處理,需要NAND FLASH用于存儲截取的圖像,同時,SDRAM、JTAG和供電部分等常用外圍接口是開發(fā)過程中不可缺少的部分。由此搭建的高度集成的實時視頻采集系統(tǒng)具有顯著的小型化效果。系統(tǒng)整體框架如圖1所示。

1.1 S3C6410開發(fā)平臺

S3C6410是基于16/32-bit RISC ARM1176JZF-S內(nèi)核的低成本、低功耗、高性能微處理器,具有高達533 MHz的主頻,4 G ROM和512 M RAM,性能強大,堪比當(dāng)今主流智能手機。S3C6410內(nèi)部集成了許多功能強大的硬件加速器,像視頻處理、移動圖像處理、顯示控制和圖像縮放等,集成了Camera接口單元、系統(tǒng)管理器、LCD控制器、定時器、通用I/O端口、I2C總線接口等硬件外設(shè),具有先進的OTG接口和能支持SLC/MLC等主流的NAND FLASH。與本系統(tǒng)直接相關(guān)的Camera接口單元由7個模塊組成:圖形多路選擇器、捕獲單元、預(yù)覽縮放器、編碼縮放器、預(yù)覽DMA通道、編碼DMA通道和SFR(特殊功能寄存器)。系統(tǒng)中的兩個DMA通道分別是:預(yù)覽DMA通道和編碼DMA通道,其中預(yù)覽DMA通道用于液晶屏的顯示,可以把YCbCr4:2:2格式的圖像轉(zhuǎn)換成RGB格式的數(shù)據(jù),并存放于為預(yù)覽DMA分配的內(nèi)存中。編碼通道用于圖像的編解碼處理,可以輸出YCbCr4:2:0或YCbCr4:2:2格式到為編碼DMA分配的內(nèi)存中。

1.2 紅外CCD攝像頭和TVP5150視頻解碼器

系統(tǒng)中的紅外CCD攝像頭采用優(yōu)質(zhì)的1/3英寸SONYCCD芯片,優(yōu)異的紅外夜視功能,內(nèi)置24顆紅外燈,夜視距離達5~10 m。其技術(shù)參數(shù):DC 12 V 220 mA,紅外燈打開時DC 12 V 1 000 mA,420 TVL,像素頻率27 MHz,輸出PAL制式視頻信號。

TVP5150是TI公司推出的一款超低功耗高性能視頻解碼器,可以對NTSC/PAL/SECAM各制式信號自動識別、切換、設(shè)置相應(yīng)的寄存器,TVP5150解碼器優(yōu)化的架構(gòu)使其正常工作時功耗僅115 mW,廣泛應(yīng)用于便攜、批量大、高性能和高質(zhì)量的視頻產(chǎn)品中。TVP5150解碼器有一個模擬輸入通道,可以接受1路S—VIDEO信號或2路復(fù)合視頻信號(CVBS),紅外CCD攝像頭采集到的圖像以每秒25幀的速度向TVP5150輸出PAL制式的圖像數(shù)據(jù),TVP5150對輸入的PAL制式信號進行自動識別并進行A/D轉(zhuǎn)換,轉(zhuǎn)換為符合ITU—R BT.656標準的8位數(shù)字YCbCr4:2:2信號。ITU —R BT.656是ITU—R BT.601附件A中的數(shù)字接口標準,ITU-R BT.656輸出8位Y:Cb:Cr=4:2:2的數(shù)據(jù)格式,同步信號內(nèi)嵌于數(shù)據(jù)流中串行輸出,也可以單獨引腳與數(shù)據(jù)流并行輸出。TVP5150可以輸出8位4:2:2的ITU—R BT.656信號或8位4:2:2的ITU—R BT.601信號,這和S3C6410的Camera模塊的輸入信號格式一致,為視頻格式轉(zhuǎn)換節(jié)省了大量工作,TVP5150解碼器內(nèi)部含有多個特殊功能寄存器,可被編程使用I2C串行接口,用戶通過I2C總線設(shè)置外部視頻解碼芯片TVP5150的內(nèi)部寄存器,從而設(shè)定工作狀態(tài)。TVP5150芯片的原理圖如圖2所示。

2 驅(qū)動設(shè)計

本系統(tǒng)驅(qū)動主要包括兩大部分:處理器S3C6410的Camera接口驅(qū)動和視頻解碼器TVP5150驅(qū)動。Camera接口驅(qū)動為上層的應(yīng)用程序提供了底層支持,遵循V4L2標準;視頻解碼器TVP5150驅(qū)動完成了I2C設(shè)備的注冊,遵循I2C通訊協(xié)議,實現(xiàn)了讀寫內(nèi)部寄存器的接口函數(shù)。

2.1 Camera接口驅(qū)動

V4L2(Video For TWO)是Linux內(nèi)核中關(guān)于視頻設(shè)備的API接口,主要用來對視頻設(shè)備進行開關(guān)、采集、輸出等操作。在嵌入式系統(tǒng)中多采用Linux作為其軟件平臺,V4L2是Linux2.6采用的內(nèi)核驅(qū)動模型,與之前版本的V4L存在很大差別。V4L2使在Linux下開發(fā)視頻設(shè)備驅(qū)動程序具有統(tǒng)一的接口規(guī)范,這套規(guī)范給驅(qū)動程序開發(fā)提供了清晰的模型和接口。應(yīng)用程序處于最上層,硬件設(shè)備處于最下層,這套規(guī)范就處于中間層。在Linux2.6發(fā)行版之前此類規(guī)范都是V4L,它將所有的視頻設(shè)備驅(qū)動程序都放在其管理中,為編程人員減少了大量的工作。

本方案采用Linux為操作系統(tǒng),內(nèi)核版本為3.0.1,相對之前的linux2.6.28而言,內(nèi)核版本進行了升級,升級之后的linux3.0.1版本兼容了更多的硬件,修復(fù)了之前系統(tǒng)中的bug和某些資源的沖突問題,系統(tǒng)安全性能得到了顯著提高。Camera接口驅(qū)動正是按照V4L2標準來完成的。s3c_time_core.c文件實現(xiàn)了設(shè)備的注冊和大部分系統(tǒng)調(diào)用,是驅(qū)動的核心,v4l2接口的ioctl系統(tǒng)調(diào)用依靠s3c_time_v4l2.c來實現(xiàn)。

在Linux操作系統(tǒng)中,設(shè)備被映射為特殊的文件,設(shè)備驅(qū)動程序為各種設(shè)備提供一致的訪問接口,應(yīng)用程序通過調(diào)用open、close、rea d、write等函數(shù)去操作相應(yīng)的設(shè)備文件來訪問設(shè)備。open()函數(shù)用來打開視頻文件設(shè)備;camera接口底層的讀寫用read()和write()實現(xiàn);mmap()取代了以前的copy_to_user()方式,用內(nèi)存映射方式把設(shè)備內(nèi)存映射到應(yīng)用程序內(nèi)存中,從而直接處理設(shè)備內(nèi)存;當(dāng)video_device配置完畢,在s3c_time_probe()中通過video_register_device()函數(shù)完成注冊。

2.2 TVP5150驅(qū)動

2.2.1 Linux下I2C驅(qū)動體系結(jié)構(gòu)

I2C總線是由PHILIPS公司開發(fā)的微電子通信控制領(lǐng)域廣泛采用的一種新型總線標準,用于連接微控制器及其外圍設(shè)備,其最主要的特點是簡單性和有效性。Linux系統(tǒng)中把I2C設(shè)備當(dāng)作一個普通的字符設(shè)備來處理,對I2C設(shè)備具有很好的支持,Linux下的I2C體系結(jié)構(gòu)分為3個組成部分:I2C核心、I2C總線驅(qū)動和I2C設(shè)備驅(qū)動。

I2C核心是內(nèi)核用來維護和管理I2C的核心部分,提供了I2C總線驅(qū)動和設(shè)備驅(qū)動的注冊,注銷方法,I2C總線驅(qū)動是對I2C硬件體系結(jié)構(gòu)中適配器端的實現(xiàn),主要包含了I2C適配器數(shù)據(jù)結(jié)構(gòu)i2c_adapter、I2C適配器的algorithm數(shù)據(jù)結(jié)構(gòu)i2c_algorithm和控制I2C適配器產(chǎn)生通信信號的函數(shù)。I2C設(shè)備驅(qū)動是對I2C硬件體系結(jié)構(gòu)中設(shè)備端的實現(xiàn),設(shè)備一般掛接在受CPU控制的I2C適配器上,通過I2C適配器與CPU交換數(shù)據(jù)。I 2C設(shè)備驅(qū)動主要包含了數(shù)據(jù)結(jié)構(gòu)i2c_driver和i2c_client,我們需要根據(jù)具體設(shè)備實現(xiàn)其中的成員函數(shù)。Linux I2C體系結(jié)構(gòu)圖如圖3所示。

2.2.2 TVP5150驅(qū)動實現(xiàn)

Linux3.0.1相對linux2.6.28而言驅(qū)動程序函數(shù)接口發(fā)生了一些變化,驅(qū)動程序進行了優(yōu)化,TVP5150驅(qū)動具體實現(xiàn)如下:TVP5150驅(qū)動程序首先要實現(xiàn)對I2C core層的接口,用以掛接I2C adapter層來實現(xiàn)對I2C總線及I2C設(shè)備具體的訪問方法,主要包括需要編寫TVP5150_ init()、TVP5150_probe()、TVP5150_remove()等接口函數(shù)。

tvp5150_init()初始化函數(shù),主要調(diào)用i2C_add_driver(&tvp5150_i2c_driver)添加設(shè)備驅(qū)動。

tvp5150_probe()在使用i2C_add_driver()注冊時被調(diào)用,用來檢查被發(fā)現(xiàn)的所有的I2C適配器是否符合I2C驅(qū)動的特定條件,如果符合相關(guān)條件則進行連接,并通I2C適配器來實現(xiàn)對I2C總線及I2C設(shè)備的訪問。

tvp5150_remove()在刪除Tvp5150時被調(diào)用,使Tvp5150解碼器脫離I2C適配器,并且清除描述該設(shè)備相關(guān)數(shù)據(jù)結(jié)構(gòu)。

本文的驅(qū)動程序主要實現(xiàn)以下環(huán)節(jié):

首先增加了填充camera接口的結(jié)構(gòu)體:static struct s3c_fimc_camera tvp5150_da-ta,結(jié)構(gòu)體中主要描述了攝像頭的參數(shù),比如圖像尺寸720x240,圖像格式ITU_656_YCBCR422_8BIT,像素頻率27 MHz等。這些數(shù)據(jù)在初始化camera接口時要用到。在tvp5150_probe(struct i2c_client*c,const structi2c_device_id*id)函數(shù)中增加了一個函數(shù)接口s-3c_fime_register_camera(&tvp5150_data)用于把上面這個結(jié)構(gòu)體填入struct s3c_fimc_config s3c_fimc這個全局變量中,其次定義tvp5150驅(qū)動配置參數(shù)的結(jié)構(gòu)體tvp5150_i2c_driver,在tvp5150_in it()函數(shù)中調(diào)用i2c_add_driver(&tvp5150_i2c_driver)添加驅(qū)動,之后tvp5150_probe()被調(diào)用時tvp5150_attach_adapter()會被調(diào)用,通過遍歷系統(tǒng)中的所有I2C總線驅(qū)動來探測Tvp5150,然后調(diào)用內(nèi)核中已經(jīng)注冊的適配器來連接Tvp5150。tvp5-150_attach_adapter()函數(shù)主要調(diào)用i2c_detect(adapter,driver)函數(shù)來探測設(shè)備,探測到目標設(shè)備之后創(chuàng)建一個strnct i2c_client結(jié)構(gòu)來標識這個設(shè)備。

初始化Tvp5150內(nèi)部特殊功能寄存器的操作主要通過tvp5150_probe()函數(shù)來實現(xiàn),函數(shù)中調(diào)用i2c_smbus_write_byte_data(c,TVP5150 _init_reg[i].subaddr,TVP5150_init_reg[i].value)來完成寄存器的設(shè)置,從而完成了初始化tvp5150的過程。其圖像采集驅(qū)動流程圖如圖4所示。

3 驅(qū)動移植和相關(guān)實驗結(jié)果

1)驅(qū)動程序編寫好之后,在Kconfig-camera文件中添加與驅(qū)動相對應(yīng)項目的編譯配置選項:

config TVP5150

bool“TVP5150”

depends on VIDEO_FIMC

---help---

LYT TVP5150 camera module support

2)在Makefile文件中添加對驅(qū)動的編譯條目:

obj-$(CONFIG_TVP5150)+=tvp5150.o

3)修改mach-smdk6410.c文件:

在i2c_board_info i2c_devs0[]_initdata結(jié)構(gòu)體中{I2C_BOARD_INFO(“ov965x”,0x30),},語句后面添加{I2C_BOARD_INFO(“tvp51 50”,0x5c),},

4)進入linux-3.0.1內(nèi)核目錄,執(zhí)行make menuconfig進行相關(guān)的配置:

其中External Camera(TVP5150)——>

ResetType(0=low,1=high)前面的選擇框里要選擇0

5)進入內(nèi)核目錄執(zhí)行make zImage,重新編澤內(nèi)核,生成內(nèi)核文件,將新的內(nèi)核燒寫到開發(fā)板,運行測試程序即可測試到視頻設(shè)備采集到的實時圖像,如圖5~7所示。

4 結(jié)束語

通過開發(fā)實例詳細介紹了寵物智能喂養(yǎng)系統(tǒng)視頻采集的驅(qū)動設(shè)計,實現(xiàn)了TI公司視頻解碼芯片TVP5150驅(qū)動程序的設(shè)計,并成功移植到開發(fā)板上,具有較高的性價比,可用于視頻采集、遠程監(jiān)控等眾多領(lǐng)域,該系統(tǒng)視頻監(jiān)控的實現(xiàn)滿足了遠程實時觀看寵物進食和活動情況的需求,對寵物看護系統(tǒng)的進一步完善提供了幫助,在實際測試中,該系統(tǒng)測試結(jié)果令人滿意,實現(xiàn)了對寵物遠程定時定量的喂食,該系統(tǒng)成本很低,具有很好的應(yīng)用和推廣價值。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉