TW201807569A - 程式編集裝置、程式編集方法以及程式編集程式產品 - Google Patents

程式編集裝置、程式編集方法以及程式編集程式產品 Download PDF

Info

Publication number
TW201807569A
TW201807569A TW105134396A TW105134396A TW201807569A TW 201807569 A TW201807569 A TW 201807569A TW 105134396 A TW105134396 A TW 105134396A TW 105134396 A TW105134396 A TW 105134396A TW 201807569 A TW201807569 A TW 201807569A
Authority
TW
Taiwan
Prior art keywords
program
command
commands
plc
control program
Prior art date
Application number
TW105134396A
Other languages
English (en)
Other versions
TWI621066B (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 TW201807569A publication Critical patent/TW201807569A/zh
Application granted granted Critical
Publication of TWI621066B publication Critical patent/TWI621066B/zh

Links

Classifications

    • 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
    • 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
    • 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/045Programme control other than numerical control, i.e. in sequence controllers or logic controllers using logic state machines, consisting only of a memory or a programmable logic device containing the logic for the controlled machine and in which the state of its outputs is dependent on the state of its inputs or part of its own output states, e.g. binary decision controllers, finite state controllers
    • 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/054Input/output
    • 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/10Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches
    • G05B19/102Programme control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches for input of programme steps, i.e. setting up 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • 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/315Object-oriented languages
    • 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
    • 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/052Linking several PLC's
    • 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/323Visualisation of programs or trace data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/51Source to source
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Programmable Controllers (AREA)

Abstract

本發明之變數間依存分析部(310)為分析包含在利用程序控制用語言記述之控制程式,也就是程序控制程式之多個命令之命令間的參數與返回值之關係。PLC命令排序分割部(312)為依據利用變數間依存分析部(310)分析的命令間的參數與返回值之關係,進行多個命令之命令執行順序的變更及以命令單位之程序控制程式的分割之至少一個。

Description

程式編集裝置、程式編集方法以及程式編集程式產品
本發明為有關一種程式編集裝置、程式編集方法以及程式編集程式產品。
在專利文獻1中,揭露軟體PLC(Pprogrammable Logic Controller;可程式邏輯控制器)編程裝置。專利文獻1之軟體PLC編程裝置為將使用者利用PLC命令產生的程序控制程式,利用轉換程式轉換成使用通用的高級語言的命令之程式。接著,軟體PLC編程裝置使用通用編譯器,從轉換後的程式產生通用CPU(Central Processing Unit;中央處理單元)用的二進制碼(以下也簡稱為二進制)。藉此,可以達到根據通用電腦之程序控制。
[先前技術文獻]
[專利文獻]
專利文獻1:日本特開平7-295612號公報
在專利文獻1中,利用轉換程式將使用PLC命令的程序控制程式轉換為高級語言程式,再利用編譯器從轉換後的程式產生二進制。在專利文獻1中,其為維持記述在程序控 制程式中之命令執行順序,將程序控制程式變更為高級語言程式,產生二進制。
為此,命令執行順序不一定有效率化,而造成在執行二進制時之程序控制的執行所要時間無法縮短在希望的所要時間以內之情況。在這樣的情況下,會造成使用者必須以程序控制的執行所要時間縮短在希望所要時間以內的方式再次修正程序控制程式之課題。
又,近年來通用CPU的多核心化一直在進步,可以並列執行多個二進制,可以縮短執行所要時間。在該情況下,在同時執行的二進制之間,必須考量處理內容不相衝突。但是,要將期望的處理跨越多個程序控制程式進行記述乙事對於使用者而言為不容易的。又,若是將程序控制程式分割成幾個二進制就可以達到最有效率,則是依據PLC裝置或PLC裝置內的處理器等而不同。為此,會造成每次變更PLC裝置就發生必須重新製作程序控制程式的課題。
本發明以解決上述課題為主要目的。更具體而言,本發明以從使用者產生的程序控制程式,產生可得到與該程序控制程式相等結果之更有效率的程序控制程式為主要目的。
有關本發明之程式編集裝置,具有:關係分析部,分析包含在利用程序控制用的語言記述之控制程式,也就是程序控制程式的多個命令之命令間的參數與返回值之關係;以及程式編集部,依據利用前述關係分析部分析之命令間的參 數與返回值之關係,進行前述多個命令之命令執行順序的變更、及以命令單位之前述程序控制程式的分割之至少一個。
根據本發明,藉由程序控制程式中之命令執行順序的變更及程序控制程式的分割之至少一個,從使用者產生的程序控制程式可以產生能夠得到與該程序控制程式相等結果之更有效率的程序控制程式。
100‧‧‧使用者
200‧‧‧程序控制程式
201‧‧‧等價最佳化程序控制程式
202‧‧‧高級語言程式
203‧‧‧二進制
210‧‧‧變數間依存資訊
211‧‧‧命令資訊
212‧‧‧PLC裝置資訊
300‧‧‧程序控制程式最佳化部
301‧‧‧高級語言轉換部
302‧‧‧編譯器
310‧‧‧變數間依存分析部
311‧‧‧資訊記憶部
312‧‧‧PLC命令排序分割部
400‧‧‧編程裝置
401‧‧‧PLC裝置
500‧‧‧處理器
501‧‧‧I/O裝置
503‧‧‧記憶體
504‧‧‧記憶裝置
505‧‧‧匯流排
1500‧‧‧處理器
1501‧‧‧I/O裝置
1503‧‧‧記憶體
1504‧‧‧記憶裝置
1505‧‧‧匯流排
1506‧‧‧使用者介面裝置
圖1為顯示有關實施形態1之編程裝置的機能構成例及PLC裝置的硬體構成例之圖面。
圖2為顯示有關實施形態1之編程裝置的硬體構成例之圖面。
圖3為顯示有關實施形態1之PLC裝置的處理程序之圖面。
圖4為顯示有關實施形態1之程序控制程式最佳化部的機能構成例之圖面。
圖5為顯示有關實施形態1之程序控制程式的例示之圖面。
圖6為顯示有關實施形態1之分析命令間的依存關係的處理之流程圖。
圖7為顯示有關實施形態1之變數間依存資訊的例示之圖面。
圖8為顯示有關實施形態1之命令資訊的例示之圖面。
圖9為顯示有關實施形態1之PLC裝置資訊的例示之圖面。
圖10為顯示有關實施形態1之變更命令執行順序的處理之流程圖。
圖11為顯示有關實施形態1之分割程序控制程式的處理 之流程圖。
圖12為顯示有關實施形態1之等價最佳化程序控制程式的例示之圖面。
圖13為顯示有關實施形態1之等價最佳化程序控制程式的例示之圖面。
圖14為顯示有關實施形態2之編程裝置的機能構成例及PLC裝置的硬體構成例之圖面。
以下,針對本發明的實施形態,使用圖面進行說明。在以下的實施形態之說明及圖面中,附予相同符號者為表示同一部分或是相當的部分。
實施形態1.
***構成說明***
圖1為顯示有關本實施形態之編程裝置400的機能構成例及PLC裝置401的硬體構成例。
編程裝置400為程式編集裝置的例示。又,利用編程裝置400所進行的動作為程式編集方法的例示。又,實現編程裝置400所進行的動作之程式為程式編集程式產品的例示。
如圖1所示,編程裝置400由程序控制程式最佳化部300、高級語言轉換部301、及編譯器302構成。
PLC裝置401由處理器500、I/O(Input/Output;輸入/輸出)裝置501、記憶體503、記憶裝置504及匯流排505構成。
在編程裝置400中,程序控制程式最佳化部300從使用者100取得程序控制程式200,從程序控制程式200產 生等價最佳化程序控制程式201。接著,程序控制程式最佳化部300將已產生的等價最佳化程序控制程式201輸出到高級語言轉換部301。
程序控制程式200為利用程序控制用的語言記述的控制程式。在程序控制程式200中,包含有多個PLC命令(以下也簡稱為命令)。圖5為顯示程序控制程式200的一例。之後詳細敘述圖5。程序控制程式200藉由使用者100予以產生。使用者100為在PLC裝置401使程序控制進行者。
等價最佳化程序控制程式201為根據程序控制程式最佳化部300進行最佳化後的程序控制程式。具體而言,等價最佳化程序控制程式201為變更程序控制程式200內的多個PLC命令的命令執行順序之程序控制程式、或是以命令單位分割程序控制程式200而得到之程序控制程式。
高級語言轉換部301從程序控制程式最佳化部300取得等價最佳化程序控制程式201,從等價最佳化程序控制程式201產生高級語言程式202。接著,高級語言轉換部301將已產生的高級語言程式202輸出到編譯器302。
高級語言程式202為利用通用高級語言記述之控制程式。高級語言程式202例如是利用C語言等記述之控制程式。
編譯器302從高級語言轉換部301取得高級語言程式202,從高級語言程式202產生二進制203。
二進制203為可利用PLC裝置401執行之二進制碼。
PLC裝置401執行二進制203,進行程序控制。
在本實施形態中,不論PLC裝置401的種類。如前述所示, PLC裝置401例如由處理器500、I/O裝置501、記憶體503、記憶裝置504及匯流排505構成。
編程裝置400及PLC裝置401不一定具備圖1所示的所有要件亦可,又,具備圖1所示的要件以外之要件亦可。
又,圖2為顯示有關本實施形態之編程裝置400的硬體構成例。
編程裝置400為在匯流排1505連接有處理器1500、I/O裝置1501、記憶體1503、記憶裝置1504及使用者介面裝置1506之電腦。
在記憶裝置1504中記憶實現圖1所示之程序控制程式最佳化部300、高級語言轉換部301及編譯器302的機能之程式。
此等程式從記憶裝置1504裝載到記憶體1503,利用處理器1500予以執行。也就是說,處理器1500進行程序控制程式最佳化部300、高級語言轉換部301及編譯器302的動作。
在圖2中,模式顯示處理器1500在執行實現程序控制程式最佳化部300、高級語言轉換部301及編譯器302的機能之程式時的狀態。
使用者介面裝置1506為從使用者100取得程序控制程式200。
I/O裝置1501將設定值與根據編譯器302所產生的二進制203輸出到PLC裝置401。
圖3為顯示PLC裝置401的處理程序例。
首先,PLC裝置401執行輸入處理900。在輸入處理900中,PLC裝置401從編程裝置400的I/O裝置1501取得二進 制203執行所必要的設定值。又,PLC裝置401在輸入處理900前就已經從I/O裝置1501取得二進制203。
其次,PLC裝置401進行程序控制處理901。也就是說,PLC裝置401使用輸入處理900所取得的設定值,執行二進制203。
其次,PLC裝置401利用輸出處理902,將程序控制處理901的執行結果輸出到外部裝置、或儲存在記憶裝置504。
輸入處理900、程序控制處理901、及輸出處理902依照每個執行周期903反覆進行。
當執行周期903變短,在一定時間內所進行的輸入處理900、程序控制處理901、及輸出處理902的次數變多時,可以提高PLC裝置401的性能。
又,PLC裝置401的動作是由輸入處理900與輸出處理902決定的,因此只要能夠達到輸入處理900與輸出處理902的整合,PLC裝置401要如何進行程序控制處理901皆可。
圖4為顯示程序控制程式最佳化部300的機能構成例。
程序控制程式最佳化部300由變數間依存分析部310、資訊記憶部311、及PLC命令排序分割部312構成。
變數間依存分析部310分析包含在程序控制程式200之PLC命令間的參數與返回值之關係(以下也稱為依存關係)。
又,變數間依存分析部310輸出顯示PLC命令間的依存關係之變數間依存資訊210。圖7為變數間依存資訊210的一例。 之後詳細敘述圖7。
變數間依存分析部310為關係分析部的例示。又,變數間依存分析部310所進行的處理為關係分析處理的例示。
資訊記憶部311為記憶命令資訊211與PLC裝置資訊212。
在命令資訊211中,定義例如在多個運算子之中,根據連續執行提升運算效率之運算子組合。圖8為顯示命令資訊211的一例。雖然在之後詳細敘述圖8,但是圖8所記述之運算子組合相當於建議運算子組合。具體而言,ADD與ADD、ADD與SUB的組合、SUB與ADD、SUB與SUB的組合相當於建議運算子組合。
在PLC裝置資訊212中,定義例如依照每PLC裝置401的機種,PLC裝置401可同時執行之PLC命令個數(同時執行命令數)。圖9為PLC裝置資訊212的例示。之後詳細敘述圖9。
又,資訊記憶部311記憶關於PLC命令之與圖8不同種類的資訊作為命令資訊211亦可。
又,資訊記憶部311記憶關於PLC裝置401之與圖9不同種類的資訊作為PLC裝置資訊212亦可。
PLC命令排序分割部312以變數間依存資訊210、命令資訊211、PLC裝置資訊212為根基,從程序控制程式200產生等價最佳化程序控制程式201。
等價最佳化程序控制程式201的處理結果與程序控制程式200相同,而且可以使PLC裝置401更快速執行之程序控制程式。
PLC命令排序分割部312更具體而言為進行程序控制程式200內之多個PLC命令之命令執行順序的變更及以PLC命令單位之程序控制程式200的分割之至少一個,產生等價最佳化程序控制程式201。
PLC命令排序分割部312在進行命令執行順序的變更之情況下,依據變數間依存資訊210所示之PLC命令間的參數與返回值之關係、以及包含在程序控制程式200內之各PLC命令的運算子,從多個PLC命令之中指定根據連續執行提升運算效率之2以上的命令。接著,PLC命令排序分割部312以指定後的2以上之PLC命令連續執行的方式,進行多個PLC命令的命令執行順序的變更。
例如,PLC命令排序分割部312從多個PLC命令選擇任一個PLC命令,指定將已選擇的PLC命令(也稱為選擇命令)的返回值作為參數之PLC命令的返回值作為參數之PLC命令以外的PLC命令,而且連同包含在選擇命令的運算子,包含有在命令資訊211中包含在建議運算子的運算子之1以上的PLC命令、以及選擇命令。
又,PLC命令排序分割部312在進行程序控制程式200的分割之情況下,依據命令資訊211所示之PLC命令間的參數與返回值之關係、以及PLC裝置資訊212所示之利用PLC裝置401可同時執行的命令數(同時執行命令數),將程序控制程式200分割成與同時執行命令數相同個數的分割程式。
例如,PLC命令排序分割部312從多個PLC命令選擇任一個PLC命令,以已選擇的選擇命令、與將選擇命令的返回值作 為參數之其他PLC命令包含在相同的分割程式之方式,分割程序控制程式200。
PLC命令排序分割部312為程式編集部之例示。又,利用PLC命令排序分割部312所進行的處理為程式編集處理的例示。
圖5為顯示程序控制程式200的一例。圖5為顯示階層程式作為程序控制程式200的例示。
在圖5之程序控制程式200中,在所謂的階層2000連接有PLC命令2001~2005。在圖5的程序控制程式200中,依照PLC命令2001、PLC命令2002、PLC命令2003、PLC命令2004、PLC命令2005的順序執行。
變數2010~2020作為PLC命令的輸入值也就是參數或是PLC命令的輸出值也就是返回值而保持有資料。
在PLC命令中有各式各樣的種類,因應各自的種類而處理以參數所給予的資料,並將處理結果的資料作為返回值予以輸出。例如PLC命令2001、2003、2004為相加參數1之值與參數2之值,將相加值作為返回值1予以輸出。PLC命令2002為將參數1之值與參數2之值相乘,再將相乘值作為返回值1予以輸出。PLC命令2005為以參數2之值除以參數1之值,將相除值作為返回值1予以輸出。
將作為某個PLC命令返回值所使用的變數,作為之後執行的PLC命令的參數加以使用亦可。又,在程序控制程式200中包含有以圖5所示之PLC命令2001~2005執行的運算以外的運算所執行的PLC命令亦可。又,PLC命令的參數與返回值 之個數與圖5所示者不同亦可。又,不存在有參數及返回值的任一個亦可。
***動作說明***
其次,說明本實施形態之相關動作例。
使用者100產生程序控制程式200,將已產生的程序控制程式200輸入到編程裝置400。其中,使用者100為產生程序控制程式200者。
編程裝置400之程序控制程式最佳化部300的變數間依存分析部310,進行圖6所示的處理後得到變數間依存資訊210。
圖6為顯示變數間依存分析部310的動作例。
以下,參照圖6說明變數間依存分析部310的動作例。
在步驟S3001中,變數間依存分析部310將表示現在的處理狀態之變數也就是n與m設定為初始值也就是1。
其次,在步驟S3002中,變數間依存分析部310取得被用於程序控制程式200上之第n個PLC命令(以下稱為命令n)的參數之變數、被用於返回值之變數、以及運算子。
其次,在步驟S3003中,變數間依存分析部310將利用步驟S3002取得之參數的變數、返回值的變數、以及運算子寫入到變數間依存資訊210。
其次,在步驟S3004中,變數間依存分析部310判定被用於程序控制程式200上之第n+m個PLC命令(以下稱為命令n+m)的參數之變數是否與利用步驟S3002取得之命令n的返回值之變數一致。
在被用於第命令n+m個的參數之變數與命令n的 返回值之變數一致時,變數間依存分析部310在步驟S3005中,將命令n+m與命令n依存乙事寫入到變數間依存資訊210,移動到步驟S3006。
在步驟S3006中,變數間依存分析部310判定命令n+m是否為程序控制程式200的最後PLC命令。
若命令n+m為非程序控制程式200的最後PLC命令時,變數間依存分析部310在步驟S3007中,增加1個變數m之值,移動到步驟S3004。
另一方面,若命令n+m為程序控制程式200的最後PLC命令時,變數間依存分析部310在步驟S3008中,判定命令n是否為程序控制程式200的最後PLC命令。
若命令n為程序控制程式200的最後PLC命令時,變數間依存分析部310結束處理。
另一方面,若命令n為非程序控制程式200的最後PLC命令時,變數間依存分析部310在步驟S3009中,增加1個變數n之值,而且將變數m再設定為1,移動到步驟S3002。
圖7為針對圖5的程序控制程式200,顯示變數間依存分析部310進行圖6所示的處理後而得到之變數間依存資訊210的例示。
在圖7中,命令1~命令5為圖5所示之命令1~命令5。
在種類的欄位中記述包含在各PLC命令的運算子。
在參數的欄位中記述被用於各PLC命令的參數之變數。
在返回值的欄位中記述被用於各PLC命令的返回值之變 數。
依存對象的欄位中記述各PLC命令所依存的其他PLC命令。
圖10為顯示根據PLC命令排序分割部312之變更命令順序的處理。
以下,參照圖10說明PLC命令排序分割部312的動作例。
在步驟S3101中,PLC命令排序分割部312將表示現在的處理狀態之變數n、變數m與變數p之值設定為初始值也就是1。
其次,在步驟S3102中,PLC命令排序分割部312將程序控制程式200上之第n個PLC命令(以下稱為命令n)配置在等價最佳化程序控制程式201的第p個。又,命令n相當於選擇命令。
其次,在步驟S3013中,PLC命令排序分割部312判定程序控制程式200上之第n+m個PLC命令(以下稱為命令n+m)是否可與命令n有效率執行。
更具體而言,PLC命令排序分割部312參照命令資訊211,判定命令n與命令n+m是否可以有效率執行。
圖8為顯示命令資訊211的例示。在圖8的例示中,在包含在命令n的運算子為ADD的情況下,若命令n+m的運算子為ADD或SUB時,命令n與命令n+m可以有效率執行。同樣,在包含在命令n的運算子為SUB的情況下,若命令n+m的運算子為ADD或SUB時,命令n與命令n+m可以有效率執行。在不符合此等的情況下,命令n與命令n+m為無法有效率執行。
在命令n與命令n+m可以有效率執行的情況下,PLC命令排序分割部312在步驟S3104中,在程序控制程式200上判定命令n+m與位於命令n+m與命令n之間的命令是否有依存關係。換言之,判定命令n+m是否將命令n的返回值作為參數之命令的返回值作為參數。又,PLC命令排序分割部312參照變數間依存資訊210,進行步驟S3104的判定。
在命令n+m與位於命令n+m與命令n之間的命令有依存關係的情況下,PLC命令排序分割部312在步驟S3105中,判定命令n+m是否為程序控制程式200的最後PLC命令。
若命令n+m為非最後命令時,PLC命令排序分割部312在步驟S3108中,增加1個變數m之值,移動到步驟S3103。
又,命令n+m為最後命令時,PLC命令排序分割部312在步驟S3109中,分別增加1個變數n之值與變數p之值,將變數m之值再設定為1,移動到步驟S3102。
在步驟S3104中,若命令n+m與位於命令n+m與命令n之間的命令沒有依存關係的情況下,PLC命令排序分割部312在步驟S3106中,將命令n+m配置在等價最佳化程序控制程式201的第p+1個。
其次,在步驟S3107中,PLC命令排序分割部312判定命令n是否為程序控制程式200的最後PLC命令。
若命令n為最後命令時,PLC命令排序分割部312結束處理。
另一方面,若命令n為非最後命令時,PLC命令排序分割 部312移動到步驟S3109。
圖12為顯示根據圖10的處理而得到之等價最佳化程序控制程式201的一例。
與圖5的程序控制程式200相比時,在圖12之等價最佳化程序控制程式201中,變更了PLC命令的命令執行順序。具體而言,以PLC命令2003比PLC命令2002更先執行的方式變更命令執行順序。
PLC命令2003的運算子與PLC命令2001的運算子都是ADD,根據圖8的命令資訊211,ADD與ADD的組合相當於可以有效率執行之運算子組合。接著,PLC命令2003與位於PLC命令2003與PLC命令2001之間的PLC命令2002沒有依存。
為此,PLC2003利用圖10的步驟S3106配置在PLC命令2001的下一個。該結果為得到圖12之等價最佳化程序控制程式201。
圖11為顯示根據PLC命令排序分割部312之分割程序控制程式的處理。
以下,參照圖11說明PLC命令排序分割部312的動作例。
在步驟S3201中,PLC命令排序分割部312將表示現在的處理狀態之變數也就是n、m、p與t之值設定為初始值也就是1。又,變數t不設定為1亦可。
在步驟S3202中,PLC命令排序分割部312從PLC裝置資訊212取得成為對象之PLC裝置401的同時執行命令數,將已取得的同時執行命令數設定為變數t。
如前述所示,PLC裝置資訊212如圖9所示。在PLC裝置 資訊212中,依照每PLC裝置401的機種,定義PLC裝置401可以同時執行幾個PLC命令。
PLC命令排序分割部312在成為現在對象的PLC裝置401機種為機種2時,取得2作為該PLC裝置401的同時執行命令數。
其次,在步驟S3203中,PLC命令排序分割部312產生t個成為分割結果之程序控制程式也就是分割程式。又,PLC命令排序分割部312在各分割程式設定從0到t-1的號碼。
又,在這時點各分割程式為空白。
其次,在步驟S3204中,PLC命令排序分割部312在t個分割程式之中,選定現在配置的PLC命令數為最小的分割程式,將該分割程式的號碼設定為變數p。
其次,在步驟S3205中,PLC命令排序分割部312將程序控制程式200的第n個PLC命令(以下稱為命令n)配置在第p個分割程式的最後。
其次,在步驟S3206中,PLC命令排序分割部312判定程序控制程式200的第n+m個PLC命令(以下稱為命令n+m)與命令n是否有依存關係。換言之,PLC命令排序分割部312參照變數間依存資訊210,判定命令n+m的參數之變數是否與命令n的返回值之變數相同。
若命令n+m與命令n有依存關係時,PLC命令排序分割部312在步驟S3207中,將命令n+m配置在第p個分割程式的最後。
其次,PLC命令排序分割部312在步驟S3208中, 判定命令n是否為程序控制程式200的最後PLC命令。
若命令n為最後的PLC命令時,PLC命令排序分割部312結束處理。
另一方面,若命令n為非最後的PLC命令時,PLC命令排序分割部312移動到步驟S3211。
在步驟S3206中,若命令n+m與命令n沒有依存關係時,PLC命令排序分割部312在步驟S3209中,判定命令n+m是否為程序控制程式200的最後PLC命令。
若命令n+m為非最後PLC命令時,PLC命令排序分割部312在步驟S3210中,增加1個變數m之值,移動到步驟S3206。
另一方面,命令n+m為最後PLC命令時,PLC命令排序分割部312在步驟S3211中,增加1個變數n之值,將變數m之值初始化為1,移動到步驟S3204。
圖13為顯示根據圖11的處理而得到之等價最佳化程序控制程式201的一例。
在圖13中,將圖5所示的程序控制程式200分割為分割程式1與分割程式2的2個。
若PLC裝置401為可同時執行2個程式時,藉由並行執行圖13所示之分割程式1與分割程式2,圖謀執行所要時間的縮短化。
如以上所示,在有關本實施形態之編程裝置400中,可以進行程序控制程式的最佳化(命令執行順序的變更、程序控制程式200的分割)。
PLC命令排序分割部312只進行圖10之命令執行順序的 變更及圖11之程序控制程式的分割之任一個亦可。又,PLC命令排序分割部312進行圖10之命令執行順序的變更及圖11之程序控制程式的分割兩者亦可。在進行圖10之命令執行順序的變更及圖11之程序控制程式的分割兩者的情況下,PLC命令排序分割部312對於進行圖10之命令執行順序的變更後之程序控制程式,進行圖11之程序控制程式的分割亦可。又,PLC命令排序分割部312對於進行圖11之程序控制程式的分割後的程序控制程式(分割程式),進行圖10之命令執行順序的變更亦可。
***實施形態的效果說明***
根據本實施形態,藉由進行程序控制程式中之命令執行順序的變更及程序控制程式的分割之至少一個,從使用者產生的程序控制程式,可以產生能夠得到與該程序控制程式相等結果之更有效率的程序控制程式。
為此,使用者在不論PLC裝置的構成等,只要記述期望的處理,就可以最快速得到能夠程序控制之程式。
實施形態2.
圖14為顯示有關本實施形態之編程裝置400之機能構成例及PLC裝置401的硬體構成例。
PLC裝置401的硬體構成例由於與圖1所示者相同,因此省略說明。
在本實施形態中,編程裝置400將利用程序控制程式最佳化部300所產生的等價最佳化程序控制程式201提示給使用者100。更具體而言,圖2所示之使用介面裝置1506表示等價最 佳化程序控制程式201。
在使用者100產生的程序控制程式200有錯誤的情況下,等價最佳化程序控制程式201也會有錯誤。為此,在程序控制程式200有錯誤的情況下,PLC裝置401不會如使用者的期望動作。
在本實施形態中,由於等價最佳化程序控制程式201被提示給使用者100,使用者100可以1個個分析等價最佳化程序控制程式201內的PLC命令,先行確認PLC裝置401的動作。
在本實施形態中,將利用PLC命令記述的程序控制程式200轉換成同樣是利用PLC命令記述的等價最佳化程序控制程式201,將等價最佳化程序控制程式201提示給使用者100。藉此,即使使用者100只了解PLC命令,不了解高級通用語言的情況下,使用者100也可以確認最佳化的程序控制程式。
以上,雖然針對本發明的實施形態進行說明,但是組合此等2個實施形態進行實施亦可。
或是,在此等2個實施形態之中,部分性實施1個亦可。
或是,部分性組合此等2個實施形態後進行實施亦可。
又,本發明並非限定於此等實施形態者,因應必要可以進行各種變更。
***硬體構成說明***
最後,進行編程裝置400之硬體構成的補充說明。
圖2所示之處理器1500為進行編程之IC(Integrated Circuit;積體電路)。
處理器1500為CPU(Central Processing Unit;中央處理單 元)、DSP(Digital Signal Processor;數位訊號處理器)等。
記憶體1503為RAM(Random Access Memory;隨機存取記憶體)。
記憶裝置1504為ROM(Read Only Memory;唯讀記憶體)、快閃記憶體、HDD(Hard Disk Drive;硬碟裝置)等。
I/O裝置1501為接收資料之接收器及傳送資料之傳送器,例如通訊晶片或NIC(network Interface Card;網路介面卡)。
使用者介面裝置1506為滑鼠、鍵盤、顯示器等。
在記憶裝置1504中,也記憶有OS(Operating System;作業系統)。
接著,將OS的至少一部分裝載在記憶體1503,並利用處理器1500予以執行。
處理器1500一邊執行OS的至少一部分,一邊執行實現程序控制程式最佳化部300、高級語言轉換部301及編譯器302的機能之程式。
藉由處理器1500執行OS,可以進行任務管理、記憶體管理、檔案管理、通訊控制等。
又,編程裝置400具備代替處理器1500之多個處理器亦可。
又,表示程序控制程式最佳化部300、高級語言轉換部301及編譯器302的處理結果之資訊或資料或訊號值或變數值記憶在記憶體1503、記憶裝置1504、處理器1500內的暫存器及快取記憶體的至少一個。
又,實現程序控制程式最佳化部300、高級語言轉換部301 及編譯器302的機能之程式記憶在磁碟、軟碟、光碟、壓縮光碟、藍光(商標登錄)光碟、DVD等可攜式記憶體媒體亦可。
又,將程序控制程式最佳化部300、高級語言轉換部301的「部」改讀為「電路」或「步驟」或「順序」或「處理」亦可。
又,編程裝置400藉由所謂邏輯IC(Integrated Circuit;積體電路)、GA(Gate Array;閘陣列)、ASIC(Application Specific Integrated Circuit;特殊應用積體電路)、FPGA(Field-Programmable Gate Array;現場可程式閘陣列)的電路予以實現亦可。
又,統稱處理器及上述電路也稱為處理電路。
200‧‧‧程序控制程式
201‧‧‧等價最佳化程序控制程式
210‧‧‧變數間依存資訊
211‧‧‧命令資訊
212‧‧‧PLC裝置資訊
300‧‧‧程序控制程式最佳化部
310‧‧‧變數間依存分析部(關係分析部)
311‧‧‧資訊記憶部
312‧‧‧PLC命令排序分割部(程式編集部)

Claims (9)

  1. 一種程式編集裝置,具有:關係分析部,分析包含在利用程序控制用的語言記述之控制程式也就是程序控制程式之多個命令之命令間的參數與返回值之關係;以及程式編集部,依據利用前述關係分析部分析的命令間的參數與返回值之關係,進行前述多個命令之命令執行順序的變更及以命令單位之前述程序控制程式的分割之至少一個。
  2. 如申請專利範圍第1項之程式編集裝置,其中,前述程式編集部依據利用前述關係分析部分析的命令間的參數與返回值之關係、以及包含在各命令的運算子,進行前述多個命令之命令執行順序的變更。
  3. 如申請專利範圍第2項之程式編集裝置,其中,前述程式編集裝置依據利用前述關係分析部分析的命令間的參數與返回值之關係、以及包含在各命令的運算子,從前述多個命令之中指定藉由連續執行提升運算效率之2以上的命令,以已指定的2以上的命令連續執行的方式,進行前述多個命令之命令執行順序的變更。
  4. 如申請專利範圍第3項之程式編集裝置,其中,前述程式編集裝置,其進一步具有:資訊記憶部,記憶將藉由連續執行提升運算效率之運算子組合定義為建議運算子組合之命令資訊,前述程式編集部,從前述多個命令選擇任一個命令, 指定將已選擇的選擇命令之返回值作為參數之命令的返回值作為參數之命令以外的命令,而且連同包含在前述選擇命令的運算子,包含有在前述命令資訊中包含在前述建議運算子組合的運算子之1以上的命令、以及前述選擇命令。
  5. 如申請專利範圍第1項之程式編集裝置,其中,前述程式編集部依據利用前述關係分析部分析的命令間的參數與返回值之關係、以及利用PLC(Pprogrammable Logic Controller;可程式邏輯控制器)裝置可同時執行之命令數也就是同時執行命令數,進行以命令單位之前述程序控制程式的分割。
  6. 如申請專利範圍第5項之程式編集裝置,其中,前述程式編集部將前述程序控制程式分割成與前述同時執行命令數相同個數的分割程式。
  7. 如申請專利範圍第6項之程式編集裝置,其中,前述程式編集部從前述多個命令選擇任一個命令,將已選擇的選擇命令、及將前述選擇命令的返回值作為參數之其他命令包含在相同的分割程式之方式,分割前述程序控制程式。
  8. 一種程式編集方法,電腦分析包含在利用程序控制用的語言記述之控制程式也就是程序控制程式之多個命令之命令間的參數與返回值之關係;以及前述電腦依據分析後的命令間的參數與返回值之關係,進行前述多個命令的命令執行順序的變更及以命令單位之前述程序控制程式的分割之至少一個。
  9. 一種程式編集程式產品,在電腦執行以下處理: 關係分析處理,分析包含在利用程序控制用的語言記述之控制程式也就是程序控制程式之多個命令之命令間的參數與返回值之關係;以及程式編集處理,依據前述關係分析處理分析的命令間的參數與返回值之關係,進行前述多個命令的命令執行順序的變更及以命令單位之前述程序控制程式的分割之至少一個。
TW105134396A 2016-08-30 2016-10-25 程式編集裝置、程式編集方法以及程式編集程式產品 TWI621066B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
??PCT/JP2016/075360 2016-08-30
PCT/JP2016/075360 WO2018042520A1 (ja) 2016-08-30 2016-08-30 プログラム編集装置、プログラム編集方法及びプログラム編集プログラム

Publications (2)

Publication Number Publication Date
TW201807569A true TW201807569A (zh) 2018-03-01
TWI621066B TWI621066B (zh) 2018-04-11

Family

ID=61300369

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105134396A TWI621066B (zh) 2016-08-30 2016-10-25 程式編集裝置、程式編集方法以及程式編集程式產品

Country Status (7)

Country Link
US (1) US10990073B2 (zh)
JP (1) JP6532610B2 (zh)
KR (1) KR102041772B1 (zh)
CN (1) CN109643093A (zh)
DE (1) DE112016007069T5 (zh)
TW (1) TWI621066B (zh)
WO (1) WO2018042520A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7024679B2 (ja) * 2018-10-05 2022-02-24 オムロン株式会社 開発支援プログラム、開発支援装置、および開発支援方法
JP7183877B2 (ja) * 2019-03-13 2022-12-06 オムロン株式会社 グラフ表示装置、グラフ表示方法、及びグラフ表示プログラム
AT522186B1 (de) * 2019-05-20 2020-09-15 Dipl Ing Dipl Ing Fh Markus Gruber Computerimplementiertes Verfahren zur rechnergestützten Erzeugung eines ausführbaren Steuerungsprogramms zur Steuerung und/oder Regelung eines technischen Prozesses
CN111401400B (zh) * 2020-02-12 2023-06-20 杭州电子科技大学 一种可编程控制器视觉功能块fbd的内部变量优化方法

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5481741A (en) * 1986-04-14 1996-01-02 National Instruments Corporation Method and apparatus for providing attribute nodes in a graphical data flow environment
JP2927484B2 (ja) * 1989-01-25 1999-07-28 株式会社日立製作所 プログラムの自動生成方法及び装置
US5119318A (en) * 1989-04-17 1992-06-02 Del Partners L.P. Expert control system for real time management of automated factory equipment
JPH0769834B2 (ja) * 1991-02-27 1995-07-31 ディジタル イクイップメント コーポレイション ソース・プログラムをコンパイルする方法及び装置
JPH07295612A (ja) 1994-04-21 1995-11-10 Japan Steel Works Ltd:The 高級言語シーケンス命令プログラム生成装置および汎用シーケンサ
US5790874A (en) * 1994-09-30 1998-08-04 Kabushiki Kaisha Toshiba Information processing apparatus for reducing power consumption by minimizing hamming distance between consecutive instruction
JP3422124B2 (ja) * 1995-03-30 2003-06-30 マツダ株式会社 プログラム作成装置
US5963726A (en) * 1998-03-20 1999-10-05 National Instruments Corporation Instrumentation system and method including an improved driver software architecture
US6405145B1 (en) * 1998-03-20 2002-06-11 National Instruments Corporation Instrumentation system and method which performs instrument interchangeability checking
US6085156A (en) * 1998-03-20 2000-07-04 National Instruments Corporation Instrumentation system and method having instrument interchangeability
US6198480B1 (en) * 1998-10-07 2001-03-06 Wonderware Corporation Object-oriented tag browser
JP2001282574A (ja) 2000-03-30 2001-10-12 Oki Electric Ind Co Ltd 処理時間情報を含む図式表現プログラムの表現方法
US8302072B2 (en) * 2000-06-05 2012-10-30 National Instruments Corporation System and method for programmatically generating a graphical program based on a sequence of motion control, machine vision, and data acquisition (DAQ) operations
JP2002091512A (ja) 2000-09-12 2002-03-29 Meidensha Corp シーケンサのプログラミング支援装置
JP2002099312A (ja) * 2000-09-22 2002-04-05 Mitsubishi Electric Corp プログラマブルコントローラおよび制御プログラム開発支援装置
US7213207B2 (en) * 2000-12-20 2007-05-01 National Instruments Corporation System and method for accessing registers of a hardware device in a graphical program
US8522196B1 (en) * 2001-10-25 2013-08-27 The Mathworks, Inc. Traceability in a modeling environment
US8104017B2 (en) * 2001-10-25 2012-01-24 The Mathworks, Inc. Traceability in a modeling environment
US20030182601A1 (en) * 2002-03-19 2003-09-25 Scott Richardson System and method for integrating hardware switching operations into test executive software
JP3912278B2 (ja) * 2002-12-20 2007-05-09 株式会社日立製作所 組込みコントローラ及び組込みコントローラ開発ツール
CN1788254A (zh) * 2003-03-10 2006-06-14 珂特那株式会社 关于Lyee指向软件的静态分析方法
US20050086635A1 (en) * 2003-10-20 2005-04-21 Pegasus Technologies, Inc. Visual programming system and method
JP4254954B2 (ja) * 2004-03-29 2009-04-15 独立行政法人科学技術振興機構 データ処理装置
JP4388427B2 (ja) * 2004-07-02 2009-12-24 オークマ株式会社 スクリプト言語で記述されたプログラムを呼出し可能な数値制御装置
JP4438552B2 (ja) * 2004-07-29 2010-03-24 株式会社ジェイテクト 安全plc、シーケンスプログラム作成支援ソフトウェア及びシーケンスプログラムの判定方法
GB0418066D0 (en) * 2004-08-13 2004-09-15 Ibm A prioritization system
CN100507775C (zh) * 2006-03-13 2009-07-01 富士电机系统株式会社 可编程控制器的编程设备
JP4494361B2 (ja) * 2006-03-31 2010-06-30 三菱電機株式会社 ラダープログラム最適化装置および最適化プログラム
US7954059B2 (en) * 2006-07-24 2011-05-31 National Instruments Corporation Automatic conversion of text-based code having function overloading and dynamic types into a graphical program for compiled execution
US7975233B2 (en) * 2006-07-24 2011-07-05 National Instruments Corporation Automatic conversion of a textual language into a graphical program representation
US20090308734A1 (en) * 2008-06-17 2009-12-17 Schneider Automation Inc. Apparatus and Method for Wafer Level Arc Detection
KR100952557B1 (ko) * 2008-06-19 2010-04-12 한국전력공사 발전소용 시뮬레이터 시스템의 화면정보 제어, 저장, 복원장치 및 방법
CN101364098B (zh) * 2008-09-12 2010-07-28 南京航空航天大学 一种将梯形图转换为指令表程序及解释执行的方法与系统
US8713528B1 (en) * 2008-10-06 2014-04-29 The Mathworks, Inc. Verification of computer-executable code generated from a model
CN101859135B (zh) * 2009-04-07 2012-07-18 西门子(中国)有限公司 对分布式自动化系统进行控制的方法和装置
US8055816B2 (en) * 2009-04-09 2011-11-08 Micron Technology, Inc. Memory controllers, memory systems, solid state drives and methods for processing a number of commands
JP5655448B2 (ja) 2010-09-09 2015-01-21 富士電機株式会社 Plcシステム、その開発支援装置
JP2012083934A (ja) 2010-10-12 2012-04-26 Mitsubishi Electric Corp スキャンタイム見積り装置、スキャンタイム見積りプログラム及び記録媒体
JP2012118715A (ja) 2010-11-30 2012-06-21 Fuji Electric Co Ltd Plcシステム、その開発支援装置、プログラム
JP2012145987A (ja) 2011-01-07 2012-08-02 Hitachi Ltd ソフトウェア性能問題指摘方法
JP4905597B1 (ja) * 2011-03-15 2012-03-28 オムロン株式会社 コントローラサポート装置、その装置において実行されるためのコントローラサポートプログラム、およびそのプログラムを格納する記録媒体
JP5252014B2 (ja) * 2011-03-15 2013-07-31 オムロン株式会社 制御装置、制御システム、ツール装置および収集指示プログラム
US8819499B2 (en) * 2011-06-09 2014-08-26 At&T Mobility Ii Llc Sending network reject/error codes from a terminal adaptor to terminal equipment through an at command interface
JP5867088B2 (ja) 2012-01-05 2016-02-24 富士電機株式会社 組込み機器用ソフトウェア作成支援装置およびプログラム
JP5942446B2 (ja) * 2012-02-01 2016-06-29 オムロン株式会社 サポート装置およびサポートプログラム
CN103885376A (zh) * 2012-12-19 2014-06-25 施耐德电器工业公司 可编程逻辑控制器及其事件驱动编程方法
JP6167532B2 (ja) * 2013-01-25 2017-07-26 オムロン株式会社 制御装置および制御装置の動作方法
CN104956274B (zh) * 2013-01-30 2016-11-09 三菱电机株式会社 数控装置
EP2781977B1 (en) * 2013-03-20 2016-10-12 Siemens Aktiengesellschaft Method and system for managing distributed computing in automation systems
US10317860B2 (en) * 2013-05-20 2019-06-11 Mitsubishi Electric Corporation Monitoring control device
US10203681B2 (en) * 2013-11-20 2019-02-12 Mistubishi Electric Corporation Sequence-program-creation supporting apparatus
CN103941627B (zh) * 2014-01-08 2017-09-08 东南大学 一种基于plc编程中sfc到梯形图的转换方法
JP6595181B2 (ja) * 2014-01-09 2019-10-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 照明制御システムに関連した店舗業務のための情報表示方法、照明制御方法
JP5701458B1 (ja) * 2014-02-12 2015-04-15 三菱電機株式会社 作画装置および制御システム
CN103760965B (zh) 2014-02-21 2016-08-17 中南大学 一种能量受限嵌入式系统的算法源程序节能优化方法
US20150332167A1 (en) * 2014-05-13 2015-11-19 Tokyo Electron Limited System and method for modeling and/or analyzing manufacturing processes
TW201606644A (zh) * 2014-08-05 2016-02-16 拓連科技股份有限公司 具有自動調整功能之程式產生方法及系統,及其電腦程式產品
WO2016151398A1 (en) * 2015-03-23 2016-09-29 Societal Innovations Ipco Limited System and method for configuring a platform instance at runtime
WO2016209221A1 (en) * 2015-06-24 2016-12-29 Siemens Aktiengesellschaft Control contextualization and reasoning about control
US10380188B2 (en) * 2016-08-05 2019-08-13 International Business Machines Corporation Distributed graph databases that facilitate streaming data insertion and queries by reducing number of messages required to add a new edge by employing asynchronous communication
US10552450B2 (en) * 2016-08-05 2020-02-04 International Business Machines Corporation Distributed graph databases that facilitate streaming data insertion and low latency graph queries
US10394891B2 (en) * 2016-08-05 2019-08-27 International Business Machines Corporation Distributed graph databases that facilitate streaming data insertion and queries by efficient throughput edge addition
US10303582B2 (en) * 2016-10-25 2019-05-28 International Business Machines Corporation Facilitating debugging serverless applications via graph rewriting
CN109478051A (zh) * 2017-04-17 2019-03-15 三菱电机株式会社 程序创建装置

Also Published As

Publication number Publication date
CN109643093A (zh) 2019-04-16
KR20190011810A (ko) 2019-02-07
TWI621066B (zh) 2018-04-11
DE112016007069T5 (de) 2019-03-28
JPWO2018042520A1 (ja) 2018-12-06
US20200012250A1 (en) 2020-01-09
KR102041772B1 (ko) 2019-11-07
US10990073B2 (en) 2021-04-27
WO2018042520A1 (ja) 2018-03-08
JP6532610B2 (ja) 2019-06-19

Similar Documents

Publication Publication Date Title
TWI621066B (zh) 程式編集裝置、程式編集方法以及程式編集程式產品
CN111832739B (zh) 一种数据处理方法及相关产品
US9081586B2 (en) Systems and methods for customizing optimization/transformation/ processing strategies
US20160299998A1 (en) Logic circuit generation device and method
CN110851134A (zh) 低代码页面设计装置及页面设计方法
JP2018185850A (ja) ソフトウェアコードの視覚的実現方法及び装置
JP2017097863A (ja) 疎行列の自動並べ替え技術
US9117020B2 (en) Determining control flow divergence due to variable value difference
Bezati et al. Synthesis and optimization of high-level stream programs
US8127259B2 (en) Synthesis constraint creating device, behavioral synthesis device, synthesis constraint creating method and recording medium
JP2006301989A (ja) 計算機言語によるプログラムをブロック図から自動生成する方法と装置とプログラム
US5542034A (en) Minimizing logic to determine current state in an output encoded finite state machine
JPH05101141A (ja) 高位合成装置
CN112181399A (zh) 一种基于数据解析构建模型生成前端代码的方法
JP6776069B2 (ja) Rtl最適化システム及びrtl最適化プログラム
KR20230097191A (ko) 이종 집적 회로들을 위한 모델 기반의 설계 및 파티셔닝
US10430540B1 (en) Processing a block diagram circuit design into an efficient high-level language representation
US9304770B2 (en) Method and system adapted for converting software constructs into resources for implementation by a dynamically reconfigurable processor
JP2008204341A (ja) インタフェース合成装置
Reyer Comparison of AutoML solutions Auto-PyTorch and AutoCVE
Giesen Accelerating HLS Autotuning of Large, Highly-Parameterized Reconfigurable SoC Mappings
Delsoto et al. A design flow of asynchronous burst-mode circuits without fundamental-mode timing assumption
JP3246462B2 (ja) C言語回路モデルを用いた機能合成方法およびそのプログラムを記録した記録媒体
JP5692063B2 (ja) 動作合成装置、動作合成方法、及びプログラム
CN116776914A (zh) 二维码的生成方法及装置

Legal Events

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