《電氣控制及S7-1200 PLC應(yīng)用技術(shù)》課件第4章 S7-1200 PLC基本指令及程序設(shè)計_第1頁
《電氣控制及S7-1200 PLC應(yīng)用技術(shù)》課件第4章 S7-1200 PLC基本指令及程序設(shè)計_第2頁
《電氣控制及S7-1200 PLC應(yīng)用技術(shù)》課件第4章 S7-1200 PLC基本指令及程序設(shè)計_第3頁
《電氣控制及S7-1200 PLC應(yīng)用技術(shù)》課件第4章 S7-1200 PLC基本指令及程序設(shè)計_第4頁
《電氣控制及S7-1200 PLC應(yīng)用技術(shù)》課件第4章 S7-1200 PLC基本指令及程序設(shè)計_第5頁
已閱讀5頁,還剩108頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1第4章S7-1200PLC基本指令及程序設(shè)計主要內(nèi)容:中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令4.2定時器與計數(shù)器指令4.3程序控制指令4.4數(shù)據(jù)處理指令4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令4.6PLC程序的基礎(chǔ)設(shè)計法及應(yīng)用實例位邏輯指令主要包括觸點和線圈指令、位操作指令和位檢測指令等17種

表4-1

基本邏輯指令2中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.觸點指令和線圈指令

觸點指令有常開和常閉觸點,線圈指令包括輸出線圈、取反線圈、置位輸出線圈及復(fù)位輸出線圈等,這些是構(gòu)成邏輯的基本元件和要素。(1)觸點指令常開觸點:其狀態(tài)取決于操作數(shù)bit對應(yīng)的映像寄存器狀態(tài)。當(dāng)映像寄存器的值為1時,常開觸點閉合;當(dāng)映像寄存器的值為0時,常開觸點斷開。常閉觸點:其狀態(tài)取決于操作數(shù)bit對應(yīng)的映像寄存器狀態(tài)。當(dāng)映像寄存器的值為1時,常閉觸點斷開;當(dāng)映像寄存器的值為0時,常閉觸點閉合。取反指令:對邏輯運(yùn)算結(jié)果(ResultofLogicOperation,RLO)的信號狀態(tài)進(jìn)行取反操作。如果該指令輸入為1,則輸出為0;如果該指令輸入為0,則輸出為1。3中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)(1)觸點指令舉例:I0.1映像寄存器的值為1時,常開觸點閉合,Q0.1線圈得電;M0.0映像寄存器的值為0時,常閉觸點閉合,M0.1線圈得電,取反后M0.2線圈失電。

注意:在輸入過程映像寄存器I地址的后面加“:P”(如I0.1:P),可以跳過輸入過程映像寄存器(不更新),立即直接讀取外部物理輸入狀態(tài)。4中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)(2)線圈指令輸出線圈:其狀態(tài)取決于線圈輸入端的邏輯運(yùn)算結(jié)果。如果線圈輸入的邏輯運(yùn)算結(jié)果為1,則輸出線圈得電,對應(yīng)映像寄存器的值寫入1;如果線圈輸入的信號狀態(tài)為0,則輸出線圈失電,對應(yīng)映像寄存器的值寫入0。取反線圈:其狀態(tài)取決于線圈輸入端的邏輯運(yùn)算結(jié)果的取反。如果線圈輸入的邏輯運(yùn)算結(jié)果為1,則輸出線圈失電,對應(yīng)映像寄存器的值寫入0;如果線圈輸入的信號狀態(tài)為0,則輸出線圈得電,對應(yīng)映像寄存器的值寫入1。舉例:5中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)(3)觸點串、并聯(lián)指令觸點串聯(lián)對應(yīng)于“與”邏輯。如果串聯(lián)回路中的所有觸點均閉合,該回路中有能流流過,即當(dāng)所有的輸入信號都為1,則輸出信號為1;只要輸入信號有一個不為1,則輸出信號為0。觸點并聯(lián)對應(yīng)于“或”邏輯。如果并聯(lián)回路中的一個或一個以上觸點閉合,該回路中有能流流過,即:只要有一個輸入信號為1,則輸出信號為1;所有輸入信號都為0,則輸出信號為0。舉例6中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.置位和復(fù)位指令置位(Set)和復(fù)位(Reset)指令的LAD形式及功能

表4-2

置位和復(fù)位指令的功能表7中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.置位和復(fù)位指令

(1)置位輸出、復(fù)位輸出指令使用置位輸出指令,可將指定操作數(shù)bit位的信號狀態(tài)置位為1,在對該位進(jìn)行復(fù)位操作前,其將保持置位狀態(tài)。線圈輸入端的邏輯運(yùn)算結(jié)果為1時,執(zhí)行該指令。使用復(fù)位輸出指令,可將指定操作數(shù)bit位的信號狀態(tài)復(fù)位為0,在對該位進(jìn)行置位操作前,其將保持復(fù)位狀態(tài)。線圈輸入端的邏輯運(yùn)算結(jié)果為1時,執(zhí)行該指令。舉例I0.0閉合后,Q0.0線圈被置位為1(始終得電);I0.1閉合后,Q0.0線圈被復(fù)位為0(始終失電)。8中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.置位和復(fù)位指令

(2)置位位域、復(fù)位位域指令使用置位位域指令,可對一塊連續(xù)位域中的所有位同時進(jìn)行置位。需要置位位域的首位地址和位數(shù)分別由操作數(shù)bit位和N值指定,若N值大于所選字節(jié)的位數(shù),則將對下一字節(jié)的位進(jìn)行置位。在對該N個位進(jìn)行復(fù)位操作前,它們將保持置位狀態(tài)。線圈輸入端的邏輯運(yùn)算結(jié)果為1時,執(zhí)行該指令。使用復(fù)位位域指令,可對一塊連續(xù)位域中的所有位同時進(jìn)行復(fù)位。需要復(fù)位位域的首位地址和位數(shù)分別由操作數(shù)bit位和N值指定,若N值大于所選字節(jié)的位數(shù),則將對下一字節(jié)的位進(jìn)行復(fù)位。在對該N個位進(jìn)行置位操作前,它們將保持復(fù)位狀態(tài)。線圈輸入端的邏輯運(yùn)算結(jié)果為1時,執(zhí)行該指令。9中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.置位和復(fù)位指令

(2)置位位域、復(fù)位位域指令

舉例I0.0和I0.1同時閉合后,M2.0、M2.1及M2.2三個線圈(M2.0開始的3個位)同時被置位為1,線圈保持得電狀態(tài);I0.0和I0.2同時閉合后,M2.0、M2.1及M2.2三個線圈同時被復(fù)位為0,線圈保持失電狀態(tài)。10中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.置位和復(fù)位指令

(3)使用說明對位元件來說,一旦被置位,就保持在通電狀態(tài),除非對它進(jìn)行復(fù)位;而位元件一旦被復(fù)位就保持在斷電狀態(tài),除非對它進(jìn)行置位;因此,置位/復(fù)位指令往往成對出現(xiàn)在同一程序中。S/R指令可以互換次序使用,但由于PLC采用循環(huán)掃描的工作方式,所以寫在后面的指令具有優(yōu)先權(quán)。在下圖中,若I0.0和I0.1同時閉合,則Q0.0線圈最終執(zhí)行復(fù)位操作而失電,對應(yīng)映像寄存器中的狀態(tài)為0。11中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)3.觸發(fā)器指令SR觸發(fā)器和RS觸發(fā)器指令的LAD形式及功能如表所示

表4-3

SR觸發(fā)器和RS觸發(fā)器指令的功能表

12中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)3.觸發(fā)器指令(1)SR觸發(fā)器

