6ES72315PA300XB0西門(mén)子CPU緊湊型
西門(mén)子S7-1200/1500PLC的AT覆蓋變量是什么意思?
如何建立覆蓋變量?
AT是博途軟件中使用的一個(gè)關(guān)鍵字,代表覆蓋變量的聲明。
要訪問(wèn)聲明變量?jī)?nèi)的數(shù)據(jù)區(qū)域,可以通過(guò)附加聲明來(lái)覆蓋所聲明的變量,這樣可以選擇對(duì)不同數(shù)據(jù)類(lèi)型的已聲明變量進(jìn)行尋址。常用的就是使用 BOOL (位)的 ARRAY(數(shù)組) 對(duì) WORD(字) 數(shù)據(jù)類(lèi)型變量的各個(gè)位尋址。
博途軟件中對(duì)“覆蓋變量"的操作步驟作如下描述:
▼ 覆蓋變量操作步驟

實(shí)際操作中,步,應(yīng)該注意塊的狀態(tài)為標(biāo)準(zhǔn)訪問(wèn)代碼塊,即把“優(yōu)化的塊訪問(wèn)"前面的綠色“√"去掉。如不去掉這個(gè),應(yīng)具有保留設(shè)置“在IDB中設(shè)置"的變量代碼塊中。
▼ 覆蓋變量的適應(yīng)條件

步,在需要覆蓋的變量緊接著下面增加一行。
▼ 在被覆蓋變量下添加變量行

