0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

PLC功能指令使用基礎(chǔ):數(shù)據(jù)類型與尋址方式

autozhineng ? 來源:PLC與自控設(shè)備 ? 2023-05-12 15:12 ? 次閱讀

S7-200 SMART PLC的存儲單元(即編程元件)存儲的數(shù)據(jù)都是二進(jìn)制數(shù)。數(shù)據(jù)的長度稱為字長,字長可分為位(1位二進(jìn)制數(shù),用b表示)、字節(jié)(8位二進(jìn)制數(shù),用B表示)、字(16位二進(jìn)制數(shù),用W表示)和雙字(32位二進(jìn)制數(shù),用D表示)。

數(shù)據(jù)類型

1.字長

2. 數(shù)據(jù)的類型和范圍

S7-200 SMART PLC的存儲單元存儲的數(shù)據(jù)類型可分為布爾型、整數(shù)型和實(shí)數(shù)型(浮點(diǎn)數(shù))。

1)布爾型

布爾型數(shù)據(jù)只有1位,又稱位型,用來表示開關(guān)量(或稱數(shù)字量)的兩種不同狀態(tài)。當(dāng)某編程元件為1時,稱該元件為1狀態(tài),或稱該元件處于ON狀態(tài),該元件對應(yīng)的線圈“通電”,其常開觸點(diǎn)閉合,常閉觸點(diǎn)斷開;當(dāng)該元件為0時,稱該元件為0狀態(tài),或稱該元件處于OFF狀態(tài),該元件對應(yīng)的線圈“失電”,其常開觸點(diǎn)斷開,常閉觸點(diǎn)閉合。例如,輸出繼電器Q0.0的數(shù)據(jù)為布爾型。

2)整數(shù)型

整數(shù)型數(shù)據(jù)不帶小數(shù)點(diǎn),它分為無符號整數(shù)和有符號整數(shù),有符號整數(shù)需要占用1個最高位表示數(shù)據(jù)的正負(fù),通常規(guī)定最高位為0表示數(shù)據(jù)為正數(shù),為1表示數(shù)據(jù)為負(fù)數(shù)。表1列出了不同字長的整數(shù)表示的數(shù)值范圍。

表1不同字長的整數(shù)表示的數(shù)值范圍

39f4541a-f092-11ed-90ce-dac502259ad0.png

3)實(shí)數(shù)型

實(shí)數(shù)型數(shù)據(jù)也稱為浮點(diǎn)型數(shù)據(jù),是一種帶小數(shù)點(diǎn)的數(shù)據(jù),它采用32位來表示(即字長為雙字),其數(shù)據(jù)范圍很大,正數(shù)范圍為+1.175495E-38~+3.402823E+38,負(fù)數(shù)范圍為-1.175495E-38~-3.402823E+38。

3.常數(shù)的編程書寫格式

常數(shù)在編程時經(jīng)常要用到。常數(shù)的長度可為字節(jié)、字和雙字,常數(shù)在PLC中也是以二進(jìn)制數(shù)形式存儲的,但編程時常數(shù)可以十進(jìn)制、十六進(jìn)制、二進(jìn)制、ASCII碼或浮點(diǎn)數(shù)(實(shí)數(shù))形式編寫,然后由編程軟件自動編譯成二進(jìn)制數(shù)下載到PLC中。

常數(shù)的編程書寫格式見表2。

表2常數(shù)的編程書寫格式

3a0a6a5c-f092-11ed-90ce-dac502259ad0.png

尋址方式

在S7 -200 SMART PLC中,數(shù)據(jù)是存于存儲器中的,為了存取方便,需要對存儲器的每個存儲單元進(jìn)行編址。在訪問數(shù)據(jù)時,只要找到某單元的地址,就能對該單元的數(shù)據(jù)進(jìn)行存取。S7 -200 PLC的尋址方式主要有兩種:直接尋址和間接尋址。

1.直接尋址

1)編址

要了解存儲器的尋址方法,須先掌握其編址方法。S7 -200 SMART PLC的存儲單元編址有一定的規(guī)律,它將存儲器按功能不同劃分成若干個區(qū),如I區(qū)(輸入繼電器區(qū))、Q區(qū)(輸出繼電器區(qū))、M區(qū)、SM區(qū)、V區(qū)、L區(qū)等,由于每個區(qū)又有很多存儲單元,因而這些單元需要進(jìn)行編址。PLC存儲區(qū)常采用以下方式編址。

①I、Q、M、SM、S區(qū)按位順序編址,如I0.0~I(xiàn)15.7、M0.0~M1.7。

②V、L區(qū)按字節(jié)順序編址,如VB0~VB2047、LB0~LB63。

AI、AQ區(qū)按字順序編址,如AIW0~AIW30、AQW0~AQW30。

