《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于Proteus的PC機對步進電機運動控制仿真
基于Proteus的PC機對步進電機運動控制仿真
摘要: 一種基于Proteus仿真實現的上位機對下位機控制對象—步進電機的控制。上位機軟件由VB開發,下位機由Proteus設計并進行仿真,期間還要采用虛擬串口(VSPD),用于模擬一根串口通信線,實現上位機與下位機的串口通信,最終實現上位機(VB)對下位機(Proteus)中步進電機的實時控制。為相關方面PC機控制步進電機的學習開發、實際應用,提供一種有效可行的仿真方法。
Abstract:
Key words :

肖云茂 孫毅 張華興

1 引言
      
步進電機在簡單的開環工作方式下能夠達到相當高的定位精度,且低速運行時又可輸出很大的轉矩,因此在運動控制中得到了廣泛的應用[1]。PC 機步進電機控制系統,應用于多個領域如數控機床、機器人、激光加工設備等各種儀器設備。一個完整的PC 機步進電機控制系統,下位機與PC 機構成主從式控制結構:PC 機負責人機交互界面的管理,包括鍵盤和鼠標的管理、系統狀態的顯示、控制指令的發送等部分工作;下位機完成運動控制的所有細節,包括脈沖和方向信號的輸出、自動升降速的處理等部分工作。實際下位機開發過程復雜,主體包含硬件電路設計和控制程序設計兩方面。控制程序設計過程需要軟件調試、硬件調試、系統調試3 個過程。軟件調試一般比較容易進行,但如果要進行牽涉硬件的硬件調試或系統調試,包括元器件選用、PCB 板制作、元器件焊接、程序燒錄環節,其中任一環節的疏漏都可能造成程序調試失真。通過Proteus 中各虛擬儀器所構建硬件電路,調試所設計程序的控制效果,達到虛擬硬件調試、虛擬系統調試程序的目的,為PC 機步進電機系統開發提供有效的理論實踐依據,避免因硬件電路設計過程錯誤引起的程序異常或硬件實驗條件限制影響開發。
      
Proteus 是英國Labcenter 公司開發的電路分析與實物仿真軟件實現了單片機仿真和SPICE 電路仿真相結合,具有模擬電路仿真、數字電路仿真、單片機及其外圍電路組成的系統的仿真、RS232 動態仿真、I2C 調試器、SPI 調試器、鍵盤、LCD、虛擬儀器、示波器、邏輯分析儀系統仿真的功能;支持主流單片機系統的仿真功能;在硬件仿真系統中具有全速、單步、設置斷點等調試功能,同時可以觀察各個變量、寄存器等的當前狀態;支持第三方的軟件編譯和調試環境,如Keil uVision2、MTLAB 等軟件。由于Proteus 軟件本身的優良仿真特性,所設計程序能于Proteus 中完成仿真過程的同時,即基本證明了所設計程序的準確性,從而基本完成了系統開發中的控制程序設計部分,并為系統硬件電路設計提供指導意義。

2 設計要求
      
以構建基于Proteus 的PC 機對步進電機運動控制仿真系統為例,上位機人機交互界面由VB 開發完成;下位機硬件電路由Proteus 中各虛擬儀器所構建完成;下位機控制程序由Keil uVision2開發完成;期間還要采用虛擬串口(VSPD),用于模擬一根串口通信線,實現上位機與下位機的串口通信,最終實現上位機(VB)對下位機(Proteus)中步進電機的實時控制過程。

2.1 系統總體框圖
      
上位機通過RS232C 串口通信方式實現對下位機下達指令,下位機AT89C51 單片機根據接受到的指令,按一定的時序產生A、B、C、D 四相控制信號,分別實現單拍、雙拍、單雙拍的三種步進電機驅動方式。在實際運用中,單片機與步進電機之間一般還需要信號隔離、放大集成電路。下位機部分增設顯示功能,由LCD1602 來完成實時地顯示步進電機運動狀態。Proteus 的仿真電路與實際電路可以有一定的區別,考慮到仿真的實踐性驗證,設計出實際仿真適用的整個控制模塊,如圖1 所示。



2.2 下位機仿真系統結構設計
      
在實際運用中,單片機控制步進電機需要隔離、放大模塊。在仿真時該控制模塊可省略,直接將步進電機與AT89C51 相連接,也可在仿真電路中使用,因這里主要是為了檢測脈沖的控制效果,所以省去隔離、放大電路。
      
