- 零基礎學西門子S7-200 SMART PLC
- 李長軍 朱金朝 李長城主編
- 6636字
- 2022-05-10 16:40:54
第一節 PLC的組成與工作原理
一、PLC的外形
1 常用西門子PLC
德國西門子公司是世界上生產PLC的主要廠商之一,其產品涵蓋了微型、小型、中型和大型等各種類型的PLC。目前主流產品是SIMATIC S7-200/200 SMART、SIMATIC S7-300/400、SIMATIC S7-1200和SIMATIC S7-1500等系列PLC,如圖1-2所示。

圖1-2 西門子公司的PLC

圖1-2 西門子公司的PLC(續)
2 認識S7-200 PLC
圖1-3所示為S7-200 CPU226模塊實物圖,下面介紹西門子S7-200 CPU226模塊。

圖1-3 S7-200 CPU226模塊的外形特征
(1)CPU模塊的型號 如圖1-4所示。

圖1-4 CPU模塊的型號
【型號解讀】
CPU226有CPU226 DC/DC/DC和CPU226 AC/DC/RLY兩種。圖中AC/DC/RLY的含義:AC表示供電電源電壓為交流220V;DC表示輸入端的電源電壓為直流24V;RLY表示繼電器輸出。DC/DC/DC表示24V直流電源供電、直流數字量輸入、晶體管直流數字量輸出。
(2)輸入與輸出(I/O)接線端子 在CPU模塊的面板底部、頂部都有一排接線端子。底部一排接線端子是輸入信號的輸入端子及傳感器電源端子。頂部一排接線端子是輸出信號的輸出端子及PLC的供電電源端子。圖1-5所示為CPU226模塊的I/O及電源接線端子。

圖1-5 CPU226模塊端子示意圖
CPU226模塊I/O端子共40點,分別為24個輸入點(I0.0~I0.7、I1.0~I1.7及I2.0~I2.7)和16個輸出點(Q0.0~Q0.7和Q1.1~Q1.7)。在編寫端子代碼時采用八進制,沒有0.8、0.9、1.8、1.9等。
解讀
1.輸入端子
1)I0.0~I1.4:第一組輸入繼電器端子。
2)I1.5~I2.7:第二組輸入繼電器端子。
3)1M、2M:第一、二組輸入繼電器的公共端子。
2.傳感器電源接線
1)M:內部DC24V電源負極,接外部傳感器負極或輸入繼電器公共端子。
2)L+:內部DC24V電源正極,為外部傳感器或輸入繼電器供電。
3.輸出端子
1)Q0.0~Q0.3:第一組輸出繼電器端子。
2)Q0.4~Q1.0:第二組輸出繼電器端子。
3)Q1.1~Q1.7:第三組輸出繼電器端子。
4)1L、2L、3L:第一、二、三組輸出繼電器的公共端子。輸出各組之間是互相獨立的,這樣負載可以使用多個電壓系列(如AC220V、DC24V等)。
5)●:帶黑點的端子上不要外接導線,以免損壞PLC。
4.PLC電源接線
:接地線;N:中性線;L1:電源相線,交流電壓為85~265V。
(3)I/O狀態指示燈與運行狀態指示燈
1)在CPU模塊的面板下方、上方分別有一排I/O狀態指示燈(LED),分別指示輸入和輸出的邏輯狀態。當輸入或輸出為高電平時,LED亮,否則不亮。
2)在CPU模塊的左側有三個運行狀態指示燈(LED),分別指示系統故障/診斷(SF/DIAG)狀態、運行(RUN)狀態和停止(STOP)狀態。
(4)S7-200 CPU的工作模式S7-200 CPU的工作模式有停止(STOP)模式和運行(RUN)模式兩種,要改變工作模式有以下兩種方法:
1)使用CPU模塊上的模式開關。揭開CPU模塊的前蓋,模式開關有三個轉換位置:RUN、TERM(終端)和STOP。開關撥到RUN時,CPU模塊運行程序,即PLC按照掃描周期循環執行用戶程序,但此時不能向PLC寫入程序;開關撥到STOP時,CPU模塊停止運行程序,即PLC停止執行用戶程序,但此時可以利用編程設備向PLC寫入程序,也可以利用編程設備檢查用戶存儲器內容、改變存儲器內容、改變PLC的各種設置;開關撥到TERM時,不改變當前操作模式,此模式多數用于聯網的PLC網絡或現場調試。如果需要CPU模塊上電時自動運行程序,則模式開關必須在RUN位置。
2)將模式開關撥到RUN或TERM時,可以由STEP 7-Micro/WIN V4.0編程軟件控制CPU模塊的運行和停止。在程序中插入STOP指令,可以在條件滿足時將CPU模塊設置為停止模式。
(5)通信端口和擴展I/O端口 在CPU模塊左側的通信端口是連接編程器或其他外部設備的接口,S7-200 PLC的通信端口為RS485端口。擴展I/O端口位于CPU模塊右側的前蓋下面,如圖1-6所示,它是連接各種擴展模塊的接口。