④T、C、HC、AC區(qū)直接按編號大小編址,如T0~T255、C0~C255、AC0~AC3。

2)直接尋址方法

直接尋址通過直接指定要訪問存儲單元的區(qū)域、長度和位置來查找到該單元。S7 -200 SMART PLC直接尋址方法主要有:

①位尋址。位尋址格式為:位單元尋址=存儲區(qū)名(元件名)+字節(jié)地址。位地址

例如,尋址時給出I2.3,要查找的地址是I存儲區(qū)第2字節(jié)的第3位,如圖1所示。

3a37da64-f092-11ed-90ce-dac502259ad0.png

圖1 位尋址舉例

可進(jìn)行位尋址的存儲區(qū)有I、Q、M、SM、L、V、S。字節(jié)/字/雙字尋址。

②字節(jié)/字/雙字尋址是以字節(jié)、字或雙字為單位進(jìn)行的,尋址格式為:

字節(jié)/字/雙字尋址=存儲區(qū)名(元件名)+字長(字節(jié)、字或雙字)+首字節(jié)地址

例如,尋址時給出VB100,要查找的地址為V存儲區(qū)的第100字節(jié);若給出VW100,則要查找的地址為V存儲區(qū)的第100、101兩個字節(jié);若給出VD100,則要查找的地址為V存儲區(qū)的第100~103四個字節(jié)。VB100、VW100、VD100之間的關(guān)系如圖2所示,VW100即為VB100和VB101,VD100即為VB100~VB103。當(dāng)VW100單元存儲16位二進(jìn)制數(shù)時,VB100存高字節(jié)(高8位),VB101存低字節(jié)(低8位);當(dāng)VD100單元存儲32位二進(jìn)制數(shù)時,VB100存最高字節(jié),VB103存最低字節(jié)。

3acee3a0-f092-11ed-90ce-dac502259ad0.png

圖2 VB100、VW100、VD100之間的關(guān)系

可進(jìn)行字節(jié)尋址的存儲區(qū)有I、Q、M、SM、L、V、AC(僅低8位)、常數(shù);可進(jìn)行字尋址的存儲區(qū)有I、Q、M、SM、L、V、T、C、AC(僅低16位)、常數(shù);可進(jìn)行雙字尋址的存儲區(qū)有I、Q、M、SM、L、V、AC(32位)、常數(shù)。

2.間接尋址

間接尋址是指不直接給出要訪問單元的地址,而是將該單元的地址存在某些特殊存儲單元中,這個用來存儲地址的特殊存儲單元稱為指針,指針只能由V、L或AC(累加器)來承擔(dān)。采用間接尋址方式在訪問連續(xù)地址中的數(shù)據(jù)時很方便,使編程非常靈活。

間接尋址存取數(shù)據(jù)一般有三個過程:建立指針、用指針存取數(shù)據(jù)和修改指針。

1)建立指針

建立指針必須用雙字傳送指令(MOVD),利用該指令將要訪問單元的地址存入指針(用來存儲地址的特殊存儲單元)中。指針建立舉例如下。

MOVD &VB200, AC1 //將存儲單元VB200的地址存入累加器AC1中指令中操作數(shù)前的“&”為地址符號,“&VB200”表示VB200的地址(而不是VB200中存儲的數(shù)據(jù)),“//”為注釋符號,它后面的文字用來對指令進(jìn)行注釋說明,軟件不會對其后面的內(nèi)容進(jìn)行編譯。在建立指針時,指令中的第2個操作數(shù)的字長必必須是雙字存儲單元,如AC、VD、LD。

2)用指針存取數(shù)據(jù)

指針建立后,就可以利用指針來存取數(shù)據(jù)。舉例如下。

MOVD &VB200,AC0 //建立指針,將存儲單元VB200的地址存入累加器AC0中

MOVW *AC0, AC1 //以AC0中的地址(VB200的地址)作為首地址,將連續(xù)兩個字節(jié)(一個字,即VB200、VB201)單元中的數(shù)據(jù)存入AC1中

MOVD*AC0, AC1 //以AC0中的地址(VB200的地址)作為首地址,將連續(xù)四個字節(jié)(雙字,即VB200~VB203)單元中的數(shù)據(jù)存入AC1中

指令中操作數(shù)前的“*”表示該操作數(shù)是一個指針(存有地址的存儲單元)。下面通過圖3來說明上述指令的執(zhí)行過程。

3ae18d34-f092-11ed-90ce-dac502259ad0.png

圖3 間接尋址說明圖

