西門子 S7-1200PLC 是一款優秀的可編程控制器,廣泛應于工業控制領域,是一款性能高,運行穩定的控制器。此次我們要把 S7-1200PLC?連接到 EMCP?物聯網云平臺(簡稱 EMCP),實現電腦 Web 網頁、手機 APP?和微信對S7-1200PLC(MW1000、MW1002、I0.0)寄存器的遠程監控和 MW1004?和Q0.0的遠程讀寫。
一、準備工作。
1.1?在對接前我們需準備如下物品;
1)?西門子 S7-1200?PLC?一臺,及通訊用 RJ45?網線。2)?西門子 CB?1241?RS485?模塊。3)?河北藍蜂科技的DTU?模塊一臺,天線和電源適配器(以下用 GM10-DTU 作為實例)。4)?SIM?卡一張,有流量,大卡(移動或聯通卡)。5)?聯網電腦一臺(WinXP/Win7/Win8/Win10?操作系統)。6)?電工工具,通訊線材等。
1.2?DTU?準備工作
此處參考《GM10-DTU?用戶使用手冊》進行操作,我們需要對 DTU?網關(WM10-DTU?網關的設置和 GM10?類似,以下均以 GM10-DTU 網關來介紹)連接天線、插上 SIM?卡(移動/聯通流量卡,大卡)、連接 12V?或 24V?的電源適配器。
1.3?PLC?準備工作。
全部設備不接電源,取下 S7-1200?面板上下兩個活動護板,將 CB1241?插入CB?槽內。將網線插入 PLC 的 PROFINET?網口,另一端插入電腦網口。CB1241?與 GM10?的連接按下圖連接,既,CB1241?的 T/RA 和TA?短接,一起接GM10?的485B;CB1241?的T/RB和TB?短接,一起接GM10?的485A。PLC?上電(220VAC), GM10?上電(12VDC?或 24VDC)。
二,PLC的modbus從站創建。
第一步,使用西門子的《TIA Portal》(以下簡稱博途)軟件,本文使用的軟件版本是 V14。將 S7-1200
和 CB1241 進行設備組態,如下圖:在設備組態中選擇 S7-1200,在屬性中的“系統和時鐘存儲器”,設置啟用系統存儲器字節,后面會用到,如下圖:
第二步,在程序塊中的 Main[OB1],添加 Modbus?通訊使能指令塊“MB_COMM_LOAD_DB”和從站功能指令塊“MB_SLAVE_DB”。在創建過程中會提示生成相應指令塊的背景數據塊,點確認進行生成。
注意:請使用指令中的“MODBUS”文件夾下的指令,不要使用“MODBUS(RTU)”中的指令。上面兩張圖中的指令設置的參數是:通過 RS485?通訊,波特率 9600,無奇偶校驗,數據位數 8,停止位1;PLC?從站號為2,保持寄存器區域起始地址為MW1000,長度為10?個字,即為MW1000?到MW1018。
注 2:如果想要試用 MODBUS 訪問全局數據塊(DB),需要滿足以下兩個條件: 首先:數據塊 DB 的屬性中的優化訪問必須取消;
然后:在 MB_SLAVE_DB 的寄存器指向中,使用指針指向該 DB 地址,如下圖
上圖設置的 MODBUS?從站參數是:通過 RS485 通訊,波特率 9600,無奇偶校驗,數據位數 8,停止位 1;PLC?從站號為 2,保持寄存器區域起始地址為 DB3.DBW0,長度為 10?個字,即為 DB3.DBW0?到DB3.DBW9。第三步,將修改好的程序下載到 PLC 中,此處需要注意,一定要使用“在線(O)”選項中的“下載并復位 PLC 程序”。
三,EMCP平臺設置。
用管理員賬號登錄EMCP?平臺www.lfemcp.com(建議使用 IE9?以上瀏覽器或谷歌瀏覽器),對 EMCP 云平臺進行設置。具體操作參照《EMCP?物聯網云平臺用戶手冊》。登錄 EMCP?后首先進入設備列表顯示頁面,因為我們未創建任何設備,所以是一個空頁面。點擊右上角的“后臺管理”按鈕(只有管理賬號才有此權限),進入EMCP?平臺的后臺。
3.1?遠程配置DTU
打開“后臺管理—>模塊管理”頁面,將 DTU?綁定至此管理員賬號,然后就可以使用“遠程配置”功能來配置DTU?的各項通訊參數和功能參數。最主要兩個地方需要配置,一是與 PLC?通訊的串口參數,二是設置DTU?定時采集PLC?數據的 MODBUS?通道參數,下面分步驟對此功能進行講解。
3.1.2?模塊遠程配置
模塊的遠程配置最好先“讀取”再“寫入”,只有寫入成功后才表示該參數成功配置到 DTU?中,“寫入”后也可以“讀取”以檢查之前的操作是否成功。如果不用模塊 DI?報警點則無需進行“短信設置”。
設備從站號:為模塊所連設備的 MODBUS 從站地址(范圍 1-250),此地址必須和設備從站地址一樣。要和PLC 設置的 MODBUS 從站號一致。
功能碼:為模塊讀取設備 MODBUS?寄存區的標志符。“功能碼 01”對應“線圈”(0XXXX),“功能碼 02”對應“離散量輸入”(1XXXX),“功能碼 03”對應“保持寄存器”(4XXXX),“功能碼 04” 對應“輸入寄存器”(3XXXX)。西門子?PLC?中,Q?點對應?01?功能碼,I?點對應?02?功能碼,MB_SLAVE_DB的 MB_HOLD_REG?指向的區域對應 03?功能碼(上文 PLC?程序指向的是 MW1000?到MW1018),AI?區對應 04?功能碼。
起始地址:為模塊所連設備的 MODBUS 寄存器讀取的起始地址(不包含寄存區標識符)。圖中 1 對應 40001。數據長度:為 DTU 讀取設備數據的連續長度,圖中的長度為 10,既連續讀取從 40001 到 40010 共10 個數據。標準DTU 可連接多個從站(最多 4 個),可點擊“新建”創建新子設備從站,配置規則按上述說明。結合上文 PLC 從站的建立,這里讀取的就是 40001 到 40010,也就是 40001 對應的 MW1000 到40010 對應的 MW1018,也即是上文中設置的西門子 1200PLC 內部的 MW1000 到 MW1019 寄存器中的數據。
注:當DTU?出現異常時,如無法連接網絡在線,或者無法與PLC?正常通訊,此時可以使用配置口(默認 RS232)連接 PC,使用“DTU?配置軟件”來查看狀態及異常報警,詳見《DTU?配置軟件使用手冊》。
3.2?新建數據規則
點擊網頁左側的“數據規則”進入規則設置頁面,點擊右上角的“新增”,在彈出的窗口中設置該數據規則的名稱“S7-1200”和展示樣式“列表展示”,我們可以選擇列表展示或組態展示,列表展示:我們所添加的數據會以固定的列表樣式展示,列表展示方式簡單方便(數據測試階段可選用列表展示)。組態展示:我們可以任意繪制設備數據的展示樣式比如添加圖形、圖片、儀表盤、柱狀填充和文字等內容(此功能類似傳統的組態軟件可參考《EMCP?平臺畫面組態使用說明》文檔)。數據規則新建完后點擊“實時數據”新增實時數據(3.1.2?中設置的 Modbus?配置),點擊“讀寫數據”創建平臺對設備手動讀寫操作的數據。創建規則展示如下。
注:實時數據:是 DTU 根據所配置的 Modbus 采集通道(參考上面的 3.1 介紹),按設定的采集間隔定時讀取從站數據并上傳到平臺所顯示的內容;讀寫數據:無需在 DTU 配置 Modbus 定時采集通道,可直接通過平臺對下位設備進行數據的手動讀寫操作;EMCP 平臺所有"寄存器地址"設置均不需要帶寄存器區標識符,如讀寫“保持寄存器”(03 功能
碼)中 40019 的數據,在平臺數據規則中的"寄存器地址"填寫 19 即可(注:如果設備 Modbus 地址計數是從 0 開始的,則需要做加 1 處理,即填寫 20) 。
報警設置,在創建好的實時數據中,點擊“報警”選項,進入報警設置頁面。我們可以設定該數據的報警上下限和報警內容以及是否啟用此報警。設定報警后當該數據超出報警上下限后平臺會自動記錄報警的時間和報警值,同時平臺會向用戶登錄的 APP 或微信推送報警消息。
3.4?新建設備
新建“設備”, 選擇菜單“設備管理”-> “新增”新建一個設備“西門子 S7-1200 ”。新建設備是填寫設備的基本信息,1 選擇設備匹配的圖片(從本地上傳,也可不選擇,系統會以默認圖片顯示);2?輸入模塊 SN,輸入要綁定的 SN?的編碼,如果此SN?之前未綁定,則會彈出綁定窗口進行綁定;3?選擇上面創建的數據規則;4?點擊“地圖”按鈕選擇設備所在的地理位置。完成后點擊“保存”。
fqj
評論
查看更多