系統(tǒng)接口基于以太網(wǎng)基礎(chǔ)上實(shí)現(xiàn)對接,首先先了解下網(wǎng)絡(luò)OSI參考模型。

物理層:建立、維護(hù)、斷開物理連接。(由底層網(wǎng)絡(luò)定義協(xié)議)


數(shù)據(jù)鏈路層:建立邏輯連接、進(jìn)行硬件地址尋址、差錯(cuò)校驗(yàn)等功能。(由底層網(wǎng)絡(luò)定義協(xié)議),將比特組合成字節(jié)進(jìn)而組合成幀,用MAC地址訪問介質(zhì),錯(cuò)誤發(fā)現(xiàn)但不能糾正。


   TCP/IP協(xié)議:TCP/IP協(xié)議又名網(wǎng)絡(luò)通訊協(xié)議,是Internet最基本的協(xié)議、Internet國際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ),由網(wǎng)絡(luò)層的IP協(xié)議和傳輸層的TCP協(xié)議組成。TCP/IP 定義了電子設(shè)備如何連入因特網(wǎng),以及數(shù)據(jù)如何在它們之間傳輸?shù)臉?biāo)準(zhǔn)。協(xié)議采用了4層的層級(jí)結(jié)構(gòu),每一層都呼叫它的下一層所提供的協(xié)議來完成自己的需求。通俗而言:TCP負(fù)責(zé)發(fā)現(xiàn)傳輸?shù)膯栴},一有問題就發(fā)出信號(hào),要求重新傳輸,直到所有數(shù)據(jù)安全正確地傳輸?shù)侥康牡?。而IP是給因特網(wǎng)的每一臺(tái)聯(lián)網(wǎng)設(shè)備規(guī)定一個(gè)地址。


對接方式:協(xié)議對接,數(shù)據(jù)庫對接,二次開發(fā)。

一.協(xié)議對接,所謂協(xié)議,就是指雙方遵循的規(guī)范:

1.Modbus協(xié)議

Modbus協(xié)議目前存在用于串口、以太網(wǎng)以及其他支持互聯(lián)網(wǎng)協(xié)議的網(wǎng)絡(luò)的版本。


Modbus協(xié)議分為Modbus TCP和Modbus Rtu,區(qū)別如下:

1) 概念不同:MODBUS是一種標(biāo)準(zhǔn)的工業(yè)控制數(shù)據(jù)交換協(xié)議,可以用RTU和ASCII兩種方式進(jìn)行協(xié)議數(shù)據(jù)的互傳,RTU是通過二進(jìn)制數(shù)據(jù)方式直接傳送數(shù)據(jù),而TCP是通過將每字節(jié)二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為固定兩位十六進(jìn)制字符串,再依次串聯(lián)在一起,以TCP碼形式進(jìn)行數(shù)據(jù)傳送,一般用得最多的還是RTU方式。

2) 通信方式不同: 以太網(wǎng),對應(yīng)的通信模式是MODBUS TCP。異步串行傳輸(各種介質(zhì)如有線RS-232-/422/485/;光纖、無線等),對應(yīng)的通信模式是MODBUS RTU或MODBUS ASCII。高速令牌傳遞網(wǎng)絡(luò),對應(yīng)的通信模式是Modbus PLUS。

Modbus協(xié)議作為工業(yè)控制應(yīng)用的常用協(xié)議,可以免費(fèi)對接。


2.OPC

   OPC協(xié)議:OPC是一種利用微軟的COM/DCOM技術(shù)來達(dá)成自動(dòng)化控制的協(xié)定,采用典型的C/S模式,針對硬件設(shè)備的驅(qū)動(dòng)程序由硬件廠商完成,提供統(tǒng)一OPC接口標(biāo)準(zhǔn)的Server程序,軟件廠商只需按照OPC標(biāo)準(zhǔn)接口編寫Client程序就訪問Server程序進(jìn)行讀寫,即可實(shí)現(xiàn)與硬件設(shè)備的通信。

   OPC協(xié)議是應(yīng)用層的數(shù)據(jù)協(xié)議,把自動(dòng)化采集數(shù)據(jù)以一定格式傳輸給客戶端(第三方平臺(tái)),在網(wǎng)絡(luò)的底層傳輸過程是基于TCP/IP協(xié)議得以進(jìn)行的。

在工業(yè)中OPC按點(diǎn)計(jì)量和收費(fèi)。


3.MQTT(Message Queuing Telemetry Transport,消息隊(duì)列遙測傳輸協(xié)議)

   是一個(gè)基于客戶端-服務(wù)器的消息發(fā)布/訂閱傳輸協(xié)議。目前有很多的MQTT消息中間件服務(wù)器,都是MQTT協(xié)議的服務(wù)器端的實(shí)現(xiàn),所以MQTT目前已發(fā)展成為許多物聯(lián)網(wǎng)系統(tǒng)中使用的關(guān)鍵消息傳遞協(xié)議,是目前物聯(lián)網(wǎng)IOT的主流協(xié)議,基于TCP連接進(jìn)行數(shù)據(jù)推送。

   目前實(shí)現(xiàn)MQTT的語言以JAVA比較流行和通用,客戶端基本為WEB端,多為BS架構(gòu)。



4.HTTP協(xié)議

http協(xié)議,就是瀏覽器和服務(wù)器之間進(jìn)行“溝通”的一種規(guī)范。我們在看空間,刷微博...都是在使用http協(xié)議。


以上四種是協(xié)議,所謂通信協(xié)議,類似人類交談中的漢語、英語、俄語中的一種語言規(guī)范。 

Modbus和OPC多用于工業(yè)控制應(yīng)用,MQTT多用于物聯(lián)網(wǎng)。HTTP是一種網(wǎng)站訪問通用協(xié)議。


二.數(shù)據(jù)庫形式。

通過寫入對方指定數(shù)據(jù)庫,對方可以從數(shù)據(jù)庫中直接獲取平臺(tái)上的數(shù)據(jù)。


三.基于協(xié)議之外還有一些系統(tǒng)支持的語言和封裝樣式:

1)JavaScript 是 Web 的編程語言。所有現(xiàn)代的 HTML 頁面都使用 JavaScript。用戶可以在系統(tǒng)平臺(tái)上使用JavaScript庫進(jìn)行二次開發(fā)。

2)JSON是一種封裝格式,指的是 JavaScript 對象表示法(json是一種與語言無關(guān)的數(shù)據(jù)交換的格式),其以一種固定的數(shù)據(jù)結(jié)構(gòu)表示項(xiàng)、屬性和參數(shù)等,使用Json的格式與解析方便的可以表示一個(gè)對象信息。用戶可以直接使用JSON形式進(jìn)行數(shù)據(jù)交換,用戶可以讀取平臺(tái)封裝好的JSON形式直接解析。