linux嵌入式做智能家居,嵌入式系統在智能家居中的應用

汪家樂

利用嵌入式系統來構建智能家居系統,使得用戶可以根據實際需求來進行操作,不僅可以提高生活水平,并且與其他系統相比,其在運行上具有更高的穩定性。本文對嵌入式系統在智能家居中應用要點進行了簡單分析。

【關鍵詞】嵌入式系統 智能家居 系統構建

智能家居系統逐漸被廣泛的應用到實際生活中,其具有建筑、網絡、設備自動化為一體特點,營造健康、舒適、安全居住環境,對提高生活質量具有重要意義。以嵌入式ARM體系結構為開發平臺,結合linux操作系統,構建一個功能完善的智能家居系統,切實滿足實際生活需求。

1 嵌入式系統特點分析

嵌入式系統結合了軟件系統與硬件系統,將計算機技術作為基礎,確定各項應用功能為系統核心,根據實際需求,來對軟硬件進行剪裁設計,保證其體積、能耗、功能以及運行等各方面均可以達到設計標準,完全滿足應用需求的計算機系統。嵌入式系統體系結構主要包括基礎硬件設備、嵌入式操作系統以及應用軟件三部分。其中,硬件設備包括存儲器、嵌入式微處理器、輸入/輸出接口以及通用設備接口,且嵌入式微處理器為整個硬件系統的核心,要求其具有穩定性與高效性。而操作系統需要支持嵌入式系統應用軟件運行,包括與硬件關聯的底層驅動軟件、通信協議、系統內核、標準化瀏覽器等,主要對整個系統資源進行分配、調度、控制。

2 嵌入式系統在智能家居系統中應用要點

2.1 系統控制平臺設計

2.1.1 PC機

確定PC機為主控制器,可以有效連接整個智能家居系統內所有設備和局域網,可通過管理軟件,對系統內所有設備進行管理。對比其方式可以大大縮短開發周期,且開發難度低,但是運行功耗大。

2.1.2 嵌入式微處理器

與普通計算機相比,其去除了微處理器內冗余部分,僅保留與嵌入式系統關聯密功能部分,并且可以與GPRS通信接口、通用串行端口、GSM通信接口、TCP/IP通信單元以及藍牙模塊接口等進行有效連接,將各項元件單元與嵌入式微處理器一起設置在同一芯片上,縮小處理器體積的同時,還可以降低運行功能,降低了開發成本。

2.2 硬件系統設計要點

2.2.1 藍牙模塊

此模塊為集成藍牙功能的芯片,包括藍牙數據模塊與藍牙語音模塊。可應用BlueCore4-Flash系列藍牙芯片為基礎的藍牙適配器,具體為BTS4504C1H型號的標準RS232串口藍牙適配器,可支持藍牙2.1規范,并設置有外置天線,100m有效通信,以及標準RS232無限制模式接口。

2.2.2 藍牙協議棧

BlueCore4-Flash提供的藍牙協議棧固件在RISC微控制器上運行,符合藍牙1.1規范,軟件內部結構使RISC微控制器與和主機處理器應用不同方法來承擔藍牙技術處理過程產生的支出,其中上層協議棧可以在芯片以及主機處理器上運行。選擇BlueCore HCI藍牙協議棧,其在運行時內部處理器執行藍牙協議棧到主機控制器接口,并且由主機處理器來提供全部上層協議棧。對于HCI藍牙協議棧,包括基帶層、主機控制接口和鏈路管理層三部分,還具有標準的USB1.1與UART HCI傳輸層,最大可以支持7個從設備工作。

2.2.3 ARM硬件

(1)核心處理器芯片。應用linux系統為嵌入式操作系統,對智能家居系統內各功能進行調度和控制,同時還要兼顧分析微處理器片內存儲器容量以及芯片外圍電路擴展因素限制,最終確定應用S3C2440A芯片,開發板在選擇應用FL2440。

(2)嵌入式開發板。FL2440開發板為核心板加底板組合形式,其中核心板共六層,底板兩層,在實際運行中具有較高的可靠性,可以穩定運行在400MHz時鐘頻率上,并且還具有豐富的接口,具有強大的操作功能,可以適用于各種手持設備、消費類電子設備等開發。

2.3 軟件系統設計要點

