999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Raspberry Pi的電梯彩屏顯示系統(tǒng)設(shè)計(jì)*

2014-09-06 10:49:58賴江李英祥何琪蘇凱
關(guān)鍵詞:電梯信息系統(tǒng)

賴江,李英祥,何琪,蘇凱

(成都信息工程學(xué)院 通信工程學(xué)院,成都 610225)

?

基于Raspberry Pi的電梯彩屏顯示系統(tǒng)設(shè)計(jì)*

賴江,李英祥,何琪,蘇凱

(成都信息工程學(xué)院 通信工程學(xué)院,成都 610225)

本文針對多媒體彩屏電梯顯示的需求,在ARM內(nèi)核樹莓派平臺(tái)和單片機(jī)接口板雙處理器架構(gòu)的硬件支持下,利用485/CAN總線傳輸技術(shù)、Linux應(yīng)用編程、Qt5用戶界面編程,提出并實(shí)現(xiàn)了一種雙處理器架構(gòu)的電梯彩屏顯示系統(tǒng)。此彩屏顯示系統(tǒng)與傳統(tǒng)顯示系統(tǒng)相比,界面更美觀,功能更豐富,且具有低成本、高穩(wěn)定性等特點(diǎn)。實(shí)際測試結(jié)果表明,此電梯彩屏顯示系統(tǒng)設(shè)計(jì)的可行性和有效性。

電梯;雙處理器架構(gòu);Qt5;樹莓派

引 言

近年來,隨著高層建筑數(shù)量的與日俱增,電梯的需求量也在增加?,F(xiàn)階段我們廣泛使用的電梯都是基于LED點(diǎn)陣列的顯示系統(tǒng),顯示狀態(tài)信息比較簡單,顯示方式比較單調(diào)。此外,現(xiàn)在的一些電梯里的廣告機(jī),雖然改善了電梯轎內(nèi)的乘坐環(huán)境,良好的廣告效果也給商家?guī)砹瞬恍〉慕?jīng)濟(jì)效益。但是這種顯示裝置沒有和電梯控制系統(tǒng)融為一體,只是單純的視頻播放而已。

為了使顯示和電梯控制系統(tǒng)相融合,打造舒適的乘坐環(huán)境,針對現(xiàn)有的電梯系統(tǒng)提出一種由單片機(jī)完成不同廠商適配、由ARM/X86統(tǒng)一顯示的雙核處理方法。該方法中ARM/X86處理器專注于統(tǒng)一通用格式電梯狀態(tài)信息解碼、樓層圖片切換或視頻播放,從而提高整個(gè)系統(tǒng)的實(shí)時(shí)性與可靠性。針對不同廠商的電梯通信協(xié)議,只需要更改單片機(jī)的編解碼程序便可使整個(gè)系統(tǒng)重新工作[1-8]。

Raspberry Pi(中文名為“樹莓派”)是一款由英國的樹莓派基金會(huì)所開發(fā),以低價(jià)硬件及自由軟件為學(xué)生計(jì)算機(jī)編程教育而設(shè)計(jì)的卡片式電腦。其配備一枚700 MHz博通出產(chǎn)的ARM架構(gòu)BCM2835處理器,256 MB內(nèi)存(B型已升級到512 MB內(nèi)存)的微型電腦主板[2]。Raspberry Pi以SD卡為內(nèi)存硬盤,主板周圍有兩個(gè)USB接口和一個(gè)網(wǎng)口,可連接鍵盤、鼠標(biāo)和網(wǎng)線,同時(shí)擁有視頻模擬信號的電視輸出接口和HDMI高清視頻輸出接口。以上部件全部整合在一張僅比信用卡稍大的主板上,具備所有PC的基本功能。其操作系統(tǒng)采用開源的Linux系統(tǒng),比如Debian、ArchLinux,自帶的Iceweasel、KOffice等軟件能夠滿足基本的網(wǎng)絡(luò)瀏覽、文字處理以及計(jì)算機(jī)學(xué)習(xí)的需要[2,5]。

Qt是一個(gè)1991年由奇趣科技開發(fā)的跨平臺(tái)C++圖形用戶界面應(yīng)用程序開發(fā)框架。Qt具有優(yōu)良的跨平臺(tái)特性,Qt支持下列操作系統(tǒng):Microsoft Windows 95/98、Microsoft Windows NT、Linux、 Solaris、SunOS、HP-UX、Digital UNIX (OSF/1、Tru64)、FreeBSD、BSD/OS,SCO、AIX、OS390、QNX等等[3-4]。

1 系統(tǒng)整體設(shè)計(jì)

1.1 系統(tǒng)框架

