隨著物聯網的興趣,很多物聯網專案誕生了。其中物聯門禁系統可以說是一個非常有前景的專案。首先說說物聯門禁可以實現哪些功能?最具物聯網代表的功能就是手機遠端開門,無論你在世界的哪個角落,你只需要一臺可以上網的手機,你就可以實現遠端控制門禁開門。在此功能的拓展下,我們還可以實現微信開發、掃碼開門、小程式開發,還有遠距離開門(1-3米可調),當然還有最基本刷卡開門。
瞭解完門禁的開門功能,我們再來了解下我們今天討論的主題。門禁裝置如何與伺服器保持連線?想要透過網際網路來控制門禁機裝置開發,那麼我們的必須要有一個東西跟門禁裝置通訊,我們得告訴它我們什麼時候要開門了,這個工作由誰來做?沒錯,就是伺服器,伺服器透過TCP/IP協議完成與硬體裝置的通訊。而這個通訊的基礎首先是要建立起門禁裝置與伺服器的連線狀態,那麼這個連結狀態是如何維持的呢?
前面我們有提到到,伺服器與硬體裝置的通訊協議走的TCP/IP協議,我們為什麼不用HTTP協議?TPC/IP協議是傳輸層協議,主要解決資料如何在網路中傳輸,而HTTP是應用層協議,主要解決如何包裝資料。術語TCP/IP代表傳輸控制協議/網際協議,指的是一系列協議。“IP”代表網際協議,TCP和UDP使用該協議從一個網路傳送資料包到另一個網路。把IP想象成一種高速公路,它允許其它協議在上面行駛並找到到其它電腦的出口。TCP和UDP是高速公路上的“卡車”,它們攜帶的貨物就是像HTTP,檔案傳輸協議FTP這樣的協議等。 說了這麼多,其實你只需要明白http不能維持長連線,而TCP/IP中的tcp或者udp可以做到。門禁裝置需要全天24小時監控線上狀態。
下面的圖表試圖顯示不同的TCP/IP和其他的協議在最初OSI模型中的位置:
上面的協議你如果還沒有理解也沒關係,我就直接告訴你吧我們門禁裝置與伺服器的通訊是透過udp實現的,而我不用tcp的原因是,tcp有著繁瑣的三次握手確認機制,這不僅會增加連線的時間而且還會佔用過的的內部系統資源。說了這麼多你也許還沒明白伺服器和門禁機裝置到底是怎麼維持連線的?其實他們之間是透過“心跳包”的方式維持連線。裝置通電之後,裝置的連網功能模板不管是流量卡還是直接插網線,就會發生一串心跳包資料,這是資料會按照一定的頻率一直髮生,以此來維持連線。下面再看看詳細的資料包格式。
伺服器收到門禁裝置的心跳包資料,應答一條資料給門禁裝置告訴伺服器已經收到心跳包,我們把改門禁的狀態維持為在線上狀態,裡面的資料格式全部採用16進位制,其中插入時間資料是為了保持時間同步。
以上 希望採納
隨著物聯網的興趣,很多物聯網專案誕生了。其中物聯門禁系統可以說是一個非常有前景的專案。首先說說物聯門禁可以實現哪些功能?最具物聯網代表的功能就是手機遠端開門,無論你在世界的哪個角落,你只需要一臺可以上網的手機,你就可以實現遠端控制門禁開門。在此功能的拓展下,我們還可以實現微信開發、掃碼開門、小程式開發,還有遠距離開門(1-3米可調),當然還有最基本刷卡開門。
瞭解完門禁的開門功能,我們再來了解下我們今天討論的主題。門禁裝置如何與伺服器保持連線?想要透過網際網路來控制門禁機裝置開發,那麼我們的必須要有一個東西跟門禁裝置通訊,我們得告訴它我們什麼時候要開門了,這個工作由誰來做?沒錯,就是伺服器,伺服器透過TCP/IP協議完成與硬體裝置的通訊。而這個通訊的基礎首先是要建立起門禁裝置與伺服器的連線狀態,那麼這個連結狀態是如何維持的呢?
前面我們有提到到,伺服器與硬體裝置的通訊協議走的TCP/IP協議,我們為什麼不用HTTP協議?TPC/IP協議是傳輸層協議,主要解決資料如何在網路中傳輸,而HTTP是應用層協議,主要解決如何包裝資料。術語TCP/IP代表傳輸控制協議/網際協議,指的是一系列協議。“IP”代表網際協議,TCP和UDP使用該協議從一個網路傳送資料包到另一個網路。把IP想象成一種高速公路,它允許其它協議在上面行駛並找到到其它電腦的出口。TCP和UDP是高速公路上的“卡車”,它們攜帶的貨物就是像HTTP,檔案傳輸協議FTP這樣的協議等。 說了這麼多,其實你只需要明白http不能維持長連線,而TCP/IP中的tcp或者udp可以做到。門禁裝置需要全天24小時監控線上狀態。
下面的圖表試圖顯示不同的TCP/IP和其他的協議在最初OSI模型中的位置:
上面的協議你如果還沒有理解也沒關係,我就直接告訴你吧我們門禁裝置與伺服器的通訊是透過udp實現的,而我不用tcp的原因是,tcp有著繁瑣的三次握手確認機制,這不僅會增加連線的時間而且還會佔用過的的內部系統資源。說了這麼多你也許還沒明白伺服器和門禁機裝置到底是怎麼維持連線的?其實他們之間是透過“心跳包”的方式維持連線。裝置通電之後,裝置的連網功能模板不管是流量卡還是直接插網線,就會發生一串心跳包資料,這是資料會按照一定的頻率一直髮生,以此來維持連線。下面再看看詳細的資料包格式。
伺服器收到門禁裝置的心跳包資料,應答一條資料給門禁裝置告訴伺服器已經收到心跳包,我們把改門禁的狀態維持為在線上狀態,裡面的資料格式全部採用16進位制,其中插入時間資料是為了保持時間同步。
以上 希望採納