rilpoint_mw113


可编程序控制器


常見的可程式邏輯控制器外觀
常見的可程式邏輯控制器外觀

可程式邏輯控制器(Programmable Logic Controller,PLC),是一种用于自动化实时控制的微型计算机,广泛应用于目前的工业控制领域 。在可程式邏輯控制器出现之前,一般要使用成百上千的继电器以及齿轮定时器才能组成具有相同功能的自动化系统,而现在,经过编程的简单的可程式邏輯控制器模块基本上已经代替了这些大个头的装置。可程式邏輯控制器的系统程序一般在出厂前已经初始化完毕,用户可以根据自己的需要自行编辑相应的用户程序来满足不用的自动化生产要求。

最初的可程式邏輯控制器只有逻辑控制的功能,所以被命名为可程式邏輯控制器,后来随着不断的发展,这些当初功能简单的计算机模块已经有了包括逻辑控制,时序控制、模拟控制、多机通信等许多的功能,名称也改为可程式控制器(Programmable Controller),但是由于它的简写也是PC与个人电脑(Personal Computer )的简写相冲突,也由于多年来的使用习惯,人们还是经常使用可程式邏輯控制器这一称呼,并在术语中仍沿用PLC这一缩写。

現在工業上使用可程式邏輯控制器(PLC)已經相當於是由一台輕巧型電腦所構成,能透過數位或類比輸入/輸出模組控制機器設備、製造處理流程、及其它控制模組的電子系統。PLC可接收(輸入)及發送(輸出)多種型態的電氣或電子訊號,並使用他們來控制或監督幾乎所有種類的機械與電氣系統。

PLC具有通用性強、使用方便、適應面廣、可靠性高、抗干擾能力強、編程簡單等特點。可以預料:在工業控制領域中,PLC控制技術的應用必將形成工業界的潮流。

国际电工委员会(IEC)在其标准中将PLC定义为:
「可程式邏輯控制器是一種數位運算操作的电子系统,专为在工业环境应用而设计的。
 它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等
 面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程。可程式邏輯控制器及
 其有关外部设备,都按易于与工业控制系统联成一个整体,易于扩充其功能的原则设计。」


目录

[编辑] 發展历史

三菱Q系列PLC,可藉由擴充底座連接各種模組擴充許多高性能之功能
三菱Q系列PLC,可藉由擴充底座連接各種模組擴充許多高性能之功能

PLC的興起,是與美國現代工業自動化生產發展的要求密不可分的。

  • PLC 源起於1960 年代,當時美國一汽車製造公司,為解決工廠生產線調整時,繼電器順序控制系統之電路修改耗時,平時檢修與維護不易等問題。

在可程式邏輯控制器出现之前,汽车制造业中的一般控制、顺序控制以及安全互锁逻辑控制必须完全依靠众多的继电器定时器以及专门的閉迴路控制器来实现。它们体积庞大、有着严重的噪音,不但每年的维护工作要耗费大量的人力物力,而且继电器-接触器系统的排线检修等工作对维护人员的熟练度也有着很高的要求。

针对这些问题,美国通用汽车公司在1968年向社会公开招标,要求设计一种新的系统来替换继电器系统,并提出了著名的“通用十条”招标指标,即:

1、编程方便,现场可修改程序;

2、维修方便,采用模块化结构;

3、可靠性高于继电器控制装置;

4、体积小于继电器控制装置;

5、数据可直接送入管理计算机;

6、成本可与继电器控制装置竞争;

7、输入可以是交流115V;

8、输出为交流115V,2A以上,能直接驱动电磁阀,接触器等;

9、在扩展时,原系统只要很小变更;

10、用户程序存储器容量至少能扩展到4K。

    • 随后,美国数字设备公司(DEC)根据这一设想,于1969年研制成功了第一台PDP-14控制器,并在汽车自动装配线上使用并获得成功。由于当时系统主要用于顺序控制、职能进行逻辑运算,所以被命名为可程式邏輯控制器(Programmable Logic Controller,PLC)。
    • 最早期之PLC只具有簡易之邏輯開/關(on/off)功能,但比起傳統繼電器之控制方式,已具有容易修改、安裝、診斷與不佔空間等優點。
  • 1970 年代初期,PLC引進微處理機技術,使得PLC具有算術運算功能與多位元之數位信號輸出/輸入功能,並且能直接以階梯圖符號進行程式之編寫。这项新技术的使用,在工业界产生了巨大的反响。日本在1971年从美国引进了这项技术,并很快研制成功了自己的DCS-8可程式邏輯控制器,在1973年至1974年间也相继有了自己的该项技术。中国则于1977年研制成功自己的第一台可程式邏輯控制器,但是使用的微处理器核心为MC14500。
  • 1970 年代中期,PLC功能加入遠距通訊、類比輸出輸入、NC 伺服控制等技術。
  • 1980 年代以後更引進PLC 高速通訊網路功能,同時加入一些特殊輸出/輸入界面、人機界面、高功能函數指令、資料收集與分析能力等功能。

