一、數(shù)據(jù)在存儲(chǔ)器中的存儲(chǔ)方式
1、數(shù)據(jù)格式及要求
A〉數(shù)據(jù)格式:即指數(shù)據(jù)的長(zhǎng)度和表示方式。 B〉要求:S7-200對(duì)數(shù)據(jù)的格式有一定的要求,指令與數(shù)據(jù)之間的格式一致才能正常工作。
2、用一位二進(jìn)制數(shù)表示開(kāi)關(guān)量
A〉一位二進(jìn)制數(shù):一位二進(jìn)制數(shù)有0(OFF)和1(ON)兩種不同的取值,分別對(duì)應(yīng)于開(kāi)關(guān)量(或數(shù)字量)的兩種不同的狀態(tài)。 B〉位數(shù)據(jù)的數(shù)據(jù)類(lèi)型:布爾(Bool)型。 C〉位地址:由存儲(chǔ)器標(biāo)識(shí)符、字節(jié)地址和位號(hào)組成,如I3.4等。 D〉其它CPU存儲(chǔ)區(qū)的地址格式:由存儲(chǔ)器標(biāo)識(shí)符和起始字節(jié)號(hào)(一般取藕字節(jié))組成,如V B 100、V W 100、V D 100等。
3、多位二進(jìn)制數(shù)(8421碼)
A〉數(shù)及數(shù)制:數(shù)用于表示一個(gè)量的具體大小。根據(jù)計(jì)數(shù)方式的不同,有十進(jìn)制(D)、二進(jìn)制(B)、十六進(jìn)制(H)和八進(jìn)制等不同的計(jì)數(shù)方式。 B〉二進(jìn)制數(shù)的表示:在S7-200中用2#來(lái)表示二進(jìn)制常數(shù),例如 “2# 10111010 ”。 C〉二進(jìn)制數(shù)的大小:將二進(jìn)制數(shù)的各位(從右往左第n位)乘以對(duì)應(yīng)的位權(quán)(×2n-1),并將結(jié)果累加求和可得其大小。例如:2# 10111010 = 1×27+0×26+1×25+1×24+1×23+0×22+1×21+0×20 = 186
4、十六進(jìn)制數(shù)
A〉十六進(jìn)制數(shù)的引入:將二進(jìn)制數(shù)從右往左每4位用一個(gè)十六進(jìn)制數(shù)表示,可以實(shí)現(xiàn)對(duì)多位二進(jìn)制數(shù)的快速準(zhǔn)確的讀寫(xiě)。 B〉不同進(jìn)制數(shù)的表示方法:( 表3-2-1 不同進(jìn)制數(shù)的表示方法 ) C〉十六進(jìn)制數(shù)的表示:在S7-200中用16#來(lái)表示十六進(jìn)制常數(shù),例如 “2# 1010 1110 0111 0101 可轉(zhuǎn)換為16# AEF7 ”。 D〉十六進(jìn)制數(shù)的大小:將十六進(jìn)制數(shù)的各位(從右往左第n位)乘以對(duì)應(yīng)的位權(quán)(×16n-1),并將結(jié)果累加求和可得其大小。例如:16# 2F = 2×161+15×160 = 47
5、數(shù)據(jù)長(zhǎng)度:字節(jié)(Byte)、字(Word)、雙字(DoubleWord)
A〉字節(jié)(B):從0號(hào)位開(kāi)始的連續(xù)8位二進(jìn)制數(shù)稱(chēng)為一個(gè)字節(jié)。 B〉字(W):相鄰的兩個(gè)字節(jié)組成一個(gè)字的長(zhǎng)度。 C〉雙字(DW):相鄰的四個(gè)字節(jié)組成一個(gè)雙字的長(zhǎng)度。 D〉字、雙字長(zhǎng)數(shù)據(jù)的存儲(chǔ)特點(diǎn):高位存低字節(jié)、地位存于高字節(jié)。
6、負(fù)數(shù)(有符號(hào)數(shù))的表示方法
A〉負(fù)數(shù)的表示:PLC一般用二進(jìn)制的補(bǔ)碼來(lái)表示有符號(hào)數(shù),其最高位為符號(hào)位(0 ——正數(shù)、1 ——負(fù)數(shù))。 B〉絕對(duì)值相等的正負(fù)有符號(hào)數(shù)間的關(guān)系:正數(shù)的補(bǔ)碼是它本身。 C〉不同數(shù)據(jù)的取值范圍:( 表3-2-2 數(shù)據(jù)的位數(shù)與取值范圍 )
7、BCD碼
A〉BCD碼釋義:BCD碼就是用四位二進(jìn)制數(shù)的組合來(lái)表示1位十進(jìn)制數(shù),即用二進(jìn)制編碼的十進(jìn)制數(shù)(Binary Coded Decimal Number)縮寫(xiě)。例如 十進(jìn)制數(shù) 23 的BCD碼為 2# 0010 0011 或表示為 16# 23 ,但其8421碼為 2# 00010111 。 B〉BCD碼的應(yīng)用:BCD碼常用于輸入輸出設(shè)備,例如撥碼開(kāi)關(guān)輸入的是BCD碼,送給七段顯示器的數(shù)字也是BCD碼。
二、CPU的存儲(chǔ)區(qū)
1、輸入過(guò)程映象寄存器(I)
A〉輸入過(guò)程映象寄存器(I)的作用:在每次掃描周期的開(kāi)始,CPU對(duì)物理輸入點(diǎn)進(jìn)行采樣,并將采樣值寫(xiě)入輸入過(guò)程映象寄存器中。 B〉輸入過(guò)程映象寄存器(I)的特點(diǎn):① 只能由外部驅(qū)動(dòng),其常開(kāi)、常閉觸點(diǎn)使用次數(shù)不受限制;② 可以按位、字節(jié)、字或雙字來(lái)存取輸入過(guò)程映象寄存器中的數(shù)據(jù): 位:I [字節(jié)地址] 。 [位地址] 如 I0.1 字節(jié)、字或雙字:I [長(zhǎng)度] [起始字節(jié)地址] 如 IB4
2、輸出過(guò)程映象寄存器(Q)
A〉輸出過(guò)程映象寄存器(Q)的作用:在每次掃描周期的結(jié)尾,CPU將輸出過(guò)程映象寄存器中的數(shù)值復(fù)制到物理輸出點(diǎn)上。 B〉輸出過(guò)程映象寄存器(Q)的特點(diǎn):①其常開(kāi)、常閉觸點(diǎn)使用次數(shù)不受限制;② 可以按位、字節(jié)、字或雙字來(lái)存取輸出過(guò)程映象寄存器: 位:Q [字節(jié)地址] 。 [位地址] 如 Q1.1 字節(jié)、字或雙字:Q [長(zhǎng)度] [起始字節(jié)地址] 如 QB5
3、全局變量存儲(chǔ)區(qū)(V)
A〉變量存儲(chǔ)區(qū)(V)的作用:用于存儲(chǔ)程序執(zhí)行過(guò)程中控制邏輯操作的中間結(jié)果, 也可以用它來(lái)保存與工序或任務(wù)相關(guān)的其它數(shù)據(jù)。 B〉變量存儲(chǔ)區(qū)(V)的特點(diǎn):①變量存儲(chǔ)器在全局有效,可以被所有的POU存取;② 可以按位、字節(jié)、字或雙字來(lái)存取V存儲(chǔ)區(qū)中的數(shù)據(jù): 位:V [字節(jié)地址] 。 [位地址] 如 V10.2 字節(jié)、字或雙字:V [長(zhǎng)度] [起始字節(jié)地址] 如 VW100
4、局部存儲(chǔ)器(L)
A〉局部存儲(chǔ)器(L)的作用:S7-200有64個(gè)字節(jié)的局部存儲(chǔ)器,其中60個(gè)可以用作臨時(shí)存儲(chǔ)器或者給子程序傳遞參數(shù)。 B〉局部存儲(chǔ)器(L)的特點(diǎn):① S7--200給每個(gè)POU(程序組織單元)分配64個(gè)局部存儲(chǔ)器;②局部存儲(chǔ)器只在創(chuàng)建它的程序單元中有效,各程序不能訪問(wèn)別的程序的局部變量存儲(chǔ)器。③ 局部存儲(chǔ)器在參數(shù)傳遞過(guò)程中不傳遞值,在分配時(shí)不被初始化,可能包含任意數(shù)值。 位:L [字節(jié)地址] 。 [位地址] 如 L0.0 字節(jié)、字或雙字:L [長(zhǎng)度] [起始字節(jié)地址] 如 LB33
A〉模擬量輸入(AI)的作用:S7-200將輸入的模擬量值(如溫度或電壓)轉(zhuǎn)換成1個(gè)字長(zhǎng)(16位)的數(shù)字量,并將其存入(AI)區(qū)占一個(gè)字長(zhǎng)的地址中。 B〉模擬量輸入(AI)的作用:① 可以用區(qū)域標(biāo)識(shí)符(AI)、數(shù)據(jù)長(zhǎng)度(W)及字節(jié)的起始地址(必須用偶數(shù)字節(jié)地址如AIW0,AIW2,AIW4)來(lái)存取這些值。② 模擬量輸入值為只讀數(shù)據(jù)。 格式:AIW [起始字節(jié)地址] 如 AIW4
6、模擬量輸出(AQ)
A〉模擬量輸出(AQ)的作用:S7-200把1個(gè)字長(zhǎng)(16位)數(shù)字值按比例轉(zhuǎn)換為相應(yīng)大小的電流或電壓輸出。 B〉模擬量輸出(AQ)的特點(diǎn):① 可以用區(qū)域標(biāo)識(shí)符(AQ)、數(shù)據(jù)長(zhǎng)度(W)及字節(jié)的起始地址(必須用偶數(shù)字節(jié)地址如AQW0,AQW2,AQW4)來(lái)改變這些值。② 模擬量輸出值是只寫(xiě)數(shù)據(jù)。 格式:AQW [起始字節(jié)地址] 如 AQW4
7、定時(shí)器存儲(chǔ)區(qū)(T)
A〉定時(shí)器的作用:定時(shí)器可用于時(shí)間累計(jì),S7-200 CPU中,有256個(gè)的定時(shí)器,其分辨率(時(shí)基增量)分為1ms、10ms和100ms三種。 B〉定時(shí)器有兩個(gè)變量:① 當(dāng)前值——16位有符號(hào)整數(shù),存儲(chǔ)定時(shí)器所累計(jì)的時(shí)間。② 定時(shí)器位——按照當(dāng)前值和預(yù)置值的比較結(jié)果置位或者復(fù)位。 C〉定時(shí)器存儲(chǔ)區(qū)(T)的特點(diǎn):① 可以用定時(shí)器地址(T+定時(shí)器號(hào),如 T37、T3等)來(lái)存取當(dāng)前值和定時(shí)器位數(shù)據(jù)。②位操作指令則是存取定時(shí)器位;如果使用字操作指令,則是存取定時(shí)器當(dāng)前值。 格式:T [定時(shí)器號(hào)] 如 T24
8、計(jì)數(shù)器存儲(chǔ)區(qū)(C)
A〉計(jì)數(shù)器的作用:計(jì)數(shù)器可以用于累計(jì)其輸入端脈沖電平由低到高的次數(shù)。在S7-200 CPU中,有256個(gè)的計(jì)數(shù)器,分為三種類(lèi)型—增計(jì)數(shù);減計(jì)數(shù);增/減計(jì)數(shù)。 B〉計(jì)數(shù)器有兩種變量:① 當(dāng)前值——16位有符號(hào)整數(shù),存儲(chǔ)累計(jì)值。② 計(jì)數(shù)器位——按照當(dāng)前值和預(yù)置值的比較結(jié)果置位或者復(fù)位。 C〉計(jì)數(shù)器存儲(chǔ)區(qū)(C)的特點(diǎn):① 可以用計(jì)數(shù)器地址(C+計(jì)數(shù)器號(hào))來(lái)存取計(jì)數(shù)器的當(dāng)前值和計(jì)數(shù)器位數(shù)據(jù);② 使用位操作指令則是存取計(jì)數(shù)器位;如果使用字操作指令,則是存取計(jì)數(shù)器當(dāng)前值。 格式:C [計(jì)數(shù)器號(hào)] 如 C24
9、高速計(jì)數(shù)器(HC)
A〉高速計(jì)數(shù)器(HC)的作用:用于對(duì)高速事件計(jì)數(shù);S7-200 CPU222以上提供了6個(gè)高速計(jì)數(shù)器(HC0~HC5)供用戶(hù)使用。 B〉高速計(jì)數(shù)器(HC)的特點(diǎn):① 它獨(dú)立于CPU的掃描周期;② 高速計(jì)數(shù)器的當(dāng)前計(jì)數(shù)值(32位的有符號(hào)整數(shù))是只讀數(shù)據(jù),僅可以作為雙字(32位)來(lái)尋址;③用指定存儲(chǔ)器類(lèi)型(HC)加上計(jì)數(shù)器號(hào)(如HC0)的尋址方式來(lái)存取高速計(jì)數(shù)器中的值; 格式:HC [高速計(jì)數(shù)器號(hào)] 如 HC1
10、累加器(AC)
A〉累加器(AC)的作用:累加器是可以象存儲(chǔ)器一樣使用的讀寫(xiě)設(shè)備。例如,可以用它來(lái)向子程序傳遞參數(shù),也可以從子程序返回參數(shù),以及用來(lái)存儲(chǔ)計(jì)算的中間結(jié)果。S7--200提供4個(gè)32位累加器(AC0,AC1,AC2和AC3) 。 B〉累加器(AC)的特點(diǎn):① 可以按字節(jié)、字或雙字的形式來(lái)存取累加器中的數(shù)值;② 被訪問(wèn)的數(shù)據(jù)長(zhǎng)度取決于存取累加器時(shí)所使用的指令。 格式:AC [累加器號(hào)] 如 AC0
11、特殊存儲(chǔ)器(SM)
A〉特殊存儲(chǔ)器(SM)的作用:SM位為CPU與用戶(hù)程序之間傳遞信息提供了一種手段。可以用這些位選擇和控制S7-200 CPU的一些特殊功能。 B〉特殊存儲(chǔ)器(SM)的特點(diǎn):可以按位、字節(jié)、字或雙字來(lái)存取SM位:
位:SM [字節(jié)地址] 。 [位地址] 如 SM0.1 字節(jié)、字或者雙字:SM [長(zhǎng)度] [起始字節(jié)地址] 如 SMB86
12、位存儲(chǔ)區(qū)(M)
A〉位存儲(chǔ)(M)的作用:可以用位存儲(chǔ)區(qū)作為控制繼電器來(lái)存儲(chǔ)中間操作狀態(tài)和控制信息。 B〉位存儲(chǔ)(M)的特點(diǎn):可以按位、字節(jié)、字或雙字來(lái)存取位存儲(chǔ)區(qū): 位:M [字節(jié)地址] 。 [位地址] 如 M26.7 字節(jié)、字或雙字:M [長(zhǎng)度] [起始字節(jié)地址] 如 MD20
13、順控繼電器存儲(chǔ)器(S)
A〉順控繼電器(SCR)的作用:SCR提供控制程序的邏輯分段,用于組織設(shè)備的順序操作。 B〉順控繼電器存儲(chǔ)器(S)的特點(diǎn):① 可用作順控編程元件與順序控制繼電器指令配合使用;② 或用作輔助繼電器,可按位、字節(jié)、字或雙字來(lái)存取S位。 位:S [字節(jié)地址] 。 [位地址] 如 S3.1 字節(jié)、字或者雙字:S [長(zhǎng)度] [起始字節(jié)地址] 如 SB4
14、實(shí)數(shù)的格式
A〉實(shí)數(shù)及其應(yīng)用:實(shí)數(shù)(浮點(diǎn)數(shù))可以表示為1.m×2e(式中 m——尾數(shù)、e——指數(shù)),由32位單精度數(shù)表示,最高位為符號(hào)位,按照雙字長(zhǎng)度來(lái)存取;借助浮點(diǎn)數(shù),S7-200可以表示范圍在±1.175495×10-38~±3.402823×10+38內(nèi)的任何一個(gè)數(shù)。 B〉實(shí)數(shù)的運(yùn)算精度:對(duì)于S7--200來(lái)說(shuō),浮點(diǎn)數(shù)精確到小數(shù)點(diǎn)后第六位。
15、字符串的格式
字符串指的是一系列字符,每個(gè)字符以字節(jié)的形式存儲(chǔ)。字符串的第一個(gè)字節(jié)定義了字符串的長(zhǎng)度,也就是字符的個(gè)數(shù)。一個(gè)字符串的長(zhǎng)度可以是0到254個(gè)字符,再加上長(zhǎng)度字節(jié),一個(gè)字符串的最大長(zhǎng)度為255個(gè)字節(jié)。而一個(gè)字符串常量的最大長(zhǎng)度為126字節(jié)。
16、常數(shù)表示法及范圍
在S7--200的許多指令中,都可以使用常數(shù)值。常數(shù)值可以是字節(jié)、字或者雙字。S7--200以二進(jìn)制數(shù)的形式存儲(chǔ)常數(shù),也可以用十進(jìn)制數(shù)、十六進(jìn)制數(shù)、ASCII碼或者實(shí)數(shù)(浮點(diǎn)數(shù))來(lái)表示。( 表3-2-3 常數(shù)表示法 )
17、CPU存儲(chǔ)器的范圍和特性
A〉S7-200 CPU存儲(chǔ)器的范圍:( 表3-2-4 S7-200 CPU存儲(chǔ)器的范圍與特性 ) B〉S7-200操作數(shù)范圍:( 表3-2-5 S7-200 CPU操作數(shù)的范圍 )
三、直接尋址和間接尋址
1、尋址的概念
在PLC中地址是訪問(wèn)數(shù)據(jù)的依據(jù),通過(guò)地址來(lái)訪問(wèn)數(shù)據(jù)的過(guò)程稱(chēng)為“尋址”。幾乎所有的指令和功能都與各種形式的尋址有關(guān)。
2、直接尋址
直接尋址即為指定了存儲(chǔ)器的區(qū)域、長(zhǎng)度和位置的尋址方式,用于 一般的數(shù)字量控制系統(tǒng)的編程中。如 VW100表示存取VB100、VB101組成的兩個(gè)字。
3、用指針對(duì)S7-200存儲(chǔ)區(qū)間接尋址
A〉間接尋址:①間接尋址的概念——是指用指針來(lái)訪問(wèn)存儲(chǔ)區(qū)數(shù)據(jù)。②指針作用及其特點(diǎn):指針以雙字的形式存儲(chǔ)其它存儲(chǔ)區(qū)的地址,指針也可以作為參數(shù)傳遞到子程序中。只能用V存儲(chǔ)器、L存儲(chǔ)器或者累加器寄存器(AC1、AC2、AC3)作為指針。S7-200允許指針訪問(wèn)以下存儲(chǔ)區(qū):I、Q、V、M、S、AI、AQ、SMT(僅限于當(dāng)前值)和C(僅限于當(dāng)前值);但不能訪問(wèn)單獨(dú)的位,也不能訪問(wèn)HC或者L存儲(chǔ)區(qū)。 B〉建立間接尋址的指針:要建立一個(gè)指針,必須以雙字的形式,將需要間接尋址的存儲(chǔ)器地址移動(dòng)到指針中;具體做法是用“&”符號(hào)加上要訪問(wèn)的存儲(chǔ)區(qū)地址來(lái)建立一個(gè)指針。( “&”符號(hào)開(kāi)頭表明指令的操作數(shù)是存儲(chǔ)區(qū)的地址,而不是將其內(nèi)容。) C〉用指針存取數(shù)據(jù):當(dāng)指令中的操作數(shù)是指針時(shí),應(yīng)該在操作數(shù)前面加上“*”號(hào)。 D〉修改指針:由于指針是一個(gè)32位的數(shù)據(jù),要用雙字指令來(lái)改變指針的數(shù)值;簡(jiǎn)單的數(shù)學(xué)運(yùn)算,如加法指令或者增加指令,可用于改變指針的數(shù)值。 E〉應(yīng)用舉例——[例3-1]:用于非線性校正的表格的數(shù)據(jù)存放在VW0開(kāi)始的100字中,表格的偏移量(表格中字的序號(hào),第1個(gè)字的序號(hào)為0)在VD200中,在I0.0的上升沿,用間接尋址將表格中相對(duì)于偏移量的數(shù)據(jù)值傳送到VW210中去。 [提示]: 按照所訪問(wèn)的數(shù)據(jù)長(zhǎng)度使用不同的指令:當(dāng)訪問(wèn)字節(jié)時(shí),使用增加指令使指針值加1;當(dāng)訪問(wèn)字或者計(jì)數(shù)器、定時(shí)器的當(dāng)前值時(shí),用加法或者增加指令使指針值加2;當(dāng)訪問(wèn)雙字時(shí),使用加法或者增加指令使指針值加4。
審核編輯:郭婷
-
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7625瀏覽量
166263 -
cpu
+關(guān)注
關(guān)注
68文章
11028瀏覽量
215803
原文標(biāo)題:PLC中存儲(chǔ)器的數(shù)據(jù)類(lèi)型與尋址方式
文章出處:【微信號(hào):工控PLC學(xué)習(xí),微信公眾號(hào):工控PLC學(xué)習(xí)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
什么是ROM存儲(chǔ)器的定義
內(nèi)存儲(chǔ)器的分類(lèi)和特點(diǎn)是什么
內(nèi)存儲(chǔ)器主要用來(lái)存儲(chǔ)什么
內(nèi)存儲(chǔ)器分為隨機(jī)存儲(chǔ)器和什么
存儲(chǔ)器中訪問(wèn)速度最快的是什么
軟盤(pán)驅(qū)動(dòng)器和硬盤(pán)驅(qū)動(dòng)器都是存儲(chǔ)器嗎
ARM處理器的尋址方式
靜態(tài)隨機(jī)存儲(chǔ)器的定義和工作原理

評(píng)論