2.3.1 交叉編譯環境

本系統運行程序平臺為嵌入式S3C2440開發板,存儲空間和運算能力較低,無法在ARM平臺上完成編譯,便需要建立交叉編譯環境。即在普通PC機上成功編譯程序后,利用串口或USB將編譯好的程序加載到ARM板子內,進而實現程序所具有的功能。

2.3.2 Linux內核移植

主要分為內核配置、建立依賴關系、建立內核、下載到開發板,以及制作文件系統和下載文件系統幾個步驟。

2.3.3 Web服務器移植

主要包括源碼解壓、建立makefile文件、修改makefile文件、得到boa可執行文件、完成boa配置等階段,最后在主機linux瀏覽器內輸入開發板IP地址,假如可以正確訪問到索引頁面,則證明Web服務器移植成功。

3 結束語

智能家居系統的構建與應用,對改善生活水平具有重要意義。將嵌入式系統應用到智能家居中,需要基于嵌入式技術特點進行分析,根據智能家居系統實際功能要求,對硬件和軟件系統進行優化設計,確保可以滿足應用要求。

參考文獻

[1]吳禹星.嵌入式系統在智能家居中的應用[J].信息與電腦(理論版),2015(09):60-61.

[2]明航.智能家居中嵌入式系統的應用[D].武漢:湖北大學,2013.

作者單位

湖北工程學院 湖北省孝感市 432100

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/538814.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/538814.shtml
英文地址,請注明出處:http://en.pswp.cn/news/538814.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

前端路由的兩種實現原理

2019獨角獸企業重金招聘Python工程師標準>>> History API 這里不細說每一個 API 的用法,大家可以看 MDN 的文檔:https://developer.mozilla.org... 重點說其中的兩個新增的API history.pushState 和 history.replaceState 這兩個 API 都接收三…

2.JAVA簡史

SUN公司 --美國SUN(Stanford university network)公司 --在中國大陸的正式中文名:太陽計算機系統(中國)有限公司 --在中國臺灣中文名:升陽電腦公司 JAVA為什么被發明? --是sun公司Green項目…

es統計有多少個分組_ES 24 - 如何通過Elasticsearch進行聚合檢索 (分組統計)

