AB PLC簡述


一.  PLC基礎概念

PLC:可編程序控制器是一種數字運算的電子系統,專為在工業環境下應用而設計。采用可編程的存儲器,用來在內部存儲執行邏輯運算、順序控制、定時、計算和算術運算等操作的指令,並通過數字式、模擬式的輸入和輸出,控制各種類型的機械或生產過程。可編程控制器及有關設備,都應按易於工業控制系統聯成一個整體、易於擴充功能的原則設計。

PLC運行框圖:上電及內部處理à掃描過程à診斷及出錯處理

上電及內部處理:上電后對整個系統進行一些初始化工作,如硬件初始化、IO模塊配置檢查、停電保護設定及其他初始化工作。

掃描過程:包含三個部分。首先是輸入掃描,其次是程序掃描,最后一個是輸出掃描階段。

診斷及出錯處理:PLC沒掃描一次,就執行一次自診斷,檢查諸如CPU、電池電壓、程序存儲器、IO通訊是否異常或出錯,如查出錯誤或異常,CPU面板上的指示燈就會只是,並在特殊寄存器中存入出錯代碼。若出現致命錯誤,CPU就會被強制成STOP方式,停止掃描。

PLC組成:主要有電源、處理器(CPU)、輸入輸出單元(I/O)、特殊輸入輸出單元及一些外部單元(如編程器等)組成。

安裝:常安裝於通用的輸入輸出框架上。裝有CPU模塊的框架稱為基本框架,其他為擴展框架。基礎框架與擴展框架之間如果距離較近(一般不超過30m),可通過擴展本地IO通信口與多個本地擴展框架相連;如果距離較遠(一般小於3000m),可通過遠程IO連接。

主要性能指標:1)存儲容量;2)控制容量:就是IO容量,也叫IO能力,通常以離散量(數字量)個數計;3)掃描周期;4)指令功能及軟件支持;5)網路與通信。

 

二.  產品系列

AB PLC按系統規模大小以及產品性能高低分為以下系列:

高性能PLC:ControlLogix系列、PLC5系列

中性能PLC:SLC500系列(SLC 5/01,5/02,5/03,5/04,5/05),FlexLogix系列,CompactLogix

小型PLC:MicroLogix系列,Micro800系列

AB的PLC目前主要分為5類:

1. MicroLogix1500,編程軟件為RS Logix500

2. 中端小型機SLC500,編程軟件RS Logix500。支持多種網絡,最大支持4096點I/O。

3. 中端新型CompactLogix,編程軟件RS Logix5000。

4. 高端主流機型ControlLogix5000,編程軟件RS Logix5000。最大支持128K點I/O。

5. 高端老機型PLC5,編程軟件RS Logix5。

 

參考:

1. https://wenku.baidu.com/view/6d95c35fb42acfc789eb172ded630b1c59ee9be3.html

2. https://wenku.baidu.com/view/fbeba8eb0975f46527d3e183.html?sxts=1570678308327

3.https://ab.rockwellautomation.com/zh/Programmable-Controllers

三.  編程

3.1 基礎概念

PLC的編程方式:三種,梯形圖、結構文本及順序功能圖SFC。

物理地址:IO模塊在物理框架中的位置,常以第幾個框架第幾個槽中的第幾個端子表示。如第0個框架中1號槽放了一個32點輸入模塊,要指出其5號端子,其物理地址就是0框架1號槽5號端子。

邏輯地址:對應於內存中的地址,常以第幾號機架(rack)第幾號IO組(Group)的第幾位來表示。其中一個機架由8個IO組組成。一個IO組對應於一個輸入映像表字(16位)和一個輸出映像表字(16位),相當於16個輸入端子和16個輸出端子。如輸入映像表中I:021/12中的I代表輸入模塊,02代表2號機架,1代表1號IO組,斜杠后的12代表12號端子。

物理地址與邏輯地址的關系

地址方式       尋址單位(從大到小)

物理地址       框架       槽           端子號

邏輯地址       機架       IO組      位號

3.2 PLC-5的尋址方式

2槽尋址:由兩個I/O模塊槽組成一個IO組,也就是說每一物理的2槽IO模塊對應於輸入映像表中的一個字(16位)和輸出映像表中的一個字(16位)。采用不同密度(8點、16點)的模塊決定了再映像表中每個字使用的位的數目。

兩個8點離散模塊組成一個IO組

前圖是兩個8點輸入模塊,后圖示1個8點輸入和1個8點輸出模塊

結論:8點IO模塊在IO框架中是可以按任意次序放置的。

16點離散量模塊2槽尋址

由於每個16點模塊使用了整個映像表中的整個字,因此,一個16點的輸入模塊槽(放在偶數槽)要與相鄰的另一個模塊槽組成一個2槽IO組時,另一個模塊必須是8點或16點的輸出模塊,形成互補。

由於所有的塊傳送模塊(如模擬量模塊)都是雙向作用的(既占用輸入映像表,又占用輸出映像表),所以不能用來互補輸入或輸出模塊。

