国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      電機控制裝置及電機控制方法

      文檔序號:6285066閱讀:269來源:國知局
      專利名稱:電機控制裝置及電機控制方法
      技術領域
      本發(fā)明涉及向驅動電機的驅動裝置串行傳輸控制數(shù)據(jù)的電機控制裝置及方法。
      可是,由CPU向驅動元件發(fā)送的控制數(shù)據(jù)一般是由1種或多種要素數(shù)據(jù)構成。例如,當控制步進電機時,控制數(shù)據(jù)由表示對電機的施加電壓的相位波形的相位波形數(shù)據(jù)和表示電流值的電流值數(shù)據(jù)等構成。電機的驅動元件接收以規(guī)定的格式加入了這些要素數(shù)據(jù)的控制數(shù)據(jù),根據(jù)它驅動電機。因此,CPU在向驅動元件傳輸控制數(shù)據(jù)時,有必要根據(jù)相位波形數(shù)據(jù)和相電流數(shù)據(jù)等要素數(shù)據(jù),先作成適合于傳輸對象的驅動元件的格式的控制數(shù)據(jù),再進行串行傳輸。
      但是,在以往,是通過CPU的運算處理來作成所述控制數(shù)據(jù)。即,CPU在向存儲控制數(shù)據(jù)的各要素的數(shù)據(jù)緩存器寫入數(shù)據(jù)后,通過運算處理生成控制數(shù)據(jù),把它輸出到串行傳輸用的電路中。因為在每次更新數(shù)據(jù)緩存器的數(shù)據(jù)時,必須進行這樣的運算處理,所以對CPU帶來大的負載。另外,按照數(shù)據(jù)緩存器的數(shù)據(jù)更新(即數(shù)據(jù)的寫入),必須進行控制數(shù)據(jù)的生成處理,所以CPU必須把握數(shù)據(jù)的寫入時刻,因此,無法通過CPU不參予的DMA(直接存儲器存取)進行向數(shù)據(jù)緩存器的數(shù)據(jù)寫入。因此,CPU也必須進行向數(shù)據(jù)緩存器的數(shù)據(jù)寫入,這也意味著CPU的處理負載進一步增大。

      發(fā)明內容
      本發(fā)明是鑒于所述點而提出的,其目的在于提供一種能在不給CPU帶來負載的前提下進行向驅動電機的驅動裝置傳輸?shù)目刂茢?shù)據(jù)的生成和串行傳輸?shù)碾姍C控制裝置和方法。
      為了實現(xiàn)所述目的,本發(fā)明是電機控制裝置,向驅動一臺或多臺電機的驅動裝置串行傳輸用于控制所述電機的控制數(shù)據(jù),其特征在于包括用于存儲成為所述控制數(shù)據(jù)的基礎的數(shù)據(jù)的數(shù)據(jù)緩存器;通過直接存儲器存取,向所述數(shù)據(jù)緩存器傳輸數(shù)據(jù)的DMA部件;根據(jù)存儲在所述數(shù)據(jù)緩存器中的數(shù)據(jù),生成所述控制數(shù)據(jù),進行用于向所述驅動裝置串行傳輸?shù)臄?shù)據(jù)生成傳輸處理的硬件電路。
      根據(jù)本發(fā)明,通過直接存儲器存取把數(shù)據(jù)傳輸給數(shù)據(jù)緩存器,根據(jù)存儲在數(shù)據(jù)緩存器中的數(shù)據(jù),生成基于硬件電路的控制數(shù)據(jù),串行傳輸。因此,不給CPU帶來負載,就能進行控制數(shù)據(jù)的生成和串行傳輸。
      這時,所述硬件電路包含當向地址總線輸出了規(guī)定的存儲器地址時,對與該存儲器地址對應的數(shù)據(jù)緩存器輸出寫入有效信號的譯碼器電路;當輸出了所述寫入有效信號時,在該時刻輸出到數(shù)據(jù)總線的數(shù)據(jù)被寫入所述數(shù)據(jù)緩存器中。
      有必要在把新數(shù)據(jù)寫入數(shù)據(jù)緩存器時進行控制數(shù)據(jù)的生成和串行傳輸。因此,硬件電路把數(shù)據(jù)被寫入所述數(shù)據(jù)緩存器作為觸發(fā),開始數(shù)據(jù)生成傳輸處理,能在適當?shù)亩〞r進行控制數(shù)據(jù)的生成和串行傳輸。
      另外,分別對應于成為所述控制數(shù)據(jù)的構成要素的多種數(shù)據(jù)設置了所述數(shù)據(jù)緩存器,所述硬件電路在向任意一個所述數(shù)據(jù)緩存器寫入了數(shù)據(jù)時,開始所述數(shù)據(jù)生成傳輸處理。如果這樣,則當由多種數(shù)據(jù)構成了一個控制數(shù)據(jù)時,當任意一種數(shù)據(jù)被寫入數(shù)據(jù)緩存器時,生成反映了該寫入的數(shù)據(jù)的新的控制數(shù)據(jù),串行傳輸。
      另外,預先確定了存儲在所述數(shù)據(jù)緩存器中的數(shù)據(jù)的各位和所述控制數(shù)據(jù)的各位的對應關系,所述硬件電路通過根據(jù)該對應關系,使所述數(shù)據(jù)緩存器的各位的值為所述控制數(shù)據(jù)的對應位的值,生成所述控制數(shù)據(jù)。如果這樣,因為只通過使數(shù)據(jù)緩存器的各位的值為控制數(shù)據(jù)的對應位的值,就能生成控制數(shù)據(jù),所以能簡化硬件電路的結構。
      另外,所述驅動裝置驅動多臺電機,對應于各電機設置了一個或多個所述數(shù)據(jù)緩存器。
      這時,所述驅動裝置根據(jù)傳輸來的所述控制數(shù)據(jù),驅動用規(guī)定的選擇信號指定的電機;所述硬件電路可以包含把指定了與寫入了數(shù)據(jù)的數(shù)據(jù)緩存器對應的電機的所述選擇信號向所述驅動裝置發(fā)送的部件。
      具有當數(shù)據(jù)被寫入任意一個所述數(shù)據(jù)緩存器時,關于該數(shù)據(jù)緩存器,設定預約標志的部件;所述硬件電路在所述控制數(shù)據(jù)的串行傳輸結束時的時刻,當關于任意的所述數(shù)據(jù)緩存器設定有所述預約標志時,開始基于存儲在該數(shù)據(jù)緩存器中的數(shù)據(jù)的所述數(shù)據(jù)合成傳輸處理。如果這樣,在控制數(shù)據(jù)的串行傳輸中,即使有向數(shù)據(jù)緩存器的數(shù)據(jù)寫入時,也能在該串行傳輸結束后,根據(jù)寫入的數(shù)據(jù)生成控制數(shù)據(jù),進行串行傳輸。
      另外,包括指定所述多個數(shù)據(jù)緩存器的優(yōu)先級的優(yōu)先級付與部件;所述硬件電路當關于多個所述數(shù)據(jù)緩存器設定有所述預約標志時,在這些數(shù)據(jù)緩存器中,根據(jù)用所述優(yōu)先級付與部件指定的優(yōu)先級最高的數(shù)據(jù)緩存器中存儲的數(shù)據(jù),開始所述數(shù)據(jù)生成傳輸處理。如果這樣,當在控制數(shù)據(jù)的串行傳輸中,有向數(shù)據(jù)緩存器的數(shù)據(jù)寫入時,也能根據(jù)預先決定的優(yōu)先級指定應該在該串行傳輸結束后,進行控制數(shù)據(jù)的生成和串行傳輸?shù)臄?shù)據(jù)緩存器。
      這時,可以具有設定所述優(yōu)先級付與部件指定的所述優(yōu)先級的部件。如果這樣,就能從外部設定數(shù)據(jù)緩存器的優(yōu)先級。
      另外,所述硬件電路能以從存儲在所述數(shù)據(jù)緩存器中的數(shù)據(jù)生成所述控制數(shù)據(jù)的邏輯不同的多個工作模式工作;具有設定所述硬件電路的工作模式的部件。如果這樣,對于控制數(shù)據(jù)的數(shù)據(jù)形式不同的多種驅動裝置,能通過設定工作模式而對應。
      另外,所述電機是步進電機,成為所述控制數(shù)據(jù)的基礎的數(shù)據(jù)包含表示施加在所述步進電機上的電壓的相位波形的數(shù)據(jù)。
      圖2是表示本實施例的控制裝置具有的數(shù)據(jù)合成傳輸電路的詳細結構的圖。
      圖3是表示步進電機的相結構的一例的圖。
      圖4是表示施加在步進電機的各相上的電壓波形的一例的圖。
      圖5是表示本實施例的程序裝置電路的動作的狀態(tài)轉移圖。
      圖6是表示在本發(fā)明實施例2中,存儲在數(shù)據(jù)緩存器中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路合成、存儲在移位寄存器中的控制數(shù)據(jù)的關系的圖。
      圖7是表示在本發(fā)明實施例3中,存儲在數(shù)據(jù)緩存器中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路合成、存儲在移位寄存器中的控制數(shù)據(jù)的關系的圖。
      圖8是表示本發(fā)明實施例3的全體結構圖。
      圖9是表示在本實施例中,存儲在數(shù)據(jù)緩存器中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路合成、存儲在移位寄存器中的控制數(shù)據(jù)的關系的圖。


      圖10是表示程序裝置電路的動作的時序表。
      圖11是表示本發(fā)明的實施例5的控制裝置的結構的圖。
      圖12是表示本實施例的程序裝置電路的動作的時序表。
      圖13是表示本實施例的程序裝置電路的動作的狀態(tài)轉移圖。
      圖14是在圖12中變更了數(shù)據(jù)緩存器優(yōu)先級時的時序表。
      圖15是表示在本發(fā)明的實施例6中,存儲在數(shù)據(jù)緩存器BF1~BF4中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路合成、存儲在移位寄存器中的控制數(shù)據(jù)的關系的圖。
      圖中10-控制裝置;12-電機驅動元件(驅動裝置);14-數(shù)據(jù)合成傳輸電路;16-CPU;16a-DMA部;20-串行傳輸線路;24、24A、24B-步進電機;26-第一選擇線;28-第二選擇線;30-地址總線;32-數(shù)據(jù)總線;36-存儲器;40-數(shù)據(jù)緩存部;42-地址解碼器;44-程序裝置電路(硬件電路);46-移位寄存器;BF1~BFn-數(shù)據(jù)緩存器;60-優(yōu)先級付與電路;70-模式設定電路;BF1~BFn-數(shù)據(jù)緩存器;R1~R4-傳輸預約保持電路。
      具體實施例方式
      圖1是表示本發(fā)明實施例1的全體結構圖。如圖1所示,本實施例的系統(tǒng)具有控制裝置10和電機驅動元件12。控制裝置10具有數(shù)據(jù)合成傳輸電路14和中央處理單元(CPU)16。另外,控制裝置10例如能通過ASIC構成1個芯片。
      數(shù)據(jù)合成傳輸電路14通過串行傳輸線路20和同步時鐘線22連接電機驅動元件12。電機驅動元件12根據(jù)通過串行傳輸線路20從數(shù)據(jù)合成傳輸電路14串行傳輸來的控制數(shù)據(jù),控制1臺或多臺步進電機24。
      在控制裝置10的內部,數(shù)據(jù)合成傳輸電路14與CPU16的地址總線30、數(shù)據(jù)總線32以及寫入信號線34連接。在進行向存儲器36的寫入動作時,規(guī)定的寫入信號被輸出到寫入信號線34。因此,在向存儲器36的寫入動作時,與寫入地址和寫入數(shù)據(jù)一起,寫入信號被提供給數(shù)據(jù)合成傳輸電路14。另外,CPU16具有DMA功能,通過DMA部16a,不需進行CPU16的運算處理,就能進行存儲器間的數(shù)據(jù)傳輸。
      圖2表示控制裝置10具有的數(shù)據(jù)合成傳輸電路14的詳細結構。如圖2所示,數(shù)據(jù)合成傳輸電路14具有數(shù)據(jù)緩存部40、地址解碼器42、程序裝置電路44和移位寄存器46。數(shù)據(jù)緩存部40由n各數(shù)據(jù)緩存器BF1~BFn構成。數(shù)據(jù)緩存器BF1~BFn是用于存儲成為因該向電機驅動元件12傳輸?shù)目刂茢?shù)據(jù)的基礎的數(shù)據(jù)(以下稱作要素數(shù)據(jù))的緩存器。作為要素數(shù)據(jù),例如有相位波形數(shù)據(jù)(表示應該向步進電機24的各相施加的電壓的模式的數(shù)據(jù))和設定值數(shù)據(jù)(表示應該向步進電機24供給的電流的相電流數(shù)據(jù)和用于進行電機驅動元件12的各種設定的設定數(shù)據(jù)等)。
      這里,說明步進電機24的相位波形。圖3表示了步進電機24的相結構的一例,另外,圖4表示了施加在步進電機24的各相上的電壓波形的一例。
      如圖3所示,步進電機24例如具有A、-A、B、-B等4相,如圖4所示,通過切換施加在這些相上的電壓,來驅動步進電機24。相位波形數(shù)據(jù)是表示施加在步進電機24各相上的電壓的“1”(High)或“0”(Low)的模式的數(shù)據(jù)。例如在圖4的例子中,在時刻t1以后的各切換時刻,把“1、0、0、1”(時刻t1)、“0、1、1、0”(時刻t2)、“1、0、0、1”(時刻t3)等相位波形數(shù)據(jù)提供給步進電機24。
      另外,步進電機24的發(fā)生扭矩的大小與流過各相的電流(相電流)對應,但是相電流數(shù)據(jù)是表示該相電流的值的數(shù)據(jù)。即為了取得與步進電機24的加減速波形相應的扭矩,根據(jù)相電流數(shù)據(jù)控制提供給步進電機24的電流。
      CPU16按照步進電機24的運轉模式等,生成上述的相位波形數(shù)據(jù)和設定值數(shù)據(jù)等要素數(shù)據(jù),存儲在被設置在存儲器36中的規(guī)定的地址區(qū)域中的數(shù)據(jù)表48中。存儲在該數(shù)據(jù)表48中的各要素數(shù)據(jù)通過DMA部16a被DMA傳輸給對應的數(shù)據(jù)緩存器BF1~BFn。更具體而言,為數(shù)據(jù)緩存器BF1~BFn分別分配了特定的存儲器地址,如以下所述,當要素數(shù)據(jù)被DMA傳輸給任意一個存儲器地址,則該要素數(shù)據(jù)被寫入相應的數(shù)據(jù)緩存器BF1~BFn中。
      如圖2所示,地址解碼器42連接CPU16的地址總線30。另外,各數(shù)據(jù)緩存器BF1~BFn連接CPU16的數(shù)據(jù)總線32和寫入信號線34。如上所述,數(shù)據(jù)緩存器BF1~BFn分別與特定的存儲器地址關聯(lián),地址解碼器42把輸出到地址總線30的寫入地址解碼,向與該地址對應的數(shù)據(jù)緩存器BF1~BFn輸出寫入有效信號。從地址解碼器42向各數(shù)據(jù)緩存器BF1~BFn輸出了寫入有效信號,并且向寫入信號線34輸出了寫入信號時,輸出到數(shù)據(jù)總線32的數(shù)據(jù)被寫入。因此,如果把分配給數(shù)據(jù)緩存器BF1~BFn的任意一個的存儲器地址作為傳輸目標,DMA傳輸了要素數(shù)據(jù),該要素數(shù)據(jù)被存儲在相應的數(shù)據(jù)緩存器中。
      供給數(shù)據(jù)緩存器BF1~BFn的寫入有效信號也提供給程序裝置電路44。當任意的數(shù)據(jù)緩存器,向程序裝置電路44輸出了寫入有效信號時,則以此為觸發(fā),從存儲在數(shù)據(jù)緩存器BF1~BFn中的要素數(shù)據(jù)合成用于控制步進電機24的控制數(shù)據(jù),并設置到移位寄存器46中。具體而言,例如在各要素數(shù)據(jù)的各位位置和控制數(shù)據(jù)的各位位置之間,存在與電機驅動元件12的規(guī)格對應的規(guī)定的對應關系,程序裝置電路44把各要素數(shù)據(jù)的各位的值向移位寄存器46的對應位位置輸出。
      而且,向移位寄存器46設置了控制數(shù)據(jù)后,通過與時鐘信號同步,向移位寄存器46輸出移位命令,把控制數(shù)據(jù)向電機驅動元件逐位地串行傳輸。
      圖5是表示程序裝置電路的動作的狀態(tài)轉變圖。程序裝置電路44變?yōu)槟軓耐獠吭O定功能的有效/無效,在停止狀態(tài)S1中,如果進行了功能有效設定,則轉移到待機狀態(tài)S2。在該待機狀態(tài)S2中,如果進行了功能無效設定,則在此回到停止狀態(tài)S1。
      在該待機狀態(tài)S2中,如果檢測到向數(shù)據(jù)緩存器BF1~BFn的任意一個輸出了寫入有效信號,則根據(jù)存儲在數(shù)據(jù)緩存器BF1~BFn中的各要素數(shù)據(jù)的值,把控制數(shù)據(jù)設置在移位寄存器46中,向第一傳輸狀態(tài)S3轉移。
      如果轉移到第一傳輸狀態(tài)S3,就使同步時鐘為H電平,向第二傳輸狀態(tài)S4轉移。在第二傳輸狀態(tài)S4中,使同步時鐘為L電平,并且向移位寄存器46發(fā)送移位命令。據(jù)此,與同步時鐘線22的同步時鐘向L電平轉變同步,設置在移位寄存器46中的控制數(shù)據(jù)只向串行傳輸線路20發(fā)送1位。如果該處理結束,則再次向第一傳輸狀態(tài)S3轉移。然后,如果移位寄存器的所有位的數(shù)據(jù)傳輸結束,則向待機狀態(tài)S2轉移,如果數(shù)據(jù)傳輸未結束,就再次使同步時鐘為L電平,向第二傳輸狀態(tài)S4轉移。
      這樣,根據(jù)本實施例,如果向數(shù)據(jù)緩存器BF1~BFn的任意一個供給了寫入有效信號(即如果向數(shù)據(jù)緩存器BF1~BFn的任意一個存儲了新的要素數(shù)據(jù)),就以此為觸發(fā),程序裝置電路44用硬件合成控制數(shù)據(jù),向電機驅動元件12串行傳輸。因此,在控制數(shù)據(jù)的合成和串行傳輸時,沒必要有基于CPU16的運算處理,所以通過DMA傳輸一邊進行向數(shù)據(jù)緩存器BF1~BFn的數(shù)據(jù)存儲,一邊能進行基于新的要素數(shù)據(jù)的控制數(shù)據(jù)合成和串行傳輸。
      即當通過CPU16的運算處理進行控制數(shù)據(jù)合成和傳輸處理時,檢測控制數(shù)據(jù)的生成變?yōu)楸匾臅r刻(即,向數(shù)據(jù)緩存器BF1~BFn的任意一個寫入了數(shù)據(jù)時),因為在時刻,有必要進行控制數(shù)據(jù)的生成處理,所以無法通過CPU16不參予的DMA進行向數(shù)據(jù)緩存器BF1~BF4的數(shù)據(jù)存儲。而在本實施例中,把輸入被寫入數(shù)據(jù)緩存器BF1~BFn作為觸發(fā),程序裝置電路44用硬件合成控制數(shù)據(jù),所以CPU16沒必要干預數(shù)據(jù)緩存器BF1~BFn的寫入定時,據(jù)此,通過DMA,能一邊向數(shù)據(jù)緩存器BF1~BFn寫入數(shù)據(jù),一邊進行根據(jù)要素數(shù)據(jù)而合成的控制數(shù)據(jù)的串行傳輸。
      下面,說明本發(fā)明的其他實施例。另外,以下描述的各實施例以所述實施例為基本結構,對于相同的構成部分采用了同一符號,省略或簡化說明。
      本發(fā)明實施例2是在所述實施例1中,設置了2個數(shù)據(jù)緩存器BF1、BF2,在數(shù)據(jù)緩存器BF1中存儲表示控制數(shù)據(jù)的數(shù)據(jù)作為要素數(shù)據(jù),在數(shù)據(jù)緩存器BF2中存儲相位波形數(shù)據(jù)作為要素數(shù)據(jù)。
      圖6是表示在本實施例中,存儲在數(shù)據(jù)緩存器BF1、BF2中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路44合成、存儲在移位寄存器46中的控制數(shù)據(jù)的關系的圖。如圖6所示,在本實施例中,在數(shù)據(jù)緩存器BF1中存儲了與控制數(shù)據(jù)同一數(shù)據(jù)形式的數(shù)據(jù)。即表示相位波形數(shù)據(jù)的位和表示設定值數(shù)據(jù)的位配置在與控制數(shù)據(jù)的格式對應的規(guī)定的位位置。在圖6的例子中,控制數(shù)據(jù)中,位b1、b2、b6、b7、b10、b11表示相位波形數(shù)據(jù),其他位b0、b3、b4、b5、b8、b9、b12、b13、b14表示設定值數(shù)據(jù),相關結構的控制數(shù)據(jù)存儲在數(shù)據(jù)緩存器BF1中。這樣,控制數(shù)據(jù)具有在表示相位波形數(shù)據(jù)的位中分散配置了表示設定值數(shù)據(jù)的位的結構。而在數(shù)據(jù)緩存器BF2中存儲了存儲在數(shù)據(jù)緩存器BF1中的數(shù)據(jù)中由表示相位波形的位構成的數(shù)據(jù)(相位波形數(shù)據(jù))。
      因此,如果數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF1,則程序裝置電路44把該數(shù)據(jù)原封不動地作為控制數(shù)據(jù),向移位寄存器46輸出。而當相位波形數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF時,該相位波形數(shù)據(jù)的各位值覆蓋移位寄存器46的相應位b1、b2、b6、b7、b10、b11,與設定值數(shù)據(jù)對應的其他位的值不變化而維持。
      這樣,在本實施例中,設置存儲控制數(shù)據(jù)的數(shù)據(jù)緩存器BF1和存儲相位波形數(shù)據(jù)的數(shù)據(jù)緩存器BF2,當在數(shù)據(jù)緩存器BF2中寫入了新的相位波形數(shù)據(jù)時,程序裝置電路44更新了控制數(shù)據(jù)的與相位波形數(shù)據(jù)對應的位,并且作為新的控制數(shù)據(jù)而串行傳輸。因此,與所述實施例1同樣,能一邊通過DMA傳輸來向數(shù)據(jù)緩存器BF1、BF2寫入數(shù)據(jù),一邊進行控制數(shù)據(jù)的合成和串行傳輸。
      另外,如實施例1中所述,有必要在存儲器36中準備用于向數(shù)據(jù)緩存器BF1、BF2傳輸各要素數(shù)據(jù)的數(shù)據(jù)表48。這時,因為相位波形數(shù)據(jù)有必要伴隨著步進電機24的運轉而以短間隔切換,所以與變化頻度大的相比,設定值數(shù)據(jù)變化的頻度極小。因此,如果把應該向數(shù)據(jù)緩存器BF1傳輸?shù)臄?shù)據(jù)作為每次相位波形數(shù)據(jù)變化時的數(shù)據(jù)預先存儲在數(shù)據(jù)表48中,則關于不變化的設定值數(shù)據(jù),相同值的位重復出現(xiàn),無效率地占有了存儲器區(qū)域。而在本實施例中,可以準備與只存儲變化頻度大的相位波形數(shù)據(jù)的數(shù)據(jù)緩存器BF2對應的少位數(shù)(在本例子中為6位)的數(shù)據(jù)表48,在與數(shù)據(jù)緩存器BF1對應的多位數(shù)(在本例子中為15位)的數(shù)據(jù)表48中,如果只存儲每次設定值數(shù)據(jù)變化時的數(shù)據(jù)就足夠了。結果,能大幅度削減數(shù)據(jù)表48所必要的存儲器容量。
      在本實施例中,程序裝置電路44只通過把數(shù)據(jù)緩存器BF1、BF2的各位輸出到移位寄存器46的對應的位位置,就能合成控制數(shù)據(jù),所以能簡化程序裝置電路的結構,據(jù)此,能實現(xiàn)控制裝置10的成本下降。例如,如本實施例所示,即使是在控制數(shù)據(jù)中分散配置相位波形數(shù)據(jù)的位的情況下,也只需設置與該位位置對應的邏輯電路,所以程序裝置電路的結構簡單。
      下面,說明本發(fā)明的實施例3。在本實施例中,通過電機驅動元件驅動了2個步進電機24A、24B,另外,設置了3個數(shù)據(jù)緩存器BF1~BF3作為數(shù)據(jù)緩存器。
      圖7是表示在本實施例中,存儲在數(shù)據(jù)緩存器BF1~BF3中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路44合成、存儲在移位寄存器46中的控制數(shù)據(jù)的關系的圖。如圖7所示,在數(shù)據(jù)緩存器BF1中存儲了對于步進電機24A、24B共用的設定值數(shù)據(jù),另外,在數(shù)據(jù)緩存器BF2和BF3中,分別存儲了步進電機24A、24B的相位波形數(shù)據(jù)。而且,如果數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF1~BF3中的任意一個,則程序裝置電路44通過把數(shù)據(jù)緩存器BF1~BF3的數(shù)據(jù)的各位輸出到移位寄存器46的對應的位,就生成了控制數(shù)據(jù)。在圖7的例子中,數(shù)據(jù)緩存器BF1的設定值數(shù)據(jù)被輸出到移位寄存器的位b0,數(shù)據(jù)緩存器BF2的相位波形數(shù)據(jù)被輸出到位b1~b6,數(shù)據(jù)緩存器BF3的相位波形數(shù)據(jù)被輸出到位b7~b12。
      在本實施例中,傳輸給電機驅動元件12的控制數(shù)據(jù)包含關于步進電機24A、24B雙方的相位波形數(shù)據(jù)。
      因此,當關于步進電機24A或24B的一方的電機變更了相位波形數(shù)據(jù)時,包含數(shù)據(jù)未變更的另一方的步進電機,有必要根據(jù)數(shù)據(jù)緩存器BF1~BF3的要素數(shù)據(jù),合成控制數(shù)據(jù)。
      而在本實施例中,如果數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF1~BF3中的任意一個,程序裝置電路44就根據(jù)這三個數(shù)據(jù)緩存器BF1~BF3,合成控制數(shù)據(jù),并串行傳輸。因此,當控制2個步進電機24A、24B時,CPU16可以只在數(shù)據(jù)表中預先準備關于各步進電機24A、24B切換相位波形時的相位波形數(shù)據(jù),然后,通過DMA把這些數(shù)據(jù)傳輸給數(shù)據(jù)緩存器,通過程序裝置電路44合成了控制數(shù)據(jù),串行傳輸給電機驅動元件12。即CPU16不考慮步進電機24A、24B的相互關系,關于各電機獨立進行運算處理,生成各相位波形數(shù)據(jù),所以簡化了CPU16的處理。
      這樣根據(jù)本實施例,對于根據(jù)共用的控制數(shù)據(jù)驅動多臺步進電機24A、24B的電機驅動元件12,不給CPU16帶來負擔,就能正確合成控制數(shù)據(jù)并進行串行傳輸。
      下面,說明本發(fā)明的實施例4。圖8是本實施例的全體結構圖。如圖8所示,與所述實施例3同樣,通過電機驅動元件12驅動2臺步進電機24A、24B,但是在本實施例中,在控制裝置10和電機驅動元件12之間,除了串行傳輸線路20和同步時鐘線22,還設置了2第一選擇線26和第二選擇線28。而且,通過2條選擇線26、28,指定由數(shù)據(jù)傳輸線路20傳輸?shù)目刂茢?shù)據(jù)是步進電機24A、24B中的哪個的控制數(shù)據(jù)。即如果第一選擇線26是有效電平,電機驅動元件12就根據(jù)由串行傳輸線路20傳來的控制數(shù)據(jù),驅動步進電機24A,而如果第二選擇線28是有效電平,就根據(jù)由串行傳輸線路20傳來的控制數(shù)據(jù),驅動步進電機24B。
      圖9是表示在本實施例中,存儲在各數(shù)據(jù)緩存器中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路44合成、存儲在移位寄存器46中的控制數(shù)據(jù)的關系的圖。如圖9所示,在本實施例中,設置了4個數(shù)據(jù)緩存器BF1~BF4。關于步進電機24A,與所述圖6所示的情形相同,在數(shù)據(jù)緩存器BF1中存儲了與控制數(shù)據(jù)相同數(shù)據(jù)形式的數(shù)據(jù),在數(shù)據(jù)緩存器BF2中存儲了相位波形數(shù)據(jù)。
      圖10是表示程序裝置電路44的動作的時序表,(a)表示第一選擇線26的信號,(b)表示第二選擇線28的信號,(c)表示串行傳輸線路20的傳輸數(shù)據(jù)。
      如圖10所示,在時刻t1,如果數(shù)據(jù)被寫入與步進電機24A對應的數(shù)據(jù)緩存器BF1或BF2,則程序裝置電路44使第一選擇線26為有效電平(在圖10的例中,是低電平)。而且,數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF1時,把該數(shù)據(jù)原封不動地向移位寄存器46輸出。而當數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF2時,把該數(shù)據(jù)的各位覆蓋移位寄存器46的對應位(位b1、b2、b6、b7、b10、b11)。這樣寫入移位寄存器46的數(shù)據(jù)作為步進電機24A的控制數(shù)據(jù)傳輸給電機驅動元件12。然后,在時刻t2,如果控制數(shù)據(jù)的所有位的串行傳輸結束,則程序裝置電路44使第一選擇線26為非有效電平(高電平)。
      這樣,如果數(shù)據(jù)被寫入與步進電機24A對應的數(shù)據(jù)緩存器BF1或BF2,就從串行傳輸線路20傳輸了該步進電機24A的控制數(shù)據(jù)。這時,通過第一選擇線26變?yōu)橛行щ娖?,電機驅動元件12根據(jù)串行傳輸來的控制數(shù)據(jù),驅動步進電機24A。
      另外,在時刻t3,如果數(shù)據(jù)被寫入與步進電機24B對應的數(shù)據(jù)緩存器BF3或BF4,則程序裝置電路44使第二選擇線28為有效電平,與所述同樣,根據(jù)數(shù)據(jù)緩存器BF3和BF4的數(shù)據(jù),合成控制數(shù)據(jù),向電機驅動元件12串行傳輸。在時刻t4,如果傳輸了控制數(shù)據(jù)的所有位,就使第二選擇線28為非有效電平(高電平)。在數(shù)據(jù)傳輸中,第二選擇線28為有效電平,所以電機驅動元件12根據(jù)傳輸來的控制數(shù)據(jù)驅動步進電機24B。
      如上所述,在本實施例中,程序裝置電路44按照與步進電機24A或24B的哪個對應的數(shù)據(jù)變化(即數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF1、BF2或BF3、BF4的哪個中),把對應的控制數(shù)據(jù)傳輸給電機驅動元件12,并且使第一選擇線26或第二選擇線282為有效電平。因此,CPU16關于各電機可以只在數(shù)據(jù)表中準備相位波形數(shù)據(jù)和設定值數(shù)據(jù),然后,不通過CPU16,而把這些數(shù)據(jù)DMA傳輸給數(shù)據(jù)緩存器BF1~BF4。然后,通過程序裝置電路44合成了控制數(shù)據(jù),串行傳輸給電機驅動元件。因此,根據(jù)本實施例,當電機驅動元件12具有通過選擇線26、28指定成為對象的電機的結構時,不給CPU16帶來負載,就能進行控制數(shù)據(jù)的合成、串行傳輸以及各選擇線26、28的控制。
      下面,說明本發(fā)明的實施例5。本實施例是正在串行傳輸控制數(shù)據(jù)時,即使數(shù)據(jù)被寫入任意的數(shù)據(jù)緩存器中,也能不產生數(shù)據(jù)傳輸遺漏,恰當?shù)卮袀鬏斂刂茢?shù)據(jù)。在本實施例中,說明與所述實施例4同樣,設置了與步進電機24A對應的數(shù)據(jù)緩存器BF1、BF2和與步進電機24B對應的數(shù)據(jù)緩存器BF3、BF4,通過第一選擇線26和第二選擇線28指定是與哪個電機對應的控制數(shù)據(jù)。
      圖11是表示本實施例的控制裝置10的結構的圖。如圖10所示,在本實施例中設置了與數(shù)據(jù)緩存器BF1~BF4分別對應的傳輸預約保持電路R1~R4和優(yōu)先級付與電路60。
      傳輸預約保持電路R1~R4是保持表示是否應該串行傳輸基于存儲在數(shù)據(jù)緩存器BF1~BF4中的數(shù)據(jù)的控制數(shù)據(jù)的傳輸標志的電路。例如,當按照向數(shù)據(jù)緩存器BF1的數(shù)據(jù)寫入,正在串行傳輸步進電機24A的控制數(shù)據(jù)時,當數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF3時,無法立刻串行傳輸步進電機24B的控制數(shù)據(jù),所以預先在傳輸預約保持電路R3中設置傳輸標志。而且,在步進電機24A的控制數(shù)據(jù)的串行傳輸結束的時刻,合成了與設置了傳輸標志的數(shù)據(jù)緩存器BF3對應的步進電機24B的控制數(shù)據(jù)并進行串行傳輸。
      另外,優(yōu)先級付與電路60是保持當數(shù)據(jù)被寫入多個數(shù)據(jù)緩存器時,關于哪個數(shù)據(jù)緩存器,優(yōu)先進行控制數(shù)據(jù)的合成以及串行傳輸處理的優(yōu)先級的電路。例如,在步進電機24A的控制數(shù)據(jù)的串行傳輸中,當數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF2和BF3時,如果數(shù)據(jù)緩存器BF3被設定為比數(shù)據(jù)緩存器BF2高的優(yōu)先級,則如果步進電機24A的控制數(shù)據(jù)的串行傳輸結束,就使數(shù)據(jù)緩存器BF3優(yōu)先,合成了與它對應的步進電機24B的控制數(shù)據(jù),串行傳輸。
      圖12是表示本實施例的程序裝置電路44的動作的時序表,(a)~(d)表示與向數(shù)據(jù)緩存器BF1~BF4的數(shù)據(jù)寫入對應的傳輸預約保持電路R1~R4的預約標志的變化,(e)、(f)表示輸出到第一選擇線26和第二選擇線28的信號,(g)表示串行傳輸?shù)目刂茢?shù)據(jù)的內容。另外,在優(yōu)先級付與電路60中,按照數(shù)據(jù)緩存器BF1、BF2、BF3、BF4的順序設定了高的優(yōu)先級。
      在圖12的例子中,首先在時刻t1,數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF1,按照它,在傳輸預約保持電路R1中設置了預約標志。在數(shù)據(jù)緩存器BF1中設定了最高的優(yōu)先級,另外,因為現(xiàn)在沒有傳輸中的數(shù)據(jù),所以在時刻t2,程序裝置電路44使第一選擇線26為有效電平。與此同時,把傳輸預約保持電路R1的預約標志復位,并且開始根據(jù)存儲在數(shù)據(jù)緩存器BF1中的數(shù)據(jù)而合成的步進電機24A用的控制數(shù)據(jù)的串行傳輸。如果該串行傳輸結束,就使第一選擇線26為非有效電平(時刻t5)。
      所述控制數(shù)據(jù)的串行傳輸中,在時刻t3,數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF3,預約標志被設置在傳輸預約保持電路R3中,在時刻t4,數(shù)據(jù)被寫入數(shù)據(jù)緩存器BF2,預約標志被設置在傳輸預約保持電路R2中。因此,在執(zhí)行中的串行傳輸結束的時刻(時刻t5),在預約保持電路R2和R3雙方中設置了預約標志。這時,在數(shù)據(jù)緩存器BF2中設定了比數(shù)據(jù)緩存器BF3還高的優(yōu)先級,所以程序裝置電路44使數(shù)據(jù)緩存器BF2優(yōu)先。即把預約保持電路R2的預約標志復位,并且使與數(shù)據(jù)緩存器BF2對應的第一選擇線26為有效電平,與此同時,開始根據(jù)數(shù)據(jù)緩存器BF1、BF2的數(shù)據(jù)而合成的步進電機24A用的控制數(shù)據(jù)的串行傳輸(時刻t6)。
      在該串行傳輸未結束時,數(shù)據(jù)再次被寫入數(shù)據(jù)緩存器BF1,在傳輸預約保持電路R1中設置了預約標志(時刻t7)。因此,在執(zhí)行中的串行傳輸未結束的時刻(時刻t8),在預約保持電路R1和R3雙方中設置了預約標志,但是為數(shù)據(jù)緩存器BF1設定了比數(shù)據(jù)緩存器BF3還高的優(yōu)先級,所以再次開始了根據(jù)數(shù)據(jù)緩存器BF1、BF2的數(shù)據(jù)而合成的步進電機24A用的控制數(shù)據(jù)的串行傳輸(時刻t9)。在該串行傳輸結束前,不發(fā)生向數(shù)據(jù)緩存器的新的寫入,因此,在串行傳輸結束的時刻(時刻t10),只在傳輸預約保持電路R3中設置了預約標志。因此,程序裝置電路44開始根據(jù)數(shù)據(jù)緩存器BF3、BF4的數(shù)據(jù)而合成的步進電機24B用的控制數(shù)據(jù)的串行傳輸,在時刻t12結束傳輸。
      圖13是表示本實施例的程序裝置電路44的動作的狀態(tài)轉移圖。另外,省略了與所述實施例1的圖5所示的狀態(tài)轉移圖程序裝置電路44的重復部分的說明。
      在待機狀態(tài)S2中,當在傳輸預約保持電路R1~R4的至少一個中設置了預約標志是,如果最高優(yōu)先級的傳輸預約保持電路是R1或R2,則根據(jù)存儲在數(shù)據(jù)緩存器BF1、BF2中的數(shù)據(jù),把控制數(shù)據(jù)設置在移位寄存器46中,使第一選擇線26為有效電平,把預約標志復位,向第一傳輸狀態(tài)S3A轉移。另外,當最高優(yōu)先級的傳輸預約保持電路是R3或R4,則根據(jù)存儲在數(shù)據(jù)緩存器BF3、BF4中的數(shù)據(jù),把控制數(shù)據(jù)設置在移位寄存器46中,使第二選擇線28為有效電平,把預約標志復位,向第一傳輸狀態(tài)S3B轉移。
      在第一傳輸狀態(tài)S3A、S3B下,使同步時鐘為H電平,向第二傳輸狀態(tài)S4A、S4B轉移。然后,在第二傳輸狀態(tài)S4A、S4B轉移下,使使同步時鐘為L電平,向移位寄存器46發(fā)送移位命令。據(jù)此,與同步時鐘線的同步時鐘變?yōu)長電平同步,設置在移位寄存器46中的控制數(shù)據(jù)向串行傳輸線路20只發(fā)送了一位。如果該處理結束,就再次向第一傳輸狀態(tài)S3A或S3B轉移。在第一傳輸狀態(tài)S3A、S3B下,如果移位寄存器的所有位的數(shù)據(jù)發(fā)送結束,就分別使第一選擇線26和第二選擇線28為非有效電平,向待機狀態(tài)S2轉移。而如果數(shù)據(jù)發(fā)送未結束,就再次使同步時鐘變?yōu)長電平,向第二傳輸狀態(tài)S4A或S4B轉移。
      這樣,在本實施例中,當在控制數(shù)據(jù)的串行傳輸中,向數(shù)據(jù)緩存器BF1~BF4的任意一個寫入了數(shù)據(jù)時,在相應的傳輸預約保持電路R1~R4中設置預約標志,在執(zhí)行中的串行傳輸結束的時刻,自動串行傳輸與設置了預約標志的數(shù)據(jù)緩存器對應的控制數(shù)據(jù)。因此,當在串行傳輸中向數(shù)據(jù)緩存器BF1~BF4的任意一個寫入了數(shù)據(jù)時,也能可靠地進行與該數(shù)據(jù)寫入對應的控制數(shù)據(jù)的串行傳輸。
      另外,為數(shù)據(jù)緩存器BF1~BF4付與優(yōu)先級,當在串行傳輸中,向多個數(shù)據(jù)緩存器寫入了數(shù)據(jù)時,使優(yōu)先級高的數(shù)據(jù)緩存器優(yōu)先,傳輸控制數(shù)據(jù)。因此,例如當步進電機24A、24B的重要性上存在差異,有必要優(yōu)先控制任意的電機時,通過預先按照該優(yōu)先度在優(yōu)先級付與電路60中設定數(shù)據(jù)緩存器BF1~BF4的順序,就能實現(xiàn)適合步進電機24A、24B的優(yōu)先度的控制。而且,基于這樣的優(yōu)先級的數(shù)據(jù)緩存器BF1~BF4的選擇由程序裝置電路44在硬件上進行。因此,根據(jù)本實施例,不給CPU16帶來處理負載,就能進行適合于優(yōu)先度的電機控制。
      另外,在本實施例中,說明了根據(jù)數(shù)據(jù)緩存器BF1、BF2的數(shù)據(jù)合成步進電機24A用的控制數(shù)據(jù),根據(jù)數(shù)據(jù)緩存器BF3、BF4的數(shù)據(jù)合成步進電機24B用的控制數(shù)據(jù),并串行傳輸時的情形??墒?,并不局限于此,例如在根據(jù)數(shù)據(jù)緩存器BF1~BF4的各數(shù)據(jù)串行傳輸4種控制數(shù)據(jù)的結構中,當設置了多個預約標志時,可串行傳輸根據(jù)優(yōu)先級高的數(shù)據(jù)緩存器的數(shù)據(jù)合成的控制數(shù)據(jù)。例如,在圖12的時序表的例子中,在時刻t2~t5,傳輸基于數(shù)據(jù)緩存器BF1的數(shù)據(jù)的控制數(shù)據(jù),在時刻t6~t8,傳輸基于數(shù)據(jù)緩存器BF2的數(shù)據(jù)的控制數(shù)據(jù),在時刻t9~t10,傳輸基于數(shù)據(jù)緩存器BF1的數(shù)據(jù)的控制數(shù)據(jù),在時刻t11~t12,傳輸基于數(shù)據(jù)緩存器BF3的數(shù)據(jù)的控制數(shù)據(jù)。
      可是,在所述實施例中,也可以能夠由CPU16設定保持在傳輸預約保持電路R1中的數(shù)據(jù)緩存器BF1~BF4的優(yōu)先級。這時,當系統(tǒng)全體的結構沒有變更時,通過按照它適當設定優(yōu)先級,能靈活地對應這樣的系統(tǒng)變更等。
      圖14是表示把數(shù)據(jù)緩存器BF1~BF4的優(yōu)先級變更為例如BF4、BF3、BF2、BF1的順序是的動作的時序表,表示在與所述圖12相同的時刻,數(shù)據(jù)被寫入各數(shù)據(jù)緩存器時的情形。如圖14所示,在與向數(shù)據(jù)緩存器BF1的數(shù)據(jù)寫入對應的控制數(shù)據(jù)的串行傳輸結束的時刻(時刻tS),在傳輸預約保持電路R2和R3雙方中設置了預約標志,但是,在本例子中,因為數(shù)據(jù)緩存器BF3的優(yōu)先級高,所以串行傳輸了基于數(shù)據(jù)緩存器BF3的步進電機24B用控制數(shù)據(jù),并且第二控制線28變?yōu)橛行щ娖?。而且,在該?shù)據(jù)傳輸結束的時刻(時刻t8),在傳輸預約保持電路R1和R2雙方中設置了預約標志,但是,在本例子中,因為數(shù)據(jù)緩存器BF2比數(shù)據(jù)緩存器BF1的優(yōu)先級高,所以在時刻t9,把傳輸預約保持電路R2的預約標志復位,并且開始了與向數(shù)據(jù)緩存器BF2的數(shù)據(jù)寫入對應的步進電機24A用控制數(shù)據(jù)的傳輸。然后,該數(shù)據(jù)傳輸結束后,在時刻t11,傳輸預約保持電路R1的預約標志復位,并且開始了與向數(shù)據(jù)緩存器BF1的寫入對應的步進電機24A用控制數(shù)據(jù)的傳輸。
      下面,說明本發(fā)明的實施例6。在本實施例中,程序裝置電路44以第一和第二兩種工作模式工作。
      圖15是表示在本實施例中,存儲在數(shù)據(jù)緩存器BF1~BF4中的數(shù)據(jù)和根據(jù)這些數(shù)據(jù)由程序裝置電路44合成、存儲在移位寄存器46中的控制數(shù)據(jù)的關系的圖。如圖15所示,在本實施例中,程序裝置電路44具有模式設定電路70,按照設定在模式設定電路70中的工作模式,以第一或第二模式工作。
      在第一模式中,與所述實施例3(圖7)同樣,設定值數(shù)據(jù)存儲在數(shù)據(jù)緩存器BF1中,在數(shù)據(jù)緩存器BF2和BF3中,分別存儲了步進電機24A和24B的相位波形數(shù)據(jù)。而且,根據(jù)數(shù)據(jù)緩存器BF1~BF的數(shù)據(jù),合成了控制數(shù)據(jù)。
      另外,在第二模式中,與所述實施例4(圖9)同樣,關于步進電機24A,在數(shù)據(jù)緩存器BF1中存儲了與控制數(shù)據(jù)相同數(shù)據(jù)形式的數(shù)據(jù),在數(shù)據(jù)緩存器BF2中存儲了相位波形數(shù)據(jù),另外,步進電機24B,在數(shù)據(jù)緩存器BF3中存儲了與控制數(shù)據(jù)相同數(shù)據(jù)形式的數(shù)據(jù),在數(shù)據(jù)緩存器BF4中存儲了相位波形數(shù)據(jù)。
      模式設定電路70連接了數(shù)據(jù)總線32,能從CPU16對模式設定電路70設定工作模式。因此,根據(jù)本實施例,能對應控制數(shù)據(jù)結構不同的2種電機驅動元件12,當由于系統(tǒng)變更,電機驅動元件12的種類變更時,能用來自CPU16的模式設定,就能靈活地對應。
      另外,在所述各實施例中,說明了控制步進電機時的情形,但是本發(fā)明并不局限于此,也能應用于控制DC電機。
      即,用驅動元件驅動DC電機,通過向該驅動元件串行傳輸規(guī)定格式的控制數(shù)據(jù),進行DC電機的控制時,也能通過應用本發(fā)明,而不給CPU帶來負載,就能進行控制數(shù)據(jù)的合成和串行傳輸。
      另外,在所述各實施例中,說明了電機驅動元件12驅動1臺或2臺電機時的情形,但是本發(fā)明也能應用于電機驅動元件12驅動3臺以上電機的情形。
      在所述實施例2~6中,具體說明了各要素數(shù)據(jù)和從要素數(shù)據(jù)合成的控制數(shù)據(jù)的結構,但是這些結構是一例,可以按照電機驅動元件12的規(guī)格變更數(shù)據(jù)結構。
      根據(jù)本發(fā)明,不給CPU帶來負載,就能進行向驅動電機的驅動裝置傳輸?shù)目刂茢?shù)據(jù)的生成和串行傳輸。
      權利要求
      1.一種電機控制裝置,向驅動一臺或多臺電機的驅動裝置串行傳輸用于控制所述電機的控制數(shù)據(jù),其特征在于包括用于存儲成為所述控制數(shù)據(jù)的基礎的數(shù)據(jù)的數(shù)據(jù)緩存器;通過直接存儲器存取,向所述數(shù)據(jù)緩存器傳輸數(shù)據(jù)的DMA部件;根據(jù)存儲在所述數(shù)據(jù)緩存器中的數(shù)據(jù),生成所述控制數(shù)據(jù),進行用于向所述驅動裝置串行傳輸?shù)臄?shù)據(jù)生成傳輸處理的硬件電路。
      2.根據(jù)權利要求1所述的電機控制裝置,其特征在于所述硬件電路包含當向地址總線輸出了規(guī)定的存儲器地址時,對與該存儲器地址對應的數(shù)據(jù)緩存器輸出寫入有效信號的譯碼器電路;當輸出了所述寫入有效信號時,在該時刻輸出到數(shù)據(jù)總線的數(shù)據(jù)被寫入所述數(shù)據(jù)緩存器中。
      3.根據(jù)權利要求1所述的電機控制裝置,其特征在于所述硬件電路以數(shù)據(jù)被寫入所述數(shù)據(jù)緩存器中為觸發(fā),開始所述數(shù)據(jù)生成傳輸處理。
      4.根據(jù)權利要求3所述的電機控制裝置,其特征在于分別對應于成為所述控制數(shù)據(jù)的構成要素的多種數(shù)據(jù)設置了所述數(shù)據(jù)緩存器,所述硬件電路在向任意一個所述數(shù)據(jù)緩存器寫入了數(shù)據(jù)時,開始所述數(shù)據(jù)生成傳輸處理。
      5.根據(jù)權利要求1所述的電機控制裝置,其特征在于預先確定了存儲在所述數(shù)據(jù)緩存器中的數(shù)據(jù)的各位和所述控制數(shù)據(jù)的各位的對應關系,所述硬件電路通過根據(jù)該對應關系,使所述數(shù)據(jù)緩存器的各位的值為所述控制數(shù)據(jù)的對應位的值,生成所述控制數(shù)據(jù)。
      6.根據(jù)權利要求1所述的電機控制裝置,其特征在于所述驅動裝置區(qū)驅動多臺電機,對應于各電機設置了一個或多個所述數(shù)據(jù)緩存器。
      7.根據(jù)權利要求6所述的電機控制裝置,其特征在于所述驅動裝置根據(jù)傳輸過來的所述控制數(shù)據(jù),驅動用規(guī)定的選擇信號指定的電機;所述硬件電路包含把指定了與寫入了數(shù)據(jù)的數(shù)據(jù)緩存器對應的電機的所述選擇信號向所述驅動裝置發(fā)送的部件。
      8.根據(jù)權利要求1所述的電機控制裝置,其特征在于具有當數(shù)據(jù)被寫入任意一個所述數(shù)據(jù)緩存器時,關于該數(shù)據(jù)緩存器,設定預約標志的部件;所述硬件電路在所述控制數(shù)據(jù)的串行傳輸結束時的時刻,當對于任意一個所述數(shù)據(jù)緩存器設定有所述預約標志時,開始進行基于存儲在該數(shù)據(jù)緩存器中的數(shù)據(jù)的所述數(shù)據(jù)作成傳輸處理。
      9.根據(jù)權利要求8所述的電機控制裝置,其特征在于包括指定所述多個數(shù)據(jù)緩存器的優(yōu)先級的優(yōu)先級付與部件;所述硬件電路當關于多個所述數(shù)據(jù)緩存器設定有所述預約標志時,在這些數(shù)據(jù)緩存器中,根據(jù)用所述優(yōu)先級付與部件指定的優(yōu)先級最高的數(shù)據(jù)緩存器中存儲的數(shù)據(jù),開始所述數(shù)據(jù)生成傳輸處理。
      10.根據(jù)權利要求9所述的電機控制裝置,其特征在于具有設定所述優(yōu)先級付與部件指定的所述優(yōu)先級的部件。
      11.根據(jù)權利要求1所述的電機控制裝置,其特征在于所述硬件電路能以從存儲在所述數(shù)據(jù)緩存器中的數(shù)據(jù)生成所述控制數(shù)據(jù)的邏輯不同的多個工作模式工作;具有設定所述硬件電路的工作模式的部件。
      12.根據(jù)權利要求1所述的電機控制裝置,其特征在于所述電機是步進電機,成為所述控制數(shù)據(jù)的基礎的數(shù)據(jù)包含表示施加在所述步進電機上的電壓的相位波形的數(shù)據(jù)。
      13.一種電機控制方法,向驅動一臺或多臺電機的驅動裝置串行傳輸用于控制所述電機的控制數(shù)據(jù),其特征在于包括通過直接存儲器存取,向用于存儲成為所述控制數(shù)據(jù)的基礎的數(shù)據(jù)的數(shù)據(jù)緩存器傳輸數(shù)據(jù)的步驟;根據(jù)存儲在所述數(shù)據(jù)緩存器中的數(shù)據(jù),生成所述控制數(shù)據(jù),通過硬件電路進行用于向所述驅動裝置串行傳輸?shù)臄?shù)據(jù)生成傳輸處理的步驟。
      14.根據(jù)權利要求13所述的電機控制方法,其特征在于以數(shù)據(jù)被寫入所述數(shù)據(jù)緩存器中為觸發(fā),開始所述數(shù)據(jù)生成傳輸處理。
      15.根據(jù)權利要求14所述的電機控制方法,其特征在于分別對應于成為所述控制數(shù)據(jù)的構成要素的多種數(shù)據(jù)設置了所述數(shù)據(jù)緩存器,在向任意一個所述數(shù)據(jù)緩存器寫入了數(shù)據(jù)時,開始所述數(shù)據(jù)生成傳輸處理。
      全文摘要
      本發(fā)明提供一種電機控制裝置及電機控制方法,數(shù)據(jù)緩存器(BF1~BFn)被分別分配有特定的存儲器地址,地址解碼器(42)通過對被輸出到地址總線(30)的存儲器地址進行解碼,并對對應的數(shù)據(jù)緩存器輸出寫入有效信號,來把DMA傳輸?shù)臄?shù)據(jù)寫入數(shù)據(jù)緩存器。當數(shù)據(jù)被寫入到任意一個的數(shù)據(jù)緩存器時,程序裝置電路(44)把根據(jù)數(shù)據(jù)緩存器(BF1~BFn)的數(shù)據(jù)作成的控制數(shù)據(jù)存儲在移位寄存器(46)中,并與時鐘同步,逐位地向串行傳輸線路(20)發(fā)送。由此,可不增加對CPU的負荷,高效地向驅動電機的驅動裝置進行控制數(shù)據(jù)的串行傳輸。
      文檔編號G05B19/414GK1476160SQ0312360
      公開日2004年2月18日 申請日期2003年5月9日 優(yōu)先權日2002年5月10日
      發(fā)明者武井敏記 申請人:精工愛普生株式會社
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1