使用SR觸發(fā)器指令,可以對指定操作數(shù)bit進(jìn)行置位或復(fù)位操作。如果置位輸入信號S和復(fù)位輸入信號R1都為0,則不執(zhí)行該指令;如果置位輸入信號S和復(fù)位輸入信號R1只有一個有效(為1),則執(zhí)行有效輸入信號對應(yīng)的操作;如果置位輸入信號S和復(fù)位輸入信號R1同時有效(均為1),則優(yōu)先執(zhí)行復(fù)位操作。操作數(shù)bit的當(dāng)前狀態(tài)同步被傳送到輸出端Q。(2)RS觸發(fā)器指令

使用RS觸發(fā)器指令,可以對指定操作數(shù)bit進(jìn)行置位或復(fù)位操作。如果置位輸入信號S1和復(fù)位輸入信號R都為0,則不執(zhí)行該指令;如果置位輸入信號S1和復(fù)位輸入信號R只有一個有效(為1),則執(zhí)行有效輸入信號對應(yīng)的操作;如果置位輸入信號S1和復(fù)位輸入信號R同時有效(均為1),則優(yōu)先執(zhí)行置位操作。操作數(shù)bit的當(dāng)前狀態(tài)同步被傳送到輸出端Q。13中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)3.觸發(fā)器指令觸發(fā)器指令的真值表如表4-4所示。

表4-4觸發(fā)器指令的真值表14中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)3.觸發(fā)器指令舉例:I0.0和I0.1分別作為SR觸發(fā)器的置位輸入和復(fù)位輸入信號,對Q0.0線圈進(jìn)行優(yōu)先復(fù)位操作;I0.0和I0.1也分別作為RS觸發(fā)器的置位輸入和復(fù)位輸入信號,對Q0.1線圈進(jìn)行優(yōu)先置位操作;由時序圖可知:若只有I0.0有效,則Q0.0和Q0.1被置位;若只有I0.1有效,則Q0.0和Q0.1被復(fù)位;若I0.0和I0.1同時有效,則Q0.0被優(yōu)先復(fù)位、Q0.1被優(yōu)先置位。15中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令

當(dāng)信號狀態(tài)發(fā)生變化時,將產(chǎn)生跳變沿(上升沿或下降沿)。如圖所示,當(dāng)Q0.0線圈由0變?yōu)?時,產(chǎn)生一個正跳變的上升沿(EdgeUp);當(dāng)Q0.0線圈由1變?yōu)?時,產(chǎn)生一個負(fù)跳變的下降沿(EdgeDown)。S7-1200執(zhí)行邊沿指令時,在每個掃描周期中把信號狀態(tài)和它在上一掃描周期的狀態(tài)(存儲在邊沿存儲器位中)進(jìn)行比較,如果不同則表明出現(xiàn)了上升沿或下降沿。

16中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令信號邊沿指令的LAD形式及功能如表所示。

17中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(1)邊沿檢測觸點指令使用上升沿檢測觸點指令,可以根據(jù)操作數(shù)bit有無上升沿來控制觸點通斷。當(dāng)操作數(shù)bit出現(xiàn)上升沿時,該觸點導(dǎo)通一個掃描周期。邊沿存儲器位M_bit用于存放操作數(shù)bit在上一掃描周期的狀態(tài),通過比較操作數(shù)bit的當(dāng)前狀態(tài)與上一掃描周期的狀態(tài),來確定是否存在上升沿。使用下降沿檢測觸點指令,可以根據(jù)操作數(shù)bit有無下降沿來控制觸點通斷。當(dāng)操作數(shù)bit出現(xiàn)下降沿時,該觸點導(dǎo)通一個掃描周期。邊沿存儲器位M_bit用于存放操作數(shù)bit在上一掃描周期的狀態(tài),通過比較操作數(shù)bit的當(dāng)前狀態(tài)與上一掃描周期的狀態(tài),來確定是否存在下降沿。

18中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(1)邊沿檢測觸點指令使用說明:邊沿檢測觸點指令不能放在邏輯塊結(jié)束處。只能使用全局DB、FB中的靜態(tài)變量或位存儲區(qū)M作為邊沿存儲器位M_bit。邊沿存儲器位M_bit的地址在程序中只能使用一次,否則會導(dǎo)致結(jié)果出錯。

當(dāng)I0.0閉合且I0.1出現(xiàn)上升沿時,置位M2.0~M2.2;當(dāng)I0.2閉合且I0.3出現(xiàn)下降沿時,復(fù)位M2.0~M2.2。邊沿存儲器位M0.0和M0.1分別用以存放I0.1和I0.2在上一掃描周期的狀態(tài)。

19中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(2)邊沿檢測線圈指令使用上升沿檢測線圈指令,可以根據(jù)線圈輸入端信號有無上升沿來控制線圈通斷。當(dāng)線圈輸入信號出現(xiàn)上升沿時,操作數(shù)bit對應(yīng)的線圈導(dǎo)通一個掃描周期。邊沿存儲器位M_bit用于存放線圈輸入信號在上一掃描周期的狀態(tài),通過比較線圈輸入信號的當(dāng)前狀態(tài)與上一掃描周期的狀態(tài),來確定是否存在上升沿。使用下降沿檢測線圈指令,可以根據(jù)線圈輸入端信號有無下降沿來控制線圈通斷。當(dāng)線圈輸入信號出現(xiàn)下降沿時,操作數(shù)bit對應(yīng)的線圈導(dǎo)通一個掃描周期。邊沿存儲器位M_bit用于存放線圈輸入信號在上一掃描周期的狀態(tài),通過比較線圈輸入信號的當(dāng)前狀態(tài)與上一掃描周期的狀態(tài),來確定是否存在下降沿。

20中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(2)邊沿檢測線圈指令使用說明:邊沿檢測線圈指令可以放在邏輯塊中間或結(jié)束處。只能使用全局DB、FB中的靜態(tài)變量或位存儲區(qū)M作為邊沿存儲器位M_bit。邊沿存儲器位M_bit的地址在程序中只能使用一次,否則會導(dǎo)致結(jié)果出錯。邊沿檢測線圈指令放在邏輯塊中間時,不會影響邏輯塊的邏輯運(yùn)算結(jié)果,它將輸入端的邏輯運(yùn)算結(jié)果直接送給線圈的輸出端。

21中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(3)掃描RLO的邊沿指令使用掃描RLO的上升沿指令,可以根據(jù)指令輸入端的邏輯運(yùn)算結(jié)果RLO有無上升沿來控制輸出Q的通斷。當(dāng)輸入端RLO出現(xiàn)上升沿時,輸出Q導(dǎo)通一個掃描周期。邊沿存儲器位M_bit用于存放輸入端RLO在上一掃描周期的狀態(tài),通過比較輸入端RLO的當(dāng)前狀態(tài)與上一掃描周期的狀態(tài),來確定是否存在上升沿。使用掃描RLO的下降沿指令,可以根據(jù)指令輸入端的邏輯運(yùn)算結(jié)果RLO有無下降沿來控制輸出Q的通斷。當(dāng)輸入端RLO出現(xiàn)下降沿時,輸出Q導(dǎo)通一個掃描周期。邊沿存儲器位M_bit用于存放輸入端RLO在上一掃描周期的狀態(tài),通過比較輸入端RLO的當(dāng)前狀態(tài)與上一掃描周期的狀態(tài),來確定是否存在下降沿。22中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(3)掃描RLO的邊沿指令使用說明:掃描RLO的邊沿指令不能放在邏輯塊的開始和結(jié)束處。只能使用全局DB、FB中的靜態(tài)變量或位存儲區(qū)M作為邊沿存儲器位M_bit。邊沿存儲器位M_bit的地址在程序中只能使用一次,否則會導(dǎo)致結(jié)果出錯。

