• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      嵌入式PLC脈沖信號門檻設(shè)定和高速計(jì)數(shù)的實(shí)現(xiàn)

      2011-07-03 06:38:16曾曉維高紅亮黎立蔡琴
      船電技術(shù) 2011年10期
      關(guān)鍵詞:梯形圖驅(qū)動(dòng)程序內(nèi)核

      曾曉維 高紅亮 黎立 蔡琴

      (1湖北師范學(xué)院機(jī)電與控制科學(xué)學(xué)院, 武漢 435002; 2湖北師范學(xué)院物理與電子科學(xué)學(xué)院,武漢435002)

      1 引言

      現(xiàn)代工業(yè)中,信號質(zhì)量關(guān)系到設(shè)備的實(shí)際應(yīng)用,作為為工業(yè)上一種常用到的控制器PLC,同樣也面臨此問題。專用的信號處理器價(jià)格過高,若僅以單片機(jī)開發(fā)而構(gòu)成的系統(tǒng)在使用和安裝過程中不方便,并且不易于維護(hù),因此,我們采用具有嵌入式操作系統(tǒng)的 PLC來開發(fā)信號處理功能。在信號檢測和抗干擾等很多實(shí)際應(yīng)用場合,通過對PLC輸入信號有效脈沖寬度設(shè)定,篩選有效信號,同時(shí)還要兼顧系統(tǒng)中對輸入信號的高速計(jì)數(shù)部分,例如在機(jī)械位置測量、機(jī)械傳動(dòng)控制等方面,要用到高速脈沖計(jì)數(shù),把兩者結(jié)合起來,使PLC功能增強(qiáng)。

      2 嵌入式PLC的介紹

      嵌入式 PLC是建立在微控制器硬件開發(fā)平臺和嵌入式操作系統(tǒng)[2]之上,通過開發(fā)內(nèi)核驅(qū)動(dòng)程序與應(yīng)用程序,將驅(qū)動(dòng)程序添加到嵌入式系統(tǒng)的內(nèi)核之中,形成嵌入式 PLC系統(tǒng)軟件的一部分。用戶輸入的PLC指令[3](或梯形圖轉(zhuǎn)換而成的指令表)所對應(yīng)的PLC應(yīng)用程序,經(jīng)過系統(tǒng)編譯程序與內(nèi)核驅(qū)動(dòng)程序的交互處理,實(shí)現(xiàn)對PLC指令表語言程序的解釋和執(zhí)行,實(shí)現(xiàn)PLC的控制功能。

      作為可二次開發(fā)的嵌入式PLC,其硬件功能十分強(qiáng)大,包括為用戶提供豐富的擴(kuò)展接口,并擁有高可靠的數(shù)據(jù)保持性,以使開發(fā)人員能靈活的應(yīng)用于實(shí)際場合。本文所設(shè)計(jì)的嵌入式PLC是建立在EASY-V1.00[2]操作系統(tǒng)平臺之上的,用到的微處理芯片為新華龍公司的C8051F020,它的基本功能包括 CANBUS網(wǎng)絡(luò)通信、用戶應(yīng)用程序嵌入、梯形圖語言處理[6]。

      嵌入式PLC系統(tǒng)原理圖如1所示,外部輸入的開關(guān)量經(jīng)過光電隔離后連接到 FPGA的 I/O口,通過FPGA地址譯碼,F(xiàn)PGA通過數(shù)據(jù)地址總線與CPU相連。這樣CPU就可以通過數(shù)據(jù)地址總線獲得和設(shè)置輸入量的工作狀態(tài)。

      圖1 嵌入式PLC硬件原理框圖

      由本思想而寫成的代碼是嵌入到EASYCORE1.00內(nèi)核中,通過KELL軟件編譯而成的二進(jìn)制文件由 DownHex下載器下載到單片機(jī)中,梯形圖的編輯、調(diào)試與監(jiān)控由FXGP-WIN-C完成[6]。

      3 輸入信號脈寬門檻設(shè)定的實(shí)現(xiàn)

      3.1 輸入信號脈寬門檻設(shè)定分析

      輸入信號進(jìn)行脈寬設(shè)定主要是為了對輸入信號進(jìn)行濾波。在工業(yè)場合,我們希望能夠捕獲有效信號的同時(shí)剔除干擾信號,從而提高系統(tǒng)的安全性。本文設(shè)計(jì)的脈寬設(shè)定可調(diào),即有效信號的脈沖信號可由用戶根據(jù)實(shí)際情況進(jìn)行調(diào)整,滿足不同場合的應(yīng)用。

      此嵌入式PLC共有八路輸入,系統(tǒng)通過門檻設(shè)定的值來確定定時(shí)器采樣信號的次數(shù),如果在這期間采集的信號相同,則把對應(yīng)這一路的信號存儲到對應(yīng)輸入寄存器RAM_PX中。

      3.2 輸入信號脈寬設(shè)定原理

      首先用定時(shí)器對輸入脈沖進(jìn)行采樣,通過采樣電平保持的時(shí)間來確定輸入脈沖信號的寬度。最后通過單片機(jī)向 RAM_PX寫有效的電平,達(dá)到脈沖計(jì)數(shù)的要求。在程序設(shè)計(jì)中,設(shè)定定時(shí)器溢出時(shí)間為50 μs,那么對于1 ms的有效脈沖理論上要采集20次,當(dāng)采集20次的電平一樣,則認(rèn)為脈沖信號有效,輸入脈沖采樣示意圖如圖 2所示。

      圖2 輸入脈沖采樣

      我們對 T4設(shè)置為自動(dòng)重裝模式,當(dāng)定時(shí)器溢出時(shí)對輸入信號進(jìn)行采樣,相鄰兩次采樣的時(shí)間間隔稱為基準(zhǔn)時(shí)間,也即是定時(shí)的時(shí)間長度,為考慮程序有充足的執(zhí)行時(shí)間和便于計(jì)算,定位50 μs,系統(tǒng)時(shí)鐘頻率為2 MHz,則T4的定時(shí)初值為 65536-50/(1/2)=65436,換成十六進(jìn)制數(shù)為FF9CH,則 RCAP4L=9CH,RCAP4H=FFH?;鶞?zhǔn)時(shí)間設(shè)定后,采集二十次則為1 ms,因此,只要設(shè)定二十一次數(shù)據(jù)完全相同(共間隔二十個(gè)基準(zhǔn)時(shí)間,前后相比相同次數(shù)為十),D5080=20,則有效信號的門檻為1 ms,其他門檻的設(shè)定依此類推。

      程序中,我們把本次采集到的數(shù)據(jù)與上次信號作比較,對于每一路信號,若不同,則相同次數(shù)CNT置零;若相同則CNT加一,直到滿二十次,就把得到相同的信號送給RAM_PX,同時(shí)相同次數(shù)CNT清零,為下次刷新RAM_PX作好準(zhǔn)備。八路數(shù)據(jù)比較完后,就把本次數(shù)據(jù)作上次數(shù)據(jù),這樣就完成了一個(gè)周期刷新RAM_PX。

      3.3 輸入有效信號的采集流程

      信號流程如圖3所示。

      3.4 主要代碼分析

      嵌入式P L C是基于新華龍公司的C8051F020芯片開發(fā)的,我們選用51匯編語言編程。編譯器選擇KELL C51,由它生成需要的.HEX文件。

      圖3 輸入有效信號采集

      4 高速脈沖A、B相計(jì)數(shù)的實(shí)現(xiàn)

      4.1 計(jì)數(shù)原理

      高速脈沖計(jì)數(shù)是利用中斷方式完成的,這里使用C8051F020芯片的PCA0中斷,根據(jù)外部信號的輸入方式,本高速脈沖計(jì)數(shù)有三種計(jì)數(shù)方式。單獨(dú)接A相脈沖,B相接高電平,此時(shí)AB邏輯信號01,為則為增計(jì)數(shù);單獨(dú)接B相,A相接高電平,AB邏輯信號為10,則為減計(jì)數(shù);若同時(shí)接A、B相,A超前B 0 ~90度時(shí)為增計(jì)數(shù),A滯后B 0~90度時(shí)為減計(jì)數(shù),A、B分別對應(yīng)于X0、X1輸入端口。計(jì)數(shù)值存放在D5085、D5086中,D5085為低十六位,D5086為高十六位。

      我們把 PCA0設(shè)置成下降沿捕捉模式,把CEX0、CEX1分別配置到X0、X1端口,單相計(jì)數(shù)占用一個(gè)外輸入端口(X0或X1),而雙相計(jì)數(shù)占用兩個(gè)端口(X0和X1)。單相計(jì)數(shù)時(shí),外部高速脈沖的下降沿觸發(fā)PCA0中斷,進(jìn)入中斷后立即讀取另一通道的電平信號,若AB信號為01,則向上計(jì)數(shù),計(jì)數(shù)值加一;若AB信號為10,則向下計(jì)數(shù),計(jì)數(shù)值減一。雙相計(jì)數(shù)時(shí),首先要判斷相位的超前與滯后,這兩路信號的下降沿均能觸發(fā)PCA0中斷,但只要判斷AB相相位差形成的特定邏輯關(guān)系,就能判斷出A超前還是滯后于B。進(jìn)入中斷后,若AB邏輯關(guān)系為01,A超前B,向上計(jì)數(shù)加一;若AB邏輯關(guān)系為10,B超前A,向下計(jì)數(shù)減一,如圖4所示。

      AB相計(jì)數(shù)功能的實(shí)現(xiàn)如圖5所示。

      4.2 AB相脈沖高速計(jì)數(shù)主要代碼分析

      設(shè)計(jì)這段程序首先需要先配置交叉開關(guān),然后再對PCA0的各模塊進(jìn)行設(shè)置,最后在PCAO中斷中設(shè)計(jì)加、減計(jì)數(shù)。

      在KELL C51中編譯嵌入程序,使用科威公司提供的專用下載工具 DownHex.exe把生成的16進(jìn)制文件通過串口URTA0下載到系統(tǒng)中,是的系統(tǒng)內(nèi)核可以調(diào)用它,從而完成了二次驅(qū)動(dòng)程序的開發(fā)[6]。

      圖4 (b)A相滯后B相

      5 結(jié)束語

      本次設(shè)計(jì)采用匯編語言編寫,程序執(zhí)行效率高。經(jīng)過測試,通過設(shè)定脈沖寬度能夠起到很好的濾波效果,門檻的分辨率為200 μs,而高速相位差計(jì)數(shù)的誤差相隔±1個(gè)脈沖?;谇度胧絇LC的對輸入信號脈寬門檻限定和高速相位差計(jì)數(shù)在工業(yè)現(xiàn)場中應(yīng)用十分廣泛,可在此基礎(chǔ)上繼續(xù)開發(fā)其他功能,不影響梯形圖語言功能和CANBUS互聯(lián)特性,事實(shí)上,只需要更多的關(guān)注硬件接口的可靠性及軟件的時(shí)效性,而將工藝交給梯形圖,有效地降低了開發(fā)難度和開發(fā)成本。

      圖5 功能四實(shí)現(xiàn)流程圖

      [1]童長飛. C8051F系列單片機(jī)開發(fā)與C語言編程[M].北京: 北京航天航空大學(xué)出版社, 2005.

      [2]龔云生. EASY -V1.00嵌入式PLC的基本原理[C].黃石科威自控有限公司, 2006.

      [3]王永華. 現(xiàn)代電氣控制及PLC應(yīng)用技術(shù)[M](第二版).北京: 北京航天航空大學(xué)出版社, 2008..

      [4]潘琢金. C8051f020/1/2/3混合信號ISP FLASH微控制器數(shù)據(jù)手冊[M]. 沈陽: 沈陽航空工業(yè)學(xué)院, 2002.

      [5]向前進(jìn), 周純潔, 龔云生. 嵌入式 PLC的高速脈沖計(jì)數(shù)開發(fā)[J]. 計(jì)算技術(shù)與自動(dòng)化, 2006,25(4):47-50.

      [6]嵌入式PLC原理與應(yīng)用[S]. 黃石科威自控有限公司,2004.

      [7]楊惠靈. 嵌入式數(shù)控系統(tǒng)中 PLC模塊的開發(fā)[J]. 機(jī)電技術(shù), 2009(2):1-3.

      [8]柴瑞娟, 陳海霞. 西門子 PLC編程技術(shù)及工程應(yīng)用[M]. 北京: 機(jī)械工業(yè)出版社, 2006.

      猜你喜歡
      梯形圖驅(qū)動(dòng)程序內(nèi)核
      萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
      強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
      Linux內(nèi)核mmap保護(hù)機(jī)制研究
      基于VC的梯形圖編程軟件開發(fā)技術(shù)
      繼電器電路轉(zhuǎn)為梯形圖教學(xué)經(jīng)驗(yàn)淺談
      電子制作(2016年15期)2017-01-15 13:39:28
      PLC梯形圖程序設(shè)計(jì)技巧及應(yīng)用
      嵌入式軟PLC編程系統(tǒng)的設(shè)計(jì)
      驅(qū)動(dòng)程序更新與推薦
      驅(qū)動(dòng)程序更新與推薦
      溧水县| 华容县| 汤阴县| 阿坝| 灵山县| 铜鼓县| 大安市| 那曲县| 图木舒克市| 阜南县| 翁源县| 浦东新区| 克什克腾旗| 安图县| 宜宾县| 贡山| 政和县| 西昌市| 四平市| 屯昌县| 旬邑县| 揭阳市| 修武县| 会泽县| 和龙市| 凤城市| 确山县| 遂宁市| 武威市| 天等县| 尉犁县| 漯河市| 宁化县| 高雄市| 黄梅县| 师宗县| 德格县| 永靖县| 龙海市| 蓝山县| 扶风县|