亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ARM+FPGA的PLC計數(shù)器的設計

        2016-03-17 01:56:37徐曉宇李克儉蔡啟仲潘紹明
        計算機測量與控制 2016年2期
        關鍵詞:數(shù)據(jù)格式斷電計數(shù)器

        徐曉宇,李克儉,蔡啟仲,潘紹明,余 玲

        (1.廣西科技大學 電氣與信息工程學院, 廣西 柳州 545006;2.廣西科技大學 鹿山學院電氣與計算機工程系, 廣西 柳州 545616)

        ?

        基于ARM+FPGA的PLC計數(shù)器的設計

        徐曉宇1,李克儉1,蔡啟仲1,潘紹明1,余玲2

        (1.廣西科技大學 電氣與信息工程學院, 廣西 柳州545006;2.廣西科技大學 鹿山學院電氣與計算機工程系, 廣西 柳州545616)

        摘要:計數(shù)器是PLC內(nèi)部重要的軟元件之一,在以PLC為核心部件的自動控制系統(tǒng)中,這種軟元件通過相應的程序?qū)崿F(xiàn)系統(tǒng)的實時準確的計數(shù);ARM通過雙口RAM發(fā)送指令命令給FPGA,F(xiàn)PGA控制計數(shù)器進行相關操作,F(xiàn)PGA的晶振工作頻率50 MHz作為計數(shù)器控制模塊的時序約束,設計的計數(shù)器具有加減計數(shù)功能、斷電保持功能、數(shù)據(jù)回傳功能等,以滿足PLC控制器的計數(shù)需求,并通過使用地址映射存儲器使得計數(shù)器控制器的指令執(zhí)行更加高效;設計了計數(shù)器與FPGA指令執(zhí)行控制器的通信協(xié)議;通過對設計完成后的仿真與測試,單個計數(shù)器的計數(shù)頻率達到2 MHz,基本實現(xiàn)了PLC計數(shù)器的功能,并且達到了穩(wěn)定計數(shù)的設計要求。

        關鍵詞:計數(shù)器; PLC; 雙口RAM; 地址映射存儲器; FPGA通信協(xié)議

        0引言

        PLC是一種專用于工業(yè)控制的計算機,其基本組成與微型計算機是相同的,都是以微處理器為核心的電子系統(tǒng),各種功能的實現(xiàn)都是由硬件和軟件共同來完成的。但是PLC在硬件、軟件結(jié)構上,特別是在I/O通道、系統(tǒng)軟件、系統(tǒng)RAM和模塊化劃分等方面又具有自身的特點,與微型計算機有著明顯的差異[1]。PLC內(nèi)部各組成單元之間通過控制總線、地址總線和數(shù)據(jù)總線等連接,外部則根據(jù)實際控制對象配置相應設備與控制裝置構成PLC控制系統(tǒng)[2]。

        采用ARM-FPGA架構的PLC系統(tǒng)可以很好地融合ARM高速低功耗和FPGA并行工作的優(yōu)點[3-4]。

        在繼電控制線路中,計數(shù)器是作為一種儀表在電路中使用的,其基本功能是對輸入開關量信號進行計數(shù)。通過對PLC計數(shù)器的運行特點的研究,本設計實現(xiàn)的動態(tài)并行執(zhí)行的計數(shù)器控制器,基本滿足PLC對計數(shù)器種類功能的不同需求,并且可以根據(jù)具體工程應用來重構其內(nèi)部的計數(shù)器的總數(shù),實現(xiàn)對FPGA資源的靈活配置。

        1功能需求分析和接口電路設計

        1.1功能需求分析

        PLC內(nèi)部的計數(shù)器一般分為內(nèi)部信號計數(shù)器和高速計數(shù)器兩種,通常將內(nèi)部信號計數(shù)器簡稱為計數(shù)器。計數(shù)器按斷電數(shù)據(jù)保持的情況分為通用型計數(shù)器和斷電保持型計數(shù)器,按加減計數(shù)方式分為單增型計數(shù)器和加減計數(shù)器。同時我們注意到,如果在對計數(shù)器執(zhí)行一些指令時對所有計數(shù)器進行操作,降低計數(shù)器指令操作的效率。因此設計的計數(shù)器控制模塊具有以下主要功能:根據(jù)PLC的計數(shù)器的特點,計數(shù)器控制模塊設計通用型計數(shù)器和斷電保持型計數(shù)器,同時通用型計數(shù)器和斷電保持型計數(shù)器都擁有單增型和加減型這兩種工作方式的計數(shù)器;能根據(jù)指令執(zhí)行控制器發(fā)送的指令,完成對計數(shù)器的初始化配置,完成對計數(shù)器狀態(tài)的更新或修改,完成對計數(shù)器的啟停、復位等操作,并能讀取計數(shù)器的當前值;針對計數(shù)器控制模塊的運行特點,設計相關的結(jié)構和功能模塊,使其能在執(zhí)行一些指令時增加其執(zhí)行效率。

        由以上的功能需求分析,確定了計數(shù)器的基本功能和實現(xiàn)目標,從而可以確定計數(shù)器的體系結(jié)構和各個功能模塊的配置。

        1.2ARM與FPGA接口電路設計

        FPGA與ARM之間的數(shù)據(jù)交換需要存放PLC運行中的各類信息,由于兩個端口需要同時對存儲器進行訪問,選用控制雙口RAM來實現(xiàn)。設計的雙口RAM是一個具有兩個讀寫端口的存儲器,兩個端口具有完全獨立的數(shù)據(jù)總線、地址總線和控制總線,并允許兩個端口同時對存儲器進行訪問,其最大的特點是對數(shù)據(jù)的存儲共享。雙口RAM的使用可以提高RAM的吞吐率,適用于實時的數(shù)據(jù)緩存。

        接口控制電路設計為具有仲裁功能的雙端口RAM,該雙端口RAM與微處理器和FPGA指令執(zhí)行控制器連接如圖1所示。雙口RAM的一個端口稱為A端口,另一個端口稱為B端口。A端口的數(shù)據(jù)為16位可以與16位微處理器的數(shù)據(jù)總線直接連接,B端口的數(shù)據(jù)為32位與FPGA內(nèi)部的存儲讀寫控制模塊的數(shù)據(jù)總線連接。對于A端口,雙口RAM的存儲容量為2 K×16,地址總線為ADDRA0~ADDRA10;對于B端口,存儲容量為1 K×32,地址總線為ADDRB0~ADDRB9。微處理器通過A端口對1個32位數(shù)據(jù)的讀寫操作需要分兩次進行。在此設計的雙口RAM的地址總線ADDRA、ADDRB,數(shù)據(jù)總線DATA、DATB,片選線BLKA、BLKBB,讀信號線RDA、RDB,寫信號線WRA、WRB,忙信號線BusyA和普通雙口RAM引腳的功能是一致的。圖1中的BusyB_1和BusyB_2分別表示A端口和B端口同時對某一個32位存儲單元進行讀或?qū)懖僮鲿r,A端口正在進行低16位或高16位的讀或?qū)懖僮鳌?/p>

        圖1 雙口RAM連接圖

        2計數(shù)器控制器設計

        由ARM與FPGA協(xié)同構建的PLC控制系統(tǒng),ARM作為PLC主控制器通過數(shù)據(jù)總線、地址總線、控制總線向FPGA發(fā)送指令命令,F(xiàn)PGA接收到ARM的指令命令之后,通過FPGA指令執(zhí)行控制器與計數(shù)器進行通信,計數(shù)器總體結(jié)構設計如圖2所示,其中包含以下模塊:端口讀寫控制器、地址映射存儲器、計數(shù)當前信息存儲器、計數(shù)器指令控制器及計數(shù)過程控制器。

        圖2 計數(shù)器總體結(jié)構圖

        2.1地址映射存儲器

        計數(shù)器當前信息在相應存儲器中的存儲位置對應著計數(shù)器的編號,即計數(shù)器的編號為其相關數(shù)據(jù)在計數(shù)當前值和計數(shù)設置值存儲器中的地址。為了能夠動態(tài)執(zhí)行本設計,使用地址映射存儲器按初始化先后存儲被使用的計數(shù)器的編號,當計數(shù)器控制器進行復位或者斷電保持型計數(shù)器斷電后數(shù)據(jù)上傳操作時,從地址映射存儲器中的第一個地址開始先后讀取被使用的計數(shù)器的編號,以此編號為地址,便可以迅速地在計數(shù)存儲器中找到需要進行操作的計數(shù)器的相關數(shù)據(jù)進行操作。這樣就跳過了不需要操作的計數(shù)器,從而達到了提高系統(tǒng)執(zhí)行效率的目的。地址映射存儲器的數(shù)據(jù)格式如表1所示。

        表1 地址映射存儲器存儲數(shù)據(jù)格式表

        2.2計數(shù)當前信息存儲器

        計數(shù)當前信息存儲器存儲數(shù)據(jù)格式如表2所示,包含計數(shù)器編號、計數(shù)當前值、加減標志位、復位標志位、通斷電標志位等重要信息。

        表2 計數(shù)當前信息存儲器存儲數(shù)據(jù)格式表

        計數(shù)當前信息存儲器使用Libero軟件提供的雙端口存儲器IP核生成,用以實現(xiàn)計數(shù)器狀態(tài)信息、計數(shù)相關數(shù)據(jù)的存儲。數(shù)器當前值存儲器設計為29位,用以存儲計數(shù)器的當前狀態(tài)信息、計數(shù)當前值和編號信息,計數(shù)器的編號即為其相關信息在計數(shù)當前值值存儲器中的地址。

        2.3計數(shù)器指令執(zhí)行器

        當指令執(zhí)行控制器對計數(shù)器控制器發(fā)送指令之后,指令將被送至計數(shù)器指令執(zhí)行器。通過對D31~D29這三位數(shù)據(jù)的檢測,判斷指令的類型執(zhí)行相關的數(shù)據(jù)操作,其流程如圖3所示。

        圖3指令執(zhí)行器流程圖

        指令類型通過端口讀寫控制器的輸出線code_in線輸入指令執(zhí)行器,指令數(shù)據(jù)通過端口讀寫控制器的輸出 data_in線輸入指令執(zhí)行器,同時端口讀寫控制器置低CE線,啟動計數(shù)器指令執(zhí)行器。

        2.4計數(shù)過程控制器

        計數(shù)控制器功能是對計數(shù)器進行計數(shù)操作,并將計數(shù)結(jié)果上傳至指令執(zhí)行控制器的接收端口。當計數(shù)器控制器從指令執(zhí)行控制器接收到計數(shù)器信息刷新指令后,將此指令傳送到計數(shù)控制器,計數(shù)控制器根據(jù)指令內(nèi)容中的計數(shù)器編號確定計數(shù)器在計數(shù)當前值存儲器中的地址,然后對計數(shù)當前信息存儲器中的數(shù)據(jù)進行讀寫操作,從而實現(xiàn)計數(shù)功能。首先對計數(shù)器信息刷新指令的通斷電狀態(tài)標志位和加減標志位進行判斷,接下來對計數(shù)當前信息存儲器里的存儲的計數(shù)當前值進行操作并與該指令里包含的計數(shù)設定值進行比較和判斷,完成相應的數(shù)據(jù)操作。該程序流程如圖4所示。

        圖4 計數(shù)過程控制器流程圖

        3指令執(zhí)行控制器與計數(shù)器通信數(shù)據(jù)格式

        計數(shù)器控制器主要實現(xiàn)的功能就是接收FPGA指令執(zhí)行控制器發(fā)來的經(jīng)過ARM編譯后的PLC指令,根據(jù)指令自主完成對計數(shù)器的相關復位、計數(shù)操作、計數(shù)當前值上傳等操作[5-6]。

        為了實現(xiàn)PLC的計數(shù)功能,對指令執(zhí)行控制器與計數(shù)器控制器通信的指令進行了命令字數(shù)據(jù)格式的設計。

        3.1復位指令

        該指令由指令執(zhí)行控制器發(fā)送,當復位標志為001時將對所有計數(shù)器進行復位,對計數(shù)器控制所有存儲的數(shù)據(jù)清零,效果與上電復位效果一致。當復位標志為010時對部分計數(shù)器進行復位,該復位命令對斷電保持型的單增或加減計數(shù)器和地址映射存儲器無效。數(shù)據(jù)格式如表3所示。

        表3 復位指令數(shù)據(jù)格式表

        3.2計數(shù)器初始化指令

        該指令由指令執(zhí)行控制器發(fā)送,是PLC用戶應用程序第一次編譯或執(zhí)行全局復位后發(fā)送給計數(shù)器控制器的指令,用以初始化計數(shù)器。數(shù)據(jù)指令入表4所示。

        表4 計數(shù)器初始化指令數(shù)據(jù)格式表

        其中:D28表示是否數(shù)據(jù)寄存器D傳送,數(shù)值為0為非D傳送;數(shù)值為1為D傳送。

        3.3斷電保存指令

        該指令由指令執(zhí)行控制器發(fā)送,用于當PLC斷電時指令執(zhí)行控制器告知計數(shù)器控制器進入斷電保存階段,接收到該指令后計數(shù)器控制器將發(fā)送正在使用的斷電保持型計數(shù)器的編號以及該計數(shù)器的當前值,用于保存至PLC再次通電時回傳。數(shù)據(jù)格式如表5所示。

        表5 斷電保存指令數(shù)據(jù)格式表

        3.4斷電保持型計數(shù)器斷電保存信息

        該信息由計數(shù)器控制器發(fā)送,在接收到指令執(zhí)行控制器斷電保存指令后發(fā)送此信息給指令執(zhí)行控制器,用以保存正在使用的斷電保持型計數(shù)器的當前值及其對應的計數(shù)器編號。數(shù)據(jù)格式如表6所示。

        圖5 測試仿真圖

        D31~D30D29~D26D26~D8D7-D011保留計數(shù)當前值斷電保持型計數(shù)器編號

        4仿真測試

        在使用Verilog HDL語言完成硬件描述方面的設計后,使用ModeSim軟件配合編寫的testbench.v測試程序,模擬指令執(zhí)行控制器對計數(shù)器控制器的輸入,然后觀察計數(shù)器控制器的輸出情況[7-9]。測試方法:先使用synplify軟件綜合后,再進行綜合后仿真,對計數(shù)控制器進行測試,測試計數(shù)控制器是否能完成計數(shù)功能。

        設計的指令執(zhí)行控制器訪問計數(shù)器控制器的模塊地址為00010,先模擬指令執(zhí)行控制器發(fā)送指令初始化編號8和224號計數(shù)器,兩種計數(shù)器分別為通用型單增和斷電保持型加減計數(shù)器,測試仿真如圖5所示。

        經(jīng)過測試,計數(shù)控制器在計數(shù)到時都準確地上傳了計數(shù)器的編號至指令執(zhí)行控制器,初步實現(xiàn)了設計目標。

        5結(jié)語

        本設計是在FPGA為平臺下設計的一種面向PLC的計數(shù)器控制器,設計了計數(shù)器控制器與指令執(zhí)行控制器的通信時序和通信協(xié)議?;緦崿F(xiàn)了PLC的計數(shù)功能,并且本設計使用了地址映射存儲器來存儲特定編號計數(shù)器的相關數(shù)據(jù)在計數(shù)存儲器中的地址,使得計數(shù)控制器的復位指令和斷電保持計數(shù)器的信息上傳操作更加快速高效,在大規(guī)模計數(shù)器的設計中有一定的參考價值。

        參考文獻:

        [1] 方承遠,張振國. 工廠電氣控制技術(第3版) [M]. 北京:機械工業(yè)出版社,2008.

        [2] 王榮華,張燕斌.PLC技術在礦山機電控制中應用研究[J].現(xiàn)代商貿(mào)工業(yè),2011(6):246-247.

        [3] 侯鴻佳,蔡啟仲,陳文輝,等.ARM+FPGA組成的PLC結(jié)構的通信系統(tǒng)[J].廣西工學院學報.2012,23(1):60-64.

        [4] 蔣玉新,蔡啟仲,李克儉,等. 基于ARM-FPGA的PLC源程序編譯系統(tǒng)的設計[J]. 計算機應用與軟件,2013,09:179-182.

        [5] Yu L,Li K J,Cai Q Z,et al. Design of Parallel Operated Counter based on ARM + FPGA[A].2012 International Conference on Measurement, Instrumentation and Automation (ICMIA 2012)[C].Guangzhou,2012:234-239.

        [6] 張煒,李克儉,蔡啟仲,等.基于FPGA的PLC并行計數(shù)器的設計[J].計算機工程與設計,2013,34(4):1244-1249.

        [7] 夏宇聞.Verilog數(shù)字系統(tǒng)設計教程[M](第2版).北京:北京航空航天大學出版社,2008.

        [8] 王金明.數(shù)字系統(tǒng)設計與Verilog HDL(第3版).北京:電子工業(yè)出版社,2009.

        [9] 華清遠見嵌入式培訓中心.FPGA應用開發(fā)入門與典型實例[M].北京:人民郵電出版社,2008.

        Design of Counter in PLC Based on ARM+FPGA

        Xu Xiaoyu1, Li Kejian1, Cai Qizhong1, Pan Shaoming1, Yu Ling2

        (1.College of Electronic and Information Engineering,Guangxi University of Technology,Liuzhou545006,China;2.Department of Electrical and Computer Engineering,Lushan College, Guangxi University of Science and Technology,Liuzhou545616,China)

        Abstract:Counter is one of the important parts of the PLC. In the automatic control system with PLC as the core component, the software can realize the real-time and accurate count of the system. Through the dual port RAM, ARM command can be transmitted to the FPGA. The FPGA control counter related operations, the FPGA oscillator frequency 50 MHz as counter control module timing constraints, counter design with addition and subtraction counting function, power holding function, data transmission function, so as to meet the needs of the PLC controller of the count, and through the use of memory address mapping the counter controller instruction execution more efficient. The communication time sequence and communication protocol of the FPGA internal control and FPGA instruction execution controller are designed. After the simulation and testing of the design, the count frequency of a single counter reaches 2 MHz, the function of the PLC counter is basically realized, and the design requirements of the stable count are achieved.

        Keywords:counter; PLC; dual port RAM; address mapping memory; FPGA communication protocol

        文章編號:1671-4598(2016)02-0271-04

        DOI:10.16526/j.cnki.11-4762/tp.2016.02.075

        中圖分類號:TP3

        文獻標識碼:A

        作者簡介:徐曉宇(1988-),男,河北唐山人,碩士研究生,主要從事嵌入式系統(tǒng)與自動化裝置方向的研究。

        基金項目:廣西科學基金項目(桂科自2014GXNSFA118392);廣西教育廳科研項目(2013LX092)。

        收稿日期:2015-09-04;修回日期:2015-09-28。

        猜你喜歡
        數(shù)據(jù)格式斷電計數(shù)器
        采用虛擬計數(shù)器的電子式膜式燃氣表
        煤氣與熱力(2022年2期)2022-03-09 06:29:30
        高壓感應電動機斷電重啟時的瞬態(tài)仿真
        防爆電機(2020年3期)2020-11-06 09:07:36
        在智能交通系統(tǒng)中PLC數(shù)據(jù)格式轉(zhuǎn)換方法的研究
        電子測試(2018年1期)2018-04-18 11:52:49
        計數(shù)器競爭冒險及其處理的仿真分析
        一種STS新的斷電快速檢測方法
        電源技術(2015年12期)2015-08-21 08:58:52
        一種基于STM32的具有斷電保護機制的采集存儲系統(tǒng)設計
        論子函數(shù)在C語言數(shù)據(jù)格式輸出中的應用
        DWG與SHP數(shù)據(jù)格式互轉(zhuǎn)換方法研究——以龍巖規(guī)劃測繪數(shù)據(jù)為例
        高、低壓斷電對高爐噴煤系統(tǒng)的影響及處理
        任意N進制計數(shù)器的設計方法
        河南科技(2014年10期)2014-02-27 14:09:30
        国产精品国产三级在线专区| 一本大道东京热无码| 制服丝袜天堂国产日韩| 国产高清精品在线二区| 国产一区二区黄色的网站| 无码国内精品久久人妻| 88国产精品视频一区二区三区| a午夜国产一级黄片| 日本女同av在线播放| 亚洲成a人v欧美综合天堂| 一二三区亚洲av偷拍| 久久久久久久97| 久久精品久久精品中文字幕| 精品久久免费一区二区三区四区 | 午夜a福利| 久久精品伊人久久精品| 日本人妻系列中文字幕| 国产精品av在线| 国产精品乱码在线观看| 中文字幕在线观看乱码一区| 久久精品国产亚洲av成人文字| 爱性久久久久久久久| 欧美极品第一页| 久久精品亚洲乱码伦伦中文| 影音先锋久久久久av综合网成人| 少妇装睡让我滑了进去| 亚洲av人妖一区二区三区| 日本免费大片一区二区三区 | 国产69精品久久久久999小说| 亚洲精品123区在线观看| 国产精品国产三级国产专播| 乱人伦中文视频在线| 成年男女免费视频网站| 日本一区二区三区在线观看免费 | 欧美丝袜秘书在线一区| 日韩精品视频在线观看无| 欧美成人精品午夜免费影视| 国产精品免费久久久久影院 | 日本高清一区在线你懂得| 性猛交ⅹxxx富婆视频| 中国精学生妹品射精久久|