當(dāng)I0.0和I0.1相與的邏輯運(yùn)算結(jié)果為1時,CLK輸入端出現(xiàn)上升沿,置位Q0.0線圈;當(dāng)I0.2和I0.3相與的邏輯運(yùn)算結(jié)果為0時,CLK輸入端出現(xiàn)下降沿,復(fù)位Q0.0線圈。邊沿存儲器位M0.0和M0.1用以存放對應(yīng)指令的輸入端RLO在上一掃描周期的狀態(tài)。23中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(4)邊沿檢測功能塊指令使用上升沿檢測功能塊指令,可以在EN輸入端有效時,根據(jù)CLK輸入端的邏輯運(yùn)算結(jié)果RLO有無上升沿來控制輸出Q的通斷。CLK輸入端出現(xiàn)上升沿時,輸出Q導(dǎo)通一個掃描周期。CLK輸入端RLO在上一掃描周期的狀態(tài)保存在背景數(shù)據(jù)塊中。使用下降沿檢測功能塊指令,可以在EN輸入端有效時,根據(jù)CLK輸入端的邏輯運(yùn)算結(jié)果RLO有無下降沿來控制輸出Q的通斷。CLK輸入端出現(xiàn)下降沿時,輸出Q導(dǎo)通一個掃描周期。CLK輸入端RLO在上一掃描周期的狀態(tài)保存在背景數(shù)據(jù)塊中。24中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)4.信號邊沿指令(4)邊沿檢測功能塊指令使用說明:邊沿檢測功能塊指令本質(zhì)為功能塊FB,調(diào)用該指令時會自動生成背景數(shù)據(jù)塊。可利用EN輸入端啟用邊沿檢測功能,一般EN輸入端始終有效。

EN輸入端始終有效,當(dāng)I0.0和I0.1相與的邏輯運(yùn)算結(jié)果為由0變?yōu)?時,CLK輸入端出現(xiàn)上升沿,輸出M0.0線圈得電一個掃描周期。CLK輸入端RLO在上一掃描周期的狀態(tài)保存在背景數(shù)據(jù)塊DB1中。25中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)5.比較指令

26中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)5.比較指令實際應(yīng)用中,比較指令多用于實現(xiàn)數(shù)值大小比較和上、下限幅控制。

圖(a)中,當(dāng)計數(shù)器當(dāng)前值"C0".CV大于等于100時,置位Q0.0;當(dāng)MD0小于MD40的數(shù)值時,復(fù)位Q0.0。

圖(b)中,當(dāng)MD10中的操作數(shù)為實數(shù)時,并且MD20中的實數(shù)型操作數(shù)在[0.0,1.0]范圍時,將MD10與MD20的操作數(shù)相乘,并將結(jié)果存放在MD30中。27中國礦業(yè)大學(xué)徐海學(xué)院4.1位邏輯指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令

定時器指令用于完成與時間有關(guān)的控制要求,是PLC中最常用的指令之一。定時器在使用時需提前輸入設(shè)定值,啟動定時后,當(dāng)前值從0或上次的保持值開始增加,當(dāng)定時器的當(dāng)前值達(dá)到設(shè)定值后(定時時間到),定時器發(fā)生動作,進(jìn)而完成后續(xù)各種定時邏輯。

S7-1200PLC支持4種類型的功能塊型定時器和對應(yīng)的線圈型定時器,此外還包含更新設(shè)定值指令PT和復(fù)位定時器指令RT,如表4-7所示。

28中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令

表4-7

定時器指令

29中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令

功能塊型定時器中,TP、TON和TOF具有相同的輸入和輸出參數(shù),TONR定時器具有外部復(fù)位輸入?yún)?shù)R。各定時器指令的參數(shù)說明見表4-8。

表4-8

定時器指令參數(shù)說明

30中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(1)脈沖定時器TP

使用脈沖定時器指令,可以產(chǎn)生預(yù)設(shè)時間間隔的脈沖。上電周期或首次掃描時,定時器當(dāng)前值和輸出端Q均為0。輸入端IN出現(xiàn)上升沿后,輸出端Q導(dǎo)通;同時啟動定時器,當(dāng)前值ET由0增加,當(dāng)前值達(dá)到設(shè)定值PT時(定時時間到),輸出端Q斷開,即輸出端Q導(dǎo)通時間取決于設(shè)定值PT。使用說明:輸入端出現(xiàn)上升沿時,啟動定時器;在當(dāng)前值未達(dá)到設(shè)定之前,輸入端信號斷開或檢測到新的上升沿信號,均不會影響輸出端Q的導(dǎo)通時間。當(dāng)前值達(dá)到設(shè)定值PT時,如果輸入端IN為1,則當(dāng)前值保持在設(shè)定值;如果輸入端IN為0,則當(dāng)前值復(fù)位為0。

31中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(1)脈沖定時器TP

上圖中,為脈沖定時器TP指定了默認(rèn)名稱為“IEC_Timer_0_DB”的背景數(shù)據(jù)塊DB1(相當(dāng)于定時器的名字,該名稱可以根據(jù)需要修改,但只能指定給唯一的定時器)。I0.0出現(xiàn)上升沿時,Q0.0線圈維持得電。MD0中裝載定時器的當(dāng)前值,在當(dāng)前值未達(dá)到設(shè)定值5s之前,即使輸入端I0.0斷開或再次出現(xiàn)上升沿,對Q0.0線圈的得電時間均不產(chǎn)生影響。當(dāng)前值達(dá)到設(shè)定值后,輸出端Q斷開,Q0.0線圈失電,若此時I0.0仍閉合,當(dāng)前值維持在設(shè)定值;若I0.0斷開,則定時器復(fù)位。

32中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON

使用接通延時定時器指令,可以將輸出端Q延遲指定時間后導(dǎo)通。上電周期或首次掃描時,定時器當(dāng)前值和輸出端Q均為0。輸入端IN由0變?yōu)?(出現(xiàn)上升沿),啟動定時器,當(dāng)前值ET由0增加,當(dāng)前值達(dá)到設(shè)定值PT時(定時時間到),輸出端Q導(dǎo)通,即輸出端Q延遲導(dǎo)通時間取決于設(shè)定值PT。輸入端IN在任意時刻由1變?yōu)?時,定時器自動復(fù)位,當(dāng)前值為0,輸出端Q斷開。使用說明:輸入端IN斷開時,接通延時定時器將自動復(fù)位。該指令用于對單段時間進(jìn)行定時;并且為了保證定時時間到,輸入端IN的閉合時間應(yīng)不小于設(shè)定時間。當(dāng)前值達(dá)到設(shè)定值PT后,如果輸入端IN為1,則當(dāng)前值保持在設(shè)定值;如果輸入端IN為0,則當(dāng)前值復(fù)位為0。

33中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON

上圖中,為接通延時定時器TON指定了名稱為“數(shù)據(jù)塊_1.接通延時定時器”的全局DB變量。輸入端I1.0由OFF變?yōu)镺N后,啟動定時器,MD0中裝載的定時器當(dāng)前值由0開始增加,當(dāng)前值達(dá)到設(shè)定值后,輸出端Q接通,Q0.0線圈得電。輸入端I1.0由ON變?yōu)镺FF后,定時器復(fù)位,當(dāng)前值ET為0,輸出端Q斷開。

34中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON

【例4-1】按下啟動按鈕I0.0,延時10s后電動機(jī)Q0.0起動;按下停止按鈕I0.1,延時5s后電動機(jī)Q0.0停止。解:在設(shè)計時應(yīng)該注意以下兩點問題:①外部控制信號發(fā)出后,系統(tǒng)延時動作,需要用到定時器指令。采用TP、TON、TONR和TOF均能實現(xiàn)定時功能,本題選擇TON較為簡單。②外部按鈕默認(rèn)選擇為常開型的自復(fù)位按鈕,提供的是短脈沖型啟動信號,需要利用中間變量M將其轉(zhuǎn)化為長電平信號(可以用啟保停電路或置復(fù)位指令),以維持TON定時器線圈的持續(xù)得電。

35中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON

【例4-1】

36中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON【例4-2】要求TON定時時間到,產(chǎn)生寬度為單個掃描周期的脈沖。解:

例4-1采用啟保停結(jié)構(gòu)編寫的程序中,需要對定時器進(jìn)行及時、可靠復(fù)位。一般定時器定時時間到,我們將在下一掃描周期將其復(fù)位。具體做法是:

定時時間到,產(chǎn)生寬度為一個掃描周期的脈沖(如上例中的M10.0和M10.1),在下一掃描周期內(nèi),利用該脈沖的常閉觸點斷開,實現(xiàn)定時器的復(fù)位。注意:

S7-1200定時器的刷新(更新定時器當(dāng)前值)方式和S7-200、S7-300中的定時器刷新方式有所不同。

37中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON【例4-2】要求TON定時時間到,產(chǎn)生寬度為單個掃描周期的脈沖。解:S7-1200定時器在以下任一情況發(fā)生時均會更新當(dāng)前值:①程序執(zhí)行到功能塊型定時器的輸出端Q或ET時;②程序執(zhí)行到定時器的背景數(shù)據(jù)塊(或IEC_TIMER類型的變量)中的Q或ET時。

所以,如果程序中多次使用同一背景數(shù)據(jù)塊的輸出Q;或者既使用功能塊型定時器的Q或ET連接變量,又使用背景數(shù)據(jù)塊的Q,以上兩種情況都會造成定時器在一個掃描周期內(nèi)的多次更新,可能造成定時器不能正常使用的情況。

38中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON

39中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON【例4-2】要求TON定時時間到,產(chǎn)生寬度為單個掃描周期的脈沖。

圖中左側(cè)控制程序均可以產(chǎn)生單個掃描周期的脈沖,其思路是將輸出端Q和ET的狀態(tài)賦值給中間變量M0.0,并利用PLC周期性循環(huán)掃描的工作方式來產(chǎn)生單個掃描周期的脈沖。

圖中右側(cè)控制程序均不能可靠地產(chǎn)生一個掃描周期的脈沖。以(e)程序為例,結(jié)合S7-1200定時器的刷新方式,分為以下3種情況進(jìn)行討論:①如果定時器TON當(dāng)前值在執(zhí)行"DB1".Q常閉觸點之前達(dá)到設(shè)定值,在執(zhí)行該常閉觸點時將更新定時器,常閉觸點斷開,定時器TON復(fù)位,M0.0線圈無法得電。

40中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(2)接通延時定時器TON②如果當(dāng)前值在定時器TON指令到"DB1".Q常開觸點之間達(dá)到設(shè)定值,在執(zhí)行"DB1".Q常開觸點時將更新定時器,常開觸點閉合,M0.0線圈得電;下一掃描周期在執(zhí)行"DB1".Q常閉觸點時,再次更新,"DB1".Q常閉觸點斷開,定時器復(fù)位,M0.0線圈斷開,可以產(chǎn)生單個掃描周期的脈沖。③

如果當(dāng)前值在"DB1".Q常開觸點之后才達(dá)到設(shè)定值,本周期已無定時器指令或背景數(shù)據(jù)塊中的輸出端Q,待到下一掃描周期,與情況①相同,在執(zhí)行"DB1".Q常閉觸點時更新定時器,常閉觸點斷開,定時器TON復(fù)位,M0.0線圈無法得電。

可以看出,以上3種情況中,情況①和③一定無法產(chǎn)生單個掃描周期的脈沖;而情況②雖然可以滿足要求,但程序執(zhí)行在該情況下的可能性較小,無法滿足系統(tǒng)可靠性要求。

41中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(3)保持型接通延時定時器TONR

使用保持型接通延時定時器指令,可以將輸出端Q延遲指定的有效時間后導(dǎo)通。上電周期或首次掃描時,定時器當(dāng)前值和輸出端Q均為上次掉電前狀態(tài)。輸入端IN由0變?yōu)?時,啟動定時器,當(dāng)前值ET從上次的保持值繼續(xù)增加,當(dāng)前值達(dá)到設(shè)定值PT時,輸出端Q導(dǎo)通,即輸出端Q延遲導(dǎo)通的有效時間取決于設(shè)定值PT。輸入端IN由1變?yōu)?時,定時器停止計時并保持當(dāng)前值,待輸入端IN再次由0變?yōu)?時,當(dāng)前值繼續(xù)增加。使用說明:輸入端IN斷開時,保持型接通延時定時器不復(fù)位,而是停止在當(dāng)前狀態(tài)。該指令用于對多段時間進(jìn)行累計定時,可以實現(xiàn)某個設(shè)備的累計運(yùn)行時間;輸入端IN的單次閉合時間與設(shè)定時間無關(guān)。定時時間到后,當(dāng)前值保持在設(shè)定值,需要通過外部復(fù)位輸入端R對該定時器進(jìn)行手動復(fù)位。

42中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(3)保持型接通延時定時器TONR

上圖中,保持型接通延時定時器TONR定時時間為8s。輸入端I0.0每次由OFF變?yōu)镺N后,啟動定時器,MD0中的當(dāng)前值從上次保持值繼續(xù)增加;輸入端I0.0每次由ON變?yōu)镺FF后,暫停定時器,當(dāng)前值保持;當(dāng)前值達(dá)到設(shè)定值后,輸出端Q導(dǎo)通,Q0.0線圈保持得電。復(fù)位信號I0.1由OFF變?yōu)镺N后,定時器復(fù)位,當(dāng)前值為0,輸出端Q斷開。

43中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(3)保持型接通延時定時器TONR

上圖中,保持型接通延時定時器TONR定時時間為8s。輸入端I0.0每次由OFF變?yōu)镺N后,啟動定時器,MD0中的當(dāng)前值從上次保持值繼續(xù)增加;輸入端I0.0每次由ON變?yōu)镺FF后,暫停定時器,當(dāng)前值保持;當(dāng)前值達(dá)到設(shè)定值后,輸出端Q導(dǎo)通,Q0.0線圈保持得電。復(fù)位信號I0.1由OFF變?yōu)镺N后,定時器復(fù)位,當(dāng)前值為0,輸出端Q斷開。

44中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(4)斷開延時定時器TOF

使用斷開延時定時器指令,可以將輸出端Q延遲指定時間后斷開。上電周期或首次掃描時,定時器當(dāng)前值和輸出端Q均為0。輸入端IN由1變?yōu)?時,啟動定時器,當(dāng)前值由0增加,當(dāng)前值達(dá)到設(shè)定值PT時,輸出端Q斷開,即輸出端Q延遲斷開時間取決于設(shè)定值PT。輸入端IN在任意時刻由0變?yōu)?時,定時器自動復(fù)位,當(dāng)前值為0,輸出端Q導(dǎo)通。使用說明:輸入端IN閉合時,斷開延時定時器將自動復(fù)位。該指令用于對單段時間進(jìn)行定時,可以實現(xiàn)某個設(shè)備停機(jī)后的延時(如電動機(jī)停機(jī)后延時關(guān)閉風(fēng)機(jī));為了保證定時時間到,輸入端IN的斷開時間應(yīng)不小于設(shè)定時間。當(dāng)前值達(dá)到設(shè)定值PT后,如果輸入端IN為0,則當(dāng)前值保持在設(shè)定值;如果輸入端IN為1,則當(dāng)前值復(fù)位為0。

45中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(4)斷開延時定時器TOF

上圖中,斷開延時定時器TOF定時時間為4s。輸入端I0.0由OFF變?yōu)镺N后,定時器復(fù)位,MD0中裝載的定時器當(dāng)前值為0,輸出端Q接通,Q0.0線圈得電。輸入端I0.0由ON變?yōu)镺FF后,啟動定時器,當(dāng)前值由0開始增加,當(dāng)前值達(dá)到設(shè)定值后,輸出端Q斷開,Q0.0線圈失電。

46中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(5)線圈型定時器指令

