JP2019016037A - プログラム作成装置 - Google Patents
プログラム作成装置 Download PDFInfo
- Publication number
- JP2019016037A JP2019016037A JP2017131021A JP2017131021A JP2019016037A JP 2019016037 A JP2019016037 A JP 2019016037A JP 2017131021 A JP2017131021 A JP 2017131021A JP 2017131021 A JP2017131021 A JP 2017131021A JP 2019016037 A JP2019016037 A JP 2019016037A
- Authority
- JP
- Japan
- Prior art keywords
- conversion
- model
- source program
- program
- instruction
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/51—Source to source
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Programmable Controllers (AREA)
- Automation & Control Theory (AREA)
Abstract
【解決手段】プログラム作成装置100は、変換元ソースプログラムを入力するソースプログラム入力部110と、変換元ソースプログラムを変換先機種用のソースプログラムに変換するソースプログラム変換部130と、を有する。ソースプログラム変換部130は、機種毎に命令の使用可否に関する情報を保持する命令対応テーブル131と、機種毎に命令の代替コードを保持する命令変換ライブラリ132と、機種毎にアドレス範囲の使用可否に関する情報を保持するアドレス範囲テーブル133と、機種毎にアドレスの使用有無に関する情報を保持するアドレス使用テーブル134と、に基づいて、変換元ソースプログラムを変換先機種用のソースプログラムに変換する。
【選択図】図1
Description
本発明の一実施の形態にかかるプログラム作成装置は、前記プログラム変換部は、前記命令対応テーブルを参照して、前記変換元ソースプログラムに前記変換先機種で使用不可能な命令が含まれているかを判断し、前記変換元ソースプログラムに前記変換先機種で使用不可能な命令が含まれている場合、前記命令変換ライブラリを参照して、前記変換先機種で使用不可能な命令を前記代替コードに変換し、前記アドレス範囲テーブルを参照して、前記変換元ソースプログラムに前記変換先機種で使用不可能なアドレスが含まれているかを判断し、前記変換元ソースプログラムに前記変換先機種で使用不可能なアドレスが含まれている場合、前記アドレス使用テーブルを参照して、前記変換先機種で使用不可能なアドレスを使用可能かつ未使用のアドレスに変換することを特徴とする。
本発明の一実施の形態にかかるプログラム作成装置は、前記変換元ソースプログラムから変換された前記変換先機種用のソースプログラムを、前記変換先機種用のオブジェクトコードに変換するコンパイラを有することを特徴とする。
本発明の一実施の形態にかかるプログラム作成装置は、前記プログラム変換部は、前記変換元ソースプログラムの一部のみを前記変換先機種用のソースプログラムに変換し、既存の前記変換先機種用のソースプログラムに結合することを特徴とする。
図1は、プログラム作成装置100の機能構成を示すブロック図である。プログラム作成装置100は、典型的には中央処理装置(CPU)、記憶装置、入出力装置等を有するコンピュータである。CPUが記憶装置に格納されたプログラムを読み出して実行することにより、所定の機能(例えば後述の各処理部)が論理的に実現される。プログラム作成装置100は1台のコンピュータであっても良く、複数のコンピュータにより構成されていても良い。プログラム作成装置100は汎用コンピュータであっても良く、数値制御装置等の専用コンピュータであっても良い。プログラム作成装置100は、処理部としてソースプログラム入力部110、コンパイラ120、ソースプログラム変換部130を有する。
S101:ソースプログラム変換部130は、ソースプログラム入力部110からソースプログラムを読み込む。このソースプログラムは、変換の元となるソースプログラムである。
S102:ソースプログラム変換部130は、読み込んだソースプログラムの命令を解析し、必要であれば変換先の機種Xで使用可能な命令に変換する(命令変換処理)。命令変換処理の内容は後述する。
S103:命令変換処理中にエラーが発生した場合はエラーを出力する(S109)。
S104:ソースプログラム変換部130は、読み込んだソースプログラムで使用されるアドレスを解析し、必要であれば変換先の機種Xで使用可能なアドレスに変換する(アドレス変換処理)。アドレス変換処理の内容は後述する。
S105:アドレス変換処理中にエラーが発生した場合はエラーを出力する(S109)。
S106:ソースプログラム変換部130は、命令変換処理及びアドレス変換処理が施されたソースプログラムを、機種X用のソースプログラムとして出力する。ソースプログラム変換部130は、機種X用のソースプログラムをソースプログラム入力部110に出力する。又は、コンパイラ120に直接引き渡しても良い。
なおソースプログラム変換部130は、変換元のソースプログラムに含まれるアドレスのシンボル(アドレスに付される別名)やコメント等も、機種X用のソースプログラムにコピーすることが好ましい。ソースプログラムの可読性が維持されるためである。
コンパイラ120は、機種X用のソースプログラムを取得し、予め保持している変換ルールに従って機種X用のオブジェクトコードに変換する。
S107:コンパイル時にエラーが発生した場合はエラーを出力する(S109)。
S108:コンパイラ120は、機種X用のオブジェクトコードを出力する。
S201:ソースプログラム変換部130は、変換元のソースプログラムに含まれる全ての命令それぞれについて、S202以降の処理を実行する。
S202:ソースプログラム変換部130は、命令対応テーブル131を参照して、変換元ソースプログラムで使用されている命令に機種Xが対応するかを確認する。対応しない場合、S203に遷移する。
S203:ソースプログラム変換部130は、命令変換ライブラリ132を参照して、当該命令と同等の機能を有する機種X用の代替コードが存在するかを確認する。存在する場合はS204、存在しない場合はS205に遷移する。
S204:ソースプログラム変換部130は、変換元ソースプログラムに含まれる命令を代替コードで置換する。
S205:このソースプログラムを機種X用に変換することは不可能であるため、ソースプログラム変換部130はエラーを出力する。
S301:ソースプログラム変換部130は、変換元のソースプログラムで使用されている全てのアドレスそれぞれについて、S302以降の処理を実行する。
S302:ソースプログラム変換部130は、アドレス範囲テーブル133を参照して、変換元ソースプログラムで使用されているアドレスが機種Xで使用可能であるかを確認する。使用不可能である場合、S303に遷移する。
S303:ソースプログラム変換部130は、アドレス使用テーブル134を参照して、機種Xに未使用アドレスが存在するかを確認する。存在する場合はS304、存在しない場合はS305に遷移する。
S304:ソースプログラム変換部130は、変換元ソースプログラムで使用されるアドレスを未使用アドレスで置換する。
S305:このソースプログラムを機種X用に変換することは不可能であるため、ソースプログラム変換部130はエラーを出力する。
110 ソースプログラム入力部
120 コンパイラ
130 ソースプログラム変換部
131 命令対応テーブル
132 命令変換ライブラリ
133 アドレス範囲テーブル
134 アドレス使用テーブル
Claims (4)
- プログラマブルロジックコントローラ用のソースプログラムを異機種間で変換するプログラム作成装置であって、
変換元ソースプログラムを入力するソースプログラム入力部と、
前記プログラマブルロジックコントローラの機種毎に命令の使用可否に関する情報を保持する命令対応テーブルと、前記プログラマブルロジックコントローラの機種毎に命令の代替コードを保持する命令変換ライブラリと、前記プログラマブルロジックコントローラの機種毎にアドレス範囲の使用可否に関する情報を保持するアドレス範囲テーブルと、前記プログラマブルロジックコントローラの機種毎にアドレスの使用有無に関する情報を保持するアドレス使用テーブルと、に基づいて、前記変換元ソースプログラムを変換先機種用のソースプログラムに変換するソースプログラム変換部と、
を有するプログラム作成装置。 - 前記ソースプログラム変換部は、
前記命令対応テーブルを参照して、前記変換元ソースプログラムに前記変換先機種で使用不可能な命令が含まれているかを判断し、
前記変換元ソースプログラムに前記変換先機種で使用不可能な命令が含まれている場合、前記命令変換ライブラリを参照して、前記変換先機種で使用不可能な命令を前記代替コードに変換し、
前記アドレス範囲テーブルを参照して、前記変換元ソースプログラムに前記変換先機種で使用不可能なアドレスが含まれているかを判断し、
前記変換元ソースプログラムに前記変換先機種で使用不可能なアドレスが含まれている場合、前記アドレス使用テーブルを参照して、前記変換先機種で使用不可能なアドレスを使用可能かつ未使用のアドレスに変換することを特徴とする
請求項1記載のプログラム作成装置。 - 前記変換元ソースプログラムから変換された前記変換先機種用のソースプログラムを、前記変換先機種用のオブジェクトコードに変換するコンパイラを有することを特徴とする
請求項1記載のプログラム作成装置。 - 前記ソースプログラム変換部は、前記変換元ソースプログラムの一部のみを前記変換先機種用のソースプログラムに変換し、既存の前記変換先機種用のソースプログラムに結合することを特徴とする
請求項1記載のプログラム作成装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017131021A JP2019016037A (ja) | 2017-07-04 | 2017-07-04 | プログラム作成装置 |
DE102018115422.4A DE102018115422A1 (de) | 2017-07-04 | 2018-06-27 | Programmgenerierungsvorrichtung |
US16/026,595 US20190012168A1 (en) | 2017-07-04 | 2018-07-03 | Program generating apparatus |
CN201810724019.9A CN109213061A (zh) | 2017-07-04 | 2018-07-04 | 程序制作装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017131021A JP2019016037A (ja) | 2017-07-04 | 2017-07-04 | プログラム作成装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019016037A true JP2019016037A (ja) | 2019-01-31 |
Family
ID=64666416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017131021A Pending JP2019016037A (ja) | 2017-07-04 | 2017-07-04 | プログラム作成装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20190012168A1 (ja) |
JP (1) | JP2019016037A (ja) |
CN (1) | CN109213061A (ja) |
DE (1) | DE102018115422A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020158717A1 (ja) | 2019-01-31 | 2020-08-06 | 富士フイルム株式会社 | 学習済みモデル、学習方法、及びプログラム、並びに医用情報取得装置、方法、及びプログラム |
WO2022157941A1 (ja) * | 2021-01-22 | 2022-07-28 | 日本電気株式会社 | プログラム解析支援装置、プログラム解析支援方法、及びコンピュータ読み取り可能な記録媒体 |
JP7523116B2 (ja) | 2020-07-30 | 2024-07-26 | 株式会社オプトン | 制御プログラム生成装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11875141B2 (en) * | 2020-11-20 | 2024-01-16 | Infosys Limited | System and method for training a neural machine translation model |
CN113254027B (zh) * | 2021-05-20 | 2024-05-14 | 西安华讯科技有限责任公司 | 一种半导体设备控制程序转换方法、系统、设备和存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5992777B2 (ja) | 2012-09-04 | 2016-09-14 | 株式会社キーエンス | プログラマブルコントローラ、プログラム作成支援装置及びプログラム |
-
2017
- 2017-07-04 JP JP2017131021A patent/JP2019016037A/ja active Pending
-
2018
- 2018-06-27 DE DE102018115422.4A patent/DE102018115422A1/de not_active Withdrawn
- 2018-07-03 US US16/026,595 patent/US20190012168A1/en not_active Abandoned
- 2018-07-04 CN CN201810724019.9A patent/CN109213061A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020158717A1 (ja) | 2019-01-31 | 2020-08-06 | 富士フイルム株式会社 | 学習済みモデル、学習方法、及びプログラム、並びに医用情報取得装置、方法、及びプログラム |
JP7523116B2 (ja) | 2020-07-30 | 2024-07-26 | 株式会社オプトン | 制御プログラム生成装置 |
WO2022157941A1 (ja) * | 2021-01-22 | 2022-07-28 | 日本電気株式会社 | プログラム解析支援装置、プログラム解析支援方法、及びコンピュータ読み取り可能な記録媒体 |
JP7524978B2 (ja) | 2021-01-22 | 2024-07-30 | 日本電気株式会社 | プログラム解析支援装置、プログラム解析支援方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
CN109213061A (zh) | 2019-01-15 |
US20190012168A1 (en) | 2019-01-10 |
DE102018115422A1 (de) | 2019-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2019016037A (ja) | プログラム作成装置 | |
US8843885B2 (en) | Program creation support device | |
CN103814333B (zh) | 用于对可编程控制装置编程和配置的方法和设备 | |
CN109918081B (zh) | 一种编译方法及编译器 | |
JP2009146229A (ja) | プログラマブルコントローラシステム | |
JP2007265252A (ja) | プログラム作成支援装置およびその方法 | |
JP5785501B2 (ja) | ラダープログラム作成装置 | |
JP5777837B2 (ja) | プログラム開発支援装置およびその方法 | |
JP5262765B2 (ja) | Plcのプログラム変換ツール | |
JP5757098B2 (ja) | プログラム作成支援装置、プログラム作成支援方法 | |
JP6445029B2 (ja) | 自動化システムを構成するための処理装置および方法 | |
JP5153437B2 (ja) | 制御プログラム作成装置 | |
TWI442316B (zh) | 可編程邏輯控制器程式編輯系統及方法 | |
JP2008198143A (ja) | プログラマブルコントローラ用プログラム作成支援装置およびプログラム作成支援方法 | |
US20240192655A1 (en) | Development assistance device, control method for development assistance device, and non-transitory computer readable medium | |
JP6119452B2 (ja) | プログラマブルコントローラシステム、その支援装置、プログラマブルコントローラ、プログラム | |
JP5205988B2 (ja) | Plcのグローバル変数定義方式 | |
JP6632692B1 (ja) | 制御プログラム作成支援ツール及び制御プログラムの作成方法 | |
CN114365048B (zh) | 数控装置 | |
JP5978775B2 (ja) | プログラマブルコントローラ、その支援装置、プログラム、プログラム転送方法 | |
JP6071782B2 (ja) | プラント制御装置、プラント制御方法及びプラント制御プログラム | |
JP2008532130A (ja) | 制御装置のインタプリタによるサブプログラムの翻訳のための方法 | |
JP2011002868A (ja) | シーケンス制御プログラム自動生成装置 | |
CN113253992B (zh) | 用于支持多种编程语言的plc控制方法 | |
JP2022018696A (ja) | 制御プログラム生成装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180918 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20181211 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20190215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190417 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190507 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20191105 |