本系統(tǒng)的硬件部分主要由接口轉(zhuǎn)接板和顯示板組成,系統(tǒng)框圖如圖1所示。

圖1 系統(tǒng)框圖

1.2 子系統(tǒng)功能介紹

1.2.1 接口轉(zhuǎn)接板

接收RS-485/CAN總線上的電梯通信協(xié)議,并完成協(xié)議的解析;承載溫度傳感設(shè)備和掛在I2C總線上的時(shí)鐘電路,供顯示板讀取溫度和時(shí)間信息,完成用戶按鍵的檢測與編碼。

1.2.2 顯示板

接收接口轉(zhuǎn)接板譯碼后的電梯數(shù)據(jù);讀取溫度和時(shí)間信息;實(shí)現(xiàn)界面應(yīng)用程序。

2 接口轉(zhuǎn)接板子系統(tǒng)設(shè)計(jì)

接口轉(zhuǎn)接板子系統(tǒng)硬件主要包括ATmega8單片機(jī)、DS18B20溫度傳感器、PCF8563時(shí)鐘芯片、MAX485芯片等。其接口轉(zhuǎn)接板框圖如圖2所示。

圖2 接口轉(zhuǎn)接板框圖

電梯的通信協(xié)議有多種,本文以NICE3000通信協(xié)議為例實(shí)現(xiàn)本系統(tǒng)。

2.1 NICE3000通信協(xié)議的通信設(shè)定

通信方式:RS-485標(biāo)準(zhǔn)、異步、半雙工。

數(shù)據(jù)格式:1位起始位、8位數(shù)據(jù)位、1位停止位、無校驗(yàn)位。

通信波特率:9 600 bps。

通信地址定義:廣播地址為0,外接節(jié)點(diǎn)地址為1~31(外招板撥碼開關(guān)確定),地址同時(shí)也表示外招所在樓層;顯示板只是接收顯示,地址設(shè)定為0(撥碼),無需通信回復(fù)。

數(shù)據(jù)校驗(yàn):采用兩位異或校驗(yàn)。

數(shù)據(jù)幀分類:共有兩種形式,其中廣播幀用于外招顯示內(nèi)容的信息,不需要返回幀,另外還有一種是普通幀,主要完成主控制板與外招之間的控制信息交換。

2.2 幀格式

數(shù)據(jù)幀采用固定長度,5個(gè)字節(jié),結(jié)構(gòu)為幀頭、用戶數(shù)據(jù)、幀尾。

幀頭:包括1個(gè)字節(jié)地址,即主控制板發(fā)送給外招的標(biāo)識,從機(jī)(外招)根據(jù)幀頭判斷本機(jī)是否響應(yīng)當(dāng)前通信。如果地址是廣播地址,則從機(jī)接收信息,但是不用返回。

用戶數(shù)據(jù)包括:數(shù)據(jù)2個(gè)字節(jié),根據(jù)發(fā)送方向(主到從或是從到主)以及幀形式定義不同的用戶數(shù)據(jù)。

幀尾:包括2個(gè)字節(jié)校驗(yàn)數(shù)據(jù),先發(fā)低位,后發(fā)高位。

電梯系統(tǒng)接收到的數(shù)據(jù)幀不能直接顯示,需要根據(jù)數(shù)據(jù)幀格式,對數(shù)據(jù)進(jìn)行校驗(yàn),然后解析,最后提取有用的數(shù)據(jù)給顯示系統(tǒng)進(jìn)行顯示。本系統(tǒng)的操作如下:

rd = read(fd, rbuf, sizeof(rbuf)); //接收串口數(shù)據(jù)

if(yihuo_value(rbuf, 4) == rbuf[4]); //數(shù)據(jù)校驗(yàn)

num[0] = rbuf[1] & 0x01; //方向解析

num[1] = (rbuf[1]>>1) & 0x03; //狀態(tài)解析

num[2] = (rbuf[1]>>3) & 0x01; //是否超載

num[3] = rbuf[2] & 0x1f; //樓層高位解析

num[4] = rbuf[3] & 0x1f; //樓層低位解析

3 顯示板子系統(tǒng)設(shè)計(jì)

對于彩屏電梯顯示系統(tǒng)而言,液晶屏的顯示效果對客戶的影響是至關(guān)重要的。因此,應(yīng)用層的程序開發(fā)相當(dāng)重要??紤]到圖形界面控件的豐富程度、漂亮程度以及開源免費(fèi)的持續(xù)升級等因素,選擇了QTE/Qt5圖形開發(fā)平臺(tái)。顯示板子系統(tǒng)的架構(gòu)如圖3所示。