注:2槽尋址的框架中不能采用32點的模塊。

例如一個16點離散輸入模塊和一個16點離散量輸出模塊組成一個IO組時輸入輸出映像表中使用位的情況:

1槽尋址:一個IO模塊槽組成一個IO組,也就是說,在框架中的每一個物理的槽對應於一個輸入和輸出映像表字。

在PLC框架中可以任何的次序混用8點或16點模塊。

例:帶16點IO模塊的1槽尋址及其IO映像表

1槽尋址中使用32點IO模塊

1槽尋址中使用32點IO模塊時,必須從偶數槽開始,在IO槽的2個相鄰槽(奇偶對)中成對地安裝一塊輸入模塊和一塊輸出模塊。如果不能按此規定把模塊配對,那么一對槽中的一個槽必須空置。例如,如果0號插槽有一塊32點輸入模塊,那么,1號IO槽必須插8點、16點或32點輸出模塊(或一塊只使用背板電源、不占IO點的模塊),否則,這個槽必須空置。帶有兩塊32點IO模塊的1槽尋址:

1/2槽尋址:半個IO模塊槽組成一個IO組,也就是說,在框架中的每一個物理槽對應兩個輸入和兩個輸出映像表字。

因為在處理器映像表中,對每一個IO槽有32個輸入位和32個輸出位,所以可以在IO框架中以任意次序混用8點、16點和32點IO模塊

帶32點IO模塊的1/2槽尋址:

機架號的分配

在一個框架中的機架數取決於框架的大小和尋址方式

框架尺寸       2槽尋址        1槽尋址        1/2槽尋址

4槽               1/4機架         1/2機架         1機架

8槽               1/2機架         1機架            2機架

12槽             3/4機架         3/2機架         3機架

16槽             1機架            2機架            4機架

機架分配的一般原則:

1) 處理器駐留框架中分配一個(128個輸入和128個輸出)至4個機架。

2) 不能將處理器駐留本地IO機架分解成兩個或多個框架。

3) 不能將不使用的處理器駐留本地IO組分配給遠程IO機架

4) 不能以同一機架號來尋址擴展本地IO和遠程IO框架。

例如:一個8槽的擴展本地IO框架設置為IO機架2的IO組0~3,則一個8槽的遠程IO框架就不能設置為IO機架2的IO組4~7。

處理器駐留框架的機架首址:缺省為0,對於PLC-5/30、-5/40、-5/60處理器可以通過改變處理器控制字S:26(S是狀態文件,26位字號)中的第2位,將缺省值改為1。

 

尋址遠程IO機架的一般規則:1)一個遠程IO機架可以是一個框架的一部分,也可以是一個滿框架,甚至是多個框架。2)將遠程IO機架數限制在所選用PLC-5處理器能夠支持的最大機架數之內(最大機架數=處理器的IO點數/每個機架的IO點數(128點))。3)PLC-5處理器和1771-ASB適配器模塊會自動將下一個更高標號的機架分配給框架中剩余的I/O組。例如,如果在處理器駐留框架中選擇1/2槽尋址,並且使用的是16槽框架,那么處理器會在這個框架中尋址機架0,1,2,3。

本地IO機架分配規則:

PLC-5/40L或PLC-5/60L處理器的通道2是一個擴展本地IO掃描器。一個PLC-5/40L或PLC-5/60L處理器可用於掃描遠程或本地IO機架。

1) 遠程IO和擴展本地IO機架兩者的總數必須不能超過處理器所允許的最大機架數(PLC-5/40L為16個機架,而PLC-5/60L為24個機架)。

2) 不要再擴展本地IO和遠程IO之間分解機架號。例如,如果將機架的部分用作遠程IO,就不能將機架的剩余部分用作擴展本地IO。

3) 可以將擴展本地IO機架分配給擴展本地IO母線上的多個框架。

4) 在PLC-5系統中,可以對每個擴展本地IO框架選擇不同的硬件尋址方法。

3.3 PLC內存組織

PLC除了微處理器外,還包括存儲器,其中一部分是用戶存儲器。用戶存儲器包含程序存儲器和數據存儲器。

處理器所檢查和修改的所有數據均存儲在內存中的數據文件中,數據包含:1)從輸入模塊接收的數據;2)發送到輸出模塊的數據;3)程序運算的中間結果;4)預先裝入的數據;5)與指令有關的狀態信息;6)與處理器操作有關的信息等。

在PLC-5中可以定義1000個數據文件(用文件號0~999表示),為了編址方便,每個文件均由一個字母(標識符)和一個文件號(0~999)來標識。一般,0~8號文件是系統為用戶建立的缺省文件。如果需增加數據文件,用戶可以通過設定適當的標識符及從9開始的文件號(9~999)來建立各種文件。

文件類型       標識符    文件號

輸出              O           0

輸入              I             1

狀態              S            2

位                  B            3

計時器           T            4

計數器           C            5

控制              R            6

整數              N            7

浮點              F            8

可定義的數據文件類型

類型       標識符    編號       大小

