• 
    

    
    

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

      嵌入式PLC高速脈沖輸出的研究與實(shí)現(xiàn)

      2014-06-27 05:45:37張帆高紅亮尹歡歡
      船電技術(shù) 2014年3期
      關(guān)鍵詞:梯形圖計(jì)數(shù)器寄存器

      張帆,高紅亮,尹歡歡

      (湖北師范學(xué)院, 湖北黃石 435002)

      嵌入式PLC高速脈沖輸出的研究與實(shí)現(xiàn)

      張帆,高紅亮,尹歡歡

      (湖北師范學(xué)院, 湖北黃石 435002)

      本文介紹了基于C8051F020單片機(jī)的嵌入式PLC的高速脈沖輸出功能的開(kāi)發(fā)。靈活運(yùn)用C8051F020內(nèi)部提供的可編程計(jì)數(shù)器陣列(PCA)模塊實(shí)現(xiàn)了PLC高速脈沖輸出功能。

      嵌入式PLC C8051F020 高速脈沖輸出

      0 引言

      在自動(dòng)化技術(shù)迅速發(fā)展的今天,自動(dòng)化設(shè)備在工業(yè)生產(chǎn)中得到普及。工業(yè)生產(chǎn)中的許多自動(dòng)化設(shè)備都要求精確控制,可靠定位。自動(dòng)化生產(chǎn)線上的點(diǎn)位控制系統(tǒng)、運(yùn)動(dòng)控制系統(tǒng),以及步進(jìn)電機(jī)、伺服電機(jī)的控制都需具要有高速脈沖輸出功能的設(shè)備來(lái)驅(qū)動(dòng),實(shí)現(xiàn)精確控制。專用的高速脈沖輸出設(shè)備價(jià)格昂貴,且功能沒(méi)有針對(duì)性。采用單片機(jī)控制,不僅要開(kāi)發(fā)軟件系統(tǒng),還要設(shè)計(jì)硬件電路,而且還要考慮在工業(yè)現(xiàn)場(chǎng)中抗干擾問(wèn)題??删幊绦蚩刂破鳎≒LC)具有抗干擾能力強(qiáng)、可靠性高、體積小等優(yōu)點(diǎn),是專為工業(yè)環(huán)境而設(shè)計(jì)的電子系統(tǒng)[1]。因此,本文采用具有嵌入式操作系統(tǒng)的PLC來(lái)開(kāi)發(fā)高速脈沖輸出功能。

      1 嵌入式PLC簡(jiǎn)介

      嵌入式PLC是用單片機(jī)來(lái)控制,用梯形圖來(lái)編程的芯片組。本文所設(shè)計(jì)的嵌入式PLC是建立在EASYCORE操作系統(tǒng)平臺(tái)之上的。該系統(tǒng)內(nèi)核可實(shí)現(xiàn)實(shí)時(shí)任務(wù)調(diào)度,梯形圖語(yǔ)言的解釋和執(zhí)行,以及通信等功能,并且留出了可二次開(kāi)發(fā)驅(qū)動(dòng)程序的接口[2]。

      嵌入式芯片組的PLC兼容三菱FX2N梯形圖指令和編程軟件。通過(guò)梯形圖、指令表可以實(shí)現(xiàn)數(shù)據(jù)運(yùn)算、邏輯順序控制、特殊控制等功能,可以滿足數(shù)字量控制、模擬量控制,以及CANBUS、RS485等網(wǎng)絡(luò)通信的需要。此外,嵌入式PLC芯片組使用的MCU為C8051F020單片機(jī),C8051F020內(nèi)部豐富的資源如PCA、SPI、I2C等功能都可以通過(guò)編寫(xiě)二次開(kāi)發(fā)程序加載到實(shí)時(shí)操作系統(tǒng)中。

      2 高速脈沖輸出功能的設(shè)計(jì)

      2.1 高速脈沖輸出功能簡(jiǎn)介

      脈沖控制要用到脈沖信號(hào),一般小型PLC都具有高速脈沖輸出功能,如西門(mén)子的S7-200、三菱FX2N等都可以提供多個(gè)高速脈沖輸出端口[3]。通過(guò)梯形圖中脈沖參數(shù)的設(shè)置,結(jié)合具體的

      2.2 硬件設(shè)計(jì)

      高速輸出頻率較高,因此需要選用晶體管輸出型。晶體管型輸出電路如圖(1)所示,輸出的高速脈沖信號(hào)由內(nèi)部電路發(fā)出,經(jīng)光電耦合器送給輸出晶體管,晶體管的飽和和截止?fàn)顟B(tài)相當(dāng)于觸點(diǎn)的接通和斷開(kāi)。穩(wěn)壓二極管是作用是防止過(guò)電壓和浪涌電壓,保護(hù)晶體管。

      2.3 軟件設(shè)計(jì)

      2.3.1 C8051F020高速輸出簡(jiǎn)介

      C8051F020單片機(jī)內(nèi)部有一個(gè)可編程計(jì)數(shù)器/定時(shí)器陣列(PCA)。PCA包括一個(gè)專用的16位計(jì)數(shù)器/定時(shí)器和5個(gè)16位捕捉/比較模塊。每個(gè)捕捉/比較模塊都有自己的I/O線(CEXn), 可以通過(guò)數(shù)字交叉開(kāi)關(guān)配置到相應(yīng)的單片機(jī)引腳。計(jì)數(shù)器/定時(shí)器由一個(gè)可編程的時(shí)基信號(hào)驅(qū)動(dòng),時(shí)基信號(hào)有6個(gè)時(shí)鐘源:系統(tǒng)時(shí)鐘/12、系統(tǒng)時(shí)鐘/4、定時(shí)器0溢出、外部時(shí)鐘輸入(ECI)、系統(tǒng)時(shí)鐘和外部振蕩源頻率/8。每個(gè)捕捉/比較模塊可以獨(dú)立地工作在一下6種工作方式之一:邊沿觸發(fā)捕捉、軟件定時(shí)器、高速輸出、頻率輸出、8位PWM和16位PWM[4]。C8051F020提供的增強(qiáng)定時(shí)器功能與標(biāo)準(zhǔn)8051的定時(shí)器/計(jì)數(shù)器相比,它所需的CPU干預(yù)更少。

      下面就本文用到的高速輸出方式的基本原理做簡(jiǎn)要介紹。

      在高速輸出方式下,通過(guò)改變相應(yīng)模塊的16位捕捉/比較寄存器(PCA0CPHn和PCA0CPLn)內(nèi)的值可以使輸出脈沖的寬度或頻率發(fā)生變化。每當(dāng)PCA的16位計(jì)數(shù)器與模塊的16位捕捉/比較寄存器值相等時(shí),CEXn引腳就會(huì)發(fā)生電平轉(zhuǎn)換。與此同時(shí),如果捕捉/比較模塊控制寄存器PCA0CPMn中的CCFn位被置“1”,則可以進(jìn)入PCA的中斷程序,在中斷程序中更新PCA0CPHn和PCA0CPLn的值來(lái)設(shè)置下一次匹配時(shí)刻。這樣,通過(guò)計(jì)算設(shè)置PCA0CPHn和PCA0CPLn內(nèi)的數(shù)值就可以控制輸出脈沖的頻率和脈沖寬度。所產(chǎn)生脈沖的頻率由公式(1)給出。

      其中,F(xiàn)out為CEXn引腳輸出的脈沖頻率。Fpca是由PCA方式寄存器PCA0MD選擇的PCA時(shí)鐘的頻率。本文程序中選用的時(shí)基信號(hào)的時(shí)鐘源為系統(tǒng)時(shí)鐘,即Fpca=24 MHZ。△n是連續(xù)兩次匹配16位捕捉/比較寄存器的差值。輸出頻率變化的脈沖時(shí),△n也是變化的。

      由公式(1)可以看出,△n直接決定輸出脈沖頻率的大小。如圖2,假設(shè)捕捉/比較寄存器的初值為n1,PCA計(jì)數(shù)器從0開(kāi)始計(jì)數(shù),當(dāng)計(jì)數(shù)到n1時(shí)發(fā)生匹配,電平翻轉(zhuǎn),進(jìn)入中斷程序。在中斷程序中我們需要將捕捉/比較寄存器的值設(shè)置為n2。其中n2=n1+△n,n3=n2+△n……以此類(lèi)推,每一次進(jìn)中斷都要對(duì)捕捉/比較寄存器重新賦值,這樣才能保證輸出準(zhǔn)確的脈沖頻率。

      2.3.2 高速脈沖輸出所占用的PLC資源

      多段脈沖輸出時(shí)需要設(shè)定每段脈沖的起始頻率f(占用2個(gè)字節(jié))、頻率改變量△f(有符號(hào)數(shù),為負(fù)表示頻率依次減小,占用2個(gè)字節(jié))、以及脈沖數(shù)(占用四字節(jié)),脈沖數(shù)的范圍為0~232-1。段的起始地址存放在數(shù)據(jù)寄存器D5860中,起始地址存放脈沖段數(shù),然后按照段的順序依次將各段脈沖參數(shù)存入起始地址之后的連續(xù)D寄存器區(qū)。M1006為高速脈沖啟動(dòng)輔助繼電器[5]。

      2.3.3 嵌入式PLC高速脈沖輸出設(shè)計(jì)原理

      芯片組為用戶二次開(kāi)發(fā)設(shè)計(jì)了七個(gè)用戶程序嵌入接口,本文程序設(shè)計(jì)用到其中的2個(gè)接口:USER_CONFIG、USER_SCAN。USER_CONFIG為用戶I/O配置程序入口,此段程序會(huì)在內(nèi)核重新上電后調(diào)用一次。高速脈沖輸出端口在這里通過(guò)數(shù)字交叉開(kāi)關(guān)配置到單片機(jī)相應(yīng)引腳。USER_SCAN為用戶演算周期掃描程序,所有梯形圖執(zhí)行完后,即調(diào)用該程序,PCA模塊的初始化和△n值的更新放在此段程序中。嵌入式PLC輸出高速脈沖流程圖如圖3所示。

      PLC上電運(yùn)行后,如果梯形圖中相應(yīng)的高速脈沖輸出標(biāo)志位被置位,即M1006=1,則在執(zhí)行用戶演算周期程序時(shí)會(huì)初始化PCA模塊輸出高速脈沖,如果M1006被復(fù)位,則立即停止脈沖輸出,PCA高速輸出方式被禁止。

      在PCA中斷程序中,需要對(duì)匹配值更新,同時(shí)對(duì)脈沖進(jìn)行計(jì)數(shù)。當(dāng)脈沖數(shù)達(dá)到設(shè)定值后繼續(xù)輸出下一段脈沖串或結(jié)束脈沖輸出任務(wù)。PCA中斷服務(wù)流程如圖4所示。

      3 功能測(cè)試

      3.1 輸出頻率測(cè)試

      為驗(yàn)證高速方式輸出脈沖頻率的準(zhǔn)確性,比較示波器觀測(cè)值與理論計(jì)算值,得出結(jié)果如表1所示。

      通過(guò)表1數(shù)據(jù)比較可以看出,實(shí)際輸出頻率與理論值相差很小,符合設(shè)計(jì)要求。

      當(dāng)設(shè)定的輸出脈沖頻率為整數(shù)時(shí),實(shí)際輸出頻率與理論值基本一致。經(jīng)過(guò)試驗(yàn),當(dāng)設(shè)定輸出脈沖頻率非整數(shù)時(shí),實(shí)際輸出頻率的準(zhǔn)確性會(huì)降低。

      3.2 梯形圖功能測(cè)試

      其他各段脈沖參數(shù)須依次裝入相應(yīng)的寄存器中。通過(guò)示波器觀察,可明顯看出脈沖寬度的變化過(guò)程。經(jīng)測(cè)試,各段脈沖滿足要求。

      4 結(jié)束語(yǔ)

      本文基于嵌入式PLC,研究具有高速輸出功能的PLC。通過(guò)對(duì)C8051F020單片機(jī)PCA模塊的運(yùn)用,實(shí)現(xiàn)了嵌入式PLC的高速脈沖輸出功能。結(jié)合計(jì)算與實(shí)驗(yàn)觀察,驗(yàn)證了功能的可行性。應(yīng)用嵌入式PLC開(kāi)發(fā)設(shè)計(jì)高速輸出功能降低了開(kāi)發(fā)難度和成本,是一種經(jīng)濟(jì)、有效的方法。

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

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

      [3] 宋伯生. PLC編程實(shí)用指南[M].北京:機(jī)械工業(yè)出版社, 2006.

      Implementation of High-Speed Pulse Output of Embedded PLC

      Zhang Fan,Gao Hongliang,Yin Huanhuan
      (Hubei Normal University, Huangshi 435002, Hubei, China)

      This article describes the development of high-speed pulse output function of embedded PLC based on C8051F020. The high-speed pulse output function of PLC is implemented by using the internal programmable counter array (PCA) module provided by C8051F020 flexibly.

      embedded PLC; C8051F020; high-speed pulse output

      TP23

      A

      1003-4862(2014)03-0062-03

      2013-09-15

      湖北師范學(xué)院2012年國(guó)家級(jí)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(項(xiàng)目編號(hào):201210513027)。

      張帆(1990-),男,工學(xué)學(xué)士,研究方向:電氣工程及其自動(dòng)化??刂埔?,可以輸出一段或多段脈沖信號(hào)。本文設(shè)計(jì)的PLC高速脈沖可以實(shí)現(xiàn)多段脈沖輸出。

      猜你喜歡
      梯形圖計(jì)數(shù)器寄存器
      煤氣與熱力(2022年2期)2022-03-09 06:29:30
      Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      基于VC的梯形圖編程軟件開(kāi)發(fā)技術(shù)
      繼電器電路轉(zhuǎn)為梯形圖教學(xué)經(jīng)驗(yàn)淺談
      電子制作(2016年15期)2017-01-15 13:39:28
      計(jì)數(shù)器競(jìng)爭(zhēng)冒險(xiǎn)及其處理的仿真分析
      PLC梯形圖程序設(shè)計(jì)技巧及應(yīng)用
      任意N進(jìn)制計(jì)數(shù)器的設(shè)計(jì)方法
      河南科技(2014年10期)2014-02-27 14:09:30
      基于單片機(jī)的仰臥起坐計(jì)數(shù)器
      高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
      安溪县| 亳州市| 驻马店市| 南阳市| 陕西省| 灵川县| 石景山区| 长汀县| 沭阳县| 仪陇县| 外汇| 通州区| 永清县| 澄城县| 大田县| 武邑县| 长汀县| 五家渠市| 明溪县| 葵青区| 宣武区| 邯郸市| 丁青县| 池州市| 仁布县| 隆子县| 明星| 广灵县| 循化| 晋中市| 友谊县| 富裕县| 乐陵市| 玉山县| 平舆县| 迁西县| 崇礼县| 北辰区| 平邑县| 噶尔县| 左权县|