JP6787616B1 - 制御プログラム生成装置、制御プログラム生成方法、プログラム - Google Patents

制御プログラム生成装置、制御プログラム生成方法、プログラム Download PDF

Info

Publication number
JP6787616B1
JP6787616B1 JP2020011386A JP2020011386A JP6787616B1 JP 6787616 B1 JP6787616 B1 JP 6787616B1 JP 2020011386 A JP2020011386 A JP 2020011386A JP 2020011386 A JP2020011386 A JP 2020011386A JP 6787616 B1 JP6787616 B1 JP 6787616B1
Authority
JP
Japan
Prior art keywords
chart
basic
control program
basic operation
manufacturing machine
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.)
Active
Application number
JP2020011386A
Other languages
English (en)
Other versions
JP2021117804A (ja
Inventor
照明 與語
照明 與語
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Opton Co Ltd
Original Assignee
Opton Co Ltd
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 Opton Co Ltd filed Critical Opton Co Ltd
Priority to JP2020011386A priority Critical patent/JP6787616B1/ja
Priority to JP2020177114A priority patent/JP7148091B2/ja
Application granted granted Critical
Publication of JP6787616B1 publication Critical patent/JP6787616B1/ja
Priority to TW109143936A priority patent/TW202129443A/zh
Priority to TW112138804A priority patent/TW202403480A/zh
Priority to TW110101500A priority patent/TW202147048A/zh
Priority to TW110101501A priority patent/TWI859399B/zh
Priority to KR1020227010539A priority patent/KR102476173B1/ko
Priority to PCT/JP2021/002502 priority patent/WO2021153521A1/ja
Priority to EP21747397.4A priority patent/EP4099109A4/en
Priority to CN202180011269.8A priority patent/CN115023669A/zh
Priority to EP21747401.4A priority patent/EP4099110A4/en
Priority to CN202180011329.6A priority patent/CN115023670A/zh
Priority to KR1020227010541A priority patent/KR102476170B1/ko
Priority to PCT/JP2021/002590 priority patent/WO2021153544A1/ja
Priority to CN202180011351.0A priority patent/CN115023671A/zh
Priority to EP21747216.6A priority patent/EP4099107B1/en
Priority to KR1020227014614A priority patent/KR102476169B1/ko
Priority to PCT/JP2021/002546 priority patent/WO2021153533A1/ja
Priority to CN202180011396.8A priority patent/CN115023672A/zh
Priority to EP21747218.2A priority patent/EP4099108A4/en
Priority to KR1020227014615A priority patent/KR102476171B1/ko
Priority to PCT/JP2021/002768 priority patent/WO2021153591A1/ja
Publication of JP2021117804A publication Critical patent/JP2021117804A/ja
Priority to US17/831,153 priority patent/US20220291653A1/en
Priority to US17/842,503 priority patent/US20220308558A1/en
Priority to US17/852,009 priority patent/US20220326688A1/en
Priority to US17/864,205 priority patent/US20220350310A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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/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/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/4097Numerical 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 using design data to control NC machines, e.g. CAD/CAM
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q15/00Automatic control or regulation of feed movement, cutting velocity or position of tool or work
    • 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
    • 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/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
    • 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
    • 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/4155Numerical 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 programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • 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/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36243Convert source, high level code to machine, object code
    • 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/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36276Program virtual, logical tools, select tool from tables
    • 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/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36296Order, select, determine, change machining sequence, order

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Mechanical Engineering (AREA)
  • Geometry (AREA)
  • Programmable Controllers (AREA)
  • Numerical Control (AREA)

Abstract

【課題】自動製造機械の動作を制御する制御プログラムを自動で生成する。【解決手段】自動製造機械(1)に搭載されている複数のアクチュエータの基本動作と、基本動作を実現するためのプログラム要素とを対応付けて記憶しておく。また、自動製造機械の動作を、複数の基本動作の終了と他の基本動作の開始とが論理演算によって関連付けられた動作チャート(200)によって記述しておく。そして、自動製造機械の動作が記述された動作チャートを読み込んで、動作チャート中の基本動作をプログラム要素に変換すると共に、動作チャートに従ってプログラム要素を結合する。こうすれば、自動製造機械の動作を制御する制御プログラムを自動で生成することが可能となる。【選択図】図10

Description

本発明は、複数のアクチュエータを備えた自動製造機械の制御プログラムを生成する技術に関する。
今日では、あらゆる業種に亘って、工場などの製造現場で省力化が強く要請されるようになっており、この傾向は今後も益々強まるものと予想されている。製造現場の省力化を推進するためには、加工あるいは製造しようとする対象物を把持したり、対象粒を搬送したり、対象物に対して各種の加工を施したり、加熱したりする動作を自動で行う自動製造機械を活用することが必須となる。
そこで、加工あるいは製造しようとする対象物や、加工の内容(例えば、切削加工や、曲げ加工)や、食品の場合は加熱の程度などに応じて、様々なタイプの自動製造機械が開発されている(例えば、特許文献1、特許文献2)。
また、加工あるいは製造する対象物の大きさや形状や材質などは製造現場毎に異なっており、更に、加工の内容や加熱の程度なども製造現場によって異なっている。このため、製造現場に自動製造機械を導入する際には、他の製造現場で用いられている自動製造機械を流用することは困難であり、製造現場毎に専用の自動製造機械を新たに開発しなければならないことが一般的である。
特開2011−245602号公報 特開2018−192570号公報
しかし、新たな自動製造機械を開発するには、その自動製造機械を制御するための制御プログラムも新たに作成する必要があり、このことが、製造現場に新たな自動製造機械を導入する際の大きな障害になっているという問題があった。この理由は次のようなものである。
新たな自動製造機械を開発する際には、先ず始めに機械設計技術者が、自動製造機械に要求される各種の機能を把握した上で、要求される機能を実現可能な自動製造機械の図面を作成する。続いて、プログラムを作成するための技術を有する技術者(いわゆるプログラマ)が、図面に記載された各種のアクチュエータや機械部品の動作を理解した上で、各種のアクチュエータが協調しながら動作することによって、要求される機能を実現するような制御プログラムを作成する必要がある。
このように、制御プログラムを作成するには、自動製造機械の設計が終わった後に、専門的な技能を有するプログラマが取り掛かる必要があるため、制御プログラムの作成に取り掛かる時期が遅くなる。加えて、プログラマが各種のアクチュエータや機械部品の動作を理解する時間も必要となる。その結果、自動製造機械の開発に取り掛かってから、製造現場に納品するまでに長い時間が必要となっており、このことが、製造現場に新たな自動製造機械を導入する際の大きな障害になっていた。
この発明は、従来の技術が有する上述した課題を解決するために成されたものであり、自動製造機械の制御プログラムを自動で生成することによって、新たな自動製造機械を開発するために要する時間を大幅に短縮することが可能な技術の提供を目的とする。
上述した課題を解決するために、本発明の制御プログラム生成装置は次の構成を採用した。すなわち、
複数のアクチュエータ(10〜20)を備えた自動製造機械(1)の制御プログラムを生成する制御プログラム生成装置(100)であって、
前記アクチュエータの自由度毎の動作を表す基本動作を、前記基本動作を実現するためのプログラム要素と対応付けて記憶している基本動作記憶部(102)と、
前記自動製造機械の動作が複数の前記基本動作に分解されて、前記基本動作の終了と他の前記基本動作の開始とが論理演算によって関連付けられることによって、前記自動製造機械の動作が記述された動作チャート(200)を読み込む動作チャート読込部(103)と、
前記基本動作記憶部に記憶されている前記プログラム要素を、前記動作チャートに従って結合することによって、前記自動製造機械を動作させる前記制御プログラムを生成する制御プログラム生成部(105)と
を備え
前記基本動作記憶部は、パラメータを設定可能な前記基本動作および前記プログラム要素を記憶可能となっており、
前記動作チャート読込部は、前記基本動作に前記パラメータが設定された前記動作チャートを読込可能となっている
ことを特徴とする。
また、上述した制御プログラム生成装置に対応する本発明の制御プログラム生成方法は次の構成を採用した。すなわち、
複数のアクチュエータ(10〜20)を備えた自動製造機械(1)の制御プログラムを、コンピュータに生成させる制御プログラム生成方法であって、
前記自動製造機械の動作が、前記アクチュエータの自由度毎の動作を表す基本動作と、前記基本動作の終了に他の前記基本動作の開始を関連付ける論理演算とを用いて記述された動作チャート(200)を読み込む動作チャート読込工程(103)と、
前記動作チャートを解析することによって、前記動作チャートに含まれる複数の前記基本動作と、複数の前記基本動作を関連付ける論理演算とを抽出する動作チャート解析工程(104)と、
前記基本動作と、前記基本動作を実現するためのプログラム要素とが対応付けて記憶されたデータ(102)を参照することによって、前記動作チャートに記載された前記基本動作を前記プログラム要素に変換すると共に、前記プログラム要素を前記動作チャートに従って結合することによって、前記自動製造機械を動作させる前記制御プログラムを生成する制御プログラム生成工程(105)と
を備え
前記動作チャート読込工程は、パラメータを設定可能な前記基本動作を有する前記動作チャートを読込可能な工程となっており、
前記制御プログラム生成工程は、前記パラメータを設定可能な前記基本動作に対しては、前記パラメータを設定可能な前記プログラム要素が対応付けて記憶された前記データを参照することによって、前記制御プログラムを生成する工程となっている
ことを特徴とする。
かかる本発明の制御プログラム生成装置および制御プログラム生成方法では、自動製造機械に搭載されている複数のアクチュエータの基本動作と、基本動作を実現するためのプログラム要素とが対応付けて予め記憶されている。また、基本動作の中にはパラメータを設定可能な基本動作も存在しており、パラメータを設定可能な基本動作に対しては、パラメータを設定可能なプログラム要素が対応付けて記憶されている。更に、自動製造機械の動作が複数の基本動作に分解されて、基本動作の終了と他の基本動作の開始とが論理演算によって関連付けられることによって、自動製造機械の動作が記述された動作チャートが予め作成されている。この動作チャートは、パラメータを設定可能な基本動作についてはパラメータが設定された動作チャートとなっている。そして、自動製造機械の制御プログラムを生成するに際しては、自動製造機械の動作が記述された動作チャートを読み込んで、動作チャートに記載された基本動作をプログラム要素に変換すると共に、それらのプログラム要素を、動作チャートに従って結合することによって、制御プログラムを生成する。
アクチュエータの基本動作は単純な動作であるため、アクチュエータに基本動作を行わせるためのプログラム要素を予め作成しておくことができる。また、機械設計技術者は自動製造機械を設計する際に、アクチュエータの基本動作を組み合わせることによって、自動製造機械の動作を実現しているから、自動製造機械を設計した機械設計技術者であれば、複数の基本動作の終了と開始とを論理演算によって関連付けることで自動製造機械の動作を記述した動作チャートを、容易に作成することができる。更に、基本動作にパラメータを設定することで、基本動作の詳細(例えば移動速度や回転速度、移動距離や回転角度など)を記述することができるので、自動製造機械の動作をより詳細に、動作チャートに記述することができる。そして、このような動作チャートを読み込んで、動作チャート中の基本動作をプログラム要素に変換し、動作チャートに従ってプログラム要素を結合してやれば、自動製造機械の動作を制御する制御プログラムを自動で生成することが可能となる。
また、上述した本発明の制御プログラム生成装置においては、自動製造機械の動作を記述する動作チャートに、タイマによる計時動作または計数器による計数動作の少なくとも一方を、基準動作に準じた動作として記述しても良い。
こうすれば、例えば、一定時間が経過するまで動作の開始を遅らせたり、所定のボタンが押された回数が所定回数に達するまで動作の開始を遅らせたりする自動製造機械の動作を、動作チャートに記述することが可能となる。
また、上述した本発明の制御プログラム生成装置においては、自動製造機械の動作を記述する動作チャートに、スピーカーによる音声出力動作またはライトによる発光動作の少なくとも一方を、基準動作に準じた動作として記述しても良い。
こうすれば、例えば、スピーカーから効果音などの音声を出力した後にアクチュエータを動作させたり、ライトを点灯あるいは点滅してからアクチュエータを動作させたりする自動製造機械の動作を、動作チャートに記述することが可能となる。
また、上述した本発明の制御プログラム生成装置においては、自動製造機械の動作を記述する動作チャートに、ヒーターによる加熱動作を、基準動作に準じた動作として記述しても良い。
こうすれば、例えば、金属材料に熱処理を行う自動製造機械の動作や、食品を加熱調理する自動製造機械の動作を、動作チャートに記述することが可能となる。
また、上述した本発明の制御プログラム生成装置においては、シーケンス制御によって制御されるアクチュエータの基本動作に対しては、シーケンス制御によって基本動作を実現するプログラム要素を対応付けて記憶しておき、サーボ制御によって制御されるアクチュエータの基本動作に対しては、サーボ制御によって基本動作を実現するプログラム要素を対応付けて記憶しておいても良い。
こうすれば、シーケンス制御されるアクチュエータと、サーボ制御されるアクチュエータとが混在している自動製造機械でも、動作チャートに自動製造機械の動作を記述することによって、制御プログラムを自動で生成することが可能となる。
また、前述した本発明の制御プログラム生成方法は、コンピュータを用いて制御プログラム生成方法を実現するためのプログラムとして把握することも可能である。すなわち、本発明のプログラムは、
複数のアクチュエータ(10〜20)を備えた自動製造機械(1)の制御プログラムを生成する方法を、コンピュータを用いて実現するプログラムであって、
前記自動製造機械の動作が、前記アクチュエータの自由度毎の動作を表す基本動作と、前記基本動作の終了に他の前記基本動作の開始を関連付ける論理演算とを用いて記述された動作チャート(200)を読み込む動作チャート読込機能(103)と、
前記動作チャートを解析することによって、前記動作チャートに含まれる複数の前記基本動作と、複数の前記基本動作を関連付ける論理演算とを抽出する動作チャート解析機能(104)と、
前記基本動作と、前記基本動作を実現するためのプログラム要素とが対応付けて記憶されたデータ(102)を参照することによって、前記動作チャートに記載された前記基本動作を前記プログラム要素に変換すると共に、前記プログラム要素を前記動作チャートに従って結合することによって、前記自動製造機械を動作させる前記制御プログラムを生成する制御プログラム生成機能(105)と
を、コンピュータを用いて実現すると共に、
前記動作チャート読込機能は、パラメータを設定可能な前記基本動作を有する前記動作チャートを読込可能な機能となっており、
前記制御プログラム生成機能は、前記パラメータを設定可能な前記基本動作に対しては、前記パラメータを設定可能な前記プログラム要素が対応付けて記憶された前記データを参照することによって、前記制御プログラムを生成する機能となっている
ことを特徴とする。
このようなプログラムをコンピュータに読み込ませて実行させれば、自動製造機械の動作を制御する制御プログラムを自動で生成することが可能となる。
実施例の制御プログラム生成装置100で生成した制御プログラムによって制御される自動製造機械1の外観形状を示した説明図である。 自動製造機械1に搭載された制御コンピュータ50が、自動製造機械1に搭載された各種のアクチュエータ10〜20の動作を制御する様子を概念的に示したブロック図である。 新たな自動製造機械1を開発するための大まかな工程を概念的に示した説明図である。 本実施例の制御プログラム生成装置100が制御プログラムを生成するために読み込む自動製造機械1の動作チャート(YOGOチャート)の概要を例示した説明図である。 動作チャート(YOGOチャート)を用いて自動製造機械1の動作を記述する方法を示した説明図である。 他の態様の動作チャート(YOGOチャート)を用いて自動製造機械1の動作を記述する方法を例示した説明図である。 動作チャート(YOGOチャート)上で基本動作と同様に取り扱うことが可能な動作を例示した説明図である。 スイッチの状態を動作の開始条件としてYOGOチャートに記述する態様を例示した説明図である。 スイッチの状態を動作の終了条件としてYOGOチャートに記述する態様を例示した説明図である。 本実施例の制御プログラム生成装置100が備える機能を示した説明図である。 本実施例の制御プログラム生成装置100が基本動作とプログラム要素とを対応付けて記憶している様子を例示した説明図である。
A.装置構成 :
図1は、本実施例の自動製造機械1の大まかな外観形状を示した説明図である。本実施例の自動製造機械1は、長尺のパイプ材に対して自動で曲げ加工を施すことによって、所望の形状に加工する工作機械(いわゆるパイプベンダ)である。もちろん、本実施例の自動製造機械1は、複数のアクチュエータを搭載して、対象物に対して把持、搬送、加工、加熱などの複数の動作を自動で実行することができれば、パイプベンダ以外の工作機械であっても良い。例えば、食料品を自動で製造するための製造機械であっても良い。
図1に示したように、本実施例の自動製造機械1は、大まかには横長の直方体形状となっており、直方体の上面側には長手方向に2本のレール2が架設され、レール2上の一端側(図1では左側)には、加工対象の図示しないパイプ材を把持して搬送する搬送ユニット3が搭載されている。また、搬送ユニット3が搭載されている側に対して反対側には、図示しないパイプ材に曲げなどの加工を施す加工ユニット4が搭載されている。搬送ユニット3には、円柱形状の把持軸3aが突設されており、把持軸3aの先端には、図示しないパイプ材を把持するチャック3bが取り付けられている。このため、チャック3bでパイプ材を把持した状態で搬送ユニット3をレール2上で移動させることによって、パイプ材を加工ユニット4に供給し、そのパイプ材に対して加工ユニット4で曲げ加工などを施すことが可能となっている。
本実施例の自動製造機械1は、搬送ユニット3の移動量によってパイプ材の送り量を制御することができるので、パイプ材に曲げ加工などを施す位置を、自由に制御することができる。また、チャック3bが取り付けられた把持軸3aを軸回りに回転(いわゆる捻り動作)させることによって、所望の方向にパイプ材を曲げることも可能となっている。こうしたことを実現するために、搬送ユニット3の内部には、チャック3bを開閉させるためのアクチュエータ10や、把持軸3aを軸回りに回転させるためのアクチュエータ11や、把持軸3aを軸方向に進退動させるためのアクチュエータ12や、レール2上で搬送ユニット3を進退動させるためのアクチュエータ13などが搭載されている。本実施例の自動製造機械1では、これらのアクチュエータ10〜13は何れも交流電源で動作するサーボモータが用いられているが、アクチュエータに要求される性能に応じて、他の駆動方式のアクチュエータ(例えば、油圧シリンダや、ソレノイドや、ステッピングモータなど)を採用することができる。尚、搬送ユニット3には、把持軸3aの回転位置や、搬送ユニット3の移動位置を検出するためのエンコーダや、リミットスイッチなどのセンサー類も搭載されているが、図面が煩雑となることを回避する目的で、図1では図示が省略されている。
加工ユニット4の内部には、パイプ材を曲げるためのアクチュエータ17や、パイプ材を曲げる際に、パイプ材に力を加える位置を移動させるためのアクチュエータ18や、加工ユニット4全体を上下方向に移動させるためのアクチュエータ19や、パイプ材に対してフランジと呼ばれる平端面を形成したり、バルジと呼ばれる環状の凸部を形成したりするためのアクチュエータ20などが搭載されている。尚、加工ユニット4にも、エンコーダや、接点スイッチなどのスイッチ・センサー類が搭載されているが、図面が煩雑となることを避けるため、これらについては図示が省略されている。
また、加工ユニット4の内部には、自動製造機械1の全体の動作を制御するための制御コンピュータ50や、上述した各種のアクチュエータ10〜13、17〜20を駆動するための複数のドライバ回路(図示は省略)が搭載されている。ここで、ドライバ回路とは、次のような機能を有する電気部品である。アクチュエータ10〜13、17〜20は、大きな力を発生させるために大きな電力を消費する。しかし、制御コンピュータ50が出力する電力は僅かな電力に過ぎないので、制御コンピュータ50がアクチュエータ10〜13、17〜20を直接駆動することはできない。そこで、制御コンピュータ50は、大電力を供給可能なドライバ回路を介して、アクチュエータ10〜13、17〜20を駆動するようになっている。制御コンピュータ50が、ドライバ回路を介してアクチュエータ10〜13、17〜20を駆動する様子については、別図を用いて後述する。
更に、図1に示されるように、2本のレール2の下方の空間にも各種の機械部品が搭載されているが、この空間は、加工ユニット4内に搭載された複数のドライバ回路(図示は省略)から、搬送ユニット3内の各種のアクチュエータ10〜13に向かって電力を供給する電気ケーブル(図示は省略)や、搬送ユニット3に搭載された各種のスイッチ・センサー類からの信号を、加工ユニット4に伝達するための信号ケーブル(図示は省略)などが配線される空間となっている。レール2上で搬送ユニット3が進退動する動きに伴って、これらの電気ケーブルや信号ケーブルが空間内で移動すると、互いに絡まったり、何かに引っ掛かったりする虞が生じる。そこで、こうした事態が発生することを避けるため、レール2の下方の空間には、電気ケーブルや信号ケーブルに不要な遊びがある場合はケーブルを手繰ることによって不要な遊びを解消し、電気ケーブルや信号ケーブルが強い力で引っ張られる場合は、手繰ったケーブルを送り出すことによって、ケーブルに適度な遊びを持たせるためのアクチュエータ14〜16も搭載されている。本実施例の自動製造機械1では、アクチュエータ14〜16としてエアシリンダが採用されており、これらのエアシリンダの動作も、図示しないドライバ回路を介して制御コンピュータ50によって制御されている。
以上に説明したように、自動製造機械1には多数のアクチュエータ10〜20が搭載されている。そして、加工しようとする対象物(ここではパイプ材)を目的とする形状に自動で加工するためには、これらのアクチュエータ10〜20を適切なタイミングで、適切に動作させる必要がある。こうしたアクチュエータ10〜20の動作は、制御コンピュータ50が、予め読み込んだ制御プログラムに従ってアクチュエータ10〜20の動作を制御することによって実現されている。
図2は、自動製造機械1に搭載された制御コンピュータ50がアクチュエータ10〜20の動作を制御する様子を概念的に示したブロック図である。尚、図2においても、制御に必要なスイッチ・センサー類については図示が省略されている。図示されるように、制御コンピュータ50とアクチュエータ10との間には、アクチュエータ10の駆動用のドライバ回路10dが設けられており、制御コンピュータ50はドライバ回路10dを介して、アクチュエータ10の動作を制御している。アクチュエータ11〜20についても同様に、制御コンピュータ50とアクチュエータ11〜20との間には、アクチュエータ11〜20を駆動するためのドライバ回路11d〜20dが設けられており、制御コンピュータ50は、ドライバ回路11d〜20dを介してアクチュエータ11〜20の動作を制御している。
また、図1を用いて前述したように、本実施例の自動製造機械1では、アクチュエータ10〜13、17〜20にサーボモータが採用されており、アクチュエータ14〜16にはエアシリンダが採用されている。ここで、サーボモータとは、サーボ制御されたモータのことであり、代表的には、位置(あるいは角度)が目標値となるようにモータに流れる電流値をフィードバック制御するモータである。また、エアシリンダとは、空気圧を利用して可動部を直線移動させるアクチュエータであり、圧縮空気の供給源に接続されたポートを開閉することによって動作するようになっている。また、ポートの開閉にはシーケンス制御が用いられている。
このように制御コンピュータ50には、サーボ制御されるアクチュエータ10〜13、17〜20と、シーケンス制御されるアクチュエータ14〜16とが接続されている。図中で、制御コンピュータ50とアクチュエータ10〜13、17〜20とが実線で接続されているのは、これらのアクチュエータ10〜13、17〜20がサーボ制御されていることを表している。また、制御コンピュータ50とアクチュエータ14〜16とが破線で接続されているのは、これらのアクチュエータ14〜16がシーケンス制御されることを表している。もちろん、サーボ制御やシーケンス制御以外の方式で制御されるアクチュエータを接続することも可能である。
制御コンピュータ50は、制御プログラムに従ってアクチュエータ10〜20の動作を制御しており、その制御プログラムは、制御プログラム生成装置100を用いて予め作成した上で、制御コンピュータ50に読み込ませておく必要がある。ここで、図2に示したように多数のアクチュエータ10〜20を、適切なタイミングで適切に動作させるための制御プログラムを作成するのは容易なことではない。特に、サーボ制御やシーケンス制御のように、異なる制御方式のアクチュエータが混在している場合は、制御プログラムの作成に長い期間が必要となる。このため、新たな自動製造機械1の開発期間の中で、半分以上の期間が制御プログラムの作成に費やされてしまうのが現状となっている。
B.制御プログラムの作成方法 :
B−1.概要 :
図3は、新たな自動製造機械1を開発するための大まかな工程を概念的に示した説明図である。図3(a)には、従来から行われてきた開発工程が示されている。また、図3(b)には、本願の発明者が提案する新たな開発工程が示されている。
従来の開発工程では、図3(a)に示すように、初めに、機械設計技術者が、自動製造機械1に要求される各種の機能を把握した上で、それらの機能を実現するための機構が組み込まれた自動製造機械1の図面を作成する。図面を作成するに際して機械設計技術者は、どのような可動部分が必要なのか、それら可動部分がどのような動作をしなければならないのか、その動作をさせるためには、どれくらいのトルクや可動量や精度のアクチュエータが、何処に、どれだけ必要なのかといった内容を、一つ一つ検討して決定して行くことになる。そして、実際に搭載するアクチュエータまで決定して、アクチュエータの搭載性や整備性なども考慮した上で、最終的に図面を完成させる。
こうして自動製造機械1の機械設計が完了したら、今度は、その自動製造機械1を制御するための制御プログラムの作成に移行する。制御プログラムの作成には、機械設計とは異なる専門技術が必要となるため、専門技術を有するプログラマが作成することになる。そこで、機械技術者は機械設計が終了すると、自らが考えた自動製造機械1の動作を表現するフローチャートを作成した上で、プログラマと打ち合わせをして自動製造機械1の動作を説明する。ここまでが、機械設計技術者による作業となる。
一方、機械設計技術者と打ち合わせたプログラマは、機械設計技術者が作成したフローチャートや、必要に応じて図面や、その他の資料を熟読することによって自動製造機械1の動作を理解した上で、自動製造機械1に搭載された各種のアクチュエータの動作を制御するための制御プログラムの作成を開始する。プログラマは、人間が判読可能な高級プログラム言語を用いて制御プログラムを作成することが普通であるが、コンピュータは高級プログラム言語のままでは制御プログラムを実行することはできない。そこで、プログラマは、制御プログラムが完成したら、高級プログラム言語で記述された制御プログラムを、コンピュータが実行可能な機械語の制御プログラムに変換することによって、最終的に制御プログラムを完成させる。尚、高級プログラム言語の制御プログラムを機械語の制御プログラムに変換する作業は、コンパイルと呼ばれており、この作業は、コンパイラと呼ばれる専用プログラムを用いることによって短時間で終了する。
図3(a)に例示されるように、従来から行われてきた開発工程では、機械設計に要する期間の1.5倍〜2.5倍程度の期間が、制御プログラムの作成に費やされるのが通常である。しかも、機械設計と制御プログラムの作成とは、原則的にはオーバーラップさせて進行させることが困難であるため、自動製造機械1の開発期間が長くなってしまう。加えて、機械設計技術者およびプログラマという異なる技術を有する専門家を確保する必要があり、このことも、新たな自動製造機械1を開発する際の大きな障害となっている。
一方、図3(b)には、本願の発明者が提案する新たな方法を用いて、自動製造機械1を開発する工程が示されている。新たな方法を用いた場合でも、機械設計自体は、従来の方法と同様である。すなわち、機械設計技術者が、自動製造機械1に要求される各種の機能を把握した上で、それらの機能を実現するための機構が組み込まれた自動製造機械1の図面を作成する。その際には、機能の実現に必要な可動部分や、可動部分の動作内容や、可動部分を動かすためのアクチュエータの性能などを検討して、アクチュエータを決定した上で、アクチュエータの搭載性や整備性なども考慮して最終的に図面を完成させる。
図面が完成すると、図3(b)に示したように新たな開発工程では、機械設計技術者は、フローチャートの代わりに動作チャートを作成する。この動作チャートについては、後ほど詳しく説明するが、機械設計技術者が機械設計する際に考えた各アクチュエータの動作を、チャートの形式で記述したものである。この動作チャートは、本願の発明者が独自に発案したもので、世の中には存在しないチャートであるため、「YOGOチャート」と名付けることにした。そこで以下では、この新たな動作チャートのことを、YOGOチャートと表記する。
後述するようにYOGOチャートは、機械設計する際に、機械設計技術者が考えた各アクチュエータの動作を、考えた通りに書き表したものに過ぎない。このため、機械設計した機械設計技術者であれば、フローチャートを作成する半分程度の期間で作成することができる(図3(b)参照)。加えて、YOGOチャートは、専用のコンパイラに掛けることによって、機械語の制御プログラムに変換することができる。YOGOチャートが機械語の制御プログラムに変換可能な理由についても後述する。このように、自動製造機械1の動作をYOGOチャートに記述するようにすれば、YOGOチャートから機械語の制御プログラムを生成することができるので、図3に示したように、従来の方法に比べて、新たな自動製造機械1の開発期間を、少なくとも半分以下(代表的には1/3程度)に短縮することができる。加えて、YOGOチャートは機械設計技術者が簡単に作成することができ、プログラマを確保しておく必要もない。このため、新たな自動製造機械1を開発する際に大きな障害となっていた様々な事柄を、ほとんど完全に解消することが可能となる。以下では、こうしたことを可能とするYOGOチャートについて説明する。尚、本実施例のYOGOチャートは、本発明における「動作チャート」に対応する。
B−2.YOGOチャート :
図4は、YOGOチャート200の概要を説明するための説明図である。尚、YOGOチャート200の全体を表示するために縮尺すると、潰れて判読不能となってしまうので、図4ではYOGOチャート200の一部分(左上隅の部分)が表示されている。図4に示されるように、YOGOチャート200は、複数本の横線と複数本の縦線とが交差した大きな表のような形状となっている。以下では、交差する複数本の線の内、横線については「仕切線」201と称し、縦線については「トリガー線」202と称することにする。
互いに隣接する仕切線201の間に形成された横長の領域は、アクチュエータの動作が記述される領域である。YOGOチャート200の左端の欄には、仕切線201と仕切線201との間に、アクチュエータの名称が記載されている。従って、仕切線201と仕切線201との間の横長の領域には、左端の欄に記載されたアクチュエータの動作が記述されることになる。図4に示した例では、一番上にある横長の領域には、アクチュエータAについての動作が記述され、上から二番目の横長の領域にはアクチュエータBについての動作が記述され、上から三番目の横長の領域にはアクチュエータCについての動作が記述される。図1および図2を用いて前述したように、本実施例の自動製造機械1には、11個のアクチュエータ10〜20が搭載されているから、それら全てのアクチュエータ10〜20について、1つずつ、横長の領域が割り当てられている。また、後述するように、YOGOチャート200には、アクチュエータ以外の機器の動作も記述することが可能であり、それらの機器についても、横長の領域が1つずつ割り当てられている。
トリガー線202には、通し番号が付けられている。図4に示した例では、YOGOチャート200の上端の欄内に、その下のトリガー線202の通し番号が記載されている。このトリガー線202は、YOGOチャート200から機械語の制御プログラムを生成する際に重要な役割を果たしているが、この点については後ほど詳しく説明する。
仕切線201と仕切線201との間の領域には、その領域に割り当てられたアクチュエータの動作を示す動作線203が記入され、動作線203の左端には動作の開始を示す始点204が、動作線203の右端には動作の終了を示す終点205が記入される。図4に示した例では、動作線203は太い実線で示されており、始点204は白抜きの丸印で示されて、終点205は黒い丸印で示されている。動作線203は、仕切線201と仕切線201との間の領域に記入しなければならず、従って、仕切線201を跨ぐことはできない。また、動作線203はトリガー線202を跨いで記入することができるが、始点204および終点205はトリガー線202の上に記入する必要がある。
更に、動作線203の上には、アクチュエータの基本動作を示す名称(以下、基本動作名206)が表示されている。ここで、アクチュエータの基本動作とは、例えばモーターのように回転運動するアクチュエータであれば、正方向に回転させる動作や逆方向に回転させる動作のような基本的な動作であり、エアシリンダなどのように直線運動するアクチュエータであれば、前進させる動作や後退させる動作のような基本的な動作である。これらの基本動作は、回転速度あるいは移動速度や、動作時間などの必要なパラメータを指定することによって、アクチュエータの動作を規定することができる。尚、本実施例では、正方向に回転させる動作と、逆方向に回転させる動作とは、自由度が異なる2つの基本動作であるとしている。しかし、これらはパラメータの正負が異なるものの、同じ自由度を有する1つの基本動作であるものとして取り扱うことも可能である。YOGOチャート200では、以上のような仕切線201と、トリガー線202と、動作線203と、始点204と、終点205と、基本動作名206などを用いて、自動製造機械1の動作を記述する。
図5は、YOGOチャート200を用いて自動製造機械1の動作を記述する方法を示した説明図である。図5に示した例では、4つのアクチュエータa〜dが協調して動作する様子が記述されている。先ず初めに、1番のトリガー線202に注目すると、1番のトリガー線202の上には、アクチュエータaの動作を記述する領域に始点204が記入され、その始点204から右方向に向かって動作線203が引き出されている。1番のトリガー線202は自動製造機械1に電源が投入されたタイミングを表しているから、この表示は、自動製造機械1に電源が投入されると、初めにアクチュエータaを動作させることを示している。
また、動作線203の上には、「Ω−AA−1」という基本動作名206が、「A−10」および「B−5」という2つのパラメータ付きで記入されている。後述するように基本動作名206は、アクチュエータaに基本動作を行わせるためのコンピュータで実行可能なプログラム要素に対応付けられている。従って、動作線203の上に基本動作名206を記入することによって、コンピュータが実行可能なプログラム要素を特定し、そのプログラム要素を用いてアクチュエータaの動作を制御することによって、基本動作名206の基本動作をアクチュエータaに行わせることができる。
尚、アクチュエータaが、例えばエアシリンダのように、ストローク限界まで前進あるいは後退させるというような単純な動作のアクチュエータである場合は、プログラム要素によって実現される基本動作は、一定時間が経過するまで単に前進あるいは後退させる動作、若しくは、接点スイッチがONになるまで前進あるいは後退させる動作となる。このような単純な動作であればパラメータは不要なので、動作線203の上には、パラメータを伴わない基本動作名206が記入されることになる。これに対して、例えばリニアモータのように、前進あるいは後退させる際の移動速度や移動距離(あるいは停止位置)を指定可能なアクチュエータの場合は、プログラム要素に対してこれらの条件を指定する必要がある。また、一般的なモータのように回転軸を正方向あるいは逆方向に回転させる際の回転速度や回転角度(あるいは停止角度位置)を指定可能なアクチュエータの場合も、プログラム要素に対してこれらの条件を指定する必要がある。そこで、このようなアクチュエータに対しては、これらの条件を指定するためのパラメータを伴う基本動作名206が、動作線203の上に記入されることになる。尚、パラメータによって指定する内容は、速度や位置などを表す数値に限らず、例えばモータの加速や減速の程度や、加減速の仕方を表す駆動パターンなどを指定するようにしても良い。
図5中で、アクチュエータaに対して1番のトリガー線202上の始点204から引き出された動作線203は、2番のトリガー線202上の終点205で終わっている。この表示は、電源の投入後に開始されたアクチュエータaを動作が終了したタイミングを、2番のトリガー線202としていることを表している。1番のトリガー線202が表すタイミングから、2番のトリガー線202が表すタイミングまでの経過時間は、動作線203上の基本動作名206によって指定されるプログラム要素に依存して変化する。
また、2番のトリガー線202の上には、アクチュエータbに対応する位置に始点204が記入され、その始点204から動作線203が引き出されて、3番の動作線203の上に記入された終点205で終わっている。同様に、アクチュエータcに対応する位置にも、2番のトリガー線202上に始点204を有し、3番のトリガー線202上に終点205を有する動作線203が記入されている。この表示は、アクチュエータaの「Ω−AA−1」という基本動作名206の動作が終了したら、アクチュエータbおよびアクチュエータcの動作を開始することを表している。また、この時のアクチュエータbの動作は、対応する動作線203の上に記入された「Ω−AA−2」という基本動作名206によって特定される動作となり、アクチュエータcの動作は、対応する動作線203の上に記入された「Ω−BB−1」という基本動作名206で特定される動作となる。
更に、3番のトリガー線202の上には、アクチュエータdに対応する位置に始点204が記入され、その始点204からは、4番のトリガー線202上の終点205で終了する動作線203が引き出されている。更に、その動作線203の上には、「Ω−AA−1」という基本動作名206が記入されている。この表示は、アクチュエータbおよびアクチュエータcの動作が終了したら、アクチュエータdの動作を開始することを表している。ここで、アクチュエータbの動作は「Ω−AA−2」という基本動作名206の動作であり、アクチュエータcの動作は「Ω−BB−1」という基本動作名206の動作であるから、アクチュエータbの動作とアクチュエータcの動作とが同時に終了するわけではない。そこで、アクチュエータdは、アクチュエータbの動作が終了し、且つ、アクチュエータcの動作が終了すると、基本動作名206(ここでは、Ω−AA−1)で特定される動作を開始することになる。
ここで、トリガー線202の本当の機能について説明する。トリガー線202は、直感的には「動作のタイミングを表すもの」と考えると分かり易い。しかし、トリガー線202の本当の機能は、動作のタイミングを表すことではない。例えば、上述したアクチュエータbおよびアクチュエータcの動作線203は、3番のトリガー線202上の終点205で終わっているが、アクチュエータbとアクチュエータcとは動作の内容が違うので、実際には同じタイミングで動作が終了するわけではない。すなわち、トリガー線202の本当の機能は、1つ以上のアクチュエータの動作の終了と、他の1つ以上のアクチュエータの動作の開始とを、論理演算によって関連付けることにある。上述した例では、3番のトリガー線202は、「アクチュエータbの動作の終了」という事項の真偽と、「アクチュエータcの動作の終了」という事項の真偽と、「アクチュエータdの動作の開始」という事項の真偽とが、
「アクチュエータbの動作の終了」 AND 「アクチュエータcの動作の終了」
= 「アクチュエータdの動作の開始」
という論理演算によって関連付けていることになる。
また、以上の説明から明らかなように、YOGOチャート200の本質は、複数のアクチュエータの基本動作を、論理演算によって関連付けることによって、自動製造機械1の全体の動作を記述することにある。従って、このような機能を実現するチャートであれば、動作線203や、始点204や、終点205や、場合によっては仕切線201やトリガー線202などを用いずに作成されたチャートであっても、そのチャートは、YOGOチャート200の単なるバリエーションの一つに過ぎないということができる。
図6は、YOGOチャートと同様な機能を有する動作チャート(YOGOチャートのバリエーション)を用いて、自動製造機械1の動作を表示する様子を例示した説明図である。図6に例示したYOGOチャートのバリエーションでは、前述した動作線203の代わりに、矩形の動作ブロック213を使用する。動作ブロック213は、アクチュエータが動作することを表すものであり、アクチュエータが動作する内容は、動作ブロック213の中に基本動作名206を書き込むことによって規定する。そして、動作ブロック213が表す動作の終了と、他の動作ブロック213の動作の開始とを、論理演算を表す線で結び付けることによって、動作を関連付けることとしても良い。
例えば、図6(a)には、図5中に示した3番のトリガー線202の部分を、バリエーションのYOGOチャートで記述した様子が示されている。図6(a)では、2番のトリガー線202の位置に、「Ω−AA−2」という基本動作名206が記入された動作ブロック213と、「Ω−BB−1」という基本動作名206が記入された動作ブロック213とが表示されており、3番のトリガー線202の位置には、「Ω−AA−1」という基本動作名206が記入された動作ブロック213が表示されている。そして、2番のトリガー線202に記入された2つの動作ブロック213の終端と、3番のトリガー線202に記入された動作ブロック213の先端とが、実線のAND線214によって接続されている。このAND線214は、これらの動作ブロック213がANDの論理演算によって関連付けられていることを表している。従って、この場合は、「Ω−AA−2」の基本動作が終了し、且つ、「Ω−BB−1」の基本動作が終了すると、「Ω−AA−1」の基本動作を開始するという動作が記述されていることになる。
もちろん、複数の動作ブロック213を、AND演算ではなく、OR演算によって関連付けることも可能である。例えば、図6(b)に示したように、「Ω−AA−2」の基本動作を示す動作ブロック213および「Ω−BB−1」の基本動作を示す動作ブロック213を、破線で示したOR線215を用いて、「Ω−AA−1」の基本動作を示す動作ブロック213に接続する。こうすれば、「Ω−AA−2」の基本動作、または「Ω−BB−1」の基本動作の何れかが終了すると、「Ω−AA−1」の基本動作を開始するという動作を記述することができる。
以上の内容が、YOGOチャート200を用いて動作を記述する基本的な方法であるが、動作の記述をより一層容易にする目的で、YOGOチャート200には、様々な記述方法が用意されている。例えば、図5中に示した4番のトリガー線202および5番のトリガー線202は、一点鎖線で表示されているが、これらは条件分岐を表している。また、4番のトリガー線202の下方、および5番のトリガー線202の下方には、それぞれ一点鎖線の矩形207が表示されているが、これらは分岐条件を表している。図5に示した例では、4番のトリガー線202の下方の矩形207の中には「A>B」と記入されており、5番のトリガー線202の下方の矩形207の中には「ELSE」と記入されているが、これらは、「A>B」の条件が成立していれば、4番のトリガー線202上にある始点204から引き出された動作線203の動作を開始し、「A>B」の条件が成立していない場合(ELSEの場合)は、5番のトリガー線202上にある始点204から引き出された動作線203の動作を開始することを表している。従って、アクチュエータdの「Ω−AA−1」という基本動作名206の動作が終了した時点で、「A>B」の条件が成立している場合は、アクチュエータbが「Ω−AA−3」という基本動作名206の動作を開始し、そうでなければ、アクチュエータcが「Ω−BB−1」という基本動作名206の動作を開始することになる。
また、こうして開始されたアクチュエータbの動作の終了を示す終点205、およびアクチュエータcの動作の終了を示す終点205は、黒い四角印で表示されている。これは、それらの動作の終了が、OR演算によって、他の動作の開始と関連付けられることを表している。尚、黒い丸印で表示される一般的な終点205は、動作の終了と他の動作の開始とを、AND演算によって結び付けているので、特に黒い四角印の終点205を、一般的な黒い丸印の終点205と区別する必要があるときは、「OR終点205a」と表記することにする。図5中に示した例では、アクチュエータbの「Ω−AA−3」という名前の基本動作、およびアクチュエータcの「Ω−BB−1」という名前の基本動作は、何れも6番のトリガー線202上で終了しているが、何れかの動作が終了すると、アクチュエータdが「Ω−AA−1」という名前の基本動作を開始することになる。
更に、こうして開始されたアクチュエータdの動作の終了を示す終点205は、破線で表示された7番のトリガー線202上に記入されている。破線のトリガー線202は、繰り返して行われることを表している。図5中に示した例では、破線で表示された7番のトリガー線202から、同じく破線で表示された9番のトリガー線202までの動作が繰り返して実行される。また、これら2本のトリガー線202の内、初めに登場する7番のトリガー線202の下方には、破線の矩形208の中に繰返条件が記入されている。図5中に示した例では、VCという変数の値が0になるまで、7番のトリガー線202から9番のトリガー線202までの動作(従って、アクチュエータaの動作およびアクチュエータbの動作)が繰り返して実行される。そして、7番のトリガー線202の下方に記入された繰返条件(ここでは、変数VC=0)が成立すると、9番のトリガー線202上に始点204が記入されたアクチュエータcの動作が開始されることになる。
また、自動製造機械1では、アクチュエータの動作の開始前に音声(効果音を含む)を出力して周囲の作業者に注意を促したり、一定時間に亘ってライトを点灯させたり点滅させたりすることがある。このように、スピーカーから音声を出力する動作や、ライトを発光させて点灯あるいは点滅させる動作は、アクチュエータによる動作ではないが、それに準じた動作として基本動作と同様に取り扱うことができる。YOGOチャート200には、アクチュエータによる動作ではないが基本動作と同様に取り扱うことが可能な動作も記述することができる。
図7は、YOGOチャート200上で、基本動作と同様に取り扱うことが可能な動作を記述する態様を例示した説明図である。図7(a)には、スピーカーから音声を出力する動作(音声出力動作)が記述されている。YOGOチャート200では、スピーカーによる音声出力動作も、左端に始点204を有し右端に終点205を有する動作線203の上に、スピーカーの駆動を示す基本動作名206(ここでは、Ω−SP−1)を記入することによって記述する。スピーカーから出力する音声データは、パラメータを用いて指定することができる。
図7(b)には、ライトを発光させる発光動作が記述されている。ライトによる発光動作も、左端に始点204を有し右端に終点205を有する動作線203の上に、ライトの発光動作を示す基本動作名206(ここでは、Ω−LL−1)を記入することによって記述する。ライトを発光させる態様(例えば、点灯あるいは点滅させる態様)は、パラメータを用いて指定することができる。
更には、例えば、スイッチ(あるはボタン)が押された回数が、所定回数に達するまで計数する計数動作や、スイッチ(あるはボタン)が押されてから、所定時間が経過するまで計時する計時動作や、ヒーターを用いて対象物を加熱したり、材料を加熱調理したりする加熱動作も、基本動作に準じた動作としてYOGOチャート200に記述することができる。図7(c)には、計数器を用いて所定回数に達するまで計数する計数動作の記述例が示されており、図7(d)には、タイマを用いて所定時間の経過を計時する計時動作の記述例が、図7(e)には、ヒーターを用いて加熱する加熱動作の記述例が示されている。
また、自動製造機械1では、スイッチがONになっていること、あるいはスイッチがOFFになっていることが、動作を開始するための条件になっていることがある。更には、スイッチがONになること、あるいはスイッチがOFFになることが、動作を終了するための条件になっていることがある。このようなことを考慮して、YOGOチャート200には、スイッチの状態を、動作の開始条件、あるいは動作の終了条件として記述することが可能となっている。
図8は、スイッチの状態を、動作の開始条件としてYOGOチャート200に記述する態様を例示した説明図である。図8(a)に示した例では、11番のトリガー線202の上に、終点205と、始点204と、白抜きの三角印とが記載されている。この白抜きの三角印は、スイッチがONであることを確認する動作(以下、ON確認動作209)を表しており、ON確認動作209の隣には、確認するスイッチを特定するためのスイッチ特定情報210が記載されている。また、ON確認動作209や、始点204や、終点205は、それぞれ異なる仕切線201の間の領域に記載されている。このような図8(a)の記載は、「Ω−AA−2」という基本動作名206の動作が終了し、且つ、SW−1というスイッチがONになったら(あるいは既にONになっていたら)、「Ω−AA−3」という基本動作名206の動作を開始することを表している。
また、図8(b)に示した例では、白抜きの三角印で表示されたON確認動作209が、黒い三角印に変更されている。この黒い三角印は、スイッチがOFFであることを確認する動作(以下、OFF確認動作211)を表している。OFF確認動作211の隣にも、確認するスイッチを特定するためのスイッチ特定情報210が記載されている。従って、図8(b)の記載は、「Ω−AA−2」という基本動作名206の動作が終了し、且つ、SW−1というスイッチがOFFになったら(あるいは既にOFFになっていたら)、「Ω−AA−3」という基本動作名206の動作を開始することを表している。
図9は、スイッチの状態を、動作の終了条件としてYOGOチャート200に記述する態様を例示した説明図である。図9(a)と、前述の図8(a)とを比較すると、図9(a)では、白抜きの三角印のON確認動作209と、終点205とが、同じ仕切線201の間の領域に記載されている。これは、ON確認動作209が、動作の終了条件となっていることを表している。従って、図9(a)に示した記載は、SW−1というスイッチがONになったら、「Ω−AA−2」という基本動作名206の動作を終了して、「Ω−AA−3」という基本動作名206の動作を開始することを表している。
また、図9(b)に示した例では、図9(a)中のON確認動作209が、OFF確認動作211に変更されている。従って、図9(b)に示した記載は、SW−1というスイッチがOFFになったら、「Ω−AA−2」という基本動作名206の動作を終了して、「Ω−AA−3」という基本動作名206の動作を開始することを表している。
B−3.YOGOチャートから機械語の制御プログラムを生成可能な理由 :
図3(b)を用いて前述したように、自動製造機械1の動作をYOGOチャート200に記載しておけば、そのYOGOチャート200を専用のコンパイラに掛けることによって、制御コンピュータ50が実行可能な機械語の制御プログラムを自動で生成することができる。こうしたことが可能となるのは、次のような理由による。
先ず、YOGOチャート200は、自動製造機械1に搭載されたアクチュエータの基本動作、および基本動作に準じた動作(図7〜図9参照)を、論理演算を用いて関連付けることによって、自動製造機械1の動作を記述する。また、分岐条件に基づく条件分岐の判断や、繰返条件に基づく繰り返し動作の判断も、論理演算に準じて考えることができる。ここで、基本動作あるは基本動作に準じた動作であれば、その動作を実現するためのプログラム要素を予め作成しておくことが可能である。尚、このようなプログラム要素は、高級プログラム言語で記述されていても良いし、機械語で記述されていても良い。
更に、論理演算を実行するプログラムや、分岐条件に基づく判断を実行するプログラムや、繰返条件に基づく判断を実行するプログラムであれば、単純なプログラムであるため自動で生成することができる。従って、YOGOチャート200を制御プログラムに変換する際には、初めにYOGOチャート200を解析することによって、YOGOチャート200に記載された基本動作(および基本動作に準じた動作)と、それらを関連付ける論理演算(あるいは条件判断)とを抽出しておく。そして、基本動作(および基本動作に準じた動作)を、予め作成しておいたプログラム要素に置き換えると共に、それらのプログラム要素を、抽出した論理演算(あるいは条件判断)に対応するプログラムによって結合してやる。こうすれば、YOGOチャート200から、高級プログラム言語あるいは機械語で記述された制御プログラムを、自動で生成することが可能となる。本実施例では、以下のような制御プログラム生成装置100を用いて、制御プログラムを生成する。
C.本実施例の制御プログラム生成装置100 :
図10は、本実施例の制御プログラム生成装置100が備える機能を示した説明図である。本実施例の制御プログラム生成装置100は、いわゆるパーソナルコンピュータを用いて実現することができる。
図10に示されるように、本実施例の制御プログラム生成装置100は、YOGOチャート作成部101や、基本動作記憶部102や、YOGOチャート読込部103や、YOGOチャート解析部104や、制御プログラム生成部105や、制御プログラム出力部106などを備えている。尚、これらの「部」は、制御プログラム生成装置100を用いてYOGOチャート200を作成し、そのYOGOチャート200から自動で制御プログラムを生成するためには、制御プログラム生成装置100に備えておくべき複数の機能を分類した抽象的な概念である。従って、制御プログラム生成装置100が、これらの「部」に相当する部品を組み合わせて形成されていることを表しているわけではない。実際には、これらの「部」は、CPUで実行されるプログラムの形態で実現することもできるし、ICチップやLSIなどを組み合わせた電子回路の形態で実現することもできるし、更には、これらが混在した形態など、様々な形態で実現することができる。
YOGOチャート作成部101は、モニター画面100aや、キーボード100bや、マウスポインタ100cなどに接続されており、自動製造機械1の機械設計を行った機械設計技術者が、モニター画面100aを見ながらキーボード100bやマウスポインタ100cを操作することによって、図4に例示したYOGOチャート200を作成する。前述したように、YOGOチャート200は自動製造機械1に搭載されている複数のアクチュエータの動作を組み合わせることによって、自動製造機械1の動作を記述したものである。機械設計に際して機械設計技術者は、自動製造機械1の動作を実現するためには、複数のアクチュエータの動作をどのように組み合わせれば良いかについて、十分に検討しているので、機械設計を行った機械設計技術者であれば、自動製造機械1の動作を記述したYOGOチャート200を簡単に作成することができる。
また、図4〜図7を用いて前述したように、YOGOチャート200には、基本動作(あるいは基本動作に準じた動作)を特定するための基本動作名206を記入する必要がある。そこで、基本動作記憶部102には、アクチュエータ(あるいは、スピーカー、ライト、スイッチなど)の名称と、そのアクチュエータなどで実行可能な基本動作などの基本動作名206とが対応付けて記憶されている。
図11は、アクチュエータなどの名称と、基本動作名206とが対応付けられて、基本動作記憶部102に記憶されている状態を例示した説明図である。図示されるように、アクチュエータなどに対して、実行可能な基本動作などの基本動作名206が対応付けて記憶されている。複数種類の基本動作などが実行可能なアクチュエータなどに対しては、実行可能な動作のぞれぞれに対して基本動作名206が記憶されている。また、指定可能なパラメータが存在する基本動作名206については、指定可能なパラメータについても記憶されている。例えば、図11中で一番上に表示された「Ω−AA−1」という基本動作名206については、「A」というパラメータを指定可能である旨が記憶されており、上から3番目の「Ω−AA−3」という基本動作名206については、「A」および「B」という2つのパラメータを指定可能である旨が記憶されている。また、上から4番目の「Ω−AA−4」という基本動作名206については、指定可能なパラメータが存在しない旨が記憶されている。
また、図11に示されるように、それぞれの基本動作名206に対しては、プログラム要素名も記憶されている。プログラム要素名とは、基本動作名206が表す基本動作(あるいは基本動作に準じた動作)を実現するためのプログラムの名称である。基本動作や、これに準じた動作は単純な動作であるため、それらの動作を実現するプログラムは小さなサイズとなり、他の大きなサイズのプログラムに部品として組み込むことができる。そこで本明細書では、これらの動作を実現するプログラムを「プログラム要素」と表記している。プログラム要素は、高級プログラム言語を用いて記述されたプログラムであっても良いし、機械語で記述されたプログラムであってもよい。
図10に示すように、YOGOチャート作成部101は、基本動作記憶部102に接続されている。このため、機械設計技術者は、YOGOチャート200を作成するに際して、基本動作記憶部102に記憶されている図11のデータを参照することができる。そして、自動製造機械1を設計した機械設計技術者であれば、どのようなアクチュエータをどのように動作させるかは十分に分かっているので、アクチュエータなどの名称から基本動作名206を知ることができる。更に、パラメータに指定する内容も容易に決めることができる。このため、YOGOチャート200を簡単に作成することができる。
YOGOチャート読込部103は、YOGOチャート作成部101で作成したYOGOチャート200を読み込んで、YOGOチャート解析部104に出力する。尚、本実施例では、制御プログラム生成装置100でYOGOチャート200も作成するものとしており、このことに対応して、YOGOチャート読込部103は、YOGOチャート作成部101からYOGOチャート200を読み込んでいる。これに対して、別のコンピュータでYOGOチャート200を作成した場合は、YOGOチャート読込部103は、別のコンピュータからYOGOチャート200を読み込むことになる。
YOGOチャート解析部104は、YOGOチャート読込部103から受け取ったYOGOチャート200を解析することによって、YOGOチャート200に記載された基本動作(および基本動作に準じた動作)と、それらを関連付けている論理演算(あるいは条件判断)とを抽出する。そして、その結果を、制御プログラム生成部105に出力する。
制御プログラム生成部105は、基本動作記憶部102に記憶されている基本動作名206とプログラム要素との対応関係(図11参照)を参照することによって、YOGOチャート200に記述されていた基本動作(および基本動作に準じた動作)を、プログラム要素に置き換える。更に、それらのプログラム要素を、YOGOチャート200から抽出した論理演算(あるいは条件判断)に基づいて、論理演算などを実行するプログラムによって結合してやる。こうすることによって、YOGOチャート200から制御プログラムを生成することができるので、生成した制御プログラムを、制御プログラム出力部106に出力する。尚、YOGOチャート200から制御プログラムを生成するためのコンパイラ110は、上述した基本動作記憶部102、YOGOチャート読込部103、YOGOチャート解析部104、および制御プログラム生成部105によって実現されている。
制御プログラム出力部106は、制御プログラム生成部105から受け取った制御プログラムを、自動製造機械1の制御コンピュータ50(図1および図2参照)の記憶領域に書き込んでやる。その結果、制御コンピュータ50は、自動製造機械1に搭載されている各種のアクチュエータを、制御プログラムに従って制御することで、自動製造機械1の動作を制御することが可能となる。
尚、本実施例のYOGOチャート読込部103は、本発明の「動作チャート読込部」に対応している。また、本実施例の制御プログラム生成装置100が備えるYOGOチャート読込部103、YOGOチャート解析部104、制御プログラム生成部105は、制御プログラムを生成する方法を表していると考えることもできる。従って、本実施例のYOGOチャート読込部103は、制御プログラム生成方法として把握した本発明の「動作チャート読込工程」に対応し、本実施例のYOGOチャート解析部104は、本発明の「動作チャート解析工程」に対応し、本実施例の制御プログラム生成部105は、本発明の「制御プログラム生成工程」に対応する。更に、本実施例の制御プログラム生成装置100が備えるYOGOチャート読込部103、YOGOチャート解析部104、制御プログラム生成部105が実現する機能は、自動製造機械1の制御プログラムを生成する方法を、コンピュータを用いて実現するプログラムが備える機能として把握することもできる。従って、本実施例のYOGOチャート読込部103は、プログラムとして把握した本発明の「動作チャート読込機能」に対応し、本実施例のYOGOチャート解析部104は、本発明の「動作チャート解析機能」に対応し、本実施例の制御プログラム生成部105は、本発明の「制御プログラム生成機能」に対応する。
以上に詳しく説明したように、自動製造機械1の動作をYOGOチャート200で記述しておけば、そのYOGOチャート200を制御プログラム生成装置100で処理することで、自動製造機械1を制御するための制御プログラムを自動で生成することができる。このため、プログラマが制御プログラムを作成しなくても良くなるので、新たな自動製造機械1を開発するために要する時間を、大幅に(少なくとも半分以下に)短縮することができ、プログラマを確保しておく必要も無くなる。その結果、製造現場に新たな自動製造機械を導入することが容易になって、産業界での省力化に対する要請に十分に対応することが可能となる。
以上、本実施例の制御プログラム生成装置100について説明したが、本発明は上記の実施例に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することが可能である。
例えば、上述した実施例では、YOGOチャート200は、基本動作(あるいは基本動作に準じた動作)によって記述されるものとして説明した。しかし、他自由度の複雑な動作をする部品を購入して、その部品に所定の動作を行わせることによって、自動製造機械1のアクチュエータとして利用する場合もある。このような場合は、その部品に所定の動作を、基本動作に準じた動作として取り扱って、基本動作名206を付与した上でYOGOチャート200に記入するようにしても良い。このような場合でも、基本動作名206に対応するプログラム要素を予め作成しておけば、制御プログラム生成装置100を用いて制御プログラムを自動で生成することが可能となる。
1…自動製造機械、 2…レール、 3…搬送ユニット、 3a…把持軸、
3b…チャック、 4…加工ユニット 10〜20…アクチュエータ、
10d〜20d…ドライバ回路、 50…制御コンピュータ、
100…制御プログラム生成装置、 101…YOGOチャート作成部、
102…基本動作記憶部、 103…YOGOチャート読込部、
104…YOGOチャート解析部、 105…制御プログラム生成部、
106…制御プログラム出力部、 110…コンパイラ、
200…YOGOチャート、 201…仕切線、 202…トリガー線、
203…動作線、 204…始点、 205…終点、
206…基本動作名、 209…ON確認動作、 210…スイッチ特定情報、
211…OFF確認動作。

Claims (7)

  1. 複数のアクチュエータ(10〜20)を備えた自動製造機械(1)の制御プログラムを生成する制御プログラム生成装置(100)であって、
    前記アクチュエータの自由度毎の動作を表す基本動作を、前記基本動作を実現するためのプログラム要素と対応付けて記憶している基本動作記憶部(102)と、
    前記自動製造機械の動作が複数の前記基本動作に分解されて、前記基本動作の終了と他の前記基本動作の開始とが論理演算によって関連付けられることによって、前記自動製造機械の動作が記述された動作チャート(200)を読み込む動作チャート読込部(103)と、
    前記基本動作記憶部に記憶されている前記プログラム要素を、前記動作チャートに従って結合することによって、前記自動製造機械を動作させる前記制御プログラムを生成する制御プログラム生成部(105)と
    を備え
    前記基本動作記憶部は、パラメータを設定可能な前記基本動作および前記プログラム要素を記憶可能となっており、
    前記動作チャート読込部は、前記基本動作に前記パラメータが設定された前記動作チャートを読込可能となっている
    ことを特徴とする制御プログラム生成装置。
  2. 請求項1に記載の制御プログラム生成装置であって、
    前記基本動作記憶部は、前記基本動作に加えて、タイマによる計時動作または計数器による計数動作の少なくとも一方を、前記計時動作または前記計数動作を実現するための前記プログラム要素と対応付けて記憶しており、
    前記動作チャート読込部は、前記計時動作または前記計数動作の少なくとも一方を含んだ前記動作チャートを読込可能となっている
    ことを特徴とする制御プログラム生成装置。
  3. 請求項1または請求項2に記載の制御プログラム生成装置であって、
    前記基本動作記憶部は、前記基本動作に加えて、スピーカーによる音声出力動作またはライトによる発光動作の少なくとも一方を、前記音声出力動作または前記発光動作を実現するための前記プログラム要素と対応付けて記憶しており、
    前記動作チャート読込部は、前記音声出力動作または前記発光動作の少なくとも一方を含んだ前記動作チャートを読込可能となっている
    ことを特徴とする制御プログラム生成装置。
  4. 請求項1ないし請求項3の何れか一項に記載の制御プログラム生成装置であって、
    前記基本動作記憶部は、前記基本動作に加えて、ヒーターによる加熱動作を、前記加熱動作を実現するための前記プログラム要素と対応付けて記憶しており、
    前記動作チャート読込部は、前記加熱動作を含んだ前記動作チャートを読込可能となっている
    ことを特徴とする制御プログラム生成装置。
  5. 請求項1ないし請求項4の何れか一項に記載の制御プログラム生成装置であって、
    前記基本動作記憶部は、
    シーケンス制御によって制御される前記アクチュエータの前記基本動作に対しては、前記基本動作を前記シーケンス制御によって実現する前記プログラム要素を対応付けて記憶しており、
    サーボ制御によって制御される前記アクチュエータの前記基本動作に対しては、前記基本動作を前記サーボ制御によって実現する前記プログラム要素を対応付けて記憶している
    ことを特徴とする制御プログラム生成装置。
  6. 複数のアクチュエータ(10〜20)を備えた自動製造機械(1)の制御プログラムを、コンピュータに生成させる制御プログラム生成方法であって、
    前記自動製造機械の動作が、前記アクチュエータの自由度毎の動作を表す基本動作と、前記基本動作の終了に他の前記基本動作の開始を関連付ける論理演算とを用いて記述された動作チャート(200)を読み込む動作チャート読込工程(103)と、
    前記動作チャートを解析することによって、前記動作チャートに含まれる複数の前記基本動作と、複数の前記基本動作を関連付ける論理演算とを抽出する動作チャート解析工程(104)と、
    前記基本動作と、前記基本動作を実現するためのプログラム要素とが対応付けて記憶されたデータ(102)を参照することによって、前記動作チャートに記載された前記基本動作を前記プログラム要素に変換すると共に、前記プログラム要素を前記動作チャートに従って結合することによって、前記自動製造機械を動作させる前記制御プログラムを生成する制御プログラム生成工程(105)と
    を備え
    前記動作チャート読込工程は、パラメータを設定可能な前記基本動作を有する前記動作チャートを読込可能な工程となっており、
    前記制御プログラム生成工程は、前記パラメータを設定可能な前記基本動作に対しては、前記パラメータを設定可能な前記プログラム要素が対応付けて記憶された前記データを参照することによって、前記制御プログラムを生成する工程となっている
    ことを特徴とする制御プログラム生成方法。
  7. 複数のアクチュエータ(10〜20)を備えた自動製造機械(1)の制御プログラムを生成する方法を、コンピュータを用いて実現するプログラムであって、
    前記自動製造機械の動作が、前記アクチュエータの自由度毎の動作を表す基本動作と、前記基本動作の終了に他の前記基本動作の開始を関連付ける論理演算とを用いて記述された動作チャート(200)を読み込む動作チャート読込機能(103)と、
    前記動作チャートを解析することによって、前記動作チャートに含まれる複数の前記基本動作と、複数の前記基本動作を関連付ける論理演算とを抽出する動作チャート解析機能(104)と、
    前記基本動作と、前記基本動作を実現するためのプログラム要素とが対応付けて記憶されたデータ(102)を参照することによって、前記動作チャートに記載された前記基本動作を前記プログラム要素に変換すると共に、前記プログラム要素を前記動作チャートに従って結合することによって、前記自動製造機械を動作させる前記制御プログラムを生成する制御プログラム生成機能(105)と
    を、コンピュータを用いて実現すると共に、
    前記動作チャート読込機能は、パラメータを設定可能な前記基本動作を有する前記動作チャートを読込可能な機能となっており、
    前記制御プログラム生成機能は、前記パラメータを設定可能な前記基本動作に対しては、前記パラメータを設定可能な前記プログラム要素が対応付けて記憶された前記データを参照することによって、前記制御プログラムを生成する機能となっている
    ことを特徴とするプログラム。
JP2020011386A 2020-01-28 2020-01-28 制御プログラム生成装置、制御プログラム生成方法、プログラム Active JP6787616B1 (ja)

Priority Applications (26)

Application Number Priority Date Filing Date Title
JP2020011386A JP6787616B1 (ja) 2020-01-28 2020-01-28 制御プログラム生成装置、制御プログラム生成方法、プログラム
JP2020177114A JP7148091B2 (ja) 2020-01-28 2020-10-22 制御プログラム生成装置、制御プログラム生成方法、プログラム
TW109143936A TW202129443A (zh) 2020-01-28 2020-12-11 控制程式生成裝置、控制程式生成方法、程式
TW110101501A TWI859399B (zh) 2020-01-28 2021-01-14 動作控制裝置、動作控制方法、程式
TW112138804A TW202403480A (zh) 2020-01-28 2021-01-14 控制程式生成裝置、控制程式生成方法、程式
TW110101500A TW202147048A (zh) 2020-01-28 2021-01-14 控制程式生成裝置、控制程式生成方法、程式
KR1020227010539A KR102476173B1 (ko) 2020-01-28 2021-01-25 제어 프로그램 생성 장치, 제어 프로그램 생성 방법, 프로그램
PCT/JP2021/002502 WO2021153521A1 (ja) 2020-01-28 2021-01-25 制御プログラム生成装置、制御プログラム生成方法、プログラム
EP21747397.4A EP4099109A4 (en) 2020-01-28 2021-01-25 CONTROL PROGRAM GENERATION DEVICE, CONTROL PROGRAM GENERATION METHOD, AND PROGRAM
CN202180011269.8A CN115023669A (zh) 2020-01-28 2021-01-25 控制程序生成装置、控制程序生成方法、程序
PCT/JP2021/002546 WO2021153533A1 (ja) 2020-01-28 2021-01-26 制御プログラム生成装置、制御プログラム生成方法、プログラム
PCT/JP2021/002590 WO2021153544A1 (ja) 2020-01-28 2021-01-26 制御プログラム生成装置、制御プログラム生成方法、プログラム
CN202180011329.6A CN115023670A (zh) 2020-01-28 2021-01-26 控制程序生成装置、控制程序生成方法、程序
KR1020227010541A KR102476170B1 (ko) 2020-01-28 2021-01-26 제어 프로그램 생성 장치, 제어 프로그램 생성 방법, 프로그램
EP21747401.4A EP4099110A4 (en) 2020-01-28 2021-01-26 CONTROL PROGRAM GENERATING DEVICE, CONTROL PROGRAM GENERATING METHOD AND PROGRAM
CN202180011351.0A CN115023671A (zh) 2020-01-28 2021-01-26 控制程序生成装置、控制程序生成方法、程序
EP21747216.6A EP4099107B1 (en) 2020-01-28 2021-01-26 Control program generation device, control program generation method, and program
KR1020227014614A KR102476169B1 (ko) 2020-01-28 2021-01-26 제어 프로그램 생성 장치, 제어 프로그램 생성 방법, 프로그램
PCT/JP2021/002768 WO2021153591A1 (ja) 2020-01-28 2021-01-27 動作制御装置、動作制御方法、プログラム
EP21747218.2A EP4099108A4 (en) 2020-01-28 2021-01-27 OPERATIONAL TAX APPARATUS, OPERATIONAL TAX METHOD AND PROGRAM
CN202180011396.8A CN115023672A (zh) 2020-01-28 2021-01-27 动作控制装置、动作控制方法、程序
KR1020227014615A KR102476171B1 (ko) 2020-01-28 2021-01-27 동작 제어 장치, 동작 제어 방법, 프로그램
US17/831,153 US20220291653A1 (en) 2020-01-28 2022-06-02 Control program generation apparatus, control program generation method, and program
US17/842,503 US20220308558A1 (en) 2020-01-28 2022-06-16 Control program generation apparatus, control program generation method, and program
US17/852,009 US20220326688A1 (en) 2020-01-28 2022-06-28 Control program generation apparatus, control program generation method, and program
US17/864,205 US20220350310A1 (en) 2020-01-28 2022-07-13 Operation control apparatus, operation control method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020011386A JP6787616B1 (ja) 2020-01-28 2020-01-28 制御プログラム生成装置、制御プログラム生成方法、プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020177114A Division JP7148091B2 (ja) 2020-01-28 2020-10-22 制御プログラム生成装置、制御プログラム生成方法、プログラム

Publications (2)

Publication Number Publication Date
JP6787616B1 true JP6787616B1 (ja) 2020-11-18
JP2021117804A JP2021117804A (ja) 2021-08-10

Family

ID=73220068

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020011386A Active JP6787616B1 (ja) 2020-01-28 2020-01-28 制御プログラム生成装置、制御プログラム生成方法、プログラム
JP2020177114A Active JP7148091B2 (ja) 2020-01-28 2020-10-22 制御プログラム生成装置、制御プログラム生成方法、プログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2020177114A Active JP7148091B2 (ja) 2020-01-28 2020-10-22 制御プログラム生成装置、制御プログラム生成方法、プログラム

Country Status (7)

Country Link
US (1) US20220291653A1 (ja)
EP (1) EP4099109A4 (ja)
JP (2) JP6787616B1 (ja)
KR (1) KR102476173B1 (ja)
CN (1) CN115023669A (ja)
TW (1) TW202129443A (ja)
WO (1) WO2021153521A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7037787B1 (ja) * 2021-01-08 2022-03-17 株式会社ザイテック シーケンサー

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102558102B1 (ko) 2022-11-29 2023-07-21 최한수 사용자 설정형 자동화 공정 제어 시스템
KR102589041B1 (ko) * 2022-12-01 2023-10-19 (주)연합시스템 디지털 트윈을 활용한 복수의 스마트 공작 기계의 가공 속도 조절 시스템, 서버, 방법 및 프로그램

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03154105A (ja) * 1989-11-10 1991-07-02 Toshiba Mach Co Ltd Ncプログラム作成装置
JPH0991335A (ja) * 1995-09-22 1997-04-04 Fuji Facom Corp 論理回路設計支援装置
JPH11202912A (ja) * 1998-01-20 1999-07-30 Takashi Nishikawa シーケンス制御方法
JP4039595B2 (ja) * 1998-09-03 2008-01-30 リコーエレメックス株式会社 ロボットシステム
JP4888582B2 (ja) 2010-05-28 2012-02-29 株式会社安川電機 ロボット装置及び加工システム並びに加工品の製造方法
WO2013099032A1 (ja) * 2011-12-28 2013-07-04 株式会社安川電機 モーションコントローラ及びモータ制御システム
KR20160075629A (ko) 2013-10-31 2016-06-29 미쓰비시덴키 가부시키가이샤 프로그램 작성 장치, 프로그램 작성 방법 및 프로그램
US10518409B2 (en) * 2014-09-02 2019-12-31 Mark Oleynik Robotic manipulation methods and systems for executing a domain-specific application in an instrumented environment with electronic minimanipulation libraries
JP6821497B2 (ja) 2017-04-27 2021-01-27 株式会社日立産機システム 産業用コントローラのプログラム開発システム及び産業用コントローラのプログラム開発システムにおけるデータ共有方法
JP6445084B2 (ja) 2017-05-18 2018-12-26 ファナック株式会社 工作機械

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7037787B1 (ja) * 2021-01-08 2022-03-17 株式会社ザイテック シーケンサー

Also Published As

Publication number Publication date
KR102476173B1 (ko) 2022-12-08
JP2021117975A (ja) 2021-08-10
EP4099109A1 (en) 2022-12-07
US20220291653A1 (en) 2022-09-15
JP2021117804A (ja) 2021-08-10
JP7148091B2 (ja) 2022-10-05
WO2021153521A1 (ja) 2021-08-05
TW202129443A (zh) 2021-08-01
KR20220062544A (ko) 2022-05-17
EP4099109A4 (en) 2024-03-27
CN115023669A (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
WO2021153521A1 (ja) 制御プログラム生成装置、制御プログラム生成方法、プログラム
Zivanovic et al. An approach for applying STEP-NC in robot machining
US20220326688A1 (en) Control program generation apparatus, control program generation method, and program
JP7074378B2 (ja) 制御プログラム生成装置、制御プログラム生成方法、プログラム
WO2021153533A1 (ja) 制御プログラム生成装置、制御プログラム生成方法、プログラム
US20220350310A1 (en) Operation control apparatus, operation control method, and program
JP7114035B2 (ja) 動作制御装置、動作制御方法、プログラム
JP7114034B2 (ja) 制御プログラム生成装置、制御プログラム生成方法、プログラム
JP7523116B2 (ja) 制御プログラム生成装置
JP2008532130A (ja) 制御装置のインタプリタによるサブプログラムの翻訳のための方法
JP7276359B2 (ja) 動作指令生成装置、機構制御システム、コンピュータプログラム、動作指令生成方法及び機構制御方法
JP2023104873A (ja) 制御プログラム生成装置、制御プログラム生成方法、プログラム
JPH09258808A (ja) モーションコントローラプログラミング方式
TW202147048A (zh) 控制程式生成裝置、控制程式生成方法、程式
JP2537418B2 (ja) 制御プログラム作成装置
JPS6260006A (ja) ロボツト制御プログラムの干渉チエツク方法
CN118103182A (zh) 生成辅助文件的模拟装置以及控制系统
JP2020175474A (ja) 動作計画装置及び動作計画方法
JPH02306305A (ja) 制御プログラム作成方法
JPS63288685A (ja) ロボット動作順序図出力方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200207

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200207

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200710

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201013

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201022

R150 Certificate of patent or registration of utility model

Ref document number: 6787616

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250