“MOVD &VB200, AC0”指令執(zhí)行的結(jié)果是AC0中存入存儲單元VB200的地址;“MOVW *AC0, AC1”指令執(zhí)行的結(jié)果是以AC0中的VB200地址作為首地址,將連續(xù)兩個字節(jié)單元(VB200、VB201)中的數(shù)據(jù)存入AC1中,如果VB200、VB201單元中的數(shù)據(jù)分別為12、34,則該指令執(zhí)行后,AC1的低16位就存入了“1234”;“MOVD *AC0, AC1”指令執(zhí)行的結(jié)果是以AC0中的VB200地址作為首地址,將連續(xù)四個字節(jié)單元(VB200~VB203)中的數(shù)據(jù)存入AC1中,該指令執(zhí)行后,AC1中就存入了“12345678”。

3)修改指針

指針(用來存儲地址的特殊存儲單元)的字長為雙字(32位),修改指針值需要用雙字指令。常用的雙字指令有雙字加法指令(ADDD)和雙字加1指令(INCD)。在修改指針值、存取字節(jié)時,指針值加1;存取字時,指針值加2;存取雙字時,指針值加4。修改指針值舉例如下。

MOVD &VB200, AC0//建立指針

INCD AC0//將AC0中的值加1(即地址值增1)

INCD AC0//將AC0中的地址值再增1

MOVW *AC0, AC1 //讀指針,以AC0中的新地址作為首地址,將它所對應(yīng)連續(xù)兩個字節(jié)單元中的數(shù)據(jù)存入AC1中

以圖6-3為例,上述程序執(zhí)行的結(jié)果是以AC0中的VB202單元地址為首地址,將VB202、VB203單元中的數(shù)據(jù)56、78存入AC1的低16位。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • plc
    plc
    +關(guān)注

    關(guān)注

    5004

    文章

    13054

    瀏覽量

    460992
  • SMART
    +關(guān)注

    關(guān)注

    3

    文章

    222

    瀏覽量

    44632
  • 指令
    +關(guān)注

    關(guān)注

    1

    文章

    604

    瀏覽量

    35593
  • S7-200
    +關(guān)注

    關(guān)注

    13

    文章

    407

    瀏覽量

    50254
  • 數(shù)據(jù)類型
    +關(guān)注

    關(guān)注

    0

    文章

    236

    瀏覽量

    13582

原文標(biāo)題:PLC功能指令使用基礎(chǔ):數(shù)據(jù)類型與尋址方式