圖3 子系統(tǒng)架構(gòu)圖

3.1 Qt的移植

3.1.1 Qt的移植條件

Qt for Embedded Linux是用于嵌入式Linux所支持設(shè)備的領(lǐng)先應(yīng)用程序架構(gòu)。Qt可以在任何支持Linux的平臺(tái)上運(yùn)行,創(chuàng)建具有獨(dú)特用戶體驗(yàn)的具備高效內(nèi)存效率的設(shè)備和應(yīng)用程序[3]。Qt的移植需要滿足以下幾個(gè)基本條件:

① 開發(fā)環(huán)境:Linux內(nèi)核2.4或更高;GCC版本3.3或更高;用于MIPS,其GCC版本3.4或更高。

② 占用存儲(chǔ)空間:存儲(chǔ)空間取決于配置,壓縮后為1.7~4.1 MB;未壓縮為3.6~9.0 MB。

③ 硬件平臺(tái):易于載入任何支持帶C++編譯器和幀緩沖器驅(qū)動(dòng)Linux驅(qū)動(dòng)的處理器;支持ARM、x86、MIPS、PowerPC。

④ Raspberry Pi(B型)滿足以上條件,故可以進(jìn)行Qt5的移植。

3.1.2 Qt5的移植準(zhǔn)備

在做Qt5移植之前首先做以下移植準(zhǔn)備:

① 建立一個(gè)文件夾/home/opt來存放編譯所需的源碼和文件。

② 下載Raspbian Wheezy鏡像,本文采用2012-07-15-wheezy-raspbian.img。

③ 下載工具鏈,本文采用gcc-4.7-linaro-rpi-gnueabihf。

④ 下載交叉編譯工具,本文采用cross-compile-tools。

⑤ 下載Qt5源碼。

⑥ 下載qtjsbackend庫的應(yīng)用補(bǔ)丁。

然后建立文件夾mnt/rasp-pi-rootfs,將Raspbian Wheezy鏡像掛載到此文件夾下,并進(jìn)入Qt5源碼文件夾執(zhí)行初始化代碼init-repository。

圖4 程序流程圖

3.1.3 Qt5的編譯

首先進(jìn)入cross-compile-tools文件夾執(zhí)行一個(gè)腳本fixQualifiedLibraryPaths來修改鏈接和庫路徑。

然后編譯qtbase,配置如下:

./configure-opengl es2 device linux-rasp-pi-g++ -device-option CROSS_COMPILE=~/opt/gcc-4.7-linaro-rpi-gnueabihf/bin/arm-linux-gnueabihf- -sysroot /mnt/rasp-pi-rootfs-opensource -confirm-license -optimized-qmake -reduce-relocations -reduce-exports -release -make libs -prefix/usr/local/qt5pi

接著再編譯其他模塊如qtimageformats、qtsvg、qtjsbackend、qtscript、qtxmlpatterns、qtdeclarative、qtsensors、qt3d、qtgraphicaleffects、qtjsondb、qtlocation、qtdocgallery等。

當(dāng)在鏡像中編譯安裝完所有的模塊之后,將其復(fù)制到SDcard。

3.1.4 安裝Qt Creator

從網(wǎng)站http://qt-project.org/wiki/Create#QtonPi_App_SDK上下載Qt Creator安裝包,并在Linux系統(tǒng)下對其進(jìn)行安裝配置。由于Qt5需要Qtcreator2.6.0以上的版本作為支持,本文采用2.6.1版本。

3.2 外圍部件讀取程序

本系統(tǒng)通過讀取掛在I2C總線上的實(shí)時(shí)時(shí)鐘芯片來獲取時(shí)間信息,通過溫度傳感設(shè)備獲取溫度信息。本文以讀取實(shí)時(shí)時(shí)鐘芯片的數(shù)據(jù)為例,操作如下:

fd = open('/dev/i2c-1', O_RDWR); //打開I2C總線設(shè)備

ret = ioctl(fd,I2C_TENBIT,0); //設(shè)置數(shù)據(jù)的讀寫格式

ret = ioctl(fd, I2C_SLAVE_FORCE, I2C_ADDR);

//設(shè)置I2C總線上時(shí)鐘芯片地址

pTime->Second = BCD_to_HEC((TimeBuff[pcf8563_SEC - 2] & 0x7f));

pTime->Minute = BCD_to_HEC((TimeBuff[pcf8563_MIN - 2] & 0x7f));

pTime->Hour = BCD_to_HEC((TimeBuff[pcf8563_HR - 2] & 0x3f));

這些設(shè)備的操作通過C代碼來實(shí)現(xiàn),然后將其編譯成動(dòng)態(tài)鏈接庫的形式,供界面應(yīng)用程序調(diào)用。

