使用可編程片上系統設計高效的可編程邏輯控制器
可編程邏輯控制器(PLC)是一種基于微控制器的通用的電子器件,它是用來(lái)控制機器操作或過(guò)程的。PLC和傳統的微控制器系統不同,它不是由器件廠(chǎng)商編程的,而是由機器設備制造商或最終用戶(hù)編程的。PLC的應用包括:
本文引用地址:http://dyxdggzs.com/article/121874.htm•自動(dòng)測試設備
•上料與下料設備
•機器控制
•家庭自動(dòng)化
•電梯系統
•工廠(chǎng)自動(dòng)化
根據處理輸入和輸出的數目。PLC可以分為下列幾種主要類(lèi)別:
• 極小型PLC:少于32輸入/輸出(I / O)功能的可編程邏輯控制器。
• 微型PLC:超過(guò)32輸入/輸出(I / O)點(diǎn),但是不超過(guò)128輸入/輸出(I / O)功能的可編程邏輯控制器。
• 小型PLC:超過(guò)128輸入/輸出(I / O)點(diǎn),但是不超過(guò)256輸入/輸出(I / O)功能的可編程邏輯控制器。它不包括任何根據基本系統所做得I / O改進(jìn)。
• 中型和大型PLC:控制數目比較大(> 256),使用非??焖俚妮斎?輸出(I / O)掃描頻率的可編程邏輯控制器。
根據ARC咨詢(xún)集團最近的一項調查顯示,在2007年,可編程邏輯控制器(PLC)的市場(chǎng)達到了近90億美元,預計到2012年將超過(guò)120億美元。
PLC編程
PLC使用梯形圖來(lái)編程,提供前端定制軟件,使最終用戶(hù)可以編程。這些用戶(hù)通常不是程序員,他們沒(méi)有任何C或Verilog / VHDL的編程知識。
梯形邏輯編程看起來(lái)像機電繼電器控制電路的配線(xiàn)圖一樣。我們舉一個(gè)例子,一個(gè)樓梯的照明使用了兩個(gè)控制開(kāi)關(guān)。如果任何一個(gè)開(kāi)關(guān)按下,樓梯的燈都要打開(kāi),如果任何一個(gè)開(kāi)關(guān)又按了一次,那么就應該關(guān)閉。圖1中顯示了使用了兩種開(kāi)關(guān)和一盞燈的布線(xiàn)圖控制實(shí)現 (開(kāi)關(guān)1裝在樓梯底部,開(kāi)關(guān)2安裝在樓梯上層)。
圖1中開(kāi)關(guān)1和開(kāi)關(guān)2處于關(guān)的位置。如果開(kāi)關(guān)1按下,那么上面的電路閉合將會(huì )開(kāi)燈。如果開(kāi)關(guān)2按下,將打開(kāi)上面的電路并閉合下面的電路。然而,開(kāi)關(guān)1已經(jīng)打開(kāi)下面的電路了,所以燈泡不會(huì )發(fā)光。再按下開(kāi)關(guān)1,將會(huì )閉合下面的電路,燈泡就會(huì )發(fā)光。
圖1:使用兩個(gè)開(kāi)關(guān)的樓梯燈控制布線(xiàn)圖
圖2所示為使用PLC進(jìn)行相同控制實(shí)施方案和梯形邏輯。硬件開(kāi)關(guān)接觸用--||--(通常為斷開(kāi))和--|/|--(通常為閉合)符號代替。
圖2:可編程邏輯控制器(PLC)實(shí)現樓梯燈控制梯形邏輯圖
圖3顯示了如何使用集成了PLC功能的PLD、 FPGA或片上系統(SoC)里的邏輯門(mén)實(shí)現相同的控制(非,與,或)。值得注意的是,圖3中所有的門(mén)電路都可以用或非門(mén)代替。
圖3使用“門(mén)”電路實(shí)現樓梯燈控制邏輯圖
PLC工作原理
市場(chǎng)上大多數PLC是基于微處理器電路的。這些PLC讀出所有的輸入狀態(tài)(即開(kāi)關(guān)),然后執行用戶(hù)寫(xiě)進(jìn)去的梯形邏輯程序來(lái)確定最后的輸出(例如,燈泡)。圖4顯示了創(chuàng )建一個(gè)傳統的基于PLC的控制系統的各種部件。
PLC輸入使用絕緣體進(jìn)行孤立和水平傳輸,并連接到單片機端口。PLC輸出連接到緩沖器和繼電器,連接到相同的輸出元素,如下圖所示。
Figure 4: Conventional PLC Block diagram
圖4:傳統的PLC控制框圖
The flow chart in Figure 5 shows how the PLC operates.
圖5給出了PLC 的工作流程圖。
圖5:傳統的PLC程序執行流程
傳統PLC的局限
傳統的PLC中程序順序執行大約需要10 ms或更多時(shí)間來(lái)完成。以這樣的速度,它們適用于輸入信號頻率低于100赫茲的控制應用。掃描時(shí)間也受程序長(cháng)度的限制。舉例來(lái)說(shuō),如果你想讀一個(gè)速度傳感器輸入來(lái)測量大約每分鐘1200轉的速度(1200/60 = 200赫茲的信號頻率),一個(gè)基于微控制器的 PLC使用該輸入不能正確測量速度。這種系統可能需要解碼器或計算IC自定義一個(gè)輸入模塊,方可讀出高頻信號,并把它們轉化成一個(gè)數字值并傳輸給單片機;或者,可以考慮用一個(gè)10千赫頻率的PWM來(lái)控制電磁閥流量。由于上述的限制,可編程邏輯控制器(PLC)不能直接輸出,需要一個(gè)定制的輸出模塊和PWM發(fā)生器。加入這樣的高速計數器模塊和PWM發(fā)生器模塊,那么可編程邏輯控制器(PLC)成本將增加2 ~ 3成。
有數字可編程邏輯的(例如FPGA或CPLD)可以解決頻率問(wèn)題。然而, FPGA缺乏內置模擬器件能力。例如,如果你需要用模擬溫度傳感器測量溫度,你就不能直接連到FPGA接口。此外,FPGA對于這種應用來(lái)說(shuō)太貴了。
為了滿(mǎn)足PLC低成本的需求,開(kāi)發(fā)人員需要一個(gè)這樣的設備,它可以處理高速數字輸入,高頻輸出,而且也能直接處理模擬信號。今天,有許多片上系統芯片(SoC),他們結合了完整的可編程邏輯的單片機和可配置的模擬模塊來(lái)實(shí)現這一具成本效益的方式。
例如,這些SoC可以實(shí)現基于HDL的正交解碼器的功能,使用兩個(gè)90度相移傳感器信號,通過(guò)高速讀出速度/位置傳感器信號來(lái)檢測電機的旋轉速度和方向。同樣的,PWM波形發(fā)生器可以使用片上可編程數字資源實(shí)現。通常機器控制操作所需的任何定時(shí)器和計數器模塊也可以用同樣的方式實(shí)現。這些器件(正交解碼器、PWM發(fā)生器、定時(shí)器、計數器等等)可以通過(guò)一個(gè)編程器一次編碼成可以利用的可配置庫元件。這種方法使沒(méi)有HDL經(jīng)驗的終端用戶(hù)也可以給PLC編程,使用這些器件不需要底層HDL/ C編程,并且不必學(xué)習器件的底層結構。除此之外,其他控制功能也能夠使用與、或、非門(mén)實(shí)現,這些是SoC的標準部件。
系統舉例
圖6顯示了適合PLC的SoC組件,包括CPU,可配置的模擬模塊(比較器、放大器、 DAC、ADC),以及可編程數字模塊(基于PLD)。這些組件集成到了一顆器件,開(kāi)發(fā)人員可以建立一個(gè)單芯片低成本的可編程邏輯控制器(PLC),從而可以克服標準PLC中的速度限制,同時(shí)能夠為最終用戶(hù)提供簡(jiǎn)單易用的編程方式。
圖6:SoC實(shí)現可編程邏輯控制器(PLC)應用,如賽普拉斯的PSoC,它結合了微控制器與可編程數字和模擬模塊。
基于PLD的通用數字模塊(UDB)可用于實(shí)現門(mén)邏輯,而可配置的模擬部件(如ADC,DAC,放大器,比較器)可以處理模擬信號。集成的CAN控制模塊可以用于連接網(wǎng)絡(luò )上的多個(gè)PLC,支持更多的輸入和輸出。內嵌的USB控制器可以用作PLC的編程和調試接口。
使用可編程SoC結構(如賽普拉斯的PSoC),任何內部模擬或數字信號都可以路由到任何GPIO(通用輸入/輸出)管腳。這種靈活性使可編程邏輯控制器(PLC)用戶(hù)可以使用單個(gè)PLC設計實(shí)現各類(lèi)機器控制功能。例如產(chǎn)品生產(chǎn)線(xiàn)機器" A "(10個(gè)數字輸入,2模擬輸入,7個(gè)數字輸出,1個(gè)模擬輸出)和機器“B”(12數字輸入和8數字輸出)。12數字輸入和8數字輸出的PLC可以通過(guò)固件配置,控制其中的任何機器。這是數?;旌闲盘柨删幊唐骷米鱌LC應用的最大好處。
圖7:基于PSoC的可編程邏輯控制器(PLC)框圖(綜合了繼電器板和編程器)
例如,如果一個(gè)PID速度控制回路需要使用正交調制編碼器為速度反饋建立一個(gè)直流電機控制,就可能使用相同的基于SoC的可編程邏輯控制器(PLC)子系統。這些基于PLD的通用數字模塊(UDB)使用預構建組件可以設置為正交調制解碼器,來(lái)高速讀出速度信號(> 100千赫),其他的UDB可以配置為PWM發(fā)生器,生成一個(gè)需要的脈沖寬度調制信號(例如,32千赫)來(lái)控制場(chǎng)效應管H橋,從而控制直流電機的速度和方向。把這些融合在一起,可以使用一個(gè)單獨的器件設計,那么需要給PLC編程的最終用戶(hù)就可以簡(jiǎn)單拖放這些組件,分別給他們配置參數,就可以開(kāi)始使用PLC控制電機了。
網(wǎng)絡(luò )化的可編程邏輯控制器(PLC)
為了控制有許多輸入和輸出的機器,就需要把許多PLC組合為一個(gè)單個(gè)的大型PLC。這可以通過(guò)CAN總線(xiàn)實(shí)現PLC模塊之間的接口,從而支持更多的輸入和輸出(見(jiàn)圖8)。
圖8:基于PSoC的模塊化的和可擴展的可編程邏輯控制器(PLC)網(wǎng)絡(luò )
這種架構允許開(kāi)發(fā)人員構建一個(gè)網(wǎng)路可編程邏輯控制器(PLC),能夠控制有很多輸入與輸出的更大系統。此外,許多工業(yè)控制應用使用觸摸屏作為機器控制面板。綜合觸摸屏和可配置的人機界面(HMI)能力可以進(jìn)一步鞏固成本優(yōu)勢(消除了分立和昂貴的定制觸摸屏HMI面板的成本問(wèn)題)。
簡(jiǎn)單易用的編程方式
開(kāi)發(fā)人員還可以利用半導體廠(chǎng)商為最終用戶(hù)PLC編程設計的開(kāi)發(fā)工具,而不需要建立客戶(hù)化梯形邏輯編程。例如,賽普拉斯的“PSoC Creator”編程軟件允許用戶(hù)對基于PSoC 的PLC進(jìn)行直觀(guān)的編程,在原理級(schematic-level)視窗中可以使用與、或、非門(mén)部件。結果是,用戶(hù)不需要C或VHDL/ Verilog編程知識就可以給可編程邏輯控制器(PLC)編程來(lái)實(shí)現它的全部功能。圖9所示為使用PSoC Creator實(shí)現的樓梯開(kāi)關(guān)邏輯。門(mén)級實(shí)現可以代替梯形實(shí)現,允許用戶(hù)充分利用所有的系統特色。
圖9:使用PSoC Creator的樓梯開(kāi)關(guān)實(shí)現方式
pid控制相關(guān)文章:pid控制原理
pwm相關(guān)文章:pwm是什么
pid控制器相關(guān)文章:pid控制器原理
塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理
評論