天天看點

開源物聯網架構ServerSuperIO 3.0正式釋出(C#),跨平台:Win&Win10 Iot&Ubuntu&Ubuntu Mate,一套裝置驅動跨平台挂載,附:開發套件和教程。SSIO的特點 SSIO概述

3.0版本主要更新内容:

1.增加跨平台能力:Win&Win10 Iot&Ubuntu&Ubuntu Mate

2.統一裝置驅動接口:可以一套裝置驅動,跨平台挂載運作,降低人力成本,提高開發效率。

3.增加二次開發套件:支援控制台和UI界面兩種方式。

4.增加配置工具:參數配置、裝置驅動挂載、視圖挂載、服務執行個體的挂載。

5.修複BUG,優化代碼。

SSIO的特點

1.輕型高性能通信架構,适用于多種應用場,輪詢模式、自控模式、并發模式和單例模式。

2.不光是通訊架構,是裝置驅動、IO通道、控制模式場景的協調機制。

3.支援協定驅動器,可以按規範寫标準協定和自定義協定。

4.支援發送資料緩存器,支援指令緩存重發和按優先級别發送。

5.支援協定過濾器,按規則篩選資料,并且可以承繼接口,自定義過濾方式。

6.支援接收資料緩存器,可以緩存不符合過濾器的資料,和下次接收資料進行拼接。

7.支援按裝置指令優先級别進行排程裝置,保證有進階别指令的驅動及時發送。

8.支援一個裝置驅動,同時支援序列槽和網絡兩種通訊方式,可以監視IO通道資料。

9.支援一個裝置驅動,在網絡通訊時可以支援TCP Server和TCP Client兩種工作模式。

10.支援多裝置共享同一IO通道進行通訊。

11.支援定時清理逾時的網絡IO通道。

12.支援顯示視圖接口,滿足不同顯示需求。

13.支援服務元件接口,可以自定義完成OPC服務、4-20mA輸出、LED大屏顯示、短信服務、以及多功能網關服務。

14.支援建立多服務執行個體,完成不同業務的拆分。

15.支援跨平台部署,可以運作在Linux和Windows系統。

16.裝置驅動與裝置驅動,裝置驅動與伺服器(雲端)可以實時雙向互動,上傳資料和指令下發。

https://github.com/wxzz/ServerSuperIO#ssio%E6%A6%82%E8%BF%B0 SSIO概述

     SSIO通信架構的設計思想是在SuperIO(SIO)基礎上發展而來,并沒有高大上的技術,主要是工作經驗的積累,适合于不同應用場景的物聯網的資料采集與互動。SSIO和SIO并不是簡單的對IO高性能的操作,而是裝置驅動、IO通道、控制模式和實際硬體裝置之間的協調機制,各方面之間無縫銜接和運作,也是為了解決現實工作和應用場景的一些痛點。軟硬體之間的資料互動,并且面臨着複雜的現場環境:

(1)複雜的、多樣的通訊協定。有标準的協定,例如:Modbus等,也有很多根據标準協定修改的協定格式、以及自定義協定格式,并且千差萬别。對于不好的軟體架構,疲于應對,增加裝置或協定要對整個軟體進行梳理,往往在此過程中出現新的問題或BUG。

(2)針對不同使用者對軟體界面或功能的要求有很大不同,使之滿足不同使用者的顯示要求,可以自定義資料顯示界面。那麼就需要提供顯示視圖接口,與裝置驅動進行互動。

(3)既然現場裝置的資料被采集上來,那麼就需要對其進行處理,不僅僅是儲存、查詢、報表等,還有:資料轉發、資料輸出(OPC、模拟量、大屏等)等。那麼就需要提供服務性的接口,與裝置驅動進行互動。

(4)通訊鍊路的多種性,對于同一個裝置可能要支援RS232/RS485/RS422、RJ45、3G/4G等通訊方式,是以對于一個裝置要對應多種通訊方式(序列槽和網絡),也給我們的開發造成很大的障礙。

(5)裝置驅動、IO通道和實際的現場硬體終端之間鍊路複雜,有可能:一個裝置驅動對應一個IO通道、一個裝置驅動對應多個IO通道、多個裝置驅動對應一個IO通道等情況。

(6)既然裝置與服務端進行資料互動,那麼就應該對裝置的通訊狀态、IO狀态、以及裝置本身的狀态進行監控,這樣裝置才處于可維護狀态。

(7)軟體各版本、以及軟體與硬體之間的相容性很差,管理起來錯綜複雜。在架構平台穩定的情況下,隻需要更新裝置驅動。

為了解決以上諸多問題,開發一個軟體架構,支援二次開發。在不對軟體架構改動的情況下,能夠很友善的接入裝置、維護裝置、內建裝置、處理裝置業務資料等。軟體架構相對穩定,把容易變化的部分進行靈活設計。

  下載下傳:

ServerSuperIO官方下載下傳 Github下載下傳
開源物聯網架構ServerSuperIO 3.0正式釋出(C#),跨平台:Win&Win10 Iot&Ubuntu&Ubuntu Mate,一套裝置驅動跨平台挂載,附:開發套件和教程。SSIO的特點 SSIO概述

連載教程:

1.4種通訊模式機制 2.服務執行個體的配置參數說明 3.裝置驅動介紹 4.如開發一套裝置驅動,同時支援序列槽和網絡通訊 5.輪詢通訊模式開發及注意事項 6.并發通訊模式開發及注意事項 7.自控通訊模式開發及注意事項 8.單例通訊模式開發及注意事項 9. 協定過濾器,解決一包多發、粘包、備援資料 10.持續傳輸大塊資料流的兩種方式(如:檔案) 11.實作裝置(驅動)與裝置(驅動)互動和級聯控制。 12.服務接口的開發,以及與雲端雙向互動 13.自定義視圖顯示接口開發,滿足不同的顯示需求 14.配制工具介紹,以及裝置驅動、視圖驅動、服務執行個體的挂載

1.

[連載]《C#通訊(序列槽和網絡)架構的設計與實作》

2.[

開源]C#跨平台物聯網通訊架構ServerSuperIO(SSIO)介紹

2.

應用SuperIO(SIO)和開源跨平台物聯網架構ServerSuperIO(SSIO)建構系統的整體方案

3.

C#工業物聯網和內建系統解決方案的技術路線(資料源、資料采集、資料上傳與接收、ActiveMQ、Mongodb、WebApi、手機App)

5.ServerSuperIO開源位址:

https://github.com/wxzz/ServerSuperIO

物聯網&內建技術(.NET) QQ群:54256083 

繼續閱讀