廣州西門子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不同輸入端