電氣控制及S7-1200 PLC應(yīng)用技術(shù)(第二版)課件 第3、4章 S7-1200PLC基礎(chǔ)、S7-1200 PLC基本指令及程序設(shè)計(jì)_第1頁
電氣控制及S7-1200 PLC應(yīng)用技術(shù)(第二版)課件 第3、4章 S7-1200PLC基礎(chǔ)、S7-1200 PLC基本指令及程序設(shè)計(jì)_第2頁
電氣控制及S7-1200 PLC應(yīng)用技術(shù)(第二版)課件 第3、4章 S7-1200PLC基礎(chǔ)、S7-1200 PLC基本指令及程序設(shè)計(jì)_第3頁
電氣控制及S7-1200 PLC應(yīng)用技術(shù)(第二版)課件 第3、4章 S7-1200PLC基礎(chǔ)、S7-1200 PLC基本指令及程序設(shè)計(jì)_第4頁
電氣控制及S7-1200 PLC應(yīng)用技術(shù)(第二版)課件 第3、4章 S7-1200PLC基礎(chǔ)、S7-1200 PLC基本指令及程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩180頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

3.1S7-1200PLC硬件系統(tǒng)3.2S7-1200PLC軟件系統(tǒng)3.3數(shù)制與數(shù)據(jù)類型3.4編程語言3.5程序設(shè)計(jì)方法

