TWI564685B - 工程工具、程式編輯裝置及程式編輯系統 - Google Patents

工程工具、程式編輯裝置及程式編輯系統 Download PDF

Info

Publication number
TWI564685B
TWI564685B TW104114115A TW104114115A TWI564685B TW I564685 B TWI564685 B TW I564685B TW 104114115 A TW104114115 A TW 104114115A TW 104114115 A TW104114115 A TW 104114115A TW I564685 B TWI564685 B TW I564685B
Authority
TW
Taiwan
Prior art keywords
program
debug
official
debugging
unit
Prior art date
Application number
TW104114115A
Other languages
English (en)
Other versions
TW201606463A (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 三菱電機股份有限公司
Publication of TW201606463A publication Critical patent/TW201606463A/zh
Application granted granted Critical
Publication of TWI564685B publication Critical patent/TWI564685B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • 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/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13142Debugging, tracing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23283Debugging, breakpoint

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Programmable Controllers (AREA)
  • Software Systems (AREA)

Description

工程工具、程式編輯裝置及程式編輯系統
本發明係有關編寫順序程式(sequence program)的工程工具(engineering tool)、程式編輯裝置及程式編輯系統(system)。
就對順序程式進行除錯(debug)的方法而言,有進行目前值的變更處理或進行附帶執行條件的測試(test)之方法,但這些方法在設定操作上費時費工。關於目前值的變更處理,其係在順序程式的執行當中以手動變更記憶體(memory)的值之處理。要執行目前值的變更處理,係必須開啟專用對話框(dialog)畫面,指定要進行變更的記憶體編號及值。關於附帶執行條件的測試,其係具有在順序程式的特定位置,即特定條件,將記憶體的值設定為指定值之功能。此功能係必須先開啟程式編輯器(editor)以外的專用對話框畫面,再指定條件與欲進行變更的記憶體編號及值。
此外,就對順序程式進行除錯的方法而言,還有進行例如下述(1)至(6)一連串操作的方法(參照例如下 述之專利文獻1)。另外,以下係將作為實際產品運作的順序程式稱為正式程式。
(1)編寫正式程式,並轉換成能夠以控制器(controller)執行。
(2)將正式程式寫入控制器執行,以監視器(monitor)等確認動作。
(3)當於執行時檢測到錯誤,便在正式程式中欲進行除錯的部分即錯誤位置添加除錯用的程式。例如,在欲設為常態ON的迴路的條件部分插入「OR TRUE」的迴路要素等而添加除錯用程式。然後,將插入有除錯用程式的全體程式轉換成能夠以控制器執行。
(4)將含有除錯用程式的全體程式寫入控制器執行,再次以監視器等確認動作。
(5)當切換執行正式程式與除錯用程式以進行動作確認時,反覆進行上述(3)及(4)。具體而言,係反覆進行全體程式的修正、轉換、寫入及動作確認。
(6)在確認正式程式正常動作後,將除錯用程式的部分刪除。接著,將正式程式再次轉換成能夠以控制器執行,並寫入控制器。然後,以控制器執行使用正式程式的處理。
(先前技術文獻) (專利文獻)
專利文獻1:日本國特開平4-370805號公報
然而,上述的習知技術在進行除錯作業時係必須反覆進行程式的編輯、轉換、寫入、執行,因此有除錯作業費時費工的問題。
本發明係鑒於上述情事而研創,目的在於獲得能夠容易進行除錯的工程工具、程式編輯裝置及程式編輯系統。
為了解決上述課題並達成上述目的,本發明的工程工具係具備程式顯示編輯部,其係將正式程式與除錯用程式區別開來編輯,俾使當選取的是作為實際產品運作的前述正式程式的動作確認時所使用的前述除錯用程式時,以控制器執行前述除錯用程式,當選取的不是前述除錯用程式時,以前述控制器執行前述正式程式,而不執行前述除錯用程式。
依據本發明,係達到能夠編寫出能夠容易進行除錯的順序程式之效果。
1‧‧‧除錯系統
2‧‧‧程式編輯裝置
10‧‧‧工程工具
11‧‧‧程式顯示編輯部
12‧‧‧命令管理部
13‧‧‧程式記憶部
14‧‧‧程式轉換部
15‧‧‧執行切換部
16‧‧‧PLC通信部
20‧‧‧PLC
21‧‧‧程式執行部
31‧‧‧接受部
32‧‧‧顯示部
41‧‧‧除錯用程式
90‧‧‧編輯程式
91‧‧‧CPU
92‧‧‧ROM
93‧‧‧RAM
B‧‧‧匯流排線
S10至S110‧‧‧步驟
第1圖係顯示實施形態的除錯系統的構成之圖。
第2圖係顯示全體程式的顯示例之圖。
第3圖係顯示切換PLC的執行模式(mode)的畫面的一例之圖。
第4圖係顯示除錯的處理程序之流程圖(flow chart)。
第5圖係供說明除錯用程式的第1編寫例之用之圖。
第6圖係供說明除錯用程式的第2編寫例之用之圖。
第7圖係顯示程式編輯裝置的硬體(hardware)構成之圖。
以下,根據圖式,詳細說明本發明實施形態的工程工具、程式編輯裝置及程式編輯系統。另外,本發明並不受下述實施形態所限定。
實施形態
在本實施形態中,用語「正式程式」、「除錯用程式」、「全體程式」的使用係區別如下。
正式程式:作為實際產品運作的程式碼(code)或其執行物件(object)。正式程式係於以實際產品的製造步驟等使控制器控制機器人(robot)等時使用。
除錯用程式:作為在產品出貨前確認動作用所編寫而動作的程式碼部分或其執行物件。除錯用程式係在實際產品中不動作的部分。
全體程式:插入有除錯用程式的正式程式,指整個順序程式。
另外,在以下的說明中,全體程式係可為插入有除錯用程式的正式程式,亦可為插入除錯用程式前的正式程式。
第1圖係顯示實施形態的除錯系統的構成之圖。使用PLC(Programmable Logic Controller;可程式邏輯控制器)系統的除錯系統1係具有程式編輯裝置2與PLC 20。程式編輯裝置2係電腦(computer)等,係具備有工程工具10、監視器等顯示部32、滑鼠(mouse)及鍵盤(keyboard)等接受部31。
接受部31係接受以外部裝置等編寫的正式程式及來自使用者(user)的指示等。接受部31係連接於工程工具10,將正式程式及使用者輸入的指示輸入至工程工具10。顯示部32係連接於工程工具10,依照來自工程工具10的指示,顯示全體程式、正式程式、除錯用程式等順序程式。
工程工具10係編寫階梯圖(ladder)程式等順序程式的程式設計工具(programming tool)。工程工具10係編輯以PLC 20運作的順序程式。工程工具10係能夠以例如電腦上的SW(software;軟體)的形式實現。
除錯系統1係在對順序程式進行除錯時,省去編寫除錯專用的程式後執行的作業,藉此削減順序程式的設計工時。在本實施形態中,係以令工程工具10能夠切換正式程式與除錯用程式之方式編寫全體程式。
工程工具10係以除錯用程式具備除錯專用命令之方式編寫全體程式。工程工具10係具有將除錯專用命令的部分與正式程式的部分區別開來進行全體程式的顯示及編輯之功能。PLC 20係僅於除錯模式時執行除錯用程 式的除錯專用命令,於一般模式時則執行正式程式。
PLC 20係控制器的一例,係使用順序程式來控制機器人等。本實施形態的PLC 20係使用以工程工具10編寫的全體程式來控制機器人等。如上述,全體程式係以工程工具10切換編寫及編輯的模式,以PLC 20執行對應模式切換的處理。
工程工具10係具備程式顯示編輯部11、命令管理部12、程式記憶部13、程式轉換部14、執行切換部15及PLC通信部16。
程式顯示編輯部11係編輯器形式的應用軟體(application software),用於編輯以PLC 20執行的程式碼。在使用PLC 20或機器人的PLC系統中,順序程式常會使用階梯圖語言。以下係針對順序程式為階梯圖程式的情況進行說明。
程式顯示編輯部11係根據從接受部31輸入的來自使用者的指示,執行順序程式其顯示至顯示部32的顯示處理及編輯處理等。程式顯示編輯部11係例如將與來自使用者的指示對應的除錯專用命令插入至順序程式內。
程式顯示編輯部11係將正式程式與除錯用程式區別開來編輯,俾使當選取的是除錯用程式時,以PLC 20執行除錯用程式,當選取的不是除錯用程式時,以PLC 20執行正式程式,不執行除錯用程式。
此外,程式顯示編輯部11係將使用者所指 定的正式程式內的迴路從正式程式切換為除錯用程式。此外,程式顯示編輯部11係具有令以除錯專用命令編寫的除錯用程式與正式程式區別開來顯示之功能。
第2圖係顯示全體程式的顯示例之圖。程式顯示編輯部11係將全體程式的至少一部分顯示在顯示部32。此時,程式顯示編輯部11係令除錯用程式與正式程式區別開來顯示。另外,在第2圖中係將除錯用程式表示為除錯用程式41。程式顯示編輯部11係例如可將除錯用程式41與正式程式以不同顏色表示,亦可將除錯用程式41以線條等圍起。程式顯示編輯部11係將編輯完成的全體程式傳送至程式記憶部13。
命令管理部12係記憶能夠在程式顯示編輯部11輸入至順序程式內的命令的清單。命令管理部12係將正式程式使用的正式命令與除錯用程式使用的除錯專用命令區別管理。命令管理部12管理的命令係依照來自使用者的指示而傳送至程式顯示編輯部11。此外,命令管理部12管理的命令受程式轉換部14讀取。
程式記憶部13係記憶以外部裝置編寫的編輯前的正式程式的程式碼及以程式顯示編輯部11編寫的全體程式的程式碼。此外,程式記憶部13還記憶程式轉換部14轉換出的全體程式的執行碼。
程式轉換部14係執行將位於程式記憶部13內的全體程式的程式碼轉換成能夠以PLC 20執行的執行碼之處理,即編譯(compile)。執行碼係以PLC 20執行的處 理之排列,係例如以由命令及其運算元(operand)組成的指令(command)行的形式表現。
本實施形態的程式轉換部14係具備將程式顯示編輯部11所插入到全體程式的除錯專用命令轉換成能夠以PLC 20執行的除錯專用命令之功能。
程式轉換部14係在將程式碼轉換成能夠以PLC 20執行的執行碼時,讀取命令管理部12管理的命令。接著,程式轉換部14係根據讀出的命令是正式命令還是除錯專用命令來轉換程式碼。程式轉換部14係以令各程式碼能夠識別是正式命令與除錯專用命令的何者之方式轉換程式碼。
程式轉換部14係例如在各程式碼附加表示是正式命令的資訊或表示是除錯專用命令的資訊。程式轉換部14係將轉換後的全體程式傳送至程式記憶部13及PLC通信部16。
執行切換部15係具有切換PLC 20的執行模式之介面(interface)功能。第3圖係顯示切換PLC的執行模式的畫面的一例之圖。工程工具10係令切換PLC 20的執行模式時使用的圖示(icon)顯示在順序程式的編輯畫面。要切換PLC 20的執行模式時使用的圖示乃係代表一般模式的圖示及代表除錯模式的圖示。代表一般模式的圖示及代表除錯模式的圖示係配置在編輯順序程式的畫面的工具列(tool bar)上等。
代表一般模式的圖示係要令PLC 20執行正 式程式時選取的圖示,代表除錯模式的圖示乃係要令PLC 20執行除錯用程式時選取的圖示。
執行切換部15係當代表一般模式的圖示被按下,便將指示一般模式的命令傳送至PLC通信部16。執行切換部15係當代表除錯模式的圖示被按下,便將指示除錯模式的命令傳送至PLC通信部16。
PLC通信部16係將程式轉換部14轉換出的全體程式的執行碼寫入PLC 20。此外,PLC通信部16係將令PLC 20以一般模式動作的命令或以除錯模式動作的命令傳送至PLC 20。另外,在以下的說明中,有時會將指示一般模式的命令或指示除錯模式的命令稱為模式切換命令。
PLC 20係執行由PLC通信部16寫入的執行碼之HW(硬體)。PLC 20係具有程式執行部21。程式執行部21係執行執行碼的處理之CPU(Central Processing Unit;中央處理單元)等。本實施形態的程式執行部21係依照模式切換命令,將執行全體程式的模式切換為除錯模式與一般模式的其中一者。程式執行部21係依照模式切換命令,以除錯模式與一般模式的其中一者來執行全體程式。程式執行部21係於除錯模式時執行除錯專用命令,於一般模式時則不執行除錯專用命令。另外,程式執行部21係亦可為以SW實現的模擬器(simulator)。
接著,針對除錯系統1執行的除錯的處理程序進行說明。第4圖係顯示除錯的處理程序之流程圖。當 編寫正式程式,便經由接受部31將該正式程式寫入程式記憶部13。接著,程式轉換部14係將位於程式記憶部13內的正式程式的程式碼轉換成能夠以PLC 20執行的執行碼(步驟(step)S10)。程式記憶部13係將轉換後的執行碼記憶起來。
PLC通信部16係將程式轉換部14轉換出的正式程式的執行碼寫入PLC 20(步驟S20)。然後,PLC 20的程式執行部21係使用正式程式令PLC 20動作。接著,進行PLC 20的動作確認,藉此檢查正式程式的錯誤(步驟S30)。
當檢測到正式程式的錯誤,在正式程式中欲進行動作確認的位置添加使用除錯專用命令的除錯用程式。該除錯用程式係插入至正式程式內。例如在欲設為常態ON的迴路的條件部分插入「OR TRUE」的迴路要素。接著,插入有除錯用程式的正式程式係作為全體程式寫入程式記憶部13。
程式轉換部14係將位於程式記憶部13內的除錯用程式的程式碼轉換成能夠以PLC 20執行的執行碼(步驟S40)。程式記憶部13係將轉換後的執行碼記憶起來。
第5圖係供說明除錯用程式的第1編寫例之用之圖。在第5圖中係顯示以正式程式建構迴路後,所選取範圍的正式程式變更成除錯用程式時的操作與畫面的示意圖(image)。
當使用者從配置有正式程式的迴路區域中 選取欲切換為除錯用程式的區域42(ST1),程式顯示編輯部11便將所選取的區域42予以強調顯示。
然後,當切換顯示的指示從使用者側輸入至接受部31,程式顯示編輯部11便將區域42從正式程式切換為除錯用程式(ST2)。此外,程式顯示編輯部11係令表示這裡是設定除錯用程式的區域之資訊顯示在區域42內。例如,程式顯示編輯部11係令「#DEBUG」等文字顯示在區域42內(ST3)。藉此,使用者便能夠容易編寫除錯用程式。
第6圖係供說明除錯用程式的第2編寫例之用之圖。在第6圖中係顯示在除錯專用命令輸入時,程式顯示編輯部11令該除錯專用命令顯示的畫面之例。
程式顯示編輯部11係在令全體程式顯示後,進入接受全體程式的編輯之狀態。當使用者輸入全體程式內任一迴路位置與除錯專用命令,程式顯示編輯部11便將所輸入的除錯專用命令設定至全體程式內的所指定的迴路位置(ST11)。
除錯專用命令係例如為等同OR命令的「OR_D TRUE」等,藉由將文字「_D」添加至正式命令,構成為能夠與正式命令區別。當輸入除錯專用命令並且由使用者確定,程式顯示編輯部11便將所輸入的除錯專用命令以除錯用程式的形式顯示(ST12)。藉此,使用者便能夠容易判別除錯用程式與正式程式。
在程式轉換部14執行除錯用程式的轉換 後,PLC通信部16係將轉換出的除錯用程式的執行碼寫入PLC 20。藉此,成為程式轉換部14轉換出的除錯用程式的執行碼與正式程式的執行碼寫入到PLC 20之狀態。如此,PLC通信部16係藉由將除錯用程式的執行碼及正式程式的執行碼寫入PLC 20而將全體程式的執行碼寫入PLC 20(步驟S50)。
然後,當使用者選取用於切換執行模式的圖示,執行切換部15便判別所選取圖示的種類(步驟S60)。當選取的是代表除錯模式的圖示時(步驟S60,「除錯模式」),執行切換部15係將PLC 20的執行模式切換為除錯模式(步驟S70)。具體而言,PLC通信部16係將指示除錯模式的模式切換命令傳送至程式執行部21。
然後,程式執行部21係使用除錯用程式令PLC 20動作。具體而言,程式執行部21係使用含有除錯用程式與正式程式的全體程式令PLC 20動作。藉此,進行PLC 20的動作確認(步驟S80)。接著,藉由PLC 20的動作確認的進行,檢查正式程式的錯誤(步驟S90)。
當正式程式存在錯誤時(步驟S90,「是」),修正正式程式,修正後的正式程式以程式轉換部14轉換成執行碼(步驟S100)。
具體而言,程式顯示編輯部11係令正式程式顯示在顯示部32,並且依照來自使用者的指示變更正式程式。接著,程式記憶部13係將變更過正式程式的全體程式記憶起來。然後,程式轉換部14係將全體程式中變更過 的部分轉換成能夠以PLC 20執行的執行碼。程式記憶部13係將轉換後的執行碼記憶起來。
接著,PLC通信部16係將程式轉換部14轉換出的正式程式的執行碼寫入PLC 20。此處,係全體程式中變更過的部分的執行碼寫入PLC 20。
藉此,成為程式轉換部14轉換出的除錯用程式的執行碼與正式程式的執行碼寫入到PLC 20之狀態。其結果,全體程式的執行碼係寫入PLC 20(步驟S50)。然後,由使用者選取用於切換執行模式的圖示。執行切換部15係判別所選取圖示的種類(步驟S60)。
此外,在步驟S90的處理中,當正式程式沒有存在錯誤時(步驟S90,「否」),由使用者選取用於切換執行模式的圖示。執行切換部15係判別所選取圖示的種類(步驟S60)。
當選取的是代表除錯模式的圖示時(步驟S60,「除錯模式」),在除錯系統1中係進行步驟S70至步驟S100、步驟S50、步驟S60的一連串處理或步驟S70至步驟S90、步驟S60的一連串處理。
另一方面,當選取的是代表一般模式的圖示時,(步驟S60,「一般模式」),執行切換部15係將PLC 20的執行模式切換為一般模式(步驟S110)。具體而言,PLC通信部16係將指示一般模式的模式切換命令傳送至程式執行部21。
然後,程式執行部21係使用正式程式令 PLC 20動作。具體而言,程式執行部21係僅使用全體程式中的正式程式令PLC 20動作,無使用到除錯用程式。藉此,在除錯系統1中係執行使用正式程式的PLC 20的動作。
此處,針對除錯專用命令的構成例進行說明。除錯專用命令係以程式執行部21執行的CPU命令,係以預設的位元(bit)數(例如32位元)構成。在本實施形態中,表示除錯模式的資訊係存放在除錯專用命令內。此外,表示一般模式的資訊係存放在正式命令內。
在除錯專用命令及正式命令係分別存放有位址(address)、基座(base)編號、命令的執行條件、命令、命令的類別等。位址係例如相對於指定基座的偏移(offset)值。例如,在命令的執行條件內新增有表示除錯模式或一般模式的位元。
具體而言,在除錯專用命令內的執行條件係存放有代表除錯模式的位元,在正式命令內的執行條件係存放有代表一般模式的位元。此外,程式執行部21係根據代表除錯模式或一般模式的位元來切換動作模式。
此外,亦可在代表位址的位元中預設的位元(例如高位1位元)存放有表示除錯模式或一般模式的資訊。例如,在除錯系統1中係將0x8000至0xFFFF設定為除錯專用命令。藉此,程式執行部21係根據位址切換動作模式。
當CPU命令內存放有表示除錯模式的資訊時,該CPU命令為除錯專用命令,因此程式執行部21係 使用除錯用程式令PLC 20動作。
此外,當CPU命令內存放有表示一般模式的資訊時,該CPU命令為正式命令,因此程式執行部21係使用正式程式令PLC 20動作。本實施形態的除錯系統1於執行一般模式時並不使用除錯用程式,因此不會對一般模式的執行動作造成影響。
另外,在預先將表示除錯模式的資訊存放至CPU命令內的情形中,可不將表示一般模式的資訊存放至CPU命令內。此時,程式執行部21係只要CPU命令內未存放有表示除錯模式的資訊,便判斷該CPU命令乃係正式命令。
此外,在預先將表示一般模式的資訊存放至CPU命令內的情形中,可不將表示除錯模式的資訊存放至CPU命令內。此時,程式執行部21係只要CPU命令內未存放有表示一般模式的資訊,便判斷該CPU命令乃係除錯專用命令。
第7圖係顯示程式編輯裝置的硬體構成之圖。程式編輯裝置2係具有CPU 91、ROM(Read Only Memory;唯讀記憶體)92、RAM(Random Access Memory;隨機存取記憶體)93、顯示部32及接受部31。在程式編輯裝置2中,上述的CPU 91、ROM 92、RAM 93、顯示部32、接受部31係經由匯流排線(bus line)B而連接。
CPU 91係使用屬於電腦程式的編輯程式90進行正式程式的編輯。顯示部32係液晶監視器等顯示裝 置,係根據來自CPU 91的指示,顯示正式程式、除錯用程式、全體程式、PLC 20的動作狀態等。接受部31係具備滑鼠及鍵盤而構成,接受使用者由外部輸入的指示資訊即程式編輯所需的參數(parameter)等。接受部31所接受的指示資訊係傳送至CPU 91。
編輯程式90係存放在ROM 92內,經由匯流排線B載入(load)至RAM 93。CPU 91係執行載入至RAM 93內的編輯程式90。具體而言,在程式編輯裝置2中,依照使用者輸入至接受部31的指示,CPU 91從ROM 92內讀取編輯程式90,在RAM 93內的程式存放區域展開而執行各種處理。CPU 91係將進行該些各種處理時產生的各種資料(data)暫時記憶到形成在RAM 93內的資料存放區域。
程式編輯裝置2執行的編輯程式90係形成為含有程式顯示編輯部11、命令管理部12、程式轉換部14、執行切換部15及PLC通信部16的模組(module)構成,該些部係載入至主記憶裝置而在主記憶裝置產生。另外,命令管理部12、程式轉換部14、執行切換部15、PLC通信部16各功能係亦可存放在與編輯程式90不同的其他程式。
如上述,在除錯系統1中,係能夠以單一操作進行除錯作業中的正式程式與除錯用程式的執行切換。因此,不再需要反覆進行順序程式的修正、轉換及寫入PLC 20的寫入操作。其結果,能夠削減除錯時的作業即程式編寫及設定等的作業量。
此外,亦不再需要為了令PLC 20動作而在除錯結束後刪除除錯用程式、轉換刪除掉除錯用程式的正式程式及進行寫入PLC 20的寫入處理。因此,能夠削減除錯結束後切換為正式程式的切換作業量。此外,還能夠防止因忘記刪除除錯用程式等導致品質劣化,因此能夠維持順序程式的品質。
此外,正式程式與除錯用程式係單一物件。此外,係依是否要執行全體程式中的命令來切換一般模式與除錯模式。因此,不需要分別產生正式程式與除錯用程式。
另外,程式轉換部14係亦可將正式程式與除錯用程式合起來同時轉換。此外,PLC通信部16係亦可將正式程式與除錯用程式合起來同時寫入程式執行部21。
依據上述實施形態,係能夠減少除錯作業的一連串操作的數量,因此能夠削減順序程式的除錯作業的步驟數。因此,能夠編寫能夠快速且容易進行除錯的順序程式。
(產業上的利用可能性)
如上所述,本發明的工程工具、程式編輯裝置及程式編輯系統係適合於順序程式的編寫。
1‧‧‧除錯系統
2‧‧‧程式編輯裝置
10‧‧‧工程工具
11‧‧‧程式顯示編輯部
12‧‧‧命令管理部
13‧‧‧程式記憶部
14‧‧‧程式轉換部
15‧‧‧執行切換部
16‧‧‧PLC通信部
20‧‧‧PLC
21‧‧‧程式執行部
31‧‧‧接受部
32‧‧‧顯示部

Claims (11)

  1. 一種工程工具,係具備程式顯示編輯部,其係將正式程式與除錯用程式區別開來編輯,俾使當選取的是作為實際產品運作的前述正式程式的動作確認時所使用的前述除錯用程式時,以控制器執行前述除錯用程式,當選取的不是前述除錯用程式時,以前述控制器執行前述正式程式,而不執行前述除錯用程式。
  2. 如申請專利範圍第1項所述之工程工具,其中,前述程式顯示編輯部係在前述正式程式及前述除錯用程式的至少一者添加區別前述正式程式與前述除錯用程式的資訊。
  3. 如申請專利範圍第1項所述之工程工具,其中,更具備執行切換部,係根據使用者輸入的指示資訊,將令前述控制器執行的模式切換為執行前述除錯用程式的除錯模式與執行前述正式程式的一般模式的其中一者。
  4. 如申請專利範圍第1項所述之工程工具,其中,前述程式顯示編輯部係當使用者輸入了選取前述正式程式中任一迴路的選取指示與將所選取的迴路切換為前述除錯用程式的切換指示時,便將所選取迴路變更為前述除錯用程式,藉此而編寫前述除錯用程式。
  5. 如申請專利範圍第1項所述之工程工具,其中,前述程式顯示編輯部係根據使用者輸入的指示資訊,將前述除錯用程式所使用的除錯專用命令插入至前述正式程式之中,藉此而編寫前述除錯用程式。
  6. 如申請專利範圍第1項所述之工程工具,其中,更具備命令管理部,係將前述正式程式所使用的正式命令與前述除錯用程式所使用的前述除錯專用命令區別開來記憶,作為前述程式顯示編輯部能夠輸入作為前述正式程式或前述除錯用程式的命令;前述程式顯示編輯部係根據前述命令管理部記憶的命令,而將前述正式程式與前述除錯用程式區別開來編輯。
  7. 如申請專利範圍第1項至第6項中任一項所述之工程工具,其中,更具備轉換部,係將前述正式程式及前述除錯用程式轉換成能夠以前述控制器執行。
  8. 如申請專利範圍第7項所述之工程工具,其中,更具備通信部,係將轉換後的前述正式程式及前述除錯用程式寫入前述控制器。
  9. 如申請專利範圍第7項所述之工程工具,其中,前述轉換部係根據前述命令管理部記憶的命令,將前述正式程式及前述除錯用程式轉換成能夠以前述控制器執行。
  10. 一種程式編輯裝置,係具備程式顯示編輯部,其係將正式程式與除錯用程式區別開來編輯,俾使當選取的是作為實際產品運作的前述正式程式的動作確認時所使用的前述除錯用程式時,以控制器執行前述除錯用程式,當選取的不是前述除錯用程式時,以前述控制器執行前述正式程式,而不執行前述除錯用程式。
  11. 一種程式編輯系統,係具有: 程式編輯裝置,係編輯順序程式;及控制器,係使用從前述程式編輯裝置傳送來的順序程式而動作;前述順序程式係含有作為實際產品運作的正式程式與前述正式程式的動作確認時所使用的除錯用程式;前述程式編輯裝置係具備程式顯示編輯部,其係將前述正式程式與前述除錯用程式區別開來編輯,俾使當選取的是前述除錯用程式時,以前述控制器執行前述除錯用程式,當選取的不是前述除錯用程式時,以前述控制器執行前述正式程式,而不執行前述除錯用程式;前述控制器係當選取的是前述除錯用程式時,執行前述除錯用程式,當選取的不是前述除錯用程式時,執行前述正式程式,而不執行前述除錯用程式。
TW104114115A 2014-05-08 2015-05-04 工程工具、程式編輯裝置及程式編輯系統 TWI564685B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/062342 WO2015170382A1 (ja) 2014-05-08 2014-05-08 エンジニアリングツール、プログラム編集装置およびプログラム編集システム

Publications (2)

Publication Number Publication Date
TW201606463A TW201606463A (zh) 2016-02-16
TWI564685B true TWI564685B (zh) 2017-01-01

Family

ID=54392251

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104114115A TWI564685B (zh) 2014-05-08 2015-05-04 工程工具、程式編輯裝置及程式編輯系統

Country Status (7)

Country Link
US (1) US9727442B2 (zh)
JP (1) JP5859173B1 (zh)
KR (1) KR101627488B1 (zh)
CN (1) CN105408823B (zh)
DE (1) DE112014002979T8 (zh)
TW (1) TWI564685B (zh)
WO (1) WO2015170382A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10303149B2 (en) * 2015-01-28 2019-05-28 Mitsubishi Electric Corporation Intelligent function unit and programmable logic controller system
TWI579721B (zh) * 2016-06-13 2017-04-21 崑山科技大學 建立個人化程式設計模型的方法
JP6624008B2 (ja) * 2016-10-27 2019-12-25 横河電機株式会社 エンジニアリングツール連携装置、エンジニアリングツール連携方法、エンジニアリングツール連携プログラム及び記録媒体
JP6946953B2 (ja) * 2017-11-10 2021-10-13 オムロン株式会社 制御プログラム開発支援装置、制御プログラム開発支援システム、制御プログラム開発支援方法、および、制御プログラム開発支援プログラム
JP7180158B2 (ja) * 2018-07-13 2022-11-30 オムロン株式会社 プログラム開発装置、およびコントローラ
JP7234810B2 (ja) * 2019-06-07 2023-03-08 オムロン株式会社 サポート装置およびサポートプログラム
WO2021161518A1 (ja) * 2020-02-14 2021-08-19 三菱電機株式会社 制御システム、プログラム作成支援装置、プログラム作成支援方法、およびプログラム作成支援プログラム
KR20230069661A (ko) * 2021-11-12 2023-05-19 에스케이하이닉스 주식회사 메모리 시스템 및 이의 동작 방법
WO2023119519A1 (ja) * 2021-12-22 2023-06-29 三菱電機株式会社 Fa制御テスト支援プログラム、fa制御テスト支援装置、fa制御テスト支援方法及びfa制御テスト支援システム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6353896B1 (en) * 1998-12-15 2002-03-05 Lucent Technologies Inc. Method and apparatus for testing event driven software
US6502102B1 (en) * 2000-03-27 2002-12-31 Accenture Llp System, method and article of manufacture for a table-driven automated scripting architecture
US20030046016A1 (en) * 2001-08-31 2003-03-06 James Grey System and method enabling asynchronous execution of a test executive subsequence
TW201027096A (en) * 2008-12-08 2010-07-16 Advantest Corp Test apparatus and debug method
TW201339773A (zh) * 2012-03-26 2013-10-01 Mitsubishi Electric Corp 序列程式除錯支援裝置

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03240803A (ja) 1990-02-19 1991-10-28 Mitsubishi Electric Corp シーケンスプログラム編集装置
JP2951751B2 (ja) 1991-06-20 1999-09-20 株式会社日立製作所 プログラマブルコントローラ、並びにプログラム編集表示方法およびプログラム編集表示装置
JPH11249715A (ja) 1998-02-26 1999-09-17 Yaskawa Electric Corp シーケンスプログラムの自動生成方法とモーションコントローラ
JPH11242509A (ja) * 1998-02-26 1999-09-07 Omron Corp プログラマブルロジックコントローラ
US6775579B2 (en) 2001-08-06 2004-08-10 Entivity, Inc. Flowchart-based control system with active debugging objects
JP2004062223A (ja) * 2002-07-24 2004-02-26 Yaskawa Electric Corp プログラマブルコントローラのプログラミング装置。
JP2004295295A (ja) * 2003-03-26 2004-10-21 Yaskawa Electric Corp シミュレーションによりプログラムデバッグをする制御装置
JP4462402B2 (ja) 2003-07-16 2010-05-12 オムロン株式会社 プログラマブルコントローラ用のプログラム開発支援装置および処理方法並びにプログラムおよび記録媒体
JP2008059421A (ja) * 2006-09-01 2008-03-13 Yokogawa Electric Corp シーケンスプログラム編集支援装置
JP2009193276A (ja) * 2008-02-14 2009-08-27 Koyo Electronics Ind Co Ltd ラダープログラム作成装置およびこれを用いたラダープログラム作成実行システム
GB2477438B (en) * 2008-09-29 2013-04-10 Fisher Rosemount Systems Inc Dynamic user interface for configuring and managing a process control system
JP5086296B2 (ja) * 2009-03-19 2012-11-28 株式会社日立産機システム プログラマブルコントローラ制御プログラム作成方法、および、プログラマブルコントローラ制御プログラム作成システム
US20120072777A1 (en) 2009-05-27 2012-03-22 Mitsubishi Electric Corporation Debugging device, debugging method, and computer program for sequence program
JP2011022838A (ja) * 2009-07-16 2011-02-03 Yokogawa Electric Corp デバッグ装置およびラダープログラム確認方法
WO2011137464A1 (de) 2010-05-03 2011-11-10 Keba Ag Verfahren zum selektiven aufzeichnen, rekonstruieren und analysieren des programmlaufs eines steuerungsprogramms
JP5636783B2 (ja) 2010-07-22 2014-12-10 富士電機株式会社 プログラマブルコントローラ、およびプログラマブルコントローラのデバッグ方法
CN102789413B (zh) * 2011-05-23 2016-02-17 同济大学 一种并行程序的调试系统及方法
CN102855179A (zh) * 2011-06-30 2013-01-02 国际商业机器公司 虚拟机环境下的程序调试方法和系统
JP5800135B2 (ja) 2011-07-15 2015-10-28 富士電機株式会社 プログラマブルコントローラ
JP5849592B2 (ja) 2011-10-07 2016-01-27 富士電機株式会社 プログラマブルコントローラシステム、そのプログラミング装置、プログラマブルコントローラ、プログラム、デバッグ方法
US8745591B2 (en) * 2011-10-19 2014-06-03 Microsoft Corporation Data flow visualization and debugging
CN104220317B (zh) 2012-03-29 2017-05-10 丰田自动车株式会社 路面状态推定装置
US20140059518A1 (en) * 2012-08-24 2014-02-27 Velocio Networks, Inc. Method for Object Oriented Programming of Programmable Logic Controllers in Graphical Programming Languages
JP6171387B2 (ja) * 2013-02-15 2017-08-02 オムロン株式会社 コントローラ、情報処理装置およびプログラム
US9779133B2 (en) * 2014-11-25 2017-10-03 Sap Se Contextual debugging of SQL queries in database-accessing applications
US9678855B2 (en) * 2014-12-30 2017-06-13 International Business Machines Corporation Managing assertions while compiling and debugging source code

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6353896B1 (en) * 1998-12-15 2002-03-05 Lucent Technologies Inc. Method and apparatus for testing event driven software
US6502102B1 (en) * 2000-03-27 2002-12-31 Accenture Llp System, method and article of manufacture for a table-driven automated scripting architecture
US20030046016A1 (en) * 2001-08-31 2003-03-06 James Grey System and method enabling asynchronous execution of a test executive subsequence
TW201027096A (en) * 2008-12-08 2010-07-16 Advantest Corp Test apparatus and debug method
TW201339773A (zh) * 2012-03-26 2013-10-01 Mitsubishi Electric Corp 序列程式除錯支援裝置

Also Published As

Publication number Publication date
KR20160014098A (ko) 2016-02-05
US9727442B2 (en) 2017-08-08
US20160147638A1 (en) 2016-05-26
DE112014002979T8 (de) 2016-06-09
JPWO2015170382A1 (ja) 2017-04-20
KR101627488B1 (ko) 2016-06-03
WO2015170382A1 (ja) 2015-11-12
CN105408823B (zh) 2017-07-18
JP5859173B1 (ja) 2016-02-10
TW201606463A (zh) 2016-02-16
DE112014002979T5 (de) 2016-03-10
CN105408823A (zh) 2016-03-16

Similar Documents

Publication Publication Date Title
TWI564685B (zh) 工程工具、程式編輯裝置及程式編輯系統
TWI464558B (zh) 程式作成支援裝置
JP5619328B1 (ja) シーケンスプログラム作成支援装置
JP6891838B2 (ja) 開発支援装置、開発支援方法、および開発支援プログラム
JP6430037B2 (ja) デバッグ支援装置およびデバッグ支援方法
US20180329388A1 (en) Intelligent function unit and programmable logic controller system
JP5785501B2 (ja) ラダープログラム作成装置
KR102198204B1 (ko) 시뮬레이션 장치
JP3805776B2 (ja) グラフィカルプログラミング装置及びプログラマブル表示器
JP5566473B2 (ja) システム設計装置
JP2016045712A (ja) プログラマブルロジックコントローラ
JP2016059989A (ja) ロボット制御装置、ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP2005084800A (ja) プログラマブルコントローラ
JP2005309593A (ja) プログラム作成装置及びプログラム作成方法
KR101716480B1 (ko) Gui 기반의 테스트케이스 입력 장치
TWI569118B (zh) 畫面作成軟體
JP3940389B2 (ja) 検査装置及びプログラミングツール
JP6407481B1 (ja) プログラム作成装置
JP5287630B2 (ja) 制御システム、制御システムの交信方法、通信ユニット、および通信ユニットの交信方法
JP2003223204A (ja) プログラマブルコントローラのプログラミング方法およびその装置並びに記憶媒体
JP6121706B2 (ja) プログラミング方法および装置
JP5786387B2 (ja) Plcの開発支援装置、およびplc開発支援用プログラム

Legal Events

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