【重大更新】開源跨平臺物聯網通信框架ServerSuperIO 2.0(SSIO)下載

更新具體細節參見:[更新設計]跨平臺物聯網通信框架ServerSuperIO 2.0 ,功能、BUG、細節說明,以及升級思考過程!html

     聲明:公司在建設工業大數據平臺,SSIO正好能派上用場,因此抓緊時間進行了完善,而且升級到了2.0版本,但願對你們有幫助。僅供開源學習,商用請聯繫做者。git

1.SSIO特色

  • 輕型高性能通訊框架,適用於多種應用場,輪詢模式、自控模式、併發模式和單例模式。
  • 不光是通信框架,是設備驅動、IO通道、控制模式場景的協調機制。
  • 支持協議驅動器,能夠按規範寫標準協議和自定義協議。
  • 支持發送數據緩存器,支持命令緩存重發和按優先級別發送。
  • 支持協議過濾器,按規則篩選數據,而且能夠承繼接口,自定義過濾方式。
  • 支持接收數據緩存器,能夠緩存不符合過濾器的數據,和下次接收數據進行拼接。
  • 支持按設備命令優先級別進行調度設備,保證有高級別命令的驅動及時發送。
  • 支持一個設備驅動,同時支持串口和網絡兩種通信方式,能夠監視IO通道數據。
  • 支持一個設備驅動,在網絡通信時能夠支持TCP Server和TCP Client兩種工做模式。
  • 支持多設備共享同一IO通道進行通信。
  • 支持定時清理超時的網絡IO通道。
  • 支持顯示視圖接口,知足不一樣顯示需求。
  • 支持服務組件接口,能夠自定義完成OPC服務、4-20mA輸出、LED大屏顯示、短信服務、以及多功能網關服務。
  •  支持建立多服務實例,完成不一樣業務的拆分。
  •  支持跨平臺部署,能夠運行在Linux和Windows系統。

2. 測試過程的協議

     協議頭(2個字節),客戶端編號(ASCII,4個數字字符),文件名稱,文件內容,協議尾(2個字節)github

     事例:0x35,0x35,0001,yyMMddHHmmss.txt,文件內容,0x33,0x33緩存

3. 測試結果

    從2016-8-16 14:00左右開始測試,到2016-8-17 13:00左右截圖。每間隔5s發送一個65kb的文件,SSIO負責接收,而且存儲數據。以下圖:網絡

 

    紅圈標註的內容,爲何會出現錯誤數據呢?這是由於協議中以0x3五、0x35開頭,以0x3三、0x33結尾,可是協議數據中包括文件名稱,是以時間爲命名規則:yyMMddHHmmss.txt,因此文件名稱在協議中的數據有可能包括0x35或0x33的數據,因此會出現截取數據錯位的狀況,這是正常現象。可是在設計通信協議的過程須要特別注意。併發

4.開源分支

     SSIO 2.0版本是在SSIO1.3版本基礎上修改的,修改的內容比較多,因此新建了一個分支,在github上下載時須要注意,以下圖:框架

 

 

相關文章
相關標籤/搜索