1第3章S7-1200PLC基礎(chǔ)知識(shí)主要內(nèi)容:電氣控制及S7-1200PLC應(yīng)用技術(shù)1.CPU模塊技術(shù)參數(shù)S7-1200屬于新一代小型PLC,其主機(jī)單元(CPU)上集成了微處理器、電源、Profinet通信端口以及一定數(shù)量的輸入/輸出(I/O)點(diǎn),自身即可組成一個(gè)小的控制系統(tǒng)。如果需其他控制功能(如串口通信、模擬量輸入輸出處理等),僅需外擴(kuò)相應(yīng)的模塊即可。23.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.CPU模塊技術(shù)參數(shù)S7-1200CPU目前有五種型號(hào)的CPU模塊:CPU1211C、CPU1212C、CPU1214C、CPU1215C以及CPU1217C,主要技術(shù)參數(shù)如表所示。33.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.CPU模塊硬件接線根據(jù)供電電源和輸入/輸出接口電路的不同,S7-1200中的每種CPU均具有三種類型:AC/DC/RLY、DC/DC/RLY、DC/DC/DC。以CPU1214CAC/DC/RLY為例。43.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.CPU模塊針對(duì)工業(yè)常見的控制要求,S7-1200CPU集成了相應(yīng)的工藝功能,如:高速計(jì)數(shù)器、PID功能、運(yùn)動(dòng)控制功能、高速脈沖發(fā)生器(PTO/PWM)等。工藝功能1)高速計(jì)數(shù)器2)PID功能3)運(yùn)動(dòng)控制功能4)高速脈沖發(fā)生器(PTO/PWM)53.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.擴(kuò)展單元S7-1200CPU上集成了少量的DI/DO、AI/AO(部分型號(hào)CPU不具有AO),當(dāng)復(fù)雜系統(tǒng)需要其它功能或更多I/O點(diǎn)時(shí),可以在CPU的基礎(chǔ)上增加擴(kuò)展單元。S7-1200CPU支持的擴(kuò)展單元類型有:信號(hào)板SB、信號(hào)模塊SM以及通信模塊CM。信號(hào)板SBS7-1200本體上(正面)可支持?jǐn)U展一塊信號(hào)板,用以增加少量的數(shù)字量或模擬量I/O點(diǎn)數(shù),且不增加系統(tǒng)的安裝空間。信號(hào)板的類型有以下5種:①數(shù)字量輸入信號(hào)板SB1221:共2種產(chǎn)品,即4點(diǎn)5VDC輸入、4點(diǎn)24VDC輸入。②數(shù)字量輸出信號(hào)板SB1222:共2種產(chǎn)品,即4點(diǎn)5VDC輸出、4點(diǎn)24VDC輸出。③數(shù)字量輸入/輸出信號(hào)板SB1223:共3種產(chǎn)品,即2點(diǎn)5VDC輸入/2點(diǎn)5VDC輸出、2點(diǎn)24VDC輸入/2點(diǎn)24VDC輸出(普通)、2點(diǎn)24VDC輸入/2點(diǎn)24VDC輸出(支持高速脈沖)。④模擬量輸入信號(hào)板SB1231:共3種產(chǎn)品,即1路AI、1路熱電阻(RTD)輸入、1路熱電偶(TC)輸入。⑤模擬量輸出信號(hào)板SB1232:共1種產(chǎn)品,即1路AO。63.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.擴(kuò)展單元信號(hào)模塊SM①數(shù)字量輸入信號(hào)模塊SM1221:共2種產(chǎn)品,即8點(diǎn)24VDC輸入、16點(diǎn)24VDC輸入。②數(shù)字量輸出信號(hào)模塊SM1222:共有5種產(chǎn)品,即8點(diǎn)RLY輸出、8點(diǎn)24VDC輸出、8點(diǎn)RLY輸出(NC和NO可切換)、16點(diǎn)RLY輸出、16點(diǎn)24VDC輸出。③數(shù)字量輸入/輸出信號(hào)模塊SM1223:共有5種產(chǎn)品,即8點(diǎn)24VDC輸入/8點(diǎn)RLY輸出、8點(diǎn)24VDC輸入/8點(diǎn)24VDC輸出、16點(diǎn)24VDC輸入/16點(diǎn)RLY輸出、16點(diǎn)24VDC輸入/16點(diǎn)24VDC輸出、8點(diǎn)120V或230V輸入/8點(diǎn)RLY輸出。④模擬量輸入信號(hào)模塊SM1231:共有7種產(chǎn)品,即4路13位輸入、4路16位輸入、8路13位輸入、4路熱電阻(RTD)輸入、4路熱電偶(TC)輸入、8路熱電阻(RTD)輸入、8路熱電偶(TC)輸入。⑤模擬量輸出信號(hào)模塊SM1232:共有2種產(chǎn)品,即2路14位輸出、4路14位輸出。⑥模擬量輸入/輸出信號(hào)模塊SM1234:共有1種產(chǎn)品,即4路輸入/2路輸出。73.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.擴(kuò)展單元通信模塊CM①點(diǎn)到點(diǎn)通信模塊CM1241:共有3種產(chǎn)品,即RS232通信模塊、RS485通信模塊、RS422/485通信模塊。②Profibus通信模塊:共有2種產(chǎn)品,即CM1242-5通信模塊(從站)、CM1243-5通信模塊(主站)。③AS-i通信模塊:共有1種產(chǎn)品,即CM1243-2通信模塊。④工業(yè)遠(yuǎn)程通信模塊:共有5種產(chǎn)品,即CP1243-1通信模塊(以太網(wǎng))、CP1243-1DNP3通信模塊(DNP3協(xié)議)、CP1243-1IEC通信模塊(IEC協(xié)議)、CP1243-7GPRS通信模塊(連接至GSM/GPRS)、CP1243-7LTE通信模塊(通過LTE-EU標(biāo)準(zhǔn)連接至GSM/GPRS)。83.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)3.擴(kuò)展I/O點(diǎn)的編址在利用信號(hào)模塊進(jìn)行I/O點(diǎn)數(shù)擴(kuò)展時(shí),除了模塊之間的硬件連接之外,還需對(duì)擴(kuò)展的信號(hào)模塊進(jìn)行I/O地址的分配。S7-200中,CPU和各個(gè)擴(kuò)展模塊中I/O的地址是固定的,軟件自行按照從CPU到擴(kuò)展模塊的順序依次分配相應(yīng)地址,用戶無法修改。S7-1200與S7-200不同,CPU和各個(gè)擴(kuò)展模塊的I/O地址可以選擇默認(rèn)分配,也可在硬件組態(tài)時(shí)靈活修改,然而S7-1200默認(rèn)分配的地址會(huì)有一定的間隔,為了方便編程,有時(shí)需對(duì)默認(rèn)地址進(jìn)行重新分配。93.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)3.擴(kuò)展I/O點(diǎn)的編址S7-1200擴(kuò)展模塊的I/O地址分配原則:(1)從CPU開始,按照從左到右的次序,依次對(duì)同類型的輸入/輸出模塊進(jìn)行編址。(2)數(shù)字量輸入和模擬量輸入共用同一個(gè)映像寄存器,所以它們的地址不能重復(fù),數(shù)字量輸出和模擬量輸出也是一樣。(3)對(duì)于數(shù)字量輸入/輸出模塊,按照一組8個(gè)位(1個(gè)字節(jié))順序分配地址。實(shí)際使用地址不足8位的模塊,未用位不能分配給后續(xù)擴(kuò)展模塊(保留給本模塊),后續(xù)擴(kuò)展模塊的同類型地址應(yīng)從下一組(下一字節(jié))開始分配。(4)對(duì)于模擬量輸入/輸出模塊,按照一組2個(gè)字節(jié)(1個(gè)字)順序分配地址(模擬量對(duì)應(yīng)的數(shù)字量單位長(zhǎng)度為2個(gè)字節(jié)),只要保證地址不重復(fù)即可。注意:上述分配地址的原則是作者贊同的做法,不同工程師有不同的分配方法,也可選擇為軟件默認(rèn)分配的地址。103.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)3.擴(kuò)展I/O點(diǎn)的編址S7-1200擴(kuò)展模塊的I/O地址分配原則:【例3-1】某S7-1200控制系統(tǒng)硬件配置如下圖所示,請(qǐng)按照順序?qū)Ω髂K的輸入輸出進(jìn)行編址。解:該題中的地址分配并不唯一,一般習(xí)慣從CPU方向向右依次編址。CPU中,數(shù)字量輸入、輸出默認(rèn)起始于第0個(gè)字節(jié),模擬量輸入、輸出默認(rèn)起始于第64個(gè)字節(jié),后續(xù)擴(kuò)展模塊可順序編址。113.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)3.擴(kuò)展I/O點(diǎn)的編址S7-1200擴(kuò)展模塊的I/O地址分配原則:備注:斜體地址表示未被分配,保留給本模塊。123.1S7-1200PLC硬件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)與S7-300/400相似,S7-1200在編程時(shí)采用“塊”(類似于子程序塊)的概念。將整個(gè)程序分解為相互獨(dú)立的各個(gè)子塊。對(duì)于復(fù)雜控制系統(tǒng),利用各種塊對(duì)整個(gè)復(fù)雜系統(tǒng)進(jìn)行分解簡(jiǎn)化,有利于程序的設(shè)計(jì)和理解;也可以將類似的功能設(shè)計(jì)成標(biāo)準(zhǔn)的程序塊進(jìn)行重復(fù)調(diào)用,達(dá)到簡(jiǎn)化程序、方便修改等目的。S7-1200PLC軟件支持4種類型的塊結(jié)構(gòu),如表所示。133.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊組織塊(Organizationblock,OB)是操作系統(tǒng)和用戶程序之間的接口,可通過對(duì)組織塊編程來控制PLC的動(dòng)作。組織塊由操作系統(tǒng)調(diào)用,對(duì)應(yīng)于CPU中的特定事件。用組織塊可以創(chuàng)建在特定時(shí)間執(zhí)行的程序,以及響應(yīng)特定事件的程序。143.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊:程序循環(huán)組織塊CPU處于RUN模式時(shí),程序循環(huán)(Programcycle)組織塊將周期性循環(huán)執(zhí)行,新建S7-1200項(xiàng)目時(shí),默認(rèn)生成的主程序Main[OB1]即為程序循環(huán)組織塊。若要啟動(dòng)程序執(zhí)行,項(xiàng)目中至少要有一個(gè)程序循環(huán)組織塊。操作系統(tǒng)每個(gè)周期調(diào)用該程序循環(huán)組織塊一次,從而啟動(dòng)用戶程序的執(zhí)行。用戶可根據(jù)實(shí)際需要,在程序循環(huán)組織塊中放置控制程序的指令或調(diào)用其它FC/FB功能塊。S7-1200允許同時(shí)使用多個(gè)程序循環(huán)組織塊,按它們的編號(hào)由小到大順序執(zhí)行。程序循環(huán)組織塊默認(rèn)編號(hào)為OB1,其它程序循環(huán)組織塊的編號(hào)必須不小于123。程序循環(huán)組織塊的優(yōu)先級(jí)為1(最低優(yōu)先級(jí)),可被高優(yōu)先級(jí)的組織塊中斷。153.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊:?jiǎn)?dòng)組織塊啟動(dòng)(Startup)組織塊一般用于編寫初始化程序,如賦初始值等。如果CPU操作模式從STOP切換到RUN(包括RUN模式時(shí)CPU斷電再上電、執(zhí)行STOP到RUN命令切換),啟動(dòng)組織塊將被執(zhí)行一次。啟動(dòng)組織塊執(zhí)行完畢后才開始執(zhí)行主程序循環(huán)組織塊。S7-1200同時(shí)支持多個(gè)啟動(dòng)組織塊,按照編號(hào)由小到大順序依次執(zhí)行。啟動(dòng)組織塊默認(rèn)編號(hào)為OB100。其它編號(hào)必須不小于123。163.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊:延時(shí)中斷組織塊延時(shí)中斷(Timedelayinterrupt)組織塊在經(jīng)過一段時(shí)間延時(shí)(用戶自定義)后,才執(zhí)行該組織塊里的程序,可用于故障處理等延時(shí)控制場(chǎng)合。S7-1200同時(shí)支持最多四個(gè)延時(shí)中斷組織塊,編號(hào)必須為20~23或不小于123。實(shí)現(xiàn)延時(shí)中斷功能需相關(guān)指令加以配合,如表所示。173.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊:循環(huán)中斷組織塊循環(huán)中斷(Cyclicinterrupt)組織塊以固定的時(shí)間間隔周期性執(zhí)行,可用于模擬量采樣等循環(huán)控制場(chǎng)合。S7-1200同時(shí)支持最多四個(gè)循環(huán)中斷組織塊,編號(hào)必須為30~38或不小于123。在創(chuàng)建循環(huán)中斷組織塊時(shí)即可設(shè)定循環(huán)周期。若需在CPU運(yùn)行時(shí)修改循環(huán)周期、相移時(shí)間,可使用“SET_CINT”和“QRY_CINT”指令,如表所示。183.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊:硬件中斷組織塊(了解)硬件中斷(Hardwareinterrupt)組織塊在發(fā)生相關(guān)硬件中斷事件時(shí)執(zhí)行,可以快速響應(yīng)硬件中斷事件并執(zhí)行硬件中斷組織塊中的程序(例如立即停止某些關(guān)鍵設(shè)備)。硬件中斷事件包括數(shù)字量輸入端的上升沿/下降沿事件、高速計(jì)數(shù)器事件。當(dāng)發(fā)生硬件中斷事件時(shí),硬件中斷組織塊將中斷正常的循環(huán)程序而優(yōu)先執(zhí)行。S7-1200可以在硬件配置的屬性中預(yù)先定義硬件中斷事件,一個(gè)硬件中斷事件只允許對(duì)應(yīng)一個(gè)硬件中斷組織塊,而一個(gè)硬件中斷組織塊可以分配給多個(gè)硬件中斷事件。193.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊:診斷錯(cuò)誤中斷組織塊(了解)S7-1200支持診斷錯(cuò)誤中斷,可為具有診斷功能的模塊啟用診斷錯(cuò)誤中斷功能來檢測(cè)模塊狀態(tài)。模塊出現(xiàn)錯(cuò)誤和解除錯(cuò)誤時(shí),系統(tǒng)均觸發(fā)診斷錯(cuò)誤中斷(Diagnosticerrorinterrupt)組織塊OB82,并中斷正常的循環(huán)程序;此時(shí)無論程序中有無診斷錯(cuò)誤中斷OB82,CPU均保持RUN模式,同時(shí)ERROR指示燈閃爍。如果希望CPU在接收到該類型的錯(cuò)誤時(shí)進(jìn)入STOP模式,可以在OB82中加入“STP”指令使CPU進(jìn)入STOP模式。當(dāng)調(diào)用診斷錯(cuò)誤中斷組織塊時(shí),通過監(jiān)視OB82接口變量的信息,可以確定出現(xiàn)錯(cuò)誤的設(shè)備、通道和錯(cuò)誤原因。203.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)1)組織塊:時(shí)間錯(cuò)誤中斷組織塊(了解)S7-1200支持時(shí)間錯(cuò)誤中斷,當(dāng)程序執(zhí)行時(shí)間超過最大循環(huán)時(shí)間或發(fā)生時(shí)間錯(cuò)誤事件(如:被調(diào)用的組織塊正在執(zhí)行、中斷組織塊隊(duì)列發(fā)生溢出、由于中斷負(fù)荷過大而導(dǎo)致中斷丟失)時(shí),將觸發(fā)時(shí)間錯(cuò)誤中斷(Timeerrorinterrupt)組織塊OB80。OB80優(yōu)先級(jí)最高,它將中斷所有正常循環(huán)程序或其它所有OB事件的執(zhí)行而優(yōu)先執(zhí)行。當(dāng)調(diào)用時(shí)間錯(cuò)誤中斷組織塊時(shí),通過監(jiān)視OB80接口變量的信息,可以確定相關(guān)錯(cuò)誤信息。213.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)2)功能FC和功能塊FB功能(Function,F(xiàn)C)和功能塊(Functionblock,F(xiàn)B)是用戶編寫的程序塊,作為子程序被OB或其他FC、FB進(jìn)行調(diào)用。在被調(diào)用的FC(或FB)的塊接口中定義輸入/輸出等參數(shù),即可實(shí)現(xiàn)與調(diào)用它的塊之間的數(shù)據(jù)傳遞。FB具有自己的存儲(chǔ)區(qū)域(背景數(shù)據(jù)塊),在調(diào)用FB時(shí)必須為其指定至少一個(gè)背景數(shù)據(jù)塊,用以存放FB中的輸入/輸出參數(shù)、靜態(tài)變量等數(shù)據(jù),但不會(huì)保存局部變量(存放在臨時(shí)數(shù)據(jù)存儲(chǔ)區(qū)中)。背景數(shù)據(jù)塊在FB被調(diào)用時(shí)自動(dòng)打開、在FB執(zhí)行完成后自動(dòng)關(guān)閉;當(dāng)FB執(zhí)行完成后,存放在背景數(shù)據(jù)塊中的數(shù)據(jù)不會(huì)丟失,這些數(shù)據(jù)可直接被其他程序塊或HMI(人機(jī)界面)直接訪問。223.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)2)功能FC和功能塊FBFC沒有自己的存儲(chǔ)區(qū)域,F(xiàn)C執(zhí)行完成后,局部變量信息將丟失。若有FC執(zhí)行后需要保存的數(shù)據(jù),可采用全局變量(全局?jǐn)?shù)據(jù)塊或位存儲(chǔ)區(qū)M等),但這樣會(huì)影響FC的可移植性;如果FC中僅使用局部變量,可直接將該FC移植到其他工程。由于FC沒有自己的存儲(chǔ)區(qū)域,不能給局部變量設(shè)置初始值,調(diào)用時(shí)需給所有的形參指定實(shí)參。另外,PLC操作系統(tǒng)只負(fù)責(zé)分配臨時(shí)區(qū)域并不管資源回收,所以FC編程時(shí)遵循的原則是先賦值再使用,否則臨時(shí)區(qū)域的數(shù)據(jù)有可能是其他FC用剩下的,造成程序的混亂。233.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.S7-1200程序架構(gòu)3)數(shù)據(jù)塊數(shù)據(jù)塊(Datablock,DB)是用于存放執(zhí)行程序時(shí)所需數(shù)據(jù)以及程序執(zhí)行結(jié)果的數(shù)據(jù)存儲(chǔ)區(qū),用戶程序以位、字節(jié)、字或雙字方式訪問數(shù)據(jù)塊中的數(shù)據(jù)。與代碼塊不同,數(shù)據(jù)塊不含指令,數(shù)據(jù)塊中變量的地址由軟件按照變量生成先后順序自動(dòng)分配。S7-1200的數(shù)據(jù)塊可分為全局?jǐn)?shù)據(jù)塊和背景數(shù)據(jù)塊。全局?jǐn)?shù)據(jù)塊用以存儲(chǔ)全局?jǐn)?shù)據(jù),所有代碼塊(OB、FB、FC)都可訪問全局?jǐn)?shù)據(jù)塊;背景數(shù)據(jù)塊用以存儲(chǔ)只在某個(gè)FB中需要存儲(chǔ)的數(shù)據(jù),是直接分配給特定FB的局部存儲(chǔ)區(qū),僅限特定的FB訪問。243.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200與其他計(jì)算機(jī)控制系統(tǒng)一樣,其具有的存儲(chǔ)器用于存放操作系統(tǒng)數(shù)據(jù)、用戶程序及變量信息等,以保證PLC能夠正常工作。物理存儲(chǔ)器類型(1)隨機(jī)存取存儲(chǔ)器(RAM)(2)只讀存儲(chǔ)器(ROM)(3)閃存(FlashEPROM)/電可擦可編程只讀存儲(chǔ)器(EEPROM)253.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址物理存儲(chǔ)器在邏輯上也可稱為內(nèi)部存儲(chǔ)區(qū),根據(jù)邏輯功能的不同,S7-1200的內(nèi)部存儲(chǔ)區(qū)可分為用戶存儲(chǔ)區(qū)(UserMemory)和系統(tǒng)存儲(chǔ)區(qū)(SystemMemory)。S7-1200的內(nèi)部存儲(chǔ)器/區(qū):用戶存儲(chǔ)區(qū)(了解)用戶存儲(chǔ)區(qū)包括裝載存儲(chǔ)區(qū)(LoadMemory)、工作存儲(chǔ)區(qū)(WorkMemory)和斷電保持存儲(chǔ)區(qū)(RetentiveMemory)三種。(1)裝載存儲(chǔ)區(qū):屬于非易失性存儲(chǔ)器,用于存放用戶程序、數(shù)據(jù)及配置信息,物理性質(zhì)上屬于閃存/電可擦可編程只讀存儲(chǔ)器。下載到CPU中的用戶程序?qū)⒋鎯?chǔ)在裝載存儲(chǔ)區(qū)中,因此每種CPU都有內(nèi)部裝載存儲(chǔ)區(qū),且CPU電源斷電后數(shù)據(jù)不會(huì)丟失。263.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的內(nèi)部存儲(chǔ)器/區(qū):用戶存儲(chǔ)區(qū)(了解)(2)工作存儲(chǔ)區(qū):屬于易失性存儲(chǔ)器,用于存放CPU運(yùn)行時(shí)從裝載存儲(chǔ)器中復(fù)制來的用戶數(shù)據(jù),物理性質(zhì)上屬于隨機(jī)存取存儲(chǔ)器。CPU上電后,將與程序執(zhí)行有關(guān)的用戶程序(如:OB、FB、FC、DB)從裝載存儲(chǔ)器復(fù)制到工作存儲(chǔ)區(qū)中,提高CPU的訪問速度;CPU斷電后,工作存儲(chǔ)區(qū)中的數(shù)據(jù)丟失。工作存儲(chǔ)區(qū)容量不能被擴(kuò)展。(3)斷電保持存儲(chǔ)區(qū):屬于非易失性存儲(chǔ)器,用于存放斷電時(shí)需要保存的重要數(shù)據(jù)。CPU斷電時(shí),將工作存儲(chǔ)區(qū)指定的數(shù)據(jù)保存在斷電保持存儲(chǔ)區(qū)中,待電源恢復(fù)后(暖啟動(dòng)時(shí))再將保存的數(shù)據(jù)還原至原來的地址,S7-1200系列CPU均有10KB的斷電保持存儲(chǔ)區(qū)。273.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的內(nèi)部存儲(chǔ)器/區(qū):系統(tǒng)存儲(chǔ)區(qū)系統(tǒng)存儲(chǔ)區(qū)用于存放執(zhí)行用戶程序時(shí)所涉及的操作數(shù)據(jù),包括輸入過程映像區(qū)(Inputprocessimagearea)、輸出過程映像區(qū)(Outputprocessimagearea)、位存儲(chǔ)區(qū)(BitMemory)、臨時(shí)數(shù)據(jù)存儲(chǔ)區(qū)(TemporaryMemory)及數(shù)據(jù)塊存儲(chǔ)區(qū)(DatablockMemory)。283.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的內(nèi)部存儲(chǔ)器/區(qū):系統(tǒng)存儲(chǔ)區(qū)(1)輸入過程映像區(qū)ICPU在每個(gè)循環(huán)周期的開始都會(huì)掃描外設(shè)的物理地址,并把得到的數(shù)據(jù)存放到輸入過程映像區(qū),該存儲(chǔ)區(qū)允許用戶程序以位、字節(jié)、字或者雙字形式進(jìn)行訪問,如I0.0、IW20等。輸入過程映像區(qū)允許在全局范圍內(nèi)進(jìn)行讀/寫操作,但一般情況都是進(jìn)行讀操作。若在輸入地址后面加“:P”(如I0.6:P),操作系統(tǒng)會(huì)跳過輸入過程映像區(qū)(不更新),立即讀取外設(shè)的內(nèi)容。外設(shè)內(nèi)容是不允許CPU進(jìn)行寫操作的,所以I0.6:P是只讀的;而I0.6是訪問輸入過程映像區(qū)的數(shù)據(jù),它是外設(shè)內(nèi)容的拷貝,所以可讀可寫。293.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的內(nèi)部存儲(chǔ)器/區(qū):系統(tǒng)存儲(chǔ)區(qū)(2)輸出過程映像區(qū)QCPU在每個(gè)循環(huán)周期結(jié)束前都會(huì)把輸出過程映像區(qū)的內(nèi)容復(fù)制到外設(shè)地址的輸出模塊中,該存儲(chǔ)區(qū)允許用戶程序以位、字節(jié)、字或者雙字形式進(jìn)行訪問,如Q0.0、QW10等。輸出過程映像區(qū)允許在全局范圍內(nèi)進(jìn)行讀/寫操作,但一般情況都是進(jìn)行寫操作。若在輸出地址后面加“:P”(如Q0.2:P),系統(tǒng)將運(yùn)算結(jié)果立即輸出到外設(shè)的物理地址,同時(shí)更新輸出過程映像區(qū)。Q0.2:P是只寫的,而Q0.2是訪問輸出過程映像區(qū)的數(shù)據(jù),所以可讀可寫。303.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的內(nèi)部存儲(chǔ)器/區(qū):系統(tǒng)存儲(chǔ)區(qū)(3)位存儲(chǔ)區(qū)M位存儲(chǔ)區(qū)用以存放程序運(yùn)行時(shí)涉及的大量中間變量和臨時(shí)數(shù)據(jù),因此該存儲(chǔ)區(qū)使用頻率很高。允許用戶程序以位、字節(jié)、字或者雙字形式進(jìn)行訪問,如M0.0、MD20等。位存儲(chǔ)區(qū)允許在全局范圍內(nèi)進(jìn)行讀/寫操作,不會(huì)因?yàn)槌绦驂K調(diào)用結(jié)束而被系統(tǒng)收回;但M區(qū)的數(shù)據(jù)在CPU斷電后丟失,如需保存該數(shù)據(jù),可將該數(shù)據(jù)設(shè)置為斷電保持性。(4)臨時(shí)數(shù)據(jù)存儲(chǔ)區(qū)Temp臨時(shí)數(shù)據(jù)存儲(chǔ)區(qū)用以存放FB或FC運(yùn)行中所需的臨時(shí)變量,只在FB/FC被調(diào)用的過程中有效,調(diào)用結(jié)束后該變量的存儲(chǔ)區(qū)被操作系統(tǒng)收回。臨時(shí)數(shù)據(jù)存放區(qū)的數(shù)據(jù)是局部有效的,臨時(shí)變量也稱為局部變量,只能被調(diào)用的FB/FC訪問。臨時(shí)變量不能保存到斷電保持存儲(chǔ)區(qū)。313.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的內(nèi)部存儲(chǔ)器/區(qū):系統(tǒng)存儲(chǔ)區(qū)(5)數(shù)據(jù)塊存儲(chǔ)區(qū)DB數(shù)據(jù)塊存儲(chǔ)區(qū)用以存放用戶程序的各種數(shù)據(jù),允許用戶以位、字節(jié)、字或者雙字形式進(jìn)行訪問,如DB1.DBX3.2、DB3.DBB10等。某些指令運(yùn)算所需的數(shù)據(jù)結(jié)構(gòu)也存放在數(shù)據(jù)塊存儲(chǔ)區(qū)中,數(shù)據(jù)塊分為全局?jǐn)?shù)據(jù)塊和背景數(shù)據(jù)塊,數(shù)據(jù)塊中的數(shù)據(jù)具有斷電保持性,程序塊調(diào)用結(jié)束后不會(huì)被系統(tǒng)收回。323.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的尋址(1)絕對(duì)尋址直接采用存儲(chǔ)區(qū)域標(biāo)識(shí)符、數(shù)據(jù)長(zhǎng)度及直接地址來表示的尋址方式,如I0.3、QB2、MW4、DB1.DBD6等。S7-1200的存儲(chǔ)區(qū)按字節(jié)為基本單元進(jìn)行分配,無論尋址何種數(shù)據(jù),通常應(yīng)指出該數(shù)據(jù)所在存儲(chǔ)區(qū)域內(nèi)的字節(jié)地址。①位尋址:由存儲(chǔ)區(qū)域標(biāo)識(shí)符、字節(jié)地址及位號(hào)組成。例如:I0.3表示輸入過程映像區(qū)I中的第0個(gè)字節(jié)的第3位;DB1.DBX2.5表示數(shù)據(jù)塊存儲(chǔ)區(qū)DB1中的第2個(gè)字節(jié)的第5位。②字節(jié)、字、雙字尋址:由存儲(chǔ)區(qū)域標(biāo)識(shí)符、數(shù)據(jù)長(zhǎng)度及起始字節(jié)號(hào)組成。例如:MB0表示位存儲(chǔ)區(qū)M中的第0個(gè)字節(jié)開始的一個(gè)字節(jié)地址;MD0表示位存儲(chǔ)區(qū)M中的第0個(gè)字節(jié)開始的一個(gè)雙字地址;DB1.DBD6表示數(shù)據(jù)塊存儲(chǔ)區(qū)DB1中的第6個(gè)字節(jié)開始的一個(gè)雙字地址。333.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的尋址(1)絕對(duì)尋址343.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)重點(diǎn)理解2.S7-1200存儲(chǔ)區(qū)及尋址S7-1200的尋址(2)符號(hào)尋址符號(hào)尋址是對(duì)絕對(duì)地址定義一個(gè)符號(hào)名,并利用該符號(hào)名進(jìn)行尋址。在變量表中將I0.0、Q0.0的符號(hào)名分別定義為Start、Motor_On,即可通過Start和Motor_On訪問用戶程序中的地址,可提高程序的直觀性和易讀性。符號(hào)尋址尤其適用于變量較多的復(fù)雜系統(tǒng),定義的符號(hào)應(yīng)符合行業(yè)內(nèi)標(biāo)準(zhǔn)。對(duì)于數(shù)據(jù)塊DB,因在添加該塊時(shí)默認(rèn)屬性是“優(yōu)化的塊訪問”,所以在程序中只能為該存儲(chǔ)區(qū)的絕對(duì)地址創(chuàng)建符號(hào),并采用符號(hào)尋址方式進(jìn)行訪問。如想采用絕對(duì)尋址方式(如DB2.DBX0.3),可右鍵點(diǎn)擊項(xiàng)目樹中的數(shù)據(jù)塊→屬性→取消勾選“優(yōu)化的塊訪問”。353.2S7-1200PLC軟件系統(tǒng)電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)制計(jì)算機(jī)控制系統(tǒng)常采用的數(shù)制包括:二進(jìn)制數(shù)、十六進(jìn)制數(shù)及BCD碼。二進(jìn)制二進(jìn)制是最為簡(jiǎn)單的進(jìn)位制,一位(bit)只有0和1兩種取值,對(duì)應(yīng)數(shù)字量(開關(guān)量)的兩種不同狀態(tài),如線圈的得電和失電、觸點(diǎn)的閉合和斷開等。如果該位為1或者TRUE,則代表軟件中對(duì)應(yīng)的位元件(如位存儲(chǔ)區(qū)M、輸出過程映像區(qū)Q)的線圈得電,其常開觸點(diǎn)閉合、常閉觸點(diǎn)斷開。如果該位為0或者FALSE,則代表對(duì)應(yīng)的位元件的線圈失電,其常開觸點(diǎn)斷開、常閉觸點(diǎn)閉合。二進(jìn)制常數(shù)前應(yīng)加2#,如2#1100_1010代表一個(gè)8位的二進(jìn)制數(shù)。363.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)制十六進(jìn)制采用二進(jìn)制表示計(jì)算機(jī)系統(tǒng)數(shù)據(jù)比較直觀,但數(shù)據(jù)長(zhǎng)度過長(zhǎng),不方便閱讀。為此,計(jì)算機(jī)控制系統(tǒng)常采用十六進(jìn)制數(shù)來表達(dá)數(shù)據(jù),每個(gè)十六進(jìn)制數(shù)對(duì)應(yīng)為一組4位二進(jìn)制數(shù),取值范圍為0~9和A~F(對(duì)應(yīng)十進(jìn)制下的10~15)。十六進(jìn)制常數(shù)前應(yīng)加16#,如16#CA代表一個(gè)8位的二進(jìn)制數(shù),轉(zhuǎn)換為二進(jìn)制數(shù)即2#1100_1010。S7-1200中,也可采用在16#前加數(shù)據(jù)類型以指定數(shù)據(jù)長(zhǎng)度,如B#16#、W#16#和DW#16#分別表示十六進(jìn)制下的字節(jié)、字、和雙字常數(shù),16#CA也可表示為B#16#CA。373.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)制BCD碼在計(jì)算機(jī)控制系統(tǒng)和數(shù)字式儀器中,常采用二進(jìn)制碼表示十進(jìn)制數(shù)。BCD碼即是用一組4位二進(jìn)制數(shù)來表示一位十進(jìn)制數(shù),每一位BCD碼取值范圍為0~9,對(duì)應(yīng)2#0000~2#1001(2#1010~2#1111在BCD碼中未使用)。S7-1200中存在BCD16和BCD32兩種數(shù)值范圍不同的BCD碼,如圖所示。通常用BCD碼的最高位(最左側(cè)4位二進(jìn)制數(shù))作為符號(hào)位,0000表示為正、1111表示為負(fù)。BCD16、BCD32格式數(shù)值范圍分別為-999~+999、-9999999~+9999999。圖中的BCD碼數(shù)值分別為+428、-4229801。383.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)制BCD碼BCD碼沒有獨(dú)立的表示方法,而是借用了十六進(jìn)制數(shù)的表示方法,在數(shù)據(jù)前加16#。區(qū)分一個(gè)數(shù)據(jù)是BCD碼還是十六進(jìn)制數(shù),需要根據(jù)數(shù)據(jù)的實(shí)際用途和具體指令來加以判斷。注意,BCD碼在PLC中的應(yīng)用主要有兩個(gè)場(chǎng)合:PLC通過外部BCD碼撥碼開關(guān)設(shè)定PLC的內(nèi)部數(shù)據(jù)、通過外部BCD碼顯示器顯示PLC的內(nèi)部數(shù)據(jù)。隨著HMI設(shè)備的快速發(fā)展,以上兩種應(yīng)用場(chǎng)合也日趨減少。393.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)據(jù)類型數(shù)據(jù)類型用于定義操作數(shù)的類型和長(zhǎng)度,以確保操作數(shù)與指令類型的一致性。S7-1200支持的數(shù)據(jù)類型有:基本數(shù)據(jù)類型、復(fù)雜數(shù)據(jù)類型、PLC數(shù)據(jù)類型、參數(shù)類型、系統(tǒng)數(shù)據(jù)類型和硬件數(shù)據(jù)類型?;緮?shù)據(jù)類型403.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)據(jù)類型基本數(shù)據(jù)類型(1)BCD16和BCD32不屬于數(shù)據(jù)類型,但轉(zhuǎn)換指令CONV支持這兩個(gè)格式,故列入表中。(2)字節(jié)、字和雙字?jǐn)?shù)據(jù)類型均為無符號(hào)數(shù),字符又稱ASCII碼。(3)短整數(shù)SInt、整數(shù)Int和雙整數(shù)DInt分別表示8位、16位和32位的有符號(hào)整數(shù)。最高位為符號(hào)位:0代表正數(shù)、1代表負(fù)數(shù)。在有符號(hào)整數(shù)前加符號(hào)U(unsigned),數(shù)據(jù)類型將表示為無符號(hào)整數(shù)USInt、UInt、UDInt,該類整數(shù)只有正值。(4)浮點(diǎn)數(shù)是用符號(hào)、尾數(shù)和指數(shù)來表示實(shí)數(shù)的數(shù)據(jù),在計(jì)算機(jī)中的格式為1.m×2e。32位單精度浮點(diǎn)數(shù)Real的精度最高為7位有效數(shù)字,結(jié)構(gòu)如圖所示。413.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)據(jù)類型基本數(shù)據(jù)類型最高位(第31位)為符號(hào)位;第23~30位為8位指數(shù)位,第0~22位為23位尾數(shù)位。IEEE754標(biāo)準(zhǔn)規(guī)定,浮點(diǎn)數(shù)的整數(shù)部分始終為1,只保留尾數(shù)中的小數(shù)部分。浮點(diǎn)數(shù)對(duì)應(yīng)的實(shí)數(shù)計(jì)算公式為:式中,符號(hào)位取值為0或1;e為8位指數(shù)位對(duì)應(yīng)的短整數(shù),取值范圍為0~255;m為23位尾數(shù)位對(duì)應(yīng)的小數(shù)部分,尾數(shù)位的最高位權(quán)值為2-1,最低位權(quán)值為2-23。浮點(diǎn)數(shù)的優(yōu)勢(shì)在于可以用較小的存儲(chǔ)空間(4B)表示極大或極小的數(shù)據(jù)。然而,外部信號(hào)在PLC中對(duì)應(yīng)的輸入/輸出存儲(chǔ)區(qū)中的數(shù)據(jù)大多是整數(shù)(如模擬量輸入/輸出值),如想利用浮點(diǎn)數(shù)來處理這些數(shù)據(jù),需要進(jìn)行整數(shù)與浮點(diǎn)數(shù)之間的轉(zhuǎn)換,浮點(diǎn)數(shù)的運(yùn)算速度比整數(shù)的運(yùn)算速度要慢一些。423.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)據(jù)類型基本數(shù)據(jù)類型(5)64位雙精度浮點(diǎn)數(shù)LReal與單精度浮點(diǎn)數(shù)Real表示方法相同,但LReal取值范圍更大、精度更高(最高為15位有效數(shù)字)。最高位(第63位)為符號(hào)位,第52~62位為11位指數(shù)位,第0~51位為52位尾數(shù)位。由于LReal類型的數(shù)據(jù)占用64個(gè)位地址,用戶無法使用絕對(duì)尋址方式,只能通過符號(hào)尋址方式。(6)Time類型數(shù)據(jù)以32位有符號(hào)雙整數(shù)形式存儲(chǔ),范圍比16位的S5Time類型更寬,最小時(shí)基為1ms,最大計(jì)量單位為天(d),格式為T#0d_1h_1m_0s_0ms(下劃線可不寫,不需指定全部時(shí)間單位)。433.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)據(jù)類型基本數(shù)據(jù)類型【例3-2】①32位單精度浮點(diǎn)數(shù)為0011_1111_1110_0000_0000_0000_0000_0000,試求其實(shí)數(shù)值。②若浮點(diǎn)數(shù)為1100_0010_0100_1010_0000_0000_0000_0000,試求對(duì)應(yīng)的實(shí)數(shù)值。解:①將該浮點(diǎn)數(shù)寫為0_0111_1111_110_0000_0000_0000_0000_0000。其符號(hào)位為0;指數(shù)位為0111_1111,即127;尾數(shù)位為110_0000_0000_0000_0000_0000,即1×2-1+1×2-2

