廣州西門子PLC代理商
廣州西門子PLC代理商
軟起動控制器中PROFIBUS-DP通訊接口的硬件設(shè)計
??在軟起動控制器的PROFIBUS-DP硬件接口電路設(shè)計方案上,采用單片機(jī)+ 集成芯片SPC3 + RS485驅(qū)動的方案。
??2.1 SPC3簡述
??SPC3(SIEMENS PROFIBUS CONTROLLER)為的智能PROFIBUS-DP從站,集成有PROFIBUS-DP物理層的數(shù)據(jù)收發(fā)功能,可處理PROFIBUS-DP協(xié)議。SPC3的內(nèi)部有RAM、寄存器、狀態(tài)寄存器、中斷寄存器以及各種緩沖器指針和緩沖區(qū)等。SPC3有8根數(shù)據(jù)線和11根地址線,其中8根數(shù)據(jù)線與地址線復(fù)用,可以接80C32、80C166、80C196、HC196等單片機(jī)。SPC3內(nèi)部集成了1.5KB的雙口RAM作為SPC3與/程序的接口,能自動9.6K到12M波特率。
??2.2 PROFIBUS-DP通信接口硬件設(shè)計
??PIC16F877與PROFIBUS-DP網(wǎng)絡(luò)的連接通過一個PROFIBUS-DP網(wǎng)絡(luò)的協(xié)議芯片SPC3和RS-485驅(qū)動電路組成。PROFIBUS-DP接口主要由處理器接口和串行總線接口組成。
??處理器接口電路如圖1示:80C32通過P0口和P2口擴(kuò)展外部存儲器,將SPC3內(nèi)部的雙口RAM作為自己的外部RAM,通過對雙口RAM的讀寫來完成對SPC3的初始化和有關(guān)數(shù)據(jù)的交換。圖中P1是指用雙PIC16F877設(shè)計的軟起動控制器,作為通訊的從站,PIC16F877集成了SPI接口,可以和協(xié)議芯片SPC3結(jié)合,以及MAX485ESA完成到PROFIBUS-DP總線網(wǎng)絡(luò)上的連接。
??圖1 處理器接口電路
??圖2串行總線接口電路
??SPC3芯片通過請求發(fā)送(RTS),發(fā)送數(shù)據(jù)(TXD),接收數(shù)據(jù)(RXD),通過高速光耦HCPL7720和總線收發(fā)器ADM1485相連,構(gòu)成串行總線接口。如圖2所示,盡管SPC3已經(jīng)集成了物理層的數(shù)據(jù)傳輸功能,但它不具備RS-485的驅(qū)動接口,因此添置了RS-485的驅(qū)動電路。目前能12M波特率的驅(qū)動器芯片為數(shù)不多,有SN65ALS176,SN75ALS176,ADM1485等,本中選用的是ADM1485。另外為了避免總線上的對電路的影響,在SPC3與RS-485總線驅(qū)動電路之間采用光電隔離。TXD、RXD的隔離器件選用Hewlett Packar公司的12M高速光耦HCPL7720,RTS的隔離器件選用HCPL0601。
??3 通訊接口的設(shè)計
??PROFIBUS-DP的ASIC芯片SPC3集成了PROFIBUS-DP協(xié)議,能夠處理PROFIBUS-DP狀態(tài)機(jī)構(gòu),因此80C32不用參與處理PROFIBUS-DP狀態(tài)機(jī)。80C32的主要任務(wù)是對SPC3進(jìn)行合理的配置、初始化及對各種報文的處理。
??對SPC3的操作主要包括兩個部分:SPC3的初始化和SPC3的中斷處理。主程序和中斷程序流程圖分別如圖3和圖4所示。
??圖 3 主程序流程圖 圖4中斷程序流程圖
??SPC3的初始化程序應(yīng)主程序的前面,而中斷處理程序完成CPU對SPC3中斷輸出的響應(yīng)。 SPC3上電復(fù)位之后.在正常工作之前必須進(jìn)行初始化,以配置各個寄存器。中斷處理程序用于處理SPC3發(fā)生的各種事件,這些事件包括新的參數(shù)報文事件:全局控制命令報文事件,進(jìn)入或退出數(shù)據(jù)交換狀態(tài)事件,新的配置報文事件,新的地址設(shè)置報文事件,監(jiān)測到波特率事件和看門狗溢出事件。SPC3在接收到由PROFIBUS主站傳送的不同輸出數(shù)據(jù)時會產(chǎn)生輸出標(biāo)志位,CPU通過在應(yīng)用循環(huán)中輪詢標(biāo)志位來進(jìn)行接收主站數(shù)據(jù)。對于特定應(yīng)用的診斷信息需要實時傳遞到主站。主應(yīng)用程序在應(yīng)用循環(huán)中判斷是否有可用的診斷BUF存在一當(dāng)有空閑BUF時應(yīng)用程序輸入診斷信息,并請求更新。對于實時性要求嚴(yán)格的,應(yīng)采用中斷進(jìn)行輸出數(shù)據(jù)和診斷數(shù)據(jù)處理。
PLC開關(guān)量和模擬量如何轉(zhuǎn)換
PLC開關(guān)量、模擬量轉(zhuǎn)換,首先要明了三層含義:設(shè)備信號層、PLC軟件應(yīng)用層、PLC內(nèi)部處理層。
設(shè)備層:開關(guān)量是通斷信號,模擬量是線性電壓信號或線性電流信號。
PLC軟件應(yīng)用層:開關(guān)量是0、1開關(guān)節(jié)點以二進(jìn)制形式存放在PLC內(nèi)部寄存器中,模擬量是工程量(如255、32767、65535)以16進(jìn)制形存放在PLC用戶寄存器中。
內(nèi)部處理層:全部都是從寄存器中調(diào)出采取二進(jìn)制運算。
開關(guān)量模擬量轉(zhuǎn)換在PLC軟件應(yīng)用層只要利用相關(guān)指令(如三菱K1M0等)將開關(guān)量二進(jìn)制轉(zhuǎn)換成16進(jìn)制存放在PLC用戶寄存器就可以。
開關(guān)量和模擬量的轉(zhuǎn)換一般都經(jīng)過保持以及數(shù)字化的,比如開關(guān)量,有干擾吧,要排除這種干擾,可以軟件排除干擾,比如隔幾毫秒讀取一次開關(guān)狀態(tài),兩次都讀到才認(rèn)為開關(guān)關(guān)閉了,不然認(rèn)為是干擾,當(dāng)然干擾也可以用硬件排除干擾,如果施密特觸發(fā)器等。
對于模擬量,也是經(jīng)過量化的,比如0809AD轉(zhuǎn)換,對于轉(zhuǎn)換方法,在這里也說不清楚,可以查詢芯片資料,0809芯片有控制轉(zhuǎn)換引腳,使能引腳,轉(zhuǎn)換地址等控制引腳,用8051單片機(jī)可以控制其轉(zhuǎn)換,當(dāng)然,還有高級的單片機(jī),如MSP430,AVR等單片機(jī),更好的轉(zhuǎn)換芯片,如DSP的STM32系列芯片,是專門的數(shù)模轉(zhuǎn)換芯片。轉(zhuǎn)換的原理是根據(jù)轉(zhuǎn)換芯片的精度劃分轉(zhuǎn)換量,如,轉(zhuǎn)換芯片的位數(shù)為8位,再假定轉(zhuǎn)換的模擬量為5伏電壓,那么還可以把5伏分為256(因為8位芯片只能是2的8次方)等分,這樣就可以算出它的數(shù)字量了,反之亦然。
常見的模擬量信號有電壓和電流信號,有輸入信號對設(shè)備進(jìn)行控制的,比如變頻器的調(diào)速、氣壓比例閥等,輸出信號多見與各種傳感器和其他輸出設(shè)備。它們之間的轉(zhuǎn)換關(guān)系需要參考AD、DA模塊與設(shè)備量程來確定。
AD模塊
在模塊端10v模擬量對應(yīng)4000數(shù)字量,按照此關(guān)系完成轉(zhuǎn)換。在設(shè)施端例如位置傳感器距離與模擬量電壓信號之間的關(guān)系是:200mm量程對應(yīng)10v模擬量輸出,那里在PLC程序要得到準(zhǔn)確的位置,位置與數(shù)字量之間的關(guān)系就是1mm=20數(shù)字量或者1數(shù)字量=0.05mm,加入我們檢測了2000的數(shù)字量,經(jīng)過換算就知道位置是100mm。
至于開關(guān)量與模擬量之間的轉(zhuǎn)換關(guān)系,應(yīng)該說是模擬量怎么控制開關(guān)量,比如說電機(jī)轉(zhuǎn)速超過某值就要關(guān)掉電機(jī)、溫度大于多少就要終止加熱或小于多少要加熱,此刻我們經(jīng)過AD模塊監(jiān)控這些數(shù)據(jù),在PLC中進(jìn)行比較,根據(jù)比較結(jié)果來輸出相應(yīng)的開關(guān)動作。
4步教你輕松調(diào)試PLC控制系統(tǒng)
PLC控制系統(tǒng)
調(diào)試工作是檢查PLC控制系統(tǒng)能否滿足控制要求的關(guān)鍵工作,是對系統(tǒng)性能的一次客觀、綜合的評價。系統(tǒng)投用前必須經(jīng)過全系統(tǒng)功能的嚴(yán)格調(diào)試,直到滿足要求并經(jīng)有關(guān)用戶代表、監(jiān)理和設(shè)計等簽字確認(rèn)后才能交付使用。調(diào)試人員應(yīng)受過系統(tǒng)的專門培訓(xùn),對控制系統(tǒng)的構(gòu)成、硬件和軟件的使用和操作都比較熟悉。
調(diào)試人員在調(diào)試時發(fā)現(xiàn)的問題,都應(yīng)及時聯(lián)系有關(guān)設(shè)計人員,在設(shè)計人員同意后方可進(jìn)行修改,修改需做詳細(xì)的記錄,修改后的軟件要進(jìn)行備份。并對調(diào)試修改部分做好文檔的整理和歸檔。調(diào)試內(nèi)容主要包括輸入輸出功能、控制邏輯功能、通信功能、處理器性能測試等。
一、輸入輸出回路調(diào)試
(1)模擬量輸入(AI)回路調(diào)試。要仔細(xì)核對I0模塊的地址分配;檢查回路供電方式(內(nèi)供電或外供電)是否與現(xiàn)場儀表相*;用信號發(fā)生器在現(xiàn)場端對每個通道加入信號,通常取0、50%或*三點進(jìn)行檢查。對有報警、聯(lián)鎖值的AI回路,還要在報警聯(lián)鎖值(如高報、低報和聯(lián)鎖點以及精度)進(jìn)行檢查,確認(rèn)有關(guān)報警、聯(lián)鎖狀態(tài)的正確性。
(2)模擬量輸出(AO)回路調(diào)試。可根據(jù)回路控制的要求,用手動輸出(即直接在控制系統(tǒng)中設(shè)定)的辦法檢查執(zhí)行機(jī)構(gòu)(如閥門開度等),通常也取0、50%或*三點進(jìn)行檢查;同時通過閉環(huán)控制,檢查輸出是否滿足有關(guān)要求。對有報警、聯(lián)鎖值的AO回路,還要在報警聯(lián)鎖值(如高報、低報和聯(lián)鎖點以及精度)進(jìn)行檢查,確認(rèn)有關(guān)報警、聯(lián)鎖狀態(tài)的正確性。
(3)開關(guān)量輸入(DI)回路調(diào)試。在相應(yīng)的現(xiàn)場端短接或斷開,檢查開關(guān)量輸入模塊對應(yīng)通道地址的發(fā)光二極管的變化,同時檢查通道的通、斷變化。
(4)開關(guān)量輸出(DO)回路調(diào)試??赏ㄟ^PLC系統(tǒng)提供的強(qiáng)制功能對輸出點進(jìn)行檢查。通過強(qiáng)制,檢查開關(guān)量輸出模塊對應(yīng)通道地址的發(fā)光二極管的變化,同時檢查通道的通、斷變化。
二、回路調(diào)試注意事項
(1)對開關(guān)量輸入輸出回路,要注意保持狀態(tài)的*性原則,通常采用正邏輯原則,即當(dāng)輸入輸出帶電時,為“ON"狀態(tài),數(shù)據(jù)值為“1";反之,當(dāng)輸入輸出失電時,為“OFF"狀態(tài),數(shù)據(jù)值為“0"。這樣,便于理解和維護(hù)。
(2)對負(fù)載大的開關(guān)量輸入輸出模塊應(yīng)通過繼電器與現(xiàn)場隔離,即現(xiàn)場接點盡量不要直接與輸入輸出模塊連接。
(3)使用PLC提供的強(qiáng)制功能時,要注意在測試完畢后,應(yīng)還原狀態(tài);在同一時間內(nèi),不應(yīng)對過多的點進(jìn)行強(qiáng)制操作,以免損壞模塊。
三、控制邏輯功能調(diào)試
控制邏輯功能調(diào)試,需會同設(shè)計、工藝代表和項目管理人員共同完成。要應(yīng)用處理器的測試功能設(shè)定輸入條件,根據(jù)處理器邏輯檢查輸出狀態(tài)的變化是否正確,以確認(rèn)系統(tǒng)的控制邏輯功能。對所有的聯(lián)鎖回路,應(yīng)模擬聯(lián)鎖的工藝條件,仔細(xì)檢查聯(lián)鎖動作的正確性,并做好調(diào)試記錄和會簽確認(rèn)。
檢查工作是對設(shè)計控制程序軟件進(jìn)行驗收的過程,是調(diào)試過程中復(fù)雜、技術(shù)要求、難度大的一項工作。特別在有技術(shù)應(yīng)用、軟件等情況下,更加要仔細(xì)檢查其控制的正確性,應(yīng)留有一定的操作裕度,同時保證工藝操作的正常運作以及系統(tǒng)的安全性、可靠性和靈活性。
四、處理器性能測試
處理器性能測試要按照系統(tǒng)說明書的要求進(jìn)行,確保系統(tǒng)具有說明書描述的功能且穩(wěn)定可靠,包括系統(tǒng)通信、備用電池和其他特殊模塊的檢查。對有冗余配置的系統(tǒng)必須進(jìn)行冗余測試。即對冗余設(shè)計的部分進(jìn)行全面的檢查,包括電源冗余、處理器冗余、I0冗余和通信冗余等。
(1)電源冗余
切斷其中一路電源,系統(tǒng)應(yīng)能繼續(xù)正常運行,系統(tǒng)無擾動;被斷電的電源加電后能恢復(fù)正常。
(2)處理器冗余
切斷主處理器電源或切換主處理器的運行開關(guān),熱備處理器應(yīng)能自動成為主處理器,系統(tǒng)運行正常,輸出無擾動;被斷電的處理器加電后能恢復(fù)正常并處于備用狀態(tài)。
(3)I0冗余
選擇互為冗余、地址對應(yīng)的輸入和輸出點,輸入模塊施加相同的輸入信號,輸出模塊連接狀態(tài)指示儀表。分別通斷(或熱插拔,如果允許)冗余輸入模塊和輸出模塊,檢查其狀態(tài)是否能保持不變。
(4)通信冗余
可通過切斷其中一個通信模塊的電源或斷開一條網(wǎng)絡(luò),檢查系統(tǒng)能否正常通信和運行;復(fù)位后,相應(yīng)的模塊狀態(tài)應(yīng)自動恢復(fù)正常。
冗余測試,要根據(jù)設(shè)計要求,對一切有冗余設(shè)計的模塊都進(jìn)行冗余檢查。此外,對系統(tǒng)功能的檢查包括系統(tǒng)自檢、文件查找、文件編譯和下裝、維護(hù)信息、備份等功能。對較為復(fù)雜的PLC系統(tǒng),系統(tǒng)功能檢查還包括邏輯圖組態(tài)、回路組態(tài)和特殊I0功能等內(nèi)容。
PLC中的開關(guān)量、模擬量指的是什么
開關(guān)量和模擬量是大家學(xué)習(xí)PLC初期使用多的兩種輸入輸出方式。什么是開關(guān)量?什么是模擬量?這個問題有必要弄清楚。
圖1是一個典型能輸出開關(guān)量信號的器材。壓力高時C和B兩個觸點閉合接通,輸出壓力高信號,壓力低時C和A兩個觸點閉合接通輸出壓力低信號。有了這樣的信號就完成把就地的壓力信號,遠(yuǎn)傳到遠(yuǎn)處的電氣控制柜去參加主動遠(yuǎn)程控制了,其間C和B是一個開關(guān)量,C和A也是一個開關(guān)量。所以一個開關(guān)觸點就是一個開關(guān)量,它的特性是同一時間要么接通要么斷開。接通就是1,代表有有信號,斷開就是0,代表沒有信號。這就是所謂的開關(guān)量信號。
壓力表雖然能把壓力信號傳到遠(yuǎn)處,但它傳輸?shù)闹皇怯袩o壓力這樣的信號,無法知道實時壓力值究竟是多少。
PLC
圖2中的器材叫壓力變送器。壓力變送器的內(nèi)部就是一塊電路板,電路板連接著一個壓力傳感器F。它的作業(yè)原理是壓力傳感器F把檢測到的壓力傳到電路板的C,檢測信號進(jìn)入電路板后,經(jīng)過電路板的轉(zhuǎn)化與核算,把這個壓力信號轉(zhuǎn)化成一個電流信號由A和B這兩個點輸出。圖中右邊就是轉(zhuǎn)化進(jìn)程的示意圖,它能夠把一個0-10kpa的壓力信號轉(zhuǎn)化成一個4-20mA的電流信號,由A和B這兩個點輸出。這時咱們就說A和B這兩個點輸出的就是一個模擬量信號。模擬量信號的特點是它的值是在一個數(shù)值范圍內(nèi)是連續(xù)可變的。
下面看一下模擬量信號是如何進(jìn)行遠(yuǎn)距傳輸?shù)摹?br data-filtered="filtered"/>咱們管道上安裝一塊量程為0-10kpa的壓力變送器,電源正極接壓力變送器的B點,負(fù)極串聯(lián)一塊萬用表到壓力變送器的A點,并將萬用表打到電流檔。當(dāng)壓力變送器C點的壓力是5kpa時,萬用表的的電流讀數(shù)是12mA。正好是4-20mA的電流信號的中間值,而5kpa也正好是0-10kpa壓力值的中間值。當(dāng)壓力變送器C點的壓力是10kpa時,萬用表的的電流讀數(shù)正好是20mA。這樣0-10kpa壓力值就對應(yīng)了4-20mA的電流信號值,咱們只要在遠(yuǎn)方經(jīng)過一個接受設(shè)備把這個4-20mA的電流信號值提取出來,再經(jīng)過一定的核算,就能知道就地的壓力值是多少了。
為什么要把壓力信號轉(zhuǎn)化成4-20mA的電流信號,而不是0-20mA的電流信號或0-10V的電壓信號?
1.0-10V的電壓信號簡單遭到外界的電磁攪擾,特別是電纜長度很長時攪擾更顯著。
2.用0-20mA的電流信號的話,就無法判別在電流信號是0mA時,究竟是電纜斷線引起的毛病0mA,還是壓力本身就是0kpa而輸出的正常的0mA。
圖4是使用西門子S7-200 PLC讀取壓力變送器壓力值的接線圖例,這是一種基本的使用方法,左面是開關(guān)量的,右邊是模擬量的,不同的信號類型要接到PLC不同輸入端