PLC之功能早已不止當初數位邏輯之運算功能,因此近年來PLC常以可程式控制器(Programmable Controller)簡稱之。



其他历史细节参考这里(英文)

[编辑] PLC內部運作方式

雖然PLC所使用之階梯圖程式中往往使用到許多繼電器、計時器與計數器等名稱,但PLC內並非實體上具有這些硬體,而是以記憶體與程式上的模擬方式來取代。因此能大大減少控制器所需之硬體空間。實際上PLC執行階梯圖程式的運作方式是逐行的將階梯圖程式碼掃瞄讀入CPU 中並執行之。在整個的掃瞄過程包括三大步驟,「輸入狀態檢查」、「程式執行」、「輸出狀態更新」說明如下:

 步驟一「輸入狀態檢查」:
 PLC首先檢查輸入端元件所連接之各點開關或感測器狀態(1 或0 代表開或關),並將其狀態寫入記憶體中對應之位置Xn。
 
 步驟二「程式執行」:
 將階梯圖程式逐行取入CPU 中運算,若程式執行中需要輸入接點狀態,CPU直接自記憶體中查詢取出。
 輸出線圈之運算結果則存入記憶體中對應之位置,暫不反應至輸出端Yn。
 
 步驟三「輸出狀態更新」:
 將步驟二中之輸出狀態更新至PLC輸出部接點,並且重回步驟一。

此三步驟稱為PLC之掃瞄周期,而完成所需的時間稱為PLC 之反應時間,PLC 輸入訊號之時間若小於此反應時間,則有誤讀的可能性。每次程式執行後與下一次程式執行前,輸出與輸入狀態會被更新一次,因此稱此種運作方式為輸出輸入端「程式結束再生」。

[编辑] PLC的硬體結構及基本配置

PLC內部運作架構
PLC內部運作架構


一般講,PLC分為箱體式和模組式兩種。但它們的組成是相同的,對箱體式PLC,有一塊CPU板、I/O板、顯示面板、記憶體塊、電源等,當然按CPU性能分成若干型號,並按I/O點數又有若干規格。對模組式PLC,有CPU模組、I/O模組、記憶體、電源模組、底板或機架。無任哪種結構類型的PLC,都屬於匯流排式開放型結構,其I/O能力可按用戶需要進行擴展與組合。PLC的基本結構框圖如下:


[编辑] 硬體结构

可程式邏輯控制器(Programable Logic Controller)簡稱PLC,是一種具有微處理機的數位電子設備,可以將控制指令隨時載入記憶體內儲存與執行.

可程式控制器由內部CPU,指令及資料記憶體,輸入輸出單元,電源模組,數位類比...等單元所模組化組合成.

以下大概會做一個說明

 1.CPU中央處理單元

PLC中的CPU是PLC的核心,起神經中樞的作用,每台PLC至少有一個CPU,它按PLC的系統程式賦予的功能接收並存貯用戶程式和資料,用掃描的方式採集由現場輸入裝置送來的狀態或資料,並存入規定的寄存器中,同時,診斷電源和PLC內部電路的工作狀態和編程過程中的語法錯誤等。進入運行後,從用戶程式存貯器中逐條讀取指令,經分析後再按指令規定的任務產生相應的控制信號,去指揮有關的控制電路,與通用電腦一樣,主要由運算器、控制器、寄存器及實現它們之間聯繫的資料、控制及狀態匯流排構成,還有週邊晶片、匯流排界面及有關電路。它確定了進行控制的規模、工作速度、記憶體容量等。記憶體主要用於存儲程式及資料,是PLC不可缺少的組成單元。 CPU的控制器控制CPU工作,由它讀取指令、解釋指令及執行指令。但工作節奏由震盪信號控制。CPU的運算器用於進行數位或邏輯運算,在控制器指揮下工作。 CPU的寄存器參與運算,並存儲運算的中間結果,它也是在控制器指揮下工作。 CPU雖然劃分為以上幾個部分,但PLC中的CPU晶片實際上就是微處理器,由於電路的高度集成,對CPU內部的詳細分析已無必要,我們只要弄清它在PLC中的功能與性能,能正確地使用它就夠了。

CPU模組的外部表現就是它的工作狀態的種種顯示、種種介面及設定或控制開關。一般講,CPU模組總要有相應的狀態指示燈,如電源顯示、運行顯示、故障顯示等。箱體式PLC的主箱體也有這些顯示。它的匯流排界面,用於接I/O範本或底板,有記憶體介面,用於安裝記憶體,有外設口,用於接外部設備,有的還有通訊口,用於進行通訊。CPU模組上還有許多設定開關,用以對PLC作設定,如設定起始工作方式、記憶體區等。

PLC的CPU內部包含CU.ALU.暫存器三大部分/

CU:(控制單元-指令解碼器) 負責將儲存在記憶體內的程式解碼成控制信號,用以決定各單元模組的工作狀態,是PLC的指揮部.

ALU:(算數及邏輯運算單元)專門負責做加減乘除的算術運算及AND,OR,NOT邏輯運算

暫存器:CPU內部記憶體可以暫時存放運算的結果,等待下一次運算.

 2.記憶體

PLC內部存放撰寫完成的程式指令及資料的地方,也可以使用RAMEEPROM等專用記憶體擴充(但擴充能力得依各廠牌有所不同)。

 3.輸入/輸出單元(IO單元)

PLC的對外功能,主要是通過各種I/O介面模組與外界聯繫的,按I/O點數確定模組規格及數量,I/O模組可多可少,但其最大數受CPU所能管理的基本配置的能力,即受最大的底板或機架槽數限制。I/O模組集成了PLC的I/O電路,其輸入暫存器反映輸入信號狀態,輸出點反映輸出鎖存器狀態。

輸入單元是用來連結擷取輸入元件的信號動作並透過內部匯流排將資料送進記憶體由CPU處理驅動程式指令部分。PLC輸入模組PLC系統的架構和輸入模組產品的選擇端視需要被監測的輸入訊號位準而定。 來自不同類型被監測的感測器與流程控制之變量訊號,可以涵蓋從±10mV至±10V的輸入訊號範圍。

輸出單元是用來驅動外部負載的介面主要原理是由CPU處理以書寫在PLC 裡的程式指令判斷驅動輸出單元在進而控制外部負載,如 指示燈,電磁接觸器,繼電器,氣(油)壓閥..等。 PLC輸出模組在工業環境中用來控制制動器、氣閥及馬達等的PLC系統類比輸出範圍包括±5V、±10V、0V到5V、0V到10V、4到20mA、或0到20mA等。


 4.AD/DA 類比/數位 單元(類比數位轉換控制)

AD-類比訊號轉數位訊號,主要是把外部微電壓微電流以及0與1的資料, 透過專用模組接面接收,再以專用指令轉換運算給程式運用.

DA-數位訊號轉類比訊號,主要是把PLC內部數學數值及專用指令以CPU做運算,並透過專用模組將數學術值轉微電壓微電流信號再加以控制外部設備,如變頻器,溫控器包含其他具有數位類比收送的介面設備.

通常在使用AD/DA模組時我們都會去考慮到設備的解析度, 因為解析度會影響到精準度所以我門通常會選用高解析度的設備使用,並遵照期線性比例做數學運算.

 5.電源模組:

有些PLC中的電源,是與CPU模組合二為一的,有些是分開的,其主要用途是為PLC各模組的積體電路提供工作電源。同時,有的還為輸入電路提供24V的工作電源。電源以其輸入類型有:交流電源,加的為交流220VAC或110VAC,直流電源,加的為直流電壓,常用的為24V。

  6.通訊:

現在PLC大多具有可擴充通信網路模組的功能,即使是最簡單的PLC也需以BUS方式通訊連結其他裝置。它使PLC與PLC 之間、PLC與上位電腦以及其他智慧設備之間能夠交換資訊,形成一個統一的整體,實現分散集中控制。現在幾乎所有的PLC新產品都有通信網路功能,它和電腦一樣具有RS-232介面,通過雙絞線、同軸電纜或光纜,可以在幾公里甚至幾十公里的範圍內交換資訊。 當然,PLC之間的通訊網絡是各廠家專用的,PLC與電腦之間的通訊,一些生產廠家採用工業標準匯流排,並向標準通訊協定靠近,這將使不同機型的PLC之間、PLC與電腦之間可以方便地進行通訊與網路。

[编辑] PLC 的外部設備

外部設備是PLC系統不可分割的一部分,它有四大類

1.編程設備: 有簡易編程器和智慧圖形編程器,用於編程、對系統作一些設定、監控PLC及PLC所控制的系統的工作狀況。編程器是PLC開發應用、監測運行、檢查維護不可缺少的器件,但它不直接參與現場控制運行。

2.監控設備: 資料監視器和圖形監視器。直接監視資料或通過畫面監視資料。

3.存儲設備: 有存儲卡、存儲磁帶、軟碟或唯讀記憶體,用於永久性地存儲用戶資料,使用戶程式不丟失,如EPROM、EEPROM寫入器等。

4.輸入輸出設備: 用於接收信號或輸出信號,一般有條碼讀人器,輸入模擬量的電位器,印表機等。

[编辑] PLC 內主要元件