覆蓋變量說(shuō)白了,這個(gè)“蓋子"只能剛好蓋住,或蓋一部分。覆蓋變量是被覆蓋變量的子集。
使用AT還就注意:
不可以覆蓋VARIANT和INSTANCE數(shù)據(jù)類(lèi)型的變量。
無(wú)法覆蓋庫(kù)中聲明為接口中參數(shù)的塊
在FC中使用AT,覆蓋變量和被覆蓋變量的數(shù)據(jù)長(zhǎng)度必須相同。
如果被覆蓋變量的數(shù)據(jù)類(lèi)型為字符串、字節(jié)數(shù)組、字符數(shù)組等,那么其長(zhǎng)度應(yīng)與偶數(shù)個(gè)字節(jié)數(shù)對(duì)應(yīng)。
今天就以西門(mén)子 S7-1200PLC 高速計(jì)數(shù)器為主以及實(shí)例來(lái)做講解,S7-1200 CPU 提供了多 6 個(gè)(1214C )高速計(jì)數(shù)器 ,其獨(dú)立于 CPU 的掃描周期進(jìn)行計(jì)數(shù)。
可測(cè)量的單相脈沖頻率高為 100KHz ,雙相或 A/B 相高為 30KHz ,除用來(lái)計(jì)數(shù)外還可用來(lái)進(jìn)行頻率測(cè)量,高速計(jì)數(shù)器可用于連接增量型旋轉(zhuǎn)編碼器,用戶(hù)通過(guò)對(duì)硬件組態(tài)和調(diào)用相關(guān)指令塊來(lái)使用此功能。
一、高速計(jì)數(shù)器工作模式
高速計(jì)數(shù)器定義為 5 種工作模式
1、計(jì)數(shù)器,外部方向控制 。
2、單相計(jì)數(shù)器,內(nèi)部方向控制 。
3、雙相增 /減計(jì)數(shù)器,雙脈沖輸入。
4、5A/B 相正交脈沖輸入。
5、監(jiān)控 PTO 輸出。
每種高速計(jì)數(shù)器有兩種工作狀態(tài)。
1、外部復(fù)位,無(wú)啟動(dòng)輸入。
2、內(nèi)部復(fù)位,無(wú)啟動(dòng)輸入。
所有的計(jì)數(shù)器無(wú)需啟動(dòng)條件設(shè)置,在硬件向?qū)е性O(shè)置完成后下載到 CPU 中即可啟動(dòng)高速計(jì)數(shù)器,在 A/B 相正交模式下可選擇 1X(1 倍) 和 4X(4 倍)模式,高速計(jì)數(shù)功能所能支持的輸入電壓為 24V DC, 目前不支持 5V DC 的脈沖輸入,表 8-1 列出了高速計(jì)數(shù)器的硬件輸入定義和工作模式。
并非所有的 CPU 都可以使用 6 個(gè)高速計(jì)數(shù)器,如 1211C 只有 6 個(gè)集成輸入點(diǎn),所以多只能支持 4 個(gè)(使用信號(hào)板的情況下)高速計(jì)數(shù)器。
由于不同計(jì)數(shù)器在不同的模式下,同一個(gè)物理點(diǎn)會(huì)有不同的定義,在使用多個(gè)計(jì)數(shù)器時(shí)需要注意不是所有計(jì)數(shù)器可以同時(shí)定義為任意工作模式。
高速計(jì)數(shù)器的輸入使用與普通數(shù)字量輸入相同的地址,當(dāng)某個(gè)輸入點(diǎn)已定義為高速計(jì)數(shù)器的輸入點(diǎn)時(shí),就不能再應(yīng)用于其它功能,但在某個(gè)模式下,沒(méi)有用到的輸入點(diǎn)還可以用于其它功能的輸入監(jiān)控 PTO 的模式只有 HSC1 和 HSC2 支持,使用此模式時(shí),不需要外部接線, CPU 在內(nèi)部已作了硬件連接,可直接檢測(cè)通過(guò) PTO 功能所發(fā)脈沖。
二、高速計(jì)數(shù)器尋址
CPU 將每個(gè)高速計(jì)數(shù)器的測(cè)量值,存儲(chǔ)在輸入過(guò)程映像區(qū)內(nèi),數(shù)據(jù)類(lèi)型為 32 位雙整型有符號(hào)數(shù),用戶(hù)可以在設(shè)備組態(tài)中修改這些存儲(chǔ)地址,在程序中可直接訪問(wèn)這些地址,但由于過(guò)程映像區(qū)受掃描周期影響,在一個(gè)掃描周期內(nèi),此數(shù)值不會(huì)發(fā)生變化,但高速計(jì)數(shù)器中的實(shí)際值有可能會(huì)在一個(gè)周期內(nèi)變化,用戶(hù)可通過(guò)讀取外設(shè)地址的方式,讀取到當(dāng)前時(shí)刻的實(shí)際值。以 ID1000 為例,其外設(shè)地址為“ ID1000 :P"。表 8-2 所示為高速計(jì)數(shù)器尋址列表
三、頻率測(cè)量
S7-1200 CPU 除了提供計(jì)數(shù)功能外,還提供了頻率測(cè)量功能,有 3 種不同的頻率測(cè)量周期: 1.0 秒, 0.1 秒和 0.01 秒,頻率測(cè)量周期是這樣定義的:計(jì)算并返回新的頻率值的時(shí)間間隔。返回的頻率值為上一個(gè)測(cè)量周期中所有測(cè)量值的平均,無(wú)論測(cè)量周期如何選擇,測(cè)量出的頻率值總是以 Hz( 每秒脈沖數(shù) )為單位。
五、應(yīng)用舉例
為了便于理解如何使用高速計(jì)數(shù)功能,通過(guò)一個(gè)例子來(lái)學(xué)習(xí)組態(tài)及應(yīng)用。
假設(shè)在旋轉(zhuǎn)機(jī)械上有單相增量編碼器作為反饋,接入到 S7-1200 CPU, 要求在計(jì)數(shù) 25 個(gè)脈沖時(shí),計(jì)數(shù)器復(fù)位,并重新開(kāi)始計(jì)數(shù),周而復(fù)始執(zhí)行此功能。
針對(duì)此應(yīng)用,選擇 CPU 1214C ,高速計(jì)數(shù)器為: HSC1 。模式為:?jiǎn)蜗嘤?jì)數(shù),內(nèi)部方向控制,無(wú)外部復(fù)位。據(jù)此,脈沖輸入應(yīng)接入 I0.0 ,使用 HSC1 的預(yù)置值中斷( CV=RV )功能實(shí)現(xiàn)此應(yīng)用。
組態(tài)步驟:
先在設(shè)備與組態(tài)中,選擇 CPU ,單擊屬性,激活高速計(jì)數(shù)器,并設(shè)置相關(guān)參數(shù)。此步驟必須實(shí)現(xiàn)執(zhí)行, 1200 的高速計(jì)數(shù)器功能必須要先在硬件組態(tài)中激活,才能進(jìn)行下面的步驟
添加硬件中斷塊,關(guān)聯(lián)相對(duì)應(yīng)的高速計(jì)數(shù)器所產(chǎn)生的預(yù)置值中斷
在中斷塊中添加高速計(jì)數(shù)器指令塊,編寫(xiě)修改預(yù)置值程序,設(shè)置復(fù)位計(jì)數(shù)器等參數(shù)
將程序下載,執(zhí)行功能
1、硬件組態(tài)
選中 CPU 如圖 8-6
圖 3 所示為選擇屬性打開(kāi)組態(tài)界面
激活高速計(jì)數(shù)功能如圖 4
計(jì)數(shù)類(lèi)型,計(jì)數(shù)方向組態(tài)如圖 5 所示
1 此處計(jì)數(shù)類(lèi)型分為 3 種, Axis of motion( 運(yùn)動(dòng)軸 ),F(xiàn)requency (頻率測(cè)量),Counting( 計(jì)數(shù) )。這里選擇 Counting
2 模式分為 4 種: Single phase( 單相 ), Two phase (雙相) , AB Quadrature 1X(A/B 相正交 1 倍速) , AB Quadrature 4X (A/B 相正交 4 倍速)。這里擇 Single phase
3 輸入源,這里使用的為 CPU 集成輸入點(diǎn)。
4 計(jì)數(shù)方向選擇,這里選用 User program (internal direction control) (內(nèi)部方向控制)
5 初始計(jì)數(shù)方向。這里選擇 Count up (向上計(jì)數(shù))
初始值及復(fù)位組態(tài)如圖 6
預(yù)置值中斷組態(tài)如圖 7
組態(tài)添加的硬件中斷,如圖 8-13 有圖
地址分配與硬件識(shí)別號(hào)如圖 9
至此硬件組態(tài)部分已經(jīng)完成,下面進(jìn)行程序編寫(xiě)
2、程序編寫(xiě)
將高速計(jì)數(shù)指令塊添加到硬件中斷中
圖 12 定義高速計(jì)數(shù)器背景數(shù)據(jù)塊
程序視圖如圖 13
1 這里就是圖 9 中系統(tǒng)的高速計(jì)數(shù)器硬件識(shí)別號(hào),這里填 1
2 “1"為使能更新初值
3 “0"新初始值為 0
至此程序編制部分完成,將完成的組態(tài)與程序下載到 CPU 后即可執(zhí)行,當(dāng)前的計(jì)數(shù)值
可在 ID1000 中讀出 ,關(guān)于高速計(jì)數(shù)器指令塊,若不需要修改硬件組態(tài)中的參數(shù),可不需要調(diào)用,系統(tǒng)仍然可以計(jì)數(shù)。
6ES72315PA300XB0西門(mén)子CPU緊湊型