跳轉到內容

嵌入式控制系統設計/家庭和樓宇自動化

來自華夏公益教科書,開放的世界,開放的書籍

本章討論了嵌入式控制系統在家庭和樓宇自動化系統中的應用,有時被稱為智慧家居和智慧建築。本章首先簡要介紹家庭自動化系統及其元件,然後分析嵌入式系統在智慧家居中的演變。

家庭自動化是建築自動化的一個分支,只是規模更小,複雜程度(通常)也更低。兩種型別的系統都試圖滿足私人住宅和建築物的特定自動化需求,從而提高使用者的舒適度和安全性,並改善整體能源效率。並非所有家庭自動化系統都具備這些特性,更簡單的(更便宜的)系統只關注舒適度或安全性。

家庭自動化系統的出現源於對例如行動不便的老人、殘疾人等住戶家庭中自動化流程的需求。建築自動化系統則起源於這樣一個簡單的事實:將許多系統遠端集中控制比四處奔走,手動控制每個系統更容易。(暖通空調和冷熱水的系統就是一個例子)

隨著電子產品變得更加實惠並在人們的家中普及,人們對電子舒適度的渴望與日俱增。因此,智慧家居市場正在蓬勃發展。

家庭和樓宇自動化系統能夠執行大量任務。如今,這種自動化系統能夠執行的任務幾乎沒有限制。只要任務本身可以透過現有的機械/電子系統執行,唯一的限制就是客戶的預算。

家庭自動化系統的一些應用包括但不限於

  • 照明控制
  • 暖通空調控制
  • 門、窗、窗簾、大門等的控制
  • 訪問和控制安全系統
  • 訪問和控制多媒體系統、家庭娛樂系統

由於本文討論的是家庭和樓宇自動化系統中的嵌入式控制系統,因此無需準確地描述此類自動化系統能夠完成的任務。更多資訊請參見:家庭自動化和樓宇自動化。

元件功能

[編輯 | 編輯原始碼]

家庭自動化系統通常由多個元件組成,這些元件都是完整系統的一部分。每個元件都可以執行一個功能,一些元件是多功能的。

大多陣列件功能可以分為 3 類

  • 輸入
  • 輸出
  • 控制

一些元件可以用於輸入、輸出和控制。例如,一個多媒體終端可以用於

  • 輸入(使用鍵盤、開關等)
  • 輸出(顯示器、揚聲器等)
  • 控制(控制其他元件,例如調暗燈光、關閉窗簾等)。

在家庭自動化早期,一個系統可能只是一個帶有定時器和一些邏輯模組的中央開關盒,整個房子佈滿了開關作為輸入,繼電器/執行器作為輸出。

在編寫本文時,沒有簡單的方法可以將自動化系統的元件分類為輸入/輸出/控制,因為大多陣列件都包含這三種功能。本文後面將以此為基礎,分析家庭自動化系統的演變。

輸入功能

[編輯 | 編輯原始碼]

輸入功能主要由稱為感測器的元件執行。感測器可以是任何東西,從簡單的開/關開關到電容式接近開關,再到複雜的音訊/影片識別系統。

一些感測器的例子

  • 開關
  • 運動感測器
  • 溼度/壓力感測器
  • 光感測器(光電二極體、光敏電阻)
  • 溫度感測器(熱敏電阻、熱電偶、電阻溫度計、恆溫器)
  • 影片/音訊採集感測器(攝像機、麥克風)
  • 煙霧探測器
  • 流量感測器
    • 流體(流量計、質量流量計)
    • 電錶

許多更復雜的感測器需要一些電子裝置來調節感測器訊號,並將其轉換為適合家庭自動化系統的訊號。

輸出功能

[編輯 | 編輯原始碼]

輸出功能主要由稱為執行器的元件執行。執行器使用來自自動化系統的訊號來改變受控環境中物體的狀態(例如,將交流電源切換到為燈泡供電的電路,移動物體)。

一些執行器的例子