圖1-6 CPU226模塊的前蓋下的布局
(6)模擬電位器 揭開CPU模塊右側的前蓋就會看到一個或兩個模擬電位器,如圖1-6所示。調節這些電位器就會改變特殊存儲器SMB28和SMB29這兩個字節中的值,以改變程序運行時的參數,如定時器、計數器的預置值、過程量的控制參數。
(7)可選卡插槽與可選卡 在CPU模塊的左側有一個可選卡插槽。根據需要,可選卡插槽可以插入下述三種卡中的一種:存儲卡、電池卡、日期/時鐘電池卡。
存儲卡MC291提供EEPROM存儲單元。在CPU模塊上插入存儲卡后,就可使用編程軟件STEP 7-Micro/WIN V4.0將CPU模塊中的存儲內容(系統塊、程序塊和數據塊等)復制到卡上;或將存儲卡插到其他CPU模塊上,通電時存儲卡中的內容會自動復制到CPU模塊中。用存儲卡傳遞程序時,被寫入的CPU模塊必須與提供程序來源的CPU模塊相同或更高型號。
電池卡BC291-5為所有型號的CPU模塊提供數據保持的后備電池,該電池在內置的超級電容放電完畢后起作用。
日期/時鐘電池卡CC292用于CPU221和CPU222兩種不具備內置時鐘功能的CPU模塊使用,以提供日期/時鐘功能,同時提供后備電池。電池卡能夠保持數據和內置時鐘長達200天。
3 認識S7-200 SMART PLC
下面介紹如圖1-7所示的西門子S7-200 SMART PLC模塊實物外形。

圖1-7 西門子S7-200 SMART模塊實物外形

認識S7-200 SMART PLC
(1)CPU模塊的型號 如圖1-8所示。

圖1-8 CPU模塊的型號
【型號解讀】
S7-200 SMART的CPU模塊有緊湊型CR繼電器輸出系列和標準型SR繼電器輸出系列及ST晶體管輸出系列。例如,CR40是繼電器輸出,I/O點數共40點。ST40是晶體管輸出,I/O點數共40點。
(2)輸入與輸出(I/O)接線端子 在CPU模塊的面板底部、頂部都有一排接線端子。頂部一排接線端子是輸入信號的輸入端子及PLC的供電電源端子。底部一排接線端子是輸出信號的輸出端子。圖1-9所示為CPU ST40模塊的I/O及電源接線端子。

圖1-9 CPU ST40模塊的端子示意圖
CPU ST40模塊I/O端子共40點分別為24個輸入點(I0.0~I0.7、I1.0~I1.7及I2.0~I2.7)和16個輸出點(Q0.0~Q0.7和Q1.1~Q1.7)。在編寫端子代碼時采用八進制,沒有0.8、0.9、1.8、1.9等。
解讀
1.輸入端子
1)I0.0~I0.7:第一組輸入端子。
2)I1.0~I1.7:第二組輸入端子。
3)I2.0~I2.7:第三組輸入端子。
4)1M:輸入端子的負極公共端子。
2.CPU模塊電源接線
1)M:DC24V電源負極,接外部直流24V的負極接入。
2)L+:DC24V電源正極,接外部直流24V的正極接入。
3.輸出端子
1)Q0.0~Q0.7:第一組輸出端子。
2)Q1.0~Q1.7:第二組輸出端子。
3)2L、2M:第一組輸出的直流電源端子。
4)3L、3M:第二組輸出的直流電源端子。
(3)I/O狀態指示燈與運行狀態指示燈
1)在CPU模塊的面板下方、上方分別有一排I/O狀態指示燈(LED),分別指示輸入和輸出的邏輯狀態。當輸入或輸出為高電平時,LED亮,否則不亮。
2)在CPU模塊的左側有三個運行狀態指示燈(LED),分別指示系統故障/診斷(SF/DIAG)狀態、運行(RUN)狀態和停止(STOP)狀態。
(4)S7-200 SMART CPU的工作模式S7-200 SMART CPU的工作模式有停止(STOP)模式和運行(RUN)模式兩種,要改變工作模式有以下兩種方法:
1)將CPU置于RUN模式。在PLC菜單功能區或程序編輯器工具欄中單擊“運行”(RUN)按鈕,根據提示,單擊“確定”(OK)按鈕更改CPU的工作模式。
2)將CPU置于STOP模式。要停止程序,單擊“停止”(STOP)按鈕,并確認將CPU置于STOP模式的提示。也可在程序邏輯中包括STOP指令,以將CPU置于STOP模式。在程序中插入STOP指令,可以在條件滿足時將CPU模塊設置為停止模式。
(5)通信端口S7-200 SMART PLC的通信端口有兩個,一個RS485端口,另一個是以太網端口,如圖1-10所示。

圖1-10 CPU ST40模塊通信端口
(6)可選卡插槽與可選卡 在CPU模塊的左側有一個可選卡插槽。根據需要,在卡槽插入西門子專用SD卡。在CPU模塊上插入存儲卡后,就可使用編程軟件STEP 7-Micro/WIN SMART V2.5將CPU模塊中的存儲內容(系統塊、程序塊和數據塊等)復制到卡上;或將存儲卡插到其他CPU模塊上,通電時存儲卡中的內容會自動復制到CPU模塊中。用存儲卡傳遞程序時,被寫入的CPU模塊必須與提供程序來源的CPU模塊型號相同或更高。例如,西門子專用存儲卡MC291提供EEP-ROM存儲單元。
二、PLC的基本結構
PLC實質上是一種工業控制計算機,有著與通用計算機相類似的結構,PLC也是由硬件和軟件兩大部分組成的。
1 PLC硬件結構
PLC硬件結構主要由中央處理器(CPU)、存儲器、輸入/輸出單元(I/O接口)、I/O擴展接口、通信及編程接口、電源變換器等組成,見圖1-11所示的點畫線框內。

圖1-11 PLC基本結構組成
(1)中央處理器(CPU) CPU是PLC的核心部件,由運算器和控制器組成。CPU由通用微處理器、單片機或位片式微處理器組成。它通過控制總線、地址總線和數據總線與存儲器、輸入/輸出單元和通信接口等建立聯系。CPU主要用于接收并存儲從編程器輸入的用戶程序,檢查編程過程是否出錯,進行系統診斷,解釋并執行用戶程序,完成通信及外設的某些功能。
(2)存儲器 PLC中的存儲器主要有保持性存儲器、永久存儲器以及存儲卡存儲三種。CPU提供了多種功能來確保用戶程序和數據能夠被正確保留。
1)保持性存儲器:在一次上電循環中保持不變的可選擇存儲區??稍谙到y數據塊中組態保持性存儲器。在所有存儲區中,只有V、M和定時器與計數器的當前值存儲區能組態為保持性存儲區。
2)永久存儲器:用于存儲程序塊、數據塊、系統塊、強制值、M存儲器以及組態為保持性的值的存儲器。
3)存儲卡:可拆卸Micro SD卡。用于作為程序傳送卡存儲項目塊,作為恢復為出廠默認設置的卡完全擦除PLC,或作為固件更新卡更新PLC和擴展模塊固件。
(3)輸入/輸出單元 (I/O接口) 輸入/輸出單元通常也稱為輸入/輸出接口(I/O接口),是PLC與工業生產現場設備之間的連接部件。
1)輸入接口:用來接收和采集用戶輸入設備產生的信號。輸入信號主要有兩種類型:一類是由按鈕、選擇開關、行程開關、繼電器觸點、接近開關、光電開關、數字撥碼開關等來的開關量輸入信號;另一類是由電位器、測速發電機和各種變送器等來的模擬量輸入信號。這些信號經過光電隔離、濾波和電平轉換等處理,變成CPU能夠接收和處理的信號,并送給輸入映像寄存器。
PLC輸入接口電路有直流輸入和交流輸入。輸入接口的電源可以由外部提供,也可以由PLC內部提供。
圖1-12所示為西門子S7-200 SMART PLC的直流輸入接口電路,圖中只畫出對應于一個點的輸入電路,各個輸入點所對應的輸入電路均相同。其中直流電源由外接提供,極性可以為任意極性。
2)輸出接口。輸出接口是將經過CPU處理的信號通過光電隔離和功率放大等處理,轉換成外部設備所需要的驅動信號(數字量輸出或模擬量輸出),以驅動外部各種執行設備,如接觸器、指示燈、報警器、電磁閥、電磁鐵、調節閥、調速裝置等設備。

