首页
/
每日頭條
/
科技
/
怎樣添加profinet模塊
怎樣添加profinet模塊
更新时间:2025-07-12 11:36:08

前幾天讀書群中有小夥伴提出一個實際項目的客戶需求:在HMI屏幕上顯示當前系統的子站狀态,比如哪些站點已經組态?哪些站點在報錯?這涉及到如何對PROFINET子站進行診斷。今天這篇文章,我給出一種解決方案。

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)1

在西門子S7-1200/1500硬件條件下,我們可以使用診斷指令“DeviceStates”來實現對子站的診斷功能,具體方法如下:

在博途指令列表的“擴展指令”→“診斷”中找到DeviceSTATEs指令,其基本語法如下:

DeviceStates(LADDR:=_hw_iosystem_in_, MODE:=_uint_in_, STATE:=_variant_inout_)

指令中各參數含義如下表所示:

名稱

類别

數據類型

說明

LADDR

輸入

HW_IOSYSTEM

PROFINET IO硬件标識符

MODE

輸入

UInt

要讀取的狀态信息類别

STATE

輸入/輸出

Variant

狀态緩存區

參數MODE有如下幾種取值:

  • 1=已經組态的I/O設備;
  • 2=出現故障的I/O設備;
  • 3=被禁用的I/O設備;
  • 4=存在的I/O設備或者說找到的I/O設備;
  • 5=出問題的I/O設備,比如不可用,不可訪問的;

STATE是布爾型數組,其第0個元素表示組的狀态,若其值=1,則表示數組中至少有一個數據滿足查詢要求;從1個元素開始,表示相應編号的子站是否滿足查詢要求,1=滿足,0=不滿足。

回到文章開頭的問題,我們使用DeviceStates來查詢三種狀态:已經組态的子站(MODE=1)、成功找到的子站(MODE=4)及出現故障的子站(MODE=2),将指令執行的結果存放到全局數據塊中。

為了方便,新建用戶自定義數據類型:typeNetDiagnostic,它是布爾型數組,如下圖所示:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)2

新建全局數據塊NetDiagnosticDB,其元素IODeviceState是有三個元素的數組,其數據類型為用戶自定義類型typeNetDiagnostic,如下圖所示:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)3

新建函數塊FB5009_NetDiagnostic,其參數如下:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)4

代碼如下:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)5

在主程序中調用該函數塊,并對參數進行賦值,代碼如下:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)6

說明:參數“270”是當前組态的PROFINET的硬件标識符。

編譯下載程序運行,在線查看運行結果。

在我的當前系統中組态了三個子站,站号分别是11,13和16,如下圖所示:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)7

已經成功找到的站點也是11,13和16 ,如下圖所示:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)8

出故障/在報錯的站點是11,如下圖所示:

怎樣添加profinet模塊(怎樣編程實現對PROFINET子站的診斷)9

這樣就可以通過觸摸屏(HMI)向外展現站點的診斷信息,可以通過動畫演示,讓人一目了然的看到所有站點的狀态。

好了,關于PROFINET子站的診斷就先介紹到這裡。我的書《西門子S7-1200/1500 PLC SCL語言編程 ——從入門到精通》的第11.5.3節也對這個指令有詳細的介紹,還配有相關的視頻。如果你感興趣的話,可以看看下面的鍊接:

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
電腦所有東西都變大了
電腦所有東西都變大了
以Windows7操作系統為例。原因:分辨率問題。解決方法:首先打開電腦,在電腦桌面中點擊右鍵,在彈出窗口中點擊“個性化”。在個性化頁面點擊左下角的“顯示”,進入顯示頁面。在顯示頁面閱讀屏幕内容的選項中選擇“較小”,這樣屏幕中的文字就不會顯得特别突兀。在顯示頁面點擊“調整分辨率”,進入分辨率設置界面。在屏幕分辨率界面将方向調整為“橫向”,一般的電腦屏幕都是橫屏。将分辨率調整為系統推薦的最佳分辨率,
2025-07-12
蘋果手機照片圖标怎麼恢複
蘋果手機照片圖标怎麼恢複
演示機型:Iphone12系統版本:iOS14.41、首先打開手機,在桌面上打開iPhone手機設置,在設置界面找到通用。2、通用界面拉到最下方選擇還原。3、在此界面選擇還原主屏幕布局。4、點擊還原主屏幕即可恢複照片圖标。蘋果手機使用小技巧:1、計算器妙用:iPhone手機裡的計算機,平時都是用來進行一些簡單的加減乘除。隻要将計算機橫向過來,就能開啟科學計算器,一些方程式、解根号等複雜運算,也能在
2025-07-12
vivo手機清理内存
vivo手機清理内存
1、首先我們可以清理後台的程序,給手機騰出更多的運行空間,當你手機運行程序過多的時候,也會使手機變卡...
2025-07-12
蘋果手機進水了沒聲音怎麼辦
蘋果手機進水了沒聲音怎麼辦
1、盡快斷電,把手機上的水甩幹淨,注意要把屏幕内的水甩出來,如果屏幕殘留有水滴幹後會有痕迹。2、如果...
2025-07-12
可燃冰能幫我們封存大氣中的二氧化碳嗎
可燃冰能幫我們封存大氣中的二氧化碳嗎
生物學家發覺,CO2能夠像甲烷氣體那般,與氧分子緊密聯系一起,産生這種固态硬盤的非可燃冰,也可稱之為CO2水合物,有機化學化學式為CO2·6H2O。或許,這類冰不是可以點燃的。由于當它溶解時,造成的是二氧化碳并非甲烷氣體。一直以來,地球大氣層宛如1個極大的有機廢氣搜集袋,沒有理由地收納整理了很多由煤碳、原油和燃氣等化石能源點燃造成的二氧化碳。空氣中的CO2含水量從工業大爆發前的280
2025-07-12
Copyright 2023-2025 - www.tftnews.com All Rights Reserved