TWI733951B - 馬達編碼器的動態取樣方法 - Google Patents

馬達編碼器的動態取樣方法 Download PDF

Info

Publication number
TWI733951B
TWI733951B TW106140416A TW106140416A TWI733951B TW I733951 B TWI733951 B TW I733951B TW 106140416 A TW106140416 A TW 106140416A TW 106140416 A TW106140416 A TW 106140416A TW I733951 B TWI733951 B TW I733951B
Authority
TW
Taiwan
Prior art keywords
motor
command
rotation speed
speed
motor rotation
Prior art date
Application number
TW106140416A
Other languages
English (en)
Other versions
TW201923351A (zh
Inventor
賴俊文
夏紹基
Original Assignee
達明機器人股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 達明機器人股份有限公司 filed Critical 達明機器人股份有限公司
Priority to TW106140416A priority Critical patent/TWI733951B/zh
Publication of TW201923351A publication Critical patent/TW201923351A/zh
Application granted granted Critical
Publication of TWI733951B publication Critical patent/TWI733951B/zh

Links

Images

Landscapes

  • Control Of Electric Motors In General (AREA)

Abstract

一種馬達編碼器的動態取樣方法,依據輸入命令速度的切換區間,以相對應的編碼取樣時間,計算馬達轉動速度,將平均馬達轉動速度乘以相對應的權重,形成動態閥值,比較馬達轉動速度不小於動態閥值,馬達轉動速度為正常,馬達轉動速度小於動態閥值,馬達轉動速度為異常,進入補償模式,以控制馬達。

Description

馬達編碼器的動態取樣方法
本發明有關一種馬達,尤其關於馬達在執行控制命令時,根據控制命令速度,動態切換取樣時間進行取樣編碼器的方法。
機器手臂具有靈活移動、精確定位及連續性作業的特性,已成為產品生產線上製造組裝的最佳利器。而降低機器手臂移動時的震動,提升機器手臂控制的精確性,需要正確控制馬達。
如圖8所示,先前技術的馬達由外部輸入控制的命令脈衝(Pulse),並以固定的取樣時間t取得命令脈衝,而由取得的命令脈衝數量,除以取樣時間t,計算出處理的命令速度(Vcmd)。同時馬達的控制系統的速度計算器也會利用同樣的取樣時間t,取得與馬達同步轉動的編碼器偵測編碼脈衝數量,而由取得的編碼脈衝數量除以取樣時間t,計算出馬達轉動速度(Vm),作為回授訊號控制馬達轉動。
然而,先前技術的馬達利用固定的取樣時間t,在慢速轉動的馬達中,由同步轉動的編碼器,僅能擷取少量的編碼訊號,而少量的條碼訊號不足以顯示真正馬達的轉動速度狀態。同樣利用固定的取樣時間t,在快速轉動的馬達中,雖可由同步轉動的編碼器,擷取多量的編碼訊號,但取樣頻率不足,多量的編碼訊號平均後也無法顯示馬達細部的轉動速度 狀態,而不能正確回授控制馬達轉動速度,將造成機器手臂的震動,並影響機器手臂的移動的精密度。因此,馬達在控制命令的取樣時間上,仍有問題亟待解決。
本發明的目的提供一種馬達編碼器的動態取樣方法,設定命令速度的切換區間,根據處理命令速度的切換區間,藉由切換相對應的編碼取樣時間,取得正確馬達轉動速度,以提升控制的精密度。
本發明另一目的在提供一種馬達編碼器的動態取樣方法,根據命令速度的切換區間,設定平均馬達轉動速度的權重形成動態閥值,在馬達轉動速度小於動態閥值時,計算失效次數大於設定值,進行維修排除異常狀態,以保護馬達運轉。
本發明再一目的在提供一種馬達編碼器的動態取樣方法,在馬達轉動速度小於動態閥值時,利用補償模式,計算馬達轉動速度與平均馬達轉動速度的差值,利用差值乘以相對應編碼取樣時間,補償馬達轉動速度的脈衝數量,以維持控制的精確性。
為了達到前述發明的目的,本發明馬達編碼器的動態取樣方法,預先設定命令速度的複數切換區間、切換區間相對應的編碼取樣時間及相對應的權重,依據輸入的命令脈衝在設定的命令取樣時間,取樣命令脈衝,計算命令速度,根據命令速度的切換區間,以相對應的編碼取樣時間,取樣編碼器的編碼脈衝,計算馬達轉動速度,根據命令速度的切換區間,以相對應的權重,將設定的平均馬達轉動速度乘以權重,形成動態閥值,比較馬達轉動速度不小於動態閥值,將馬達轉動速度列入計算平均馬 達轉動速度,並更新設定平均馬達轉動速度,檢查處理完命令脈衝,結束處理命令脈衝。
本發明馬達編碼器的動態取樣方法,比較馬達轉動速度小於動態閥值,馬達轉動速度為異常,進入補償模式,計算馬達轉動速度與設定的平均馬達轉動速度的差值,利用差值乘以相對應編碼取樣時間,取得補償的脈衝數量,補償馬達轉動速度。補償後,紀錄取樣失效一次,並累積計算失效次數,檢查失效次數超過設定值時,進行維修。檢查失效次數未超過設定值時,再檢查馬達轉一圈,將失效次數歸零,重新計次。再檢查未處理完命令脈衝時,則繼續重複下一取樣。
本發明馬達編碼器的動態取樣方法,命令速度預先設定分成複數個命令速度等級的切換區間,切換區間以等比的命令速度間隔。預設相對應的編碼取樣時間,以命令速度越快切換越短的編碼取樣時間的反比原則,形成命令速度切換區間及編碼取樣時間的對照表。切換區間預設相對應的權重,以命令速度越快設置越大權重的等差的原則設定,形成命令速度切換區間及權重的對照表。馬達根據最近預設次數正常取樣的馬達轉動速度,計算平均馬達轉動速度,形成設定的平均馬達轉動速度。
10:控制系統
11:馬達
12:位置控制器
13:速度控制器
14:電流控制器
15:命令脈衝
16:命令速度
17:編碼器
18:類比數位轉換器
19:編碼脈衝
20:速度計算器
21:馬達轉動速度
圖1 為本發明機器手臂的馬達的控制系統的功能圖。
圖2 為本發明命令速度的示意圖。
圖3 為本發明命令速度切換區間及編碼取樣時間的對照表。
圖4 為命令速度切換區間及權重的對照表。
圖5 為本發明馬達編碼器的動態取樣方法的流程圖。
圖6 為本發明動態取樣的馬達轉速曲線圖。
圖7 為本發明馬達輸出的力矩曲線圖。
圖8 為先前技術命令速度及馬達轉數示意圖。
有關本發明為達成上述目的,所採用之技術手段及其功效,茲舉較佳實施例,並配合圖式加以說明如下。
請同時參閱圖1、圖2、圖3及圖4,圖1為本發明機器手臂的馬達的控制系統,圖2為本發明命令速度的示意圖,圖3為本發明命令速度切換區間及編碼取樣時間的對照表,圖4為命令速度切換區間及權重的對照表。圖1中,本發明馬達11的控制系統10,包含位置控制器12、速度控制器13及電流控制器14等,控制系統10由外部輸入命令脈衝15,經位置控制器12利用設定的命令取樣時間t(參圖2),取得命令脈衝15數量,形成命令速度(Vcmd)16,傳輸經速度控制器13及電流控制器14控制馬達11轉動。其中馬達11為A、B、C相的三相馬達,並設有編碼器17用以偵測馬達11的轉動位置。控制系統10利用類比數位轉換器18,從馬達11取出A相電流與B相電流,形成數位電流訊號,作為電流控制器14的電流回授訊號,校正馬達11輸出的力矩。而馬達11的編碼器17偵測產生的編碼脈衝19,經速度計算器20利用設定的編碼取樣時間,取得編碼脈衝19,計算馬達轉動速度21,回授至速度控制器13補償馬達11的轉動速度。編碼器17偵測馬達11的轉動位置,另回授至位置控制器12補償馬達11轉動位置。
圖2中,外部輸入的命令脈衝15在各設定的命令取樣時間t, 具有不同數量的命令脈衝15,因此在各命令取樣時間t構成不同的命令速度,顯示馬達11的變動快慢狀態。為了配合不同的命令速度,對於慢速的命令速度,相對產生的馬達轉動速度較慢,同步轉動的編碼器17也會較慢,產生的編碼脈衝間隔較長,速度計算器20需要利用設定較長的編碼取樣時間,才能適當取樣編碼脈衝,形成顯現變動較慢的真正的馬達轉動速度。相反地,對於快速的命令速度,相對產生的馬達轉動速度較快,同步轉動的編碼器17也會較快,產生的編碼脈衝間隔較短,速度計算器20需要利用設定較短的編碼取樣時間,才能適當取樣編碼脈衝,形成顯現變動較快的真正馬達轉動速度。
圖3中,根據設定的命令取樣時間t,取得的命令脈衝15數量,構成命令速度(Vcmd)的快慢,將命令速度分成複數個命令速度等級的切換區間,例如命令速度等級以等比間隔,而命令速度越快切換越短的編碼取樣時間,例如命令速度與編碼取樣時間大致反比的原則設定,但本發明包含且不限於本實施例的比例設定。先依經驗值設定命令速度K,一般可設定命令速度K等於命令速度(Vcmd)。命令速度(Vcmd)切換區間位於小於設定命令速度K,設定較長的2倍命令取樣時間t的編碼取樣時間T1=2t。命令速度(Vcmd)切換區間位大於設定命令速度K且小於2倍設定命令速度K,設定等於命令取樣時間t的編碼取樣時間T2=t。命令速度(Vcmd)切換區間位大於2倍設定命令速度K且小於3倍設定命令速度K,設定編碼取樣時間T3=t/2。命令速度(Vcmd)切換區間位大於3倍設定命令速度K且小於4倍設定命令速度K,設定編碼取樣時間T4=t/3。命令速度(Vcmd)切換區間位大於4倍設定命令速度K且小於5倍設定命令速度K,設定編碼取樣時間T5=t/4。命令速度 (Vcmd)切換區間位大於5倍設定命令速度K且小於6倍設定命令速度K,設定編碼取樣時間T6=t/5。形成命令速度切換區間及編碼取樣時間的對照表。因此在各切換區間設定的編碼取樣時間TX,只要以適當編碼取樣時間TX頻率取得編碼脈衝數量,將編碼脈衝數量除以編碼取樣時間TX,就可計算出較正確的馬達轉動速度(Vm)。本實施例以劃分6個切換區間為例,但本發明包含且不限於劃分6個切換區間。
圖4中,為了監控計算出的馬達轉動速度(Vm)是否異常?本發明根據馬達11最近例如20或30次等預設次數正常取樣的馬達轉動速度,計算出平均馬達轉動速度(Vavg),形成設定的平均馬達轉動速度,作為基準。並因應命令速度(Vcmd)的切換區間速度快慢不同,對於命令速度(Vcmd)較慢的,因偵測編碼脈衝較不遺失,設置平均馬達轉動速度的權重w較小,例如小於設定命令速度K的命令速度(Vcmd)切換區間,設定權重w為0.25。而對於命令速度(Vcmd)較快的,因偵測編碼脈衝較易遺失,設置平均馬達轉動速度的權重w較大,例如大於5倍設定命令速度K且小於6倍設定命令速度K的命令速度(Vcmd)切換區間,設定權重w為0.5。以命令速度越快設置越大的權重w,例如命令速度與權重w大致等差的原則設定,形成命令速度切換區間及權重w的對照表。經由經驗值設置命令速度(Vcmd)切換區間的權重w,將設定平均馬達轉動速度(Vavg)乘以權重w,作為判斷馬達轉動速度異常的動態閥值,以確保計算的馬達轉動速度正確性。
本發明當計算的馬達轉動速度小於動態閥值時,判斷馬達轉動速度異常,紀錄取樣失效一次,當失效次數超過設定值時,需進行維修排除異常狀態,以保護馬達運轉,而在馬達轉一圈時,失效次數歸零重新 計算失效次數。失效的計算馬達轉動速度,不列入平均馬達轉動速度(Vavg)計算,不更新設定平均馬達轉動速度,而本發明以補償模式補償失效的計算馬達轉動速度,補償模式首先計算馬達轉動速度與平均馬達轉動速度的差值,利用差值乘以相對應編碼取樣時間,取得補償的脈衝數量,補償馬達轉動速度,以維持控制馬達轉動的穩定性。
本發明在運作時,首先依據輸入的命令脈衝15在設定的命令取樣時間t,形成的命令速度(Vcmd),例如命令速度(Vcmd)在2K<Vcmd<3K切換區間,根據命令速度(Vcmd)在命令速度切換區間與編碼取樣時間的對照表中,找出相對應的編碼取樣時間T3=t/2,再利用編碼取樣時間,取得編碼脈衝數量,計算編碼脈衝數量/T3=馬達轉動速度(Vm)。接著再由命令速度切換區間及權重w的對照表,根據命令速度(Vcmd)在2K<Vcmd<3K切換區間,找出相對應的權重W3=0.35,將設定平均馬達轉動速度(Vavg)乘以權重W3形成動態閥值。
比較馬達轉動速度(Vm)不小於動態閥值,判斷計算的馬達轉動速度(Vm)正常,列入計算平均馬達轉動速度(Vavg),更新設定平均馬達轉動速度,繼續下一取樣。如果馬達轉動速度(Vm)不大於平均馬達轉動速度(Vavg)乘以權重W3,則視為異常,接著進入補償模式,計算馬達轉動速度(Vm)與設定的平均馬達轉動速度(Vavg)的差值,利用差值乘以相對應編碼取樣時間,取得補償的脈衝數量,補償馬達轉動速度,並紀錄取樣失效一次,當失效次數或連續失效次數超過設定值時,則進行維修,然後檢查馬達是否轉一圈?如果轉一圈,將失效次數歸零,重新計次,如果未轉完一圈,檢查是否處理完命令脈衝,如果未處理完,則繼續重複下一取樣如果 處理完,則結束運作。
如圖5所示,為本發明馬達編碼器的動態取樣方法的流程。本發明馬達編碼器的動態取樣方法的詳細步驟說明如下:在步驟S1,依據輸入的命令脈衝在設定的命令取樣時間,取樣命令脈衝,計算命令速度;步驟S2,根據命令速度在切換區間,以相對應的編碼取樣時間,取樣編碼器的編碼脈衝,計算馬達轉動速度;步驟S3,根據命令速度的切換區間,找出相對應的權重,計算設定平均馬達轉動速度乘以權重,形成動態閥值;步驟S4,比較馬達轉動速度是否小於動態閥值?,如果馬達轉動速度不小於動態閥值,則進入步驟S5,計算的馬達轉動速度正常,列入計算平均馬達轉動速度,在步驟S6,並更新設定平均馬達轉動速度,再至步驟S13。如果馬達轉動速度小於動態閥值,則進入步驟S7,馬達轉動速度視為異常,接著進入補償模式,補償馬達轉動速度;步驟S8,紀錄取樣失效一次,累積計算失效次數;步驟S9,檢查失效次數是否超過設定值,超過設定值時,則進入步驟S10進行維修,未超過設定值時,則進入步驟S11,再檢查馬達是否轉一圈?如果轉一圈,則進入步驟S12將失效次數歸零,重新計次,再至步驟S13。如果未轉完一圈,則進入步驟S13,檢查是否處理完命令脈衝?如果未處理完命令脈衝,則進入步驟S1繼續重複下一取樣,如果處理完命令脈衝,則進入步驟S14,結束處理命令脈衝。
如圖6所示,為本發明動態取樣的馬達轉速圖。本發明根據命令速度不同速度等級的切換區間,採用相對應設定的編碼取樣時間,動態改變取樣的頻率,獲得的馬達轉速曲線,比較採用固定編碼取樣時間,固定取樣的頻率,獲得的馬達轉速曲線,顯示本發明動態取樣的馬達轉速 曲線較為平滑,較固定取樣的馬達轉速曲線,少突起的轉速曲線,控制較為平順,而可達到降低震動的目的。
如圖7所示,為本發明馬達輸出的力矩曲線圖。本發明採用動態編碼取樣時間,取樣回授控制馬達時,獲得的馬達輸出力矩曲線,比較採用固定編碼取樣時間,獲得的輸出力矩曲線,顯示本發明動態取樣的輸出力矩曲線較為一致,輸出的力矩大致相同,較固定取樣的輸出力矩曲線上下激烈變化的力矩曲線,本發明可達到降低震動的目的。
因此,本發明馬達編碼器的動態取樣方法,利用設定命令速度的切換區間,根據命令速度的切換區間,藉由切換相對應的編碼取樣時間,以命令速度越快切換越短的編碼取樣時間,取得正確馬達轉動速度進行控制,而可達提升馬達控制的精密度的發明目的。此外本發明馬達編碼器的動態取樣方法,亦可根據處理命令速度切換區間,設定命令速度越快權重越大,在馬達轉動速度小於平均馬達轉動速度乘以權重,形成的動態閥值時,計算失效次數大於設定值,需進行維修,而可達到保護馬達運轉的目的。本發明馬達編碼器的動態取樣方法,在馬達轉動速度小於動態閥值時,利用補償模式,計算馬達轉動速度與平均馬達轉動速度的差值,利用差值乘以相對應編碼取樣時間,補償馬達轉動速度的脈衝數量,而可達到維持控制的精確性的發明目的。
以上所述者,僅為用以方便說明本發明之較佳實施例,本發明之範圍不限於該等較佳實施例,凡依本發明所做的任何變更,於不脫離本發明之精神下,皆屬本發明申請專利之範圍。
步驟S1-S14‧‧‧馬達編碼器的動態取樣方法的步驟

Claims (9)

  1. 一種馬達編碼器的動態取樣方法,預先設定命令速度的複數切換區間、切換區間相對應的編碼取樣時間及相對應的權重,其步驟包含:依據輸入的命令脈衝在設定的命令取樣時間,取樣命令脈衝,計算命令速度;根據該命令速度的切換區間,以相對應的編碼取樣時間,取樣編碼器的編碼脈衝,計算馬達轉動速度;根據命令速度的切換區間,以相對應的權重,將設定的平均馬達轉動速度乘以權重,形成動態閥值;比較該馬達轉動速度不小於動態閥值;將該馬達轉動速度列入計算平均馬達轉動速度,並更新該設定平均馬達轉動速度;檢查處理完命令脈衝,則結束處理命令脈衝。
  2. 如申請專利範圍第1項所述之馬達編碼器的動態取樣方法,其中比較馬達轉動速度小於動態閥值,該馬達轉動速度為異常,進入補償模式,計算該馬達轉動速度與該設定的平均馬達轉動速度的差值,利用差值乘以相對應該編碼取樣時間,取得補償的脈衝數量,補償該馬達轉動速度。
  3. 如申請專利範圍第2項所述之馬達編碼器的動態取樣方法,其中補償後,紀錄取樣失效一次,並累積計算失效次數,檢查失效次數超過設定值時,進行維修。
  4. 如申請專利範圍第3項所述之馬達編碼器的動態取樣方法,其中檢查失效次數未超過設定值時,再檢查馬達轉一圈,將失效次數歸零,重新計次。
  5. 如申請專利範圍第1項所述之馬達編碼器的動態取樣方法,其中檢查未處理完命令脈衝時,則繼續重複下一取樣。
  6. 如申請專利範圍第1項所述之馬達編碼器的動態取樣方法,其中命令速度預先設定分成複數個命令速度等級的切換區間,切換區間以等比的命令速度間隔。
  7. 如申請專利範圍第6項所述之馬達編碼器的動態取樣方法,其中切換區間預設相對應的編碼取樣時間,以命令速度越快切換越短的編碼取樣時間的反比原則,形成命令速度切換區間及編碼取樣時間的對照表。
  8. 如申請專利範圍第6項所述之馬達編碼器的動態取樣方法,其中切換區間預設相對應的權重,以命令速度越快設置越大權重的等差的原則設定,形成命令速度切換區間及權重的對照表。
  9. 如申請專利範圍第1項所述之馬達編碼器的動態取樣方法,其中馬達根據最近預設次數正常取樣的馬達轉動速度,計算平均馬達轉動速度,形成該設定的平均馬達轉動速度。
TW106140416A 2017-11-20 2017-11-20 馬達編碼器的動態取樣方法 TWI733951B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW106140416A TWI733951B (zh) 2017-11-20 2017-11-20 馬達編碼器的動態取樣方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106140416A TWI733951B (zh) 2017-11-20 2017-11-20 馬達編碼器的動態取樣方法

Publications (2)

Publication Number Publication Date
TW201923351A TW201923351A (zh) 2019-06-16
TWI733951B true TWI733951B (zh) 2021-07-21

Family

ID=67702303

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106140416A TWI733951B (zh) 2017-11-20 2017-11-20 馬達編碼器的動態取樣方法

Country Status (1)

Country Link
TW (1) TWI733951B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112986605B (zh) * 2021-02-22 2022-12-16 宏晶微电子科技股份有限公司 一种电机测速方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5187420A (en) * 1989-07-18 1993-02-16 Mita Industrial Co., Ltd. Method of calculating motor control voltage and motor control device using the method
TW200401880A (en) * 2002-07-03 2004-02-01 Yaskawa Electric Corp Method of detecting/estimating bit error of encoder detection position data
CN101329359A (zh) * 2007-06-21 2008-12-24 台达电子工业股份有限公司 多点平滑化马达速度估测方法
US8810187B2 (en) * 2011-08-19 2014-08-19 Oriental Motor Boston Technology Group Incorporated Method and apparatus for misstep detection and recovery in a stepper motor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5187420A (en) * 1989-07-18 1993-02-16 Mita Industrial Co., Ltd. Method of calculating motor control voltage and motor control device using the method
TW200401880A (en) * 2002-07-03 2004-02-01 Yaskawa Electric Corp Method of detecting/estimating bit error of encoder detection position data
CN101329359A (zh) * 2007-06-21 2008-12-24 台达电子工业股份有限公司 多点平滑化马达速度估测方法
US8810187B2 (en) * 2011-08-19 2014-08-19 Oriental Motor Boston Technology Group Incorporated Method and apparatus for misstep detection and recovery in a stepper motor

Also Published As

Publication number Publication date
TW201923351A (zh) 2019-06-16

Similar Documents

Publication Publication Date Title
US20160279794A1 (en) Robot controller capable of performing fault diagnosis of robot
US8912928B2 (en) Encoder, driving apparatus, method for calculating absolute position, and method for manufacturing encoder
CN107263543B (zh) 一种机器人关节的校准方法和计算装置
US7679299B2 (en) Techniques for redundancy and fault tolerance in high demand machine safety applications
JP6124112B2 (ja) 交流電動機の制御装置及び制御方法
CN106247924B (zh) 旋转角度检测器
JP5317568B2 (ja) 移動情報を伝送するためのエンコーダ及び方法
TWI733951B (zh) 馬達編碼器的動態取樣方法
US20150212511A1 (en) Motor control device and correction data generation method in same
KR102005297B1 (ko) 엔코더 주축 속도 동기 제어 방법
JP3370845B2 (ja) アブソリュートエンコーダ
JP4229823B2 (ja) 歯車破損検出装置および歯車破損検出方法
Khalid et al. Sensor less control of DC motor using Kalman filter for low cost CNC machine
US9684616B2 (en) Motor control apparatus and motor control method
US20220168895A1 (en) Collision detection
US20090184834A1 (en) System and method for monitoring step motor
CN110199177B (zh) 用于监控位置变化传感器的轨迹信号的方法和装置
CN109844658B (zh) 运动控制装置的参数化的自动优化
TWI621002B (zh) 伺服控制診斷系統
US20230042139A1 (en) System and Method for Monitoring a Failsafe Function of Sensors in a Motor
JPH0425716A (ja) エンコーダ異常検出装置
KR102021461B1 (ko) 모터 제어 장치 및 방법
CN111614301B (zh) 马达编码器的动态采样方法
JP6577809B2 (ja) モータ制御装置
WO2020050236A1 (ja) 情報処理装置及び情報処理方法