為了讓執行器在自動化系統中發揮作用,它通常需要配備額外的機械/電氣系統。例如,步進電機本身沒什麼用,除非它連線到某個東西上,比如流體控制閥。因此,輸出功能是由基本執行器與一些附加系統結合執行的。

控制功能

[編輯 | 編輯原始碼]

控制功能與輸入/輸出功能有所不同,因為它們的功能本身並不那麼容易描述。控制功能可以是許多事情,包括但不限於

  • 在定時器達到某個狀態後設置輸出
  • 在輸入的邏輯組合發生後設置輸出
  • 在輸入發生後設置多個輸出
  • 在輸入發生時聯絡外部服務(煙霧報警器/安全漏洞)

控制功能由控制單元執行,但由於系統存在多種形式,並且家庭自動化系統隨著時間的推移而不斷變化,因此很難描述執行這些控制功能的系統。執行控制功能的系統可以像幾個邏輯閘一樣簡單,也可以像一個完整的計算機主機一樣複雜。

顯然,所有這些元件之間都需要一個通訊系統。自從家庭和樓宇自動化系統誕生以來,出現了大量的標準。

在智慧家居系統發展初期,通訊主要依靠簡單的銅線。當時對資料速度和抗干擾性沒有太高的要求。然而,在本文撰寫之時,智慧家居系統中的通訊方式已經有了更多可能性。

例如

所有這些通訊方式都有其自身的特點,詳細討論不在本文的範圍之內。有關哪種標準使用哪種通訊方法的詳細資訊,請參考維基百科關於智慧家居的頁面。

智慧家居/樓宇自動化系統中的嵌入式控制系統

[edit | edit source]

設計特點

[edit | edit source]

首先,簡要列出嵌入式控制系統設計特點及其在當前智慧家居/樓宇自動化系統中的應用。設計工程師在設計這類自動化系統時需要牢記這些特點。


高重要性特點:

  • 專注的功能:智慧家居/樓宇自動化系統通常具有一組固定的功能,其設計針對這組特定功能進行最佳化。例如,一組功能可以包括提高使用者舒適度和安全性,同時節約能源。
  • 啟動時間:智慧家居系統應該始終處於工作狀態。計時器一直在執行,燈光需要立即開啟/關閉等等。
  • 安全故障模式:智慧家居系統可能會發生故障,但應該在緊急狀態(如電壓尖峰、電源中斷、元件損壞)下提供安全故障措施。當智慧家居系統發生故障時,應該將控制權交還給房屋使用者,例如不要關閉房屋並關閉所有燈光。
  • 通訊:由於大多數最新的智慧家居/樓宇自動化系統由大量子系統組成,因此這些子系統之間存在固有的通訊需求。
  • 能耗:低能耗是必要的,因為更新的節能型智慧家居系統努力降低房屋的能耗(例如,透過在夜間計劃耗能任務或及時關閉窗簾以節省取暖燃料)。
  • 系統適應性:
    • 由於房屋/建築的獨特性,大多數最新的自動化系統需要定製安裝和設定。因此,安裝人員應該能夠為當前配置選擇必要的元件,將它們組合成一個工作系統,並根據他/她或終端使用者的意願進行設定。
    • 大多數最新的自動化系統能夠在更高的抽象級別上工作(見本文後面)。因此,使用者應該能夠調整這樣的自動化系統,設定他/她的“情緒設定”、“房間配置”、“顏色喜好”、“語音識別”等,而無需安裝人員/客戶服務人員的幫助。