3.3 界面應(yīng)用程序的實(shí)現(xiàn)

圖形界面開發(fā)是Qt/Embedded開發(fā)的一個(gè)重點(diǎn),本系統(tǒng)的界面結(jié)構(gòu)包括樓層信息區(qū)域、運(yùn)行方向區(qū)域、圖片顯示區(qū)域、溫度時(shí)間顯示區(qū)域、狀態(tài)顯示區(qū)域、本系統(tǒng)涉及到視圖的跳轉(zhuǎn)、數(shù)據(jù)的傳遞、控件的使用、布局和事件處理等等。其程序流程如圖4所示。

整個(gè)顯示界面通過MainWindow類實(shí)現(xiàn),該類繼承自QmainWindow,而各顯示區(qū)域均通過繼承QWidget類來實(shí)現(xiàn)。如圖3所示,通過定時(shí)器1每隔30 ms調(diào)用MainWindow的槽函數(shù)checkLiftStstus()來獲取由C函數(shù)open_uart485(int data[])解析的串口數(shù)據(jù)。

connect(timer, SIGNAL(timeout()), this, SLOT(checkLiftStatus())); //獲取電梯信息

將解析后的信息傳遞給樓層信息區(qū)域,運(yùn)行方向區(qū)域,狀態(tài)顯示區(qū)域分別進(jìn)行顯示。

indicatorDirection(data[0]); //方向信息

indicatorState(data[1]); //狀態(tài)信息

liftCurrentFloorNum(data[2]); //樓層信息

圖片視頻顯示區(qū)域是在類ShowController中實(shí)現(xiàn)的,當(dāng)系統(tǒng)需要顯示圖片時(shí),該類調(diào)用ImageView類的對象負(fù)責(zé)圖片顯示;當(dāng)系統(tǒng)需要顯示視頻時(shí),該類調(diào)用PlayerWidget類的對象負(fù)責(zé)處理視頻播放。ImageView類和PlayerWidget類也是繼承自Qwidget。ImageView類負(fù)責(zé)獲取SD卡上的圖片實(shí)例,將其顯示在正確的位置,并通過定時(shí)器2實(shí)現(xiàn)圖片的切換。PlayerWidget類負(fù)責(zé)啟動(dòng)MPlayer,并控制視頻顯示到正確的位置。

溫度時(shí)間顯示區(qū)域是在TimeView類和temperatureView類中實(shí)現(xiàn)。TimeView類的成員函數(shù)getCurrentTime()通過調(diào)用動(dòng)態(tài)鏈接庫的C函數(shù)getpcf8563Time(pcf8563_time *pTime)來讀取掛在I2C總線上的時(shí)鐘芯片的時(shí)鐘信息,并將其顯示在正確的區(qū)域上。

temperatureView類主要用于顯示溫度數(shù)據(jù),而真正獲取溫度數(shù)據(jù)的過程是在TemperatureHandler類中實(shí)現(xiàn)的。開辟一個(gè)新的線程,通過定時(shí)器3每隔500 ms在槽函數(shù)readData()中調(diào)用一次動(dòng)態(tài)鏈接庫的C函數(shù)therm_ds18b20(long *date)來讀取溫度傳感器的數(shù)據(jù)。

temperatureThread=new QThread(this); //開辟新線程

connect(temptimer,SIGNAL(timeout()),this,SLOT(readData())); //讀取溫度

4 系統(tǒng)調(diào)試結(jié)果

根據(jù)模擬的NICE3000通信協(xié)議、外圍部件的操作及Qt5的圖形界面編程,實(shí)現(xiàn)了電梯彩屏顯示系統(tǒng),其硬件設(shè)備圖和調(diào)試結(jié)果圖如圖5、圖6所示。

圖 5 硬件設(shè)備圖

圖6 調(diào)試結(jié)果

結(jié) 語

本文對基于Raspberry Pi并利用Qt5編程來實(shí)現(xiàn)的電梯彩屏顯示系統(tǒng)進(jìn)行了闡述。首先介紹了整個(gè)系統(tǒng)的構(gòu)架;接著在接口轉(zhuǎn)接板子系統(tǒng)中介紹了NICE3000通信協(xié)議,并對其進(jìn)行解析;然后在顯示板子系統(tǒng)中介紹了外圍部件的操作,以讀取實(shí)時(shí)時(shí)鐘芯片的數(shù)據(jù)為例;

[1] 楊漢祥,鐘惠芳,邱志城. LED顯示屏的應(yīng)用——電梯屏[J]. 贛南師范學(xué)院學(xué)報(bào),2003(6).