=0.75;代入公式可得對(duì)應(yīng)實(shí)數(shù)為:(-1)0×1.75×2(127-127)=1.75。②將該浮點(diǎn)數(shù)寫為1_1000_0100_100_1010_0000_0000_0000_0000,其符號(hào)位為1;指數(shù)位為1000_0100,即132;尾數(shù)位為100_1010_0000_0000_0000_0000,即2-1+2-4+2-6=0.578125;代入公式可得對(duì)應(yīng)實(shí)數(shù)為:(-1)1×1.578125×2(132-127)=-50.5。443.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.數(shù)據(jù)類型基本數(shù)據(jù)類型【例3-3】若S7-1200中有一實(shí)數(shù)123.75,試求其對(duì)應(yīng)的32位單精度浮點(diǎn)數(shù)。解:①將實(shí)數(shù)的整數(shù)部分123轉(zhuǎn)換為二進(jìn)制數(shù),即10#123=2#1111011。②將小數(shù)部分0.75轉(zhuǎn)換為二進(jìn)制數(shù),將0.75×2=1.5,第一位取1;將剩下的0.5×2=1.0,第二位取1。實(shí)數(shù)123.75轉(zhuǎn)化為二進(jìn)制下的1111011.11。③

向左移動(dòng)小數(shù)點(diǎn),小數(shù)點(diǎn)前只保留1位有效數(shù)據(jù)位(值為1),得到1.11101111×26。對(duì)比式(3-1)可得,符號(hào)位為0;尾數(shù)位m為2#1110_1111;指數(shù)位e為133(6+127),即2#1000_0101。綜上,可得123.75對(duì)應(yīng)的32位單精度浮點(diǎn)數(shù)為:0_1000_0101_111_0111_1000_0000_0000_0000。453.3數(shù)制與數(shù)據(jù)類型電氣控制及S7-1200PLC應(yīng)用技術(shù)1.梯形圖IEC61131-3規(guī)定了PLC的5種編程語言:梯形圖(LadderDiagram,LD/LAD)、功能塊圖(FunctionBlockDiagram,F(xiàn)BD)、指令表(InstructionList)、結(jié)構(gòu)文本(StructuredText,ST)和順序功能圖(SequentialFunctionChart,SFC)。西門子PLC編程軟件TIA(V13以上版本)提供了3種標(biāo)準(zhǔn)編程語言:梯形圖LAD、功能塊圖FBD和結(jié)構(gòu)化控制語言SCL(即標(biāo)準(zhǔn)中的結(jié)構(gòu)文本ST)。在添加各程序塊時(shí)即可選擇編程語言;或者打開現(xiàn)有程序塊,點(diǎn)擊右下角的“屬性”→“常規(guī)”→“語言”,可進(jìn)行LAD與FBD之間的相互轉(zhuǎn)換。梯形圖LAD類似于繼電器接觸器控制系統(tǒng)的控制線路圖,特別適合邏輯控制場(chǎng)合。梯形圖編程方法簡(jiǎn)單、修改方便且直觀易懂,容易被初學(xué)者和熟悉繼電器接觸器系統(tǒng)的工程師掌握,是目前使用最為廣泛的圖形化編程語言。463.4編程語言電氣控制及S7-1200PLC應(yīng)用技術(shù)1.梯形圖梯形圖由母線、觸點(diǎn)、線圈和功能框等元素組成,其特點(diǎn)如下:(1)母線相當(dāng)于繼電器接觸器控制系統(tǒng)的電源線,以左、右兩條豎線表示(西門子PLC編程軟件中省略了右母線),左母線狀態(tài)始終為ON,所有指令均應(yīng)從左母線出發(fā)。(2)觸點(diǎn)和線圈沿用了繼電器接觸器控制系統(tǒng)的術(shù)語。觸點(diǎn)表示邏輯輸入條件,如開關(guān)、按鈕等外部輸入信號(hào)或內(nèi)部的常開、常閉觸點(diǎn)。線圈通常表示邏輯輸出結(jié)果,用以控制繼電器、接觸器等外部輸出或內(nèi)部的線圈等。(3)功能框用來表示定時(shí)器、計(jì)數(shù)器或數(shù)學(xué)運(yùn)算等復(fù)雜的指令。473.4編程語言電氣控制及S7-1200PLC應(yīng)用技術(shù)2.功能塊圖功能塊圖FBD是一種類似于數(shù)字邏輯門電路的圖形化編程語言,也具有簡(jiǎn)單直觀的優(yōu)點(diǎn),容易被具有數(shù)字邏輯電路基礎(chǔ)的工程師掌握。功能塊圖用類似與門、或門的方框來表示邏輯運(yùn)算關(guān)系,方框的左側(cè)為邏輯運(yùn)算的輸入信號(hào),右側(cè)為輸出信號(hào),輸入、輸出端的小圓圈表示“取反”運(yùn)算,各方框的連接線即為信號(hào)線,信號(hào)從左往右流動(dòng)。功能塊圖編程語言的特點(diǎn)是:(1)以功能指令或功能塊為單位,容易理解,分析方便。(2)功能塊圖也是圖形化編程語言,直觀性強(qiáng),容易掌握。(3)對(duì)于控制邏輯復(fù)雜的系統(tǒng),由于功能塊圖能清楚表達(dá)功能關(guān)系,使編程調(diào)試時(shí)間大大減少。483.4編程語言電氣控制及S7-1200PLC應(yīng)用技術(shù)2.功能塊圖圖示為功能塊圖編程實(shí)例,為了更好地對(duì)比理解,將對(duì)應(yīng)的梯形圖放在左邊。493.4編程語言電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化文本結(jié)構(gòu)化控制語言SCL是基于PASCAL的高級(jí)編程語言,支持賦值、數(shù)學(xué)運(yùn)算、比較和位邏輯等標(biāo)準(zhǔn)語句,也支持IF-THEN、CASE-OF和WHILE-Do等控制語句,特別適合復(fù)雜算法、數(shù)學(xué)函數(shù)編程以及數(shù)據(jù)和配方管理過程優(yōu)化等。SCL的許多指令(如定時(shí)器和計(jì)數(shù)器等)都可與LAD/FBD中的指令相對(duì)應(yīng),SCL程序塊也可與LAD/FBD程序塊相互調(diào)用。相對(duì)于LAD/FBD,SCL能實(shí)現(xiàn)條件處理、循環(huán)和嵌套等控制結(jié)構(gòu),更容易實(shí)現(xiàn)復(fù)雜的控制算法。所以SCL也逐漸成為西門子PLC的重要編程語言之一。SCL指令使用標(biāo)準(zhǔn)編程運(yùn)算符,例如,“(,)”表示表達(dá)式,“:=”表示賦值,數(shù)學(xué)運(yùn)算(“+”表示相加、“-”表示相減、“*”表示相乘、“/”表示相除、“**”表示平方),“<>”表示不等于,“NOT”表示取反等。503.4編程語言電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化文本右圖所示的梯形圖為典型的啟保停電路,也可用SCL編程語言來實(shí)現(xiàn)。先在PLC變量表中定義三個(gè)變量名:I0.0、I0.1和Q0.0,對(duì)應(yīng)地址分別為%I0.0、%I0.1和%Q0.0,在SCL程序塊中編寫如下代碼:

IF("I0.0"OR"Q0.0")AND(NOT"I0.1")THEN//StatementsectionIF"Q0.0":=1;ELSE"Q0.0":=0;END_IF;513.4編程語言電氣控制及S7-1200PLC應(yīng)用技術(shù)1.線性化編程Step7編程軟件提供了三種程序設(shè)計(jì)方法:線性化編程、模塊化編程和結(jié)構(gòu)化編程。線性化編程是將整個(gè)用戶程序連續(xù)放置在一個(gè)循環(huán)組織塊(OB1)中,操作系統(tǒng)按照從上向下、從左至右的順序周期性循環(huán)執(zhí)行循環(huán)組織塊中的所有程序,這種結(jié)構(gòu)和繼電器接觸器控制系統(tǒng)類似。線性化編程結(jié)構(gòu)簡(jiǎn)單,所有程序均存放于主程序中,不需要進(jìn)行功能塊、功能和數(shù)據(jù)塊的調(diào)用,比較適合初學(xué)者。然而該編程方法的缺點(diǎn)也很明顯:對(duì)于某些具有前提條件的指令,在條件不滿足時(shí)可不必執(zhí)行,但循環(huán)掃描方式?jīng)Q定了所有指令在每個(gè)掃描周期都將執(zhí)行一次,增加了CPU的負(fù)擔(dān);另外,系統(tǒng)中若存在相同或相似的控制工藝,線性化編程需要重復(fù)編寫相同或類似的控制程序,增加了程序的復(fù)雜性和修改難度。所以,雖然線性化編程可實(shí)現(xiàn)所有控制要求,但一般僅用于簡(jiǎn)單的系統(tǒng)中。523.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)1.線性化編程圖示為采用線性化編程方法編寫的三臺(tái)電機(jī)控制程序結(jié)構(gòu)。533.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)2.模塊化編程模塊化編程是將復(fù)雜系統(tǒng)的控制要求分解為若干個(gè)子要求,對(duì)每個(gè)子要求編寫?yīng)毩⒌膲K程序(FC/FB),并在主程序OB1中根據(jù)條件對(duì)獨(dú)立的程序塊進(jìn)行調(diào)用。被調(diào)用的程序塊執(zhí)行結(jié)束后,返回到OB1中的調(diào)用點(diǎn),繼續(xù)執(zhí)行后續(xù)程序或調(diào)用其他程序塊。模塊化編程中OB1起著主程序的作用,F(xiàn)C/FB控制著不同的子要求,相當(dāng)于主程序中調(diào)用的子程序。模塊化編程中被調(diào)用塊不向調(diào)用塊返回?cái)?shù)據(jù)。模塊化編程中,主程序和各個(gè)被調(diào)用的子程序間沒有參數(shù)的直接傳遞,可單獨(dú)編寫各子程序塊,程序結(jié)構(gòu)直觀性強(qiáng),且方便調(diào)試、修改及查找故障;另外,在主程序中調(diào)用子程序時(shí),只需執(zhí)行滿足條件的程序塊,提高了CPU的利用效率。543.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)2.模塊化編程圖示為采用模塊化編程方法編寫的三臺(tái)電機(jī)控制程序結(jié)構(gòu)。553.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)2.模塊化編程【例3-4】要求對(duì)現(xiàn)場(chǎng)3臺(tái)電動(dòng)機(jī)進(jìn)行啟停控制,控制方式相同:按下啟動(dòng)按鈕,對(duì)應(yīng)電動(dòng)機(jī)連續(xù)運(yùn)行;按下停止按鈕,對(duì)應(yīng)電動(dòng)機(jī)停止。試用模塊化編程方法實(shí)現(xiàn)PLC程序。解:①配置系統(tǒng)I/O分配表:563.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)2.模塊化編程解:②題中3臺(tái)電機(jī)均為典型的啟保停控制,可分別在FC1、FC2、FC3中對(duì)它們進(jìn)行單獨(dú)控制,然后在主程序OB1中調(diào)用FC1、FC2和FC3即可。如圖所示。573.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程結(jié)構(gòu)化編程是在將復(fù)雜系統(tǒng)任務(wù)分解的基礎(chǔ)上,進(jìn)一步對(duì)過程要求類似或相關(guān)的任務(wù)歸類,在功能或功能塊中編程,形成通用解決方案。通過不同的參數(shù)調(diào)用相同的功能或通過不同的背景數(shù)據(jù)塊調(diào)用相同的功能塊。結(jié)構(gòu)化編程必須對(duì)系統(tǒng)功能進(jìn)行合理分析、分解和綜合,同時(shí)需要對(duì)數(shù)據(jù)進(jìn)行管理,對(duì)設(shè)計(jì)人員的水平要求較高。結(jié)構(gòu)化編程的特點(diǎn)是分析出類似或相同的控制要求,根據(jù)控制要求編寫統(tǒng)一的結(jié)構(gòu)化程序塊。該方法有如下優(yōu)點(diǎn):(1)結(jié)構(gòu)化程序塊只需生成一次,顯著減少了編程時(shí)間。(2)結(jié)構(gòu)化程序塊只在用戶存儲(chǔ)區(qū)中保存一次,顯著降低了存儲(chǔ)區(qū)用量。(3)結(jié)構(gòu)化程序塊可被程序多次調(diào)用,該程序塊采用形參(IN、OUT或IN/OUT參數(shù))編程,當(dāng)用戶程序調(diào)用該塊時(shí),要用實(shí)際地址(實(shí)參)給這些參數(shù)賦值。583.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程對(duì)例3-4中的三臺(tái)電機(jī)控制系統(tǒng)進(jìn)行結(jié)構(gòu)化編程,程序結(jié)構(gòu)如圖所示。593.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程【例3-5】要求對(duì)現(xiàn)場(chǎng)3臺(tái)電動(dòng)機(jī)進(jìn)行啟停控制,控制方式相同:按下啟動(dòng)按鈕,對(duì)應(yīng)電動(dòng)機(jī)連續(xù)運(yùn)行;按下停止按鈕,對(duì)應(yīng)電動(dòng)機(jī)停止。試用結(jié)構(gòu)化編程方法實(shí)現(xiàn)PLC程序。解:采用FC的結(jié)構(gòu)化編程,搭建結(jié)構(gòu)化的FC1。①