圖1-12 西門子S7-200 SMART PLC直流輸入接口電路
輸出接口電路就是PLC的負載驅動回路。為適應實際設備控制的需要,輸出接口的形式有繼電器輸出型和晶體管輸出型,如圖1-13所示。為提高PLC抗干擾能力,每種輸出電路都采用了光電隔離技術。

圖1-13 輸出接口的形式
圖1-13a所示繼電器輸出型為有觸點的輸出方式,既可驅動直流負載,又可驅動交流負載,驅動負載的能力在2A左右。其優點是適用電壓范圍比較寬、導通壓降小、承受瞬時過電壓和過電流的能力強。缺點是動作速度較慢、響應時間長、動作頻率低。建議在輸出量變化不頻繁時優先選用,不能用于高速脈沖的輸出。其電路工作原理是:當內部電路的狀態為“1”時,使繼電器線圈通電,產生電磁吸力,觸點閉合,則負載得電,同時點亮輸出指示燈LED(圖1-13a中負載、輸出指示燈LED未畫出),表示該路輸出點有輸出;當內部電路的狀態為“0”時,使繼電器的線圈無電流,觸點斷開,則負載斷電,同時LED熄滅,表示該路輸出點無輸出。
圖1-13b所示晶體管輸出形式只可驅動直流負載。驅動負載的能力是每一個輸出點為750mA。其優點是可靠性強、執行速度快、壽命長。缺點是過載能力差。適用高速(可達20kHz)、小功率直流負載。其電路工作原理是:當內部電路的狀態為“1”時,光電耦合器導通,使晶體管飽和導通,場效應晶體管也飽和導通,則負載得電,同時點亮LED(圖1-13b中負載、LED未畫出),表示該路輸出點有輸出;當內部電路的狀態為“0”時,光電耦合器斷開,晶體管截止,場效應晶體管也截止,則負載失電,LED熄滅,表示該路輸出點無輸出。圖1-13b中的穩壓二極管用來抑制關斷過電壓和外部的浪涌電壓,以保護場效應晶體管。
(4)擴展模塊 擴展模塊用來擴展PLC的I/O端子數,當用戶所需要的I/O端子數超過PLC基本單元(即主機,帶CPU)的I/O端子數時,可通過I/O擴展模塊(不帶有CPU)與PLC基本單元相連接,以增加PLC的I/O端子數,從而適應控制系統的要求。其他很多的智能單元也通過該模塊與PLC基本單元相連。
(5)通信接口 通信接口是專用于數據通信的,主要實現人-機對話。PLC通過通信接口可與打印機、監視器以及其他的PLC或計算機等設備實現通信。
(6)電源 PLC的電源是指將外部輸入的電源處理后轉換成滿足PLC的CPU、存儲器、輸入/輸出接口等內部電路工作需要的直流5V電源電路或電源模塊。另一方面可為外部輸入元件提供DC 24V標準電源,而驅動PLC負載的電源由用戶提供。圖1-14所示為將CPU連接至電源的兩種供電方式,分別是直流型和交流型。

圖1-14 PLC供電方式
2 PLC軟件
PLC軟件由系統程序和用戶程序組成。
(1)系統程序 系統程序是由PLC制造廠商采用匯編語言設計編寫的,固化于ROM型系統程序存儲器中,用于控制PLC本身的運行,用戶不能直接讀寫與更改。系統程序分為系統管理程序、用戶指令解釋程序、標準程序模塊和系統調用程序。
(2)用戶程序 用戶程序是用戶為完成某一控制任務而利用PLC的編程語言編制的程序。由于PLC是專門為工業控制而開發的裝置,其主要使用者是廣大電氣技術人員,因此為了滿足他們的傳統習慣和掌握能力,PLC的編程語言采用比計算機語言相對更簡單、易懂、形象的專用語言。PLC的主要編程語言有梯形圖和語句表等。
三、PLC的基本工作原理
1 PLC的工作過程
PLC在本質上雖然是一臺微型計算機,其工作原理與普通計算機類似,但是PLC的工作方式卻與計算機有很大的不同。計算機一般采用等待輸入-響應(運算和處理)-輸出的工作方式,如果沒有輸入,則一直處于等待狀態;而PLC采用的是周期性循環掃描的工作方式,每一個周期都要按部就班完成相同的工作,與是否有輸入或輸入是否變化無關。
PLC的工作過程一般包括內部處理、通信操作、輸入處理、程序執行、輸出處理五個階段,如圖1-15所示。

