一種利用計算機定時系統控制步進電機的方法
2023-05-31 16:52:06
專利名稱:一種利用計算機定時系統控制步進電機的方法
技術領域:
本發明涉及計算機應用技術,尤其涉及利用計算機控制電機的技術。
計算機在各個領域都得到廣泛應用,但在一般情況下,計算機都不直接配備有供用戶使用的控制某設備的輸出控制埠。
目前,在利用計算機控制步進電機中,有以下幾種方式①在計算機內加裝一塊控制卡。常見的控制卡是在計算機的數據總線上擴充一片並行接口晶片,通過計算機不斷向其寫入數據,來達到產生控制步進電機的所需方波脈衝序列的目的。這一方法,在計算機對步進電機進行控制時,幾乎不能做任何其它的工作,待到每次步進結束後,計算機才能進行數據採集、處理工作。這不僅浪費了大量的CPU時間,而且在需要同時快速數據採集、處理的時候,就無法滿足使用的需要。
②控制卡是採用光電編碼控制方式。就是即在計算機啟動步進電機後,當電機每轉動設定的步進角度時,即向計算機輸入一個位置信號;計算機每次在檢測到該信號後即進行數據採集、處理工作,這樣就可以使計算機的數據採集、處理與步進電機的轉動同步進行。這種控制方式雖然效率也較高,但成本也較高。
③此外,還有一些使用者自己製作控制卡,並在卡上擴充多路分頻計數器。通過計算機對其埠寄存器的初始化,使其輸出所要求頻率和持續時間的方波脈衝序列,從而達到對步進電機進行控制的目的。
以上幾種方式,都需在計算機內擴充控制卡,這樣不僅擠佔機內空間,增加了系統成本,而且在有些情況下很難滿足要求。
本發明的目的就在於克服上述方式所存在的缺點,在不影響計算機各部分的正常工作和不新增任何硬體的前提下,去有效控制步進電機的轉動。
本發明的目的是這樣實現的,通過適當的埠設置和軟體修改,即可使計算機系統在處理其他工作的同時,輸出任意頻率和持續的方波脈衝序列。
下面結合附圖和實施例詳細說明
圖1為本定時系統電原理圖;圖2為本發明程序圖。
其中Y-揚聲器,B-步進電機;1-初始化設置日時鐘中斷頻率,2-設置電機驅動頻率,3-讀取日時鐘,4-輸出脈衝序列啟動步進電機,5-數據採集,6-數據處理,7-結果顯示,8-檢測完畢,9-停止脈衝輸出,10-恢復日時鐘中斷頻率,11-讀取實時鐘,12-恢復日時鐘,13-結束,14-讀取時間,15-設定時間到。
由附圖1可知,本發明是①將計算機定時系統中的內接揚聲器Y換接為步進電機B。現在的計算機一般配有音效卡及外接揚聲器,原來的SPK信號用處不大。將原來的SPK線取下,在該處另接兩根輸出線,作為控制步進電機B用。通過設置計算機定時系統通道2的計數初值,使其輸出所要求頻率的方波系列。
②將計算機定時系統通道0設定為方式3工作,並將計數初值由原來的0改為1193。由於計算機的日時鐘是以18.2次/秒向CPU申請中斷,因而計算機的日時鐘是以每54.9毫秒為單位進行計數的,這就決定了計算機的日時鐘的時間解析度不可能小於54.9毫秒。如果用這種時間解析度來度量頻率為幾百赫茲、周期為幾毫秒的方波脈衝序列的持續時間即方波脈衝的數目,必然會產生較大的誤差為此,本發明根據計算機時鐘系統的特點,重新設定上述的日時鐘的中斷頻率,從而提高系統的時間解析度。其中初值0的對應中斷頻率為1.1931816MHz/65536=18.2Hz,1193的中斷頻率為1.1931816MHz/1193=1000Hz。從而將計算機系統的時間解析度由54.9ms提高到1ms,以實現對通道2輸出脈衝數目的精確度量。
③通過修改後的計算機日時鐘系統對SPK DATA信號高電平維持時間的精確控制,從而實現對步進電機轉動角度的精確控制。
④計算機在起動步進電機B轉動後,立即重複進行數據採集、數據處理、結果顯示及延時等待工作以保證上述每個動作周期的時間精確一致,這樣在計算機完成設定數目的上述每個動作後,步進電機B也精確轉動到所設定的角度。
⑤在控制完成後,需要恢復計算機的時鐘計數頻率。將計算機定時系統0通道設定為方式3工作,並將計數初始值設置為0。同時,讀取計算機CMOS是實時鐘時間,將其寫入日時鐘時間存儲寄存器。
⑥本發明的程序是a初始化設置日時鐘中斷頻率1→設置電機驅動頻率2→讀取日時鐘3→輸出脈衝序列啟動步進電機4→數據採集5→數據處理6→結果顯示7→檢測完畢8 停止脈衝輸出9→恢復日時鐘中斷頻率10→讀取實時鐘11→恢復日時鐘12→結束13。
b檢測完畢8 讀取時間14→設定時間15 數據採集5。
c設定時間到15 讀取時間14。
本發明具有以下優點①修改後的計算機及其時鐘系統通過對SPK DATA信號高電平維持時間的精確控制,實現了對步進電機轉動角度的精確控制。
②計算機在啟動步進電機轉動後,可立即重複進行數據採集、數據處理、結果顯示及延時等待工作,以保證每個數據採集、數據處理及結果顯示周期的時間精確一致,從而達到在計算機採集、處理數據及顯示結果的同時,步進電機精確轉動到所設定的角度。
③計算機無需增加任何硬體,因此成本低,容易實現。
總之,由於本發明性能價格比高,因此有著廣闊的應用前景。
權利要求
1.一種利用計算機定時系統控制步進電機的方法,其特徵是①將計算機定時系統中的內接揚聲器(Y)換接為步進電機(B);②將計算機定時系統通道0設定為方式3工作,並將計數初值由原來的0改為1193;③在控制完成後,恢復計算機的時鐘計數頻率,即將計算機定時系統0通道設定為方式3工作,並將計數初值設置為0,同時讀取計算機CMOS是實時鐘時間,將其寫入日時鐘存儲寄存器。
2.按權利要求1所述的一種利用計算機定時系統控制步時電機的方法,其特徵是程序為①初始化設置日時鐘中斷頻率(1)→設置電機驅動頻率(2)→讀取日時鐘(3)→輸出脈衝序列啟動步進電機(4)→數據採集(5)→數據處理(6)→結果顯示(7)→檢測完畢(8) 停止脈衝輸出(9)→恢復日時鐘中斷頻率(10)→讀取實時鐘(11)→恢復日時鐘(12)→結束(13)②檢測完畢(8) 讀取時間(14)→設定時間(15) 數據採集(5);③設定時間到(15) 讀取時間(14)。
全文摘要
本發明公開了一種利用計算機定時系統控制步進電機的方法,涉及計算機應用技術,尤其涉及利用計算機控制電機的技術。為了在不影響計算機各部的正常工作和不新增任何硬體的前提下,去有效控制步進電機的轉動。本發明的目的是通過適當的埠設置和軟體修改來實現的,即主要是將定時系統中的揚聲器換接為步進電機,將計算機定時系統通道O設定為方式3工作,並將計數初值由原來的O改為1193,將計算機系統的時間解析度由54.9ms提高到1ms,以實現對通道2輸出脈衝數目的精確度量。由於其性能價格比高,因此有著廣闊的應用前景。
文檔編號H02P8/00GK1299182SQ99120110
公開日2001年6月13日 申請日期1999年12月8日 優先權日1999年12月8日
發明者程建政, 蘭從慶 申請人:中國科學院武漢物理與數學研究所