1 這里就是圖9中系統(tǒng)指定的高速計數(shù)器硬件識別號,這里填1
2 “1”為使能更新初值
3 “0”新初始值為0
至此程序編制部分完成,將完成的組態(tài)與程序下載到CPU后即可執(zhí)行,當前的計數(shù)值可在ID1000中讀出 ,關于高速計數(shù)器指令塊,若不需要修改硬件組態(tài)中的參數(shù),可不需要調用,系統(tǒng)仍然可以計數(shù)。
PWM功能簡介
PWM(脈沖寬度可調)是一種周期固定,脈寬可調節(jié)的脈沖輸出,如圖1示,PWM功能雖然使用的是數(shù)字量輸出,但其在很多方面類似于模擬量,比如它可以控制電機的轉速,閥門的位置等。S7-1200 CPU提供了兩個輸出通道用于高速脈沖輸出,分別可組態(tài)為PTO或PWM,PTO的功能只能由運動控制指令來實現(xiàn),PWM功能使用CTRL_PWM指令塊實現(xiàn),當一個通道被組態(tài)為PWM時,將不能使用PTO功能,反之亦然。
圖1所示為PWM原理
|
脈沖寬度可表示為脈沖周期的百分之幾(0-100%),千分之幾(0-1000),萬分之幾(0-10000)或S7 analog(模擬量)形式,脈寬的范圍可從0(無脈沖,數(shù)字量輸出為0)到全脈沖周期(無脈沖,數(shù)字量輸出為1 ) 。
|
1 脈沖周期 2 脈沖寬度
圖1 PWM原理
2 PWM功能組態(tài)
CPU的兩路脈沖發(fā)生器,使用特定的輸出點,如圖2所示,用戶可使用CPU集成輸出點或信號板的輸出點,表中所示為默認情況下的地址分配,用戶也可自己更改輸出地址,無論點的地址如何變化,PTO1/PWM1總是使用**組輸出,PTO2/PWM2使用緊接著的一組輸出,對于CPU集成點和信號板上的點都是如此。PTO在使用脈沖輸出時一般占用2個輸出點,而PWM只使用一個點,另個沒有使用的點可用作其它功能。
脈沖功能輸出點占用如圖2

圖2 脈沖功能輸出點占用
組態(tài)步驟
1. 進入Device Configuration(設備組態(tài))界面,選中CPU,點擊屬性,選中Pulse Generator(PTO/PWM)。如圖3

圖3進入設備組態(tài)
2. 組態(tài)脈沖發(fā)生器參數(shù),如圖4。

圖4 脈沖發(fā)生器組態(tài)
1 Pulse generator used as(脈沖輸出類型):用于選擇PTO或PWM輸出。
2 Output source(輸出源):選擇是CPU集成點輸出或信號板輸出。
3 Time Based(時基):Milliseconds(毫秒),Microseconds(微秒)
4 Pulse bbbbb format(脈寬形式):Hundredths(百分比),Thousandths(千分比),ten thousandths(萬分比),S7 analog format(S7模擬量)。
5 Cycle time(周期):脈沖的周期值只能在此修改。
6 Intial pulse bbbbb(初始脈寬)。
圖5所示為系統(tǒng)指定的硬件輸出點

圖5 PWM硬件輸出點
圖6為PWM所分地址

圖6 PWM脈寬調制地址
1 Start address(起始地址):此地址為WORD類型,用于存放脈寬值,用戶可在系統(tǒng)運行中實時修改此值達到修改脈寬的目的,默認情況下,PWM1使用QW1000,PWM2使用QW1002。
2 Process Image(過程映像區(qū)):由于脈寬值存放地址為過程映像區(qū),這里選擇更新方式,默認為周期更新。
3 HW ID(硬件識別號)。
3 PWM指令塊
S7-1200 CPU使用CTRL_PWM指令塊實現(xiàn)PWM輸出,如圖7.在使用此指令塊時需要添加背景數(shù)據(jù)塊,用于存儲參數(shù)信息。

圖7 PWM指令塊
PWM指令塊參數(shù)如表1
|
參數(shù)
|
數(shù)據(jù)類型
|
描述
|
|
PWM
|
WORD
|
填寫硬件識別號,即組態(tài)參數(shù)中的HW ID
|
|
Enbale
|
BOOL
|
1= 使能指令塊
|
|
0= 禁止指令塊
|
|
Busy
|
BOOL
|
功能應用中
|
|
Status
|
WORD
|
狀態(tài)顯示
|
表1 PWM指令塊參數(shù)
當EN端變?yōu)?時,指令塊通過Enable端使能或禁止脈沖輸出,脈沖寬度通過組態(tài)好的QW來調節(jié),當CTRL_PWM指令塊正在運行時,BUSY位將一直為0。
有錯誤發(fā)生時ENO端輸出為0,同時STATUS顯示錯誤狀態(tài),如圖2
|
Status 值
|
描述
|
|
0
|
無錯誤
|
|
80A1
|
硬件識別號(HW ID)非法
|
表2 錯誤狀態(tài)
4 應用舉例
使用模擬量控制數(shù)字量輸出,當模擬量值發(fā)生變換時,CPU輸出的脈沖寬度隨之改變,但周期不變,可用于控制脈沖方式的加熱設備。此應用通過PWM功能實現(xiàn),脈沖周期為1S,模擬量值在0-27648之間變化。
1硬件組態(tài)
在硬件組態(tài)中定義相關輸出點,并進行參數(shù)組態(tài),雙擊硬件組態(tài)選中CPU
定義IW64為模擬量輸入,輸入信號為0-10V DC。
PWM 參數(shù)組態(tài)如下
圖8所示為硬件參數(shù)組態(tài)

