步進電機啟停控制系統及控制方法
【專利摘要】一種步進電機啟停控制方法,上位機通過雙冗余CAN總線向步進電機控制單元發出控制信號,步進電機控制單元向步進電機發出控制信號,步進電機以穩定轉動頻率啟動,通過逐步提高轉動頻率的方式達到步進電機工作頻率;通過逐步降低轉動頻率的方式達到步進電機停止頻率;步進電機控制單元讀取編碼器反饋信號,步進電機控制單元向步進電機發出補償驅動信號。本發明步進電機啟停控制方法,實現了步進電機平穩啟停;通過在電機啟動和停止期間采用變頻處理方式和閉環補償驅動控制,解決了高頻轉動下電機丟步的問題,實現了多檔頻率電機驅動,滿足了多平臺的使用需求。
【專利說明】步進電機啟停控制系統及控制方法
【技術領域】
[0001] 本發明涉及一種電機控制方法,具體的說,是涉及一種步進電機啟停控制方法。
【背景技術】
[0002] 發射車控制系統采用基于雙冗余CAN總線的分布式控制方式,車控系統中的各控 制單元掛接在CAN總線上,在上位機的控制下,相互協調完成展車、起堅、回放、收車等流程 控制。
[0003] 流程控制是由一系列機構配套的液壓油缸動作完成,而用于操縱油缸動作的壓力 閥和流量閥的控制則是系統中的關鍵技術。車控系統中采用掛接在CAN總線上的步進電機 控制單元實現壓力閥和流量閥的控制,步進電機控制系統組成如圖1所示。
[0004] 在流程控制過程中,上位機通過總線發送電機驅動指令給步進電機控制單元,步 進電機對接收到的驅動指令進行解析,發送驅動碼給步進電機,在步進電機和閥的連接軸 的帶動下,控制壓力閥和流量閥的開口大小,實現對系統壓力和流量的控制,同時步進電機 轉動的方向和角度可以通過綁定在一起的編碼器反饋給控制單元。
[0005] 目前,系統控制步進電機只實現一檔頻率,且頻率較低,當頻率提高時,會出現電 機力矩不滿足要求而丟步的現象,對于需要快速起堅的發射要求已不能適應,影響了系統 的控制精度和流程執行時間。
【發明內容】
[0006] 針對上述現有技術中的不足,本發明提供一種防止步進電機啟停丟步,提高控制 精度,確保流程執行時間的步進電機啟停控制方法。
[0007] 本發明所采取的技術方案是:
[0008] -種步進電機啟停控制系統,包括上位機,上位機通過雙冗余CAN總線與步進電 機控制單元相連接,步進電機控制單元與步進電機相連接,步進電機設置有編碼器,編碼器 與步進電機控制單元相連接。
[0009] -種步進電機啟停控制方法,上位機通過雙冗余CAN總線向步進電機控制單元發 出控制信號,步進電機控制單元向步進電機發出控制信號,步進電機以穩定轉動頻率啟動, 通過逐步提高轉動頻率的方式達到步進電機工作頻率;通過逐步降低轉動頻率的方式達到 步進電機停止頻率;步進電機控制單元讀取編碼器反饋信號,步進電機控制單元向步進電 機發出補償驅動信號。
[0010] 步進電機控制單元向步進電機發出驅動信號的過程如下:
[0011] 步進電機控制單元讀取編碼器反饋的電機當前位置;
[0012] 規劃驅動指令;根據驅動指令設置轉動方向和步數差值;
[0013] 指令工作頻率與穩定啟動頻率比較;
[0014] 工作頻率大于穩定啟動頻率;變頻標志置1 ;確定步進電機升頻和降頻區間;根據 穩定啟動頻率設直定時器時間;
[0015] 工作頻率小于等于穩定啟動頻率;根據工作頻率設置定時器時間;
[0016] 啟動定時器;
[0017] 步進電機啟動標志置1。
[0018] 步進電機控制單元向步進電機發出啟動、停止信號的過程如下:
[0019] 步進電機控制單元對變頻標志進行判斷;
[0020] 變頻標志為1,如果指令工作頻率處于啟動升頻區間,每轉動一百步將頻率提高一 檔,并調整定時器時間;
[0021] 如果指令工作頻率處于停止降頻區間;每轉動一百步將頻率降低一檔,并調整定 時器時間。
[0022] 定時器向步進電機發出驅動信號的過程如下:
[0023] 步進電機啟動標志為1 ;
[0024] 步進電機方向為正;驅動步進電機正向轉動一步;
[0025] 步進電機方向為負;驅動步進電機反向轉動一步;
[0026] 差值步數變量減1。
[0027] 步進電機控制單元向步進電機發出補償驅動信號的過程如下:
[0028] 如果差值步數為0 ;讀取編碼器反饋的步進電機當前位置;
[0029] 計算差值步數;
[0030] 差值步數小于等于到位誤差,調用步進電機停止函數;
[0031] 差值步數大于到位誤差,補償驅動次數變量加1 ;如果計次變量大于2發送報警信 息并調用停止函數,否則步進電機啟動標志置1。
[0032] 本發明相對現有技術的有益效果:
[0033] 本發明步進電機啟停控制方法,實現了步進電機平穩啟停;通過在電機啟動和停 止期間采用變頻處理方式和閉環補償驅動控制,解決了高頻轉動下電機丟步的問題,實現 了多檔頻率電機驅動,滿足了多平臺的使用需求。
[0034] 提高了步進電機轉動的控制精度,根據用戶配置的到位誤差,最高可實現目標位 置正負1步( = 〇· 36° )的誤差控制范圍。
【專利附圖】
【附圖說明】
[0035] 圖1是本發明步進電機啟停控制方法的步進電機控制系統示意圖;
[0036] 圖2是本發明步進電機啟停控制方法的步進電機驅動指令處理流程圖;
[0037] 圖3是本發明步進電機啟停控制方法的步進電機啟動停止變頻處理流程圖;
[0038] 圖4是本發明步進電機啟停控制方法的定時器向步進電機發出驅動信號的流程 圖;
[0039] 圖5是本發明步進電機啟停控制方法的步進電機補償驅動處理流程圖。
【具體實施方式】
[0040] 以下參照附圖及實施例對本發明進行詳細的說明:
[0041] 附圖1至5可知,一種步進電機啟停控制系統,包括上位機,上位機通過雙冗余CAN 總線與步進電機控制單元相連接,步進電機控制單元與步進電機相連接,步進電機設置有 編碼器,編碼器與步進電機控制單元相連接。
[0042] 本發明硬件設計上選用多圈編碼器,可以顯示(0?4096圈)*360°的轉動范圍, 將該傳感器與步進電機綁定,為步進電機控制單元提供實時的電機轉動方向和位置,作為 電機閉環控制的依據。
[0043] -種步進電機啟停控制方法,上位機通過雙冗余CAN總線向步進電機控制單元發 出控制信號,步進電機控制單元向步進電機發出控制信號,步進電機以穩定轉動頻率啟動, 通過逐步提高轉動頻率的方式達到步進電機工作頻率;通過逐步降低轉動頻率的方式達到 步進電機停止頻率;步進電機控制單元讀取編碼器反饋信號,步進電機控制單元向步進電 機發出補償驅動信號。
[0044] 圖2是本發明步進電機驅動指令處理流程圖,步進電機控制單元在接收到電機驅 動指令后,計算出電機將要轉動的方向和步數,然后根據指令中的工作頻率判斷該頻率是 否過高而需要變頻處理,對于需要變頻啟停的控制設置一個變頻標志,計算出升頻和降頻 區間,同時將啟動的初始頻率設置成穩定啟動頻率300步/秒,根據此頻率設置定時器觸發 時間并啟動。
[0045] 步進電機控制單元向步進電機發出驅動信號的過程如下:
[0046] 該流程開始于步驟201。然后在步驟202,步進電機控制單元讀取編碼器反饋的電 機當前位置。
[0047] 在步驟203,規劃驅動指令;根據驅動指令設置轉動方向和步數差值。
[0048] 在步驟204,指令工作頻率與穩定啟動頻率比較。
[0049] 工作頻率大于穩定啟動頻率,進入步驟205,否則,進入步驟208。
[0050] 在步驟205,變頻標志置1。
[0051] 在步驟208根據工作頻率設置定時器時間。
[0052] 在步驟206,確定步進電機升頻和降頻區間。
[0053] 在步驟207,根據穩定啟動頻率設置定時器時間。
[0054] 在步驟209,啟動定時器。
[0055] 在步驟210,步進電機啟動標志置1。
[0056] 流程結束于步驟211。
[0057] 圖3是本發明步進電機啟停控制方法的步進電機啟動停止變頻處理流程圖,在啟 動升頻區間,先以300步/秒的頻率轉動100步,然后頻率提高一檔,調整定時器觸發時間, 按照以上處理方式每轉動100步將頻率提高一檔,直到升至要求的工作頻率;在降頻停止 區間,降頻處理過程與升頻過程正好相反,電機每轉動1〇〇步將頻率降低一檔,最后電機在 300步/秒的頻率檔位平穩停止;
[0058] 步進電機控制單元向步進電機發出啟動、停止信號的過程如下:
[0059] 該流程開始于步驟301。
[0060] 然后在步驟302,步進電機控制單元對變頻標志進行判斷;變頻標志為1,進入步 驟303,否則直接進入步驟307。
[0061] 在步驟303,如果指令工作頻率處于啟動升頻區間,進入步驟304,否則進入步驟 305。
[0062] 在步驟304,步進電機每轉動一百步將頻率提高一檔,并調整定時器時間。
[0063] 在步驟305,如果指令工作頻率處于停止降頻區間,進入步驟306,否則直接進入 307。
[0064] 在步驟306,步進電機每轉動一百步將頻率降低一檔,并調整定時器時間。
[0065] 該流程結束于步驟307。
[0066] 圖4是本發明步進電機啟停控制方法的定時器向步進電機發出驅動信號的流程 圖,電機驅動一步的控制是在定時器處理中實現的,根據頻率設定時間觸發定時器中斷,每 次中斷處理驅動電機轉動一步,并將步數差值減1,當差值減為〇時表示完成一次驅動控 制。
[0067] 定時器向步進電機發出驅動信號的過程如下:
[0068] 該流程開始于步驟401。
[0069] 然后在步驟402,判斷步進電機啟動標志,步進電機啟動標志為1,進入步驟403, 否則直接進入步驟407。
[0070] 在步驟403,判斷步進電機方向,步進電機方向為正,進入步驟404,否則進入步驟 405。
[0071] 在步驟404,驅動步進電機正向轉動一步。
[0072] 在步驟405,驅動步進電機反向轉動一步。
[0073] 在步驟406,差值步數變量減1。
[0074] 該流程結束于步驟407。
[0075] 圖5是本發明步進電機啟停控制方法的步進電機補償驅動處理流程圖,當一次驅 動控制完成后,如果未轉動到指定目標位置,則進行閉環補償驅動控制。先計算電機轉動方 向和距目標位置的步數差值,進行第1次補償驅動,此次驅動結束后,如果電機還未進入到 位誤差范圍內,則進行第2次補償驅動,此次驅動結束后,如果電機還未進入到位誤差范圍 內,就要向上位機報警,停止電機工作。
[0076] 步進電機控制單元向步進電機發出補償驅動信號的過程如下:
[0077] 該流程開始于步驟501。
[0078] 然后在步驟502,判斷差值步數的數值,如果差值步數為0,進入步驟503,否則直 接進入步驟512。
[0079] 在步驟503,讀取編碼器反饋的步進電機當前位置。
[0080] 在步驟504,計算差值步數。
[0081] 在步驟505,進行差值步數與到位誤差比較,差值步數大于到位誤差,進入步驟 506,否則進入步驟510。
[0082] 在步驟506,補償驅動次數變量加1。
[0083] 在步驟510,調用步進電機停止函數。
[0084] 在步驟507,判斷計次變量數值,如果計次變量大于2,進入步驟508,否則進入步 驟 511。
[0085] 在步驟508,發送報警信息。
[0086] 在步驟511,步進電機啟動標志置1。
[0087] 在步驟509,調用停止函數。
[0088] 該流程結束于步驟512。
[0089] 本發明步進電機啟停控制方法,實現了步進電機平穩啟停;通過在電機啟動和停 止期間采用變頻處理方式和閉環補償驅動控制,解決了高頻轉動下電機丟步的問題,實現 了多檔頻率電機驅動,滿足了多平臺的使用需求。
[0090] 提高了步進電機轉動的控制精度,根據用戶配置的到位誤差,最高可實現目標位 置正負1步( = 〇· 36° )的誤差控制范圍。
[0091] 本發明提供了十檔可設置頻率,實現了頻率在200?2000步/秒范圍內的步進電 機驅動,滿足了多平臺使用需求。
[0092] 步進電機啟停控制方法的步進電機啟動控制過程如下:
[0093] 例如:驅動電機轉動3000步,步數正值順時針轉動,步數負值逆時針轉動,設置轉 動頻率1000步/秒。上位機將驅動步數和轉動頻率通過CAN總線發送給步進電機控制單 元。接收到指令后,按照300步/秒的頻率(定時器觸發時間為3. 33ms,每次中斷驅動一 步)驅動電機轉動100步,然后頻率提高到下一檔500步/秒(定時器觸發時間為2ms,每 次中斷驅動一步),驅動電機再轉動100步,接著頻率提高到下一檔650步/秒的頻率,驅動 電機再轉動100步,頻率提高到800轉動100步,頻率提高到1000后,一直轉動到降頻區間, 即轉動到2600步時,頻率降到800轉動到2700步,頻率降到650轉動到2800步,頻率降到 500轉動到2900步,頻率降到300轉動到3000步。驅動結束后,判斷當前電機的實際轉動 位置,是否在(3000步土到位誤差)的范圍內,計算步數差值,以300步/秒的頻率驅動差 值步數,第一次補償結束后若仍不滿足要求,可再進行一次補償,還不滿足要求則報警。
【權利要求】
1. 一種步進電機啟停控制系統,包括上位機,上位機通過雙冗余CAN總線與步進電機 控制單元相連接,步進電機控制單元與步進電機相連接,其特征在于,步進電機設置有編碼 器,編碼器與步進電機控制單元相連接。
2. -種步進電機啟停控制方法,上位機通過雙冗余CAN總線向步進電機控制單元發出 控制信號,步進電機控制單元向步進電機發出控制信號,其特征在于:步進電機以穩定轉動 頻率啟動,通過逐步提高轉動頻率的方式達到步進電機工作頻率;通過逐步降低轉動頻率 的方式達到步進電機停止頻率;步進電機控制單元讀取編碼器反饋信號,步進電機控制單 元向步進電機發出補償驅動信號。
3. 根據權利要求書2所述步進電機啟停控制方法,其特征在于:步進電機控制單元向 步進電機發出驅動信號的過程如下: 步進電機控制單元讀取編碼器反饋的電機當前位置; 規劃驅動指令;根據驅動指令設置轉動方向和步數差值; 指令工作頻率與穩定啟動頻率比較; 工作頻率大于穩定啟動頻率;變頻標志置1 ;確定步進電機升頻和降頻區間;根據穩定 啟動頻率設置定時器時間; 工作頻率小于等于穩定啟動頻率;根據工作頻率設置定時器時間; 啟動定時器; 步進電機啟動標志置1。
4. 根據權利要求書2所述步進電機啟停控制方法,其特征在于:步進電機控制單元向 步進電機發出啟動、停止信號的過程如下: 步進電機控制單元對變頻標志進行判斷; 變頻標志為1,如果指令工作頻率處于啟動升頻區間,每轉動一百步將頻率提高一檔, 并調整定時器時間; 如果指令工作頻率處于停止降頻區間;每轉動一百步將頻率降低一檔,并調整定時器 時間。
5. 根據權利要求書4所述步進電機啟停控制方法,其特征在于:定時器向步進電機發 出驅動信號的過程如下: 步進電機啟動標志為1 ; 步進電機方向為正;驅動步進電機正向轉動一步; 步進電機方向為負;驅動步進電機反向轉動一步; 差值步數變量減1。
6. 根據權利要求書2所述步進電機啟停控制方法,其特征在于:步進電機控制單元向 步進電機發出補償驅動信號的過程如下: 如果差值步數為0 ;讀取編碼器反饋的步進電機當前位置; 計算差值步數; 差值步數小于等于到位誤差,調用步進電機停止函數; 差值步數大于到位誤差,補償驅動次數變量加1 ;如果計次變量大于2發送報警信息并 調用停止函數,否則步進電機啟動標志置1。
【文檔編號】H02P8/06GK104158449SQ201410327736
【公開日】2014年11月19日 申請日期:2014年7月10日 優先權日:2014年7月10日
【發明者】劉云秋, 郝欣偉, 梁財海, 李向陽, 張燕 申請人:北京航天發射技術研究所, 中國運載火箭技術研究院