浙江西門子S7-200SMARTPLC代理批發(fā)銷售
西門子S7-200 PLC脈沖輸出指令幾個(gè)相關(guān)概念的解釋
(1) PWM的同步更新和異步更新
①同步更新:如果不需更改時(shí)基,即可以執(zhí)行同步更新。執(zhí)行同步更新,波形特征的變化發(fā)生在循環(huán)邊緣,提供平滑轉(zhuǎn)換。

②異步更新:PWM操作一般都是同步更新,即只改變脈沖寬度,不改變脈沖的周期;但是一定要改變時(shí)基的話,就只能使用異步更新。異步更新使PTO/PWM發(fā)生器立即暫停。強(qiáng)迫與PWM波形異步一直達(dá)到的時(shí)基,這樣可能造成控制設(shè)備的狀態(tài)暫時(shí)不穩(wěn)從而引起抖動。
(2)判斷PTO輸出脈沖串完成與否有兩種方法
①由監(jiān)控特殊繼電器(SM66.7或者SM76.7)中的PTO空閑位狀態(tài)可以知道編程脈沖串是否已經(jīng)完成。
②可在單段脈沖串(或多段脈沖串)完成時(shí)激活中斷程序。
脈寬調(diào)制輸出(PWM)是提供周期與脈沖寬度可以由用戶控制的輸出。脈沖也是從Q0.0或者是Q0.1輸出,但是脈沖的寬度是可以調(diào)整的,如圖6-48所示。
圖6-48 脈寬調(diào)制輸出波形
以上兩種輸出是同一條指令PLS。指令的形式如圖6-49所示。該指令的操作數(shù)是常量,只有0或者1,表示從Q0.0或者是Q0.1輸出。從圖中可以看到,該條指令其形式是比較簡單的,但是它的運(yùn)用就不是那么簡單了,指令運(yùn)行的狀態(tài),相關(guān)的控制,脈沖的數(shù)量、周期等都要有相關(guān)的輔助繼電器控制。具體見表6-32和表6-33。

脈沖鏈輸出(PTO)是提供周期與脈沖數(shù)目可以由用戶控制的占空比為50%的方波脈沖輸出,用于控制從Q0.0或者Q0.1輸出脈沖,脈沖波形如圖6-47所示。
圖6-47 脈沖鏈輸出波形
用戶在使用高速計(jì)數(shù)器時(shí),需要根據(jù)相關(guān)的特殊存儲器的意義來編寫初始化程序和中斷程序。這些程序的編寫既繁瑣又容易出錯,STEP 7-Micro/WIN編程軟件提供很強(qiáng)的向?qū)Чδ?,使用向?qū)硗瓿赡承┕δ艿木幊碳群唵畏奖?,又不容易出錯。因此使用高速計(jì)數(shù)器的*步,就是利用向?qū)筛咚儆?jì)數(shù)器的初始化程序和中斷程序。以下選取表6-28中的12種模式里的幾種來舉例說明。
(1)應(yīng)用模式0舉例
執(zhí)行菜單命令“工具”→“指令向?qū)?rdquo;,按照下面步驟設(shè)置高速計(jì)數(shù)器的參數(shù)。
選擇“HSC”(配置高速計(jì)數(shù)器),點(diǎn)擊“下一步”;在第二頁選擇計(jì)數(shù)器為“HSC1”,模式為“模式0”,點(diǎn)擊“下一步”;使用默認(rèn)的子程序名稱“HSC_INIT”,其預(yù)設(shè)值設(shè)為“30”,當(dāng)前值設(shè)為“0”,初始計(jì)數(shù)方向“向上”,點(diǎn)擊“下一步”;勾選“當(dāng)前值等于預(yù)設(shè)值”選項(xiàng),使用默認(rèn)的中斷名稱“COUNT_EQ”,編程步設(shè)為“1”后點(diǎn)擊“下一步”;勾選“更新預(yù)設(shè)值”、“更新當(dāng)前值”、“更新計(jì)數(shù)方向”3個(gè)選項(xiàng),設(shè)置“新PV=0”、“新CV=30”、“新方向向下”,點(diǎn)擊“下一步”,點(diǎn)擊“完成”。
設(shè)置完成后,系統(tǒng)就會根據(jù)上面的預(yù)設(shè)值,自動生成初始化配置高速計(jì)數(shù)器的子程序,如圖6-40 (a)所示,中斷程序如圖6-40 (b)所示,為了便于觀察,在中斷程序中增加輸出Q0.0。
為驗(yàn)證高速計(jì)數(shù)器的計(jì)數(shù),編寫主程序如圖6-40 (c)所示。“網(wǎng)絡(luò)1”開機(jī)調(diào)用子程序,“網(wǎng)絡(luò)2”將高速計(jì)數(shù)器的值移動到“VD0”中,“網(wǎng)絡(luò)3”使用一個(gè)普通的計(jì)數(shù)器與高速計(jì)數(shù)器進(jìn)行比較。
(2)應(yīng)用模式1舉例
從表6-28高速計(jì)數(shù)器的工作模式配置表可以看到,對于HSC1計(jì)數(shù)器其模式0和模式1的區(qū)別在于模式0沒有復(fù)位而模式1有復(fù)位,現(xiàn)在提出如果某當(dāng)前值為0,預(yù)設(shè)值為30,要求自0開始計(jì)數(shù)至30后自動復(fù)位到0,然后再重新計(jì)數(shù),如此循環(huán),這樣的話,模式0顯然就無法實(shí)現(xiàn),因此需要使用模式1來進(jìn)行程序設(shè)計(jì)。
按照模式0的設(shè)置步驟設(shè)置模式1的應(yīng)用。執(zhí)行菜單命令“工具”→“指令向?qū)?rdquo;,選擇計(jì)數(shù)器為“HSC1”,模式為“模式1”;下一步使用默認(rèn)的子程序名稱“HSC_INIT”,其預(yù)設(shè)值設(shè)為“30”,當(dāng)前值設(shè)為“0”,初始計(jì)數(shù)方向“向上”;下一步中就出現(xiàn)了兩個(gè)中斷程序,分別是“外部輸入有效時(shí)中斷”和“當(dāng)前值等于預(yù)設(shè)值中斷”,兩者都勾選并使用默認(rèn)名稱,編程步設(shè)為“1”;下一步中由于有復(fù)位進(jìn)行循環(huán)計(jì)數(shù),因此不需要設(shè)置,直接點(diǎn)“下一步”完成。