在FC1塊接口中定義接口形參:Input中定義2個(gè)Bool型變量(start和stop)、Output或InOut中定義1個(gè)Bool型變量(motor)。603.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程解:②

利用形參在FC1中編寫統(tǒng)一的電機(jī)啟保停程序。③最后在OB1中調(diào)用3次FC1程序,每次調(diào)用時(shí)用對(duì)應(yīng)電機(jī)的實(shí)參輸入至形參接口處即可。613.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程【例3-6】某PLC控制系統(tǒng)要求測(cè)量壓力、溫度和流量三個(gè)物理量,試用結(jié)構(gòu)化編程方法實(shí)現(xiàn)上述物理量的均值濾波(假設(shè)連續(xù)取3個(gè)采樣值)。解:均值濾波是將最近X(本題X=3)個(gè)周期的采樣值求算數(shù)平均,作為本周期的采樣值。即將第N-2、第N-1和第N個(gè)周期采樣值的平均值作為第N個(gè)周期的采樣值。設(shè)計(jì)程序時(shí)需將三個(gè)周期的采樣值保存下來,可以用FC進(jìn)行結(jié)構(gòu)化編程,但必須自定義數(shù)據(jù)塊(或位存儲(chǔ)區(qū))、編寫程序來存儲(chǔ)需保持的數(shù)據(jù),比較麻煩。而FB的靜態(tài)變量可由軟件自動(dòng)保存、還可避免自定義存儲(chǔ)區(qū)發(fā)生沖突的危險(xiǎn)。本題可采用FB的結(jié)構(gòu)化編程。623.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程【例3-6】某PLC控制系統(tǒng)要求測(cè)量壓力、溫度和流量三個(gè)物理量,試用結(jié)構(gòu)化編程方法實(shí)現(xiàn)上述物理量的均值濾波(假設(shè)連續(xù)取3個(gè)采樣值)。解:①添加功能塊FB1,在塊接口中定義所需形參,如表所示。633.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程解:②在FB1中利用形參,編寫均值濾波計(jì)算程序,如圖所示。643.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)3.結(jié)構(gòu)化編程解:③

