TWI497240B - Program editing device, program editing method and editing program of the program products - Google Patents

Program editing device, program editing method and editing program of the program products Download PDF

Info

Publication number
TWI497240B
TWI497240B TW102118903A TW102118903A TWI497240B TW I497240 B TWI497240 B TW I497240B TW 102118903 A TW102118903 A TW 102118903A TW 102118903 A TW102118903 A TW 102118903A TW I497240 B TWI497240 B TW I497240B
Authority
TW
Taiwan
Prior art keywords
program
code
unit
command
extracted
Prior art date
Application number
TW102118903A
Other languages
English (en)
Other versions
TW201439695A (zh
Inventor
Akihiro Miura
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of TW201439695A publication Critical patent/TW201439695A/zh
Application granted granted Critical
Publication of TWI497240B publication Critical patent/TWI497240B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode

Description

程式編輯裝置、程式編輯方法及編輯程式之程式產品
本發明係關於例如用以編輯控制程式的程式編輯裝置、程式編輯方法及編輯程式之程式產品。
在以往的FA(Factory Automation)系統中,係將CPU(Central Processing Unit)單元及輸出入單元等組合來建構控制系統,以控制馬達或感測器等之製造裝置。
CPU單元係根據由製造裝置被輸入至輸出入單元的輸入訊號,來實施控制程式(例如階梯程式)所記述的運算處理。CPU單元係將根據運算結果的輸出訊號傳送至製造裝置,藉此控制製造裝置。
近年來,以減輕CPU單元的負荷及對製造裝置的輸出入的高速化為目的,具有運算處理功能的輸出入單元已逐漸普及。
藉此,可在輸出入單元執行原在CPU單元所執行的控制程式的一部分。亦即,輸出入單元未介由CPU單元而可控制對製造裝置的輸出入。
但是,使用者係必須以手動抽出使輸出入單元執行的控制程式的一部分,重新作成所抽出的控制程式的一部分來作為輸出入單元用的控制程式。因此,使用者的作業負荷變高。
此外,以習知技術而言,有將控制程式分割成可程式化控制器或機器人控制器等各控制器用,按每個經分割的控制程式,生成各控制器用的程式模組的方法(參照專利文獻1)。
但是,以該方法並無法自動抽出控制程式的一部分來生成輸出入單元用的控制程式。
此外,以該方法,必須意識到各控制器來作成控制程式,而且必須要有用以作成控制程式的程式設計技術。
(先前技術文獻) (專利文獻)
(專利文獻1)日本特開平09-171405號公報
本發明之目的在例如在對象程式(例如控制程式)所包含之命令碼之中,可抽出可在第二執行部(例如輸出入單元)執行的命令碼,來生成在第二執行部所執行的第二程式。
本發明之程式編輯裝置係包括:抽出對象碼記憶部,其係在藉由第一執行部及第二執行部所執行之對象程式所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼;命令碼抽出部,其係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶的前述抽出對象碼為相同的命令碼作為抽出碼; 第二程式生成部,其係生成包含藉由前述命令碼抽出部所被抽出的前述抽出碼的程式,作為藉由前述第二執行部所執行的第二程式;及第一程式生成部,其係生成將藉由前述命令碼抽出部所被抽出的前述抽出碼由前述對象程式除外所得之程式,作為藉由前述第一執行部所執行的第一程式。
藉由本發明,例如在對象程式(例如控制程式)所包含之命令碼之中,可抽出可在第二執行部(例如輸出入單元)執行的命令碼,來生成在第二執行部所執行的第二程式。
100‧‧‧程式編輯裝置
111‧‧‧命令碼抽出部
112‧‧‧副控制程式生成部
113‧‧‧副控制參數列表生成部
114‧‧‧副控制參數列表顯示部
115‧‧‧編輯指示輸入部
116‧‧‧副控制程式編輯部
121‧‧‧主控制程式生成部
122‧‧‧主控制程式編輯部
131‧‧‧命令碼分割部
132‧‧‧機器控制程式修正部
141‧‧‧抽出條件設定部
151‧‧‧重複碼檢測部
152‧‧‧檢測結果顯示部
190‧‧‧裝置記憶部
191‧‧‧抽出對象碼列表
192‧‧‧抽出碼列表
193‧‧‧副控制參數列表
200‧‧‧機器控制裝置
201‧‧‧CPU單元
202‧‧‧輸出入單元
204‧‧‧網路
209‧‧‧周邊機器
210‧‧‧機器控制程式
211‧‧‧主控制程式
212‧‧‧副控制程式
310‧‧‧副控制參數編輯畫面
311‧‧‧編輯結束按鍵
320‧‧‧抽出條件畫面
329‧‧‧標籤名對應表
901‧‧‧CPU
902‧‧‧匯流排
903‧‧‧ROM
904‧‧‧RAM
905‧‧‧通訊板
911‧‧‧顯示器
912‧‧‧鍵盤
913‧‧‧滑鼠
914‧‧‧驅動器
920‧‧‧磁碟裝置
921‧‧‧OS
922‧‧‧程式群
923‧‧‧檔案群
第1圖係實施形態1中之程式編輯裝置100與機器控制裝置200的關係圖。
第2圖係顯示實施形態1中之程式編輯裝置100的功能構成圖。
第3圖係顯示實施形態1中之程式編輯裝置100的程式編輯處理的流程圖。
第4圖係顯示實施形態1中之機器控制程式210之一例圖。
第5圖係顯示實施形態1中之抽出對象碼列表191之一例圖。
第6圖係顯示實施形態1中之抽出碼列表192之一例圖。
第7圖係顯示實施形態1中之副控制程式212之一例圖。
第8圖係顯示實施形態1中之主控制程式211之一例圖。
第9圖係顯示實施形態1中之主控制程式211之一例圖。
第10圖係顯示實施形態1中之程式編輯裝置100之硬體資源之一例圖。
第11圖係顯示實施形態2中之程式編輯裝置100之功能構成圖。
第12圖係顯示實施形態2中之程式編輯裝置100的程式編輯處理的流程圖。
第13圖係顯示實施形態2中之副控制參數列表193之一例圖。
第14圖係顯示實施形態1中之副控制參數編輯畫面310之一例圖。
第15圖係實施形態3中之程式編輯裝置100的功能構成圖。
第16圖係顯示實施形態3中之程式編輯裝置100的程式編輯處理的流程圖。
第17圖係顯示實施形態3中之副控制參數編輯畫面310之一例圖。
第18圖係實施形態4中之程式編輯裝置100的功能構成圖。
第19圖係顯示實施形態4中之程式編輯裝置100的程式編輯處理的流程圖。
第20圖係顯示實施形態4中之分割碼抽出處理(S130)之一例的流程圖。
第21圖係顯示實施形態4中之命令碼分割處理(S133) 的具體例圖。
第22圖係實施形態5中之程式編輯裝置100的功能構成圖。
第23圖係顯示實施形態5中之抽出條件畫面320之一例圖。
第24圖係顯示實施形態5中之標籤名對應表329之一例圖。
第25圖係顯示實施形態5中之機器控制程式210之一例圖。
第26圖係實施形態6中之程式編輯裝置100的功能構成圖。
第27圖係顯示實施形態6中之程式編輯裝置100的程式編輯處理的流程圖。
第28圖係顯示實施形態6中之副控制程式編輯處理(S117)的流程圖。
第29圖係顯示實施形態6中之檢測結果顯示處理(S117-3)的具體例圖。
實施形態1.
說明在對象程式(例如控制程式)所包含之命令碼之中,抽出可在第二執行部(例如輸出入單元)執行的命令碼,來生成在第二執行部所執行的第二程式的形態。
第1圖係實施形態1中之程式編輯裝置100與機器控制裝置200的關係圖。
根據第1圖,說明實施形態1中之程式編輯裝置100與機器控制裝置200的關係。
機器控制裝置200係控制感測器或馬達等周邊機器209。
例如機器控制裝置200係被使用在FA(Factory Automation)系統。
機器控制裝置200係包括:CPU單元201(CPU:Central Processing Unit)、及輸出入單元202。
CPU單元201(第一執行部之一例)係透過網路204而與輸出入單元202相連接,控制輸出入單元202及與輸出入單元202相連接的周邊機器209。
此外,CPU單元201係包括用以執行程式的運算功能(例如運算電路),執行用以控制周邊機器209的機器控制程式210(但是,除了藉由輸出入單元202所被執行的部分以外)。
例如,CPU單元201之一例為可程式化控制器。
輸出入單元202(第二執行部之一例)係與周邊機器209相連接,對周邊機器209進行訊號的輸出入。例如,輸出入單元202係輸入由周邊機器209所被輸出的輸出訊號,將用以控制周邊機器209的控制訊號輸出至周邊機器209。
此外,輸出入單元202係與CPU單元201同樣地包括運算功能,執行機器控制程式210的一部分。
機器控制程式210係用以控制周邊機器209的程式。
例如,機器控制程式210係包含用以處理周邊機器209的 輸出訊號(例如表示感測器所計測出的計測值的訊號),根據處理結果來生成控制訊號(例如用以起動或停止馬達的訊號)的一個以上命令文(以下稱為命令碼)。
其中,機器控制程式210亦可為以階梯語言或C語言等程式設計語言所記述的原始程式、及以機械語言所記述的目標程式的任一者。
程式編輯裝置100係藉由編輯機器控制程式210來生成主控制程式211(第一程式之一例)與副控制程式212(第二程式之一例)的電腦。
主控制程式211係機器控制程式210之中,藉由CPU單元201所執行的程式的部分。
副控制程式212係機器控制程式210之中,藉由輸出入單元202所執行的程式的部分。
以下詳細說明程式編輯裝置100。
第2圖係實施形態1中之程式編輯裝置100的功能構成圖。
根據第2圖,說明實施形態1中之程式編輯裝置100的功能構成。
程式編輯裝置100係包括:命令碼抽出部111、副控制程式生成部112(第二程式生成部之一例)、及主控制程式生成部121(第一程式生成部之一例)。
命令碼抽出部111係在機器控制程式210(對象程式之一例)所包含之命令碼之中,抽出與抽出對象碼列表191所示之抽出對象碼為相同的命令碼,且生成抽出碼列表192。
抽出對象碼列表191係顯示可在輸出入單元202執行之命令碼(抽出對象碼)之一覽。
抽出碼列表192係顯示由機器控制程式210所被抽出之命令碼(以下稱為抽出碼)之一覽。
副控制程式生成部112係生成包含抽出碼列表192所示之抽出碼的副控制程式212(第二程式之一例)。
主控制程式生成部121係藉由將抽出碼列表192所示之抽出碼由機器控制程式210除外,而生成主控制程式211(第一程式之一例)。
裝置記憶部190係記憶在程式編輯裝置100所使用的資料。
例如,裝置記憶部190係記憶:機器控制程式210、抽出對象碼列表191、抽出碼列表192、副控制程式212、及主控制程式211。
第3圖係顯示實施形態1中之程式編輯裝置100的程式編輯處理的流程圖。
根據第3圖,說明實施形態1中之程式編輯裝置100的程式編輯處理。
在S111中,命令碼抽出部111係在機器控制程式210所包含之命令碼之中,抽出與抽出對象碼列表191所示之抽出對象碼為相同的命令碼。
在此,相同的命令碼亦可為:亦包含變數值而全部均為相同的命令碼、變數值不同但碼形式為相同的命令碼、及命令或運算的種類相同的命令碼之任一者。
S111之後,處理係進至S112。
在S112中,命令碼抽出部111係生成以由機器控制程式210所抽出之命令碼(抽出碼)為一覽之抽出碼列表192。
抽出碼列表192係顯示抽出碼之一覽,並且顯示按每個抽出碼來識別抽出碼之抽出部位的抽出部位識別碼。
S112之後,處理係進至S113。
以下根據第4圖、第5圖及第6圖,說明對象碼抽出處理(S111)及抽出碼列表生成處理(S112)的具體例。
第4圖係顯示實施形態1中之機器控制程式210之一例圖。
第4圖所示之機器控制程式210係以階梯語言所記述的階梯程式,包含有(1)至(4)的命令碼。
(1)的命令碼意指1位元的複製,(2)的命令碼意指2個值的邏輯積的算出,(3)的命令碼意指2個值的邏輯和的輸出。
Xn係表示識別輸入元件的變數值,Yn係表示識別輸出元件的變數值。該等表記的含義在以下圖示中亦同。
第5圖係顯示實施形態1中之抽出對象碼列表191之一例圖。
第5圖所示之抽出對象碼列表191係顯示以階梯語言所記述之(a)至(c)的抽出對象碼。
第6圖係顯示實施形態1中之抽出碼列表192之一例圖。
第6圖所示之抽出碼列表192係顯示以階梯語言所記述之(1)至(3)的抽出碼。
此外,抽出碼列表192係顯示按每個抽出碼識別抽出碼被抽出的抽出部位的抽出部位識別碼(例如機器控制程式210的行號)。圖中的L1至L3為抽出部位識別碼。Ln意指由機器控制程式210的第n行被抽出。
第4圖的機器控制程式210所包含之(1)至(4)的命令碼之中,(1)至(3)的命令碼係與第5圖之抽出對象碼列表191所示之(a)至(c)的抽出對象碼為相同的命令碼。 (1)至(3)的命令碼係(a)至(c)的命令碼與碼形式及命令(運算)的種類相同。
此外,機器控制程式210的(4)的命令碼係與抽出對象碼列表191所示之任何抽出對象碼均為不同的命令碼。
因此,命令碼抽出部111係在機器控制程式210所包含之(1)至(4)的命令碼之中抽出(1)至(3)的命令碼(第3圖的S111),生成第6圖的抽出碼列表192(第3圖的S112)。
返回至第3圖,由S113繼續說明。
在S113中,副控制程式生成部112係生成包含抽出碼列表192所示之抽出碼的副控制程式212。
S113之後,處理係進至S121。
以下根據第7圖,說明副控制程式生成處理(S113)的具體例。
第7圖係顯示實施形態1中之副控制程式212之一例圖。
第7圖所示之副控制程式212為階梯程式,包含有(1)至(3)的命令碼。
副控制程式生成部112係根據第6圖的抽出碼列表192,生成第7圖的副控制程式212。
亦即,副控制程式生成部112係將第6圖之抽出碼列表192所示之(1)至(3)的抽出碼,根據各自的抽出部位識別碼Ln進行排列,藉此生成第7圖的副控制程式212。
此外,副控制程式生成部112亦可在(1)至(3)的抽出碼附加抽出部位識別碼Ln。例如,副控制程式生成部112係附加表示抽出部位識別碼的註解「#Ln」。
返回至第3圖,由S121繼續說明。
在S121中,主控制程式生成部121係藉由將抽出碼列表192所示之抽出碼由機器控制程式210除外,來生成主控制程式211。
S121之後,程式編輯處理即結束。
以下根據第8圖及第9圖,說明主控制程式生成處理(S121)的具體例。
第8圖係顯示實施形態1中之主控制程式211之一例圖。
第8圖所示之主控制程式211為階梯程式,包含有D1至D3的虛擬碼、及(4)的命令碼。虛擬碼為未被執行的無效命令碼。亦即,即使編譯主控制程式211,亦未生成相當於虛擬碼的目的碼(亦稱為執行碼或機器碼)。
主控制程式生成部121係根據第4圖的機器控制程式210 及第6圖的抽出碼列表192,來生成第8圖的主控制程式211。
亦即,主控制程式生成部121係在第4圖的機器控制程式210所包含之(1)至(4)的命令碼之中,將第6圖的抽出碼列表192所示之(1)至(3)的命令碼,根據各自的抽出部位識別碼Ln來進行特定。
接著,主控制程式生成部121係藉由將所特定的(1)至(3)的命令碼置換成虛擬碼,來生成第8圖的主控制程式211。
第8圖的D1至D3為虛擬碼,在各自的虛擬碼係設定有包含所對應的抽出碼的抽出部位識別碼Ln的文字列「DMY_Ln」。
第9圖係顯示實施形態1中之主控制程式211之一例圖。
第9圖所示之主控制程式211係包含有:標註記號「#」的註解行、及(4)的命令碼。
主控制程式生成部121亦可根據第4圖的機器控制程式210及第6圖的抽出碼列表192,生成第9圖的主控制程式211。
亦即,主控制程式生成部121亦可在第4圖的機器控制程式210所包含之(1)至(4)的命令碼之中,將第6圖的抽出碼列表192所示之(1)至(3)的命令碼置換成註解行,來取代置換成虛擬碼。
此外,主控制程式生成部121亦可在註解行附記表示為被移至副控制程式212的命令碼的註解「副控制_Ln」。
第10圖係顯示實施形態1中之程式編輯裝置100之硬體資源之一例圖。
在第10圖中,程式編輯裝置100(電腦之一例)係包括CPU901(Central Processing Unit)。CPU901係透過匯流排902而與ROM903、RAM904、通訊板905(通訊裝置)、顯示器911(顯示裝置)、鍵盤912、滑鼠913、驅動器914、磁碟裝置920等硬體元件相連接,來控制該等硬體元件。驅動器914係讀寫FD(Flexible Disk)、CD(Compact Disc)、DVD(Digital Versatile Disc)等記憶媒體的裝置。
ROM903、RAM904、磁碟裝置920及驅動器914為記憶裝置之一例。鍵盤912、滑鼠913及通訊板905為輸入裝置之一例。顯示器911及通訊板905為輸出裝置之一例。
通訊板905係有線或無線與LAN(Local Area Network)、網際網路、電話線路等通訊網路相連接。
在磁碟裝置920記憶有OS921(作業系統)、程式群922、檔案群923。
在程式群922係包含有執行在實施形態中作為「~部」所說明的功能的程式。程式(例如編輯程式之程式)係藉由CPU901被讀出且執行。亦即,程式係使電腦作為「~部」來發揮功能者,此外,使電腦執行「~部」的程序或方法者。
在檔案群923係包含有在實施形態中所說明之「~部」所使用的各種資料(輸入、輸出、判定結果、計算結果、處理結果等)。
在實施形態中,構成圖及流程圖所包含的箭號主要表示資料或訊號的輸出入。
根據流程圖等所說明的實施形態的處理係使用CPU901、記 憶裝置、輸入裝置、輸出裝置等硬體來被執行。
在實施形態中作為「~部」所說明者係可為「~電路」、「~裝置」、「~機器」,此外亦可為「~步驟」、「~程序」、「~處理」。亦即,作為「~部」所說明者亦可為韌體、軟體、硬體或該等之組合之任一者來構裝。
藉由實施形態1,達成例如以下所示之效果。
程式編輯裝置100係可由在CPU單元上所執行的控制程式,自動抽出用以在具有運算功能的高速響應輸出入單元執行的輸出入響應控制程式(副控制程式)。
在實施形態1中,說明例如程式編輯裝置(100)。括弧內標記所對應的構成的符號或名稱。
前述程式編輯裝置係包括:抽出對象碼記憶部(191)、命令碼抽出部(111)、第二程式生成部(112)、及第一程式生成部(121)。
前述抽出對象碼記憶部係在藉由第一執行部(201)及第二執行部(202)所執行的對象程式(210)所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼。
前述命令碼抽出部係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶之前述抽出對象碼為相同的命令碼作為抽出碼。
前述第二程式生成部係生成包含藉由前述命令碼抽出部所被抽出的前述抽出碼的程式,來作為藉由前述第二執行部所執行的第二程式(212)。
前述第一程式生成部係生成將藉由前述命令碼抽出部所被抽出的前述抽出碼由前述對象程式除外所得之程式,作為藉由前述第一執行部所執行的第一程式(211)。
實施形態2.
說明編輯副控制程式212的形態。
以下主要說明與實施形態1不同的事項。關於省略說明的事項,係與實施形態1相同。
第11圖係實施形態2中之程式編輯裝置100的功能構成圖。
根據第11圖,說明實施形態2中之程式編輯裝置100的功能構成。
程式編輯裝置100係除了實施形態1(參照第2圖)中所說明的構成以外,包括:副控制參數列表生成部113(參數抽出部之一例)、副控制參數列表顯示部114(第二程式顯示部之一例)、編輯指示輸入部115、及副控制程式編輯部116(第二程式編輯部之一例)。
副控制參數列表生成部113係根據副控制程式212或抽出碼列表192,生成副控制參數列表193(第二程式資訊之一例)。
副控制參數列表193係顯示構成副控制程式212所包含之命令碼(以下稱為副控制碼)之副控制參數之一覽。
副控制參數係構成副控制程式212所包含的命令碼(副控制碼)的構成要素。
副控制參數列表顯示部114係顯示副控制參數列 表193所示之副控制參數。
編輯指示輸入部115係輸入對副控制參數列表193所示之副控制參數的編輯指示。
副控制程式編輯部116係按照編輯指示來編輯副控制程式212。
第12圖係顯示實施形態2中之程式編輯裝置100的程式編輯處理的流程圖。
根據第12圖,說明實施形態2中之程式編輯裝置100的程式編輯處理。
程式編輯處理係除了實施形態1(參照第3圖)中所說明的處理以外,包含S114至S117。
在S111至S113中,命令碼抽出部111係生成抽出碼列表192,副控制程式生成部112係生成副控制程式212(與實施形態1相同)。
S113之後,處理係進至S114。
在S114中,副控制參數列表生成部113係由副控制程式212所包含的副控制碼(命令碼)抽出副控制參數,生成將所抽出的副控制參數形成為一覽的副控制參數列表193。
但是,副控制參數列表生成部113亦可使用抽出碼列表192來取代副控制程式212,而生成副控制參數列表193。
S114之後,處理係進至S115。
以下根據第13圖,說明副控制參數列表生成處理(S114)的具體例。
第13圖係顯示實施形態2中之副控制參數列表 193之一例圖。
第13圖所示之副控制參數列表193係表示No1至No3的副控制參數。
此外,副控制參數係包含有:「No」「輸入元件1」「輸入元件2」「運算子」「輸出元件」。
「No.」係表示識別由機器控制程式210所被抽出的副控制碼的抽出部位的抽出部位識別碼。
「輸入元件1」係表示在構成命令碼的構成要素之中,識別屬於值之輸入源的第一輸入元件的識別碼。
「輸入元件2」係表示在構成命令碼的構成要素之中,識別屬於值之輸入源的第二輸入元件的識別碼。
「運算子」係表示在構成命令碼的構成要素之中,識別運算種類的識別碼。
「輸出元件」係表示在構成命令碼的構成要素之中,識別表示值之輸出目的端的輸出元件的識別碼。
副控制參數列表生成部113係根據第7圖的副控制程式212,生成第13圖的副控制參數列表193。
亦即,副控制參數列表生成部113係按每個第7圖的副控制程式212所包含之(1)至(3)的命令碼,由命令碼抽出副控制參數。
接著,副控制參數列表生成部113係按每個(1)至(3)的命令碼,生成顯示由命令碼所抽出之副控制參數的第13圖的副控制參數列表193。
但是,副控制參數列表生成部113亦可使用第6圖的抽出 碼列表192,來取代第7圖的副控制程式212,來生成第13圖的副控制參數列表193。
在第13圖的副控制參數列表193中,L1的副控制參數係在第7圖或第6圖的(1)至(3)的命令碼之中,構成與抽出部位識別碼L1產生對應的(1)的命令碼的副控制參數。
同樣地,L2的副控制參數係構成第7圖或第6圖的(2)的命令碼的副控制參數,L3的副控制參數係構成第7圖或第6圖的(3)的命令碼的副控制參數。
返回至第12圖,由S115繼續說明。
在S115中,副控制參數列表顯示部114係顯示副控制參數列表193所示之副控制參數。
例如,副控制參數列表顯示部114係顯示如第14圖所示之副控制參數編輯畫面310。
第14圖係顯示實施形態1中之副控制參數編輯畫面310之一例圖。
第14圖的副控制參數編輯畫面310係包含有以表形式所表示之第13圖的副控制參數列表193。
其中,副控制參數列表193的顯示欄為可編輯之文字盒。但是,亦可使用文字盒以外的編輯手段(下拉式列表、選單等)。
此外,副控制參數編輯畫面310係包含有用以指示對副控制參數列表193的編輯結束的編輯結束按鍵311。
S115之後,處理係進至S116。
在S116中,使用者係使用鍵盤或滑鼠等輸入機器 而在程式編輯裝置100指定對所被顯示的副控制參數的編輯指示(追加、變更或刪除等)。
例如,使用者係將第14圖的副控制參數編輯畫面310所顯示的L1的輸入元件1由「X1」變更為「X2」,且按下編輯結束按鍵311。
接著,編輯指示輸入部115係由輸入機器輸入由使用者所指定的編輯指示。
S116之後,處理係進至S117。
在S117中,副控制程式編輯部116係按照使用者的編輯指示,來編輯副控制程式212所包含的副控制碼。
例如,若在第14圖的副控制參數編輯畫面310,L1的輸入元件1由「X1」變更為「X2」時,副控制程式編輯部116係在第7圖的副控制程式212所包含之(1)至(3)的副控制碼之中,選擇與抽出部位識別碼L1產生對應的(1)的副控制碼。接著,副控制程式編輯部116係將所選擇的(1)的副控制碼所包含之輸入元件的識別碼由「X1」變更為「X2」。
此外,副控制程式編輯部116亦可按照使用者的編輯指示來編輯副控制參數列表193,根據編輯後的副控制參數列表193,來生成編輯後的副控制程式212。
S117之後,處理係進至S121。
在S121中,主控制程式生成部121係藉由將抽出碼列表192所示之抽出碼由機器控制程式210除外,來生成主控制程式211(與實施形態1相同)。
藉由實施形態2,使用者係可將副控制程式212 未作程式設計而輕易地編輯。
此外,使用者係可輕易地掌握CPU單元與輸出入單元的處理的分擔。
在實施形態2中,說明例如以下所示之程式編輯裝置(100)。括弧內標記所對應的構成的符號或名稱。
程式編輯裝置100係包括:第二程式顯示部(114)、及第二程式編輯部(116)。
前述第二程式顯示部係顯示表示藉由前述第二程式生成部所生成的前述第二程式的第二程式資訊(193)。
前述第二程式編輯部係按照對藉由前述第二程式顯示部所顯示的前述第二程式資訊的編輯指示,來編輯前述第二程式。
前述程式編輯裝置係包括參數抽出部(113),其係按前述第二程式所包含之一個以上的命令碼的每個命令碼,抽出構成命令碼的一個以上的要素的各個作為參數。
前述第二程式顯示部係顯示以表形式表示藉由前述參數抽出部所被抽出的各參數的資訊作為前述第二程式資訊。
實施形態3.
說明將副控制程式212所包含之副控制碼移至主控制程式211的形態。
以下主要說明與實施形態2不同的事項。省略說明的事項與實施形態2相同。
第15圖係實施形態3中之程式編輯裝置100的功能構成圖。
根據第15圖,說明實施形態3中之程式編輯裝置100的功能構成。
程式編輯裝置100係除了實施形態2(參照第11圖)中所說明的構成以外,包括主控制程式編輯部122(第一程式編輯部之一例)。
主控制程式編輯部122係編輯主控制程式211。
例如主控制程式編輯部122係在副控制程式212所包含之副控制碼之中,將使用者所指定的副控制碼追加在主控制程式211。
第16圖係顯示實施形態3中之程式編輯裝置100的程式編輯處理的流程圖。
根據第16圖,說明實施形態3中之程式編輯裝置100的程式編輯處理。
程式編輯處理係除了實施形態2(參照第12圖)中所說明的處理以外,包含S122。
在S111至S113中,命令碼抽出部111係生成抽出碼列表192,副控制程式生成部112係生成副控制程式212(與實施形態1相同)。
S113之後,處理係進至S114。
在S114中,副控制參數列表生成部113係生成副控制參數列表193(與實施形態2相同)。
S114之後,處理係進至S115。
在S115中,副控制參數列表顯示部114係顯示副控制參數列表193。
例如副控制參數列表顯示部114係顯示第17圖所示之副控制參數編輯畫面310。
第17圖係顯示實施形態3中之副控制參數編輯畫面310之一例圖。
第17圖的副控制參數編輯畫面310係在實施形態2(參照第14圖)中所說明的畫面加上「CPU執行」欄。
「CPU執行」欄係包括用以指定欲使CPU單元201執行的副控制碼,亦即欲移至主控制程式211的副控制碼的核取方塊。
以下將作為欲使CPU單元201執行的命令碼,亦即欲移至主控制程式211的命令碼所被指定的副控制碼稱為「移行碼」。
S115之後,處理係進至S116。
在S116中,使用者係在程式編輯裝置100指定對副控制參數的編輯指示,編輯指示輸入部115係輸入由使用者所被指定的編輯指示(與實施形態2相同)。
例如,若欲使CPU單元201執行關於第17圖的副控制參數編輯畫面310所顯示之L1的副控制參數的副控制碼時,使用者係在L1的「CPU執行」欄的核取方塊點選檢核。
S116之後,處理係進至S117。
S117中,副控制程式編輯部116係按照使用者的編輯指示,來編輯副控制程式212所包含之副控制碼的副控制參數(與實施形態2相同)。
例如若在第17圖的副控制參數編輯畫面310在L1的「CPU 執行」欄的核取方塊點選檢核時,副控制程式編輯部116係在第7圖的副控制程式212所包含之(1)至(3)的副控制碼之中,刪除與抽出部位識別碼L1產生對應的(1)的副控制碼。 (1)的副控制碼係移至主控制程式211的移行碼。
S117之後,處理係進至S121。
在S121中,主控制程式生成部121係生成主控制程式211(與實施形態1相同)。
S121之後,處理係進至S122。
在S122中,主控制程式編輯部122係在主控制程式211追加以使用者的編輯指示所被指定的移行碼。
例如若在第17圖的副控制參數編輯畫面310在L1的「CPU執行」欄的核取方塊點選檢核時,主控制程式編輯部122係在第8圖的主控制程式211所包含之D1至D3的虛擬碼之中,選擇與抽出部位識別碼L1產生對應的D1的虛擬碼。接著,主控制程式編輯部122係藉由將所選擇的D1的虛擬碼變換(復原)成一般的命令碼,而在主控制程式211追加移行碼。在主控制程式211所被追加的移行碼係在S117中由副控制程式212所被刪除的(1)的副控制碼。
S122之後,程式編輯處理即結束。但是,未藉由使用者的編輯指示來指定移行碼時,並未進行S122,程式編輯處理即結束。
藉由實施形態3,使用者係可將副控制程式212所包含之副控制碼移至主控制程式211。
在實施形態3中,說明例如以下所示之程式編輯 裝置(100)。括弧內記載所對應的構成的符號或名稱。
前述程式編輯裝置係包括第一程式編輯部(122)。
前述第一程式編輯部係若對前述第二程式資訊的前述編輯指示為指定為將前述第二程式所包含之任何命令碼移至前述第一程式的移行碼的移行指示時,在前述第一程式追加前述移行碼。
前述第二程式編輯部(116)係若前述編輯指示為前述移行指示時,將前述移行碼由前述第二程式刪除。
實施形態4.
說明若機器控制程式210的命令碼可分割為複數命令碼時,在分割後的命令碼之中,抽出與抽出對象碼為相同的命令碼,來生成副控制程式212的形態。
以下主要說明與實施形態1不同的事項。關於省略說明的事項與實施形態1相同。
第18圖係實施形態4中之程式編輯裝置100的功能構成圖。
根據第18圖,說明實施形態4中之程式編輯裝置100的功能構成。
程式編輯裝置100係除了實施形態1(參照第2圖)中所說明的構成以外,包括:命令碼分割部131(分割判定部之一例)、及機器控制程式修正部132。
命令碼分割部131係在機器控制程式210所包含之命令碼之中,將可分割成複數命令碼的命令碼進行分割。
以下將可分割的命令碼稱為「可分割碼」,將分割後的命 令碼稱為「分割碼」。
機器控制程式修正部132係將機器控制程式210所包含之可分割碼修正(變換)成複數分割碼。
第19圖係顯示實施形態4中之程式編輯裝置100的程式編輯處理的流程圖。
根據第19圖,說明實施形態4中之程式編輯裝置100的程式編輯處理。
程式編輯處理係除了實施形態1(參照第3圖)中所說明的處理以外,包括S130。
在S130中,命令碼抽出部111係在將S111中未抽出的未抽出命令碼進行分割後的複數分割碼之中,抽出與抽出對象碼列表191所示之抽出對象碼為相同的命令碼。
在S130所被抽出的命令碼係連同在S111所被抽出的命令碼一起被設定在抽出碼列表192(S112)。
第20圖係顯示實施形態4中之分割碼抽出處理(S130)之一例的流程圖。
根據第20圖,說明實施形態4中之分割碼抽出處理(S130)之一例。
在S131中,命令碼抽出部111係在機器控制程式210所包含之未抽出碼之中,選擇1個未選擇的未抽出碼。
例如,命令碼抽出部111係由前頭依序選擇1個機器控制程式210所包含之未抽出碼。
未抽出碼係在機器控制程式210所包含之命令碼之中,在S111(參照第19圖)中未被抽出的命令碼。
以下將在S131所選擇的未抽出碼稱為「選擇碼」。
S131之後,處理係進至S132。
在S132中,命令碼分割部131係判定選擇碼是否為可分割為複數命令碼的可分割碼。
例如,可分割碼係被指定複數輸出目的端作為輸出輸出值的輸出目的端的命令碼。指定出第一輸出目的端與第二輸出目的端的命令碼係可分割成:對第一輸出目的端輸出輸出值的第一命令碼、及對第二輸出目的端輸出輸出值的第二命令碼的二個命令碼。
供命令碼為可分割碼之用的可分割條件係依程式或表格等來預先決定。若選擇碼滿足可分割條件時,命令碼分割部131係判定選擇碼為可分割碼。
若選擇碼為可分割碼時(YES),處理係進至S133。
若選擇碼非為可分割碼時(NO),處理係進至S135。
在S133中,命令碼分割部131係複製機器控制程式210所包含之選擇碼,將所複製的選擇碼分割成複數分割碼。
例如,命令碼分割部131係將指定出第一輸出目的端及第二輸出目的端的選擇碼,分割成對第一輸出目的端輸出輸出值的第一分割碼、及對第二輸出目的端輸出輸出值的第二分割碼的二個分割碼。
將選擇碼分割成複數分割碼的分割程序係依程式或表格等來預先決定。命令碼分割部131係按照分割程序來將選擇碼分割成複數分割碼。
S133之後,處理係進至S134。
第21圖係顯示實施形態4中之命令碼分割處理(S133)的具體例圖。
在第21圖中,(A)係對Y100輸出取得來自X1的輸入值、與來自X11的輸入值的邏輯積的第一輸出值,並且對Y101輸出取得第一輸出值、與來自X21的輸入值的邏輯積的第二輸出值的可分割碼。
命令碼分割部131係將(A)的可分割碼分割成:(a)將第一輸出值輸出至Y100的第一分割碼、及(b)將第二輸出值輸出至Y101的第二分割碼的二個分割碼。
返回至第20圖,由S134繼續說明。
在S134中,命令碼抽出部111係在複數分割碼之中,抽出與抽出對象碼列表191所示之抽出對象碼為相同的命令碼。
S134係將在第19圖的S111中機器控制程式210所包含之命令碼置換成複數分割碼的處理。
S134之後,處理係進至S135。
在S135中,命令碼抽出部111係判定是否殘留有在S131未選擇的未選擇的未抽出碼。
若殘留有未選擇的未抽出碼時(YES),處理係返回至S131。
若未殘留有未選擇的未抽出碼時(NO),處理係進至S136。
在S136中,機器控制程式修正部132係在機器控制程式210所包含之未抽出碼之中,將與在S134所被抽出的分割碼的分割源亦即可分割碼為相同的未抽出碼,修正(變換) 成複數分割碼。
S136之後,分割碼抽出處理(S130)即結束。
實施形態4可如實施形態2般為可編輯副控制程式212的形態,亦可如實施形態3般為可將副控制程式212所包含之副控制碼移至主控制程式211的形態。
藉由實施形態4,若機器控制程式210的命令碼可分割成複數命令碼時,程式編輯裝置100係可在分割後的命令碼之中,抽出與抽出對象碼相同的命令碼,生成副控制程式212。
在實施形態4中,說明例如以下所示之程式編輯裝置(100)。括弧內標記所對應的構成的符號或名稱。
前述程式編輯裝置係包括:分割判定部(131)、及命令碼分割部(131)。
前述分割判定部係在前述對象程式(210)所包含之前述複數命令碼之中,判定藉由前述命令碼抽出部未被抽出的命令碼亦即未抽出碼是否為可分割成複數命令碼的命令碼。
前述命令碼分割部係若藉由前述分割判定部被判定出前述未抽出碼為可分割的命令碼時,將前述未抽出碼分割成複數命令碼。
前述命令碼抽出部(111)係在藉由前述命令碼分割部所得之前述複數命令碼之中,重新抽出與前述抽出對象碼為相同的命令碼來作為抽出碼。
實施形態5.
說明設定命令碼的抽出條件的形態。
以下主要說明與實施形態1不同的事項。關於省略說明的事項,係與實施形態1相同。
第22圖係實施形態5中之程式編輯裝置100的功能構成圖。
根據第22圖,說明實施形態5中之程式編輯裝置100的功能構成。
程式編輯裝置100係除了實施形態1(參照第2圖)中所說明的構成以外,包括:抽出條件設定部141(抽出條件畫面顯示部之一例)。
抽出條件設定部141係設定用以由機器控制程式210抽出命令碼的抽出條件。
命令碼抽出部111係除了與抽出對象碼列表191所示之抽出對象碼為相同的命令碼以外,由機器控制程式210抽出滿足藉由抽出條件設定部141所設定的抽出條件的命令碼,生成抽出碼列表192。
但是,命令碼抽出部111亦可在抽出對象碼列表191所示之抽出對象碼之中,特定滿足抽出條件的抽出對象碼,由機器控制程式210抽出與所特定的抽出對象碼為相同的命令碼,生成抽出碼列表192。
以下說明藉由抽出條件設定部141所為之抽出條件設定處理。
(1)抽出條件設定部141係顯示用以設定抽出條件的抽出條件畫面320。
(2)使用者係使用輸入機器,在抽出條件畫面320指定抽 出條件。
(3)抽出條件設定部141係由輸入機器輸入在抽出條件畫面320所被指定的抽出條件。
第23圖係顯示實施形態5中之抽出條件畫面320之一例圖。
根據第23圖,說明實施形態5中之抽出條件畫面320之一例。
抽出條件畫面320係包括「指定方法」「抽出條件」「抽出上限值」「優先順位」,作為為了設定抽出條件所指定的項目。
此外,抽出條件畫面320係包括用以結束抽出條件的設定的設定結束按鍵。
「指定方法」係用以選擇指定輸出入元件的方法的項目。輸入元件係輸入值的輸入源,輸出元件係輸出值的輸出目的端。例如,「指定方法」係使用核取方塊所構成。
在指定方法係有以「元件名」指定輸出入元件的方法、及以「標籤名」指定輸出入元件的方法。
「元件名」係藉由英文字母或數字等記號來識別輸出入元件。「標籤名」係藉由自然語言來識別輸出入元件。
「抽出條件」係用以指定輸出入元件的項目。
「抽出上限值」係用以指定所抽出的命令碼的數的上限值的項目。
「優先順位」係用以指定命令碼所包含之運算子的項目,指定運算子的優先順位。
例如「抽出條件」「抽出上限值」「優先順位」係由文字盒所構成。
第24圖係顯示實施形態5中之標籤名對應表329之一例圖。
標籤名對應表329係將元件名與標籤名產生對應的表格。
程式編輯裝置100若先記憶如第24圖所示之標籤名對應表329即可。
抽出條件設定部141係可藉由使用標籤名對應表329,將在抽出條件畫面320所被指定的元件名變換成標籤名。
此外,抽出條件設定部141係藉由使用標籤名對應表329,可將在抽出條件畫面320所被指定的標籤名變換成元件名。
第25圖係顯示實施形態5中之機器控制程式210之一例圖。
如第25圖所示,機器控制程式210係有使用輸出入元件的標籤名來作成的情形。
此時,命令碼抽出部111係藉由使用標籤名對應表329(參照第24圖),可將機器控制程式210所標記的標籤名變換成元件名。
此外,若使用輸出入元件的元件名來作成機器控制程式210時,命令碼抽出部111係藉由使用標籤名對應表329,可將機器控制程式210所標記的元件名變換成標籤名。
實施形態5可如實施形態2般為可編輯副控制程式212的形態,亦可如實施形態3般可將副控制程式212所包 含之副控制碼移至主控制程式211的形態。
此外,實施形態5亦如實施形態4所示,可為抽出將命令碼分割的分割碼的形態。
藉由實施形態5,使用者係可設定命令碼的抽出條件。
在實施形態5中,說明例如以下所示之程式編輯裝置(100)。括弧內標註所對應的構成的符號或名稱。
前述程式編輯裝置係包括抽出條件畫面顯示部(141),其係顯示用以指定由前述對象程式(210)抽出命令碼的抽出條件的抽出條件畫面(320)。
前述命令碼抽出部(111)係在前述對象程式所包含之前述複數命令碼之中,重新抽出滿足在前述抽出條件畫面所被指定的抽出條件的命令碼作為抽出碼。
實施形態6.
說明檢測在主控制程式211與副控制參數列表193之間重複的命令碼的形態。
以下說明與實施形態2不同的事項。省略說明的事項與實施形態2相同。
第26圖係實施形態6中之程式編輯裝置100的功能構成圖。
根據第26圖,說明實施形態6中之程式編輯裝置100的功能構成。
程式編輯裝置100係除了實施形態2(參照第11圖)中所說明的構成以外,包括:重複碼檢測部151(重複碼 判定部之一例)、及檢測結果顯示部152(重複碼資訊顯示部之一例)。
重複碼檢測部151係檢測在主控制程式211與副控制參數列表193之間重複的命令碼(以下稱為重複碼)。
檢測結果顯示部152係顯示重複碼的檢測結果。
第27圖係顯示實施形態6中之程式編輯裝置100的程式編輯處理的流程圖。
如第27圖所示,程式編輯裝置100係在副控制程式編輯處理(S117)之前執行主控制程式生成處理(S121)。
第28圖係顯示實施形態6中之副控制程式編輯處理(S117)的流程圖。
根據第28圖,說明實施形態6中之副控制程式編輯處理(S117)。
在S117-1中,副控制程式編輯部116係根據在S116中所被輸入的編輯指示、及所被編輯指示的副控制參數,生成編輯後的副控制碼。
S117-1之後,處理係進至S117-2。
在S117-2中,重複碼檢測部151係判定編輯後的副控制碼與主控制程式211所包含之主控制碼是否重複。
在此,重複的命令碼(重複碼)亦可為全部變數值相同的命令碼、及至少任一變數值相同的命令碼的任一者。
例如若編輯後的副控制碼所指定的輸出元件、及主控制程式211所包含之主控制碼所指定的輸出元件相同時,重複碼檢測部151係判定編輯後的副控制碼與主控制碼為重複。
若編輯後的副控制碼與主控制碼為重複時(YES),處理係進至S117-3。
若編輯後的副控制碼與主控制碼為不重複時(NO),處理係進至S117-5。但是,在S117-5之前,檢測結果顯示部152亦可顯示表示編輯後的副控制碼與主控制碼為不重複的表記或訊息。
在S117-3中,檢測結果顯示部152係顯示表示編輯後的副控制碼與主控制碼為重複的表記或訊息。
藉此,檢測結果顯示部152係促使使用者修正副控制參數。
S117-3之後,處理係進至S117-4。
第29圖係顯示實施形態6中之檢測結果顯示處理(S117-3)的具體例圖。
在第29圖中,主控制程式211的主控制碼(1)的輸出元件、與副控制碼L2的輸出元件均為「Y10」。
因此,重複碼檢測部151係判定主控制碼(1)與副控制碼L2為重複。
接著,檢測結果顯示部152係在副控制參數編輯畫面310顯示表示副控制碼L2為重複碼的訊息。
在S117-4中,使用者係使用輸入機器,指示對與主控制碼為重複的副控制碼的編輯(例如副控制碼的刪除)。
接著,編輯指示輸入部115係由輸入機器輸入編輯指示。
S117-4之後,處理係進至S117-5。
在S117-5中,副控制程式編輯部116係按照在S116所被輸入的編輯指示及在S117-4所被輸入的編輯指示, 來編輯副控制程式212。
藉由實施形態6,程式編輯裝置100係可檢測在主控制程式211與副控制參數列表193之間重複的命令碼。
在實施形態6中,說明例如以下所示之程式編輯裝置(100)。括弧內標記所對應的構成的符號或名稱。
前述程式編輯裝置係包括:重複碼判定部(151)、及重複碼資訊顯示部(152)。
前述重複碼判定部係根據前述編輯指示,判定與前述第一程式(211)所包含之命令碼為重複的命令碼亦即重複碼是否為前述第二程式(212)所包含。
前述重複碼資訊顯示部係若藉由前述重複碼判定部而被判定出在前述第二程式包含前述重複碼時,顯示表示在前述第二程式包含前述重複碼的重複碼資訊。
各實施形態亦可在不會產生矛盾的範圍內,將全體或一部分組合。
100‧‧‧程式編輯裝置
200‧‧‧機器控制裝置
201‧‧‧CPU單元
202‧‧‧輸出入單元
204‧‧‧網路
209‧‧‧周邊機器
210‧‧‧機器控制程式
211‧‧‧主控制程式
212‧‧‧副控制程式

Claims (7)

  1. 一種程式編輯裝置,其特徵在於包括:抽出對象碼記憶部,其係在藉由第一執行部及第二執行部所執行之對象程式所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼;命令碼抽出部,其係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶的前述抽出對象碼為相同的命令碼作為抽出碼;第二程式生成部,其係生成包含藉由前述命令碼抽出部所抽出的前述抽出碼的程式,作為藉由前述第二執行部所執行的第二程式;第一程式生成部,其係生成將藉由前述命令碼抽出部所抽出的前述抽出碼由前述對象程式除外所得之程式,作為藉由前述第一執行部所執行的第一程式;第二程式顯示部,其係顯示表示藉由前述第二程式生成部所生成的前述第二程式的第二程式資訊;第二程式編輯部,其係按照對藉由前述第二程式顯示部所顯示的前述第二程式資訊的編輯指示,來編輯前述第二程式;及第一程式編輯部,其係若對前述第二程式資訊的前述編輯指示為指定作為將前述第二程式所包含之任何命令碼移至前述第一程式的移行碼的移行指示時,在前述第一程式追加前述移行碼, 前述第二程式編輯部係若前述編輯指示為前述移行指示時,將前述移行碼由前述第二程式刪除。
  2. 一種程式編輯裝置,其特徵在於包括:抽出對象碼記憶部,其係在藉由第一執行部及第二執行部所執行之對象程式所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼;命令碼抽出部,其係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶的前述抽出對象碼為相同的命令碼作為抽出碼;第二程式生成部,其係生成包含藉由前述命令碼抽出部所抽出的前述抽出碼的程式,作為藉由前述第二執行部所執行的第二程式;第一程式生成部,其係生成將藉由前述命令碼抽出部所抽出的前述抽出碼由前述對象程式除外所得之程式,作為藉由前述第一執行部所執行的第一程式;第二程式顯示部,其係顯示表示藉由前述第二程式生成部所生成的前述第二程式的第二程式資訊;第二程式編輯部,其係按照對藉由前述第二程式顯示部所顯示的前述第二程式資訊的編輯指示,來編輯前述第二程式;重複碼判定部,其係根據前述編輯指示,來判定與前述第一程式所包含之命令碼為重複的命令碼亦即重複碼是否為前述第二程式所包含;及 重複碼資訊顯示部,其係若藉由前述重複碼判定部而被判定出在前述第二程式包含前述重複碼時,顯示表示在前述第二程式包含前述重複碼的重複碼資訊。
  3. 一種程式編輯裝置,其特徵在於包括:抽出對象碼記憶部,其係在藉由第一執行部及第二執行部所執行之對象程式所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼;命令碼抽出部,其係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶的前述抽出對象碼為相同的命令碼作為抽出碼;第二程式生成部,其係生成包含藉由前述命令碼抽出部所抽出的前述抽出碼的程式,作為藉由前述第二執行部所執行的第二程式;第一程式生成部,其係生成將藉由前述命令碼抽出部所抽出的前述抽出碼由前述對象程式除外所得之程式,作為藉由前述第一執行部所執行的第一程式;分割判定部,其係判定在前述對象程式所包含之前述複數命令碼之中,藉由前述命令碼抽出部未被抽出的命令碼亦即未抽出碼是否為可分割成複數命令碼的命令碼;及命令碼分割部,其係若藉由前述分割判定部而被判定出前述未抽出碼為可分割的命令碼時,將前述未抽出碼分割成複數命令碼,前述命令碼抽出部係在藉由前述命令碼分割部所得的前述複數命令碼之中,重新抽出與前述抽出對象碼相同的命令 碼作為抽出碼。
  4. 一種程式編輯方法,使用包括抽出對象碼記憶部、命令碼抽出部、第二程式生成部、第一程式生成部、第二程式顯示部、第二程式編輯部、及第一程式編輯部的程式編輯裝置,其特徵在於:前述抽出對象碼記憶部係在藉由第一執行部及第二執行部所執行的對象程式所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼的記憶部,前述命令碼抽出部係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶的前述抽出對象碼為相同的命令碼作為抽出碼,前述第二程式生成部係生成包含藉由前述命令碼抽出部所抽出的前述抽出碼的程式,作為藉由前述第二執行部所執行的第二程式,前述第一程式生成部係生成將藉由前述命令碼抽出部所被抽出的前述抽出碼由前述對象程式除外所得的程式,作為藉由前述第一執行部所執行的第一程式;其中,前述第二程式顯示部,其係顯示表示藉由前述第二程式生成部所生成的前述第二程式的第二程式資訊;及前述第二程式編輯部,其係按照對藉由前述第二程式顯示部所顯示的前述第二程式資訊的編輯指示,來編輯前述第二程式,其中,前述第一程式編輯部,其係若對前述第二程式資訊 的前述編輯指示為指定作為將前述第二程式所包含之任何命令碼移至前述第一程式的移行碼的移行指示時,在前述第一程式追加前述移行碼,及前述第二程式編輯部係若前述編輯指示為前述移行指示時,將前述移行碼由前述第二程式刪除。
  5. 一種程式編輯方法,使用包括抽出對象碼記憶部、命令碼抽出部、第二程式生成部、第一程式生成部、第二程式顯示部、第二程式編輯部、重複碼判定部、及重複碼資訊顯示部的程式編輯裝置,其特徵在於:前述抽出對象碼記憶部係在藉由第一執行部及第二執行部所執行的對象程式所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼的記憶部,前述命令碼抽出部係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶的前述抽出對象碼為相同的命令碼作為抽出碼,前述第二程式生成部係生成包含藉由前述命令碼抽出部所抽出的前述抽出碼的程式,作為藉由前述第二執行部所執行的第二程式,前述第一程式生成部係生成將藉由前述命令碼抽出部所被抽出的前述抽出碼由前述對象程式除外所得的程式,作為藉由前述第一執行部所執行的第一程式;其中,前述第二程式顯示部,其係顯示表示藉由前述第二程式生成部所生成的前述第二程式的第二程式資訊;及 前述第二程式編輯部,其係按照對藉由前述第二程式顯示部所顯示的前述第二程式資訊的編輯指示,來編輯前述第二程式,其中,前述重複碼判定部,其係根據前述編輯指示,來判定與前述第一程式所包含之命令碼為重複的命令碼亦即重複碼是否為前述第二程式所包含;及重複碼資訊顯示部,其係若藉由前述重複碼判定部而被判定出在前述第二程式包含前述重複碼時,顯示表示在前述第二程式包含前述重複碼的重複碼資訊。
  6. 一種程式編輯方法,使用包括抽出對象碼記憶部、命令碼抽出部、第二程式生成部、第一程式生成部、分割判定部、及命令碼分割判定部的程式編輯裝置,其特徵在於:前述抽出對象碼記憶部係在藉由第一執行部及第二執行部所執行的對象程式所包含之複數命令碼之中,記憶藉由第二執行部所執行的命令碼作為抽出對象碼的記憶部,前述命令碼抽出部係在前述對象程式所包含之前述複數命令碼之中,抽出與前述抽出對象碼記憶部所記憶的前述抽出對象碼為相同的命令碼作為抽出碼,前述第二程式生成部係生成包含藉由前述命令碼抽出部所抽出的前述抽出碼的程式,作為藉由前述第二執行部所執行的第二程式,前述第一程式生成部係生成將藉由前述命令碼抽出部所被抽出的前述抽出碼由前述對象程式除外所得的程式,作為 藉由前述第一執行部所執行的第一程式;其中,前述分割判定部,其係判定在前述對象程式所包含之前述複數命令碼之中,藉由前述命令碼抽出部未被抽出的命令碼亦即未抽出碼是否為可分割成複數命令碼的命令碼;前述命令碼分割部,其係若藉由前述分割判定部而被判定出前述未抽出碼為可分割的命令碼時,將前述未抽出碼分割成複數命令碼,前述命令碼抽出部係在藉由前述命令碼分割部所得的前述複數命令碼之中,重新抽出與前述抽出對象碼相同的命令碼作為抽出碼。
  7. 一種編輯程式之程式產品,用以使電腦發揮作為如申請專利範圍第1至第3項其中之一之程式編輯裝置的功能。
TW102118903A 2013-04-08 2013-05-29 Program editing device, program editing method and editing program of the program products TWI497240B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/060589 WO2014167622A1 (ja) 2013-04-08 2013-04-08 プログラム編集装置、プログラム編集方法およびプログラム編集プログラム

Publications (2)

Publication Number Publication Date
TW201439695A TW201439695A (zh) 2014-10-16
TWI497240B true TWI497240B (zh) 2015-08-21

Family

ID=51689059

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102118903A TWI497240B (zh) 2013-04-08 2013-05-29 Program editing device, program editing method and editing program of the program products

Country Status (7)

Country Link
US (1) US20150370547A1 (zh)
JP (1) JP5936769B2 (zh)
KR (1) KR101726120B1 (zh)
CN (1) CN105122157B (zh)
DE (1) DE112013006915T5 (zh)
TW (1) TWI497240B (zh)
WO (1) WO2014167622A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5921765B2 (ja) * 2013-04-08 2016-05-24 三菱電機株式会社 プログラムグラフ表示装置、プログラムグラフ表示方法およびプログラムグラフ表示プログラム
WO2015186178A1 (ja) * 2014-06-02 2015-12-10 三菱電機株式会社 プログラマブルコントローラシステム、プログラマブルコントローラ、プログラム表示装置、プログラムの表示方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695713A (ja) * 1992-09-14 1994-04-08 Hitachi Ltd プログラマブルコントローラとそのプログラミング方法
JPH09171405A (ja) * 1995-12-20 1997-06-30 Hitachi Ltd Faシステムの制御装置と方法、制御プログラム生成方法
TW373149B (en) * 1997-07-02 1999-11-01 Matsushita Electric Ind Co Ltd Program control method
TW201028916A (en) * 2009-01-22 2010-08-01 Foxnum Technology Co Ltd Program edit system and method for PLC

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3126006B2 (ja) * 1993-03-02 2001-01-22 株式会社日立製作所 プログラマブルコントローラ
JP4186383B2 (ja) * 2000-05-12 2008-11-26 オムロン株式会社 プログラマブルコントローラシステム
JP2002041111A (ja) 2000-07-26 2002-02-08 Matsushita Electric Works Ltd プログラミング支援装置
US20030145309A1 (en) * 2002-01-18 2003-07-31 Rajendra Inamdar Probe description language
US7587709B2 (en) * 2003-10-24 2009-09-08 Microsoft Corporation Adaptive instrumentation runtime monitoring and analysis
JP4924976B2 (ja) * 2005-03-23 2012-04-25 新日鉄ソリューションズ株式会社 ソフトウェア開発支援システム
DE112006003770T5 (de) * 2006-03-29 2009-04-23 Mitsubishi Electric Corporation Programmierungsunterstützungsvorrichtung, Programmierungsunterstützungsverfahren, Programm zum Veranlassen eines Computers, das Verfahren zu Implementieren, und Aufzeichnungsmedium, das das Programm enthält
US8850388B2 (en) * 2006-09-07 2014-09-30 Microsoft Corporation Controlling application features
US9047412B2 (en) * 2007-05-06 2015-06-02 Dynatrace Corporation System and method for extracting instrumentation relevant inheritance relationships for a distributed, inheritance rule based instrumentation system
JP2011257904A (ja) 2010-06-08 2011-12-22 Hitachi Ltd 制御装置及びそのデータ処理方法
US8627308B2 (en) * 2010-06-30 2014-01-07 International Business Machines Corporation Integrated exchange of development tool console data
JP2012118715A (ja) * 2010-11-30 2012-06-21 Fuji Electric Co Ltd Plcシステム、その開発支援装置、プログラム
JP5757098B2 (ja) * 2011-02-08 2015-07-29 富士電機株式会社 プログラム作成支援装置、プログラム作成支援方法
US9529816B2 (en) * 2013-01-25 2016-12-27 Konica Minolta Laboratory U.S.A., Inc. Arbitrating among concurrent editors of shared documents
US9465717B2 (en) * 2013-03-14 2016-10-11 Riverbed Technology, Inc. Native code profiler framework

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0695713A (ja) * 1992-09-14 1994-04-08 Hitachi Ltd プログラマブルコントローラとそのプログラミング方法
JPH09171405A (ja) * 1995-12-20 1997-06-30 Hitachi Ltd Faシステムの制御装置と方法、制御プログラム生成方法
TW373149B (en) * 1997-07-02 1999-11-01 Matsushita Electric Ind Co Ltd Program control method
TW201028916A (en) * 2009-01-22 2010-08-01 Foxnum Technology Co Ltd Program edit system and method for PLC

Also Published As

Publication number Publication date
JPWO2014167622A1 (ja) 2017-02-16
TW201439695A (zh) 2014-10-16
CN105122157A (zh) 2015-12-02
KR20150127163A (ko) 2015-11-16
US20150370547A1 (en) 2015-12-24
KR101726120B1 (ko) 2017-04-11
JP5936769B2 (ja) 2016-06-22
CN105122157B (zh) 2018-01-19
DE112013006915T5 (de) 2015-12-24
WO2014167622A1 (ja) 2014-10-16

Similar Documents

Publication Publication Date Title
CN107924180B (zh) 用于将图转换成应用工程元素的方法、装置和非暂时性计算机可读介质
CN104007958B (zh) 用于创建和处理用于工业自动化装置的程序的程序编辑器和方法
TWI497241B (zh) Program display device, program display method and display program diagram of the program products
JP5489958B2 (ja) 試験テーブル生成装置及びその方法
JP6051546B2 (ja) 情報処理装置、シミュレーション方法、およびプログラム
JP6786984B2 (ja) プログラム処理装置およびプログラム
JP3910196B2 (ja) シーケンスプログラムの編集装置
WO2016021085A1 (ja) データリンク生成装置、データリンク生成方法、データリンク構造および電子ファイル
TWI497240B (zh) Program editing device, program editing method and editing program of the program products
US20220197238A1 (en) Development support device, method for controlling development support device, and recording medium
JP4791990B2 (ja) プラントモデル開発システム
JP6235945B2 (ja) ソースコード生成および提供装置、並びにソースコード生成および提供方法
JP2007299205A (ja) 制御プログラム作成装置、入力支援方法及び入力支援プログラム
JP2007047971A (ja) 個別プログラム生成装置及び方法
JP2009251666A (ja) 変更履歴作成装置、方法及びプログラム
US20240028188A1 (en) System, product manufacturing method, information processing apparatus, information processing method, and recording medium
US20220342376A1 (en) Apparatus and method for extracting common command information from plc ladder information
KR101718086B1 (ko) Hmi의 태그 처리 장치 및 방법
JP2009219245A (ja) ヒューマンインターフェースの表示/操作部設計方法
JP6390327B2 (ja) ディジタル型保護継電装置のリモートhi自動生成システム。
JP5904885B2 (ja) データ比較装置およびデータ比較方法
JP5243302B2 (ja) ファンクションブロック図作成装置、作成方法及び作成プログラム
JPH10149208A (ja) プログラムの比較方法およびコントローラプログラムの作成装置
JP2006330932A (ja) プラント制御用プログラムの表示・編集装置

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees