IGT-SER系列PLC通訊智能網(wǎng)關(guān)支持HTTP協(xié)議GET和POST、PUT請求模式。支持JSON格式的文件,也可以實現(xiàn)WebService的調(diào)用。
通常智能網(wǎng)關(guān)是HTTP協(xié)議的客戶端,也可以同時作為HTTP的服務(wù)端。相關(guān)案例在附件中
作為客戶端時支持觸發(fā)、周期、混合等多種工作模式與服務(wù)端通訊:周期模式根據(jù)所設(shè)置的周期時間提交請求和解析返回的文件;觸發(fā)模式可配置一個或多個觸發(fā)條件,網(wǎng)關(guān)根據(jù)觸發(fā)條件的數(shù)據(jù)變化進行文件提交和下載解析;也可以兩種模式同時配置運行。每次通訊智能網(wǎng)關(guān)根據(jù)配置打包JSON文件再提交數(shù)據(jù),如果有數(shù)據(jù)返回則立即解析到對應(yīng)的數(shù)據(jù)變量;在此期間根據(jù)字段類別和所配置的PLC數(shù)據(jù)地址跟PLC建立連接讀寫數(shù)據(jù)。
作為服務(wù)端時根據(jù)客戶端URL中的路徑查找所配置的數(shù)據(jù),打包成JSON文件后返回給客戶端。同樣根據(jù)字段類別和所配置的PLC數(shù)據(jù)地址跟PLC建立連接讀寫數(shù)據(jù)。
通過[功能]/[數(shù)據(jù)轉(zhuǎn)發(fā)與平臺對接]進入數(shù)據(jù)采集參數(shù)設(shè)置界面(軟件下載),選擇HTTP-GET/POST,如下圖:
<服務(wù)端URL>:智能網(wǎng)關(guān)為HTTP協(xié)議客戶端時,輸入服務(wù)器的URL地址;支持字母或數(shù)字,最多128個字符。設(shè)置為‘在腳本程序文件內(nèi)配置運行’時表示除PLC通訊以外的功能全部由腳本程序?qū)崿F(xiàn)。
<上報周期>:智能網(wǎng)關(guān)為HTTP協(xié)議客戶端時,網(wǎng)關(guān)的工作周期間隔時間,單位為秒;當設(shè)置為0時,根據(jù)數(shù)值變化,即觸發(fā)模式進行上傳下載。
<字符順序>:選擇字符串數(shù)據(jù)類型的處理方式,有默認、交換1字符和交換2字符等多種方式可選擇;
<數(shù)據(jù)模式>:POST或者PUT的主體BODY模式,可以選擇JSON_Raw、Form-Data;還可以選擇InfluxDB2時序數(shù)據(jù)庫的方式;
<證書模式>:沒有專用的客戶端證書時選擇為‘0_無證書’;
<字符順序>:選擇字符串數(shù)據(jù)類型的處理方式,有默認、前后交換字符、ASCII與UTF8字符編碼轉(zhuǎn)換等多種模式選擇;
<數(shù)據(jù)接收等待時間>:網(wǎng)關(guān)發(fā)送一次請求并收到服務(wù)端的返回數(shù)據(jù)后的等待時間,以便完整接收服務(wù)端返回的多包數(shù)據(jù),單位毫秒;
<數(shù)據(jù)請求方法>:智能網(wǎng)關(guān)作為HTTP客戶端,與遠程服務(wù)端之間的數(shù)據(jù)交互方式,默認為GET+POST請求命令組合,實現(xiàn)上報和下載數(shù)據(jù),可切換為GET+PUT請求命令組合;
<服務(wù)模式起始的任務(wù)組>:智能網(wǎng)關(guān)作為服務(wù)模式的JSON文件起始組,在此之前的組都是作為客戶端所用的JSON數(shù)據(jù)文件;關(guān)于‘任務(wù)組’可查閱后面‘數(shù)據(jù)配置表各列’的詳細描述;
數(shù)據(jù)配置表各列:
<序號>:數(shù)據(jù)的順序號;參數(shù)軟件與網(wǎng)關(guān)正常連接時,鼠標雙擊對應(yīng)的序號會在消息區(qū)域顯示該數(shù)據(jù)的當前值;
<字段類別>:該行數(shù)據(jù)的字段類別模式,有以下選項:
/<參數(shù)Header>:添加到HTTP頭部的參數(shù),可通過初始值賦值,最多64字符;
/<URL后綴>:添加到<服務(wù)器URL>參數(shù)字符串末尾的字符串,其長度最多為64個字符,與<任務(wù)組>參數(shù)配合使用,從而允許同一個網(wǎng)關(guān)對應(yīng)多個不同的 URL 地址;
/<上報標題>:智能網(wǎng)關(guān)打包發(fā)出的數(shù)據(jù)中,位JSON文件<上報數(shù)組對象>外部的字段,通常用于標識發(fā)送時間或設(shè)備ID等信息;
/<上報數(shù)組對象>:智能網(wǎng)關(guān)打包發(fā)出的數(shù)據(jù),對應(yīng)JSON文件的對象名稱,或者數(shù)組名稱;
/<上報數(shù)據(jù)>:智能網(wǎng)關(guān)打包發(fā)出的數(shù)據(jù),對應(yīng)JSON文件<上報數(shù)組對象>內(nèi)的字段;
/<GET參數(shù)>:添加到<服務(wù)器URL>參數(shù)字符串末尾的參數(shù),網(wǎng)關(guān)自動將按GET模式的URL排列,按GET模式提交;
/<日期時間>:智能網(wǎng)關(guān)打包發(fā)出的數(shù)據(jù),對應(yīng)JSON文件<上報數(shù)組對象>外的日期時間字段,日期時間值取自智能網(wǎng)關(guān)的RTC時鐘芯片,格式可通過[參數(shù)]/[網(wǎng)關(guān)時間設(shè)置]選擇;
/<上報循環(huán)計數(shù)>:每次網(wǎng)關(guān)數(shù)據(jù)上報成功后該值加1,如值大于100或者網(wǎng)關(guān)重啟,則返回到1重新計數(shù); 配置為PLC寄存器地址可以將數(shù)值寫入PLC;
/<下載標題>:智能網(wǎng)關(guān)接收解析的數(shù)據(jù),對應(yīng)接收JSON文件<下載數(shù)組對象>外的字段;配置對應(yīng)的PLC寄存器地址,可以將數(shù)值寫入到PLC;
/<下載數(shù)組對象>:智能網(wǎng)關(guān)接收解析的數(shù)據(jù),對應(yīng)接收JSON文件的對象名稱,或者數(shù)組名稱;
/<下載數(shù)據(jù)>:智能網(wǎng)關(guān)接收解析的數(shù)據(jù),對應(yīng)接收JSON文件<下載數(shù)組對象>內(nèi)的字段;配置對應(yīng)的PLC寄存器地址,可以將數(shù)值寫入到PLC;
/<數(shù)值讀取>:保存從PLC讀取到的數(shù)值,或者從服務(wù)端返回的結(jié)果,可作為變化判斷的條件, 通過LUA 腳本程序進行必要的處理等;
/<數(shù)值寫入>:用于網(wǎng)關(guān)將處理后的數(shù)據(jù)寫入到PLC 設(shè)備,進行對應(yīng)的數(shù)據(jù)寄存器數(shù)值設(shè)定;
/<周期觸發(fā)器(S)>:秒觸發(fā)器,周期時間通過初始值賦值;在按變化上報模式時,可分別為不同的組設(shè)置不同的觸發(fā)器,實現(xiàn)不同周期的數(shù)據(jù)上報;
<字段名稱>:該數(shù)據(jù)對應(yīng)的變量的名稱;支持字母或數(shù)字,最多64 個字符。
<數(shù)據(jù)區(qū)域>:選擇PLC 寄存器的區(qū)域,選擇為‘Script’時,表示為網(wǎng)關(guān)內(nèi)存區(qū)域的中間數(shù)據(jù),一般用于字符串常數(shù)數(shù)據(jù),通過初始值賦值,或者LUA 腳本邊緣計算讀寫的數(shù)據(jù);
<數(shù)據(jù)地址>:PLC 寄存器地址(只需輸入純數(shù)字);數(shù)據(jù)區(qū)域為‘Script’時,設(shè)置為0;
<數(shù)據(jù)類型>:該數(shù)據(jù)的數(shù)據(jù)類型,字符串選擇為CHAR[n],數(shù)值型一般為INT16、DINT32、REAL32,需要與PLC 內(nèi)的定義對應(yīng);
<通訊端口>:智能網(wǎng)關(guān)上連接PLC 或儀表的物理端口,即當前數(shù)據(jù)所關(guān)聯(lián)的PLC 或儀表,連接的是網(wǎng)關(guān)上的哪個物理端口, USB 端口選擇‘串口1’ ;數(shù)據(jù)區(qū)域選擇為‘Script’時可設(shè)置為‘無’;
<IP/站號>:范圍0-255;對接串口設(shè)備時設(shè)置為站號;對接網(wǎng)絡(luò)設(shè)備時設(shè)置為IP 節(jié)點,即IP 地址的最后一段;
<任務(wù)組>:范圍0-255;用于分組功能,相同的值即為同一組,每一組打包成一個獨立的JSON 文件(相同組號的上報與下載會自動區(qū)分后分別打包);
<變化判斷>:當<上報周期>設(shè)置為0時,若勾選則在該數(shù)據(jù)有變化時執(zhí)行數(shù)據(jù)上報,否則該數(shù)據(jù)將在同組中別的條件滿足時一起執(zhí)行數(shù)據(jù)上報;勾選后還可以設(shè)置具體的附加執(zhí)行條件,具體查閱5.0章節(jié)。當<上報周期>不為0,或者或者智能網(wǎng)關(guān)只作為HTTP協(xié)議的服務(wù)端時,忽略該項參數(shù);
<初始值>:設(shè)定該行數(shù)據(jù)的常數(shù)或者初始值;其擴展功能查閱用戶手冊(下載地址)5.0 章節(jié)。
通過以上數(shù)據(jù)配置表,可以實現(xiàn)多種結(jié)構(gòu)JSON文件格式格式(MQTT與HTTP協(xié)議相同),相關(guān)配置舉例可查閱這篇文章:
https://blog.csdn.net/AutoCtrl666/article/details/138529550 軟件案例手冊:
軟件+案例+手冊.zip (4483 K) 下载次数:2 [ 此帖被autoctrl在2025-02-06 10:44重新編輯 ]