PLC利用內部記憶體,規劃許多順序控制程式上常會使用到的元件,這些元件包括: 輸入繼電器、輸出繼電器、補助繼電器、計數器、計時器、資料暫存器等主要元件,各元件功能與使用方法,說明如下:

 一、輸入接點(input)與輸出接點(Output)
  1. 用於PLC與外部元件之間的狀態傳送。可連接外部器件,及按鈕開關選擇開關光電開關、數字開關等,使用過大電流將會造成內部接點元件損壞。
  2. PLC輸出(Xn)與輸入(Yn)之繼電器對應至實際輸出與輸入之接點狀態,由PLC內部之記體來記憶,在每回程式執行完畢後,PLC會將運算結果後記憶體之值(0 或1)反應至輸出接點Yn(ON或OFF);接著掃瞄輸入接點Xn之狀態,並更新所有輸入點記憶體內之值,以備下一回程式執行使用。
  3. 輸入點Xn與輸出點Yn可當作一虛擬繼電器的接點,因此可作常開接點(-| |-)與常開接點(-|/|-)處理,每個輸出點Yn(-( )-)只能使用在程序一次,但如作為接點,則可在程式設計的程序中無限使用。
  4. 其中n 代表接點之編號,接點編號方式各廠牌不同,有些PLC採八進制而非慣用之十進制。
 二、內部繼電器(
  1. PLC內部提供很多補助繼電器M或者R表示),用來取代傳統順序控制中的繼電器。傳統繼電器包括接點與線圈二部份,但實際上PLC是以記憶體來記憶補助繼電器之狀態,若線圈被驅動則將1 寫入,否則將0 寫入。接點之運算則直接讀自所對應之記憶體值(0 或1),其但原理與傳統繼電器相同,只有持續輸出電源或採用自保設計,才可保持繼電器的ON(1)狀態,如果切斷PLC的電源,或者對PLC進行復歸,內部繼電器都將斷開OFF,除非是停電保持形態之內部繼電器。
  2. 補助繼電器可分為一般型與停電保持型,差別在系統重新啟動或斷電後,停電保持型會記憶啟動或斷電前之狀態。
  3. 依各廠牌生產型別,尚可能有網路繼電器(B)、步進繼電器(S)...等特殊型態。
 三、計數器(Counter)
  1. 計數器在程式中被用來計算重覆動作的次數。
  2. 每一個計數器Cn 有一個位元記憶體位址代表其接點狀態,另有一字元暫存器用來記錄目前所計數之大小。
  3. 一般PLC的計數器計數方式可分為上數或下數方式,有的計數器則同時具有上數與下數方式。上數指的是由小往大數(如:1,2,3...),下數指的是由大的往小數(如:9,8,7...)。因此首先要了解所使用之計數器到底是上數或下數。
  4. 一般PLC中的計數器並非真有硬體計數器存在,而是以記憶體配合軟體的模擬方式來完成計數等功能。但有的PLC具有高速計數器,則是以實際的硬體來完成所需的高速計數工作。順序控制使用一般計數器即可,但若輸入訊號為高速脈波,則須改採高速計數器。
  5. 有的PLC為避免意外停電後計數器計數值的遺失,也提供部份計數器具有停電後保持計數值與接點狀況之功能。
 四、計時器(Timer)
  1. 計時器用來計算動作的時間長短。
  2. 每一個計時器Tn 有一個記憶體位址記憶其接點狀態,另有一暫存器用來記錄目前所計時之次數。每單位計時時間乘上計時次數,代表所計時之時間長短。
  3. 一般型計時器按其接點動作方式可分為「啟動延遲型」「斷電延遲型」二種
  4. 另有一積算型計時器,在輸入訊號消失或停電後,計時器內之資料會被保存。因此積算型計器內之資料在每一次重新計時動作前,應先予以歸零。
  • 「啟動延遲型」計時器:在啟動訊號輸入後開始計時,等到計時終了才啟動計時線圈與接點;
  • 「啟動延遲型」計時器:則在啟動訊號輸入後,除了開始計時,並啟動計時線圈與接點,等到計時終了才將計時線圈與接點關閉。


 五、資料暫存器(Data)
  1. 資料暫存器(Dn)用來儲存字元組之數值或字元資料。
  2. 其資料型態使用二進制符號,數據用O與1表示。每個暫存器使用16位元儲存,但是如果使用二個資料暫存器,則可處理32位元的數據。
  3. 數值存入後其內容會一直保持,直到新數據送入或程式停止運轉才清除歸零。
  4. 依其功能可分為一般用、停電保持用、特殊用、檔案暫存用四種。
    • 一般與停電保持用資料暫存器用來暫存程式中之運算值;特殊用資料暫存器用來控制或監視PLC 內部各項要素;檔案暫存資料暫存器用來讀入周邊裝置資料。
六、指標

其概念與程式語言上的指標功能相同,可作為程式的跳步指令與之配合使用。

[编辑] 可程式邏輯控制器的系統與控制迴路

[编辑] 模拟信号和数字信号的处理

PLC是一種監控設備, 為了監視及控制各項機電等設備, 當然必須與那些設備有相互溝通的方式.

在這些機電設備的世界裡, 人類發明了各種形式的訊號, 以作為它們之間的溝通媒介.

目前來說, 人們研發出來的各種偵測如: 溫度, 濕度, 壓力等自然現象的偵測元件, 都是將所測得的數據轉換為線性對應的電流信號, 通常是4~20mA.

PLC接受這樣的信號, 就可依據電流的大小而知道偵測器偵得的目前狀況.

Pulse(脈衝)信號是一種形式的接點信號. 它的意思是每"達到條件"時, 接點會閉合一次. 例如: 某個轉輪式的流量計, 可能被設計成--當它計算出水流累計量達到一度時, 就將輸出接點閉合一次.

至於所謂的RS232訊號, 乃是指一種"通訊"的方式(RS232是一種電氣規格). 以上所提的各種信號都是電氣形式的訊號. 而且每個信號都需要獨立的線路來作傳遞.

通訊的方式, 則可以把它當作設備用"交談"的方式來做溝通. 它們彼此間以一串列的數值信號來組成所要傳遞的資料, 使得多樣化的資料能夠藉由一組通訊線路來達成.

4~20mA算是通用規格. 另外常見的還有 0~20mA.

另外還有電壓式的: 0~5V, 1~5V, 0~10V, 等等.

當然還有以其他形式來表達自然環境中各種"連續性"數值的方式, 像是: 電阻式, 以及其他變化應用.

總之呢, 4~20mA的規格最多.

但是, 事實上, 4~20mA的電流信號, 在進入電路板時, 還是會串上一個250或500歐姆的電阻, 而獲得一個1~5V或2~10V的電壓, 然後再由A/D(類比/數位)轉換IC得到一個對應的數值.

這個"5V"或"10V"的原因, 乃是人們研發出來的A/D IC最容易且廉價的關係而已. 至於為何以電流的方式較多, 因為4~20mA控制電流不易因傳送距離較長而導致訊號衰減。

[编辑] 編輯程式設計

PLC程式設計示意圖
PLC程式設計示意圖

程式語言 PLC的編程語言與一般電腦語言相比,具有明顯的特點,它既不同於高階語言,也不同與一般的組合語言,它既要滿足易於編寫,又要滿足易於調試的要求。目前,還沒有一種對各廠家產品都能相容的編程語言。如三菱公司的產品有它自己的編程語言,OMRON公司的產品也有它自己的語言。但不管什麼型號的PLC,其編程語言都具有以下特點:

1.圖形式指令結構:程式由圖形方式表達,指令由不同的圖形符號組成,易於理解和記憶。系統的軟體發展者已把工業控制中所需的獨立運算功能編制成象徵性圖形,用戶根據自己的需要把這些圖形進行組合,並填入適當的參數。在邏輯運算部分,幾乎所有的廠家都採用類似於繼電器控制電路的梯形圖,很容易接受。如西門子公司還採用控制系統流程圖來表示,它沿用二進位邏輯元件圖形符號來表達控制關係,很直觀易懂。較複雜的算術運算、定時計數等,一般也參照梯形圖或邏輯元件圖給予表示,雖然象徵性不如邏輯運算部分,也受用戶歡迎

2.明確的變數常數:圖形符相當於操作碼,規定了運算功能,運算元由用戶填人,如:K400,T120等。PLC中的變數和常數以及其取值範圍有明確規定,由產品型號決定,可查閱產品目錄手冊。

3.簡化的程式結構:PLC的程式結構通常很簡單,典型的為塊式結構,不同塊完成不同的功能,使程式的調試者對整個程式的控制功能和控制順序有清晰的概念。

4.簡化應用軟體生成過程:使用組合語言和高階語言編寫程式,要完成編輯、編譯和連接三個過程,而使用編程語言,只需要編輯一個過程,其餘由系統軟體自動完成,整個編輯過程都在人機對話下進行的,不要求用戶有高深的軟體設計能力。

5.強化調測手段:無論是組合語言程式,還是高階語言程式調試,都是令編輯人員頭疼的事,而PLC的程式調試提供了完備的條件,使用編程器,利用PLC和編程器上的按鍵、顯示和內部編輯、調試、監控等,並在軟體支援下,診斷和調試操作都很簡單。

總之,PLC的編程語言是針對使用者應用所開發的,因此對使用者不要求具備高深的知識、不需要長時間的專門訓練。


PLC工作過程及硬體功能的實現,則要靠軟體的支援。PLC的軟體提供了各種邏輯模組(軟體),經程式撰寫來完成邏輯控制功能。