圖8 硬件參數(shù)組態(tài)
圖9所示為硬件輸出點與脈寬地址定義

圖9 硬件輸出點與脈寬地址
2建立變量
在變量表中建好變量,如圖10

圖10 PWM示例建立變量
3程序編制
在定義完變量后,打開OB1,從指令列表中將CTRL_PWM指令塊拖入編輯器中,并定義背景數(shù)據(jù)塊,*后添加模擬量賦值程序。如圖11

圖11 PWM示例程序編制
4監(jiān)控
在狀態(tài)表中監(jiān)控變量如圖12,使能PWM_Enable,通過外部模擬電位計,改變輸入電壓“Analog_bbbbb”值,脈沖以1S的固定周期,脈寬隨“Pulse bbbbb”變化。

圖12 PWM示例監(jiān)控變量
S7-1200 存儲卡使用
1 S7-1200 存儲卡介紹
S7-1200 CPU 使用的存儲卡為 SD 卡,存儲卡中可以存儲用戶項目文件,有如下四種功能:
-
作為 CPU 的裝載存儲區(qū),用戶項目文件可以僅存儲在卡中,CPU 中沒有項目文件,離開存儲卡無法運行。
-
在有編程器的情況下,作為向多個S7-1200PLC 傳送項目文件的介質。
-
忘記密碼時,** CPU 內部的項目文件和密碼。
-
24M卡可以用于更新S7-1200CPU 的固件版本。

圖. 1: S7-1200 存儲卡
怎樣插入存儲卡:
將CPU上擋板向下掀開,可以看到右上角有一 MC 卡槽,將存儲卡缺口向上插入,如下圖所示:

圖. 2: 插入存儲卡
注意
-
對于 S7-1200 CPU ,存儲卡不是必須的。
-
將存儲卡插到一個運行狀態(tài)的 CPU 上,會造成 CPU 停機。
-
S7-1200 CPU 僅支持由西門子制造商預先格式化過的存儲卡, 存儲卡訂貨號如下表所示:
|
訂貨
|
容量
|
|
6ES7 954-8LF01-0AA0
|
24MB
|
|
6ES7954-8LC01-0AA0
|
4MB
|
|
6ES7 954-8LB01-0AA0
|
2MB
|
表 1: 存儲卡信息
2 存儲卡的工作模式
存儲卡有兩種工作模式:
-
程序卡:存儲卡作為S7-1200 CPU 的裝載存儲區(qū),所有程序和數(shù)據(jù)存儲在卡中,CPU 內部集成的存儲區(qū)中沒有項目文件,設備運行中存儲卡不能被拔出 。
-
傳輸卡:用于從存儲卡向 CPU 傳送項目,傳送完成后必須將存儲卡拔出。CPU 可以離開存儲卡獨立運行。
修改存儲卡的工作模式:
在STEP 7 Basic 軟件的項目視圖下,點擊左側"項目視圖“--->"SIMATIC Card Reader" --->,如下圖所示:

圖. 3: 項目視圖
右擊存儲卡的盤符(這里是F:),選擇“屬性”按鈕,打開下面窗口:

圖. 4: 存儲卡屬性
用戶在“存儲卡類型”中選擇需要的工作模式,點擊“確認”完成設定。
3 程序卡的不同模式
優(yōu)點:更換 CPU 時不需要重新下載項目文件。
3.1 上載用戶文件到存儲卡
-
**步: 按照上面方法將存儲卡設定到“編程”模式。建議客戶做此操作之前**存儲卡中的所有文件。
-
**步: 設置 CPU 的啟動狀態(tài)。在"項目樹"中右擊 CPU 選擇“屬性”,在“屬性”窗口中點擊“啟動”,此處我們必須選擇“暖啟動-RUN 模式”。

圖. 5: 啟動
-
第三步: 將 CPU 斷電
-
第四步: 將存儲卡插到 CPU 卡槽內
-
第五步: 將 CPU 上電
-
第六步: 在 STEP 7 Basic 中點擊下載,將項目文件全部下載到存儲卡中。此時下載是將項目文件(包括用戶程序、硬件組態(tài)和強制值)下載到存儲卡中,而不是 CPU 內部集成的存儲區(qū)中。
完成上述步驟后,CPU可以帶卡正常運行。此時如果將存儲卡拔出,CPU 會報錯,"ERROR"紅燈閃爍。
3.2 常見問題
FAQ 1
為什么插上存儲卡后 CPU 的“MAINT”燈閃爍,使用STEP 7 Basic下載時提示報錯“The download of the hardware configuration failed (0050 -133 2 2458)”?
回答
請**存儲卡中的所有文件,重新使用STEP7 Basic軟件將存儲卡設置到“編程”模式,然后再重復上述步驟。請您也檢查存儲卡上的撥碼開關,檢查存儲卡是否處于寫保護模式。