位           B            9~999     1000字

計時器    T            9~999     1000個3字元素

計數器    C            9~999     1000個3字元素

整數       N            9~999     1000字

浮點       F            9~999     1000個單字元素(每字32位)

ASCII      A            9~999     1000字

BCD       D            9~999     1000字

塊傳輸    BT          9~999     1000個6字元素

控制       R            9~999     1000個3字元素

信息       MG         9~999     585個56

PID         PD          9~999     399個82字元素

其他還有SFC狀態(SC)文件和ASCII串(ST)文件等。

數據文件的地址:由文件名稱(T)、文件號(f)、元素號(e)、字號(W)及位(b)構成,相互之間用一定的定界符分開,如一個計時器文件是一個三字元素,可表示為:

T f:e.W/b 位號(0~15)

數據文件從元素構成的字數可以分為:

單字元素:一個元素一個字

三字元素:一個元素三個字

多字元素:一個元素多個字

輸入輸出文件

I:017/01---- 1號機架、7號IO組,1號端子上的輸入

O:026/00----2號機架,6號IO組,0號端子上的輸出

注:輸入/輸出文件IO的機架號、IO組號、端子號全部用八進制表示,其他數據文件的元素號、字號及位號用十進制表示。

位文件B用在繼電器邏輯指令、移位寄存器指令及順序器指令中,其中每一個都可作為一個中間繼電器來使用。兩種編制方式:通過設定元素號(0~999共1000個字)和在元素內的位號(00~15共16位)進行編址,如B f:e/b;通過整個位文件依次從00開始對位進行編號,如B f/b

計時器文件T用在計時器指令中,用3字元素,字0是控制字(內部使用,不能編址),字1存儲預置值PRE,字2存儲累積值ACC。可編址的位:EN=位15,有效位,TT=位14,計時器計時位,DN=位13,計時器完成位;可編址的字:PRE=預置值,ACC=累積值。

T4:0.0/15      T4:0/15   T4:0.EN   等價

T4:0.1           T4:0.PRE                等價

T4:0.2             T4:0.ACC              等價

計數器文件C用於計數指令中,3字元素,字0是控制字,字1存儲預置值,字2存儲累積值。可編址的位:CU=位15,加數有效位;CD=位14,減數有效位;DN=位13,完成位;OV=位12,上溢位;UN=位11,下溢位。可編址的字:PRE=預置值,ACC=累積值。

整數文件用於放置一個16位的字,默認整數文件N7,整數文件可在元素及位上進行編址、尋址,如N f:e/b

N7:2     N7:2/08       N10:36

浮點文件F用於放置一個32位的字,浮點文件一般就是尋址到元素,F f:e

F8:0       F11:1

四.  DF1協議

AB的PCCC指的是?

PCCC is the 'Application Layer Message Packet' of DF1

It is also referred to as PC-cubed. I'm not sure what it really stands for - a good guess would be Programmable Controller Communication Commands. These are the 'Application Layer Message Packets' as shown in the on-line DF1 Manual Chapter 6. AB people do not include the DST/SRC bytes when they speak of PCCC - these 2 bytes are really the DF1 header attached before a PCCC message.

What are the best commands to use for SLC5/MicroLogix?

The best commands for SLC5/MicroLogix controllers are:

  • Protected Typed Logical Read with 3-Address Fields (Cmd=0x0F, SubFnc=0xA2)
  • Protected Typed Logical Write with 3-Address Fields (Cmd=0x0F, SubFnc=0xAA)
  • Protected Typed Logical Masked-Write with 3-Address Fields (Cmd=0x0F, SubFnc=0xAB)
  • Protected Typed Logical Read with 2-Address Fields (Cmd=0x0F, SubFnc=0xA1)
  • Protected Typed Logical Write with 2-Address Fields (Cmd=0x0F, SubFnc=0xA9)

Only the first two (0xA2/AA) are documented in the official DF1 protocol specification. The third (0xAB) is not documented but is commonly used by OPC servers; in fact a Rockwell engineer formally sent me details of it when I asked; it is not considered "secret".

The last two (0xA1/A9) are only of value if you're creating a slave driver since a few of Rockwell's software tools assume these are supported. While they are not documented in the DF1 specification, RSLogix5000 outlines support for them as part of its legacy support for PCCC messages. But there is no reason for an OPC server or master to use 0xA1/A9 since support by slaves is not universal. Using SubFnc 0xA1 instead of 0xA2 just drops one unrequired NULL byte from the command, so is of modest value. For example, to read N7:1 your Read command would include the 6 bytes "A2 02 07 89 01 00" for the 3-Address Fields form and only the 5 bytes "A1 02 07 89 01" for the 2-Address Fields form. Big deal, eh? Well, yes - a big deal if you try to use 0xA1 with a slave that doesn't understand 0xA1.

 

參考:

1. 羅克韋爾PLC培訓教程https://wenku.baidu.com/view/2e7e2e0d84254b35effd3449.html

2. http://www.iatips.com/pccc_tips.html Rockwell一些協議tips


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM