1. 程式人生 > >DIY個人智慧家庭閘道器—— 前言

DIY個人智慧家庭閘道器—— 前言

        我是電子DIY愛好者,也是一名程式設計師,平時業餘生活比較枯燥,閒暇之餘喜歡搗鼓一些東西玩玩,從硬體設計、驅動開發到手機客戶端開發,都有做過,不過只是些皮毛,沒有很深入的鑽研,所以做出來的東西純粹是玩一玩而已,我現在就是想把在做的東西整理一下放到部落格裡面,看看有沒有志同道合的愛好者感興趣,然後一起做點東西來玩一玩。


我最早的想法是圍繞著家庭裝置的遠端/自動控制來做點東西,其實就是智慧家居的範疇了,最開始計劃選一個合適的硬體平臺做成家庭主機,按現在的叫法就是家庭閘道器,比如小米智慧家居套件裡面的閘道器,有了閘道器作為控制中心,就可以慢慢外擴一些感測器和控制裝置了,然後形成一套自己的智慧家居套件,早些年的時候還不知道有openwrt的開源專案,更不知道有些路由器還可以自己刷機、自己編譯系統、自己定製軟體功能,還以為必須得拿一個ARM板來做閘道器才行,既然openwrt可以定製自己的軟體功能,那拿路由器來DIY自己的家庭閘道器就成順理成章的事情了。


從有這個想法開始,陸陸續續就開始著手實施,先是買了一個可以刷openwrt的路由器進行改裝、刷系統和嘗試自己編譯一些應用,然後用微控制器做了一個433M無線接收解碼板,通過串列埠接到路由器上,可以接收門磁或遙控器訊號;接著研究藍芽BLE,相比普通藍芽,功耗更低,可以接一些感測器做成環境採集器,或者接繼電器控制家電,我先是買了一塊開發板進行學習,然後做了一個可以通過手機控制開關的插排,為了配套使用,還自個摸索寫了一個IPHONE的控制軟體;後來偶然知道上海樂鑫推出了串列埠WIFI晶片ESP8266,特別適合做智慧家居產品,方案簡單,功耗低,很容易整合,拿來DIY非常合適,當時設計了一塊板想做一個WIFI門磁,做了兩次PCB,但是最終因為板子有問題就沒有繼續做下去了;中間斷斷續續,隔一段時間停一下又搞一下,最終沒有做出一套像樣的東西出來,後來就一直擱置了。


前段時間想直接買小米的智慧套件來玩,省得去折騰,但是後來發現小米定義的場景還得手動才能觸發,一點都不方便不人性化,要我每天回家或離家時還要掏出手機來觸發場景那我寧願不用,剛開始感覺新鮮,可能會這樣搞一下,但是到後面我估計沒有人會堅持用下去,也有可能我瞭解得不夠清楚,或許小米還提供了其他更高階的玩法,只是我不知道而已;既然小米的用不上了,那我還是得自己搞,所以我下定決心重新把原來的計劃繼續做下去。


經過近幾個星期的努力,白天上班沒時間,只能利用晚上和週末零散的時間來搞,基本實現瞭如下功能:

  1. 通過手機軟體新增433M無線門磁或遙控器
  2. 通過手機軟體自己定義場景,觸發場景事件目前有時間、手機連線/斷開WIFI事件和門磁或遙控器,場景被觸發後 執行的動作目前有推送訊息和控制WIFI插座


目前可以實現的場景主要是回家和離家,手機一旦連線到路由器判斷為回家,觸發回家場景,這個時候可以開啟WIFI插座點亮客廳的燈光;手機一旦斷開路由器,判斷為離家,觸發離家場景,關閉客廳燈光;後續還可以增加一些感測器,作為輔助判斷條件,比如光線感測器,回家場景觸發後可以根據室內光線強弱來決定要不要開啟燈光。回家和離家場景觸發是不需要其他硬體裝置輔助的,沒有硬體DIY能力的同學,也可以有其他的玩法,比如通過WOL包開啟家裡的電腦,路由器接一個USB音效卡播放音樂等。


我現在準備把所有的製作過程一步步寫出來,看看有沒有感興趣的同學可以一起參與,有建議的提供建議,有動手能力的可以幫忙開發,不然我自己一個人玩就缺少了點樂趣,有興趣的同學可以把QQ留下,到時候我建個群一起討論。

       最後貼幾張手機軟體截圖,介面參照了一下小米的

  

  


相關推薦

DIY個人智慧家庭—— 前言

        我是電子DIY愛好者,也是一名程式設計師,平時業餘生活比較枯燥,閒暇之餘喜歡搗鼓一些東西玩玩,從硬體設計、驅動開發到手機客戶端開發,都有做過,不過只是些皮毛,沒有很深入的鑽研,所以做出來的東西純粹是玩一玩而已,我現在就是想把在做的東西整理一下放到部落格裡面,

DIY個人智慧家庭—— 路由器篇之刷機

        先選擇合適的路由器型號,要求有兩個,一:有USB口,二:可以刷openwrt系統,我的首選是newifi mini,比較喜歡折騰的可以刷openwrt官方韌體,小白可以選擇刷pandorabox,目前我使用的是官方Chaos Calmer 15.05.1版本

DIY個人智慧家庭—— python篇之獲取路由器外網地址

免費的DDNS域名服務有時候重新整理不及時,解析不到路由器的IP,就可以採用這種方法來解決 #!/usr/bin/env python # -*- coding: utf-8 -*- import socket import fcntl import struc

DIY個人智慧家庭——python篇之讀取USB串列埠,獲取門磁報警資訊

