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