在主程序OB1中,用三個(gè)背景數(shù)據(jù)塊DB1、DB2和DB3連續(xù)調(diào)用3次FB1,分別用以處理壓力、溫度和流量。上述物理量對(duì)應(yīng)的模擬量輸入過程映像區(qū)地址分別為IW96、IW98和IW100,濾波后的結(jié)果以實(shí)數(shù)形式存放在MD96、MD100和MD104中。653.5程序設(shè)計(jì)方法電氣控制及S7-1200PLC應(yīng)用技術(shù)1.編程軟件簡(jiǎn)介TIA博途(TotallyIntegratedAutomationPortal)軟件為全集成自動(dòng)化的實(shí)現(xiàn)提供了統(tǒng)一的工程平臺(tái),是工業(yè)領(lǐng)域第一個(gè)帶有“組態(tài)設(shè)計(jì)環(huán)境”的自動(dòng)化軟件。TIA博途軟件架構(gòu)主要包含:SIMATICSTEP7,用于編程和配置SIMATIC控制器;SIMATICWinCC,用于人機(jī)界面設(shè)計(jì)和SCADA系統(tǒng);SINAMICSStartDrive,用于驅(qū)動(dòng)器配置和調(diào)試;此外還支持S7-PLCSIM,用于在計(jì)算機(jī)上模擬控制器。663.6TIA博途編程軟件(自學(xué))電氣控制及S7-1200PLC應(yīng)用技術(shù)2.編程軟件的基本使用創(chuàng)建項(xiàng)目673.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)右鍵“TIAPortalV15”圖標(biāo)→選擇“以管理員身份運(yùn)行”方式打開軟件。選擇“打開現(xiàn)有項(xiàng)目”,可打開已有項(xiàng)目;如無已有項(xiàng)目,選擇“創(chuàng)建新項(xiàng)目”→修改“項(xiàng)目名稱”和“修改路徑”→點(diǎn)擊“創(chuàng)建”,即可創(chuàng)建一個(gè)新項(xiàng)目,如圖所示。創(chuàng)建項(xiàng)目后選擇“打開項(xiàng)目視圖”,即可進(jìn)入項(xiàng)目界面。2.編程軟件的基本使用添加設(shè)備683.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)進(jìn)入項(xiàng)目界面后,雙擊“添加新設(shè)備”→選擇CPU型號(hào)和訂貨號(hào)(與物理PLC一致)→選擇硬件版本→修改設(shè)備名稱(可不修改)→點(diǎn)擊“確定”,即可為項(xiàng)目添加PLC設(shè)備,如圖所示。2.編程軟件的基本使用硬件組態(tài)693.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)TIA博途項(xiàng)目視圖主要包括“項(xiàng)目樹”(即導(dǎo)航器)、“工作區(qū)”、“監(jiān)視區(qū)”和“任務(wù)卡”等窗口,如圖所示。2.編程軟件的基本使用硬件組態(tài)703.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)配置好硬件設(shè)備后,還需要設(shè)置各模塊的屬性。例如,雙擊機(jī)架上的CPU模塊→進(jìn)入CPU模塊的“屬性”視圖→選擇“PROFINET接口[X1]”→選擇“以太網(wǎng)地址”,可設(shè)置CPU所在網(wǎng)絡(luò)及IP地址,點(diǎn)擊“添加新子網(wǎng)”(默認(rèn)建立子網(wǎng)PN/IE_1),設(shè)置IP地址(默認(rèn)為192.168.0.1),如圖所示。2.編程軟件的基本使用程序編寫項(xiàng)目樹中,選擇“程序塊”→雙擊“Main(OB1)”,進(jìn)入主程序編輯界面;如需添加功能塊FB、功能FC或者數(shù)據(jù)塊DB,可雙擊“添加新塊”。選擇區(qū)域②中的指令并左鍵拖拽至程序段中(或選擇區(qū)域③中的指令快捷鍵),即可編寫程序。713.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)2.編程軟件的基本使用程序編寫建立變量時(shí)默認(rèn)的符號(hào)為Tag_n,可右鍵變量→“重命名變量”→修改變量名稱;如需修改多個(gè)變量名稱,可在項(xiàng)目樹中選擇“PLC變量”→“默認(rèn)變量表”,如圖所示。723.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)2.編程軟件的基本使用下載、監(jiān)控程序按照“編譯→下載→運(yùn)行→在線監(jiān)視”的順序?qū)M態(tài)的硬件、編寫的程序進(jìn)行驗(yàn)證。(1)項(xiàng)目樹中,選中需要下載的項(xiàng)目,點(diǎn)擊“編譯”快捷鍵,信息彈窗出現(xiàn)“編譯完成(錯(cuò)誤:0;警告:0)”即可。(2)點(diǎn)擊“下載到設(shè)備”快捷鍵,彈出“擴(kuò)展的下載到設(shè)備”對(duì)話框,設(shè)置“PG/PC接口類型”為PN/IE,選擇“PG/PC接口”為編程設(shè)備的物理網(wǎng)卡,點(diǎn)擊“開始搜索”;搜索到可訪問的設(shè)備后,選擇要下載的PLC,將整個(gè)項(xiàng)目(包含硬件和軟件)下載到目標(biāo)PLC中。注意:下載時(shí)若CPU處于運(yùn)行模式時(shí),需在“下載預(yù)覽”對(duì)話框中設(shè)置為“全部停止”;下載成功后,需在“下載結(jié)果”對(duì)話框中選擇“啟動(dòng)模塊”。733.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)2.編程軟件的基本使用下載、監(jiān)控程序743.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)2.編程軟件的基本使用下載、監(jiān)控程序搜索目標(biāo)PLC時(shí),應(yīng)注意:753.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)2.編程軟件的基本使用下載、監(jiān)控程序下載成功后,若PLC未處于運(yùn)行狀態(tài),可以點(diǎn)擊“啟動(dòng)CPU”快捷鍵;PLC運(yùn)行后,點(diǎn)擊程序編輯區(qū)中的“啟用/禁用監(jiān)視”快捷鍵,可對(duì)各指令的狀態(tài)進(jìn)行在線監(jiān)視,如圖所示。763.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)3.項(xiàng)目仿真調(diào)試啟動(dòng)仿真器點(diǎn)擊TIAPortal中的“開始仿真”快捷鍵,啟動(dòng)仿真控制器,如圖所示。按鈕RUN/STOP用以控制仿真器的運(yùn)行/停止,MRES用以復(fù)位存儲(chǔ)器、刪除程序塊和硬件配置。指示燈RUN/STOP代表系統(tǒng)運(yùn)行狀態(tài),ERROR代表系統(tǒng)存在軟硬件錯(cuò)誤,MAINT代表系統(tǒng)請(qǐng)求維護(hù)(人為強(qiáng)制I/O點(diǎn)時(shí)也會(huì)亮)。773.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)3.項(xiàng)目仿真調(diào)試下載程序啟動(dòng)仿真器時(shí)會(huì)同時(shí)彈出下載界面(也可手動(dòng)點(diǎn)擊TIAPortal中的“下載到設(shè)備”快捷鍵),如圖所示。將“PG/PC接口”設(shè)置為PLCSIM,點(diǎn)擊“開始搜索”即可。783.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)3.項(xiàng)目仿真調(diào)試運(yùn)行、監(jiān)視程序下載程序后,點(diǎn)擊“啟動(dòng)CPU”快捷鍵和“啟用/禁用監(jiān)視”快捷鍵,即可運(yùn)行并監(jiān)視PLC程序。因仿真控制器無法連接外部數(shù)字量輸入,可在PLCSIM中對(duì)DI點(diǎn)進(jìn)行強(qiáng)制以模擬外部輸入信號(hào):項(xiàng)目樹中,選擇“監(jiān)控與強(qiáng)制表”→雙擊“強(qiáng)制表”→輸入需要強(qiáng)制的DI地址→右鍵選擇“強(qiáng)制為1或0”,如圖所示。793.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)3.項(xiàng)目仿真調(diào)試運(yùn)行、監(jiān)視程序?yàn)榱送瑫r(shí)監(jiān)視多個(gè)變量的狀態(tài),可以在項(xiàng)目樹中選擇“監(jiān)控與強(qiáng)制表”→雙擊“添加新監(jiān)控表”→雙擊新建的“監(jiān)控表_1”→輸入需要監(jiān)控的變量地址→打開“全部監(jiān)視”快捷鍵,即可實(shí)時(shí)監(jiān)控各變量的狀態(tài),如圖所示。803.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)3.項(xiàng)目仿真調(diào)試運(yùn)行、監(jiān)視程序通過強(qiáng)制數(shù)字量輸入點(diǎn),來觀察程序的運(yùn)行效果,如圖所示。813.6TIA博途編程軟件電氣控制及S7-1200PLC應(yīng)用技術(shù)本章小結(jié)掌握S7-1200PLC擴(kuò)展I/O模塊的編址掌握S7-1200PLC的程序架構(gòu)掌握S7-1200PLC的存儲(chǔ)區(qū)及尋址掌握S7-1200PLC的數(shù)據(jù)類型掌握S7-1200PLC的編程語言掌握S7-1200PLC的程序設(shè)計(jì)方法掌握TIA博途編程軟件的使用作業(yè)第2、3、4、6題82本章小結(jié)電氣控制及S7-1200PLC應(yīng)用技術(shù)83第4章S7-1200PLC基本指令及程序設(shè)計(jì)主要內(nèi)容:4.1位邏輯指令4.2定時(shí)器與計(jì)數(shù)器指令4.3程序控制指令4.4數(shù)據(jù)處理指令4.5數(shù)學(xué)運(yùn)算和邏輯運(yùn)算指令4.6PLC程序的基礎(chǔ)設(shè)計(jì)法及應(yīng)用實(shí)例電氣控制及S7-1200PLC應(yīng)用技術(shù)位邏輯指令主要包括觸點(diǎn)和線圈指令、位操作指令和位檢測(cè)指令等17種。844.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)1.觸點(diǎn)指令和線圈指令