[编辑] PLC專用程式語言種類

PLC常用的程式語言主要有四種:指令表、階梯圖、流程、IEC。

1. 指令表(STL):類似於組合語言,由指令語句系列構成,PLC指令的有序集合,PLC運行它,可進行相應的工作,當然,這裏的程式是指PLC的用戶程式。用戶程式一般由用戶設計,PLC的廠家或代銷商不提供。用語句表達的程式不大直觀,可讀性差,特別是較複雜的程式,更難讀,所以多數程式用梯形圖表達。

        位址        指令        變數
        0000       LD        X000
       0001       OR        X010
       0002       AND NOT   X001
       0003       OUT       Y000
       0004       END        

2. 階梯圖(Ladder Programming,LAD):類似於傳統上以繼電控制接觸器的線路,梯形圖是通過連線把PLC指令的梯形圖符號連接在一起的連通圖,用以表達所使用的PLC指令及其前後順序,它與電氣原理圖很相似。它的連線有兩種:一為母線,另一為內部橫豎線。內部橫豎線把一個個梯形圖符號指令連成一個指令組,這個指令組一般總是從裝載(LD)指令開始,必要時再繼以若干個輸入指令(含LD指令),以建立邏輯條件。最後為輸出類指令,實現輸出控制,或為資料控制、流程控制、通訊處理、監控工作等指令,以進行相應的工作。

3. 順序功能流程圖(Sequential Function Chart,SFC):類似於流程設計常用的步進式控制線路

4. IEC 61131:IEC 61131是一個國際標準,它規範了 PLC 相關之軟體硬體的標準,其最終的目的是可以讓PLC的使用者在不改 軟體設計的狀況下可以輕易更換PLC硬體。 目前這個標準主要是由 PLCopen www.plcopen.org在推廣。


5.其他:另外還有功能圖(Function Chart Programming,FBD)以及歐洲常用的IEC編程方法,是各種PLC編程語言規範化的方向。 一些高檔的PLC還具有與電腦相容的C語言、BASIC語言、專用的高階語言(如西門子公司的GRAPH5、三菱公司的MELSAP),還有用布林邏輯語言、通用電腦相容的組合語言等。

大體而言,階梯圖程式目前依然是應用最廣泛的撰寫語言,因為它與繼電—接觸器控制線路非常相像,容易學習,使用方便。

[编辑] 通信單元及通信協定

PLC的通信單元主要可以區分為程式書寫通信PORT、及外部資料控制擷取PORT。

程式書寫通信PORT,我們通常只會拿來做資料書寫或者是給外部PC設備做讀取用。

外部資料控制擷取PORT,我們通常會拿來做外部資列擷取及送出資料控制用,通常再做這方面的程式編寫時,須具備通信觀念的專業人士才能夠容易上手。一般順序控制的程式設計師會比較不容易上手。在FA業界中的人機介面及圖控程式也是由此延伸出來的。

PLC通信規格可分為: RS-232RS-422RS-432RS-485IEEE 1394IEEE-488(GPIB),其中RS-432最為少見。 其資料格式長度大部份為10筆或11筆,相關格式請參閱各設備說明,因為各設備皆為不同所以在此無法說明很詳細。 目前國際中最常用的通信協定為MODBUS-ASII模式及MODBUS-RTU模式,此為MODCON公司所制定的通訊協定PROFIBUS則為西門子公司所制定。日本三菱公司則自家推出CC-LINK通信規格。

[编辑] PLC未來展望

[编辑] 關於PLC工程師的訓練

對於企業來講,不管使用任何開發環境,最注重的不外乎成本、效率。在軟體開發上,要求的重點便在於工程師可以在最短的時間開發出程式,程式具有可重用性,以及新人的訓練成本可以降到最低。

如果你是一個機台設備的電控開發廠商,當然希望找來的新進員工最好對 PLC 有一定程度認知,最好不要訓練就可以開始進入程式寫作。但以現在台灣的教育環境,技職體系已經逐漸放棄實習,相關科系最多只教一些基本設定,普通大學不管是電機、機械、資工等控制相關系所更是三不管地帶,學校完全沒有教學。在這種情況下,如果使用傳統階梯圖來訓練新PLC 程式工程師,還需要解釋一些工業電子才能開始入門。坊間"電機補習班"大都以考照為目標,缺乏整體教育訓練。

因此真正有心成為自動控制方面的工程師,唯有參加職業訓練局的機電整合班等相關訓練,目前,職訓局的機電整合班的教學,強調實務技術的能力;實習的課目盡量接近實際場合,從一個系統抽出一個部分:由感測、控制、 驅動、及機構等組件的實習中,使同學能認識機電整合的概念,同學在學習了機械、電子、電機、電腦方面的技能後,應用於實習課目上,培養學員創造的能力。而且目機電整合班有產生合作關係廠商,各行各業均有,產業別如:各行業設備生產製造及研發公司、環境監控公司、生技科技製造研發公司等

