国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于PLC技術(shù)的并行定時(shí)器設(shè)計(jì)研究

2016-10-21 16:19:57陸雪影
科技與企業(yè) 2016年4期
關(guān)鍵詞:自帶計(jì)數(shù)器命令

陸雪影

【摘要】PLC中自帶有定時(shí)器,但是一般PLC自帶的定時(shí)器數(shù)量有限,在有有的應(yīng)用中,較少的定時(shí)器數(shù)量難以PLC的應(yīng)用,為此,需要通過外擴(kuò)定時(shí)器來滿足PLC應(yīng)用的需求。在本文的研究中,對(duì)基于PLC的外擴(kuò)256個(gè)并行外部定時(shí)器進(jìn)行研究。

【關(guān)鍵詞】PLC技術(shù);并行定時(shí)器

定時(shí)器指令是PLC工作運(yùn)行中的重要指令,可以進(jìn)行構(gòu)造時(shí)序、人為制造中斷等各種應(yīng)用,是PLC應(yīng)用中不可或缺的重要手段。

1. 定時(shí)器設(shè)計(jì)

常用的PLC微控制器的內(nèi)部定時(shí)器數(shù)量有限,在有大量定時(shí)任務(wù)需要完成時(shí),PLC自帶的內(nèi)部定時(shí)器難以滿足應(yīng)用的需求,因此需要通過外擴(kuò)定時(shí)器芯片,來實(shí)現(xiàn)大量定時(shí)器單元的設(shè)計(jì)。

1.1 總體結(jié)構(gòu)設(shè)計(jì)

在本課題所研究的并行定時(shí)器中,實(shí)現(xiàn)了256個(gè)定時(shí)范圍為1~228,最小定時(shí)時(shí)間為1ms定時(shí)器。由于并行定時(shí)器的定時(shí)范圍寬、單元數(shù)量多,因此采用并行方式執(zhí)行,在較短的時(shí)間內(nèi)對(duì)所256個(gè)定時(shí)單元進(jìn)行掃描,完成一次定時(shí)操作。

為了節(jié)省接口數(shù)量,并行定時(shí)器單元的輸入輸出接口采用雙向I/O接口。外部控制器訪問定時(shí)器的方式是按照一定的時(shí)序?qū)崿F(xiàn)數(shù)據(jù)的寫入和讀取,定時(shí)器內(nèi)部定時(shí)單元的訪問和操作通過相應(yīng)命令來控制。定時(shí)器的內(nèi)部框架圖設(shè)計(jì)如圖1所示。

1.2 定時(shí)器命令設(shè)計(jì)

在定時(shí)器總體設(shè)計(jì)過程中,PLC與并列控制的外部定時(shí)器之間通過命令的方式來實(shí)現(xiàn)數(shù)據(jù)的交互。定時(shí)器的命令范圍控制命令和讀取命令兩種。在PLC與外部定時(shí)器進(jìn)行數(shù)據(jù)通信的過程中,為了保證256個(gè)外部定時(shí)器單元初始化成功和正確讀取,PLC的輸入輸出頻率應(yīng)該在300kHz以上。在PLC的地址總線中,輸入0x000-0x0ff表示256個(gè)定時(shí)器中某個(gè)定時(shí)器的編號(hào),而0x00-0x120表示將256個(gè)定時(shí)器劃分為8組每組數(shù)量為32個(gè)定時(shí)器的中斷標(biāo)志組,通過分組可以更快的實(shí)現(xiàn)對(duì)定時(shí)器的初始化和讀取操作。

(1)控制命令

PLC向定時(shí)器單元發(fā)送的初始化、啟用、停用、暫停等控制命令,控制命令的輸入格式如表1所示。

通過設(shè)置相應(yīng)的定時(shí)器地址,并且輸入定時(shí)器初始數(shù)據(jù),PLC就可以控制256個(gè)外部定時(shí)器單元中的某個(gè)定時(shí)器啟動(dòng),當(dāng)啟動(dòng)標(biāo)志位和使用標(biāo)志位同時(shí)置1,并且結(jié)束標(biāo)志位和工作標(biāo)志位同時(shí)置0時(shí),控制外部定時(shí)器開始工作。當(dāng)啟動(dòng)標(biāo)志位或者使用標(biāo)志位中的某個(gè)位置0時(shí),定時(shí)器停止工作,并且載入初始值,等待下一次被PLC啟用。

(2)讀取命令

的那個(gè)RW端置高電平后,PLC可以訪問定時(shí)器單元內(nèi)的定時(shí)數(shù)據(jù)來獲取相應(yīng)的定時(shí)狀態(tài)和定時(shí)值信息。當(dāng)讀取命令的輸入地址為0x100時(shí),可以并行讀取1個(gè)定時(shí)器單元組中的32個(gè)外部單元的數(shù)據(jù),0表示定時(shí)單元未啟動(dòng)或者未結(jié)束,1表示定時(shí)器時(shí)間到達(dá)。

2. PLC程序控制