中等重要性特點:

  • 空間限制:理想的智慧家居/樓宇自動化系統在它控制的房屋/建築中不佔用任何空間,除了輸入/輸出之外,它應該是不可見的。
  • 使用壽命長:智慧家居系統必須儘可能長時間地處於工作狀態,因為更換它的成本高於更換簡單電器的成本(例如,為了插入新電纜而破壞牆壁,與更換咖啡機相比)。
  • 成本:隨著價格上漲(包括取暖油、建築材料等),成本變得越來越重要。因此,低成本智慧家居系統更具吸引力。在高階方面,成本並不那麼重要,因為高階智慧家居系統是為該客戶半定製建造的,而且通常非常昂貴。
  • 溫度和溼度:用於室外使用的感測器或執行器可能會受到高溫(陽光)或高溼度(雨水)的影響。對於用於室外的元件以及用於浴室/游泳池/桑拿/……的元件,必須進行防溫度和溼度保護。
  • 衝擊和振動:自動化系統的元件必須能夠承受使用者濫用等因素帶來的輕微衝擊和振動,但大多陣列件沒有針對長時間暴露於衝擊/振動進行保護。
  • EMC:智慧家居/樓宇自動化中的嵌入式系統不應受到環境中其他裝置的干擾(也不應干擾自身)。
  • 遠端維護:由於智慧家居/樓宇自動化系統中的越來越多的元件使用混合軟體/硬體設定,因此需要能夠遠端監控每個元件並升級其軟體部分。
  • 卓越的質量:大多數使用者期望他們的智慧家居系統始終正常工作,沒有錯誤或故障。由於如今智慧家居元件的很大一部分是由最新的電子裝置與控制電子裝置的軟體相結合,因此對完美質量的期望並不像可能的那樣高。然而,對於高階自動化系統,成本與質量預期之間存在相關性,因此構建質量更加重要。
  • 看門狗:在發生故障的情況下,系統需要重置自身,以便使用者無需進行任何操作。

我們在嵌入式控制系統設計/設計模式#看門狗定時器中更詳細地討論看門狗。

低重要性特點:

  • 透過冗餘提高可靠性:一些應用領域要求對硬體或軟體元件故障具有 100% 的魯棒性,這需要這些元件多次提供。然而,智慧家居/樓宇自動化系統並非如此。這樣做會消除低成本的特點。
  • 空間硬化:不適用於智慧家居/樓宇自動化系統(目前還沒有智慧家居/樓宇自動化系統進入太空)。

系統複雜性

[edit | edit source]

由於智慧家居/樓宇自動化系統已經經歷了巨大的發展,因此這些系統中使用的技術也隨之發展。

智慧家居/樓宇自動化系統已經跨越了幾十年,可用的技術隨著時間的推移而發展。由於所用技術的不斷變化,對智慧家居/樓宇自動化系統進行一般性分類非常困難。

因此,有必要對這些系統在其發展過程中的演變進行分析。總的來說,這些自動化系統可以歸為以下三類之一。

  • 類別 1:集中式硬體 – 集中式軟體
  • 類別 2:分散式硬體 – 集中式軟體
  • 類別 3:分散式硬體 – 分散式軟體

可以看出,智慧家居/樓宇自動化系統的發展趨勢是,它們在其生命週期中從類別 1 發展到類別 3。

有關這些類別的更一般資訊,請參見系統複雜性類別部分。

類別 1:集中式硬體 – 集中式軟體

[edit | edit source]

示意性描述集中式/集中式特徵的圖片

第一類也是在智慧家居/樓宇自動化系統早期最常出現的一類。由於當時可用的技術(半導體時代的開始),採用集中式硬體/軟體設定似乎是合乎邏輯的。這包括 1 個機架或機器,它包含系統中幾乎所有必要的硬體和(如果適用)軟體部分。

如果提供例如開關作為輸入,繼電器作為輸出,那麼一個簡單的開關盒加上一些定時器和邏輯電路就足夠了。後來,當 PLC 開始流行時,系統變得稍微複雜了一些,但仍然是集中式的型別。

優缺點
[edit | edit source]
  • 這種型別系統的優點是,系統中沒有複雜的硬體/軟體(不需要作業系統),使系統設計、實施和維護變得簡單直觀。
  • 然而,一個缺點是,從中央機器到中央機器的佈線非常複雜。當輸入和輸出的數量增加時,電纜的數量也會增加。對於較大的建築物,電纜的長度(因此成本)會成為選擇另一種系統複雜性的一個理由。
  • 另一個缺點是,使用這種系統時缺乏靈活性。例如,當使用 PLC 時,需要編寫靈活的程式,或者需要在每次硬體更新時調整軟體程式碼。為每個額外的輸入/輸出安裝新的電纜也不太靈活,這使得這種型別的系統更適合在建造或升級房屋/建築物時安裝,而不適合在房屋/建築物已經建成並完工時安裝。
抽象級別
[edit | edit source]

這種系統的使用者抽象級別比較低。這意味著對於最簡單的系統,使用者直接透過一個輸入或輸入的邏輯組合控制輸出,而更復雜的系統則使用多個輸入和定時器來設定輸出。例如,使用者可以開啟或關閉照明區域,將房屋設定為夜間模式(拉上窗簾,關閉所有燈光,除了門口外的燈光,…)。

在抽象級別更高的系統中,使用者可以,例如,將客廳切換到“浪漫模式”或“電影模式”。這些抽象很難在更簡單的類別 1 系統(因為它們相當不靈活)上程式設計,隨著系統複雜性的提高,實現更高抽象級別的任務變得更容易。

通訊
[edit | edit source]

這種系統主要使用標準電線(輸入為低壓,輸出為低壓/高壓)。由於系統不同元件之間沒有通訊,除了用於輸入/輸出的電壓差,因此不需要特定的通訊協議。

類別 2:分散式硬體 - 集中式軟體

[edit | edit source]

示意性描述分散式/集中式特徵的圖片

第二類包括今天大多數中低端家庭/建築自動化系統和早期的高端系統。

它們由一箇中央控制器(主要是嵌入式處理器或 PC 型控制器)組成,該控制器在作業系統(特定或通用,取決於實現)上執行特定軟體。然後,該中央控制器連線到現場匯流排或匯流排,這些匯流排將其連線到其硬體外設。

硬體外設也可以具有嵌入式處理器,但它們不執行作業系統。軟體只能在中央控制器上找到,它使用現場匯流排與外設通訊並收集輸入/設定輸出。

優點/缺點
[edit | edit source]
  • 這種系統的一大優勢是它的軟體靈活性。中央控制器可以輕鬆地重新程式設計以適應其他設定、新的外設新增、系統升級等。由於軟體只駐留在中央控制器上,因此只需要更新中央控制器。
  • 系統複雜性略高這一事實可能是優點也可能是缺點,這取決於環境(開發人員的經驗、人力、開發預算等)。當經驗和預算(時間和財務方面)允許時,這種更高的系統複雜性可以實現更多樣化的功能、更高的抽象級別和更高的靈活性。當經驗和預算不足以完成工作時,更高的複雜性可能會成為開發過程中的一個很大的時間消耗者。簡而言之,與類別 1 系統相比,這種系統的設計和實現需要更多的人力、經驗和預算。
  • 一個優點是可以用更短、更簡單的佈線。每個房間的輸入/輸出可以路由到一個房間介面模組,該模組連線到現場匯流排。然後,只有現場匯流排連線介面模組和中央控制器。這節省了一些安裝麻煩,並且如果介面模組允許擴充套件,它還可以簡化房間的輸入/輸出的擴充套件。
  • 與類別 1 系統相比,另一個優點是硬體靈活性。只要新新增/升級的硬體外設與現場匯流排協議相容,就不需要進行廣泛的硬體更改。只需要更新軟體。
  • 這種系統的一個缺點是它繫結到特定的現場匯流排,這意味著仍然有一根電纜穿過房屋/建築物。這損害了不同製造商、不同現場匯流排代之間等的互操作性。

硬體外設並不十分複雜,它們只包含硬體層,不涉及軟體。這對硬體外設的健壯性有利,但損害了系統的靈活性。

抽象級別
[edit | edit source]

與類別 1 系統相比,可以實現更高的抽象級別。它更容易在功能更強大的中央控制器上實現,但軟體仍然非常特定於問題,並且需要將“抽象級別”程式設計到軟體中。這不會為這些“抽象級別”提供使用者友好的輸入,因為使用者需要手動更新中央控制器的軟體才能實現它們。

在類別 3 的系統中,如果實現,使用者可以在整個房屋的使用者介面中設定他或她自己的“抽象級別”,而無需干預中央控制器的軟體。對於類別 2 系統(嚴格意義上)來說,這是不可能的,因為中央控制器和硬體外設之間沒有雙向通訊。