對於初學者應首當學習階梯圖,對於簡單的控制,如簡單的開關直接驅動燈號顯示,打開電源開關等,應該是最容易表達,最快可以完成的程式寫法。但對於不在硬體支援列表的控制元件,程式設計者很難用階梯圖去開發函數庫。對於不是單一製程的機器,能彈性加工不同產品的設備,可能需要依照使用者設定的配方去跑,或者需要簡單的排程處理一些產品的優先加工順序,或是需要一些數學函示運算,這些要求對階梯圖的方式都有表示上的困難。且當程式大到一定程度,階梯圖的程式就遠不如結構化的高階語言能夠很快的看懂,不管是開發或者後續的程式維護,對於公司都是很大的挑戰。因此現在出現一種新型稱為OpenPLC 的語法來彌補這項缺失。

技術文件取得

對於一個程式設計工程師,在選擇使用各家不同的開發環境工具的熟悉程度和操作是否人性化都是選擇重點。但是當你面對全新機台的開發,某些領域是過去未曾接觸過的,這時候技術文件是否可以很容易取得, PLC 原廠的支援,便成為這個開發案的成敗關鍵。各家 PLC 廠商在一般的程式語法上大都有提供說明文件,或者從官方網站登錄後皆可下載相關技術文件,如有困難也可像供應商請求技術支援。

電控設備廠的的工程師常面臨的共有8大問題:

1.交期延誤、2.設計者獨立作業、3.設計者異動,造成大衝擊、4.試車拖延、5.程式缺設計手法、6.程式缺模擬驗證、7.文件資料不全、8.不易傳承等。

其中第二∼八項只須提升電控能力即可改善,因此台灣設備廠商最大的風險就是電控能力不足,而改善電控能力,則可解決80%的設備廠商問題。為加強電控設計手法,奇美力推「CMO設計手法」,而其友達及工研院也同樣推出「MSD設計法」,兩者都是採取模組化設計,以PC常用的標準流程圖方式規劃PLC程式,讓經驗快速累積、技術加以傳承,據奇美表示,引進CMO設計手法,設備廠商可節省5年摸索時間。

[编辑] OpenPLC

PLC 在台灣大部分為 Mitsubishi PLC或 OMRON PLC的市場,因為她們在台灣的 PLC市占率實在是太大了,但在歐美可就不一定了。

在歐洲,大部分的 PLC 廠商所提供的開發工具都支援 IEC 61131-3,在歐洲的 Mitsubishi也都有提供 IEC 版本的 GX IEC Developer以滿足市場需求。

IEC61131是一個國際標準,它規範了 PLC 相關之軟體硬體的標準,其最終的目的是可以讓PLC的使用者在不改軟體設計的狀況下可以輕易更換PLC硬體。

目前這個標準主要是由 [PLCopen|www.plcopen.org]在推廣。

IEC 61131-3是其中開發軟體介面的標準,它主要是提供了五大程式介面,包含:

1. Instruction List, IL (文字) 類似組合語言的描述文字。

2. Structured Text, ST (文字) 類似 PASCAL 的語法,適合撰寫較複雜的演算法,除錯上也比階梯圖要容易得多。

3. Ladder Diagram, LD (圖形) 傳統階梯圖,讓熟悉階梯圖的使用者也能使用 IEC 61131-3,不會因為換了 IEC 61131-3 就需要重新學習。

4. Function Block Diagram, FBD (圖形) 以畫電路圖的方式來寫 PLC 程式。這在 Mitsubishi PLC 或 OMRON PLC 都需要另外購買才有提供的功能 或是有硬體支援/相容性的問題, 但在 IEC 61131-3 它是內建的程式介面。


5. Sequential Function Chart, SFC (圖形) 以畫流程圖的方式來寫 PLC 程式,這也是最好的一點, 因為大部分的 PLC 都是按一定的順序在運作,利 用 SFC 可以一步一步寫好,最後再串連測試。 �

[source from: www.plcopen.org]

OpenPLC特性

● IEC61131-3 可以使程式碼重用性提高 符合 IEC 61131-3 的開發環境會把程式區分為許多 POU (Programming Organization Unit),如函式(Function)、功能區塊 (Function Block)、程式(Program)等。

每個 POU 可以再分兩個部分

● Common Elemonts 此部分主要是定義程式內所使用到的變數,這些變數可以 對應到實體,也可以是內部變數。