串口通信部分[3],非仿真控制中,上位機電平是RS232C 電平,而下位機是TTL 電平,不能直接通信的,所以增加一個電平轉換芯片MAX232。在實際仿真中,由于上下位機都是在PC 中進行,所以無需電平轉換芯片,否則會發生錯誤。實際仿真時,串口的2、3 位直接與AT89C51 的RXD、TXD 直接對接就可以了。
      
LCD 部分顯示電路,當單片機驅動LCD 時,由于信號的傳輸過程會有損耗,所以在實際應用驅動LCD 時,常采用信號增益模塊加以驅動。仿真過程無信號損耗,系統外部晶振電路,復位電路等在仿真過程可以省略。

綜上所述,在搭建Proteus 下位機系統時,隔離放大模塊、LCD 驅動模塊、外部晶振電路和復位電路可有可無,而RS232 電平與TTL 電平轉換模塊必需省去。

3 軟件設計

3.1 下位機軟件設計
      
下位機軟件由Keil uVision2 開發完成。程序本身通用于仿真Proteus、實際步進電機控制系統。下位機程序包括:初始化程序,串行中斷程序,定時器T0 中斷程序,LCD 顯示函數(含幾條控制命令子函數)及程序主函數體五部分構成。程序設計流程,如圖2 所示。


      
程序設計中要注意設置串行中斷的優先級應高于T0 中斷,因為默認的ET0 中斷優先級是高于串行中斷ES 的[6],使用語句PT0=0;//低優先級,PS=1;//高優先級即可,因為只要當串行通信優先級最高時,才能實現上位機對下位機的實時控制,十分重要。串行中斷中需應用字符型數據與ASCII 碼轉化的算法。因為MSComm1.Output 中送出去的是字符型數據,而AT89C51 會把接收到的字符數據轉化成ASCII 碼,這樣如果上位機發送一個數據“0”,而下位機轉化成ASCII 碼后即變成了“48”,顯然這不是事先跟下位機約定的控制指令,所以需要對接收到的指令數據做一定的計算處理,然后再交給CPU 進行判斷。因為上位機的控制指令數據只有七個,使用語句if(temp<=57 & temp>=48)temp=temp-0x30;即可實現。整個串行中斷程序設計如下:

      static void com_isr(void)interrupt SIO_VECTOR using 1
      {
      if(RI)//RI=0 申請串行中斷
      {
      temp=SBUF;
      //從接收寄存器中讀取指令數據
      if(temp<=57 & temp>=48)
      //判斷指令寄存器數據
      temp=temp-0x30;
      //計算指令寄存器數據
      RI=0;
      //RI=0 為下一次串行中斷做準備
      k=0;//為顯示函數執行條件
      return;
      }
      }
      
設計T0 中斷程序時,中段時間(它由定時計數器的初始值、工作方式共同決定)與中斷次數關鍵內容,決定了驅動電機脈沖頻率的變化,即決定了步進電機轉速,需要設計一個合理的轉速方便記錄采集步進電機數據,觀察單拍、雙拍、單雙拍驅動方式下電機的運動狀態。
      
LCD 顯示程序設計中因為“MODE:”是始終顯示的,所以可以在程序初始化的時候就設計好LCD 的“MODE:”顯示,然后再根據數據指令顯示對應的步進電機運動狀態,這樣能節省MCU的處理時間,提高仿真系統的實時控能力。主程序體中完成最終接受來的上位機指令的處理,進而完成上位機控制步進電機的整個過程。
      
其中對應控制指令N,各個器件的狀態。每一個N 值都意味著一條控制指令,不同N 值,步進電機、LCD、上位機Text、P1 口脈沖[5]會有對應的狀態內容。具體如表1 所示。

3.2 上位機軟件設計
      
上位機軟件用VB 進行開發。采用Microsoft 公司提供的MicrosoftCommunications Control 串行通信編程的ActiveX 控件,封裝了完整的所需的API 函數,為應用程序提供了通過串行口收發數據的簡便方法。只要設置Settings 屬性包括返回波特率、奇偶校驗、數據位、停止位、對應串口等參數。然后設計對應的事件處理,以達到目標通信控制效果。程序主要開發對下位機發送的七條指令及Text 電機狀態顯示,實現上位機控制。

4 系統仿真運行效果及仿真分析
      
