西門子S7系列PLC的尋址方式(1)
所謂尋址方式,是指CPU根據(jù)程序中的變量地址,找到其對(duì)應(yīng)的物理地址的方式。西門子S7系列PLC支持多種方式的尋址,給程序開發(fā)提供了很大的自由空間。今天這篇文章我們就來談?wù)凷7系列PLC(300/400/1200/1500)是如何尋址的。

S7系列PLC的尋址方式可以分為直接尋址和間接尋址兩大類。
所謂直接尋址,是指在程序中直接訪問CPU的存儲(chǔ)區(qū)的尋址方式。這里的存儲(chǔ)區(qū)包括輸入/輸出映像區(qū)(Input /Output)、位存儲(chǔ)區(qū)(M)、定時(shí)器(T)、計(jì)數(shù)器(C)、數(shù)據(jù)塊(DB)及功能塊(FB/FC)等。直接尋址又可以分為兩種:絕對(duì)尋址和符號(hào)尋址。
所謂絕對(duì)尋址,是指在程序中使用存儲(chǔ)區(qū)的物理地址的尋址方式。比如:I0.0,Q1.0,M2.0等等。
物理地址不能直觀的表達(dá)其代表的意義。比如程序中看到“I 1.0”,我們并不知道它是表示哪個(gè)按鈕的輸入,還是哪個(gè)接近開關(guān)的輸入。這種尋址方式不利于程序的閱讀、編寫及后期的維護(hù)。為了增加程序的可讀性及可維護(hù)性,可以使用另一種尋址方式:符號(hào)尋址。
所謂符號(hào)尋址,是指給物理地址起一個(gè)與其功能相關(guān)的符號(hào)(名稱)。比如上例中的“I 1.0”,我們給它起個(gè)符號(hào)名“Start ON”,當(dāng)我們看到這個(gè)符號(hào)的時(shí)候,就知道它代表開機(jī)按鈕。
符號(hào)尋址支持所有的存儲(chǔ)區(qū)(I、O、M、C、T、DB、L),使程序的可讀性及可維護(hù)性增強(qiáng),是大型程序開發(fā)中常見的尋址方式。
以上兩種尋址方式均屬于直接尋址,在高級(jí)程序開發(fā)中,還會(huì)用到另一類的尋址方式:間接尋址。
間接尋址是利用指針或地址寄存器進(jìn)行的尋址方式,可以在程序運(yùn)行期間通過改變指針或地址寄存器的值,來動(dòng)態(tài)修改指令的地址。間接尋址的指針包括16位和32位,尋址方式包括存儲(chǔ)器間接尋址和寄存器間接尋址,功能強(qiáng)大,對(duì)初學(xué)者理解起來有一定的困難,本文先討論存儲(chǔ)器間接尋址。
存儲(chǔ)器間接尋址使用16位和32位兩種指針進(jìn)行尋址。16位地址指針用于定時(shí)器(T)、計(jì)數(shù)器(C)、程序塊(FB/FC)及數(shù)據(jù)塊(DB)的尋址。它以字的形式進(jìn)行訪問,16位指針作為一個(gè)無符號(hào)數(shù)(0~65535),表示相應(yīng)存儲(chǔ)器的編號(hào)。
尋址格式:區(qū)域標(biāo)識(shí)符[16位地址指針];
比如:減計(jì)數(shù)器指令 CD C[MW20] ;“C”是計(jì)數(shù)器區(qū)域標(biāo)識(shí)符,“MW20”表示地址指針;再看看下面這段代碼:
這里使用MW22作為16位地址指針,其值為20,所以延時(shí)定時(shí)器為 T20。
32位指針可以對(duì)存儲(chǔ)器的位、字節(jié)、字及雙字進(jìn)行尋址。32位指針作為一個(gè)雙字,其0~2位(bit)為位地址,3~18位為字節(jié)地址,19~31位沒有定義。如下圖:

存儲(chǔ)器32位指針僅用于內(nèi)部區(qū)域?qū)ぶ?,?span>格式為:區(qū)域標(biāo)識(shí)符[32位地址指針];
如果要使用32位指針訪問一個(gè)字節(jié)、字或者雙字存儲(chǔ)器,要讓指針的位地址為0,比如:P#Q10.0??纯聪旅孢@段代碼:

上面的例子中,使用指針的方式訪問QB6。首先把指針常數(shù)P#6.0存放到MD30中,然后使用指令“L QB[MD30]”將QB6的值加載到累加器1,之后傳送給變量MB100。這里注意:“p32_1”是MD30的符號(hào)名稱。
下面這段代碼使用32位指針進(jìn)行位操作:

MD34作為32位指針,存放常量P#2.5,當(dāng)“I 2.5”為 “1”時(shí),Q10.1為“1”。
好了,關(guān)于西門子S7系列PLC的直接尋址及存儲(chǔ)器間接尋址就先介紹到這里了。
-
Origin(Pro):學(xué)習(xí)版的窗口限制【數(shù)據(jù)繪圖】 2020-08-07
-
如何卸載Aspen Plus并再重新安裝,這篇文章告訴你! 2020-05-29
-
CAD視口的邊框線看不到也選不中是怎么回事,怎么解決? 2020-06-04
-
教程 | Origin從DSC計(jì)算焓和比熱容 2020-08-31
-
Aspen Plus安裝過程中RMS License證書安裝失敗的解決方法,親測有效! 2021-10-15
-
CAD外部參照無法綁定怎么辦? 2020-06-03
-
CAD中如何將布局連帶視口中的內(nèi)容復(fù)制到另一張圖中? 2020-07-03
