1.概述
SIMATIC S7- 300有2種類型的計數器,一個是COUNTER類型,另一個是IEC_TC類型。
STEP 7將COUNTER以二進制數字存儲在字(16位)中。下圖1給出該參數類型的格式,輸入格式:C#xx,顯示的數據是BCD碼格式。
圖1Counter格式
2.在Step7中使用計數器
2.1 在Step7中使用COUNTER計數器
在Step7中,如圖2所示,舉例,從計數器指令庫拖拽指令S_CUD(雙向計數器)放入程序段中,給管腳填寫相關參數。
圖2Step7添加COUNTER計數器指令
S_CUD指令管腳參數如下表1。
參數 | 數據類型 | 存儲區 | 描述 |
C編號 | COUNTER | C | 計數器標識號;其范圍依賴于CPU |
CU | BOOL | I、Q、M、L、D | 升值計數輸入 |
CD | BOOL | I、Q、M、L、D | 降值計數輸入 |
S | BOOL | I、Q、M、L、D | 為預設計數器設置輸入 |
PV | WORD |
I、Q、M、L、D 或常數 |
將計數器值以"C#<值>"的格式輸入(范圍0至999) |
R | BOOL | I、Q、M、L、D | 復位輸入 |
CV | WORD | I、Q、M、L、D | 當前計數器值,十六進制數字 |
CV_BCD | WORD | I、Q、M、L、D | 當前計數器值,BCD碼 |
Q | BOOL | I、Q、M、L、D | 計數器狀態 |
表1S_CUD的管腳參數說明
給指令的S管腳發脈沖,將預設值PV傳到C0、CV和CV_BCD中。給CU管腳發脈沖進行增計數,給CD管腳發脈沖進行減計數,CV以十進制記錄當前計數器值。如圖3所示
圖3執行計數器C0工作
2.2 Step7中使用IEC_TC計數器
IEC _TC計數器一共有3種(SFB0、SFB1、SFB2),如圖4所示。拖拽指令SFB2放入程序段中,給管腳填寫相關參數。
圖4Step7添加IEC_TC計數器指令
SFB2功能塊管腳參數如下表2。
參數 | 聲明 | 數據類型 | 存儲區 | 描述 |
CU | INPUT | BOOL |
I、Q、M、D、L、 常數 |
遞增計數輸入。 |
CD | INPUT | BOOL |
I、Q、M、D、L、 常數 |
降值計數輸入 |
R | INPUT | BOOL |
I、Q、M、D、L、 常數 |
重置輸入。R優先于LOAD。 |
LOAD | INPUT | BOOL |
I、Q、M、D、L、 常數 |
加載輸入。LOAD優先于CU 和CD。 |
PV | INPUT | INT |
I、Q、M、D、L、 常數 |
預設值。LOAD輸入的信號級別為1時,將把 計數器設置為 預設值PV。 |
QU | OUTPUT | BOOL | I、Q、M、D、L |
遞增計數器的狀態:QU具有下列值:1,如果CV >PV 0,其它情況 |
QD | OUTPUT | BOOL | I、Q、M、D、L |
遞減計數器的狀態:QD具有下列值: 1,如果CV < 0 0,其它情況 |
CV | OUTPUT | INT | I、Q、M、D、L |
當前計數值 (允許值:-32 768到32 767) |
表2SFB2的管腳參數說明
下載程序,給LOAD (M200.4)發送脈沖,將預設值PV傳到CV (MW202)中。給CU (M200.0)管腳發脈沖進行增計數,給CD (M200.1)管腳發脈沖進行減計數,CV (MW202)以十進制記錄當前計數器值。如圖5所示。
圖5執行定時器SFB2工作
3. 在TIA Step7中使用計數器
3.1 TIA Step7中使用COUNTER計數器
在TIA Step7中,如圖6所示,舉例,從計數器操作指令庫拖拽指令S_ODTS放入程序段中,給管腳填寫相關參數。
圖6TIA Step7添加COUNTER計數器指令
該使用操作與Step7中的一樣,這里就不再過多贅述。
3.2 TIA Step7中使用IEC_TC計數器
如圖7所示,TIA Step7中的CTUD與Step7的SFB2稍有不同,沒有管腳EN和ENO。但是管腳使用操作與Step7中的也是一樣,這里就不再過多贅述。
圖7TIA Step7添加IEC計數器指令
審核編輯:劉清
-
計數器
+關注
關注
32文章
2256瀏覽量
94477 -
BCD編碼
+關注
關注
0文章
9瀏覽量
6019 -
S7-300
+關注
關注
8文章
225瀏覽量
34292
原文標題:S7-300 計數器的使用
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論