(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-16
(45)【発行日】2024-04-24
(54)【発明の名称】生産計画システム
(51)【国際特許分類】
G05B 19/418 20060101AFI20240417BHJP
G06Q 50/04 20120101ALI20240417BHJP
【FI】
G05B19/418 Z
G06Q50/04
(21)【出願番号】P 2020144034
(22)【出願日】2020-08-28
【審査請求日】2023-02-20
(73)【特許権者】
【識別番号】000000158
【氏名又は名称】イビデン株式会社
(74)【代理人】
【識別番号】110000659
【氏名又は名称】弁理士法人広江アソシエイツ特許事務所
(72)【発明者】
【氏名】加納 規生
(72)【発明者】
【氏名】加納 孝一
【審査官】永井 友子
(56)【参考文献】
【文献】特開2000-214905(JP,A)
【文献】特開2010-257296(JP,A)
【文献】特開2020-129287(JP,A)
【文献】特開2009-140380(JP,A)
【文献】特開2002-132324(JP,A)
【文献】特開2015-125644(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/418
G06Q 10/0631
G06Q 50/04
(57)【特許請求の範囲】
【請求項1】
作業者が介在するセル生産方式または設備を複数操作する並列的工程における、作業者によって運転される複数の設備が複数の品種の中間製品を一単位ずつ加工する工程の、生産計画を組む生産計画システムであって、
前記中間製品の品種ごとの加工情報および加工数量を入力する入力部と、
複数の前記設備の停止時間と動作時間とを判断する、前記設備に備えられた運転検出センサーと、複数の前記設備において前記中間製品の入れ替えを検出する入替検出センサーと、複数の前記設備において前記作業者が作業中であるか作業待ちであるかを検出する作業検出センサーと、を有する稼働状況分析部と、
同一の前記中間製品の加工を繰り返すときに、前記稼働状況分析部の信号に基づいて、前記停止時間を、前段取り時間、後段取り時間、および作業待ち時間に分割し、品種ごとに、前記前段取り時間、前記動作時間、および前記後段取り時間を1単位として前記中間製品の加工時間を示す標準加工時間を得るとともに、前記複数の設備間で調整し前記加工数量を割り付ける演算部と、
前記演算部の割り付け結果に基づいて、各設備に加工指示を出す出力部と、
を有することを特徴とする生産計画システム。
【請求項2】
前記演算部は、さらに、加工する前記中間製品の品種が切り替わるときに、前記停止時間の中から品種切替時間を抽出して標準品種切替時間を得るとともに、前記標準加工時間および前記標準品種切替時間に基づいて、前記複数の設備間で調整し前記加工数量を割り付けることを特徴とする請求項1に記載の生産計画システム。
【請求項3】
前記運転検出センサーは、前記設備に備えられた表示灯の点灯を検出するセンサーであることを特徴とする請求項1または2に記載の生産計画システム。
【請求項4】
前記作業検出センサーは、前記設備の前に備えられており、前記作業者が作業しているか否かを判断する人感センサーであることを特徴とする請求項1~3のいずれか1項に記載の生産計画システム。
【請求項5】
前記作業検出センサーは、前記設備に備えられており、前記作業者が作業しているか否かを判断する安全装置のセンサーであることを判断することを特徴とする請求項1~3のいずれか1項に記載の生産計画システム。
【請求項6】
前記入替検出センサーは、中間製品とともに工程に流される識別データ若しくは前記設備に送られる加工データの入れ替えタイミングを読み取る読み取り機であることを特徴とする請求項1~5のいずれか1項に記載の生産計画システム。
【請求項7】
前記稼働状況分析部は、作業者を識別する作業者識別部を有し、前記演算部は、作業者ごとに標準加工時間を算出することを特徴とする請求項1~6のいずれか1項に記載の生産計画システム。
【請求項8】
前記生産計画システムは、生産実績に基づいて、残りの加工する中間製品の再割り付けを繰り返すことを特徴とする請求項1~7のいずれか1項に記載の生産計画システム。
【請求項9】
前記演算部は、前記入力部および前記稼働状況分析部の情報に基づいて生産数量を予測するシミュレーターを有し、前記演算部では、前記シミュレーターの結果をもとに加工する中間製品の割り付けを行うことを特徴とする請求項1~8のいずれか1項に記載の生産計画システム。
【請求項10】
前記演算部は、強化学習を行う学習部を有することを特徴とする請求項9に記載の生産計画システム。
【請求項11】
前記演算部は、前記加工数量の完了に要する時間を報酬とするQ学習を用いて強化学習を行うことを特徴とする請求項10に記載の生産計画システム。
【請求項12】
前記設備は、加工機、ロボット、PLC、搬送機、計測器、試験装置、プレス機、圧入器、印刷機、ダイカストマシン、射出成型機、食品機械、包装機、溶接機、洗浄機、塗装機、組立装置、実装機、木工機械、シーリング装置、および切断機からなる群から選択される一または複数の装置を含むことを特徴とする請求項1~11のいずれか1項に記載の生産計画システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、生産計画システムに関する。特に、作業者によって運転される複数の設備が、複数の種類の中間製品を一単位ずつ加工する場合の生産計画を組む生産計画システムに関する。
【背景技術】
【0002】
物を生産する生産現場において、生産設備と作業者を適切に配置し、生産効率を高めることは、製造原価を下げ、経営を安定化させることに直結し、重要な経営課題である。
【0003】
物作りの方法は、少品種大量生産に適したライン生産方式、多品種少量生産に適したセル生産方式、1人の作業者が同一の機能を有する複数の設備を操作し、取り扱う並列的工程での生産方式などが知られている。少品種大量生産に適したライン生産方式では、中間製品が上工程から下工程に順に流れ、タクトタイムを調整することにより生産量を変動させることができ、生産の計画が組みやすい。これに対し、多品種少量生産に適したフレキシブルなセル生産方式や並列的工程では、一つの製造セルで複数の品種が生産され、さらに、生産される品種が頻繁に変更されるため、製造現場の作業者は、そのための段取り替え作業を頻繁に行う必要がある。現在、セル生産方式や並列的工程での生産方式では、計画作業者の経験や勘に基づいて生産計画が組まれている。このため、効率良く且つ誤りなく製造セルを制御することが求められている。
【0004】
このような課題を解決するため、特許文献1には、製品を製造するための複数の製造機械を有する製造セルと通信する通信装置と、製品の製造に係る製造セル単位の第1製造情報を取得する取得部と、第1製造情報に基づいて複数の製造機械毎の複数の第2製造情報を生成する第1生成部と、複数の第2製造情報を通信装置によって対応する複数の製造機械のそれぞれに送信する送信部と、通信装置を介して複数の製造機械のそれぞれから、第2製造情報に対応する製造機械毎の情報に係る第3製造情報を受信する受信部と、複数の製造機械からの複数の第3製造情報に基づいて製造セル単位の第4製造情報を生成する第2生成部と、第4製造情報を出力する出力部と、を有するセルコントロールシステムが記載されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に記載された発明は、ライン生産方式であって、いつも同じ順序で加工機とロボットを流れていく場合には精度よく生産計画を組むことができるが、作業者が介在する場合、生産計画システムが作業者の作業を把握しにくい。このため、作業者が介在するセル生産方式や並列的な工程の場合に生産計画の精度が低下する恐れがある。
【0007】
本発明では、前記課題を鑑み、人が介在するセル生産方式、設備を複数操作する並列的工程において、稼働状況を的確に把握し、精度よく生産計画を組む生産計画システムを提供することを目的とする。
【課題を解決するための手段】
【0008】
前記課題を解決するための本発明の生産計画システムは、
【0009】
(1)作業者が介在するセル生産方式または設備を複数操作する並列的工程における、作業者によって運転される複数の設備が複数の品種の中間製品を一単位ずつ加工する工程の生産計画を組む生産計画システムであって、
前記中間製品の品種ごとの加工情報および加工数量を入力する入力部と、
複数の前記設備の停止時間と動作時間とを判断する、前記設備に備えられた運転検出センサーと、複数の前記設備において前記中間製品の入れ替えを検出する入替検出センサーと、複数の前記設備において前記作業者が作業中であるか作業待ちであるかを検出する作業検出センサーと、を有する稼働状況分析部と、
同一の前記中間製品の加工を繰り返すときに、前記稼働状況分析部の信号に基づいて、前記停止時間を、前段取り時間、後段取り時間、および作業待ち時間に分割し、品種ごとに、前記前段取り時間、前記動作時間、および前記後段取り時間を1単位として前記中間製品の加工時間を示す標準加工時間を得るとともに、前記複数の設備間で調整し前記加工数量を割り付ける演算部と、
前記演算部の割り付け結果に基づいて、各設備に加工指示を出す出力部と、
を有することを特徴とする生産計画システムである。
【0010】
本発明によれば、運転検出センサーで検出した設備の停止の時間を作業者の前段取り時間、後段取り時間、および作業待ち時間に分け、前段取り作業、設備の動作、後段取り作業を1単位としてそれに要する標準加工時間を算出することで、作業待ち時間が排除され、加工情報ごとに精度の高い標準加工時間を得ているので、加工する中間製品を適切に割り付けることができる。
【0011】
また本発明は、以下の態様であることが好ましい。
【0012】
(2)前記生産計画システムの演算部は、さらに、加工する前記中間製品の品種が切り替わるときに、前記停止時間の中から品種切替時間を抽出して標準品種切替時間を得るとともに、前記標準加工時間および前記標準品種切替時間に基づいて、前記複数の設備間で調整し前記加工数量を割り付ける。
【0013】
(3)前記運転検出センサーは、前記設備に備えられた表示灯の点灯を検出するセンサーである。
【0014】
(4)前記作業検出センサーは、前記設備の前に備えられており、前記作業者が作業しているか否かを判断する人感センサーである。
【0015】
(5)前記作業検出センサーは、前記設備に備えられており、前記作業者が作業しているか否かを判断する安全装置のセンサーである。
【0016】
(6)前記入替検出センサーは、中間製品とともに工程に流される識別データ若しくは前記設備に送られる加工データの入れ替えタイミングを読み取る読み取り機である。
【0017】
(7)前記稼働状況分析部は、作業者を識別する作業者識別部を有し、前記演算部では、作業者ごとに標準加工時間を算出する。
【0018】
(8)前記生産計画システムは、生産実績に基づいて、残りの加工する中間製品の再割り付けを繰り返す。
【0019】
(9)前記演算部は、前記入力部および前記稼働状況分析部の情報に基づいて生産数量を予測するシミュレーターを有し、前記演算部では、前記シミュレーターの結果をもとに加工する中間製品の割り付けを行う。
【0020】
(10)前記演算部は、強化学習を行う学習部を有する。
【0021】
(11)前記演算部では、前記加工数量の完了に要する時間を報酬とするQ学習を用いて強化学習を行う。
【0022】
(12)前記設備は、加工機、ロボット、PLC、搬送機、計測器、試験装置、プレス機、圧入器、印刷機、ダイカストマシン、射出成型機、食品機械、包装機、溶接機、洗浄機、塗装機、組立装置、実装機、木工機械、シーリング装置、および切断機からなる群から選択される一または複数の装置を含む。
【発明の効果】
【0023】
本発明によれば、運転検出センサーで検出した設備の停止の時間を作業者の前段取り時間、後段取り時間、および作業待ち時間に分け、前段取り時間、動作時間、後段取り時間を1単位として標準加工時間を算出することで、作業待ち時間が排除された、加工情報ごとに精度の高い標準加工時間を得ている。この結果、加工する中間製品を適切に割り付けることができ、作業効率を改善して、より短時間で多くの製品を生産することができる。その結果、設備稼働率の向上と、労働生産性の向上に寄与することができる。
【0024】
また、本発明によれば、バッチプロセスの前の工程である場合など、中間製品を時間内に加工しさえすればよく、作業者に自由度が大きい場合であっても、適切に生産情報を入手して効率よく生産計画を組むことができる。
【0025】
さらに、生産計画システムの演算部が、加工する中間製品の品種が切り替わるときの標準品種切替時間を得て、標準加工時間および標準品種切替時間に基づいて、設備に加工数量を割り付けることで、特に、金型、刃物の交換、原点出し、洗浄など、品種の切り替えに付随する作業時間が長い場合に、割り付けの精度を高めることができる。
【0026】
運転検出センサーを、設備に備えられた表示灯の点灯を検出するセンサーとすることにより、特に改造など加えることなく設備から容易に運転情報を入手することができる。
【0027】
作業検出センサーを人感センサーとすることにより、作業者がどの装置に関わる作業を行っているのかを容易に判断することができる。
【0028】
作業検出センサーを安全装置のセンサーとすることにより、作業者が安全装置を解除して、前段取り、後段取り、および品種切替のいずれかの作業を行っている場合に、作業者がどの設備の作業中であるかを容易に判断することができる。
【0029】
入替検出センサーを、中間製品とともに工程に流される識別データ、若しくは設備に送られる加工データの入れ替えタイミングを読み取る読み取り機とすることにより、中間製品とともに作業指示書などが流される場合には、作業指示書に書かれた識別記号を読み取ってどの中間製品を加工しているか識別することができる。また、加工する中間製品の加工プログラムがネットワークから送られてくる場合には、加工プログラムの書き込みをもって品種の切り替えと判断することができる。
【0030】
稼働状況分析部が、作業者を識別する作業者識別部を有し、演算部では、作業者ごとに標準加工時間を算出することにより、複数の作業者が存在する場合に、作業者を識別することで、作業者ごとの前段取り時間、後段取り時間、品種切替時間を特定することができる。また、作業者によって作業効率に差がある場合、割り付けの精度を高めることができる。
【0031】
生産計画システムが、生産実績に基づいて、残りの、将来加工する中間製品の再割り付けを繰り返すことにより、設備の稼働スタート時だけでなく、途中段階でも再割り付けを行って、突発の故障や割込みがあった際にも、適切に生産計画を修正することができる。
【0032】
演算部が、入力部および稼働状況分析部の情報に基づいて生産数量を予測するシミュレーターを有し、演算部では、シミュレーターの結果をもとに加工する、中間製品の割り付けを行う。演算部が、シミュレーターを有することで、簡単なアルゴリズムで精度の高い生産計画を組むことができる。演算部が、強化学習を行う学習部を有することによって、演算のスピードを速くすることができる。
【0033】
演算部が、加工数量の完了に要する時間を報酬とするQ学習を用いて強化学習を行い、Q学習で加工数量の完了に要する時間を報酬とすることにより、加工の完了時間をより早くするよう効率よく割り付けすることができる。
【0034】
設備が、加工機、ロボット、PLC、搬送機、計測器、試験装置、プレス機、圧入器、印刷機、ダイカストマシン、射出成型機、食品機械、包装機、溶接機、洗浄機、塗装機、組立装置、実装機、木工機械、シーリング装置、および切断機からなる群から選択される一または複数の装置を含む場合、これらの装置に生産計画システムを適用させることにより、設備を用いた工程の生産計画を効率よく適切に組むことができる。
【図面の簡単な説明】
【0035】
【
図1】
図1は、本発明に係る実施の形態1の生産計画システムの構成を模式的に示す図である。
【
図2】
図2は、実施の形態1における稼働状況分析部とシミュレーターが実行する処理を、タイムチャートとして説明する図である。
【
図3】
図3は、実施の形態1において作業者がどの機械の操作を優先するか判断するアルゴリズムを示す。
【
図4】
図4は、中間製品を各加工機に割り付ける組み合わせの数を算出する考え方を示す模式図である。
【
図5】
図5は、本発明に係る実施の形態2において学習の進め方を示す説明図である。
【発明を実施するための形態】
【0036】
以下、本発明の実施の形態について説明する。
本発明の生産計画システムは、作業者によって運転される複数の設備が複数の品種の中間製品を1単位ずつ加工する工程の生産計画を組む生産計画システムであって、
中間製品の品種ごとの加工情報および加工数量を入力する入力部と、
複数の設備の停止時間と動作時間とを判断する、設備に備えられた運転検出センサーと、複数の設備において中間製品の入れ替えを検出する入替検出センサーと、複数の設備において作業者が作業中であるか作業待ちであるかを検出する作業検出センサーと、を有する稼働状況分析部と、
同一の中間製品の加工を繰り返すときに、稼働状況分析部の信号に基づいて、停止時間を、前段取り時間、後段取り時間、および作業待ち時間に分割し、品種ごとに、前段取り時間、動作時間、および後段取り時間を1単位とした、中間製品の加工時間を示す標準加工時間を得るとともに、前記複数の設備間で調整し前記加工数量を割り付ける演算部と、
前記演算部の割り付け結果に基づいて、各設備に加工指示を出す出力部と、
を有する。
【0037】
本発明において、「作業者によって運転される複数の設備が中間製品を1単位ずつ加工する工程」とは、前段取り作業と、装置が自動で動作する中間製品の加工作業と、後段取り作業とを1単位の標準作業とする工程のことである。そして、1単位の標準作業を完了するために要する時間を標準加工時間と称する。ここで、前段取り作業とは、設備が停止した状態で、中間製品である対象物を作業者が手作業で設備にセットする作業である。また、後段取り作業とは、設備が停止した状態で、作業者が設備から中間製品を手作業で取り外す作業のことである。そして、1回の前段取り作業を行う時間が前段取り時間であり、1回の後段取り作業を行う時間が後段取り時間である。
【0038】
本発明の生産計画システムの実施形態をより具体的に説明することを目的として、図面及び以下の説明では、複数の設備Mのそれぞれに、符号M1、M2、M3・・・Mmを付して識別している。また、複数の種類の中間製品Pに対して品種ごとに符号P1、P2、P3・・・Pnを付して識別し、中間製品Pの品種ごとに定められた加工数量を符号Q1、Q2、Q3,・・Qnで表している。つまり、品種ごとの加工数量は、表1に示すように、同一の添字を付して対応させている。
【0039】
【0040】
生産計画の作成のプロセスは、複数の設備(M1,M2,M3・・・Mm)を用い、複数の品種(P1,P2,P3・・・Pn)をそれぞれ所定の個数ずつ(Q1,Q2,Q3,・・Qn)製造するために要する合計時間が最も短くなるように、設備ごとに最適な加工順序を生産計画システムが設定する。具体的には、設備ごとに、例えばM1ではP1、P1、P1、P2、P2・・・、M2では、P3、P3、P2、P2、P2・・・などのような順序で生産する生産計画を立てる。
【0041】
なお、以下に於いては、中間製品の加工数量の総和を、Qtotal(=Q1+Q2+Q3・・・+Qn)で表す。
【0042】
稼働状況分析部が算出する前段取り時間、動作時間、後段取り時間は、品種ごとの実際の1単位の作業工程をセンサーによって検出し、それぞれの作業に要する時間を測定して得られる時間である。本明細書では、表2のように品種ごとのそれぞれの作業に対応した時間に、変数を設定して説明する。なお、品種切替時間の前の添字と後の添字は、それぞれが切替前の品種と切替後の品種に対応する。また、動作時間のことを、設備が自動で動作して実際に中間製品を加工している正味時間との意味で、特に「正味加工時間」と特定して記載することもある。
【0043】
【0044】
品種Pkの前段取り時間はTprek、正味加工時間はTnetk、後段取り時間はTpostkで示され、品種iから品種jへの切り替えに要する品種切替時間はTswijで示される。なおi=jの時(品種切替が生じない時)は、Tswij=0である。
【0045】
本発明において、前段取り時間、動作時間、および後段取り時間の和である標準加工時間の正確な値を得るために、複数のデータを蓄積し平均をとることが好ましい。同様に、標準品種切替時間の正確な値を得るために、切替のデータを蓄積し、精度を高めることが好ましい。
【0046】
前段取り時間と後段取り時間は、いずれも作業者が当該設備に関する作業を行っている時間のみをカウントし、他の装置の作業を行っている時間はカウントしない。設備の停止時間の中の前段取り時間と後段取り時間の検出は、作業者が作業している設備を検出する作業検出センサーによって実施することができる。
【0047】
品種切替時間は、1単位の標準作業が完了した後、作業者が設備に対して異なる品種の加工を行うために新たに必要となった作業時間のことである。品種切替時間は、設備が停止していて、且つ作業者が停止している設備に対して作業を行っている時間から、通常の後段取り時間と、前段取時間とを減じることで特定することができる。標準品種切替時間は、品種切替時間は、品種切り替え時間を複数測定し、平均値をとって得ることができる。あるいは、設備を停止した状態で、品種の切替作業のみを模擬的に行って、標準時間を正確に測定することができる。
なお、品種切替時間が生じない中間製品を加工する場合には、品種切替時間を考慮することなく適用することができる。
【0048】
作業待ち時間とは、設備が休止していることが運転検出センサーによって検出されており、且つ、作業検出センサーによってその装置で作業している作業者がいない時間のことである。すなわち、設備が動作可能であるにも拘わらず、休止している時間を指す。
【0049】
品種ごとの前段取り時間、動作時間、後段取り時間は、設備ごとに中間製品の品種と加工数量を割り当てる生産計画を作成する都度、取得してもよい。あるいは、長期間にわたって取得し、その値を内部記憶装置または外部記憶装置に保存しておいてもよい。長期のデータを使用することによりデータの信頼性を高めることができる。
【0050】
また、標準加工時間は、作業者を識別して取得してもよいし、識別しなくてもよい。作業者によって習熟度の差が標準加工時間に影響を及ぼす場合は、誤差要因となるので識別すること望ましいが、影響が少ない場合作業者ごとにデータを取得しない方が、生産計画の作成が容易になる。
【0051】
以下、標準加工時間及び標準品種切替時間のデータを用いて生産計画を組む本発明の生産計画システムの実施の形態1と実施の形態2について、図面を参照しつつ、より詳細に説明する。
【0052】
<実施の形態1>
図1は、本実施の形態1の生産計画システムの構成を模式的に示す図である。
図1に基づいて実施の形態1の生産計画システム1を説明する。
【0053】
実施の形態1の生産計画システム1は、1人の作業者100が、3台の設備M1、M2、M3を操作して、複数の種類の中間製品を加工する場合について、最適な中間製品の加工順序の割り付けを行う生産計画システムの一例である。本実施の形態における設備M1、M2、M3は、一度に1つの中間製品を加工することのできる、同一の性能を有する加工機である。
【0054】
本実施の形態では、加工前の中間製品51はそれぞれ1個ずつ加工指示書41とともにトレー61に載せられてストックされている。加工前の中間製品51は1日分の加工数量が準備されている。また、加工後の中間製品は、加工前と同様に、それぞれ1個ずつ加工指示書とともにトレーに載せられてストックされる。加工後の中間製品は、1日分の加工数量が集まった段階で1ロットにまとめられ、次のバッチプロセスに送られる。このため、中間製品の加工順序に特に制限はなく、どのような順でも加工することができる。
【0055】
本実施の形態では、中間製品51を加工する際は、中間製品51をトレー61ごと各設備に備えられた専用台に載置する。専用台は入替検出センサー3を備えており、どの中間製品51の加工を行っているかを検出している。入替検出センサー3には、たとえば、加工指示書41のバーコード、2次元コード等の読み取り機や、またトレー61の無線タグとの通信が可能な通信機などを適用することができる。なお、加工が終わった中間製品51はトレー61に戻され、トレー61ごと交換されるので、トレー61の交換の時をもって中間製品51の入れ替えが行われたと判断することができる。
【0056】
なお、入替検出センサー3の構成は特に限定されない。コードの読み取り装置や無線タグとの通信装置に限らず、設備にセットされた中間製品51の画像認識装置などであってもよく、その他どのような装置を適用してもよい。
【0057】
3台の設備M1,M2,M3の前には、それぞれ、作業検出センサー4としての感圧センサーが敷かれている。感圧センサーは、設備M1,M2,M3の停止中に作業者100が上に載ったときだけ信号を出力し、作業者100がどの設備に関する作業を行っているか判別する。また、作業者100が一時的に短時間載った場合、作業検出センサー4は、フィルター処理によって信号を出力しない。作業検出センサー4としては、感圧センサーに限らず、赤外線センサー、レーダー、距離計など作業者100の存在や動きを感知するセンサーが適用可能である。そのほかにも、カメラで常時撮影し、画像認識によって作業者100がどの設備の作業をしているかを把握するカメラと画像処理装置を、作業検出センサー4として用いることもできる。
【0058】
3台の設備M1、M2、M3は、それぞれが、運転と停止を表示する表示灯22を備えている。それぞれの表示灯22と対となるように、表示灯22の横に光センサーからなる運転検出センサー21が配置されており、設備の運転状態を検出している。運転検出センサー21の形態は、光センサーに限定されない。たとえば、表示灯の電源を適切な電圧となるよう分圧し、直接、それぞれの装置の稼働状況分析部11、12、13に接続して電圧値を入力することにより運転検出センサー21として機能させてもよい。
【0059】
本実施の形態においては、それぞれの設備M1、M2、M3に接続されているPLC(Programmable Logic Controller)が、各設備のセンサーの信号を集約する稼働状況分析部11,12,13として機能する。稼働状況分析部11、12、13は、無線を通して、演算部となるコンピューター2に設備M1、M2、M3の稼働状態を示す信号を送っている。
【0060】
コンピューター2とPLCは一体的に運用されるため、コンピューター2とPLCの両方が、稼働状況分析部の機能を分散して受け持つ構成とすることができる。また、コンピューター2が演算部と稼働状況分析部の両方を兼ねており、各センサーがコンピューター2に直接接続されて、必要とされる処理を行っても良い。
【0061】
コンピューター2には、出力部と入力部を兼ねるタッチパネル5がつながっている。タッチパネル5からは、その日の加工予定の中間製品の種類、数量が入力される。なお、入力部は、手作業による入力を受け付けるものに限定されず、信号を入力する通信ケーブル、無線を経由したデジタル情報を演算部に送るインターフェースボードであってもよい。
【0062】
また、タッチパネル5は、コンピューター2の演算部による演算処理で得られた、各設備の中間製品51の加工順序を順に表示する。それぞれの設備が加工する直近の中間製品51については、各設備M1、M2、M3のPLCにつながるモニター42に表示されるようになっており、作業者100は、次に加工する中間製品51の指示を的確に受け取ることができる。また、各設備M1、M2、M3は、PLCからの命令に従って、次の作業に必要なトレー61を順次送り出す機構を備えていてもよい。
【0063】
次に、本実施の形態の生産計画システムのシミュレーターが実行する、中間製品51を各設備M1、M2、M3に割り付けてPLCに命令する処理について説明する。
【0064】
本実施の形態では、機械学習によって生産計画が指示されるのではなく、一定のルールに従って、演算部のシミュレーターですべての組み合わせについてシミュレーションを行い、最も加工時間が短くなる加工順序を選定し、指示を送る。
【0065】
本実施形態のシミュレーターによるシミュレーションの処理について説明する。
図3は、作業者の行動を指示するためにシミュレーターが実行するアルゴリズムの一例を示すフローチャートである。
【0066】
このアルゴリズムでは、作業者100の手が空いた時点で、できるだけ早く次の設備を動作させるように作業を割り付ける。作業者の手が空いたとき、ステップS1が開始となる。次のステップS2では、作業待ちとなっている設備が1台であるか否かが判断される。作業待ちの設備が1台であれば、ステップS2がNOとなり、処理はステップS5に移り、該当する設備にセットされている中間製品51の後段取り、品種の切替作業、次の中間製品51の前段取り、加工スタートの一連の作業を続けて行う。作業待ちとなっている設備が複数であれば、ステップS2がYESとなり、処理はステップS3に移る。ここで、作業待ち設備のスタートに必要な時間が算出される。次にステップS4で、最も短時間で加工を開始できる設備が選定される。そして、ステップS5で、該当する設備にセットされている中間製品51の後段取り、品種の切替作業、次の中間製品51の前段取り、加工スタートの一連の作業を続けて行う。
【0067】
以上のアルゴリズムに従って、すべての中間製品51の加工が完了するまで、シミュレーションを繰り返し、すべてのパターンの中から最も早く加工予定数量の加工を完了できるパターンを見出すことにより、中間製品51の加工順序を各設備M1、M2、M3に適切に割り付けることができる。
【0068】
中間製品51を設備に割り付けて加工するためにシミュレーターが繰り返し行う演算の概要を、
図4を用いて説明する。
図4においては、加工前の中間製品51のうち、品種P
1を図形の丸印で示し、品種P
2を正方形で示し、品種P
3を三角形で示している(
図4(A))。
【0069】
以下においては、より簡潔に説明するための例示として、計10個の中間製品51の加工を、同一仕様の3台の設備M1,M2,M3に割り付けて行う場合について説明する。ここで、10個の中間製品51の内訳は、品種P1が3個(Q1=3)、品種P2が4個(Q2=4)、品種P3が3個(Q3=3)となっている。
【0070】
3台の設備M
1、M
2、M
3に、品種P
1、P
2、P
3からなる計10個の中間製品51を割り振る場合、全ての組み合わせの数は、
図4(B)に示すように、10個のP
1、P
2、P
3を1列に並べて、列の途中の2カ所をカットして3つの集合に分けた時の組み合わせの数に等しい。
【0071】
すなわち、3品種10個の中間製品51を1列に並べるときの組み合わせの数は、
(3+4+3)!/(3!×4!×3!)=4200通りである。この列を2か所カットして3つの集合に分けると考えることによって、中間製品51を3台の設備M1、M2、M3に割り付けることができる。
【0072】
10個の中間製品の列を2か所カットする場合の数は11+10+9+8+7+6+5+4+3+2+1=66通りである。ここには、列の末端をカットする場合の、0個の集合を形成して、中間製品51を2つまたは1つのグループに分ける場合も含まれる。4200×66=277,200通りが、Q
1=3、Q
2=4、Q
3=3からなる中間製品51を3台の設備M
1,M
2,M
3で加工する場合のパターンの総数となる(
図4(C))。
【0073】
すべての組み合わせによるパターンに対して、前段取り時間、賞味加工時間、後段取り時間、および切替前と切替後の品種ごとによって異なる品種切替時間を用い、作業者100の作業が重なる時間帯は作業待ち時間を設定したシミュレーターによる計算で、最も早い加工順序を割り付けることができる。
【0074】
本実施の形態の277,200通りのシミュレーションの中の1つの例として、以下の加工順序を採用した場合の各設備の生産計画を決定する方法について、
図2のタイムチャートと
図3のアルゴリズムを用いて説明する。
・ 設備M
1による中間製品の加工順序を、P
1→P
1→P
3とする。
・ 設備M
2による中間製品の加工順序を、P
2→P
2→P
1→P
2とする。
・ 設備M
3による中間製品の加工順序を、P
3→P
3→P
2とする。
【0075】
設備が稼働を開始した時刻(t0)では、作業者100の手が空いており、ステップS1の状態となっている。このとき、3台の設備M1、M2、M3が加工待ちの状態になっており、ステップS2がYESとなる。シミュレーターは、それぞれの設備の動作開始までの時間を計算し(ステップS3)、最も前段取りの短い品種P3を加工する設備M3を選定して(ステップS4)、作業者100が前段取り作業を開始することを決定する(ステップS5)。
設備M3の前段取りが完了した時刻(t1)で再び作業者100の手が空き、ステップS1の状態となる。このとき設備M1と設備M2が加工待ちになっており、ステップS2がYESとなる。シミュレーターは、設備M1と設備M2の動作開始までの時間を計算し(ステップS3)、前段取り時間のより短いP2を加工するM2を選定して(ステップS4)、作業者100が前段取り作業を行うことを決定する。
設備M2の前段取りが完了した時刻(t2)で再び作業者100の手が空くが、このときは設備M1のみが加工待ちになっているためステップS2がNOとなり、シミュレーターの処理がステップS5に移り、作業者100が設備M1の前段取り作業を行うことを決定する。
このあと、3台の設備M1、M2、M3が全て稼働する時間では、作業者100は手の空いた状態で待機している。その後、設備M2の動作時間が最も早く終了するので(t4)ステップS2がNOとなり、シミュレーターは作業者100が設備M2の後段取り作業と、それに続く品種P2の前段取り作業を開始することを決定する。
【0076】
このように、シミュレーターは、
図3に示したアルゴリズムに従って、3台の設備M
1、M
2、M
3に対して、作業者100による1単位の標準作業と、品種切り替え作業を割り付ける。そして、設備の稼働開始時から、規定数の中間製品51の加工が完了するまでの時間を算出することができる。
【0077】
以上のシミュレーションをすべてのパターンについて行うことで、最も加工時間の短くなる加工順序を決定し、生産計画を作成することができる。また、実際の加工作業の途中においても、随時残りの個数と、設備の稼働状態を用いてシミュレーションを行い、生産計画を適宜変更することができる。
【0078】
なお、本実施の形態のシミュレーションの方法では、加工する中間製品51の個数が増えると加速度的にパターンの数が増え、演算部の負荷が増大する。たとえば、中間製品51の数をそれぞれ2倍の計20個とした、Q1=6、Q2=8、Q3=6で割り付けを行う場合のパターンの総数は、7,682,154,480通りとなる。中間製品51の数を、それぞれ10倍の計100個とした、Q1=30、Q2=40、Q3=30で割り付けを行う場合のパターンの総数は、約1.07×1047通りとなる。本実施の形態の生産計画システムは、品種と加工する中間製品51の個数に上限がある場合の生産計画の作成に、特に適している。
【0079】
<実施の形態2>
本実施の形態では、品種と加工する中間製品51の個数が多い場合であっても、効率的に加工順序を割り付けて生産計画を作成するシステムについて説明する。
【0080】
本実施の形態では、実施の形態1と同じ設備に対して、同じ種類の中間製品を割り付ける。実施の形態1と異なる点は、演算部のシミュレーターが、Q学習の手法を用いた機械学習によって、最適な加工順序を割り付けている点にある。実施の形態1と同一の構成を有するものについては、同一符号を付与して説明を割愛する。
【0081】
Q学習とは、特定の環境状態sの下で、状況sに対応するための行動aを選択し、行動aの価値を示す価値関数Q(s,a)を求めて、価値関数Q(s,a)が最大値となる行動aを最適な行動として選択することを繰り返しながら、より望ましい結論を導き出す学習方法である。
【0082】
以下、Q学習の進め方について説明する。価値関数Qは、以下の式(1)に従って求められ、得られた値はQ値と呼ばれる。
Q(s,a)←Q(s,a)+αr ・・・(1)
ここで、r:報酬
s:状態
a:状態sで選択した行動
α:学習係数
【0083】
式(1)に示されている報酬rとは、行動aによって状態sが変化したことに対して、行動aを評価する指標である。報酬rは、あらかじめ設定することができる。通常、報酬rには、行動aによって状態sが好ましい変化をすればQ値が増加するように正の値を設定し、行動aの結果が好ましくない変化をすればQ値が減少するように負の値を設定する。本実施の形態では、繰り返しの試行によって前回よりも加工に要するトータルの時間が短くなった場合には報酬rを1と設定し、同じ値である場合には報酬rを0と設定し、長くなった場合には報酬rを-1と設定して学習を進めることができる。
【0084】
本実施の形態において、状態sは、
s1:P1の未加工の個数、
s2:P2の未加工の個数、
s3:P3の未加工の個数、
s4:M1が直前まで加工していた品種、
s5:M2が直前まで加工していた品種、
s6:M3が直前まで加工していた品種、
s7:作業待ちの設備、
との7次の配列変数となる。
状態sで選択した行動aは、
a1:次の加工を開始する設備、
a2:次の加工を開始する品種、
の2次の配列変数となる。
なお、s7の作業待ちの設備に関して、設備Miが動作中であれば「1」、作業待ちであれば「0」として表し、例えば、M3:動作中、M2:作業待ち、M1:作業待ちであれば、
s7=4(0b100)
として3ビットの2進数をもとに表記することができる。
【0085】
簡略化のため上記s
1、s
2、s
3のみ抽出し、3次元の図を用いた加工の進行を学習する様子を、
図5に模式的に示す。つまり、
図5では、3×4×3(s
1,s
2,s
3)の配列を示しているが、実際の学習では、
図5では隠されている状態(s
4,s
5,s
6,s
7)を加え3×4×3×3×3×3×3の状態の配列に基づいて学習を行っている。
【0086】
図5は、原点をスタートし、所定の中間製品の加工数量である(s
1,s
2,s
3)=(3,4,3)までに至る複数の道筋を、設備ごとに線種を変えた矢印で示している。M
1による加工は実線、M
2による加工は破線、M
3による加工は二重線で示している。
【0087】
Q学習では、機械学習がランダムに割り付けたQ値に従って選択し中間製品を割り付け繰り返し試行し収束させていく。
以下具体的にn回目の学習の方法について説明するが、式(1)の適用の方法はこれに限定されない。
【0088】
開始時刻t0では、
P1、P2、P3の加工数が0(0,0,0)であるので、未加工数は(s1,s2,s3)=(3,4,3)である。スタートであるので、仮に、M1はP1,M2はP2、M3はP3と初期設定し、(s4,s5,s6)=(1,2,3)と初期設定する。
各設備は、作業待ち状態で開始するので、(M3,M2,M1)=(0,0,0)すなわちs7=0(0b000)となり、(s1,s2,s3,s4,s5,s6,s7)=(3、4,3,1,2,3,0)と状態を表記できる。
また、行動aは3台の設備に3つの品種が可能であり、あらかじめ割り付けられている9(3×3)個のQ値の中から最も数値の高い行動を選択する。(ここではM3がP3の加工を開始し、a1=3、a2=3)
【0089】
最初の前段取り作業が完了したt1では、
P3の残り個数が減り、P1、P2、P3の加工数は(0,0,1)、未加工数は(s1,s2,s3)=(3,4,2)となる。
s4~s6は変化なく(s4,s5,s6)=(1,2,3)である。
s7に関し、作業待ちはM1、M2であり、(M3,M2,M1)=(1,0,0)すなわち
s7=4(0b100)となり、
(s1,s2,s3,s4,s5,s6,s7)=(3,4,2,1,2,3,4)
と状態を表記できる。
また、行動aは2台の設備に3つの品種が可能であり、あらかじめ割り付けられている6(2×3)個のQ値の中から最も数値の高い行動を選択する。(ここではM2がP2の加工を開始し、a1=2、a2=2を選択)
【0090】
次に時刻t2では、
P2の残り個数が減り、加工数は(P1,P2,P3)=(0,1,1)であるので、未加工数は(s1,s2,s3)=(3,3,2)である。
s4~s6は変化なく(s4,s5,s6)=(1,2,3)である。
s7に関し、作業待ちはM1であり、(M3,M2,M1)=(1,1,0)すなわち
s7=6(0b110)となり、
(s1,s2,s3,s4,s5,s6,s7)=(3,3,2,1,2,3,6)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3(1×3)個のQ値の中から最も数値の高い行動を選択する。(ここではM1がP1の加工を開始し、a1=1、a2=1を選択)
【0091】
時刻t4では、
P1の残り個数が減り、加工数は(P1,P2,P3)=(1,1,1)、未加工数は(s1,s2,s3)=(2,3,2)となる。
s4~s6は変化なく(s4,s5,s6)=(1,2,3)である。
s7に関し、作業待ちはM2であり、(M3,M2,M1)=(1,0,1)すなわち
s7=5(0b101)となり、
(s1,s2,s3,s4,s5,s6,s7)=(2,3,2,1,2,3,5)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3(1×3)個のQ値の中から最も数値の高い行動を選択する。(ここではM2がP2の加工を開始し、a1=2、a2=2を選択)
【0092】
時刻t7では、
P2の残り個数が減り、加工数は(P1,P2,P3)=(1,2,1)、未加工数は(s1,s2,s3)=(2,2,2)となる。
s4~s6は変化なく(s4,s5,s6)=(1,2,3)である。
s7に関し、作業待ちはM1であり、(M3,M2,M1)=(1,1,0)すなわち
s7=6(0b110)となり、
(s1,s2,s3,s4,s5,s6,s7)=(2,2,2,1,2,3,6)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3個(1×3)のQ値の中から最も数値の高い行動を選択する。(ここではM1がP1の加工を開始し、a1=1、a2=1を選択)
【0093】
時刻t10では、
P1の残り個数が減り、加工数は(P1,P2,P3)=(2,2,1)、未加工数は(s1,s2,s3)=(1,2,2)となる。
s4~s6は変化なく(s4,s5,s6)=(1,2,3)である。
s7に関し、作業待ちはM3であり、(M3,M2,M1)=(0,1,1)すなわち
s7=3(0b011)となり、
(s1,s2,s3,s4,s5,s6,s7)=(1,2,2,1,2,3,3)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3個(1×3)のQ値の中から最も数値の高い行動を選択する。(ここではM3がP3の加工を開始し、a1=3、a2=3を選択)
【0094】
時刻t13では、
P3の残り個数が減り、加工数は(P1,P2,P3)=(2,2,2)、未加工数は(s1,s2,s3)=(1,2,1)となる。
s4~s6は変化なく(s4,s5,s6)=(1,2,3)である。
s7に関し、作業待ちはM2であり、(M3,M2,M1)=(1,0,1)すなわち
s7=5(0b101)となり、
(s1,s2,s3,s4,s5,s6,s7)=(1,2,1,1,2,3,5)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3個(1×3)のQ値の中から最も数値の高い行動を選択する。(ここではM2がP1の加工を開始し、a1=2、a2=1を選択)
【0095】
時刻t17では、
P1の残り個数が減り、加工数は(P1,P2,P3)=(3,2,2)、未加工数は(s1,s2,s3)=(0,2,1)となる。
M2の加工する品種がP1に変わったので(s4,s5,s6)=(1,1,3)である。
s7に関し、作業待ちはM1であり、(M3,M2,M1)=(1,1,0)すなわち
s7=6(0b110)となり、
(s1,s2,s3,s4,s5,s6,s7)=(0,2,1,1,1,3,6)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3個(1×3)のQ値の中から最も数値の高い行動を選択する。(ここではM1がP3の加工を開始し、a1=1、a2=3を選択)
【0096】
時刻t21では、
P3の残り個数が減り、加工数は(P1,P2,P3)=(3,2,3)、未加工数は(s1,s2,s3)=(0,2,0)となる。
M1の加工する品種がP3に変わったので(s4,s5,s6)=(3,1,3)である。
s7に関し、作業待ちはM3であり、(M3,M2,M1)=(0,1,1)すなわち
s7=3(0b011)となり、
(s1,s2,s3,s4,s5,s6,s7)=(0,2,0,3,1,3,3)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3個(1×3)のQ値の中から最も数値の高い行動を選択する。(ここではM3がP2の加工を開始し、a1=3、a2=2を選択)
【0097】
時刻t25では、
P2の残り個数が減り、加工数は(P1,P2,P3)=(3,3,3)、未加工数は(s1,s2,s3)=(0,1,0)となる。
M3の加工する品種がP2に変わったので(s4,s5,s6)=(3,1,2)
s7に関し、作業待ちはM2であり、(M3,M2,M1)=(1,0,1)すなわち
s7=5(0b101)となり、
(s1,s2,s3,s4,s5,s6,s7)=(0,1,0,3,1,2,5)
と状態を表記できる。
また、行動aは1台の設備に3つの品種が可能であり、あらかじめ割り付けられている3個(1×3)のQ値の中から最も数値の高い行動を選択する。(ここではM2がP2の加工を開始し、a1=2,a2=2を選択)
【0098】
t34ですべての加工が完了し、未加工数は(s1,s2,s3)=(0,0,0)
となり、すべての中間製品を加工するために必要な総加工時間がt34として得られる。
【0099】
それぞれの前段取り作業の開始時刻で、どの設備でどの品種を加工するかの選択は、その時刻における「状態s」に基づいたそれぞれの「行動a」の結果となるQ値が最も大きくなる行動を選択しn回目の試行の総加工時間が得られる。
【0100】
得られた総加工時間が、n-1回目の試行よりも小さいときには通過したポイントのQ値をそれぞれαずつ減じ、大きいときにはαずつ加え、なお同じ場合には数値を変えない。
なお、各状態におけるQ値は、最初ランダムに割り付けられ、試行を繰り返しながら最適化されている。
【0101】
初回の試行で、演算部は、7次の各状態(s
1~s
7)に対して、ランダムにQ値を割り付け、機械学習から与えられた指示に従ってシミュレーターが時間を計算しながら
図3に示したアルゴリズムに従って、計画されたすべての中間製品の割り付けを完了する。初回(n=1)の試行では、総加工時間の初期値を得る。初回の試行での報酬は0であるので、通過した中間製品を1個割り付けた行動aごとのQ値に変更はない。
【0102】
2回目の試行では、一部Q値の大きさに関わらず意図的に初回とルートを変更する箇所を設け、それ以外は選択した設備と品種による1単位の標準作業という行動aに与えられるQ値の大きい側を選択し、生産計画の完成を目指す。このため、総加工時間は初回(n=1)と同一にならず、2回目の試行の適否を判断できる。
【0103】
3回目以降は、選択した設備と品種による1単位の標準作業という行動aに与えられるQ値の大きい側を選択し、生産計画の完成を目指す。
【0104】
繰り返し試行を行うことにより、加工時間の短くなる加工順序の割り付けは収束するようになってくる。試行ごとの加工時間の減少分をモニターしながら試行の適正回数を判断し、機械学習のアウトプットとすることが好ましい。
【0105】
ここで、Q値の大きさのみで判断する2回目の試行の場合など報酬が0の場合、同じ経路を繰り返したどり収束しなくなるので、行動選択において、ある確率でランダムな選択を行うε greedy法を用いることが望ましい。ε greedy法では、単純にQ値の大きさだけで判断するのではなく、一定の割合でランダムに判断する要素を持っているので2回目の試行に限らず報酬0の場合が生じても、総加工時間を短くするよう作用させることができる。
【0106】
Q値の算出方法は、式(1)のほか、学習係数、割引率を考慮した下記の式(2)を用いてもよい。下記式は、Q値の発散を防止する効果があり、適正に機械学習を進めることができる。
Q(s,a)←Q(s,a)+α(r+γmaxQ(snext、anext)
-Q(s,a)) ・・・(2)
ここで、 r:報酬
s:状態
a:状態sで選択した行動
α:学習係数
γ:割引率
maxQ(snext、anext)次の状態で取りうるQ値のうちの最大値。
【0107】
また、本発明の生産計画システムは、機械学習に加えて、ニューラルネットワークを用いた深層学習を同時に行ってもよい。
【0108】
以上説明したように、本実施の形態によれば、設備が休止している時間を、前段取り時間、作業待ち時間、後段取り時間に分けることにより、前段取り時間、作業時間、後段取り時間
を1単位とする標準加工時間を得ることができるので、人が介在するセル生産方式、設備を複数操作する並列的工程において、稼働状況を的確に把握し、精度よく生産計画を組む生産計画システムを提供することができる。
【符号の説明】
【0109】
1 生産計画システム
2 コンピューター
3 入替検出センサー
4 作業検出センサー
5 タッチパネル
11,12,13 稼働状況分析部
21 運転検出センサー
22 表示灯
41 加工指示書
42 モニター
51 中間製品
61 トレー
100 作業者
M1,M2,M3 設備