TW201535078A - 程式編寫裝置 - Google Patents

程式編寫裝置 Download PDF

Info

Publication number
TW201535078A
TW201535078A TW103124501A TW103124501A TW201535078A TW 201535078 A TW201535078 A TW 201535078A TW 103124501 A TW103124501 A TW 103124501A TW 103124501 A TW103124501 A TW 103124501A TW 201535078 A TW201535078 A TW 201535078A
Authority
TW
Taiwan
Prior art keywords
fbd
terminal
information
recommended
order
Prior art date
Application number
TW103124501A
Other languages
English (en)
Other versions
TWI528122B (zh
Inventor
Yusuke Osakabe
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 TW201535078A publication Critical patent/TW201535078A/zh
Application granted granted Critical
Publication of TWI528122B publication Critical patent/TWI528122B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/311Functional or applicative languages; Rewrite languages
    • 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
    • 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
    • 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/13146Process image blocks have a relation to software function blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Programmable Controllers (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本發明提供一種程式編寫裝置(100),係在編輯器畫面上連接複數個FBD零件而作成記述處理之FBD語言之程式者,該程式編寫裝置(100)係具有:零件資訊管理部(103),係管理顯示FBD零件之大小的尺寸資訊;推薦順序決定部(102),係於在編輯器畫面上對於已配置完成的FBD零件進行新配置FBD零件的操作之際,從零件資訊管理部(103)取得已配置完成之FBD零件的尺寸資訊及新配置之FBD零件的尺寸資訊,根據取得之尺寸資訊而檢測可配置該新配置之FBD零件的複數個區域,根據檢測到的複數個區域之位置,而決定複數個區域間之零件配置的推薦優先順序;及編輯器部(101),係將推薦順序決定部(102)所決定之推薦優先順序顯示於複數個區域。

Description

程式編寫裝置
本發明係關於使用FBD(Function Block Diagram,功能方塊圖)語言來作成程式(program)之程式編寫裝置。
以往,於工廠之製造線(line)或各個裝置、或廠房(plant)/辦公大樓(office building)等現場中,係為了對被控制機器進行順序(sequential)控制而使用可程式邏輯控制器(Programmable Logic Controller,PLC)。於其程式編寫中,係使用由國際電工委員會(International Electrotechnical Commission,IEC)定義作為標準規格IEC61131-3之屬於可程式邏輯控制器用的程式編寫語言之FBD語言。
FBD語言之程式係配置功能(function)或功能方塊(function block)等FBD零件,並將該等零件接線而藉此記述一連串的處理。各FBD零件係在左側具備輸入端子,並在右側具備輸出端子,FBD零件彼此係經由輸入端子或輸出端子而接線。
於FBD語言之接線中,可能會有將一個連 接線分為複數連接的情形、或將端子設為未連接的情形。此外,以所作成的程式成為編譯錯誤(compile error)的情形而言,會有所接線之連接來源的端子與連接目的地之端子的資料(data)類型相異的情形、或未對於須接線之端子進行接線的情形。
於專利文獻1中所揭示之發明,係在對於所指定的零件進行接線的供給時,使屬於未連接之端子對於接近的FBD零件之端子從最上部開始全部自動連接。
(先前技術文獻) (專利文獻)
專利文獻1:日本特開2005-339143號公報
於FBD語言之程式編寫中,係在配置FBD零件之際,由使用者(user)從無數的配置位置考量已配置完成之FBD零件的位置而決定FBD零件的配置位置,故決定FBD零件之配置位置須耗費時間,而在程式編寫時需要時間。
此外,於接線中選擇連接來源之端子時,由於全部的端子皆同樣地顯示,故難以分辨連接優先度高的端子,而且,由於難以分辨會編譯錯誤的端子,故在程式編寫時需要時間。
此外,於接線中選擇連接目的地之端子 時,由於全部的端子皆同樣地顯示,故難以分辨連接優先度高的端子,而且,由於難以分辨不會編譯錯誤的端子,故在程式編寫時需要時間。
專利文獻1所揭示之發明係無法執行將一條連接線分為複數條連接線、將端子設為未連接、或進行已考量編譯錯誤之連接等情形。
本發明係有鑑於上述情形而研創者,其目的在於獲得一種可縮短由FBD語言進行程式編寫所須時間之程式編寫裝置。
為解決上述之課題,並達成目的,本發明係一種程式編寫裝置,係在編輯器畫面上連接複數個FBD零件而作成記述處理之FBD語言之程式者,該程式編寫裝置係具有:零件資訊管理部,係管理顯示FBD零件之大小的尺寸資訊;推薦順序決定部,係於在編輯器(editor)畫面上對於已配置完成的FBD零件進行新配置FBD零件的操作之際,從零件資訊管理部取得已配置完成之FBD零件的尺寸(size)資訊及新配置之FBD零件的尺寸資訊,根據取得之尺寸資訊而檢測可配置新配置之FBD零件的複數個區域,根據檢測到的複數個區域之位置,而決定複數個區域間之零件配置的推薦優先順序;及編輯器部,係將推薦順序決定部所決定之推薦優先順序顯示於複數個區域。
本發明之程式編寫裝置係檢測可配置接著 要配置之FBD零件的區域,並依檢測到的各個區域決定推薦順序,故可達成可容易地在短時間內決定FBD零件之配置位置的效果。
10‧‧‧傳送路
100‧‧‧程式編寫裝置
101‧‧‧編輯器部
102‧‧‧推薦順序決定部
103‧‧‧零件資訊管理部
104‧‧‧零件資訊
300、500、700‧‧‧編輯器畫面
301、501‧‧‧所指定之FBD零件
302‧‧‧已配置完成之FBD零件
3031至3033、5061至5064、7061至7064‧‧‧推薦順序顯示欄
304、305、306‧‧‧配置候補探索範圍
400‧‧‧電腦
401‧‧‧CPU
402‧‧‧RAM
403‧‧‧ROM
404‧‧‧記憶部
405‧‧‧輸入部
406‧‧‧顯示部
407‧‧‧程式編寫工具軟體
409‧‧‧通信I/F
502、504、509a、702a至705a‧‧‧輸入端子
503、505、507a、508a、701a‧‧‧輸出端子
507至509、701至705‧‧‧FBD零件
800‧‧‧可程式邏輯控制器
第1圖係顯示本發明之程式編寫裝置之實施形態1的使用狀態的圖。
第2圖係顯示執行程式編寫工具軟體(programming tool software)之電腦(computer)硬體(hardware)構成的圖。
第3圖係顯示作為程式編寫裝置而發揮作用之電腦的圖。
第4圖係顯示實施形態1之程式編寫裝置的動作流程之流程圖(flowchart)。
第5圖係顯示實施形態1之程式編寫裝置使顯示部顯示之編輯器畫面之一例的圖。
第6圖係顯示實施形態2之程式編寫裝置的動作流程之流程圖。
第7圖係顯示實施形態2之程式編寫裝置使顯示部顯示之編輯器畫面之一例的圖。
第8圖係顯示實施形態3之程式編寫裝置的動作流程之流程圖。
第9圖係顯示實施形態3之程式編寫裝置使顯示部顯示之編輯器畫面之一例的圖。
以下,根據圖式詳細說明本發明之程式編寫裝置之實施形態。再者,本發明不受此實施形態所限定。
實施形態1
第1圖係顯示本發明之程式編寫裝置之實施形態1的使用狀態的圖。程式編寫裝置100係顯示編輯器畫面,藉由接受對於編輯器畫面之FBD零件的配置操作及在編輯器畫面上之FBD零件彼此的接線操作,而用以供使用者於編輯器畫面上記述由FBD語言所編寫之程式的裝置。程式編寫裝置100係在使用時藉由傳送路10與可程式邏輯控制器800連接。
程式編寫裝置100係藉由將程式編寫工具軟體安裝(install)於通用的電腦而構成。第2圖係顯示執行程式編寫工具軟體之電腦硬體構成的圖。電腦400係具有CPU(Central Processing Unit,中央處理器)401、RAM(Random Access Memory,隨機存取記憶體)402、ROM(Read Only Memory,唯讀記憶體)403、記憶部404、輸入部405、顯示部406及通信I/F(Interface,介面)409。
CPU 401係執行程式編寫工具軟體之運算裝置。RAM 402係CPU 401執行程式編寫之際所使用之工作區域(work area)。ROM 403係以非揮發的方式而記憶有電腦400啟動時由CPU 401所執行之程式(具體而言,係起動輸入常式(Initial Program Loader(IPL)等)。記憶部404係以非揮發的方式記憶資訊的裝置,可應用硬式磁碟機(Hard Disk Drive)或固體狀態驅動機(Solid State Drive)等。輸入部 405係供操作者(operator)輸入資訊之使用者介面(user interface),可應用指向裝置(pointing device)(滑鼠(mouse)、觸控面板(touch panel)等)或鍵盤(keyboard)等。顯示部406係顯示資訊的裝置,可應用LCD(Liquid Crystal Display,液晶顯示器)或OLED(Organic Light Emitting Display,有機發光顯示器)等。通信I/F 409係用以經由傳送路10而與可程式邏輯控制器800通信之介面。
安裝於電腦400之程式編寫工具軟體係儲存於記憶部404。由CPU 401讀出儲存於記憶部404之程式編寫工具軟體407而執行,藉此,電腦400係成為作為程式編寫裝置100而發揮作用的狀態。第3圖係顯示作為程式編寫裝置而發揮作用之電腦的圖。程式編寫裝置100係於CPU 401上形成有編輯器部101、推薦順序決定部102及零件資訊管理部103。
此外,在記憶部404中,係於程式編寫工具軟體407之安裝時儲存有為程式編寫工具軟體407所利用之零件資訊104。零件資訊104係關於各FBD零件的零件特性資訊,包含有與FBD零件在編輯器畫面上所佔大小相關的資訊(以下,記載為零件尺寸資訊)。
推薦順序決定部102係於配置FBD零件之際,在編輯器畫面上檢索可配置零件的區域,若有可配置之區域,則顯示推薦順序。關於推薦順序,係於後敘述。
零件資訊管理部103係依據來自推薦順序決定部102的請求而從記憶部404讀出零件資訊104。零 件資訊管理部103係針對於編輯器畫面上已配置完成的FBD零件來保持零件的種類及位置的資訊。再者,具體而言,零件之位置的資訊係指編輯器畫面中之座標值。
編輯器部101係使編輯器畫面顯示於顯示部406,依據操作者對於輸入部405之操作,而進行作成/編輯順序程式(sequence program)的處理。編輯器部101的功能係與一般的程式編寫裝置之編輯器功能相同。編輯器部101係參照零件資訊管理部103所保持之零件的種類及位置的資訊,而使FBD零件顯示於編輯器畫面上。
第4圖係顯示實施形態1之程式編寫裝置的動作流程之流程圖。在使用FBD零件作成程式之際,使用者係操作輸入部405而指定屬於已配置於編輯器畫面上之FBD零件(步驟(step)S201)。接著,使用者係對編輯器部101賦予將FBD零件配置於編輯器畫面上之請求(步驟S202)。
接受到將FBD零件配置於編輯器畫面上之請求的編輯器部101,係對推薦順序決定部102請求檢測配置FBD零件的場所。接受到來自編輯器部101之請求的推薦順序決定部102,係對零件資訊管理部103請求已配置完成之FBD零件、所指定之FBD零件、及之後要配置之FBD零件(以下,記載為配置對象FBD零件)的零件尺寸資訊。零件資訊管理部103係自零件資訊104讀出由推薦順序決定部102所請求之各FBD零件的零件尺寸資訊而回傳至推薦順序決定部102。此外,推薦順序決定部102係從編輯器部101取得已配置完成之FBD零件及所指定之 FBD零件的配置位置資訊。推薦順序決定部102係根據零件尺寸資訊與配置位置資訊,依預先設定之演算法(algorithm)來檢測與已配置完成之FBD零件相隔一定距離且不會與已配置完成之FBD零件重疊而可配置配置對象FBD零件的區域。此外,推薦順序決定部102亦檢測所檢測到之區域之最上部的座標。推薦順序決定部102係在檢測到複數個區域時,針對所檢測到之各區域,依預先設定之演算法將推薦順序編號(步驟S203)。
再者,距離所指定之FBD零件的一定距離係可由使用者變更,亦可為預先設定之固定值。
推薦順序決定部102係將所決定之推薦順序及各區域之最上部的座標傳送至編輯器部101。編輯器部101係於各區域之最上部設置推薦順序顯示欄,以將對應於由推薦順序決定部102所編號之推薦順序而顯示序列之各項數列或文字列顯示於編輯器畫面上的方式,更新畫面顯示(步驟S204)。以對應於推薦順序而顯示序列之數列或文字列的例子而言,可列舉初項為1且公差為1之等差數列,換言之為自然數的數列。此時,係在編輯器畫面上,以從「1」開始的自然數顯示推薦順序。再者,以對應於推薦順序而顯示序列之數列或文字列的其他例子而言,可列舉如A、B、C、D、…之字母(alphabet)的文字列。此外,除了單純的數列或文字列之外,亦可於推薦順序顯示欄中顯示表示作為大項目之順序及在其中之詳細的順序之各項數列或文字列。例如,若使用如1.1、1.2、2.1、2.2、2.3、 2.4之數列,則可以個位數的值來表示作為大項目的順序,以小數點一位的值來表示詳細的順序。
列舉具體例,針對實施形態1之程式編寫裝置100的動作進行說明。再者,由FBD語言所編寫之程式,一般而言係以由上向下,由左向右的方式記述,且一般而言並不會在已經配置之FBD零件之上側進行新配置FBD零件的操作。因此,在此,係以將推薦順序決定部102之演算法設定成僅針對所指定之FBD零件的右側、左側及下側來檢測可將配置對象FBD零件予以配置之區域的情形為例。並且,以由上向下,由左向右的處理流程為鑑,而以將推薦順序依右側、左側、下側的順序為高優先度而編號之方式來設定推薦順序決定部102之演算法。藉此,推薦順序決定部102係依預先設定之演算法,針對所指定之FBD零件之右側、左側及下側而從編輯器畫面檢測出可將配置對象FBD零件予以配置之區域,依右側、左側、下側的順序將顯示零件配置之優先度的推薦順序編號至所檢測到之各區域。
再者,於此例中,距離所指定之FBD零件之一定距離可為右側及左側與下側相同,亦可使下側為較小的值。這是因為在FBD零件的右側或左側配置有輸入端子或輸出端子,故左右的間隔比上下的間隔寬會更容易觀看FBD語言的程式。
此外,在此,雖以僅針對左右及下側之三方向檢測可將配置對象FBD零件予以配置之區域為例,惟 亦可以也針對上側檢測可將配置對象FBD零件予以配置之區域的方式來設定推薦順序決定部102的演算法。此時,有鑑於一般而言並不會對已經配置之FBD零件之上側進行新配置FBD零件的操作,推薦順序決定部102之演算法亦可以使從上側所檢測到之區域的優先度設為最低而對各區域之推薦順序進行編號的方式來設定。
第5圖係顯示實施形態1之程式編寫裝置使顯示部顯示之編輯器畫面之一例的圖。顯示於顯示部406之編輯器畫面300係包含:所指定之FBD零件301、已配置完成之FBD零件302、及推薦順序顯示欄3031至3033。推薦順序顯示欄3031至3033係顯示由推薦順序決定部102所編號之推薦順序。
推薦順序決定部102在決定推薦順序時,係於從所指定之FBD零件301離開一定距離而位於右側之配置候補探索範圍304中,檢測屬於不與已配置完成之FBD零件302重疊而可將配置對象FBD零件予以配置之區域,並檢測所檢測到之區域中之最上部的座標。接著,推薦順序決定部102係於位於所指定之FBD零件301之左側的配置候補探索範圍305中,檢測屬於不與已配置完成之FBD零件重疊而可將配置對象FBD零件予以配置之區域,並檢測所檢測到之區域中之最上部的座標。進而,推薦順序決定部102係於位於所指定之FBD零件301之下側的配置候補探索範圍306中,檢測屬於不與已配置完成之FBD零件302重疊而可將配置對象FBD零件予以配置之區域,並檢 測所檢測到之區域中之最上部的座標。然後,推薦順序決定部102係針對從配置候補探索範圍304至306所檢測到之各區域,依所指定之FBD零件301的右側、左側、下側之順序將推薦順序編號。編輯器部101係將推薦順序顯示欄3031至3033配置於從配置候補探索範圍304~306所檢測到之各區域最上部之座標的部分,並顯示經編號之推薦順序。藉此,在配置候補探索範圍304內的推薦順序顯示欄3031顯示「1」,在配置候補探索範圍305內的推薦順序顯示欄3032顯示「2」,在配置候補探索範圍306內的推薦順序顯示欄3033顯示「3」。
當操作輸入部405而輸入對應於推薦順序之數字、或選擇推薦順序顯示欄3031至3033時,係對與所輸入之數字或所選擇之推薦順序顯示欄3031至3033對應的區域進行配置對象FBD零件的配置。對於用以輸入對應於推薦順序之數字、或選擇推薦順序顯示欄3031至3033之輸入部405的操作係有可由鍵盤進行推薦順序的選擇或由滑鼠進行選擇等各式各樣的操作,惟並不限定於特定的方法。
根據實施形態1,使用者可考量已配置完成之FBD零件的位置而從無數的配置位置容易地決定FBD零件的配置位置。亦即,根據實施形態1,可在短時間內決定FBD零件的配置位置。
實施形態2
本發明之程式編寫裝置之實施形態2的構成係與實施形態1相同。但是,零件資訊104中係包含與各FBD零件 之端子相關的端子特性資訊(以下,記載為端子資訊。),零件資訊管理部103係管理各FBD零件的端子資訊。端子資訊除了資料類型之外,還包含以FBD零件單位依各個端子設定之連接優先度的資訊。
第6圖係顯示實施形態2之程式編寫裝置的動作流程之流程圖。在使用FBD零件作成程式之際,使用者係操作輸入部405而指定屬於已配置於編輯器畫面之FBD零件(步驟S401)。接著,使用者操作輸入部405,對編輯器部101賦予所指定之FBD零件之實施接線的請求(步驟S402)。接受到實施接線的請求之編輯器部101,係對推薦順序決定部102請求抽出所指定之FBD零件的端子。推薦順序決定部102係對零件資訊管理部103請求所指定之FBD零件及已接線於所指定之FBD零件的FBD零件之端子資訊。零件資訊管理部103係從零件資訊104讀出由推薦順序決定部102所請求之端子資訊,並回傳至推薦順序決定部102。推薦順序決定部102係根據從零件資訊管理部103所取得之端子資訊,而從所指定之FBD零件抽出會編譯錯誤的端子,依據從零件資訊管理部103所取得之各個端子的連接優先度而將推薦順序編號。接著,抽出不會編譯錯誤之剩下的端子,依據從零件資訊管理部103所取得之各個端子的連接優先度,以從瞬前所決定之推薦順序開始連號的方式而將推薦順序編號(步驟S403)。以上述方式,本實施形態之推薦順序係會編譯錯誤的端子成為較小的編號,而不會編譯錯誤的端子則成為會編譯錯 誤的端子之接續的編號,藉此顯示接線作業的優先度。
推薦順序決定部102係將經編號之推薦順序傳送至編輯器部101。編輯器部101係以對應於所指定之FBD零件的各端子之方式設置推薦順序顯示欄,並以將經推薦順序決定部102編號之推薦順序顯示於編輯器畫面上的方式更新畫面顯示(步驟S404)。亦即,於編輯器畫面上係以從「1」開始之自然數顯示推薦順序。
列舉具體例,針對實施形態2之程式編寫裝置的動作進行說明。第7圖係顯示實施形態2之程式編寫裝置使顯示部顯示之編輯器畫面之一例的圖。於編輯器畫面500中顯示有所指定之FBD零件501。所指定之FBD零件501係具有2個輸入端子502、504及2個輸出端子503、505。此外,於編輯器畫面500中顯示有推薦順序顯示欄5061至5064。推薦順序顯示欄5061至5064係顯示推薦順序決定部102所決定之推薦順序。再者,於編輯器畫面500中,係配置有已接線於所指定之FBD零件501之FBD零件507、508、509。
在此,FBD零件507之輸出端子507a與輸入端子502的資料類型一致,而在接線時不會產生編譯錯誤。此外,由於FBD零件508之輸出端子508a與輸入端子504的資料類型不一致,故在接線時會產生編譯錯誤。再者,由於FBD零件509之輸入端子509a與輸出端子503的資料類型不一致,故在接線時產生編譯錯誤。再者,輸出端子505並非為必須與其他FBD零件接線之端子,而屬 於不會產生編譯錯誤之狀態。此外,所指定之FBD零件501之各端子的連接優先度係從優先度較高之一方開始而依序設為輸入端子502、輸出端子503、輸入端子504、輸出端子505。
針對推薦順序決定部102決定推薦順序的動作進行說明。推薦順序決定部102係透過零件資訊管理部103,而從零件資訊104取得所指定之FBD零件501及FBD零件507、508、509的端子資訊。已取得端子資訊的推薦順序決定部102係先抽出輸出端子503及輸入端子504作為會編譯錯誤的端子。推薦順序決定部102係依據設定於輸出端子503及輸入端子504之連接優先度,將輸出端子503的推薦順序編號為「1」,將輸入端子504的推薦順序編號為「2」。接著,推薦順序決定部102係抽出輸入端子502及輸出端子505作為不會編譯錯誤之剩下的端子。推薦順序決定部102係依據設定於輸入端子502及輸出端子505之連接優先度,以成為從瞬前所決定之推薦順序開始的連號的方式,將輸入端子502的推薦順序編號為「3」,將輸出端子505的推薦順序編號為「4」。然後,推薦順序決定部102係將推薦順序回傳至編輯器部101。
編輯器部101係於編輯器畫面500上設置對應於輸入端子502、504及輸出端子503、505之推薦順序顯示欄5061至5064,並於其中顯示從推薦順序決定部102所取得之推薦順序。亦即,於對應於輸入端子502之推薦順序顯示欄5061中顯示「3」,於對應於輸出端子503之推 薦順序顯示欄5062中顯示「2」,於對應於輸入端子504之推薦順序顯示欄5063中顯示「1」,於對應於輸出端子505之推薦順序顯示欄5064中顯示「4」。
當操作輸入部405而輸入對應於推薦順序之數字、或選擇推薦順序顯示欄5061至5064時,係將對應於所輸入之數字或所選擇之推薦順序顯示欄5061至5064的端子選擇作為接線對象。對於用以輸入對應於推薦順序之數字、或選擇推薦順序顯示欄5061至5064之輸入部405的操作係有由鍵盤進行推薦順序的選擇或由滑鼠進行選擇等各式各樣之操作,惟並不限定於特定的方法。
再者,推薦順序決定部102係區分會發生編譯錯誤之端子的推薦順序與不會發生編譯錯誤之端子的推薦順序而送回編輯器部101,編輯器部101亦可在將推薦順序顯示於推薦順序顯示欄5061至5064之際,以不同顏色顯示會發生編譯錯誤之端子的推薦順序與不會發生編譯錯誤之端子的推薦順序。如此一來,由於可容易地判別會成為編譯錯誤之端子,故可縮短程式編寫所需要的時間。
根據實施形態2,在編輯器畫面上指定已配置完成之FBD零件之際,可以較高的順位從最好重新接線之可能性較高的端子開始顯示推薦順序。換言之,根據實施形態2,係於接線時選擇連接來源的端子之際可容易地掌握端子的優先度。藉此,可有效率地進行接線作業。
再者,於上述的說明中,係以下述情形為例:推薦順序決定部102係對於所指定之FBD零件的端子 與已接線於所指定之FBD零件之FBD零件的端子間之資料類型的一致與不一致兩者都檢測,使資料類型不一致的端子依接線的連接優先度編號,且接續此編號而使資料類型一致的端子依接線的連接優先度編號,而決定所指定之FBD零件之端子間之接線作業的推薦優先順序。但是,亦可為僅檢測所指定之FBD零件的端子與已接線於所指定之FBD零件的FBD零件之端子間的資料類型的一致及不一致的其中一者,根據此檢測結果與所取得之接線的連接優先度之資訊,而決定所指定之FBD零件之端子間之接線作業的推薦優先順序。
實施形態3
本實施形態之程式編寫裝置的實施形態3之構成,係與實施形態1相同。但是,零件資訊104中係包含與各FBD零件之端子相關的端子特性資訊(以下,記載為端子資訊。),零件資訊管理部103係管理各FBD零件的端子資訊。端子資訊係包含資料類型的資訊。
第8圖係顯示實施形態3之程式編寫裝置的動作流程之流程圖。在使用FBD零件而作成程式之際,使用者係操作輸入部405而指定屬於已配置於編輯器畫面之FBD零件的端子。接著,使用者係操作輸入部405,而對編輯器部101賦予所指定之端子的實施接線的請求(步驟S601)。
接受到實施接線的請求之編輯器部101,係對推薦順序決定部102請求抽出端子被指定之FBD零件以 外的FBD零件之端子。推薦順序決定部102係對零件資訊管理部103請求端子被指定之FBD零件及另外的FBD零件之端子資訊。零件資訊管理部103係從零件資訊104讀出由推薦順序決定部102所請求之端子資訊,並回傳至推薦順序決定部102。推薦順序決定部102係根據從零件資訊管理部103所取得之端子資訊,抽出即使與所指定之端子接線也不會編譯錯誤之端子,依與所指定之端子的直線距離而將推薦順序編號。再者,此處的直線距離係指可根據在所指定之端子的編輯器畫面上的xy座標、及在所指定之FBD零件以外的FBD零件之端子的編輯器畫面上的xy座標,而算出2點間之線段的長度。接著,抽出與所指定之端子接線時會成為編譯錯誤之剩下的端子,依據與所指定之端子的直線距離,以從瞬前所決定之推薦順序開始連號的方式而將推薦順序編號(步驟S602)。
再者,在與所指定之端子的直線距離相等的端子有複數個時,推薦順序決定部102係依預先制定的規則來決定推薦順序。例如,推薦順序決定部102係依使在編輯器畫面位於上側之端子、或位於左側之端子優先等規則而決定推薦順序。以上述方式,在本實施形態中之推薦順序係不會編譯錯誤的端子成為較小的編號,而會編譯錯誤的端子則成為不會編譯錯誤的端子之接續的編號,藉此顯示與所指定之端子之連接的優先度。
推薦順序決定部102係將經編號之推薦順序傳送至編輯器部101。編輯器部101係以對應於端子被 指定之FBD零件以外的FBD零件的各端子之方式設置推薦順序顯示欄,並以將經推薦順序決定部102決定之推薦順序顯示於編輯器畫面上的方式更新畫面顯示(步驟S603)。亦即,於編輯器畫面上以從「1」開始之自然數顯示有推薦順序。
列舉具體例,針對實施形態3之程式編寫裝置的動作進行說明。第9圖係顯示實施形態3之程式編寫裝置使顯示部顯示之編輯器畫面之一例的圖。於編輯器畫面700中顯示有FBD零件701至705。FBD零件701係具有輸出端子701a,FBD零件702至705係具有輸入端子702a至705a。此外,於編輯器畫面700中顯示有推薦順序顯示欄7061至7064。推薦順序顯示欄7061至7064係顯示推薦順序決定部102所決定之推薦順序。
在此,FBD零件701之輸出端子701a與FBD零件702之輸入端子702a的資料類型不同,而在接線時產生編譯錯誤。例如,若為IEC61131-3所定義之類別,則有屬於整數型的INT型、屬於浮點數型的REAL型、以true或false顯示對應於條件式之結果的BOOL型等資料類型,當將資料類型不同的輸入端子及輸出端子接線時則會產生編譯錯誤。此外,FBD零件701之輸出端子701a與FBD零件703之輸入端子703a的資料類型不相同,會在接線時產生編譯錯誤。此外,FBD零件701之輸出端子701a與FBD零件704之輸入端子704a的資料類型相同,不會在接線時產生編譯錯誤。再者,FBD零件701之輸出端子701a 與FBD零件705之輸入端子705a的資料類型相同,不會在接線時產生編譯錯誤。
針對推薦順序決定部102決定推薦順序的動作進行說明。推薦順序決定部102係透過零件資訊管理部103,而從零件資訊104取得輸出端子701a被指定之FBD零件701及FBD零件702至705的端子資訊。取得端子資訊的推薦順序決定部102係首先抽出輸入端子704a及705a,作為在與屬於被指定之端子的輸出端子701a接線時不會編譯錯誤的端子。推薦順序決定部102係依據與屬於被指定之端子的輸出端子701a之直線距離短的程度,將輸入端子704a的推薦順序編號為「1」,將輸入端子705a的編號順序編號為「2」。接著,推薦順序決定部102係抽出輸入端子702a及輸入端子703a,作為在與屬於被指定之端子的輸出端子701a接線時會編譯錯誤之剩下的端子。推薦順序決定部102係依據與屬於被指定之端子的輸出端子701a之直線距離短的程度,以成為從瞬前所決定之推薦順序的連號之方式,將輸入端子702a的推薦順序編號為「3」,將輸入端子703a的編號順序編號為「4」。然後,推薦順序決定部102係將推薦順序回傳至編輯器部101。
編輯器部101係於編輯器畫面700上設置對應於輸入端子702a至705a之推薦順序顯示欄7061至7064,並於其中顯示從推薦順序決定部102所取得之推薦順序。亦即,於對應於輸入端子702a之推薦順序顯示欄7061中顯示「3」,於對應於輸入端子703a之推薦順序顯示 欄7062中顯示「4」,於對應於輸入端子704a之推薦順序顯示欄7063中顯示「1」,於對應於輸入端子705a之推薦順序顯示欄7064中顯示「2」。
當操作輸入部405而輸入對應於推薦順序之數字、或選擇推薦順序顯示欄7061至7064時,係將對應於所輸入之數字或所選擇之推薦順序顯示欄7061至7064的端子與被指定的端子701a接線。對於用以輸入對應於推薦順序之數字、或選擇推薦順序顯示欄7061至7064之輸入部405的操作可有由鍵盤進行推薦順序的選擇或由滑鼠進行選擇等各式各樣之操作,惟並不限定於特定的方法。
再者,推薦順序決定部102係區分會發生編譯錯誤之端子的推薦順序與不會發生編譯錯誤之端子的推薦順序而回傳至編輯器部101,編輯器部101亦可在將推薦順序顯示於推薦順序顯示欄7061至7064之際,以不同顏色顯示會發生編譯錯誤之端子的推薦順序與不會發生編譯錯誤之端子的推薦順序。如此一來,由於可容易地判別不會成為編譯錯誤之端子,故可縮短程式編寫所需要的時間。
再者,於上述的說明中,係以下述情形為例:推薦順序決定部102將端子被指定之FBD零件以外的FBD零件之端子且為資料類型與被指定之端子一致的端子,依與被指定之端子的直線距離短的程度的順序編號,且接續此編號而將端子被指定之FBD零件以外的FBD零件之端子且為資料類型與被指定之端子不一致的端子,依與被指定之端子的直線距離短的程度的順序編號,而決定 與所指定之端子的接線作業之推薦優先順序。但是,亦可為僅檢測資料類型與被指定之端子一致的端子及不一致的端子的其中一者,根據此檢測結果與所取得之接線的連接優先度之資訊,而決定與被指定之端子之間之接線作業的推薦優先順序。
根據實施形態3,在編輯器畫面上指定已配置完成之FBD零件的端子之際,可藉由越是被推薦為接線目的地的端子之順位越高的方式來顯示推薦順序。換言之,在接線時選擇連接目的地之端子之際可容易地掌握端子的優先度。藉此,可有效率地進行接線作業。
再者,於上述的說明中,雖個別地說明實施形態1至3,惟亦可將該等實施形態的動作設為一連串的動作來進行。例如,亦可在將實施形態2、3的動作設為一連串的動作,而在指定已配置於編輯器畫面之FBD零件之際,對所指定的零件具有的端子顯示推薦順序,且在指定任一個端子之際,對所指定之FBD零件以外的FBD零件之端子顯示推薦順序。
如此,在本發明中,係藉由選擇推薦順序或推薦順序顯示部而可進行FBD零件的配置或接線,就其選擇手段而言,可有由鍵盤進行推薦順序的選擇或由滑鼠進行選擇等各式各樣之方式,惟並不限定於特定的方法。
(產業上的利用可能性)
如上所述,本發明之程式編寫裝置在使用FBD語言之程式編寫中可由使用者容易地辨識FBD零件之 推薦的配置位置、或FBD零件之推薦的連接端子之特點甚為有用,特別適用於欲減少編譯錯誤之發生。
100‧‧‧程式編寫裝置
101‧‧‧編輯器部
102‧‧‧推薦順序決定部
103‧‧‧零件資訊管理部
104‧‧‧零件資訊
401‧‧‧CPU
402‧‧‧RAM
403‧‧‧ROM
404‧‧‧記憶部
405‧‧‧輸入部
406‧‧‧顯示部
407‧‧‧程式編寫工具軟體
409‧‧‧通信I/F

Claims (8)

  1. 一種程式編寫裝置,係在編輯器畫面上連接複數個FBD零件而作成記述處理之FBD語言之程式者,該程式編寫裝置係具有:零件資訊管理部,係管理顯示FBD零件之大小的尺寸資訊;推薦順序決定部,係於在前述編輯器畫面上對於已配置完成的FBD零件進行新配置FBD零件的操作之際,從前述零件資訊管理部取得已配置完成之FBD零件的尺寸資訊及新配置之FBD零件的尺寸資訊,根據該取得之尺寸資訊而檢測可配置新配置之FBD零件的複數個區域,根據該檢測到的複數個區域之位置,而決定複數個區域間之零件配置的推薦優先順序;及編輯器部,係將前述推薦順序決定部所決定之前述推薦優先順序顯示於前述複數個區域。
  2. 如申請專利範圍第1項所述之程式編寫裝置,其中前述推薦順序決定部係依預先設定之演算法來檢測前述複數個區域,並決定前述推薦優先順序。
  3. 如申請專利範圍第2項所述之程式編寫裝置,其中前述推薦順序決定部的演算法係設定為從已配置完成的FBD零件之右側、左側及下側來檢測可配置新配置的FBD零件之區域,並依右側、左側、下側之順序以較高的優先度來決定推薦優先順序。
  4. 一種程式編寫裝置,係在編輯器畫面上連接具有複數 個端子之FBD零件而作成記述處理之FBD語言的程式者,該程式編寫裝置係具有:零件資訊管理部,係依各個FBD零件來管理附屬於各端子之資料類型的資訊及複數個端子之接線的連接優先度之資訊;推薦順序決定部,係於指定被配置在編輯器畫面上之複數個FBD零件中的一者而進行接線操作之際,從零件資訊管理部取得前述所指定之第1FBD零件所包含之端子之資料類型的資訊、前述第1FBD零件所包含之接線之連接優先度的資訊、及與前述第1FBD零件接線的第2FBD零件所包含之端子之資料類型的資訊,根據該取得之資料類型的資訊而進行前述第1FBD零件之端子與前述第2FBD零件之端子間的資料類型之比較,並根據其比較結果與前述取得之接線之連接優先度的資訊,而決定前述第1FBD零件之端子間的接線作業的推薦優先順序;及編輯器部,係使經前述推薦順序決定部所編號的前述推薦優先順序對應於前述第1FBD零件的各端子而予以顯示。
  5. 如申請專利範圍第4項所述之程式編寫裝置,其中前述推薦順序決定部係檢測前述第1FBD零件的端子與前述第2FBD零件的端子間之資料類型的一致與不一致兩者,並以使資料類型不一致的端子依前述接線的連接優先度進行編號,且接續此編號而使資料 類型一致的端子依前述接線的連接優先度進行編號之方式,而決定前述第1FBD零件之端子間之接線作業的推薦優先順序。
  6. 一種程式編寫裝置,係在編輯器畫面上連接具有複數個端子之FBD零件而作成記述處理之FBD語言的程式者,該程式編寫裝置係具有:零件資訊管理部,係依各個FBD零件來管理附屬於各端子之資料類型的資訊;推薦順序決定部,係於指定被配置在編輯器畫面上之複數個FBD零件中的一個端子而進行接線操作之際,從前述零件資訊管理部取得所指定之端子的資料類型之資訊、及屬於具有前述所指定之端子之第1FBD零件以外的FBD零件之於前述編輯器畫面上已配置完成之第2FBD零件所包含之端子的資料類型之資訊,根據該取得的資料類型之資訊來進行前述所指定之端子與前述第2FBD零件之端子間的資料類型之比較,根據其比較結果,而決定與前述所指定之端子之接線作業的推薦優先順序;及編輯器部,係使經前述推薦順序決定部所編號的前述推薦優先順序對應於前述第2FBD零件的各端子而予以顯示。
  7. 如申請專利範圍第6項所述之程式編寫裝置,其中前述推薦順序決定部係將前述第2FBD零件之資料類型一致的端子依與前述所指定之端子的直線距離 較短的順序予以編號,且接續此編號而將前述第2FBD零件之資料類型不一致的端子依與前述所指定之端子的直線距離較短的順序予以編號,而決定與所指定之端子的接線作業之推薦優先順序。
  8. 如申請專利範圍第5項或第7項所述之程式編寫裝置,其中前述編輯器部係以不同顏色來顯示資料類型一致之端子的前述推薦優先順序、及資料類型不一致之端子的前述推薦優先順序。
TW103124501A 2014-03-07 2014-07-17 程式編寫裝置 TWI528122B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/056050 WO2015132971A1 (ja) 2014-03-07 2014-03-07 プログラミング装置

Publications (2)

Publication Number Publication Date
TW201535078A true TW201535078A (zh) 2015-09-16
TWI528122B TWI528122B (zh) 2016-04-01

Family

ID=54054802

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103124501A TWI528122B (zh) 2014-03-07 2014-07-17 程式編寫裝置

Country Status (7)

Country Link
US (1) US9606776B2 (zh)
JP (1) JP5829780B1 (zh)
KR (1) KR101634063B1 (zh)
CN (1) CN105431790B (zh)
DE (1) DE112014003151T5 (zh)
TW (1) TWI528122B (zh)
WO (1) WO2015132971A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3299914A1 (de) * 2016-09-26 2018-03-28 Siemens Aktiengesellschaft Verfahren zum erzeugen eines kontrollflussplanes
WO2019167187A1 (ja) * 2018-02-28 2019-09-06 三菱電機株式会社 プログラミング支援装置、プログラミング支援方法およびプログラミング支援プログラム
US10935950B2 (en) * 2018-03-28 2021-03-02 Mitsubishi Electric Corporation Programming supporting apparatus, programming supporting method, and recording medium
JP6584724B1 (ja) * 2018-10-18 2019-10-02 三菱電機株式会社 プログラム照合装置、プログラム照合方法、およびプログラム照合プログラム
JP6950665B2 (ja) * 2018-11-02 2021-10-13 横河電機株式会社 エンジニアリング装置、エンジニアリング装置の制御方法及びプログラム
JP7421280B2 (ja) 2019-07-30 2024-01-24 三和シヤッター工業株式会社 建具
US11307554B2 (en) 2019-11-20 2022-04-19 Younes Faraj System and method for keyword-based PLC programming

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2900071B2 (ja) 1990-06-07 1999-06-02 富士電機株式会社 プログラマブルコントローラのプログラミング装置
DE19880536B4 (de) * 1997-03-11 2004-08-05 Mitsubishi Denki K.K. Visuelles Programmierverfahren und dieses Verfahren anwendendes Pogrammiersystem
DE60045196D1 (de) * 1999-08-31 2010-12-16 Digital Electronics Corp Editierungsvorrichtung und Aufnahmemedium mit darauf aufgezeichnetem Editierungsprogramm
US20020089550A1 (en) 2000-02-14 2002-07-11 Julian Orbanes Method and apparatus for organizing hierarchical screens in virtual space
US20020089541A1 (en) 2000-02-14 2002-07-11 Julian Orbanes System for graphically interconnecting operators
US20020080177A1 (en) 2000-02-14 2002-06-27 Julian Orbanes Method and apparatus for converting data objects to a custom format for viewing information in virtual space
US20020075311A1 (en) 2000-02-14 2002-06-20 Julian Orbanes Method for viewing information in virtual space
US20020075331A1 (en) 2000-02-14 2002-06-20 Julian Orbanes Method and apparatus for addressing data objects in virtual space
US20010052110A1 (en) 2000-02-14 2001-12-13 Julian Orbanes System and method for graphically programming operators
US20020085035A1 (en) 2000-02-14 2002-07-04 Julian Orbanes Method and apparatus for creating custom formats for viewing information in virtual space
DE10197097B4 (de) 2001-03-29 2012-02-23 Mitsubishi Denki K.K. Programmierwerkzeug
US7257620B2 (en) * 2001-09-24 2007-08-14 Siemens Energy & Automation, Inc. Method for providing engineering tool services
US8086664B2 (en) * 2001-09-24 2011-12-27 Siemens Industry, Inc. Method and apparatus for programming programmable controllers and generating configuration data from a centralized server
US7324856B1 (en) * 2003-09-25 2008-01-29 Rockwell Automation Technologies, Inc. Autogeneration of code via human-machine interfaces (HMI) and self-building HMI
JP4345576B2 (ja) * 2004-05-26 2009-10-14 ヤマハ株式会社 信号経路設定装置および信号経路設定プログラム
JP4888717B2 (ja) * 2007-06-12 2012-02-29 オムロン株式会社 安全コントローラのプログラム開発支援装置
DE102008002266B4 (de) 2007-06-12 2019-03-28 Omron Corp. Programmentwicklung-Unterstützungsvorrichtung einer Sicherheitssteuerung
US8117424B2 (en) * 2007-09-21 2012-02-14 Siemens Industry, Inc. Systems, devices, and/or methods for managing programmable logic controller processing
US8694959B2 (en) * 2008-09-30 2014-04-08 Ics Triplex Isagraf Inc. Multi language editor
US8327316B2 (en) * 2008-09-30 2012-12-04 Ics Triplex Isagraf Inc. Compilation model
JP5183571B2 (ja) 2009-06-01 2013-04-17 三菱電機株式会社 回路図編集装置および回路図編集プログラム
JP2012159868A (ja) 2011-01-28 2012-08-23 Mitsubishi Electric Corp プログラマブルロジックコントローラのプログラミング装置
JP4994522B1 (ja) * 2011-12-07 2012-08-08 三菱電機株式会社 プログラマブル表示器用画面データ編集装置
EP2901396A1 (en) * 2012-09-26 2015-08-05 Siemens Aktiengesellschaft Providing a customized programmable logic controller to a customer

Also Published As

Publication number Publication date
CN105431790A (zh) 2016-03-23
US20160196113A1 (en) 2016-07-07
JPWO2015132971A1 (ja) 2017-04-06
JP5829780B1 (ja) 2015-12-09
TWI528122B (zh) 2016-04-01
US9606776B2 (en) 2017-03-28
KR20160014117A (ko) 2016-02-05
KR101634063B1 (ko) 2016-06-27
DE112014003151T5 (de) 2016-05-12
WO2015132971A1 (ja) 2015-09-11
CN105431790B (zh) 2017-09-08

Similar Documents

Publication Publication Date Title
TWI528122B (zh) 程式編寫裝置
US7272825B2 (en) Development aid device
EP2946252B1 (en) Automated input simulation for simulated programmable logic controller
KR101401158B1 (ko) 프로젝트 데이터 작성 장치 및 프로그래머블 표시기
TWI541622B (zh) 順序程式製作支援裝置
US11960925B2 (en) Program generating device, program generating method, and information storage medium
KR20060120539A (ko) 그래피컬 프로그래밍 장치 및 프로그래머블 표시기
JP4242361B2 (ja) 開発支援装置
JP7466376B2 (ja) 監視画面作成支援装置、監視画面作成支援方法、および監視画面作成支援プログラム
KR20130039965A (ko) 선박용 배관 모델링 시스템 및 그의 추출 밸브 리스트 타당성 검증 방법
KR101652321B1 (ko) 관계형 db를 이용한 발전소의 루프 와이어링 다이어그램 자동 생성 시스템 및 방법
CN113711142B (zh) 调试辅助装置、调试辅助方法、记录介质
JP6604455B1 (ja) 表示制御方法、表示制御装置およびプログラム
CN112204480A (zh) 信息处理装置以及显示程序
JP2005310056A (ja) プログラム実行制御方式
JP2022130297A (ja) 情報処理装置、制御装置、制御方法、制御装置の制御方法、プログラム、記録媒体
JP2022165170A (ja) 情報処理装置、情報処理方法、制御プログラム、記録媒体、プログラム生成方法、物品の製造方法
US10902181B2 (en) Program creation apparatus
WO2018185915A1 (ja) プログラム作成装置およびプログラム作成方法
JP2012198743A (ja) 監視制御アプリケーション設計装置及びプログラム
JPH0887311A (ja) シーケンスプログラムのチェック方法及び装置
JP2005227948A (ja) 図式言語方式制御装置、図式言語プログラミングの方法

Legal Events

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