1 普通聚合分析1.1 直接聚合統計(1) 計算每個tag下的文檔數量, 請求語法:GET book_shop/it_book/_search{"size": 0, // 不顯示命中(hits)的所有文檔信息"aggs": {"group_by_tags": {// 聚合結果的名稱, 需要自定義(復制時請去掉此注釋)"te…

python程序運行原理_談談 Python 程序的運行原理

因為我的個人網站 restran.net 已經啟用,博客園的內容已經不再更新。請訪問我的個人網站獲取這篇文章的最新內容,談談 Python 程序的運行原理 這篇文章準確說是『Python 源碼剖析』的讀書筆記,整理完之后才發現很長,那就將就看吧。…

3.JDK和JRE和JVM的區別

JDK --Java Development Kit --java 開發工具包 JRE --Java Runtime Environment --java運行時環境 JVM --Java Virtual Machine --java虛擬機 ------------- 更多的Java,Angular,Android,大數據,J2EE,Python…

緩存cache

由于Django是動態網站,所有每次請求均會去數據進行相應的操作,當程序訪問量大時,耗時必然會更加明顯,最簡單解決方式是使用:緩存,緩存將一個某個views的返回值保存至內存或者memcache中,5分鐘內…

微信小程序 等待幾秒、_微信小程序—setTimeout定時器的坑

背景實驗室需要將項目的app搬到微信的小程序上,終于知道為什么程序員是手藝人了,只要有需求,就要想方設法去填充這種需求,去年是小程序的元年了可以說,去年冬天一個叫跳一跳的小程序游戲出現在我的微信中,當…

linux中斷處理模式,Linux在保護模式下的中斷處理分析.pdf

Linux在保護模式下的中斷處理分析.pdfLinux 在保護模式下的中斷處理分析劉萬里 楊 斌(西南交通大學計算機與通信工程學院,成都 610031)E-mail:awan摘 要 該文以 80x86 保護模式下的中斷處理方法為基礎,針對 Linux 在實時嵌入式系統中的具體應…

python3.7是什么_Python 3.7 有什么新變化

idlelib 與 IDLE 多個對自動補全的修正。 (由 Louie Lu 在 bpo-15786 中貢獻。) Module Browser (在 File 菜單中,之前稱為 Class Browser) 現在會在最高層級函數和類之外顯示嵌套的函數和類。 (由 Guilherme Polo, Cheryl Sabell…

4.JVM簡述

JVM是一種規范。 就是一個虛擬的用于執行bytecodes字節碼的計算機 可以用軟件來實現,如IBM,SUN,BEA等按照這個規范實現,可以實現比SUN公司更好的JVM,我們自己也可以實現一個。 可以使用硬件來實現,如sun與intel公司研發java的芯…

python ssh shell交互_使用Paramiko在Python上用ssh實現交互式shell?

我想編寫一個程序(在Windows 7上的Python 3.x中),它通過ssh在遠程shell上執行多個命令.在查看paramikos的exec_command()函數之后,我意識到它不適合我的用例(因為在執行命令后通道被關閉),因為命令依賴于環境變量(由先前的命令設置)并且不能連接到一個exec_command()調用,因為它…

linux7如何進入緊急模式,CentOS7開機進入緊急模式EmergencyMode的解決辦法

iOS Runtime學習筆記Associated Objects: interface NSObject (AssociatedObject) property (nonatomic, strong) id associat ...Vim,極簡使用教程,讓你瞬間脫離鍵鼠切換的痛苦注:看大家對Vim仇恨極大,其實它只是一種文本操作方式,可以減少鍵鼠的切換,從…

用pycharm寫python_如何利用pyCharm編寫和運行python文件

在安裝python環境后,通常可以利用IDE pyCharm來編譯我們的python文件。創建一個python文件夾,用pyCharm打開文件夾,在文件夾中新建一個python文件demo.py 也許你知道用cmd中的python指令 python demo.py去運行這個文件,但是如何在…

5.JDK環境配置

下載 進入Oracle官網下載,點擊進入 安裝 一路下一步。記住安裝到哪里了。 配置環境變量 JAVA_HOME 剛才的java安裝目錄 PATH %JAVA_HOME%\bin PATH里配置多個用英文的分號; 分隔。 *classpath,jdk5.0以上可以不用配置了 測試 windows下&#xf…

GBK 編碼

GBK編碼范圍:8140-FEFE,漢字編碼范圍見第二節:碼位分配及順序。 GBK編碼,是對GB2312編碼的擴展,因此完全兼容GB2312-80標準。GBK編碼依然采用雙字節編碼方案,其編碼范圍:8140&#x…

less webpack 熱更新_webpack---less+熱更新 使用

最近嘗試用less寫界面,webpack進行打包,然后發現每次修改less時都需要重新執行webpack打包一下,于是就想到了webpack熱更新這個功能。一、使用lessless是一門css預處理語言,它是拓展了css,增加了變量,Mixin等等。使用l…

6.第一個程序Hello World

新建文件夾 在C盤新建個文件夾 mycode。注意不要用中文。 新建java文件 1、顯示隱藏文件名。 2、右鍵新建文本文件 3、重命名為 Welcome.java。(首字母必須大寫。如果不顯示隱藏文件名,會是Welcome.java.txt不是java文件) 4、編寫代碼 p…

pythonstdin_python 筆試輸入:sys.stdin.readline和input

①:輸入一行數據并輸 出兩種方法 # 輸入一行數據并輸出 import sys # 方法一: str1 input() print(input 輸入:,str1,len,len(str1)) print(循環遍歷輸入得到輸入的每個字符的ascii碼如下:) for i in str1: print(ord(i)) # 方法二&#xff…

c語言字符串二維數組的動態分配應,C語言中動態分配二維數組復習過程.doc

C語言中動態分配二維數組復習過程.docC語言中動態分配二維數組在C中動態分配內存的,對于單個變量,字符串,一維數組等,都是很容易的。C中動態分配二維數組的方法,很少有C語言書中描述,我查找了有的C語言書中…

7.Java常用開發工具

文本編輯器 任意選一款 UltraEdit EditPlus notepad 集成開發環境 IDE:Integrated Development Environment --JBulider (基本淘汰) --Eclipse 普遍使用。https://www.eclipse.org/downloads/ --NetBeans ------------- 更多的Java&a…