對應的單拍正轉、雙拍正轉、單雙拍正轉種情況下由虛擬示波器(OSCILLOSCOPE)采集的脈沖驅動信號,如圖3 所示。結合表1 的P1 口脈沖,剔除正常存在的毛刺與抖動,與實際驅動所需的對應脈沖信號是完全吻合的。
      
下位機在接收到單拍正轉對應圖3(a)指令后步進電機的相應運動過程,如圖4 所示。此處,虛擬步進電機的虛擬步距角為90 度,圖中A、B、C、D 四相紅代表高電平,藍代表低電平。圖3 與圖4 仿真過程記錄的信息,與實際設計程序控制預期運行結果完全吻合,仿真效果明顯可信。




如圖5 所示,下位機在運行的條件下,上位機Option 單拍,單擊正轉按鈕,即上位機向下位機發送指令“1”。其中的virtualTerminal(虛擬終端),是Proteus 軟件的輔助分析工具,每次串口通信的指令將會被記錄下來。步進電機會根據P1 的脈沖形式做對應的運動,Proteus 中LCD、上位機Text 正確顯示步進電機運動狀態。


5 結束語
      
提出了一種基于Proteus 的PC 機對步進電機運動控制仿真方法。所構建的仿真系統能很好的實現PC 機對步進電機的同步控制與狀態顯示整體過程,通過程序設計開發與仿真系統無縫連接,實現了程序所預期要求的控制過程,并給出了豐富的實驗觀察接口,仿真實現了程序硬件調試、系統調試過程。

參考文獻
      