對于同一類型的定時器,功能塊指令和線圈指令在原理上是完全一樣的,具體使用時有幾點細(xì)微區(qū)別:功能塊型定時器可以直接輸出Q或ET,程序中可以不必出現(xiàn)背景數(shù)據(jù)塊(或IEC_TIMER類型變量)中的Q或ET;而線圈型定時器必須首先自定義背景數(shù)據(jù)塊或IEC_TIMER類型變量,再調(diào)用輸出Q或ET。功能塊型定時器在使用時可以自動生成背景數(shù)據(jù)塊,也可選擇手動建立;而線圈型定時器只能手動建立所需的背景數(shù)據(jù)塊。線圈型定時器放在邏輯塊中間時,不會影響邏輯塊的邏輯運(yùn)算結(jié)果,它將輸入端的邏輯運(yùn)算結(jié)果直接送給線圈的輸出端。

47中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(5)線圈型定時器指令

上圖中,采用線圈型的TONR定時器對Q0.0進(jìn)行延時控制,假設(shè)I0.0代表電動機(jī)運(yùn)行信號,當(dāng)累積運(yùn)行5s后,定時時間到,定時器輸出Q導(dǎo)通,Q0.0線圈得電(可控制指示燈等后續(xù)邏輯)。I0.1為復(fù)位信號,若I0.1閉合,將TONR定時器當(dāng)前值清0,定時器輸出Q斷開,Q0.0線圈失電,為下次延時控制做好準(zhǔn)備。48中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(5)線圈型定時器指令

注意:

該程序與上圖中采用功能塊型的TONR定時器程序原理是一樣的,但是線圈型定時器不含輸出端Q或ET,需要人為調(diào)用定時器背景數(shù)據(jù)塊(或IEC_TIMER變量)中的Q或ET,否則定時器不會計時。49中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(6)定時器使用注意事項1)IEC定時器不計時的原因定時器輸入端IN只有在檢測到電平信號的跳變時,才會開始計時。TP、TON和TONR在輸入端IN由0變?yōu)?時啟動,TOF在輸入端IN由1變?yōu)?時啟動。如果把始終保持不變的信號作為輸入端,定時器不會計時。同一背景數(shù)據(jù)塊或IEC_TIMER變量多次指定給不同的定時器,即定時器的背景數(shù)據(jù)塊存在重復(fù)使用情況時,定時器不會計時。只有在功能塊型定時器的輸出端Q或ET連接至實際變量,或者在程序中使用背景數(shù)據(jù)塊(或IEC_TIMER變量)中的輸出Q或ET時,定時器才會開始計時,并會更新定時時間。50中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.定時器指令(6)定時器使用注意事項2)IEC定時器刷新方式程序執(zhí)行到功能塊型定時器的輸出端Q或ET時,將更新定時時間;程序執(zhí)行到定時器的背景數(shù)據(jù)塊(或IEC_TIMER變量)中的輸出Q或ET時,將更新定時時間;如果程序中多次使用同一背景數(shù)據(jù)塊(或IEC_TIMER變量)中的輸出Q;或者既使用功能塊型定時器的Q或ET連接變量,又使用背景數(shù)據(jù)塊的Q;以上兩種情況都會造成定時器在一個掃描周期內(nèi)的多次更新,可能造成定時器不能正常使用的情況。51中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令

計數(shù)器指令用于累計外部輸入脈沖的個數(shù),常見于產(chǎn)品計數(shù)或其他復(fù)雜的邏輯控制場合,是PLC中最常用的指令之一。S7-1200PLC支持3種類型的計數(shù)器指令:增計數(shù)器CTU、減計數(shù)器CTD和增減計數(shù)器CTUD,如表4-9所示。

表4-9計數(shù)器指令

52中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令計數(shù)器指令的參數(shù)說明見表4-10。

4-10計數(shù)器指令參數(shù)說明

53中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令(1)計數(shù)器使用注意事項S7-1200PLC采用的是功能塊型計數(shù)器,使用時應(yīng)注意以下3個問題:需要設(shè)置計數(shù)值的數(shù)據(jù)類型,如表4-10中PV和CV的6種數(shù)據(jù)類型,計數(shù)值的數(shù)值范圍取決于所選的數(shù)據(jù)類型。如果計數(shù)值是無符號整數(shù)類型,當(dāng)前值可以減到0或增到上限值;如果計數(shù)值是有符號整數(shù)類型,當(dāng)前值可以減到負(fù)整數(shù)的下限值或增到正整數(shù)的上限值。與定時器指令類似,需要給每個計數(shù)器分配唯一的背景數(shù)據(jù)塊或者系統(tǒng)數(shù)據(jù)類型為IEC_COUNTER(或IEC_UCOUNTER、IEC_SCOUNTER、IEC_USCOUNTER等,根據(jù)計數(shù)值的數(shù)據(jù)類型而定)的數(shù)據(jù)塊變量(相當(dāng)于計數(shù)器的名字)。本節(jié)所介紹的計數(shù)器屬于普通計數(shù)器,最高計數(shù)頻率將受限于其所在的程序循環(huán)組織塊的掃描周期。如果需要對頻率很高的脈沖(如軸編碼器)進(jìn)行計數(shù),可以使用高速計數(shù)器(HSC)。

54中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令(2)增計數(shù)器CTU

上電周期或首次掃描時,增計數(shù)器當(dāng)前值CV為0,輸出端Q斷開。脈沖輸入端CU每次由0變?yōu)?(出現(xiàn)上升沿)時,當(dāng)前值CV加1,當(dāng)前值CV最大可達(dá)到所選數(shù)據(jù)類型的上限值,達(dá)到上限值后,CU輸入端再來脈沖上升沿,CV值也不再增加。

當(dāng)前值CV大于等于設(shè)定值PV時,輸出端Q導(dǎo)通;復(fù)位輸入端R為1時,復(fù)位增計數(shù)器,當(dāng)前值為0,輸出端Q斷開。

55中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令(2)增計數(shù)器CTU上圖中,DB1為增計數(shù)器CTU的背景數(shù)據(jù)塊,計數(shù)值數(shù)據(jù)類型為Int,設(shè)定值為3。上電周期或首次掃描時,當(dāng)前值為0,輸出端Q斷開;脈沖輸入端I0.0每出現(xiàn)一次上升沿,當(dāng)前值加1;當(dāng)前值到達(dá)或者超過設(shè)定值時,輸出端Q導(dǎo)通,Q0.0線圈得電;復(fù)位輸入端R為高電平時,復(fù)位增計數(shù)器,當(dāng)前值為0,輸出端Q斷開,Q0.0線圈失電。

注意:本題中如果不對CTU進(jìn)行復(fù)位,其計數(shù)當(dāng)前值可一直增加到32767后保持不變(所選數(shù)據(jù)類型為Int),將失去計數(shù)功能,所以在實際使用時,應(yīng)在當(dāng)前值達(dá)到設(shè)定值之后,及時對計數(shù)器進(jìn)行復(fù)位。

56中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令(3)減計數(shù)器CTD

上電周期或首次掃描時,減計數(shù)器當(dāng)前值CV為0,輸出端Q閉合。脈沖輸入端CD每次由0變?yōu)?(出現(xiàn)上升沿)時,當(dāng)前值CV減1,當(dāng)前值CV最小可達(dá)到所選數(shù)據(jù)類型的下限值,達(dá)到下限值后,CD輸入端再來脈沖上升沿,CV值也不再減小。

當(dāng)前值CV小于等于0時,輸出端Q導(dǎo)通;裝載輸入端LD為1時,把設(shè)定值PV裝載到當(dāng)前值CV中,輸出端Q斷開(相當(dāng)于復(fù)位減計數(shù)器)。實際使用減計數(shù)器前,建議首先使能裝載輸入端LD,對減計數(shù)器進(jìn)行復(fù)位,然后再啟動計數(shù)功能。

57中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令(3)減計數(shù)器CTD上圖中,DB2為減計數(shù)器CTD的背景數(shù)據(jù)塊,計數(shù)值的數(shù)據(jù)類型為UInt,設(shè)定值為3。上電周期或首次掃描時,當(dāng)前值為0,輸出端Q導(dǎo)通;首先閉合I1.1使能裝載輸入端LD,復(fù)位減計數(shù)器,當(dāng)前值為設(shè)定值,輸出端Q斷開;開始計數(shù)后,脈沖輸入端I1.0每出現(xiàn)一次上升沿,當(dāng)前值減1;當(dāng)前值小于等于0時,輸出端Q導(dǎo)通,Q0.0線圈得電。