通訊
[edit | edit source]

為了在家庭/建築自動化系統中使用,已經開發了許多現場匯流排,包括例如 Batibus。列出所有用於這些系統的現場匯流排並對其進行描述超出了本文件的範圍。

此外,在這裡列出家庭自動化標準也不正確,因為大多數這些標準使用多種通訊方式,混合了類別 2 和 3 的通訊方法。

類別 3:分散式硬體 - 分散式軟體

[edit | edit source]

示意性描述分散式/分散式特徵的圖片

第三類系統見於最新的家庭/建築自動化系統和一些最昂貴的老式系統。在這裡,一個完整的家庭/建築自動化系統由多個類別 1 或 2 的子系統組成,它們使用軟體和通訊層連線在一起。這些子系統之間的通訊可以透過許多不同的網路技術(RF、無線、光學等)進行。

雖然類別 1 或 2 的系統是同步的,但大多數類別 3 系統以非同步方式工作,因為每個子系統都有自己的控制器(有或沒有作業系統)。

例如:房屋中的每個房間都是類別 2 的子系統,控制照明、窗簾、多媒體內容、溫度等。每個房間都有自己的控制器,用於設定輸入或輸出音樂/影片/安全資訊/…每個房間由房間的控制器控制,而有一些控制器可以控制房間的控制器。

例如,當去度假時,每個房間都必須關閉電源以儘可能節省能源,但每晚在一個隨機房間開一盞燈以給人一種有人在家的印象可能很方便。然後,房間的控制器必須具有一些優先順序方案來決定監聽哪個命令。

優點/缺點
[edit | edit source]
  • 這種系統的一個缺點是整個系統的複雜性很高,需要大量的人力、經驗和預算來開發和實施這樣的系統。這包括協議相容性、子系統軟體和硬體相容性、多種產品使用不同軟體來實現不同的功能等。
  • 一個優點是可用的通訊方法眾多,並且可以在整個系統中混合使用它們,這使得系統在安裝完成後的各種安裝型別和更新方面非常靈活。
  • 一個優點是更新軟體的靈活性,因為可以逐個子系統地更新,而無需關閉整個系統。
  • 另一個優點是整個系統的可靠性。如果一個房間的控制器出現故障,那麼只有那個房間無法控制(如果它不能從下一個房間或中央控制器控制)。如果一個房間中有 2 個控制器,其中一個出現故障,那麼該房間仍然可以透過另一個控制器進行功能訪問。
  • 由於在更高抽象級別上廣泛嵌入軟體和控制器,因此係統可以高度“定製”以滿足使用者的需求,這也算是一個優點。
抽象級別
[edit | edit source]

類別 3 的系統由於其強大的處理能力和廣泛的軟體靈活性,可以實現最高程度的抽象。 硬體更像是通用型別,而軟體彌補了不同元件的功能。

家庭自動化系統的抽象級別介面圖片

一個高度使用者友好的介面,可以控制不同的抽象層,極大地幫助使用者實現他或她定製的“抽象級別”。 如果使用者喜歡在浪漫的夜晚播放柔和的爵士音樂,調暗燈光,拉上窗簾,點燃壁爐等,他可以程式設計一個“浪漫”抽象程式,當呼叫該程式時,它會拉上窗簾,關閉電視,播放一些柔和的爵士音樂,調暗燈光並點燃壁爐。

這種型別的系統非常適合高階自動化控制,但也意味著軟體必須比類別 2 和 1 更靈活和健壯。 由於使用者與這種型別的系統相比,使用者將與更簡單的系統進行更多互動,因此情況不會更好。

這些系統使用多種不同的通訊技術,包括雙絞線、電線、無線電頻率、同軸電纜、光纖……

本文件不涵蓋這些不同通訊技術的概述以及哪個標準使用哪種技術,但可以在其各自的維基百科頁面或通用 家庭自動化頁面上找到有關這些資訊。

[編輯 | 編輯原始碼]
華夏公益教科書