觸點(diǎn)指令有常開和常閉觸點(diǎn),線圈指令包括輸出線圈、取反線圈、置位輸出線圈及復(fù)位輸出線圈等,這些是構(gòu)成邏輯的基本元件和要素。(1)觸點(diǎn)指令常開觸點(diǎn):其狀態(tài)取決于操作數(shù)bit對(duì)應(yīng)的映像寄存器狀態(tài)。當(dāng)映像寄存器的值為1時(shí),常開觸點(diǎn)閉合;當(dāng)映像寄存器的值為0時(shí),常開觸點(diǎn)斷開。常閉觸點(diǎn):其狀態(tài)取決于操作數(shù)bit對(duì)應(yīng)的映像寄存器狀態(tài)。當(dāng)映像寄存器的值為1時(shí),常閉觸點(diǎn)斷開;當(dāng)映像寄存器的值為0時(shí),常閉觸點(diǎn)閉合。取反指令:對(duì)邏輯運(yùn)算結(jié)果(ResultofLogicOperation,RLO)的信號(hào)狀態(tài)進(jìn)行取反操作。如果該指令輸入為1,則輸出為0;如果該指令輸入為0,則輸出為1。854.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)(1)觸點(diǎn)指令

舉例:I0.1映像寄存器的值為1時(shí),常開觸點(diǎn)閉合,Q0.1線圈得電;M0.0映像寄存器的值為0時(shí),常閉觸點(diǎn)閉合,M0.1線圈得電,取反后M0.2線圈失電。

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