注意:本題中如果不對CTD進(jìn)行重新裝載,因所選數(shù)據(jù)類型為UInt,計數(shù)當(dāng)前值可一直減小到0后保持不變(如果選數(shù)據(jù)類型為Int,計數(shù)值可減小到-32768),將失去計數(shù)功能,所以在實際使用時,應(yīng)在當(dāng)前值減小到0之后,及時對計數(shù)器當(dāng)前值進(jìn)行重新裝載。

58中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令(4)增減計數(shù)器CTUD

上電周期或首次掃描時,增減計數(shù)器當(dāng)前值CV為0,輸出端QU斷開、QD導(dǎo)通。

脈沖輸入端CU每次出現(xiàn)上升沿時,當(dāng)前值CV加1,當(dāng)前值CV最大可達(dá)到所選數(shù)據(jù)類型的上限值,達(dá)到上限值后,CU輸入端再來脈沖上升沿,CV值也不再增加。脈沖輸入端CD每次出現(xiàn)上升沿時,當(dāng)前值CV減1,當(dāng)前值CV最小可達(dá)到所選數(shù)據(jù)類型的下限值,達(dá)到下限值后,CD輸入端再來脈沖上升沿,CV值也不再減小。如果脈沖輸入端CU和CD同時出現(xiàn)上升沿,則當(dāng)前值CV保持不變。

當(dāng)前值CV大于等于設(shè)定值PV時,輸出端QU導(dǎo)通,反之?dāng)嚅_;當(dāng)前值CV小于等于0時,輸出端QD導(dǎo)通,反之?dāng)嚅_。

59中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.計數(shù)器指令(4)增減計數(shù)器CTUD

復(fù)位輸入端R為1時,復(fù)位增減計數(shù)器,當(dāng)前值為0,輸出端QU斷開、QD導(dǎo)通。復(fù)位輸入端優(yōu)先級最高,即:R輸入端有效時,CU、CD以及LD等輸入端均不起作用。

裝載輸入端LD為1時,重新裝載增減計數(shù)器,當(dāng)前值為設(shè)定值,輸出端QU導(dǎo)通、QD斷開。

60中國礦業(yè)大學(xué)徐海學(xué)院4.2定時器及計數(shù)器指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.基本程序控制指令(1)高電平/低電平跳轉(zhuǎn)及標(biāo)簽指令

使用高電平跳轉(zhuǎn)指令,當(dāng)線圈輸入端的邏輯運(yùn)算結(jié)果RLO為1時,跳轉(zhuǎn)到指定的目標(biāo)標(biāo)簽后的第一條指令,繼續(xù)以線性掃描方式執(zhí)行程序。

使用低電平跳轉(zhuǎn)指令,當(dāng)線圈輸入端的邏輯運(yùn)算結(jié)果RLO為0時,跳轉(zhuǎn)到指定的目標(biāo)標(biāo)簽后的第一條指令,繼續(xù)以線性掃描方式執(zhí)行程序。

使用標(biāo)簽指令,可以事先為JMP或JMPN指令定義對應(yīng)的目標(biāo)標(biāo)簽。使用說明:只能在同一個程序塊內(nèi)跳轉(zhuǎn),即跳轉(zhuǎn)指令和目標(biāo)標(biāo)簽應(yīng)在同一個程序塊中,且每個目標(biāo)標(biāo)簽只能出現(xiàn)一次。被跳過的程序段在本掃描周期不會被執(zhí)行,待下一掃描周期再根據(jù)條件決定是否執(zhí)行。目標(biāo)標(biāo)簽的第一個字符必須是字母,其余的可以是字母、數(shù)字和下劃線。

61中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.基本程序控制指令(1)高電平/低電平跳轉(zhuǎn)及標(biāo)簽指令

上圖中,如果I0.0閉合,高電平跳轉(zhuǎn)線圈得電,程序直接跳轉(zhuǎn)到標(biāo)號LBL1后的第一條指令繼續(xù)執(zhí)行;如果M0.0斷開,低電平跳轉(zhuǎn)線圈失電,程序直接跳轉(zhuǎn)到標(biāo)號LBL2后的第一條指令繼續(xù)執(zhí)行。

62中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.基本程序控制指令(2)定義跳轉(zhuǎn)列表與跳轉(zhuǎn)分支指令

使用定義跳轉(zhuǎn)列表指令,同時定義多個有條件跳轉(zhuǎn),輸入端EN為1時,跳轉(zhuǎn)到由參數(shù)K指定的目標(biāo)標(biāo)簽后第一條指令繼續(xù)執(zhí)行。

使用跳轉(zhuǎn)分支指令,可以將多個輸入信號與參數(shù)K進(jìn)行不同類型的比較,根據(jù)比較結(jié)果,執(zhí)行對應(yīng)分支的跳轉(zhuǎn)。

63中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.基本程序控制指令(2)定義跳轉(zhuǎn)列表與跳轉(zhuǎn)分支指令上圖(a)中,M0.0閉合時,若MW10=0,則跳轉(zhuǎn)到DEST0輸出的標(biāo)號High后的第一條指令繼續(xù)執(zhí)行;若MW10=1(或2),則跳轉(zhuǎn)到DEST1(或DEST2)輸出的標(biāo)號Mid(或Low)后的第一條指令繼續(xù)執(zhí)行。上圖(b)中,I1.0閉合時,若MW0中的整數(shù)=MW10中的整數(shù),則跳轉(zhuǎn)到DEST0輸出的標(biāo)號A后繼續(xù)執(zhí)行;若MW0中的整數(shù)>MW20中的整數(shù),則跳轉(zhuǎn)到DEST1輸出的標(biāo)號B后繼續(xù)執(zhí)行;若條件都不滿足,則跳轉(zhuǎn)到ELSE輸出的C后繼續(xù)執(zhí)行。

64中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.基本程序控制指令(2)定義跳轉(zhuǎn)列表與跳轉(zhuǎn)分支指令

使用說明:對于定義跳轉(zhuǎn)列表指令,可手動增減輸出端(目標(biāo)標(biāo)簽),輸出端編號從0開始,每增加一個新輸出,編號會自動升序連續(xù)遞增,S7-1200最多可以聲明32個輸出。如果參數(shù)K的值大于可用的輸出編號,則不執(zhí)行跳轉(zhuǎn),繼續(xù)執(zhí)行原程序塊中的下一段程序。對于跳轉(zhuǎn)分支指令,也可手動增減輸出端,編號從0開始,新增的輸出編號自動升序連續(xù)遞增,S7-1200最多可以聲明32個輸出(外加1個ELSE輸出)。進(jìn)行比較的操作數(shù)數(shù)據(jù)類型可以是位字符串、整數(shù)、浮點數(shù)、TIME、DATE等。對于跳轉(zhuǎn)分支指令,按輸入端從上向下順序依次進(jìn)行比較,直到滿足條件為止,如果滿足比較條件,后續(xù)比較將不執(zhí)行;如果條件均不滿足,則執(zhí)行輸出端ELSE處的跳轉(zhuǎn),如果ELSE中未定義跳轉(zhuǎn)的目標(biāo)標(biāo)簽,則不執(zhí)行任何跳轉(zhuǎn),繼續(xù)向下執(zhí)行。

65中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.基本程序控制指令(3)返回指令

使用返回指令,線圈通電后,停止執(zhí)行當(dāng)前的程序塊,并返回至調(diào)用它的程序塊中繼續(xù)執(zhí)行。使用時應(yīng)為該指令指定位存儲區(qū),用以存放塊的返回值(Bool類型)。如果當(dāng)前的塊是OB,返回值被忽略;如果當(dāng)前的塊是FC或FB,返回值作為FC或FB的ENO值傳送給調(diào)用它的塊。