PLC程序是指PLC并行控制256個(gè)外部定時(shí)器單元的程序。程序的主要模塊分為如下五個(gè)部分的內(nèi)容。

2.1 1kHz分頻模塊

分頻模塊將50MHz的方波進(jìn)行分頻,實(shí)現(xiàn)分頻為50%占空比的1kHz頻率信號(hào)輸出。在分頻時(shí)需要一個(gè)計(jì)數(shù)器進(jìn)行輸出控制,計(jì)數(shù)器的計(jì)算公式如式(1)所示。

(1)

根據(jù)式(1)計(jì)算得到計(jì)數(shù)次數(shù)為25000,因此當(dāng)技術(shù)次數(shù)為25000時(shí),輸出1kHz取反,獲得50%占空比的1kHz方波。

2.2 地址計(jì)數(shù)模塊

在訪問兩端RAM時(shí),通過地址技術(shù)模塊輸入地址,當(dāng)PLC模塊需要讀取外部定時(shí)器中的定時(shí)數(shù)據(jù)時(shí),地址計(jì)數(shù)器模塊停止計(jì)數(shù),在完成讀取操作后,繼續(xù)進(jìn)行地址增加,在完成一個(gè)循環(huán)之后,等待下一次1kHz脈沖到達(dá)。

地址計(jì)數(shù)采用11位寄存器,11個(gè)寄存器的低3位保持地址持續(xù)時(shí)間,在8個(gè)時(shí)鐘周期的持續(xù)時(shí)間中,完成一次單元操作。在單元操作完成后,地址計(jì)數(shù)器累加,地址計(jì)數(shù)所指向的地址后移。

2.3 計(jì)時(shí)與邏輯控制模塊

計(jì)時(shí)與邏輯控制模塊讀取兩端口RAM中的數(shù)據(jù),讀取RAMCR中的數(shù)據(jù)并判斷當(dāng)前定時(shí)的定時(shí)狀態(tài)和定時(shí)初始值;讀取RAMCE中的數(shù)據(jù),進(jìn)行減操作,開始進(jìn)行定時(shí)。如果在計(jì)時(shí)與邏輯控制模塊運(yùn)行過程中發(fā)現(xiàn)了定時(shí)結(jié)束的定時(shí)單元,則將RAMCE中的D27和D28位置分別設(shè)置為0和1,如果定時(shí)單元未技術(shù)則設(shè)置為1和0,其余情況設(shè)置為0和0。

3. 總結(jié)

PLC中自帶了定時(shí)器以滿足一般應(yīng)用的需求,但由于PLC所在帶的定時(shí)器較少,因此難以滿足復(fù)雜應(yīng)用的需求。在本文的研究中,采用PLC未接定時(shí)器的方式來擴(kuò)充PLC的定時(shí)器的數(shù)量,并通過并行處理來提高定時(shí)器工作的實(shí)時(shí)性,提高定時(shí)器計(jì)數(shù)和定時(shí)的準(zhǔn)確性。

參考文獻(xiàn)

[1]孫志雄,謝海霞.基于FPGA的高速串并/并串轉(zhuǎn)換器設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2014,(8):151-152.

[2]李克儉,付杰,蔡啟仲,等.基于FPGA的串行定時(shí)器設(shè)計(jì)[J].廣西工學(xué)院學(xué)報(bào),2012,23(3):61-65.

[3]張煒,李克儉,蔡啟仲,等.基于FPGA的PLC并行定時(shí)器的設(shè)計(jì)[J].計(jì)算機(jī)工程與設(shè)計(jì),2013,34(4):1244-1249.

猜你喜歡
自帶計(jì)數(shù)器命令
只聽主人的命令
煤氣與熱力(2022年2期)2022-03-09 06:29:30
周迅:天才,自帶撥亂反正的能量
文苑(2018年23期)2018-12-14 01:06:26
移防命令下達(dá)后
中國寶玉石(2018年6期)2018-03-05 06:17:48
好的愛情自帶成長(zhǎng)屬性
海峽姐妹(2017年3期)2017-04-16 03:06:35
這是人民的命令
計(jì)數(shù)器競(jìng)爭(zhēng)冒險(xiǎn)及其處理的仿真分析
任意N進(jìn)制計(jì)數(shù)器的設(shè)計(jì)方法
河南科技(2014年10期)2014-02-27 14:09:30
基于單片機(jī)的仰臥起坐計(jì)數(shù)器
临夏县| 濮阳县| 景东| 青岛市| 吉木萨尔县| 高青县| 阿拉善左旗| 鄂尔多斯市| 焉耆| 黎平县| 台南市| 务川| 娄底市| 冀州市| 玉山县| 永仁县| 吴忠市| 安乡县| 会泽县| 柯坪县| 木兰县| 邵东县| 广宁县| 鄂托克前旗| 清流县| 新河县| 沅陵县| 南丹县| 常山县| 营口市| 南召县| 南和县| 驻马店市| 晋宁县| 阿鲁科尔沁旗| 贵南县| 淄博市| 濮阳市| 余姚市| 滨州市| 鄯善县|