1 孫耀杰,左賀,康龍云,曹秉剛,史維祥. 抑制混合式步進電機轉矩波動的時變重復控制[J]. 中國電機工程學報,2004,24(11):183~187
2 孟武勝,李亮. 基于AT89C52 單片機的步進電機控制系統設計[J]. 測控技術,2006,25(12):46~51
3 張俊杰,李世其,熊友軍. 基于數據手套的機械手控制技術應用[J]. 計算機應用研究,2006(6):170~175
4 李河清,侯志祥. 基于串行通信的步進電機小型集散控制系統[J].計算機工程,2007,33(10):258~260
5 金建新,鄭虎子. 16 位單片機控制混合式步進電機的研究[J]. 機械設計與制造,2007(9):94~96
6 李全利,遲榮強. 單片機原理及接口技術[M]. 北京:高等教育出版社,2004(1)
http://www.chuandong.com/publish/tech/thesis/2009/5/thesis_0_8_7298.html

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产亚洲精品v| 亚洲一卡久久| 国产精品丝袜xxxxxxx| 欧美日韩成人综合| 毛片一区二区三区| 久久女同精品一区二区| 欧美在线影院在线视频| 亚洲综合清纯丝袜自拍| 一区二区欧美在线观看| av成人免费在线| 日韩图片一区| 一本一本久久| 亚洲性感激情| 亚洲男女毛片无遮挡| 亚洲免费小视频| 亚洲欧美国产不卡| 亚洲欧美另类久久久精品2019| 亚洲欧美国产另类| 欧美一级视频免费在线观看| 欧美怡红院视频| 欧美主播一区二区三区美女 久久精品人 | 99日韩精品| 一本一本久久a久久精品综合麻豆| 亚洲美女91| 一区二区日韩伦理片| 亚洲视频综合在线| 亚洲欧美电影院| 欧美淫片网站| 亚洲国产精品久久久久秋霞蜜臀| 91久久精品www人人做人人爽| 亚洲人线精品午夜| 一本色道久久综合亚洲精品婷婷| 亚洲午夜极品| 欧美一区二区视频在线| 久久亚洲精品中文字幕冲田杏梨| 嫩草影视亚洲| 欧美日韩亚洲免费| 国产麻豆9l精品三级站| 国产在线高清精品| 亚洲国产精品成人精品| 99精品欧美一区二区三区| 亚洲小说区图片区| 久久狠狠亚洲综合| 99精品福利视频| 午夜精品久久久99热福利| 久久久久九九九九| 欧美黄色片免费观看| 欧美视频在线看| 国产自产女人91一区在线观看| 在线观看免费视频综合| 日韩一区二区免费看| 亚洲欧美综合国产精品一区| 亚洲国产三级在线| 中文在线一区| 久久久久成人精品| 欧美日韩成人精品| 国产欧美日韩在线| 亚洲国产精品传媒在线观看| 亚洲一区二区免费在线| 久久精品理论片| 亚洲一区二区精品| 久久久久久久久久久成人| 欧美日韩国产综合视频在线观看中文| 国产美女精品| 亚洲日韩中文字幕在线播放| 午夜精品在线| 99国产精品久久久| 久久国产乱子精品免费女| 欧美丰满高潮xxxx喷水动漫| 国产欧美日韩精品在线| 亚洲经典三级| 性欧美暴力猛交69hd| 亚洲毛片在线观看| 久久精品视频在线看| 欧美视频亚洲视频| 亚洲第一在线视频| 午夜欧美不卡精品aaaaa| 亚洲乱码一区二区| 久久久7777| 国产精品日韩欧美一区| 亚洲人精品午夜| 久久精品国产在热久久| 亚洲午夜精品网| 蜜桃av噜噜一区| 国产日韩视频| 正在播放欧美视频| 日韩视频一区二区三区在线播放免费观看| 欧美在线一二三区| 国产精品v亚洲精品v日韩精品 | 欧美综合二区| 亚洲影视在线| 欧美激情 亚洲a∨综合| 黄色日韩在线| 午夜精品久久久| 亚洲曰本av电影| 欧美日韩高清一区| ●精品国产综合乱码久久久久| 亚洲欧美另类在线观看| 在线亚洲电影| 欧美二区在线观看| 在线观看欧美成人| 欧美在线关看| 欧美一区二区在线视频| 国产精品二区在线观看| 99国产精品自拍| 亚洲精品视频在线看| 裸体素人女欧美日韩| 国产一区二区三区四区| 亚洲欧美区自拍先锋| 午夜精品久久久久久久| 欧美日韩中文字幕精品| 亚洲另类一区二区| aa级大片欧美三级| 欧美日本精品| 亚洲美女网站| 在线亚洲免费| 国产精品高潮呻吟久久av黑人| 亚洲精品自在久久| 宅男噜噜噜66一区二区66| 欧美精品电影在线| 亚洲欧洲日夜超级视频| 亚洲精品极品| 欧美韩国日本综合| 亚洲精品乱码| 亚洲最黄网站| 欧美视频二区| 亚洲午夜久久久久久尤物 | 免费欧美在线视频| 激情综合色综合久久| 亚洲国产精品毛片| 毛片一区二区| 亚洲国产一区二区a毛片| 亚洲免费播放| 欧美大片91| 日韩午夜中文字幕| 亚洲综合成人婷婷小说| 国产精品资源在线观看| 亚洲欧美综合v| 久久久久久久网| 亚洲国产精品成人综合| 夜夜夜久久久| 国产精品美女视频网站| 香蕉久久夜色精品国产| 久久色在线播放| 亚洲福利视频在线| 一本色道精品久久一区二区三区 | 欧美午夜激情小视频| 亚洲一区二区免费看| 久久狠狠亚洲综合| 在线播放亚洲| 99一区二区| 国产精品久久久久一区二区三区共| 亚洲欧美成人| 免费中文日韩| 一区二区三区视频在线播放| 久久国产精品黑丝| 在线免费观看日本一区| av成人手机在线| 国产精品专区h在线观看| 久久精品亚洲国产奇米99| 欧美久久久久| 亚洲在线一区二区三区| 久久久青草婷婷精品综合日韩| 亚洲国产二区| 午夜精品久久久久久久久| 国模精品一区二区三区色天香| 亚洲福利专区| 欧美日韩一区二区视频在线| 新67194成人永久网站| 欧美国产日韩亚洲一区| 亚洲一级在线| 男人的天堂成人在线| 宅男噜噜噜66一区二区66| 久久久久.com| 一本到12不卡视频在线dvd | 久久在线免费视频| 亚洲三级免费电影| 久久不射2019中文字幕| 亚洲人成亚洲人成在线观看| 欧美中文字幕视频| 亚洲精品一区二区三区樱花| 欧美亚洲免费电影| 亚洲国产另类久久精品| 欧美一二三视频| 亚洲精品视频在线| 久久欧美肥婆一二区| 一区二区三区偷拍| 欧美刺激性大交免费视频 | 久久精品麻豆| 国产精品家教| 亚洲精品久久久久久久久久久久久| 国产精品看片资源| 亚洲精品欧美专区| 国产一区日韩欧美| 亚洲欧美区自拍先锋| 91久久久久久| 久久综合999| 午夜精品在线看| 国产精品久久中文| 一区二区欧美日韩|