圖1-15 PLC的工作過程
(1)內部處理 PLC檢查CPU模塊內部的硬件是否正常,進行監控、定時器復位等工作。在運行模式下,還要檢查用戶程序存儲器,如果發現異常,則停止并顯示錯誤。若自診斷正常,則繼續向下掃描。
(2)通信操作 在通信操作階段,CPU自檢并處理各通信端口接收到的任何信息,完成數據通信服務,即檢查是否有計算機、編程器的通信請求,若有則進行相應處理。
(3)輸入處理 輸入處理階段又稱輸入采樣階段。在此階段,按順序掃描輸入端子,把所有外部輸入電路的接通/斷開狀態讀入到輸入映像寄存器,輸入映像寄存器被刷新。
(4)程序執行 用戶程序在PLC中是順序存放的。在程序執行階段,在無中斷或跳轉指令的情況下,CPU根據用戶程序從第一條指令開始按自上而下、從左至右的順序逐條掃描執行。
(5)輸出處理 當所有指令執行完畢后,進入輸出處理階段,又稱輸出刷新階段。CPU將輸出映像寄存器中的內容集中轉存到輸出鎖存器,然后傳送到各相應的輸出端子,最后再驅動外部負載。
2 PLC用戶程序的執行過程
在運行模式下,PLC對用戶程序重復地執行輸入處理、程序執行、輸出處理三個階段,如圖1-16所示,圖中的序號表示圖中梯形圖程序的執行順序。

圖1-16 PLC用戶程序的執行過程
在用戶程序執行過程中,輸入映像寄存器的內容由上一個輸入采樣期間輸入端子的狀態決定。輸出映像寄存器的狀態由程序執行期間的執行結果決定,隨程序執行過程而變化。輸出鎖存器的狀態由程序執行期間輸出映像寄存器的最后狀態來確定。各輸出端子的狀態由輸出鎖存器確定。程序如何執行取決于輸入、輸出映像寄存器的狀態。
在每次掃描中,PLC只對輸入采樣一次,輸出刷新一次,這可以確保在程序執行階段,在同一個掃描周期的輸入映像寄存器和輸出鎖存器中的內容保持不變。每重復一次的時間就是一個掃描周期,其典型值為1~100ms。掃描周期與用戶程序的長短、指令的種類和CPU執行指令的速度有很大的關系。
四、PLC的特點
S7-200 SMART通過可連接的擴展模塊即可處理模擬量,具有更多的輸入/輸出點及更大的存儲器,可完全滿足一些中小型復雜控制系統的要求。S7-200 SMART CPU普遍具有以下特點:
(1)集成的24V電源 可直接連接到傳感器、變送器和執行器,CPU的輸出電流按照型號功率的大小可達到180~400mA,可用作負載電源。
(2)高速脈沖輸出 具有兩路高速脈沖輸出端,輸出脈沖頻率可達20kHz,用于控制步進電動機或伺服電動機,實現定位任務。
(3)通信口S7-200 SMART具有一個RS485通信口和一個RJ45的以太網端口,支持PPI通信協議,有自由口通信能力。
(4)中斷輸入 允許以極快的速度對過程信號的上升沿做出響應。
(5)EEPROM存儲器模塊(選件) 可作為修改與復制程序的快速工具,無需編程器并可進行輔助軟件歸檔工作。
(6)數字量輸入/輸出點CPU SR20具有12個輸入點和8個輸出點;CPU ST40具有24個輸入點和16個輸出點;CPU SR60具有36個輸入點和24個輸出點。
(7)高速計數器 高速計數器獨立于CPU的掃描周期對高速事件進行計數。高速計數器有一個有符號32位整數計數值(或當前值),要訪問高速計數器的計數值,需要利用存儲器類型(HC)和計數器編號指定高速計數器的地址。高速計數器的當前值是只讀值,僅可作為雙字(32位)來尋址。