西門子S7-1200 高速計(jì)數(shù)周期測量功能說明:
CTRL_HSC_EXT 擴(kuò)展高速計(jì)數(shù)器指令
CTRL_HSC_EXT 擴(kuò)展高速計(jì)數(shù)器指令
在博途軟件集成的工藝指令文件夾中可以找到 CTRL_HSC_EXT 指令
全部 CTRL_HSC_EXT 指令都需要使用系統(tǒng)定義的數(shù)據(jù)結(jié)構(gòu)(存儲(chǔ)在用戶自定
義的全局背景數(shù)據(jù)塊中)存儲(chǔ)計(jì)數(shù)器數(shù)據(jù)。該數(shù)據(jù)塊要被指定用作
CTRL_HSC_EXT 的“CTRL”輸入?yún)?shù),其創(chuàng)建和使用步驟如下:
1.新添加一個(gè)全局 DB 塊
2.在此 DB 塊中找到一個(gè)空行,添加變量,
在此變量的數(shù)據(jù)類型一列,手動(dòng)輸入“HSC_Period”并回車。注意:數(shù)據(jù)
類型下拉控件里并沒有此類型,所以必須用戶正確輸入該名稱。
3.檢查新添加變量是否是一個(gè)可以擴(kuò)展的通信數(shù)據(jù)結(jié)構(gòu)。
4.在梯形圖 CTRL_HSC_EXT 指令的 CTRL 引腳上鏈接剛剛生成的數(shù)據(jù)塊變
量(例如“MYDB.my period”)。
HSC_Period 數(shù)據(jù)結(jié)構(gòu)如下圖所示
① ElapsedTime 返回當(dāng)前周期測量間隔最后一個(gè)脈沖和前一個(gè)周期測量間隔最
后一個(gè)脈沖之間的間隔時(shí)間(單位:納秒)。
若 EdgeCount = 0, 則 ElapsedTime 為自最后一個(gè)脈沖算起的累計(jì)時(shí)間。
ElapsedTime 的范圍為 0 至 4,294,967,280 納秒(0x0000 0000 至 0xFFFF
FFF0)。 返回值若為 429496295 (0xFFFF FFFF),則表示出現(xiàn)周期溢出。
自 0xFFFF FFF1 至 0xFFFF FFFE 的值為保留值。
如果 ElapsedTime 為 0 (沒有收到輸入脈沖)或 0xFFFF FFFF(出現(xiàn)周期
溢出),則 EdgeCount 中的值無效。
② EdgeCount 返回最近一個(gè)測量間隔的輸入脈沖的數(shù)量。 EdgeCount 必須大
于等于“1”才能計(jì)算脈沖之間的間隔時(shí)間。 該周期采用以下公式計(jì)算: