數字控制器的製作方法
2023-05-29 14:25:36 1
專利名稱:數字控制器的製作方法
技術領域:
本發明涉及數字控制器,包括一用於執行序列程序的序列控制部分。
背景技術:
在數字控制器中結合的序列控制部分,執行序列程序以控制數字控制器的數字控制部分以取得M函數(與機器運行有關的附屬函數)和T函數(工具指定函數),以及控制機器的外部設備(一工件安裝器,一機器的ATC(自動工具轉換器等等)等等)。
隨著當今機器的高性能的趨勢,序列程序的性能有了很大的提高。另外,附加的外部設備和機器自動化的控制程序經常被加入到序列程序中。因此,序列程序的規模變大,使其保持維護和管理變得困難。為解決這些問題,嘗試為控制機器的基本部分配備序列程序和為控制控制額外彼此分開的外部設備配備序列程序,並且同時使用適於被程序使用的唯一的符號存儲區域,執行這些程序,因此這些序列程序的維持得到加強。存儲在不同存儲區域的用於各個序列程序的符號,可以防止一個序列程序受到另外序列程序的影響。這在序列程序的維持上是一大進步。
序列程序包括用於從或向符號存儲器進行讀,寫值的指令,以及包括用於邏輯操作,數據操作等等的指令。這樣指令的目標代碼是由「指令代碼」和「符號存儲地址信息」組成。記載的「符號存儲地址信息」是一條一條的許多信息,這些信息對應序列控制部分的符號存儲內存的符號的物理地址。因此,為了允許一個序列控制部分利用符號存儲區域,執行多個序列程序,其符號存儲區域適於程序唯一使用,更具體的例子,為了使用符號存儲區域M1內的符號運行序列程序P1以及使用符號存儲區域M2內的符號運行序列程序P2,在序列程序P1內的每一個目標代碼必須包括「符號存儲地址信息」,其一個一個地被記錄對應符號存儲區域M1內相關符號的物理地址,以及在序列程序2內的每一個目標代碼必須包括「符號存儲地址信息」,其一個一個地對應符號存儲區域M2內相關符號的物理地址。
在一些情況下,符號存儲區域M1內符號的地址分配給不同於符號存儲區域M2內符號的地址分配。圖11顯示了符號存儲區域M1,M2內的符號地址分配的的示例圖。在符號存儲區域M1內,地址「20000000H」到「2000007fH」被分配給來自I/O設備的輸入符號X0至X127,「20001000H」到「2000107fH」被分配給來自I/O設備的輸出符號Y0至Y127,以及「20002000H」到「200020ffH」被分配給來自I/O設備的輸出符號X200到X455。
另一方面,在符號存儲區域M2內,地址「30000000H」到「3000007fH」被分配給來自I/O設備的輸入符號X0至X127,「40001000H」到「4000107fH」被分配給來自I/O設備的輸出符號Y0到Y127,以及「50001000H」到「500010ffH」被分配給來自I/O設備的輸出符號X200到X455。
如上所述,在符號存儲範圍內的地址分配有時隨著符號類型和符號地址而不同。因此,根據符號存儲區域M1和M2內的符號的許多物理地址信息,序列程序P1和P2的目標代碼必須獨立為每一個配備,其具有「符號存儲地址信息」。
當符號存儲區域內符號的物理地址在序列控制部分的硬體受到改變之後發生了改變,例如,根據所變化的物理地址的映射,必須配備新的目標代碼。這使變化前後的目標代碼之間維持二進位的替換成為可能。
發明內容
本發明提供一種能夠容易配備個更改序列程序的數字控制器。
根據本發明的一個方面,結合在數字控制器內的序列控制部分包括轉換裝置,用於成功地轉換序列程序中將被執行的序列程序,符號,用於執行被分組的序列程序的指令;多個地址表,用於分別配備序列程序,每一個地址表存儲分組符號的最高端物理地址;選擇裝置,用於選擇要被執行的序列程序的一個地址表;以及以確定裝置,其用於根據組指定信息和從物理地址的最高端起的位移地址確定將被估算的分組符號的存取物理地址,其中所述的最高端物理地址是包括在與序列程序的指令以及由選擇裝置在指令執行所選擇的地址表有關。
根據本發明的另一方面,集合在數字控制器內的序列控制部分包括轉換裝置,用於成功地轉換從多個序列程序要被執行的程序,符號,用於根據符號類型或符號地址範圍執行被分組的序列程序的指令;多個地址表分別配備給序列程序,每一個地址表存儲分組符號的物理地址;確定裝置,其用於根據分組指定信息,確定分組符號的物理地址,其中,所述的物理地址是包括在目標代碼內,所述的目標代碼與序列程序的指令,多個地址表中的一個有關;計算裝置,用於根據所確定的最高端物理地址和從包括在目標代碼內的最高端物理地址起位移地址有關的信息,計算分組符號的物理地址;以及執行裝置,用於執行通過估算所確定的分組符號的物理地址執行指令。
根據本發明的另一方面,集合在數字控制器內的序列控制部分包括一地址表,存儲用於執行序列程序指令的用符號信息表示的符號的物理地址;以及確定裝置,其用於根據包括在與序列程序的指令以及執行指令的地址表有關的目標代碼的符號信息,確定要被估算的用符號表示的符號的物理地址。
根據本發明的另一方面,集合在數字控制器內的序列控制部分包括轉換裝置,用於成功地轉換從多個序列程序要被執行的程序,符號,用於執行序列程序的指令,所述的序列程序是用符號信息表示的符號;多個地址表分別配備給序列程序,每一個地址表存儲用符號表示的符號的物理地址;選擇裝置,用於選擇要被執行的序列程序的一個地址表;確定裝置,其用於根據符號信息,確定用符號表示的符號要被估算的物理地址,其中符號信息是包括在目標代碼內,所述的目標代碼是與序列程序的指令,由選擇裝置在指令執行內選擇地址表有關。
根據本發明的另一方面,集合在數字控制器內的序列控制部分包括轉換裝置,用於成功地轉換從多個序列程序要被執行的程序,符號,用於執行被分組的序列程序的指令,所述的序列程序是根據符號類型或符號地址範圍被分組或具用符號信息表示;為序列程序配備的多個地址表包括存儲分組符號的最高端物理地址的第一地址表和存儲用符號表示的符號的物理地址的第二地址;第一確定裝置,其用於根據分組指定信息,確定分組符號的最高端物理地址,其中,分組指定信息包括在目標代碼內,所述的目標代碼與序列程序的指令,多個地址表中的一個有關;計算裝置,用於根據所確定的最高端物理地址以及從包括在目標代碼內的最高端物理地址起位移地址有關的信息,計算分組符號的存取的物理地址;第二確定裝置,其用於根據符號信息,確定用符號表示的符號的要被估算的物理地址,其中,所述的符號信息包括在分配給序列程序,一第二地址表的指令的目標代碼內;以及執行裝置,通過估算所確定的分組符號的物理地址執行指令。
轉換裝置當所設置的時間間隔已過時,可以轉換每次要被執行的序列程序。並且選擇裝置根據包括在序列程序中的表選擇指令,可以選擇一個地址表。
圖1為顯示根據本發明一實施例數字控制器的主要部分的方框圖;圖2a和圖2b為解釋本實施例的信號組的示意圖;圖3a和圖3b為顯示本實施例的地址表的示例圖;圖4a和圖4b為解釋本實施例的符號的地址表的示例圖;圖5是根據實施例中組號,用於確定符號物理地址過程的原理解釋圖。
圖6是本實施例中用於確定執行符號指令的符號的物理地址過程的原理解釋圖;圖7為根據第一實施例序列控制部分的處理器執行的處理流程圖;圖8為根據第二實施例序列控制部分的處理器執行的處理流程圖;圖9為根據第三實施例序列控制部分的處理器執行的處理部分流程圖;圖10為根據第三實施例序列控制部分的處理器執行的處理剩餘部分流程圖;圖11是用於解釋分配給符號的物理地址範圍的圖。
具體實施例方式
參看圖1,下面將解釋根據本發明的一實施例的數字控制器。
該數字控制器包括一數字控制部分10,其具有一處理器11,一存儲器12以及一工作存儲器13,通過總線14,數字控制部分10與所述的處理器11相連,所述存儲器12存儲用於控制數字控制部分10的控制軟體,儘管圖1中顯示部分被省略,用於控制伺服馬達的軸控制裝置也與處理器11相連,其伺服馬達驅動被控制的軸等等。
序列控制部分20包括一處理器21,一存儲器22,一程序存儲器23,符號存儲器(RAM)24,一工作存儲器25,各種計時器26,輸入/輸出設備27,所述處理器21通過總線28與序列控制部分20相連,所述存儲器22存儲用於控制序列控制部分20的控制軟體,所述程序存儲器23由存儲各種序列程序的存儲器組成,所述輸入/輸出設備27與機器和外圍設備相連。總線14通過總線15與總線28相連。
如上所述,序列程序是存儲在程序存儲器23中。為了簡單地解釋,下面假設序列程序1和2存儲在存儲器。
在符號存儲器(RAM)24內,在序列程序處理的符號以它們被一個程序,一個程序劃分和/或被分成符號地址範圍組的方式被存儲。圖2a和圖2b是用於解釋符號組的示圖。符號首先被分成用於序列程序1的一組和用於序列程序2的一組,然後根據符號類型X,Y,F,G等等被劃分,同時也被分成符號地址範圍組。在圖2a和圖2b所示的示例中,符號以這樣的方式被劃分,即來自輸入/輸出設備輸入的以及具有地址「0000」到「0127」的符號X屬於組號為0的組,地址為「0200」到「0327」的符號X屬於組號為1的組等等。
同理,具有地址「0000」到「0127」輸入/輸出設備的輸出符號Y屬於組號為2的組,地址「Y0200」到「Y0327」的輸出符號Y屬於組號為3的組,具有地址「F0000」到「F0767」來自數字控制部分10的輸入符號屬於組號為4的組,地址為「F1000」到「F1767」來自數字控制部分10的輸入符號屬於組號為5的組,具有地址為「G0000」到「G0767」的數字控制部分10的輸出符號屬於組號為6的組,具有地址「G1000」到「G1767」數字控制部分10的輸出符號屬於組號為7的組等等。以這種方式,根據符號類型和符號地址範圍,符號被分成許多組。
如上述解釋,在符號存儲區域內的地址分配是隨符號類型和相同類型符號間的地址差別而不同(如圖11中符號X的情況)。因此,在符號存儲區域的符號分組是在其地址被分配在一起以及其物理地址具有一起變化可能性的符號單元中被分組的。
在工作存儲器RAM25中,在下面所述的序列程序一步,一步執行過程中,設置和存儲了執行時間間隔。同時下面所用到的地址表號也被存儲起來。另外也存儲了用於序列程序1的地址表AT1和用於序列程序2的地址表AT2。地址表AT1和地址表AT2分別包括與符號組有關的表AT1-1和AT2-1和與序列程序內的在目標碼內設計的多個符號信息有關的表AT1-2和AT2-2。
圖3a和圖3b為顯示與符號組有關的地址表AT1-1和AT2-1的示例圖;在用於序列程序1的地址表AT1-1內,設置了由組號0標識的組的最高端物理地址「20000000h」,以及設置了其它組號的最高端物理地址以單位「1000h」增加。如圖3a和圖3b所示。
在用於序列程序2的地址表AT2-1內,設置了組號為0的最高端物理地址「20008000h」,以及設置了其它組號的最高端物理地址以單位「1000h」增加,如圖3a和圖3b所示。因此,在分別對應序列程序1和序列程序2的地址表AT1-1和AT2-1內,為相同組號設置了不同的最高端物理地址。
圖4a和圖4b為顯示與符號信息有關的地址表AT1-2和AT2-2的示例圖,對於「緊急停止信息」,在用於序列程序1的地址表AT1-2內,設置了物理地址「20008008h」,在用於序列程序2的地址表AT2-2內,設置了物理地址「30008008h」。同理,對於其他符號信息,為序列程序1和序列程序2的地址表AT1-2和AT2-2之間的相同符號信息設置了不同的物理地址。
圖5和圖6是解釋本實施例中用於確定符號物理地址過程的原理示意圖。圖5解釋了包括組號指令的情況,以及圖6解釋了包括符號信息指令的情況。下面將首先解釋圖5所示包括組號的指令處理。
附圖標記30表示一序列程序中包括組號的指令的目標碼格式,其由所關心組的指令碼,組號以及標識從最高端物理地址開始的位移地址量的位移地址組成。「組號」和「位移」對應通常的「符號存儲地址信息。」。當讀取這種格式的指令時,根據組號和在執行所關心的序列程序之前預先設置的地址表號,確定地址表,並且對應地址表內所設的組號的最高端物理地址被讀出。然後,指令位移地址被加到最高端物理地址上,因此確定所關心符號的物理地址31,並且執行由指令代碼所指示的處理(讀,寫,邏輯操作,數字操作等等)。
即使所有指令代碼,組號和位移地址是相同的,即,即使指令間的目標代碼是相同的,用於組號的最高端物理地址隨地址表而不同,因此通過加入相同的位移地址確定的符號的物理地址隨地址表的不同而不同。因為實際指定的物理地址由所標識的序列程序之間的地址表不同而不同。多個外部設備等等能夠不需要改變序列程序而被序列地控制。
例如,這裡假設目標代碼包括指示讀操作的指令代碼「X0000」,組號「0」和位移地址「0」。屬於組號「0」的符號X的第一地址是「0000」,其對應最高端物理地址。因此,位移地址被設置為「0」。
當指定的地址表號為「1」,組號「0」的最高端物理地址「20000000h」從地址表AT1-1中被讀出。然後,位移地址「0」被加到最高端物理地址「20000000h」上,由此物理地址「20000000h」被確定的,並且在此地址中的信息被讀出。
另一方面,當指定的地址表號為「2」,組號「0」的最高端物理地址「20080000h」從地址表AT2-1中被讀出。並且位移地址「0」被加到其上,由此物理地址「20080000h」被確定,並且在此地址中的信息被讀出。因此,通過改變地址表號的標識,即使包括相同目標代碼的指令,對不同物理地址進行操作。
圖6解釋包括符號信息的目標碼的情況中,所作操作的示意圖。附圖標記32表示包括符號信息的目標碼格式,其由指令碼和符號信息組成。換句話說,使用「符號信息」替代通常目標代碼中的「符號存儲地址信息。」當由這樣的目標代碼形成的指令被讀入時,根據預先設置的地址表號,並且對應此地址表內所設置的符號信息的物理地址被讀出。然後,通過使用被讀取的物理地址作為所關心符號的物理地址31,執行指令代碼所指示的處理(讀,寫,邏輯操作等等)。
例如,當符號信息為標識寫指令的「緊急停止」時,以及當設置地址表號1時,物理地址「20008008h」從地址表AT1-2內被讀取,並且緊急停止信息被寫進這個物理地址。當設置地址表號2時,物理地址「30008008h」從地址表AT2-2內被讀取,並且緊急停止信息被寫進這個物理地址。
通過改變地址表,甚至對於包括相同目標代碼的指令,不同物理地址可以被標識為執行處理。因此,在控制兩個外圍設備的情況下,每一個地址表使削減任何由同時執行序列控制引起的混亂成為可能,因為使用不同物理地址執行處理,即使由相同目標代碼組成的指令是包括在兩個序列程序內,其中所述地址表是預備對應與序列程序中相關的一個,其中序列程序是用於這些外圍的每個控制的。
圖7為根據本發明第一實施例序列控制部分的處理器21執行處理的流程圖;其中交替執行序列程序1和序列程序2。
在處理開始時,首先,地址表號被設置為「1」(步驟100)。然後,選擇對應所設置地址表號「1」的如圖3和圖4所示的地址表AT1-1,AT1-2,根據地址表AT1-1,AT1-2確定物理地址,序列程序1內的各種指令被序列地執行到程序的結尾(步驟101和102)。
在序列程序1被執行到結尾時,地址表號被設置為「2」(步驟103),選擇對應所設置地址表號「2」的如圖3和圖4所示的地址表AT2-1,AT2-2,根據地址表AT2-1,AT2-2確定物理地址,並且序列程序2內的指令被序列地執行到程序的結尾(步驟104和105)。一旦執行完此程序時,流程返回到步驟100並且前面所述的處理再被執行一遍。在此處理中,交替執行序列程序1和序列程序2。在當交替執行序列程序1,2的過程中,根據序列程序,在控制多個受控設備的操作方面不會有錯誤,因為每個程序使用不同的符號存儲區域(符號的不同物理地址)。
圖8為根據本發明第二實施例的序列控制部分20的處理器21執行的處理流程圖;在第二實施例中,序列程序1和序列程序2在一個預定的執行時間間隔內交替執行,以使每個程序被一步一步地執行。
首先,地址表號被設置為「1」(步驟200),以及計時器是在預定程序執行時間間隔在計時器內被設置之後啟動的(步驟201),然後,使用對應所設置地址表號「1」的如圖3和圖4所示的地址表AT1-1,AT1-2,由序列程序1中的執行指針所指定的序列程序1內的指令之一被執行。然後執行指針增加「1」(步驟202)。上面剛剛提到的執行指針和序列程序2的執行指針在開機最初設置電源時首先被設置為「0」,並且當讀取到程序末端時它們被重新設置成「0」。
然後,確定標識程序末端的指令是否被讀取(步驟203)。如果沒有,則參考計時器,確定所設置的時間間隔是否已過(步驟204)。如果計時器沒有測量到所設置的時間間隔,流程轉到步驟202並執行前述的處理。
當計時器測量所設置的時間間隔,地址時間表被設置為「2」(步驟205),並且當在時間器內設置程序執行時間間隔以後,計時開始(步驟206)。然後,使用圖3和圖4所示的地址表AT2-1,AT2-2和對應所設置地址表號「2」,由序列程序2中的執行指針所指定的序列程序2的指令之一被執行。然後執行指針增加「1」(步驟207),同時確定是否到達程序末端(步驟208)。如果沒有到達程序末端,確定是否計時器測量了所設置的時間間隔(步驟209)。接著,重複執行步驟207-209,直到運行到程序末端或計時器測量了所設置的時間間隔,由此序列程序2中的指令被順序地執行。
當計時器測量所設置的時間間隔,流程轉到步驟200,並且執行步驟200的前述處理和其後的步驟。此後,以預定的程序執行時間間隔為單位,一步一步交替執行序列程序1和序列程序2。
在第二實施例中,即使以預定時間間隔的間隔一步一步執行序列程序1和2,也不用擔心出現錯誤的控制,因為序列程序1和2之間的符號存儲區域(符號的物理地址)是不同的。
圖9-10為根據本發明的第三實施例序,在此實施例中,與第二實施例不同,序列改變指令表包括在序列程序中,由此可選擇所需要的一個改變表,並且通過擴展,可以執行序列程序1和2之間的信息變化。
首先,地址表號被設置成一個數目,此數目是在程序1的表號存儲內存中設置的(步驟300)。在打開電源時的最初設置時,程序1的表號存儲內存儲自己的表號。以此方式,號「1」和號「2」分別用於設置程序1和程序2。
其次,在計時器內設置完預定程序執行時間間隔之後,啟動計時器(步驟301)。然後,使用圖3和圖4所示的地址表和對應所設置地址表號(初始為「1」),由序列程序1中的執行指針所指定的序列程序1的一指令被執行。然後執行指針增加「1」(步驟302)。上面剛剛提到的打開電源進行最初設置時,一旦打開電源執行最初設置時,執行指針最初被設置為「0」,並且每次執行程序指令時,增加「1」以及當讀取到程序末端時它們被重新設置成「0」。
其後,確定讀出的指令是否是一表變化指令(步驟303)。如果不是,確定標識程序末端的指令是否被讀取(步驟305)。假如程序運行到末端,那麼參考計時器,確定是否超過所設置的時間間隔(步驟306)。如果計時器沒有測量到所設置的時間間隔,流程轉到步驟302執行前述的處理。
當讀取到表變化指令時,由這個表變化指令所標識的數目被設置為表號,並且這個被標識的號碼被存儲在程序1的表號存儲內存中(步驟304)。在此實施例中,使用兩個地址表,噹噹前標識的表號為「1」時,就將表號設置為「2」以響應表變化指令。因此,使用變化後的地址表執行步驟302的指令直到運行到程序的末端(步驟305)或計時器測量所設置的時間間隔(步驟306)。
當計數器測量所設置的時間間隔時,設置在程序2的表號存儲內存的數目被設置為地址表號(步驟307)。在此實施例中,地址表號設置為「2」,接著,在對計時器設置程序執行時間間隔後,啟動計時器(步驟308)。其後,使用對應所設置地址表號「2」的地址表AT2-1,AT2-2,由序列程序2中的執行指針所指定的序列程序2的一指令被執行。然後執行指針增加「1」(步驟309)。然後,確定讀出的指令是否是一表變化指令(步驟310),如果不是,進一步確定標識程序末端的指令是否被讀取(步驟312)。假如程序沒有運行到末端,那麼參考計時器,確定所設置的時間間隔是否已過(步驟313)。如果計時器沒有測量到所設置的時間間隔,流程轉到步驟309去執行前述的處理。
當讀取到表變化指令時(步驟310),由這個表變化指令所標識的數目被設置為表號,並且這個被標識的數目被存儲在程序2的表號存儲內存中(步驟311)。接著使用由變化之後的表號所標識的地址表運行處理以使表變化指令不會從序列程序2中被讀出來。
當計時器測量所設置的時間間隔時,流程轉到步驟300並執行步驟300和其後的步驟的處理。在這種情況下,假如在步驟303表變換指令被讀取,存儲在程序2的表號存儲內存的數目發生變化並被設置為表號,並根據由所變化的數目指定的地址表進行處理。
在第三實施例中,當使用物理地址,其中此物理地址對於序列程序1和序列程序2是適當的,彼此是不同的,根據程序1的地址表AT1-1和AT1-2以及程序2的地址表AT2-1和AT2-2,序列程序1可以估計用於讀和寫操作的程序1的物理地址,以及序列程序2可以估計用於讀和寫操作的程序1的物理地址。因此,當前執行的序列程序1,2每一個可以監視另一個程序,並且能執行對列等等。
在數字控制部分10執行用於控制多個系統的多控制的情況中,變換表用於選擇提供給每一系統所需的一個地址表,以便執行此系統相同的序列程序。例如,當序列程序1被執行時,為每一系統a,b,c等等提供了地址表AT1-1a,AT1-1b,AT1-1c,AT1-2a,AT1-2b,AT1-2c等等,當系統a執行序列程序1時,選擇地址表AT1-1a,AT1-2a,然後提供變化指令改變用於執行系統b的序列程序1的地址表AT1-1b,AT1-2b。因此為了執行系統C的序列程序1,由變化指令所作的變化地址表AT1-1c,AT1-2c。因此通過簡單地改變地址表引起的多個系統執行相同操作是可能的。
為了在序列控制部分的硬體改變之後,改變各自符號在每個符號存儲區域的物理地址,例如,足以改變地址表,同時系統的擴展和交替可以容易地運行。
本發明是有益的,因為,利用這些程序之間的不同符號存儲區域,執行不同序列程序通用的目標代碼。因此,不需要每個符號的物理地址信息直接記錄在目標代碼中。因為目標代碼不依賴所關心符號的物理地址,不同序列程序的公用部分可以由相同序列程序組成,並且序列程序的目標代碼不需要為在符號存儲內內具有不同物理地址映射的各個硬體而配備,因此,可以減小程序開發的小時工作量。
權利要求
1.一種其內結合序列控制部分的控制器,其特徵在於,序列控制部分包括多個轉換裝置,其用於成功轉換多個序列程序中的將被執行的一序列程序,多個符號,其用於執行被分組的序列程序的指令;為各個序列程序配備的多個地址表,所述的每一個地址表存儲被分組符號的最高端物理地址;多個選擇裝置,其用於選擇將被運行的序列程序的地址表;以及多個確定裝置,其用於根據組指定的信息以及從最高端物理地址起的位移地址,確定分組符號的被存取的物理地址,其中物理地址是包括在與序列程序的指令以及指令執行中由所述選擇裝置選擇的地址表相關的目標代碼內。
2.一種其內結合序列控制部分的控制器,其特徵在於,序列控制部分包括多個轉換裝置,其用於成功轉換多個序列程序中的將被執行的一序列程序,根據符號類型或符號地址範圍,多個符號,其用於執行被分組的序列程序的指令;多個地址表,其為序列程序配備,所述的每一個地址表存儲被分組符號的最高端物理地址;多個確定裝置,其用於根據組指定的信息,確定分組符號的物理地址,其中物理地址是包括在目標代碼上,所述的目標代碼與序列程序的指令,多個地址表中的一個有關;多個計算裝置,其用於根據所確定的最高端物理地址以及包括在目標代碼內與從最高端物理地址起的位移地址有關的信息,計算分組符號的物理地址;以及多個執行裝置,用於通過估算所確定的分組符號的物理地址,執行指令。
3.一種其內結合序列控制部分的控制器,其特徵在於,序列控制部分包括一地址表,其用於存儲用符號信息表示的符號的物理地址,此符號信息為序列程序的執行指令;以及多個確定裝置,其用於根據包括在目標代碼內的,與序列程序的指令,以及在指令執行中的地址表有關的的符號信息,確定需要估算的用符號表示的符號的物理地址;
4.一種其內結合序列控制部分的控制器,其特徵在於,序列控制部分包括多個轉換裝置,其用於成功地將要被執行的多個序列程序中一序列程序轉換,多個符號,其用於執行序列程序指令,其中所述的序列程序是使用符號信息表示的;多個地址表,其分別為序列程序配備,所述的每一個地址表存儲用符號表示的符號的物理地址;多個選擇裝置,用於選擇一個用於將被執行的序列程序的地址表;以及多個確定裝置,其用於根據包括在目標代碼中的符號信息,確定需要估算的用符號表示的符號的物理地址,所述的目標代碼與序列程序的指令,以及在指令執行中由選擇裝置選擇的地址表有關。
5.一種其內結合序列控制部分的控制器,其特徵在於,序列控制部分包括多個轉換裝置,其用於成功地將要被執行的多個序列程序中一序列程序轉換,多個符號,其用於執行序列程序指令,所述的序列程序是根據符號類型或符號地址範圍分組或使用符號信息表示的;為序列程序分別配備的多個地址表,所述的地址表包括存儲分組符號的最高端物理地址的第一地址表和存儲用符號表示的符號的物理地址的第二地址表;多個第一確定裝置,其用於根據組指定信息,確定分組符號的最高端物理地址,所述的組指定信息包括在與序列程序的指令,以及一個第一地址表有關的目標代碼中;多個計算裝置,其用於根據所確定的最高端的物理地址和包括在目標代碼中的從最高端物理地址起位移地址信息有關的信息,計算分組符號要被估算的物理地址;多個第二確定裝置,其用於根據包括在分配給序列程序的指令的目標代碼中的符號信息,以及第二地址表中的一個,確定用符號表示的符號需要估算的的物理地址;多個執行裝置,其用於通過估算所確定的物理地址,執行指令。
6.根據權利要求1或2或4或5所述的數字控制器,其特徵在於,當所設置的時間間隔已過時,所述轉換裝置轉換每一次要被執行的序列程序。
7.根據權利要求1或4所述的數字控制器,其特徵在於,所述的選擇裝置根據包括在序列程序中的表選擇指令選擇地址表中的一個。
8.根據權利要求2或5所述的數字控制器,其特徵在於,所述的序列控制部分進一步包括多個選擇裝置,其用於根據包括在序列程序中的表選擇指令,選擇地址表中的一個。
全文摘要
本發明提供一種數字控制器,此數字控制器很容易配備和更改序列程序。根據符號類型和/或符號地址進行分組。提供地址表AT1-1,AT2-2,在此表內,為每個序列程序分別存儲每個組號的最高端物理地址。此程序包括目標代碼,每一個由指令代碼,組號以及位移地址組成。當讀入目標代碼時,指令組號的最高端物理地址從對應程序的表中被讀出。此位移地址被加到最高端物理地址以確定符號的物理地址並執行指令代碼的處理。因為提供給每一個程序的地址表具有不同的物理地址,所以就可以為多個程序的公共部分配備一個程序,同時即使硬體受到改變,僅僅改變地址表即可。
文檔編號G05B19/4155GK1523494SQ200410004639
公開日2004年8月25日 申請日期2004年2月20日 優先權日2003年2月21日
發明者長島範武, 長谷川哲, 哲 申請人:發那科株式會社