[2] Broadcom.BCM2835 Media Processor,2011.

[3] 陳鯤,陳云秋,劉信新. 基于Qt/Embedded的嵌入式Linux應(yīng)用程序的設(shè)計(jì)[J]. 計(jì)算機(jī)與數(shù)字工程,2009(1).

[4] 王浩南, 劉益成. 基于嵌入式Linux系統(tǒng)下的Qt開發(fā)[J]. 電腦開發(fā)與應(yīng)用,2010(1).

[5] Silicon.Raspberry Pi Cheat Sheet,2012.

[6] 張先淼, 劉新偉,金天均,等. 高可靠電梯通信系統(tǒng)的研究[J]. 機(jī)電工程,2007(10).

[7] 許曉榮,章堅(jiān)武. 嵌入式Linux下LCD界面應(yīng)用程序開發(fā)[J]. 液晶與顯示,2006,21(3).

[8] 邱曉明. 嵌入式多媒體電梯信息顯示系統(tǒng)設(shè)計(jì)[D].上海:上海交通大學(xué),2009.

Elevator Colorful Display System Based on Raspberry Pi

Lai Jiang, Li Yingxiang, He Qi, Su Kai

(School of Communication Engineering,Chengdu University of Information Technology,Chengdu 610225,China)

Aiming at the problem of multimedia color display of elevator, under the support of ARM core platform Raspberry Piand microcontroller interface board, the design proposes and implementes a dual-processor architecture color display system which uses 485/CAN bus transmission technology, Linux application programming and Qt5 user interface programming. Compared with traditional display system, the color display system interface is more beautiful, more feature-rich and has a low cost, high stability and other characteristics. The actual test results show that this elevator color display system is feasible and effective.

elevator; dual-processor architecture; Qt5; Raspberry Pi

省部級—四川省教育廳項(xiàng)目(11ZA113)。

TN91

A

迪娜

2013-12-20)

猜你喜歡
電梯信息系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
被困電梯以后
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
電梯不吃人
乘電梯
小說月刊(2015年4期)2015-04-18 13:55:18
展會(huì)信息
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 亚洲AⅤ无码日韩AV无码网站| 久久毛片免费基地| 先锋资源久久| 久久香蕉国产线| 91麻豆久久久| 天天色综合4| 日韩最新中文字幕| 99精品在线看| 日韩毛片免费观看| 97人妻精品专区久久久久| 日本道综合一本久久久88| 在线观看91精品国产剧情免费| 欧美a在线看| 欧美成人免费午夜全| 日韩福利在线视频| 亚洲成a人片77777在线播放| 久久五月视频| 免费看av在线网站网址| 国产第二十一页| 无码AV动漫| 亚洲成人高清在线观看| 色悠久久久久久久综合网伊人| 亚洲视频欧美不卡| 欧美日本二区| 精品欧美视频| 久久一本日韩精品中文字幕屁孩| 国产高清色视频免费看的网址| 91福利一区二区三区| www.精品国产| 91精品人妻互换| 精品视频在线一区| 国产精品久久久久久久久久98| 欧美国产精品拍自| 日本一区二区三区精品国产| 国产乱子精品一区二区在线观看| 青草视频久久| 超碰aⅴ人人做人人爽欧美 | 国产成人AV大片大片在线播放 | 欧美高清视频一区二区三区| 久久a级片| 国产欧美在线观看视频| 亚洲成人网在线观看| 不卡的在线视频免费观看| 亚洲天堂精品在线观看| 无码国产伊人| 国产欧美日韩视频怡春院| 国产成在线观看免费视频| v天堂中文在线| 国产噜噜在线视频观看| 在线观看免费国产| 人妻精品全国免费视频| 黄色污网站在线观看| 九九热精品视频在线| 最新国产精品第1页| 一级福利视频| 2018日日摸夜夜添狠狠躁| 99视频只有精品| аⅴ资源中文在线天堂| 久久五月视频| av在线手机播放| 亚洲激情99| 日韩欧美中文字幕一本| 国产不卡一级毛片视频| 欧美国产视频| 欧美激情成人网| 亚洲三级色| 九色在线视频导航91| 国产美女在线免费观看| 日韩欧美高清视频| 久久精品娱乐亚洲领先| 亚洲天堂视频在线播放| 中文字幕亚洲乱码熟女1区2区| 欧美在线视频不卡第一页| 东京热高清无码精品| 久久久久国产一级毛片高清板| 国产a网站| 国产JIZzJIzz视频全部免费| 精品三级网站| 国产性生交xxxxx免费| 色综合天天娱乐综合网| 熟女日韩精品2区| 国产91色|