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

        ?

        基于CPLD 的步進電機控制系統(tǒng)設(shè)計

        2021-07-30 07:57:50呂棟騰
        電子設(shè)計工程 2021年14期
        關(guān)鍵詞:信號系統(tǒng)設(shè)計

        呂棟騰

        (陜西國防工業(yè)職業(yè)技術(shù)學(xué)院,陜西西安 710300)

        數(shù)字系統(tǒng)的設(shè)計和實現(xiàn)離不開CPLD 器件,CPLD 在制造完成后用戶可根據(jù)需要定義其邏輯功能。CPLD 以功能強大、開發(fā)過程投資少、開發(fā)工具智能化等特點成為硬件設(shè)計的首選方式之一[1]??刂撇竭M電機的運行要使用專門的驅(qū)動控制器,基于這個特點可以將步進電機和現(xiàn)代數(shù)字控制技術(shù)結(jié)合。本設(shè)計通過Verilog HDL 進行編程,在MAX+PLUSII 軟件環(huán)境下進行編譯并寫入CPLD,在綜合仿真實驗儀上實現(xiàn)對步進電機的運行控制和工作模式選擇。

        1 軟件開發(fā)環(huán)境

        CPLD 有Synplify、Synopsps、Quartus II、ZLGICD、ISD51 和MAX+PLUSII 等軟件開發(fā)環(huán)境。該設(shè)計采用的是Altera 公司提供的MAX+PLUSII 開發(fā)集成環(huán)境。MAX+PLUSII 開發(fā)系統(tǒng)具有開放的界面,設(shè)計時可調(diào)用豐富的設(shè)計庫和模塊化工具,支持多種硬件描述語言[2]。MAX+PLUSII 提供了一種與系統(tǒng)結(jié)構(gòu)無關(guān)的設(shè)計環(huán)境,在MAX+PLUSII 上可以進行步進電機控制系統(tǒng)的輸入/輸出設(shè)計,以及功能和時序仿真,最后編譯下載整個流程。MAX+PLUSII 軟件設(shè)計流程如圖1 所示。

        圖1 MAX+PLUSII軟件設(shè)計流程

        2 開發(fā)設(shè)計語言

        該設(shè)計采用Verilog HDL 進行編程,以控制步進電機。Verilog HDL 是在C 語言基礎(chǔ)上發(fā)展起來的,專門面向硬件與系統(tǒng)設(shè)計的描述語言。如果前期具備C 語言的編程基礎(chǔ),可以在較短時間內(nèi)學(xué)習(xí)和掌握。Verilog 以模塊集合的形式來描述硬件數(shù)字系統(tǒng),模塊之間并行運行,可以使用高層模塊調(diào)用其他模塊。Verilog 還提供了完善的模擬功能驗證,對每個語法結(jié)構(gòu)都定義了清晰的仿真語義,通過建立數(shù)學(xué)模型能夠用Verilog 仿真器對步進電機控制系統(tǒng)進行驗證[3]。

        Verilog HDL 主要有自下而上和自上而下兩種設(shè)計方法[4]。自下而上的設(shè)計是從已有的基本單元出發(fā),設(shè)計樹上末端的單元可以是已經(jīng)制造出的單元或者是其他項目開發(fā)好的單元,這種方法容易實現(xiàn)各個子模塊電路,但對系統(tǒng)的整體性不好,是比較傳統(tǒng)的設(shè)計方法。自上而下的方法是從總體出發(fā),將系統(tǒng)先劃分為若干基本功能單元,對基本功能單元再次進行劃分,直到可以用EDA 元件庫中的元件實現(xiàn)為止。這種設(shè)計方法使復(fù)雜數(shù)字電路的設(shè)計成為可能,避免了不必要的重復(fù)設(shè)計,但由于一開始考慮系統(tǒng)的整體性,得到的最小單元可能不標(biāo)準(zhǔn)。步進電機控制系統(tǒng)設(shè)計采用兩種方法相結(jié)合的綜合設(shè)計法,在高層系統(tǒng)通過自上而下的設(shè)計方法來實現(xiàn),對整體系統(tǒng)進行劃分和管理,在低層系統(tǒng)使用自下而上的方法從數(shù)據(jù)庫中調(diào)用已有的單元設(shè)計。這種綜合設(shè)計法更適合復(fù)雜數(shù)字邏輯電路和系統(tǒng)的設(shè)計,設(shè)計完成后還可以使用矢量測試庫進行測試。

        3 硬件開發(fā)環(huán)境

        該設(shè)計采用的是Altera 公司MAX 7000S 系列CPLD,型號為EPM7128SLC84-15。MAX7000 系列器件在國內(nèi)使用較多,且與其他MAX 系列器件在結(jié)構(gòu)功能上十分相似,可以替換使用。MAX7000 系列器件利用內(nèi)部的EEPROM 單元實現(xiàn)各種不同的組合邏輯與時序邏輯。其具有SSI、MSI、LSI、PAL、GAL等中低規(guī)模的邏輯電路的所有功能[5]。

        仿真實驗儀DP-MCU/Altera 采用EPM7128S 系列CPLD 作為目標(biāo)CPLD。該仿真實驗儀的優(yōu)點是集合了具有ISP 功能的單片機和CPLD,可以同時完成不同的仿真模擬。該仿真實驗儀具有比較寬的頻率范圍,具有兩個可選節(jié)電模式。因為采用了靜態(tài)設(shè)計,因此支持操作時斷點恢復(fù)運行,防止用戶數(shù)據(jù)的丟失,并且用戶提供了豐富的外圍器件和設(shè)備接口。步進電機與驅(qū)動模塊及仿真儀的連接如圖2 所示。

        圖2 仿真儀通過驅(qū)動芯片與步進電機連接

        4 步進電機驅(qū)動控制

        步進電機通過環(huán)形脈沖分配器同步電脈沖信號,并能將電脈沖信號轉(zhuǎn)換成角位移或線位移。當(dāng)空間中按一定規(guī)律布置勵磁繞組順序和直流電接通后,轉(zhuǎn)子在旋轉(zhuǎn)磁場的作用下會轉(zhuǎn)過一定角度,轉(zhuǎn)過的角度大小和輸入的脈沖數(shù)成正比,控制發(fā)送脈沖的速度就可以控制步進電機的轉(zhuǎn)速[6]。步進電機主要由脈沖發(fā)生單元、脈沖分配單元、功率驅(qū)動單元和反饋單元這幾部分組成,步進電機采用脈沖驅(qū)動的方式,過程中需要使用步進電機驅(qū)動控制器,基于這個特點可以將步進電機和現(xiàn)代數(shù)字控制技術(shù)結(jié)合,通過CPLD 對步進電機實現(xiàn)運行控制。

        該設(shè)計選取25BY4801 型永磁式步進電機作為控制對象,驅(qū)動電壓為DC 5 V,相電流為0.5 A。選用的步進電機驅(qū)動芯片為ULN2003A,其電路具有電流增益高(大于1 000)、帶負(fù)載能力強(輸出電流大于500 mA)、溫度范圍寬(-40~85 ℃)等特點。將步進電機的信號輸入端連接到CPLD 控制器的信號輸出端,就可以根據(jù)所編寫的程序控制步進電機采用波驅(qū)動、半步驅(qū)動或全步工作模式。程序采用模塊化設(shè)計方式,TOP-DOWN 的設(shè)計方法。即先設(shè)計出頂層模塊(驅(qū)動模塊),然后設(shè)計頂層模塊中所需要的各功能模塊,頂層模塊的功能是調(diào)用各底層模塊[7-8]。

        4.1 四相四拍控制

        該設(shè)計方案利用脈沖數(shù)量進行計數(shù),產(chǎn)生兩個輸出信號,然后通過譯碼成為4 個信號,即為控制步進電機旋轉(zhuǎn)的信號。整個程序分為4 個模塊:計數(shù)器模塊、譯碼器模塊、脈沖產(chǎn)生模塊及步進電機驅(qū)動模塊(頂層模塊)。四相四拍控制原理如圖3 所示。

        圖3 四相四拍控制原理圖

        計數(shù)器模塊是在時鐘脈沖下,將脈沖轉(zhuǎn)化為兩個輸出信號,即每當(dāng)脈沖上升沿,計數(shù)器計數(shù)一次。正轉(zhuǎn)時q1、q2此并列兩位進行每次加1 計數(shù),忽略進位,即以00→01→10→11→00 進行循環(huán)計數(shù);反轉(zhuǎn)時q1、q2此并列兩位進行每次減1 計數(shù),忽略借位,即以00→11→10→01→00 進行循環(huán)計數(shù)。計數(shù)器模塊仿真波形如圖4 所示。

        圖4 計數(shù)器模塊仿真波形圖

        譯碼器模塊將計數(shù)器模塊產(chǎn)生的q1、q2兩個信號通過譯碼輸出 為out1、out2、out3、out44 個輸出信號。并根據(jù)q1、q2的數(shù)據(jù)(0、1)的循環(huán)變換,out1、out2、out3、out4進行循環(huán)移位。四相單四拍定義為,正轉(zhuǎn)輸入信號以1000→0100→0010→0001→1000 進行循環(huán),反轉(zhuǎn)輸入信號以1000→0001→0010→0100→1000 進行循環(huán)。四相雙四拍定義為,正轉(zhuǎn)輸入信號以1100→0110→0011→1001→1100 進行循環(huán),反轉(zhuǎn)輸入信號以1100→1001→0011→0110→1100 進行循環(huán)。四相雙四拍仿真如圖5 所示。

        圖5 譯碼器模塊仿真波形圖

        脈沖產(chǎn)生模塊將系統(tǒng)脈沖分頻,進而產(chǎn)生所需要頻率的脈沖,并通過幾次分頻分得不同的頻率脈沖,進而能控制步進電機的轉(zhuǎn)速。設(shè)計所利用的頻率為11.059 26 MHz的系統(tǒng)時鐘源,但因11.059 26 MHz數(shù)據(jù)量較大,非常容易造成MAX+PLUSII 軟件的不響應(yīng),故用100 Hz 模擬其仿真頻率。文中的仿真時鐘頻率全部為100 Hz。步進電機驅(qū)動模塊是調(diào)用上述各個模塊,進而控制步進電機,并定義輸入、輸出端口。步進電機驅(qū)動模塊仿真如圖6 所示。

        圖6 步進電機驅(qū)動模塊仿真波形圖

        4.2 四相八拍控制

        此方案預(yù)先給定4 個輸出信號(正轉(zhuǎn)為一種方式,反轉(zhuǎn)為一種方式),然后在控制信號下進行信號的循環(huán)移位,即可以將信號按一定循環(huán)方式發(fā)送到步進電機,進而達到了控制步進電機的目的[9-11]。該控制方案將程序分為了半步驅(qū)動模塊、脈沖產(chǎn)生模塊和步進電機驅(qū)動3 個模塊,原理如圖7 所示。

        圖7 四相八拍控制原理圖

        在半步驅(qū)動模塊中,設(shè)定其正轉(zhuǎn)輸入信號順序為:1000→1100→0100→0110→0010→0011→0001→1001→1000,反轉(zhuǎn)為:1000→1001→0001→0011→0010→0110→0100→1100→1000。給定初始信號,然后根據(jù)脈沖設(shè)定,進行相應(yīng)的信號移位,使信號按上述方式循環(huán),即可使步進電機為四相八拍式旋轉(zhuǎn),半步驅(qū)動模塊波形仿真如圖8 所示。

        圖8 半步驅(qū)動模塊仿真波形圖

        脈沖產(chǎn)生模塊同四相四拍控制,在此不再贅述。步進電機驅(qū)動模塊是調(diào)用上述各模塊,進而控制步進電機,并定義輸入、輸出端口,驅(qū)動模塊仿真波形如圖9 所示。

        圖9 步進電機驅(qū)動模塊仿真波形圖

        4.3 模式選擇

        在四相八拍控制中增加四相單四拍和四相雙四拍控制,并設(shè)定模式選擇按鍵就可對各種控制方式進行選擇。模式選擇將全系統(tǒng)分為脈沖產(chǎn)生、脈沖控制和頂層控制3 個模塊。

        脈沖控制模塊包括波驅(qū)動模式、半步驅(qū)動模式、全步模式3 個模塊。上述3 種模式分別控制步進電機為四相單四拍、四向八拍和四相雙四拍轉(zhuǎn)動。這些模式的選擇與轉(zhuǎn)換都通過兩個模式選擇鍵進行控制。脈沖產(chǎn)生模塊如前文所述。頂層模塊即步進電機驅(qū)動程序模塊,包括有輸出選擇、驅(qū)動模式選擇、復(fù)位控制、方向控制。根據(jù)系統(tǒng)控制要求,頂層模塊負(fù)責(zé)調(diào)用上述模塊。當(dāng)mode=00 時,輸出為波驅(qū)動模式;mode=01 時,輸出為全步模式;mode=10 時,輸出為半步模式;mode=11 時,err=1,報錯并輸出高阻態(tài)[12-14]。

        輸入端口dir 控制正反轉(zhuǎn),key-in1、key-in2 控制加減速,clr 代表復(fù)位分別連接到仿真儀上的K1、K2、K3、K4 按鍵;clk 為時鐘脈沖輸入連接到仿真儀上的時鐘信號源;mode0、mode1 代表模式選擇連接到仿真儀上的K5、K6 按鍵。將輸入輸出管腳鎖定在CPLD 上,并將程序下載到CPLD 中,將仿真試驗儀與步進電機相連接進行仿真。通電后步進電機先按四相單四拍方式進行轉(zhuǎn)動,按下所設(shè)定的按鍵后就可以對步進電機的正反轉(zhuǎn)、加減速、運行模式進行控制和選擇[15-16]。

        5 結(jié)束語

        常用的步進電機控制系統(tǒng)一般采用微機控制,這種微機控制的方法編程量大,限制了步進電機轉(zhuǎn)速的提升和運行控制,同時這種控制方式在電磁干擾較嚴(yán)重的車間抗干擾性能力也較差,可靠性不高。CPLD 是一種可進行多次編程的超大規(guī)模數(shù)字集成電路,其集成了相當(dāng)規(guī)模的標(biāo)準(zhǔn)邏輯模塊,只要利用EDA 工具將所設(shè)計的數(shù)字系統(tǒng)的功能描述出來后編程到CPLD 內(nèi),就可以得到此系統(tǒng)的集成電路。在MAX+PLUSII 軟件環(huán)境下,用Verilog 語言對CPLD 進行編程,通過CPLD 對步進電機進行控制,控制系統(tǒng)采用模塊式設(shè)計方法,把各控制功能分別列于不同模塊,提高了控制系統(tǒng)的靈活性且擴展性良好,為步進電機低成本控制提供了一種新的設(shè)計思路和實現(xiàn)方法[17-19]。

        猜你喜歡
        信號系統(tǒng)設(shè)計
        Smartflower POP 一體式光伏系統(tǒng)
        信號
        鴨綠江(2021年35期)2021-04-19 12:24:18
        WJ-700無人機系統(tǒng)
        ZC系列無人機遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        完形填空二則
        瞞天過?!律O(shè)計萌到家
        基于FPGA的多功能信號發(fā)生器的設(shè)計
        電子制作(2018年11期)2018-08-04 03:25:42
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        設(shè)計秀
        海峽姐妹(2017年7期)2017-07-31 19:08:17
        有種設(shè)計叫而專
        Coco薇(2017年5期)2017-06-05 08:53:16
        亚洲春色在线视频| 中文字幕高清一区二区| 久久精品国产亚洲av天美| 免费无遮挡无码永久在线观看视频| 无码午夜成人1000部免费视频| 国产成人免费a在线视频| 国产最新一区二区三区| 亚洲综合精品亚洲国产成人| 一本一道久久综合久久| 在线免费毛片| 日本红怡院东京热加勒比| 人妻熟女翘屁股中文字幕| 中文字幕乱偷无码av先锋蜜桃| 精品国内自产拍在线视频| 亚洲处破女av一区二区| 偷拍一区二区视频播放器| 久久久天堂国产精品女人| 亚洲高潮喷水中文字幕| 久久国产精品精品国产色| 摸丰满大乳奶水www免费| 久久久久亚洲av无码专区桃色| 校花高潮一区日韩| 国产一区二区三免费视频| 99国产精品自在自在久久| 久久久久久久久久久熟女AV| 亚洲国产都市一区二区| 色欲av永久无码精品无码蜜桃| 18禁高潮出水呻吟娇喘蜜芽 | 国产av综合一区二区三区最新| 亚洲一区久久蜜臀av| 亚洲av无码乱码国产精品久久| 国产亚洲精久久久久久无码77777| 五月激情狠狠开心五月| 亚洲色图三级在线观看| 美女又色又爽视频免费| 在线av野外国语对白| 深夜福利国产精品中文字幕| 久久www免费人成精品| 欧美在线观看一区二区| 日本女优爱爱中文字幕| 国产中文三级全黄|