馬博強
遼寧錦州渤海大學工學院
基于CPLD的步進電機控制器
馬博強
遼寧錦州渤海大學工學院
控制步進電機的轉速與脈沖信號的頻率有著直接聯系,而且步進電機的轉角是由脈沖信號的個數決定的。通常的步進控制系統中包括的模塊有脈沖計數以及PWM模塊,但是產生的脈沖數目受到了限制。本文針對CPLD進行了步進電機控制器設計,并且給出了仿真波形圖。
步進電機控制器 CPLD 仿真
步進電機控制器的主要作用是把電脈沖信號向角位移進行轉變,電機中必須通過環形脈沖信號而且還需要功率驅動電路等。控制步進電機的運動,微處理器選擇單片機。通過集成電路能夠定位步進電機的位置以及控制步進電機的速度,會對脈沖信號的輸出頻率以及輸出的脈沖的數目進行控制。
步進電機驅動電源的框圖如圖1所示。將時鐘信號通過變頻信號源后就會形成脈沖信號,信號頻率及步進電機的速度可以進行調整。接著形成的脈沖信號就會通過脈沖分配器,在脈沖分配器中會按照具體的規定將具有一定的邏輯關系的脈沖信號增加到脈沖放大器中,從而確保步進電機能夠正常運行。

圖1 步進電機總體框架圖
計算機控制系統中的執行元件可以是步進電機,在控制系統中會應用到計數器,該器件的作用是增加變頻信號源,其次還用應用到GAL芯片,通過該芯片能夠對脈沖信號進行分配。
環形分配器主要是用來對脈沖序列進行分配,將信號傳送到功率放大器中生成放大的信號,再將放大的信號通過步進電機驅動電源輸入端。環形分配器可以分為兩類:1)軟環形分配器。這種環形分配器實現方法是計算機軟件設計。2)硬環形分配器。本文設計所選擇的環形分配器是軟環形分配器。將環形分配器中產生輸出信號通過功率放大器對信號進行放大,從而起到驅動四相步進電機的作用,本論文的功率放大器所選擇的型號是L298芯片。
單片機與CPLD的I/O端口進行連接是通過數據總線實現的,其中數據線規定為8位,3位地址線是能夠對8個字節的寄存器進行訪問。晶體振蕩器的作用是產生時鐘信號。單片機與CPLD連接圖如圖2所示。

圖2 單片機與CPLD連接圖
4.1 硬件設計
將CPLD的輸出控制信號分別與四個端口相互連接。當CPLD的控制信號在通過光電隔離之后會進入ULN2003A芯片中。如果CPLD的I/O端口的電平為低電平的時候,步進電機的負極就不再和地導通,在正負極之間不存在電壓差,從而CPLD的電機就不會運轉;如果CPLD的I/O口的電平是高電平的時候,步進電機的負極就會和地導通,而在正極和負極之間就會有12V的電壓差產生,從而電機才可以正常運轉。本文設計的步進電機控制的硬件分頻的實現是通過雙四位二進制計數器實現的,計數器的型號選擇的是74LS393N。其中頻率源的頻率是2048Hz,串聯計數器中的T觸發器,從而可以將頻率為2048Hz的實現分頻,得到的頻率的等比倍率等于2,通過硬件選擇器能夠將所得到的頻率傳送到CPLD的I/O端口中。步進電機控制器總電路圖如圖3所示。

圖3 步進電機控制器總電路圖
本文采用的電路是單電壓恒流功放電路,如圖4。

圖4 電壓恒流功放電路
4.2 軟件設計
本文軟件設計以及仿真實現所選擇的工具是QuartusII。QuartusII支持VHDL的硬件描述語言。軟件延時流程圖如圖5所示。

圖5 程序延時流程圖
電機控制器中的控制脈沖信號主要有復位(reset),模式(mode)以及使能(EN)和轉向(CTRL)組成,通過T觸發器鎖定信號的電平。其中用Q表示四個相位的輸出信號,Q所對應的3,2,1,0位用A,B,C,D表示。選擇八拍通電的順序,即為A-AB-B-BC-C-CD-DA-A,狀態轉換順序如表1所示。

表1 狀態轉換順序
系統仿真波形圖如圖6所示。圖6中的clk信號表示12M的時鐘信號,clk_step表示的是步進電機轉速時鐘信號。其中的A、B、C、D表示的是步進電機四相線圈通電信號。
結語:步進電機不可以和交直流電源直接進行連接,如果要進行連接必須通過專用的設備。本文主要實現了基于CPLD的步進電機控制器。進行了硬件設計以及軟件設計。設計部分給出了電路圖以及程序圖。
[1]李超彪,張赤斌,王興松,等.基于CPLD的步進電機細分復合控制器[J].中國機械工程, 2005, 16(18):1647-1650
[2]劉鵬,孫有峰,鄒杰,等.基于ARM+CPLD的步進電機控制系統設計[J].自動化與信息工程, 2011, 32(2):33-35
[3]梅陽鳳,李軍.基于單片機和CPLD的多軸步進電機控制系統設計[J]. 電腦開發與應用, 2011,24(2):55-57
[4]樂創自動化技術有限公司.基于CPLD的混合式步進電機驅動器設計[J]. 自動化信息, 2007(9):44-45

圖6 仿真波形圖