PLC與PLD對于大多數控制行業的朋友們與單片機愛好者,都不是陌生的名詞??墒悄私馑鼈兊摹耙蛔种睢眴??如果您對此感興趣,就請看看小編今天介紹的內容。
1.可編程控制器(PLC)是計算機家族中的一員,是為工業控制應用而設計制造的。早期的可編程控制器稱作可編程邏輯控制器,簡稱PLC,它主要用來代替繼電器實現邏輯控制。隨著技術的發展,這種裝置的功能已經大大超過了邏輯控制的范圍,因此,今天這種裝置稱作可編程控制器,簡稱PC。但是為了避免與個人計算機的簡稱混淆,所以將可編程控制器簡稱PLC(Programmable Logic Controller)。
某型號PLC的內部電路
PLC的主要特點
高可靠性、豐富的I/O接口模塊、采用模塊化結構、編程簡單易學、安裝簡單,維修方便
PLC的功能
邏輯控制、定時控制、計數控制、步進(順序)控制
PID控制
數據控制:PLC具有數據處理能力。
通信和聯網
其它:PLC還有許多特殊功能模塊,適用于各種特殊控制的要求,如:定位控制模塊,CRT模塊。
某型號PLC控制柜
2.PLD是可編程邏輯器件(ProgramableLogicDevice)的簡稱,FPGA是現場可編程門陣列(FieldProgramableGateArray)的簡稱,兩者的功能基本相同,只是實現原理略有不同,所以我們有時可以忽略這兩者的區別,統稱為可編程邏輯器件或PLD/FPGA。
PLD是電子設計領域中最具活力和發展前途的一項技術,它的影響絲毫不亞于70年代單片機的發明和使用。PLD能做什么呢?可以毫不夸張的講,PLD能完成任何數字器件的功能,上至高性能CPU,下至簡單的74電路,都可以用PLD來實現。
PLD如同一張白紙或是一堆積木,工程師可以通過傳統的原理圖輸入法,或是硬件描述語言自由的設計一個數字系統。通過軟件仿真,我們可以事先驗證設計的正確性。在PCB完成以后,還可以利用PLD的在線修改能力,隨時修改設計而不必改動硬件電路。使用PLD來開發數字電路,可以大大縮短設計時間,減少PCB面積,提高系統的可靠性。
某型號的PLD內部電路
典型的PLD由一個“與”門和一個“或”門陣列組成,而任意一個組合邏輯都可以用“與一或”表達式來描述,所以,PLD能以乘積和的形式完成大量的組合邏輯功能.這一階段的產品主要有PAL(可編程陣列邏輯)和GAL(通用陣列邏輯)。
對于可編程邏輯器件,設計人員可利用價格低廉的軟件工具快速開發、仿真和測試其設計。然后,可快速將設計編程到器件中,并立即在實際運行的電路中對設計進行測試。原型中使用的PLD器件與正式生產最終設備(如網絡路由器、DSL調制解調器、DVD播放器、或汽車導航系統)時所使用的PLD完全相同。這樣就沒有了NRE成本,最終的設計也比采用定制固定邏輯器件時完成得更快。
采用PLD的另一個關鍵優點是在設計階段中客戶可根據需要修改電路,直到對設計工作感到滿意為止。這是因為PLD基于可重寫的存儲器技術--要改變設計,只需要簡單地對器件進行重新編程。一旦設計完成,客戶可立即投入生產,只需要利用最終軟件設計文件簡單地編程所需要數量的PLD就可以了。
某型號PLD外觀
下面以FPGA為例進行介紹PLD的編程原理。
編程數據存儲單元以陣列形式分布在FPGA中,編程數據存儲單元陣列結構如圖1所示。存儲單元為5管SRAM結構, 只有一根位線。其中T管為本單元控制門,由字線控制。數據以串行方式移入移位寄存器,而地址移位寄存器順序選中存儲單元的一根字線,當某列字線為高電平時, 該列存儲單元的T管導通,從而與位線接通,在寫信號控制下將數據移位寄存器中一個字的數據通過各列位線寫入該列存儲單元。
編程數據按照一定的數據結構形式組成數據流裝入FPGA中,編程數據流由開發軟件自動生成。開發軟件將設計轉化成網表文件,它自動對邏輯電路分區、布局和布線和校驗FPGA的設計,然后按PROM格式產生編程數據流并形成編程數據文件,最后還可將編程數據文件存入PROM中。
圖1 編程數據存儲單元陣列結構
現在一般把所有超過某一集成度(如1000門以上)的PLD器件都稱為CPLD。CPLD由可編程邏輯的功能塊圍繞一個可編程互連矩陣構成。由固定長度的金屬線實現邏輯單元之間的互連,并增加了I/O控制模塊的數量和功能??梢园袰PLD的基本結構看成由可編程邏輯陣列(LAB)、可編程I/O控制模塊和可編程內部連線(PIA)等三部分組成。
MAX7123的結構
1).可編程邏輯陣列(LAB)可編程邏輯陣列又若干個可編程邏輯宏單元(Logic Macro Cell,LMC)組成, LMC內部主要包括與陣列、或陣列、可編程觸發器和多路選擇器等電路,能獨立地配置為時序或組合工作方式。
與或陣列結構圖
CPLD中與、或門的表示方法
(1)乘積項共享結構在CPLD的宏單元中,如果輸出表達式的與項較多,對應的或門輸入端不夠用時,可以借助可編程開關將同一單元(或其他單元)中的其他或門與之聯合起來使用,或者在每個宏單元中提供未使用的乘積項給其他宏單元使用。
EPM7128E乘積項擴展和并聯擴展項的結構圖
(2)多觸發器結構早期可編程器件的每個輸出宏單元(OLMC)只有一個觸發器,而CPLD的宏單元內通常含兩個或兩個以上的觸發器,其中只有一個觸發器與輸出端相連,其余觸發器的輸出不與輸出端相連,但可以通過相應的緩沖電路反饋到與陣列,從而與其他觸發器一起構成較復雜的時序電路。這些不與輸出端相連的內部觸發器就稱為“隱埋”觸發器。這種結構可以不增加引腳數目,而增加其內部資源。
(3)異步時鐘早期可編程器件只能實現同步時序電路,在CPLD器件中各觸發器的時鐘可以異步工作,有些器件中觸發器的時鐘還可以通過數據選擇器或時鐘網絡進行選擇。此外,OLMC內觸發器的異步清零和異步置位也可以用乘積項進行控制,因而使用更加靈活
2).可編程I/O單元(IOC)
CPLD的I/O單元(Input/Output Cell,IOC),是內部信號到I/O引腳的接口部分。根據器件和功能的不同,各種器件的結構也不相同。由于陣列型器件通常只有少數幾個專用輸入端,大部分端口均為I/O端,而且系統的輸入信號通常需要鎖存。因此I/O常作為一個獨立單元來處理.
3).可編程內部連線(PIA)
可編程內部連線的作用是在各邏輯宏單元之間以及邏輯宏單元和I/O單元之間提供互連網絡。各邏輯宏單元通過可編程連線陣列接收來自輸入端的信號,并將宏單元的信號送目的地。這種互連機制有很大的靈活性,它允許在不影響引腳分配的情況下改變內部的設計。
總結:二者最大的區別就是控制邏輯,PLC為固定邏輯器件(通過改變軟件實現功能),而PLD為可變邏輯器件(通過改變內部電路結構實現功能)。另外,PLC一般用于弱點驅動強電的場合(自動化專業的朋友們一定很了解),例如大型機床的控制、機械手的控制。而PLD主要用于仿真電路等集成電路前期設計工作,與弱點類控制。
-
plc
+關注
關注
5013文章
13331瀏覽量
464213 -
可編程控制器
+關注
關注
6文章
536瀏覽量
38881 -
PLD
+關注
關注
6文章
224瀏覽量
59435
原文標題:PLC與PLD的“一字之差”,你知道它們都有啥區別嗎?
文章出處:【微信號:gongkongworld,微信公眾號:工控資料窩】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論