步進電動機控制系統上位機程序設計
宋受俊,劉衛國
(西北工業大學,陜西西安710072)
摘要:從整體上簡要介紹了步進電動機控制系統的結構及功能特點;詳細介紹了上位機軟件的功能及實現方法。所設計的控制程序具有友好的人機交互特性,可設定多種運行模式,可實時顯示系統運行狀態,且可應用于需要復雜控制算法及控制功能的使用場合。
關鍵詞:混合式步進電動機;微型計算機;MCs-51單片機;Visual Basic;MSComm控件
中圖分類號:TM383.6 文獻標識碼:A 文章編號:1004—7018(2008)04—0003—03
0引 言
隨著工業生產和計算機技術的日新月異,微型計算機在工業控制領域的應用越來越廣泛。利用微型計算機可以存儲更多的數據,進行復雜的運算,還可以通過多種形式對信息進行顯示。另外,還可以設計高效、友好的用戶界面,對系統進行控制。
本系統以單片機作為下位機而微機作為上位機,兩者通過RS-232串行接口進行通信。上位機設計了友好的用戶界面,以便對系統進行控制,下位機在得到控制命令之后,具體實施控制,并將系統的工作狀態信息傳給上位機進行顯示處理。
單片機采用80C51,而上位機是在windows xP操作系統下,用Visual Basic 6 0開發的監控軟件。在windows監控軟件開發中,如何實現微機與單片機之間的串行通信是一個較大的障礙,而且是設計的關鍵之一。系統利用了VB提供的特別便于串行口操作的電話機控件一MSComm,通過編寫較簡單的程序,完成了微機與單片機之間的串行通信。本文主要介紹了該系統上位機軟件的實現過程。
l系統特點簡述
系統的控制對象是混合式步進電動機,通過上位機軟件和下位機軟硬件的良好配合,系統具有以下特點:
(1)可以通過上位機控制界面進行控制,操作直觀、方便;
(2)可以驅動包括兩相、三相和五相混合式步進電動機在內的多種步進電動機,增強了系統的適用性;
(3)具有包括細分、升降頻、正反轉、預置頻率以及預置步等多種控制功能,拓寬了被控步進電動機的適用場合。
使用者可以通過上位機控制界面實時地觀測運行中的驅動系統的運行狀態,同時還可以通過上位機控制界面對系統進行控制,為了實現微機和單片機之間的數據交換,該系統使用了串行通訊方式。整個步進電動機控制系統如圖1所示。
2上位機程序總體流程
在上位機軟件編程語言的選擇上,著重考慮的是便于界面的編寫及可進行方便的串行通訊。為此,系統上位機使用了Visual Basic****語言編程環境,這種語言特別便于界面編寫,更重要的是,它具有一個特別方便的通信控件-JMSComm。MSComm控件的目的是為了讓用戶設計一個系統可以和串行端口進行溝通及傳送數據。
如上所述,上位機主要完成用戶的交互控制以及電機運行狀態的實時顯示,所以,上位機軟件首先要能夠根據用戶輸入的運行模式設定相應的變量及標志量;其次,還需要將下位機反饋的實時運行狀態以圖形化的方式顯示出來。圖2為其程序總體框架。
下面,將以窗口的設計為順序對上位機軟件的總體流程進行較詳細的闡述:用戶設定輸人窗口同時也是主界面窗口,其窗口設置如圖3所示。它包
括了程序運行的所有控制功能,具體表現為:
(1)在電機運行方式設定區,用戶可以通過選擇各個列表框中列出的選項設定被控電機的運行方式。其中,電機類型選擇包括:兩相、三相及五相混合式步進電動機;細分模式選擇包括:整步、二細分及四細分;正反轉選擇包括:正轉及反轉;預置模式選擇包括:預置頻率及預置步。
(2)在電機預置參數設定區,如果選擇的是預置頻率運行方式,用戶便可以在第一個文本框中輸入電機的運行頻率,這樣在啟動運行時,系統便會控制電機從突跳頻率逐漸加速到運行頻率,在停止運行時,系統會控制電機逐漸減速直到停機為止;如果選擇的是預置步運行方式,用戶便可以在第 |