● Programming Languages 此部分主要是程式內容,也就是上述的 5 種程式語法的任一種。在程式內可以叫用其他的 POU。 因為變數宣告部分與程式內容是分開的,所以可以在寫好程式後,在對應到實體時,才把變數所對應的實體IO點給定,而不必修改程式。這使得硬體變更時,程式不必修改就可以使用。對於在開發另外的新機台時,舊有 POU 的重用機會提高,在使用時,也只需要定義實體IO點,不會因硬體變更,修改程式而改出新的BUG。如此,軟體公司可以把常用的功能寫成 POU,日後變成自己的函式庫寫 PLC 就更容易了,或是專門開發 POU 的函式庫作為產品也是可以的,因為組譯過的 POU 就像我們買一般電腦語言的函式庫一樣,是看不到原始碼的。

OpenPLC是依照 IEC61131-3 標準來開發 PLC 系統,相對應的技術文件都可查詢得到[1] ,關於硬體間的相關介面的技術文件,相關的文件手冊都在網路上公開,任何人都可以下載,因為是開放標準,如果廠商封鎖特定的技術文件,使用者在得不到協助的狀況下,仍可以很輕易的選擇轉換到其他公司產品。

OpenPLC程式開發者可以利用高速工業網路,直接將所有的 IO 狀態對應到 Notebook上,直接在自己的工作電腦執行所有的 PLC 程式,在線上直接觀察程式執行狀況,變數變化,或設立中斷點單步除錯,或者使用其提供的工具,畫出 IO 點執行的時序圖。

而這些動作在個人電腦與實際硬體並無差別,但提供程式設計者更快速找出程式問題,縮短開發時間。對硬體的改變也只有搬一台電腦,拆裝工業網路連線。如果機構還沒完成, 由內附的TwinCAT 本身也提供模擬環境,直接以圖示、動畫的方式連結到對應實體的 IO 點,讓程式執行結果,以模擬動畫方式,讓開發者在沒有實際硬體的情況下,可以同步開發程式,並模擬執行結果,讓整個計畫的設計工作,可以軟硬體同步執行,有效縮短開發時間。

OpenPLC 陣營,只要周邊硬體有公開的通訊協定,軟體工程師便可以使用 Structured Text (ST) 打造自己的專屬函數庫,減少控制硬體互相綁規格的情況。

如果每一項硬體在使用前都事先自己打造專屬函數庫,對開發商來講也是一項很大的成本開銷。

除了 PLC 硬體供應商也不斷的增加支援的硬體來吸引設備開發商使用,電控供應廠商也開始使用標準的工業網路來做為硬體通訊介面,例如目前在高速工業網路介面 CanOpen 針對常用的裝置,如馬達便定義在Profile 402,將使用者會用到的功能、參數定義成標準通訊介面,讓系統間只要插上通訊線,便可開始交換資料,讓使用者有使用開放系統不會被硬體綁死的限制,也有封閉系統只要插上,就能開始通訊的便利。

[编辑] PLC的應用實例

PLC以CPU執行順序控制,它具有記憶體可進行儲存各輸入,輸出點狀態,使用者可進行編寫的邏輯控制程式,PLC本身功能即包含傳統的繼電器、計數器、計時器等硬體元件相同的功能,且體積小、重量輕、功耗低,不僅可縮小控制系統空間,配線容易,維修方便。其程式撰寫方法簡單,容易掌握,可經由更改控制程式修改原本執行工作的動作,具備模組化架構及彈性化工作能力。

由於具有使用容易,節省配線人力,設計彈性等優點,已廣泛的應用於各種控制系統中,在工廠自動化、監視控制中擔任核心控制任務。

目前市面上之PLC種類繁多,依照製造廠商及適用場所的不同而有所差異,但是每種廠牌可依機組複雜度分為大、中、小型;而一般工廠及學校通常使用小型PLC,在 工業用途通常使用大型PLC 應用如:

  • 半導體晶圓廠的各種自動化設備的控制
  • 大樓電梯
  • 停車場機械設備
  • 自動化生產線

[编辑] 參考文獻

  • 雙象貿易編譯。1994。三菱可程式控制器FX2 使用範例大全。文笙書局。台北。
  • 永宏電機編著。2000。永宏可程式控制使用手冊I-硬體篇與基礎篇。永宏電機。台北。
  • 永宏電機編著。2000。永宏可程式控制器使用手冊II-進階篇。永宏電機。台北。
  • 吳炳煌、黃仁清編著。1998。FX2 可程式控制原理與實習。高立圖書。台北。
  • 廖文煇編著。2001。可程式控制器應用基礎篇。全華科技圖書。
  • 李新濤著。2001。可程式控制器設計與應用。滄海書局。
  • 陳煥榮編著。1999。可程式控制器與實習。全華科技圖書。
  • 彭錦銅編著。2001。可程式控制實習。台科大。
  • 視動自動化科技股份有限公司 。 ViewMove Technologies, Inc. 視動科技
  • 國立台灣大學生物產業機電工程學系編印。《農業自動化叢書第十二輯 機電整合》