返回指令主要用于根據(jù)條件提前結(jié)束正在執(zhí)行的程序塊,如不需要提前結(jié)束,可以不調(diào)用該指令,操作系統(tǒng)會自動在用戶程序后加上無條件返回指令。

66中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.擴(kuò)展程序控制指令

擴(kuò)展程序控制指令包括重置循環(huán)監(jiān)視時間、停止運(yùn)行、查詢錯誤信息、查詢錯誤ID以及測量運(yùn)行時間。如表4-12所示。

表4-12擴(kuò)展程序控制指令

67中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.擴(kuò)展程序控制指令(1)重置循環(huán)監(jiān)視時間指令RE_TRIGR

使用重置循環(huán)監(jiān)視時間指令,可以延長循環(huán)監(jiān)視定時器(看門狗)的時間。正常工作時,最大掃描循環(huán)時間小于監(jiān)視定時器的時間設(shè)定值,監(jiān)視定時器不起作用,每次掃描循環(huán)將自動復(fù)位監(jiān)視定時器一次。

當(dāng)出現(xiàn)用戶程序過長、一個掃描周期內(nèi)執(zhí)行中斷程序的時間過長或者循環(huán)指令執(zhí)行時間過長等情況時,一個掃描周期的循環(huán)時間可能大于監(jiān)視定時器的設(shè)定時間,監(jiān)視定時器將會起作用。此時可以在程序塊任意位置使用該指令來復(fù)位監(jiān)視定時器。該指令僅在優(yōu)先級為1的程序循環(huán)OB和它調(diào)用的塊中起作用;該指令在硬件中斷、診斷中斷或循環(huán)中斷OB等優(yōu)先級較高的塊中將不會被執(zhí)行。

在組態(tài)CPU時,可以利用“常規(guī)”→“周期”→“循環(huán)周期監(jiān)視時間”參數(shù)設(shè)置最大掃描循環(huán)時間,默認(rèn)值為150ms。

68中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.擴(kuò)展程序控制指令(2)停止運(yùn)行指令STP

使用重置循環(huán)監(jiān)視時間指令,當(dāng)輸入端EN有效時,設(shè)置CPU為STOP模式。STP指令執(zhí)行后,CPU本機(jī)以及擴(kuò)展單元的數(shù)字量/模擬量輸出進(jìn)入到組態(tài)時設(shè)置安全狀態(tài)??梢允馆敵鰞鼋Y(jié)在最后的狀態(tài),或用替代值設(shè)置為安全狀態(tài)。默認(rèn)情況下,數(shù)字量輸出狀態(tài)和模擬量輸出值為0。(3)查詢錯誤信息指令GET_ERROR和查詢錯誤ID指令GET_ERR_ID

使用查詢錯誤信息指令,當(dāng)輸入端EN有效時,輸出程序塊執(zhí)行時出錯的信息。錯誤信息通過輸出端ERROR保存到預(yù)定義的ErrorStruct數(shù)據(jù)類型的變量中。可利用程序?qū)﹀e誤信息進(jìn)行分析和處理,第一個錯誤消失后,輸出下一個錯誤的信息。

使用查詢錯誤ID指令,當(dāng)輸入端EN有效且執(zhí)行程序塊出錯時,僅顯示錯誤ID。第一個錯誤ID輸出到ID對應(yīng)的地址中,第一個錯誤消失后,輸出下一個錯誤ID。

69中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.擴(kuò)展程序控制指令

利用上述兩個指令對程序塊(OB、FB及FC)進(jìn)行錯誤查詢和處理時,需先右鍵點擊程序塊→“屬性”→勾選“處理塊內(nèi)的錯誤”。(4)

測量運(yùn)行時間RUNTIME

使用測量運(yùn)行時間指令,當(dāng)輸入端EN有效時,可以測量整個程序、單個程序塊或命令序列的運(yùn)行時間。第一次調(diào)用RUNTIME指令設(shè)置時間測量的起始點并且存儲在輸入端MEM對應(yīng)的LReal數(shù)據(jù)類型的變量中,同時作為第二次調(diào)用的參考點;然后調(diào)用需要測量運(yùn)行時間的程序塊;程序塊執(zhí)行完后,第二次調(diào)用RUNTIME指令將計算出該程序塊的運(yùn)行時間,并將結(jié)果保存在輸出端Ret_Val對應(yīng)的LReal數(shù)據(jù)類型的變量中。

70中國礦業(yè)大學(xué)徐海學(xué)院4.3程序控制指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令

傳送指令包括傳送、填充以及字節(jié)交換指令,如表4-13所示。

71中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令(1)傳送指令

使用單一傳送指令MOVE,輸入端EN有效時,將輸入端IN對應(yīng)的數(shù)據(jù)類型轉(zhuǎn)換為OUT1所對應(yīng)的數(shù)據(jù)類型,并存放在OUT1指定的存儲單元中,輸入端IN的源數(shù)據(jù)保持不變。IN和OUT1的操作數(shù)可以是除Bool類型之外的所有基本數(shù)據(jù)類型,也可以是DTL、Struct和Array數(shù)據(jù)類型。IN也可以是常數(shù)。

使用塊傳送指令MOVE_BLK,輸入端EN有效時,將輸入端IN對應(yīng)的Array結(jié)構(gòu)體起始元素開始的若干個元素(由COUNT數(shù)值決定),依次傳送到OUT所指定的Array結(jié)構(gòu)體起始元素開始的若干個地址。

使用不可中斷的塊傳送指令UMOVE_BLK,其功能與塊傳送MOVE_BLK指令基本相同,但該操作不會被操作系統(tǒng)的其它任務(wù)中斷。

72中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令(1)傳送指令使用說明:傳送指令MOVE中,IN和OUT1的數(shù)據(jù)類型可以相同,也可以不同。例如可以將MW0中的數(shù)據(jù)傳送至MD4,此時MW0存放在MD4的低位字(MW6)中,高位字MW4中補(bǔ)零;也可以將MD4中的數(shù)據(jù)傳送至MW0,此時只將低位字MW6中的數(shù)據(jù)存放在MW0中,高位字MW4則會丟失,應(yīng)盡量避免此類傳送方式。塊傳送指令MOVE_BLK中,IN和OUT1必須是數(shù)據(jù)塊D或局部數(shù)據(jù)區(qū)L中的數(shù)組元素。COUNT為傳送數(shù)組元素的個數(shù),其數(shù)據(jù)類型為USINT、UINT、UDINT或常數(shù)。

73中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令(1)傳送指令

上圖中,I0.0閉合后,將MD0中的數(shù)據(jù)傳送給MD10;然后將數(shù)組#a_array中第3個元素開始的4個元素,依次傳送到數(shù)組#b_array中第4個元素開始的4個變量中。

74中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令(2)填充塊指令

使用填充塊指令FILL_BLK,輸入端EN有效時,將輸入端IN的數(shù)據(jù)填充到OUT所指定的Array結(jié)構(gòu)體起始元素開始的若干個地址(由COUNT數(shù)值決定)。

使用不可中斷的填充塊指令UFILL_BLK,其功能與填充塊FILL_BLK指令基本相同,但該操作不會被操作系統(tǒng)的其它任務(wù)中斷。使用說明:填充塊指令FILL_BLK中,IN的數(shù)據(jù)類型可以是各種基本數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型,也可以是常數(shù);OUT必須是數(shù)據(jù)塊D或局部數(shù)據(jù)區(qū)L中的數(shù)組元素;COUNT為填充塊的次數(shù),其數(shù)據(jù)類型為USINT、UINT、UDINT或常數(shù)。不可中斷的填充塊指令UFILL_BLK中,操作數(shù)的數(shù)據(jù)類型與FILL_BLK指令相同,唯一區(qū)別在于UFILL_BLK不會被操作系統(tǒng)的其它任務(wù)中斷。