(1)置位輸出、復(fù)位輸出指令使用置位輸出指令,可將指定操作數(shù)bit位的信號(hào)狀態(tài)置位為1,在對(duì)該位進(jìn)行復(fù)位操作前,其將保持置位狀態(tài)。線圈輸入端的邏輯運(yùn)算結(jié)果為1時(shí),執(zhí)行該指令。使用復(fù)位輸出指令,可將指定操作數(shù)bit位的信號(hào)狀態(tài)復(fù)位為0,在對(duì)該位進(jìn)行置位操作前,其將保持復(fù)位狀態(tài)。線圈輸入端的邏輯運(yùn)算結(jié)果為1時(shí),執(zhí)行該指令。舉例:I0.0閉合后,Q0.0線圈被置位為1(始終得電);I0.1閉合后,Q0.0線圈被復(fù)位為0(始終失電)。904.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)2.置位和復(fù)位指令

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

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

舉例:I0.0和I0.1同時(shí)閉合后,M2.0、M2.1及M2.2三個(gè)線圈(M2.0開始的3個(gè)位)同時(shí)被置位為1,線圈保持得電狀態(tài);I0.0和I0.2同時(shí)閉合后,M2.0、M2.1及M2.2三個(gè)線圈同時(shí)被復(fù)位為0,線圈保持失電狀態(tài)。924.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)2.置位和復(fù)位指令

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

944.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)3.觸發(fā)器指令(1)SR觸發(fā)器使用SR觸發(fā)器指令,可以對(duì)指定操作數(shù)bit進(jìn)行置位或復(fù)位操作。如果置位輸入信號(hào)S和復(fù)位輸入信號(hào)R1都為0,則不執(zhí)行該指令;如果置位輸入信號(hào)S和復(fù)位輸入信號(hào)R1只有一個(gè)有效(為1),則執(zhí)行有效輸入信號(hào)對(duì)應(yīng)的操作;如果置位輸入信號(hào)S和復(fù)位輸入信號(hào)R1同時(shí)有效(均為1),則優(yōu)先執(zhí)行復(fù)位操作。操作數(shù)bit的當(dāng)前狀態(tài)同步被傳送到輸出端Q。(2)RS觸發(fā)器指令使用RS觸發(fā)器指令,可以對(duì)指定操作數(shù)bit進(jìn)行置位或復(fù)位操作。如果置位輸入信號(hào)S1和復(fù)位輸入信號(hào)R都為0,則不執(zhí)行該指令;如果置位輸入信號(hào)S1和復(fù)位輸入信號(hào)R只有一個(gè)有效(為1),則執(zhí)行有效輸入信號(hào)對(duì)應(yīng)的操作;如果置位輸入信號(hào)S1和復(fù)位輸入信號(hào)R同時(shí)有效(均為1),則優(yōu)先執(zhí)行置位操作。操作數(shù)bit的當(dāng)前狀態(tài)同步被傳送到輸出端Q。954.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)3.觸發(fā)器指令觸發(fā)器指令的真值表如表所示。964.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)3.觸發(fā)器指令舉例:I0.0和I0.1分別作為SR觸發(fā)器的置位輸入和復(fù)位輸入信號(hào),對(duì)Q0.0線圈進(jìn)行優(yōu)先復(fù)位操作;I0.0和I0.1也分別作為RS觸發(fā)器的置位輸入和復(fù)位輸入信號(hào),對(duì)Q0.1線圈進(jìn)行優(yōu)先置位操作;由時(shí)序圖可知:若只有I0.0有效,則Q0.0和Q0.1被置位;若只有I0.1有效,則Q0.0和Q0.1被復(fù)位;若I0.0和I0.1同時(shí)有效,則Q0.0被優(yōu)先復(fù)位、Q0.1被優(yōu)先置位。974.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)4.信號(hào)邊沿指令當(dāng)信號(hào)狀態(tài)發(fā)生變化時(shí),將產(chǎn)生跳變沿(上升沿或下降沿)。如圖所示,當(dāng)Q0.0線圈由0變?yōu)?時(shí),產(chǎn)生一個(gè)正跳變的上升沿(EdgeUp);當(dāng)Q0.0線圈由1變?yōu)?時(shí),產(chǎn)生一個(gè)負(fù)跳變的下降沿(EdgeDown)。S7-1200執(zhí)行邊沿指令時(shí),在每個(gè)掃描周期中把信號(hào)狀態(tài)和它在上一掃描周期的狀態(tài)(存儲(chǔ)在邊沿存儲(chǔ)器位中)進(jìn)行比較,如果不同則表明出現(xiàn)了上升沿或下降沿。

984.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)4.信號(hào)邊沿指令信號(hào)邊沿指令的LAD形式及功能如表所示。

994.1位邏輯指令電氣控制及S7-1200PLC應(yīng)用技術(shù)4.信號(hào)邊沿指令(1)邊沿檢測(cè)觸點(diǎn)指令使用上升沿檢測(cè)觸點(diǎn)指令,可以根據(jù)操作數(shù)bit有無上升沿來控制觸點(diǎn)通斷。當(dāng)操作數(shù)bit出現(xiàn)上升沿時(shí),該觸點(diǎn)導(dǎo)通一個(gè)掃描周期。邊沿存儲(chǔ)器位M_bit用于存放操作數(shù)bit在上一掃描周期的狀態(tài),通過比較操作數(shù)bit的當(dāng)前狀態(tài)與上一掃描周期的狀態(tài),來確定是否存在上升沿。使用下降沿檢測(cè)觸點(diǎn)指令,可以根據(jù)操作數(shù)bit有無下降沿來控制觸點(diǎn)通斷。當(dāng)操作數(shù)bit出現(xiàn)下降沿時(shí),該觸點(diǎn)導(dǎo)通一個(gè)掃描周期。邊沿

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論