完成后系統(tǒng)生成子程序如圖6-41 (a)所示,當(dāng)前值等于預(yù)設(shè)值中斷程序如圖6-41 (c)所示,為便于觀察,增加輸出Q0.1,即當(dāng)CV=PV時(shí),Q0.1輸出。生成的外部中斷程序只有名稱,其內(nèi)容和條件需要編寫設(shè)置,如圖6-41 (b)所示,“網(wǎng)絡(luò)1”程序運(yùn)行時(shí)VB0自動加1,“網(wǎng)絡(luò)2”當(dāng)VB0等于2時(shí)復(fù)位,即把0傳送給VB0。
①選擇高速計(jì)數(shù)器(HSC0~HSC5)。不同的高速計(jì)數(shù)器信號輸入點(diǎn)不同,比如脈沖輸入、復(fù)位、啟動輸入等。
②選擇高速計(jì)數(shù)器的工作模式。不同的模式功能不同。比如單相計(jì)數(shù)、雙相計(jì)數(shù)、啟動復(fù)位控制等。
③高速計(jì)數(shù)器信號位的設(shè)置,SMB37、SMB47、SMB57、SMB137、SMB147、SMB157這些信號位是用于設(shè)置啟動、復(fù)位、更新當(dāng)前值、計(jì)數(shù)方向等。
④設(shè)置高速計(jì)數(shù)器設(shè)定值SMD38、SMD48、SMD58、SMD138、SMD148、SMD158。
⑤設(shè)置高速計(jì)數(shù)器當(dāng)前值SMD42、SMD52、SMD62、SMD142、SMD152、SMD162。
⑥讀取高速計(jì)數(shù)器的當(dāng)前值HC0、HC1、HC2、HC3、HC4、HC5。
每個(gè)高速計(jì)數(shù)器都有一個(gè)32位的當(dāng)前值和一個(gè)32位的設(shè)定值,當(dāng)前值和設(shè)定值均為帶符號的整數(shù)值。欲向高速計(jì)數(shù)器更新當(dāng)前值和設(shè)定值,必須設(shè)置包含當(dāng)前值和設(shè)定值的控制字節(jié)及特殊內(nèi)存字節(jié)。然后執(zhí)行HSC指令,將新數(shù)值傳輸至高速計(jì)數(shù)器。更新當(dāng)前值和設(shè)定值的特殊內(nèi)存字節(jié)見表6-30。
表6-30 更新當(dāng)前值與設(shè)定值的特殊內(nèi)存字節(jié)

定義了計(jì)數(shù)器和計(jì)數(shù)模式后,就可以為計(jì)數(shù)器設(shè)置動態(tài)參數(shù),每個(gè)高速計(jì)數(shù)器都有一個(gè)控制字節(jié),通過控制字節(jié)的位可以完成如下功能??刂莆徽f明如表6-29所示。
①啟用或禁用計(jì)數(shù)器。
②控制方向(*模式0、模式1和模式2)或初始化所有其他模式的計(jì)數(shù)方向。
⑧更新當(dāng)前值和設(shè)定值。
S7-200計(jì)數(shù)器的種類如圖6-38所示。HDEF指令的功能是為某個(gè)要使用的高速計(jì)數(shù)器選定一種工作模式。每個(gè)高速計(jì)數(shù)器在使用前都要用HDEF指令來定義工作模式,并且只能定義一次。

HSC指令是根據(jù)與高速計(jì)數(shù)器相關(guān)的特殊繼電器確定的控制方式和工作狀態(tài),使高速計(jì)數(shù)器的設(shè)置生效,按照的工作模式執(zhí)行計(jì)數(shù)操作。
PLS是高速脈沖輸出指令,其作用是使PLC的某些輸出端產(chǎn)生高速脈沖,用來驅(qū)動負(fù)載實(shí)現(xiàn)精確控制,比如控制伺服、步進(jìn)等系統(tǒng)。與之相關(guān)的指令還有PTO/PWM。
浙江西門子S7-200SMARTPLC代理批發(fā)銷售