文章出處:【微信號:PLC與自控設(shè)備,微信公眾號:PLC與自控設(shè)備】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    詳解PLC的工作原理和數(shù)據(jù)類型

    PLC數(shù)據(jù)類型&&尋址方式 (這個地方要分清楚,PLC的存儲空間大小(位字節(jié)字雙字BIT BYTE WORD DWORD)、儲存器
    發(fā)表于 10-26 11:38 ?2721次閱讀

    數(shù)據(jù)處理指令尋址方式解析

    4.1 數(shù)據(jù)處理指令尋址方式 4.1.1 數(shù)據(jù)處理指令
    發(fā)表于 10-18 14:45 ?2次下載
    <b class='flag-5'>數(shù)據(jù)</b>處理<b class='flag-5'>指令</b>的<b class='flag-5'>尋址</b><b class='flag-5'>方式</b>解析

    ARM指令尋址方式之內(nèi)存訪問指令尋址

    4.2 內(nèi)存訪問指令尋址 根據(jù)內(nèi)存訪問指令的分類,內(nèi)存訪問指令尋址方式可以分為以下幾種。 ①
    發(fā)表于 10-18 16:32 ?1次下載
    ARM<b class='flag-5'>指令</b><b class='flag-5'>尋址</b><b class='flag-5'>方式</b>之內(nèi)存訪問<b class='flag-5'>指令</b><b class='flag-5'>尋址</b>

    標(biāo)準(zhǔn)PLC數(shù)據(jù)類型 (UDT)之間的差別

    要創(chuàng)建 F 型 PLC 數(shù)據(jù)類型 (UDT) ,請啟用“添加新 PLC 數(shù)據(jù)類型”(Add new PLC data t ype) 對
    的頭像 發(fā)表于 06-23 11:09 ?2497次閱讀

    西門子博途F型PLC數(shù)據(jù)類型與標(biāo)準(zhǔn)PLC數(shù)據(jù)類型的差別

    可以像使用標(biāo)準(zhǔn) PLC 數(shù)據(jù)類型 (UDT) 那樣,聲明和使用 F 型 PLC 數(shù)據(jù)類型 (UDT) 。可以在安全程序中以及標(biāo)準(zhǔn)用戶程序中使用 F 型
    的頭像 發(fā)表于 07-08 10:15 ?3185次閱讀

    結(jié)構(gòu)數(shù)據(jù)類型(Struct)及應(yīng)用案例

    Struct數(shù)據(jù)類型使用非常靈活,隨時可以使用,但是相對于PLC數(shù)據(jù)類型 (UDT) 有以下缺點(diǎn),所以建議需要使用Struct類型時,可以使用PLC
    的頭像 發(fā)表于 07-27 16:10 ?1698次閱讀

    關(guān)于三菱尋址方式的介紹

    直接尋址:直接給出地址,基本邏輯指令都是直接尋址方式,功能指令中,大部分也都是直接尋址。比如下面
    發(fā)表于 11-29 11:00 ?1585次閱讀

    PLC數(shù)據(jù)類型的種類 常見的轉(zhuǎn)換方法

      PLC數(shù)據(jù)類型是指編程軟件中用來表示變量、常量、對象等數(shù)據(jù)類型。不同的PLC軟件可能會支持不同的數(shù)
    發(fā)表于 03-17 17:41 ?3.4w次閱讀

    圖文講解PLC功能指令,教你如何正確使用功能指令

    功能指令表達(dá)的表示形式:PLC的發(fā)展多用于順序控制,利用定時器,計(jì)數(shù)器等的的組合取代一般的控制系統(tǒng),帶有功能指令PLC,在使用價值,使用范圍都會更廣。所以本章為大家介紹
    的頭像 發(fā)表于 05-05 14:44 ?6011次閱讀
    圖文講解<b class='flag-5'>PLC</b>的<b class='flag-5'>功能指令</b>,教你如何正確使用<b class='flag-5'>功能指令</b>

    西門子博途:使用PLC數(shù)據(jù)類型 (UDT)

    PLC 數(shù)據(jù)類型 (UDT) 是可自行定義且在程序中可以多次使用的數(shù)據(jù)結(jié)構(gòu)。 此結(jié)構(gòu)可包含不同數(shù)據(jù)類型的多個元素。 聲明 PLC
    的頭像 發(fā)表于 07-12 17:36 ?7577次閱讀
    西門子博途:使用<b class='flag-5'>PLC</b><b class='flag-5'>數(shù)據(jù)類型</b> (UDT)

    淺談PLC定義數(shù)據(jù)類型的應(yīng)用

    PLC定義數(shù)據(jù)類型以下用一個例子介紹PLC定義數(shù)據(jù)類型的應(yīng)用,以便進(jìn)一步理解PLC定義數(shù)據(jù)類型
    的頭像 發(fā)表于 07-24 16:07 ?1217次閱讀
    淺談<b class='flag-5'>PLC</b>定義<b class='flag-5'>數(shù)據(jù)類型</b>的應(yīng)用

    F型PLC數(shù)據(jù)類型與標(biāo)準(zhǔn)PLC數(shù)據(jù)類型(UDT)之間的差別在哪?

    可以像使用標(biāo)準(zhǔn) PLC 數(shù)據(jù)類型 (UDT) 那樣,聲明和使用 F 型 PLC 數(shù)據(jù)類型 (UDT) ??梢栽诎踩绦蛑幸约皹?biāo)準(zhǔn)用戶程序中使用 F 型
    的頭像 發(fā)表于 08-27 09:54 ?1064次閱讀
    F型<b class='flag-5'>PLC</b><b class='flag-5'>數(shù)據(jù)類型</b>與標(biāo)準(zhǔn)<b class='flag-5'>PLC</b><b class='flag-5'>數(shù)據(jù)類型</b>(UDT)之間的差別在哪?

    PLC 數(shù)據(jù)類型 (UDT) 的基本知識

    說明 PLC 數(shù)據(jù)類型 (UDT) 是一種復(fù)雜的用戶自定義數(shù)據(jù)類型,用于聲明一個變量。這種數(shù)據(jù)類型是一個由多個不同數(shù)據(jù)類型元素組成的
    的頭像 發(fā)表于 09-10 09:46 ?4386次閱讀
    <b class='flag-5'>PLC</b> <b class='flag-5'>數(shù)據(jù)類型</b> (UDT) 的基本知識

    PLC功能指令數(shù)據(jù)類型尋址方式

    要了解存儲器的尋址方法,須先掌握其編址方法。S7 -200 SMART PLC的存儲單元編址有一定的規(guī)律,它將存儲器按功能不同劃分成若干個區(qū),如I區(qū)(輸入繼電器區(qū))、Q區(qū)(輸出繼電器區(qū))、M區(qū)、SM
    發(fā)表于 12-07 09:43 ?2014次閱讀
    <b class='flag-5'>PLC</b><b class='flag-5'>功能指令</b>:<b class='flag-5'>數(shù)據(jù)類型</b>和<b class='flag-5'>尋址</b><b class='flag-5'>方式</b>

    plc數(shù)據(jù)類型怎么理解和應(yīng)用

    PLC(可編程邏輯控制器)是一種工業(yè)自動化設(shè)備,用于控制機(jī)械和工業(yè)過程。在PLC編程中,數(shù)據(jù)類型是非常重要的概念,因?yàn)樗鼪Q定了程序中數(shù)據(jù)的存儲和處理
    的頭像 發(fā)表于 12-19 11:39 ?3756次閱讀