把433M無線解碼器的USB串列埠插入到路由器USB口,預設會出現ttyUSB0串列埠裝置,python讀取串列埠資料程式碼如下 #!/usr/bin/env python # -*- coding: utf-8 -*- import serial from time

DIY個人智慧家庭——硬體篇之WIFI燈帶DIY

需要如下配件 1、ESP8266模組 2、燈帶 3、MOS管驅動板,用於驅動點亮燈帶 4、12V電源 5、其他線材、外殼等配件 最後組裝完成 ESP8266部分程式碼如下,除了實現亮和滅的基本控制外,還可以調節燈光亮度,設定漸亮、漸暗、呼吸燈或者閃爍等

阿里雲智慧接入體驗

以前在實施MSN Direct專案的時候曾經接觸過思科的路由器,當時從微軟總部派過來一個專家,藉助一個公網IP在航天橋電視塔和微軟研發集團的機房建立一個VPN通道,實現“虛擬”區域網的功能。 沒有想到這次採用阿里雲提供的智慧接入閘道器,竟然相對輕鬆地實現了“虛擬”區域網的功能。不僅可以和雲伺服器

iNeuOS工業互聯平臺,部署在智慧硬體,實現了從邊緣端到雲端的一體化部署

目       錄 1.      概述... 2 2.      平臺演示... 3 3.     

智慧韌體編譯學習筆記——Makefile

參考部落格:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=408225 一、makefile簡介 (1)程式的編譯和連結 為了更好的理解makefile的意義,有必要了解一些程式編譯的規範和

迅為4412開發板實戰之智慧專案筆記

智慧閘道器的學習內容: 1 智慧閘道器的概念; 2 智慧閘道器的實現框架; 3 智慧閘道器的例程分析。 1 智慧閘道器的概念: 1.1 智慧閘道器關鍵詞搜尋     智慧家居閘道器,物聯網智慧閘道器,zigbee智慧閘道器...     有大量的智慧閘道

IP MODEM資料無線上傳伺服器4g dtu透傳智慧澆灌

方案需求 隨著農業及園林業的發展,水資源的不斷升值,傳統灌溉方式正在被現代智慧型遠端自動控制灌溉系統所取代並得以推廣,是有效解決灌溉節水問題的必要措施之一。欣仰邦自主研發的智慧灌溉系統是集感測器技術、自動控制技術、計算機技術、無線通訊技術等多種高新技術於一體的智慧灌溉控制系統。 系統既可以根據植物和土壤種類

物聯網關鍵技術包括兩個方面,物聯網智慧家居發展的重要支撐

在無線感測網中,是不可或缺的核心裝置。此外還需要具備裝置管理功能,運營商通過裝置可以管理底層的各感知節點,瞭解各節點的相關資訊,並實現遠端控制。 物聯網閘道器關鍵技術包括兩個方面。 1.多標準互通接入能力:目前用於近程通訊的技術標準很多。常見的感測網技術包括ZigBe

騰訊雲首發智慧流控,公有云進入網路精細管控時代

騰訊雲私有網路率先在業界推出了智慧閘道器流控,為NAT閘道器、專線閘道器、對等連線提供IP-閘道器粒度的“監”與“控”。其精細化閘道器流量視覺化能力,可讓運維人員對閘道器流量一目瞭然,IP-閘道器粒度的限速能力可遮蔽異常流量,助力公有云進入網路精細管控時代。舉個

乾貨分享丨玩轉物聯網IoTDA服務系列四-智慧

摘要:該場景主要描述的是裝置可以通過MQTT協議與物聯網平臺進行互動,使用者可以在控制檯產品詳情中自定義Topic,通過應用側介面或控制檯建立資料轉發規則,把裝置上報的訊息轉發給其他華為雲服務,供應用側使用者主動去消費。 場景簡介 已對接存量裝置的閘道器,不用遷移就可以實現對既有裝置和新裝置的相容控制。 該場

支付寶 應用和授權回撥地址怎麼配置?

說明   我們在建立應用以後在應用的概覽中看到應用閘道器和授權回撥地址不知道該怎麼使用(如下圖)   名詞解釋   應用閘道器:用於接收由支付寶伺服器通知。使用介面:生活號介面和口碑門店被動通知   注意:如果您現

記一次nginx504超時解決方法

問題發生的背景: 合作方請求某個介面,由於處理時間較長,導致了閘道器超時. 問題分析: 1.可能是php程式超時報錯; 2.php-fpm處理請求超時; 3.nginx伺服器超時. 問題解決: 1.php超時設定: 檢查了php超時的配置,在php.ini

網路傳輸的中介:代理、、通道

轉載地址:http://www.cnblogs.com/li0803/archive/2008/11/03/1324746.html 代理(Proxy): 一箇中間程式,它可以充當一個伺服器,也可以充當一個客戶機,為其它客戶機建立請求。請求是通過可能的翻譯在內部或經過傳遞到其它的

AliOS-Things--EMW3060--

好吧,目前下面這些還不支援。。。。。 int linkkit_main(void *paras) { #ifndef WIFI_AWSS_ENABLED set_iotx_info(); #endif int res = 0; uint64_t time_pr

zuul1

啟動registry 一 代理provider: 啟動provider   配置zuul專案: spring: application: name: microservice-gateway-zuul server: port: 8040 eureka:

二層三層網路協議-

  區域網的電腦想連線外網有兩個辦法 1.找一臺電腦,安裝兩個網絡卡,一個連內網,一個連外網,然後所有人都連這臺機器做跳板 2.找個路由器 1和2原理是類似的,只是1是用程式實現的,2是嵌入式的系統 IP資料包格式 IP格式裡面有源IP,目標IP 版本就是IPv4和I