75中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令(2)填充塊指令上圖中,I0.0閉合后,將輸入端IN的常數(shù)0填充到數(shù)組#a_array中第1個元素開始的10個變量中;然后將數(shù)組#b_array中第1個元素填充到數(shù)組#c_array中第1個元素開始的4個變量中。

76中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令(3)字節(jié)交換指令

使用字節(jié)交換指令SWAP,輸入端EN有效時,將輸入端IN的數(shù)據(jù)按照字節(jié)進(jìn)行順序交換,結(jié)果存放在OUT所指定的存儲單元中。

IN和OUT為Word數(shù)據(jù)類型時,將輸入端IN的高、低字節(jié)交換后,存放在OUT指定的字地址中;IN和OUT為DWord數(shù)據(jù)類型時,將輸入端IN的4個字節(jié)依次交換順序后,存放在OUT指定的雙字地址中。

77中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.傳送指令(3)字節(jié)交換指令

上圖中,I0.0閉合后,將MW10的高字節(jié)MB10與低字節(jié)MB11交換后,存放在MW20中,MW20的高字節(jié)MB20為交換前的MB11,低字節(jié)MB21為交換前的MB10;再將MD40中的4個字節(jié)MB40、MB41、MB42、MB43交換順序為MB43、MB42、MB41、MB40,存放在MD60中。

78中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.移位和循環(huán)指令移位和循環(huán)指令包括左移、右移、循環(huán)左移以及循環(huán)右移指令,如表4-14所示。

表4-14移位和循環(huán)指令

79中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.移位和循環(huán)指令(1)移位指令

使用左移指令SHL和右移指令SHR,可以將輸入端IN的數(shù)據(jù)逐位左移或右移若干位(由N值決定),移位完的結(jié)果存放在輸出端OUT指定的存儲單元中。

對于無符號數(shù)進(jìn)行左移/右移時,空位補(bǔ)0;對于有符號數(shù)進(jìn)行左移時,空位補(bǔ)0,對于有符號數(shù)進(jìn)行右移時,最高位(符號位)為空位,該位保持符號位不變。

如果N為0時不移位,直接將輸入端IN的數(shù)據(jù)存放在OUT指定的地址中;如果N大于移位操作數(shù)的位數(shù),原來的所有位均被移除,結(jié)果為0。

80中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.移位和循環(huán)指令(1)移位指令上圖中,I0.0閉合后,將MB10中的數(shù)據(jù)左移4位,并將結(jié)果存放于MB20中,若MB10=2#1010_1111,則執(zhí)行后MB20=2#1111_0000;再將MW30的數(shù)據(jù)右移2位后存放在MW40中,若MW30=2#1111_0000_1010_0101,則執(zhí)行后MW40=2#1111_1100_0010_1001。

81中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.移位和循環(huán)指令(2)循環(huán)移位指令

使用循環(huán)左移指令ROL和循環(huán)右移指令ROR,可以將輸入端IN的數(shù)據(jù)逐位循環(huán)左移或循環(huán)右移若干位(由N值決定),即移出位補(bǔ)到另一端的空位中,移位完的結(jié)果存放在輸出端OUT指定的存儲單元中。

如果N為0時不移位,直接將輸入端IN的數(shù)據(jù)存放在OUT指定的地址中;如果N大于移位操作數(shù)的位數(shù),將執(zhí)行N次循環(huán)移位操作。

82中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)2.移位和循環(huán)指令(2)循環(huán)移位指令上圖中,I0.0閉合后,將MB0中的數(shù)據(jù)循環(huán)左移5位,結(jié)果存放于MB1中,若MB0=2#1111_0000,則MB1=2#0001_1110;再將MW10中的數(shù)據(jù)循環(huán)右移3位后存放在MW20中,若MW10=2#1111_0000_1010_0101,則MW20=2#1011_1110_0001_0100。

83中國礦業(yè)大學(xué)徐海學(xué)院4.4數(shù)據(jù)處理指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(1)四則運(yùn)算指令表4-15四則運(yùn)算指令

84中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(1)四則運(yùn)算指令使用說明:四則運(yùn)算指令默認(rèn)包含2個輸入操作數(shù),其中加法和乘法可以擴(kuò)展輸入個數(shù)。

同一運(yùn)算指令的所有輸入IN和輸出OUT的數(shù)據(jù)類型應(yīng)相同,可選數(shù)據(jù)類型有SInt、Int、DInt、USInt、UInt、UDInt、Real、LReal;輸入IN可以是變量,也可以是常數(shù)。整數(shù)除法指令在計算時,只保留商,余數(shù)將丟失。使用計算器指令CALCULATE,用戶可以靈活定義計算表達(dá)式。IN和OUT1的操作數(shù)可以是除Bool類型之外的所有基本數(shù)據(jù)類型;根據(jù)操作數(shù)數(shù)據(jù)類型的不同,用戶自定義的表達(dá)式支持不同的數(shù)學(xué)運(yùn)算。

85中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(1)四則運(yùn)算指令上圖中,I0.0閉合后,將MW10和MW12數(shù)據(jù)相加并存放在MW14,然后將MW14與MW16數(shù)據(jù)相乘,存放在MW18中。如果MW10=25、MW12=55、MW16=100,則運(yùn)算后MW14=80,MW18=8000。

86中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(1)四則運(yùn)算指令

上圖(b)可以實現(xiàn)與圖(a)相同的運(yùn)算結(jié)果,但結(jié)構(gòu)更為簡單、直觀。

注意:

整數(shù)相乘時,容易出現(xiàn)乘積結(jié)果超過整數(shù)所能表示的最大范圍,導(dǎo)致運(yùn)算結(jié)果不正確的情況。為了防止該問題,可以結(jié)合轉(zhuǎn)換指令將操作數(shù)轉(zhuǎn)換為浮點數(shù)再相乘。

87中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(1)其他數(shù)學(xué)運(yùn)算指令

表4-16其他數(shù)學(xué)運(yùn)算指令

88中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(1)其他數(shù)學(xué)運(yùn)算指令使用說明:取余指令MOD主要為了解決整數(shù)相除只保留商的問題,其操作數(shù)必須是整數(shù),輸入也可以是常數(shù)。取反指令NEG和取絕對值指令A(yù)BS數(shù)據(jù)類型必須是有符號數(shù),如SInt、Int、DInt、Real和LReal,輸入也可以是常數(shù)。遞增指令I(lǐng)NC和遞減指令DEC的數(shù)據(jù)類型必須是整數(shù),如SInt、USInt、Int、UInt、DInt和UDInt。取最小值指令MIN和取最大值指令MAX的數(shù)據(jù)類型可以是整數(shù)或浮點數(shù),如SInt、USInt、Int、UInt、DInt、UDInt、Real和LReal,輸入也可以是常數(shù)。它們的輸入個數(shù)可以擴(kuò)展。

89中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(1)其他數(shù)學(xué)運(yùn)算指令使用說明:設(shè)置限值指令LIMIT的數(shù)據(jù)類型可以是整數(shù)或浮點數(shù),如SInt、USInt、Int、UInt、DInt、UDInt、Real和LReal,輸入也可以是常數(shù)。I0.0閉合后,將IW64的值取絕對值(相當(dāng)于將雙極性信號轉(zhuǎn)換為單極性信號),并限制該值在正常范圍0~27648之內(nèi)。

90中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(3)浮點數(shù)函數(shù)運(yùn)算指令表4-17浮點數(shù)函數(shù)運(yùn)算指令

91中國礦業(yè)大學(xué)徐海學(xué)院4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)1.數(shù)學(xué)運(yùn)算指令(3)浮點數(shù)函數(shù)運(yùn)算指令使用說明:所有的浮點數(shù)函數(shù)運(yùn)算指令,操作數(shù)IN和OUT的數(shù)據(jù)類型均為Real或LReal。自然對數(shù)指令LN和指數(shù)指令EXP中,底數(shù)均為e=2.71828。平方根指令SQRT和自然對數(shù)指令LN的輸入端IN如果小于0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論