(57)【特許請求の範囲】
【請求項１】
複数のジョブのそれぞれを複数のマシンのいずれかに割り当てる生産管理装置であって、
前記ジョブを識別するジョブ識別情報の入力を受け付けるジョブ受付部と、
前記ジョブ識別情報が示すジョブが実行されているか否かを示すジョブステータス情報を、前記ジョブ識別情報に対応づけて記憶するジョブステータス記憶部と、
実行されているジョブのジョブ識別情報を示すマシンステータス情報を、前記マシンを識別するマシン識別情報に対応づけて記憶するマシンステータス記憶部と、
前記ジョブステータス記憶部から、前記複数のジョブのうち実行されていないジョブのジョブ識別情報を抽出し、当該抽出されたジョブ識別情報が示すジョブの実行時間を求める第１の計算部と、
前記マシンステータス記憶部から、ジョブを実行していないマシンのマシン識別情報を抽出し、当該抽出されたマシン識別情報が示すマシンが前記抽出されたジョブ識別情報が示すジョブを実行するための準備に要する切替時間を求める第２の計算部と、
前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間との和を求め、当該求めた和が最小となるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行されていないジョブを割り当てることにより、当該ジョブを実行するマシンを決定する決定部と、
前記決定部により決定されたジョブに関する情報を出力する出力部と、
を備えることを特徴とする生産管理装置。
【請求項２】
前記ジョブ受付部が受け付けたジョブが実行されている場合に、当該ジョブの実行が終了するまでの所要時間を所定のタイミングで求める第３の計算部を更に備え、
前記マシンステータス記憶部は、前記第３の計算部により計算された所要時間を、当該ジョブを実行するマシンを識別するマシン識別情報に対応づけて記憶し、
前記決定部は、前記マシンステータス記憶部に記憶される前記所要時間がゼロになった場合に、前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間との和を求め、当該求めた和が最小となるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行中でないジョブを割り当てる、
ことを特徴とする、請求項１に記載の生産管理装置。
【請求項３】
前記マシンステータス記憶部に記憶される前記所要時間がゼロになった場合に、前記所要時間に対応するマシン識別情報が示すマシンが実行するジョブを前記ジョブステータス記憶部から削除するジョブ削除部を更に備える、
ことを特徴とする、請求項２に記載の生産管理装置。
【請求項４】
複数のジョブのそれぞれを複数のマシンのいずれかに割り当てる生産管理システムにおいて、
前記ジョブを識別するジョブ識別情報の入力を受け付けるジョブ受付部と、
前記ジョブ識別情報が示すジョブが実行されているか否かを示すジョブステータス情報を、前記ジョブ識別情報に対応づけて記憶するジョブステータス記憶部と、
実行されているジョブのジョブ識別情報を示すマシンステータス情報を、前記マシンを識別するマシン識別情報に対応づけて記憶するマシンステータス記憶部と、
前記ジョブステータス記憶部から、前記複数のジョブのうち実行されていないジョブのジョブ識別情報を抽出し、当該抽出されたジョブ識別情報が示すジョブの実行時間を求める第１の計算部と、
前記マシンステータス記憶部から、ジョブを実行していないマシンのマシン識別情報を抽出し、当該抽出されたマシン識別情報が示すマシンが前記抽出されたジョブ識別情報が示すジョブを実行するための準備に要する切替時間を求める第２の計算部と、
前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間の和を求め、当該求めた和が最小となるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行されていないジョブを割り当てることにより、当該ジョブを実行するマシンを決定する決定部と、
前記決定部により決定されたジョブに関する情報を出力する出力部と、
を備えた第１の生産管理装置と、
前記ジョブ識別情報を前記第１の生産管理装置へ送信する送信部と、
前記出力部により出力されたジョブに関する情報を受信する受信部と、
前記受信部が受信したジョブに関する情報に基づいて、前記複数のマシンのうち前記決定されたマシンに、前記受信したジョブに関する情報が示すジョブを実行させる制御を行う制御部と、
を備えた第２の生産管理装置と、
を備えることを特徴とする生産管理システム。
【請求項５】
複数のジョブのそれぞれを複数のマシンのいずれかに割り当てるコンピュータを、
前記ジョブを識別するジョブ識別情報の入力を受け付けるジョブ受付部、
前記ジョブ識別情報が示すジョブが実行されているか否かを示すジョブステータス情報を、前記ジョブ識別情報に対応づけて記憶するジョブステータス記憶部、
実行されているジョブのジョブ識別情報を示すマシンステータス情報を、前記マシンを識別するマシン識別情報に対応づけて記憶するマシンステータス記憶部、
前記ジョブステータス記憶部から、前記複数のジョブのうち実行されていないジョブのジョブ識別情報を抽出し、当該抽出されたジョブ識別情報が示すジョブの実行時間を求める第１の計算部、
前記マシンステータス記憶部から、ジョブを実行していないマシンのマシン識別情報を抽出し、当該抽出されたマシン識別情報が示すマシンが前記抽出されたジョブ識別情報が示すジョブを実行するための準備に要する切替時間を求める第２の計算部、
前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間との和を求め、当該求めた和が最小になるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行されていないジョブを割り当てることにより、当該ジョブを実行するマシンを決定する決定部、
前記決定部により決定されたジョブに関する情報を出力する出力部、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マシンの使用状況や所要時間に応じてジョブを振り分けるために好適な生産管理装置、生産管理システム及びプログラムに関する。
【背景技術】
【０００２】
製造業の生産形態は、品種や数量をまとめて行う生産形態から、多品種・少量に対応したより効率のよい生産形態へと技術シフトが進められている。
生産システムで、多品種・少量の生産に対応するためには、品種や数量が異なるワークを、生産ライン上でどのように効率的に処理するかが重要になる。
【０００３】
従来の生産管理システムの生産ラインは、例えば図２のように構成されている。各工程で作業を実施する作業ステーションには工作装置、組立装置などのマシンが設置されていて、作業ステーション間はコンベアなどの搬送装置によって接続されている。工程によっては作業ステーションを複数持ち、同じ作業を平行して実施できるように建設されている。ワーク（作業対象物）は、最初に工程１の作業を行う作業ステーションに投入され、工程２、工程３と進み、最終工程ｎで作業完了となる。
このような生産管理システムでは、急な注文や変更等、外的な諸要因により、ワークが工程を進む過程の計画が変更になると、計画の再作成等が必要になる場合がある。しかし計画の再作成は現場の技術者の勘や経験に頼ることになるため、結果的に生産効率の低下を招くこともある。
このような問題に鑑みて、従来からマシンの状況に応じて動的に生産計画を作成する方式は試みられている。
特許文献１に開示される生産管理システムは、マシンの動作状態を監視し、工程に到着したワークを、到着した順に空いているマシンに対して割り当てる。
【特許文献１】特開平１０−０３４４９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１に示される生産管理システムは、ワークが到着した順番通りに、投入するワークの順番を決定する。この順番に従って、空いているマシンのうち、どのマシンに投入するのが一番効率がよいかを検討し、ワークを投入すべきマシンを決定する。空いたマシンはその都度次のワークに対応する準備をしなければならない。待機しているワークの中に、空いたマシンの前の作業をそのまま引き継げるものがあっても、到着順により投入されるワークは決まってしまっている。このように、待機しているワークと、マシンの空く順番の組合せによっては、生産システムの効率を下げてしまうことがある。
【０００５】
本発明は、上記問題点を鑑みてなされたものであり、マシンの使用状況や所要時間に応じてジョブを振り分けるために好適な生産管理装置、生産管理システム及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の第１の観点に係る生産管理装置は、
複数のジョブのそれぞれを複数のマシンのいずれかに割り当てる生産管理装置であって、
前記ジョブを識別するジョブ識別情報の入力を受け付けるジョブ受付部と、
前記ジョブ識別情報が示すジョブが実行されているか否かを示すジョブステータス情報を、前記ジョブ識別情報に対応づけて記憶するジョブステータス記憶部と、
実行されているジョブのジョブ識別情報を示すマシンステータス情報を、前記マシンを識別するマシン識別情報に対応づけて記憶するマシンステータス記憶部と、
前記ジョブステータス記憶部から、前記複数のジョブのうち実行されていないジョブのジョブ識別情報を抽出し、当該抽出されたジョブ識別情報が示すジョブの実行時間を求める第１の計算部と、
前記マシンステータス記憶部から、ジョブを実行していないマシンのマシン識別情報を抽出し、当該抽出されたマシン識別情報が示すマシンが前記抽出されたジョブ識別情報が示すジョブを実行するための準備に要する切替時間を求める第２の計算部と、
前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間との和を求め、当該求めた和が最小となるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行されていないジョブを割り当てることにより、当該ジョブを実行するマシンを決定する決定部と、
前記決定部により決定されたジョブに関する情報を出力する出力部と、
を備える。
【０００７】
前記ジョブ受付部が受け付けたジョブが実行されている場合に、当該ジョブの実行が終了するまでの所要時間を所定のタイミングで求める第３の計算部を更に備え、
前記マシンステータス記憶部は、前記第３の計算部により計算された所要時間を、当該ジョブを実行するマシンを識別するマシン識別情報に対応づけて記憶し、
前記決定部は、前記マシンステータス記憶部に記憶される前記所要時間がゼロになった場合に、前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間との和を求め、当該求めた和が最小となるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行中でないジョブを割り当ててもよい。
【０００８】
前記マシンステータス記憶部に記憶される前記所要時間がゼロになった場合に、前記所要時間に対応するマシン識別情報が示すマシンが実行するジョブを前記ジョブステータス記憶部から削除するジョブ削除部を更に備えてもよい。
【０００９】
上記目的を達成するために、本発明の第２の観点に係る生産管理システムは、
複数のジョブのそれぞれを複数のマシンのいずれかに割り当てる生産管理システムにおいて、
前記ジョブを識別するジョブ識別情報の入力を受け付けるジョブ受付部と、
前記ジョブ識別情報が示すジョブが実行されているか否かを示すジョブステータス情報を、前記ジョブ識別情報に対応づけて記憶するジョブステータス記憶部と、
実行されているジョブのジョブ識別情報を示すマシンステータス情報を、前記マシンを識別するマシン識別情報に対応づけて記憶するマシンステータス記憶部と、
前記ジョブステータス記憶部から、前記複数のジョブのうち実行されていないジョブのジョブ識別情報を抽出し、当該抽出されたジョブ識別情報が示すジョブの実行時間を求める第１の計算部と、
前記マシンステータス記憶部から、ジョブを実行していないマシンのマシン識別情報を抽出し、当該抽出されたマシン識別情報が示すマシンが前記抽出されたジョブ識別情報が示すジョブを実行するための準備に要する切替時間を求める第２の計算部と、
前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間の和を求め、当該求めた和が最小となるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行されていないジョブを割り当てることにより、当該ジョブを実行するマシンを決定する決定部と、
前記決定部により決定されたジョブに関する情報を出力する出力部と、
を備えた第１の生産管理装置と、
前記ジョブ識別情報を前記第１の生産管理装置へ送信する送信部と、
前記出力部により出力されたジョブに関する情報を受信する受信部と、
前記受信部が受信したジョブに関する情報に基づいて、前記複数のマシンのうち前記決定されたマシンに、前記受信したジョブに関する情報が示すジョブを実行させる制御を行う制御部と、
を備えた第２の生産管理装置と、
を備える。
【００１０】
上記目的を達成するために、本発明の第３の観点に係るプログラムは、
複数のジョブのそれぞれを複数のマシンのいずれかに割り当てるコンピュータを、
前記ジョブを識別するジョブ識別情報の入力を受け付けるジョブ受付部、
前記ジョブ識別情報が示すジョブが実行されているか否かを示すジョブステータス情報を、前記ジョブ識別情報に対応づけて記憶するジョブステータス記憶部、
実行されているジョブのジョブ識別情報を示すマシンステータス情報を、前記マシンを識別するマシン識別情報に対応づけて記憶するマシンステータス記憶部、
前記ジョブステータス記憶部から、前記複数のジョブのうち実行されていないジョブのジョブ識別情報を抽出し、当該抽出されたジョブ識別情報が示すジョブの実行時間を求める第１の計算部、
前記マシンステータス記憶部から、ジョブを実行していないマシンのマシン識別情報を抽出し、当該抽出されたマシン識別情報が示すマシンが前記抽出されたジョブ識別情報が示すジョブを実行するための準備に要する切替時間を求める第２の計算部、
前記第１の計算部により求められた実行時間と、前記第２の計算部により求められた切替時間との和を求め、当該求めた和が最小になるマシンに、前記ジョブ受付部が受け付けたジョブのうち実行されていないジョブを割り当てることにより、当該ジョブを実行するマシンを決定する決定部、
前記決定部により決定されたジョブに関する情報を出力する出力部、
として機能させる。
【発明の効果】
【００１１】
このような構成を採用したことにより、マシンの使用状況や所要時間に応じてジョブを振り分けるために好適な生産管理装置、生産管理システム及びプログラムを提供することができる。そして、各作業工程のマシンに、待機しているジョブを効率良く投入する手段を備えた生産管理システムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、図面に基づき、本発明の実施の形態に係わる生産管理システムについて説明する。
【００１３】
本実施の形態に係る生産管理システムは、図２に示すようにｎ個（ｎは１以上の整数）の工程により構成されている。また、各工程は、それぞれ工程設備１を備え、各工程設備１は、１つ以上の作業ステーション３を備えている。
【００１４】
次に、図１は、本実施の形態に係る生産管理システムの構成の詳細を示す図である。本図に示すように、生産管理システムは、工程設備１と、クライアント端末９と、生産管理装置１０と、ＬＡＮ（Local Area Network）１１と、を備える。さらに、工程設備１は、待機スペース２と作業ステーション３とアクチュエータ４と、設備制御装置５と、を備えている。
【００１５】
待機スペース２は、ワーク５０の識別情報であるジョブＩＤを読み取るためのリーダー６を備えている。
【００１６】
作業ステーション３は、作業用マシン７とセンサー８を備え、センサー８は後述するマシンコードを読み取る。
【００１７】
設備制御装置５とリーダー６は、クライアント端末９に接続されている。
クライアント端末９は、ＬＡＮ１１に接続され、生産管理装置１０にアクセスすることができる。なお、クライアント端末９と生産管理装置１０とを接続する手段は、ＬＡＮ１１に限定されるものではなく、例えば、ＷＡＮ（Wide Area Network）やインターネット等の他の通信手段を用いてもよい。
【００１８】
各工程設備１はそれぞれクライアント端末９に接続されている。また、各クライアント端末９は、ＬＡＮ１１に接続されている。
【００１９】
生産管理装置１０は、制御部１０１と、ＲＯＭ（Read Only Memory）１０２と、ＲＡＭ（Random Access Memory）１０３と、記憶部１０４と、通信部１０５と、を備える。
【００２０】
制御部１０１は、ＣＰＵ（Central Processing Unit）などから構成され、ＲＯＭ１０２に記憶されるプログラムに基づいて生産管理装置１０の全体の制御を行う。
【００２１】
ＲＯＭ１０２は、生産管理装置１０の全体の制御に必要なオペレーティングシステムやプログラム等を記憶する不揮発性メモリである。例えば、ＲＯＭ１０２は、後述する運転最適化プログラムを記憶している。
【００２２】
ＲＡＭ１０３は、制御部１０１が実行する処理に必要なデータ等を一時的に記憶する。
【００２３】
記憶部１０４は、ＨＤＤ（Hard Disk Drive）等の記憶装置を備える。記憶部１０４は、データベース１０６を記憶する。詳細については後述する。
【００２４】
通信部１０５は、ＮＩＣ（Network Interface Card）等から構成され、ＬＡＮ１１に接続するためのインタフェースを備え、ＬＡＮ１１との間で、例えばＴＣＰ／ＩＰプロトコルに基づく通信を行う。
【００２５】
次に、記憶部１０４に記憶されるデータベース１０６の詳細について、図３を用いて説明する。
データベース１０６は、品種情報マスタ２０１と、ジョブリストマスタ２０２と、マシン稼働状況マスタ２０３と、加工時間マスタ２０４と、マシン切替情報マスタ２０５と、を格納する。
【００２６】
品種情報マスタ２０１は、ジョブを識別する情報である「ジョブＩＤ」と、ワーク５０の品種を識別する情報である「品種コード」と、ジョブの数量を表す情報である「数量」と、ワーク５０の納期を表す情報である「納期」と、を対応づけて記憶する。品種情報マスタ２０１は、後述するように、ワーク５０に取り付けられたＩＣタグ５１に記憶される情報をクライアント端末９から受信して、受信した情報に基づいて制御部１０１により設定される。あるいは、ジョブＩＤに対応して予め設定されるようにしてもよい。
【００２７】
ジョブリストマスタ２０２は、どの工程かを識別する情報である「工程コード」と、上述の「ジョブＩＤ」と、ある工程にワークが投入済か未投入かを表す情報である「ステータス」と、を対応づけて記憶する。例えば、ステータス「１」はワーク５０を工程ｉ（ｉは１以上ｎ以下の整数）に投入済であることを表し、ステータス「０」は未投入であることを表す。
【００２８】
マシン稼働状況マスタ２０３は、上述の「工程コード」と、マシンの識別情報である「マシンコード」と、あるマシンで実行中のジョブの識別情報である「実行ジョブＩＤ」と、マシンで実行中のジョブの前に実行されたジョブの識別情報である「前ジョブＩＤ」と、マシンで実行中のジョブの残り時間を表す情報である「所要時間」と、を対応づけて記憶する。
【００２９】
加工時間マスタ２０４は、上述の「マシンコード」と、上述の「品種コード」と、ジョブ１個当たりの加工時間を表す情報である「１個当たりの加工時間」と、を対応づけて記憶する。
【００３０】
マシン切替情報マスタ２０５は、上述の「マシンコード」と、マシンで実行中のジョブの品種識別情報である「後品種コード」と、マシンで実行中のジョブの前に実行されたジョブの品種の識別情報である「前品種コード」と、マシンの切替時間を表す情報である「マシン切替時間」と、を対応づけて記憶する。
【００３１】
ここで、マシン稼働状況マスタ２０３の「所要時間」とは、あるマシンで実行中のジョブを終了するためにかかる時間と、マシンの切替時間と、を合計した時間を表していて、この値は時間が経過すると共に変化していく。すなわち、制御部１０１は、所定の時間間隔（例えば、１秒間隔など）で、実行中のジョブが終了するまでの残り時間を求め、この残り時間とマシンの切り替え時間との和を求めて、得られた時間を所要時間としてマシン稼働状況マスタ２０３に書き込む。
【００３２】
次に、本実施形態に係る生産システムの動作を図２を参照して説明する。
【００３３】
ワーク５０は、生産ラインを、ＩＣタグ５１を付けて搬送される。例えば、工程１には３つの作業ステーションが設置されている。
【００３４】
ＩＣタグ５１には、ワーク５０のジョブＩＤなどの情報が記憶されており、これらの情報は生産ラインのリーダー６で読み取られる。
例えば、リーダ６で読み取られたデータは、対応する生産ラインのクライアント端末９に送信される。更に、このデータはクライアント端末９からＬＡＮ１１を経由して生産管理装置１０の通信部１０５に送信される。そして、生産管理装置１０の制御部１０１は、通信部１０５により受信したデータに基づいてデータベース１０６の品種情報マスタ２０１に書き込む。このように、データベース１０６の品種情報マスタ２０１が作られ、その後ワーク５０はＩＣタグ５１のジョブＩＤで識別される。
【００３５】
なお、ワーク５０に関する情報（例えば、ジョブＩＤ、品種コード、数量、納期等）を記憶及び取得する手段は、上述のＩＣタグ５１やリーダー６に限定されるものではない。例えば、紙などに印字されるバーコード等を用いてワーク５０に関する情報を記憶させ、このバーコードを光学センサなどを用いて読み込み、ワーク５０に関する情報を取得するようにしてもよい。
【００３６】
（ジョブ登録処理）
次に、ジョブ登録処理について、図４を用いて説明する。ワーク５０に取り付けられたＩＣタグ５１に記憶される情報は、リーダー６で読み取られ、読み取った情報に基づいてデータベース１０６に記憶されるジョブリストマスタ２０２に書き込む。以下、詳述する。
【００３７】
まず、ワーク５０が工程ｉに入ると、待機スペース２のリーダー６は、ＩＣタグ５１に記憶されたジョブＩＤ、品種コード、数量、納期などの情報を読み取る（Ｌ１）。
【００３８】
次に、リーダー６は、読み取ったワーク５０のジョブＩＤを、工程ｉのクライアント端末９に送信する（Ｌ２）。
【００３９】
そして、クライアント端末９は、リーダー６から受け取ったワーク５０のジョブＩＤと、クライアント端末９が設置されてある工程の識別コードである工程コードを、生産管理装置１０に送信する（Ｌ３）。
【００４０】
さらに、生産管理装置１０は、クライアント端末９からデータが送られてくると、受け取ったデータを、データベース１０６のジョブリストマスタ２０２に書き込む（Ｌ４）。このとき、制御部１０１は、ステータスには、ジョブが未投入であることを示す値（例えば、「０」の値）を設定する。
【００４１】
このように、生産システムは、ワーク５０が工程ｉに入ると、ワーク５０に取り付けられたＩＣタグ５１に記憶される情報を読み込み、読み取った情報と工程ｉの工程コードとに基づいて、ジョブリストマスタ２０２にジョブを登録する。
【００４２】
（ディスパッチング処理）
次に、未投入のジョブをマシンに割り当てるディスパッチング処理について、図５を用いて説明する。
本図のように、工程ｉのクライアント端末９は、工程ｉに未投入のジョブが存在すると、生産管理装置１０に、未投入のジョブがあることを通知し、このジョブの実行計画作成のリクエストを送信する（Ｌ５）。生産管理装置１０は、未投入のジョブをマシンに割り当てるディスパッチング処理を行う（Ｌ６）。そして、生産管理装置１０は、ディスパッチング処理で得られた実行計画を、工程ｉのクライアント端末９に送信する（Ｌ７）。以下、詳述する。
【００４３】
図６は、制御部１０１が実行するディスパッチング処理を説明するフローチャートである。
まず、制御部１０１は、工程ｉのクライアント端末９からの要求を受けると、ジョブリストマスタ２０２を読み出し、工程ｉのステータス「０（未投入）」のジョブがあるかどうかを判定する（ステップＳ６０１）。
【００４４】
ステータス「０」のジョブがない場合（ステップＳ６０１；ＮＯ）、制御部１０１はディスパッチング処理を終了する。
一方、ステータス「０」のジョブが存在すると（ステップＳ６０１；ＹＥＳ）、制御部１０１は、マシン稼働状況マスタ２０３を読み出し、工程ｉのすべてのジョブの稼働状況を取得する（ステップＳ６０２）。
【００４５】
制御部１０１は、工程ｉの作業ステーション３のマシンの中に非稼働のものがあるか否かを、マシン稼働状況マスタ２０３に基づいて判定する（ステップＳ６０３）。例えば、非稼働の作業ステーション３に対応する、マシン稼働状況マスタ２０３の実行ジョブＩＤには、「ＮＵＬＬ（初期値）」がセットされている。
【００４６】
マシン稼働状況マスタ２０３の実行ジョブＩＤにＮＵＬＬが無い場合（ステップＳ６０３；ＮＯ）、制御部１０１は、ステップＳ６０２に戻り、再びジョブの稼働状況を調べて非稼働のマシンがあるか否かの判定を行う（ステップＳ６０２乃至Ｓ６０３を繰り返す）。
一方、マシン稼働状況マスタ２０３の実行ジョブＩＤにＮＵＬＬが存在する場合（ステップＳ６０３；ＹＥＳ）、制御部１０１は、未投入のジョブを空いているどの作業ステーション３のマシンに割り当てるのが効率的かを決定するために、作業ステーション３のマシンの切替時間と加工時間を求める（ステップＳ６０４）。
【００４７】
詳細には、まず、制御部１０１は、ジョブリストマスタ２０２で、ステータス「０」のジョブのジョブＩＤに対応する品種情報マスタ２０１から、ワーク５０の品種コードを判別する。
【００４８】
次に、制御部１０１は、マシン稼働状況マスタ２０３で実行ジョブＩＤがＮＵＬＬ（非稼働）の作業ステーション３のマシンコードと、ステータス「０」のジョブの品種コードから、加工時間マスタテーブルに基づいて、ワーク５０の１個当たりの加工時間を調べる。
【００４９】
また、制御部１０１は、マシン稼働状況マスタ２０３実行ジョブＩＤがＮＵＬＬの作業ステーションのマシンコードと、ステータス「０」のジョブの品種コードから、マシン切替情報マスタ２０５に基づいて、マシン切替時間を調べる。
【００５０】
次に、制御部１０１は、ワーク５０の加工時間を求める（ステップＳ６０５）。加工時間は、ステップＳ６０４で得られたマシン切替時間に、ワーク５０の数量を乗じることで求められる。
【００５１】
制御部１０１は、ワークの加工時間とマシン切替時間との和である「所要時間」が最小となるものを求める（ステップＳ６０６）。すなわち、制御部１０１は、所要時間が最小になるマシンとジョブとの組み合わせを求める。
【００５２】
制御部１０１は、ステップＳ６０６で得られた最小の所要時間の値を、求められたマシンのマシンコードに対応づけてマシン稼働状況マスタ２０３に設定する（ステップＳ６０７）。
【００５３】
制御部１０１は、ステップＳ６０７で求められたマシンのマシンコードに対応するマシン稼働状況マスタ２０３のジョブＩＤに、投入するジョブの「ジョブＩＤ」を設定する（ステップＳ６０８）。
この結果、非稼働のマシンに対して、次に投入するジョブが決定される。
【００５４】
制御部１０１は、投入先のマシンが決定されたジョブに対応するステータスに「１（投入済）」を設定する（ステップＳ６０９）。
【００５５】
そして、制御部１０１は、決定されたジョブを、マシンが属する工程設備１のクライアント端末９に送信する（ステップＳ６１０）。クライアント端末９は、設備制御装置５に指示を出し、その指示を受けてアクチュエータ４は動作し、待機しているワーク５０の中から指定のワーク５０をマシンに投入する。
【００５６】
この結果、生産管理装置１０は、効率の最もよくなるジョブをマシンに割り当てることができる。すなわち、生産管理装置１０は、未投入のジョブの中から、所要時間が最小となるジョブとマシンとの組み合わせを求めて、ジョブを投入することができる。この際、投入されるジョブの順番は、ジョブが生産管理装置１０に登録された順番に限らず、最も作業効率の良い順番である。
【００５７】
（ジョブ監視処理）
次に、制御部１０１が実行するジョブ監視処理について、図７のフローチャートを用いて説明する。
ジョブ監視処理は、マシン稼働状況マスタ２０３に記憶されている所要時間を、時間の経過とともに最新の値に更新する。なお、ジョブ監視処理は、所定の時間間隔Ｔ１（例えば、１秒、０．１秒など）で行われることが望ましい。例えば、制御部１０１は、ＲＯＭ１０２に記憶されるオペレーティングシステムにより実行される割り込み処理のタイミングで、ジョブ監視処理を行う。
【００５８】
まず、制御部１０１は、マシン稼働状況マスタ２０３で実行ジョブＩＤが設定されているマシンコードに対応づけられている所要時間から、所定時間Ｔ１を減算して、ジョブの実行時間を求める（ステップＳ７０１）。制御部１０１は、この処理を、実行ジョブＩＤが設定されているすべてのマシンコードについて行う。
【００５９】
制御部１０１は、所要時間が０（ゼロ）になったマシンがあるか否かを判別する（ステップＳ７０２）。所要時間が０とは、その所要時間に対応するマシンが作業を終了したことを意味する。
【００６０】
所要時間がゼロになったジョブがある場合（ステップＳ７０２；ＹＥＳ）、制御部１０１は、そのジョブを実行するマシンに対応するマシン稼働状況マスタ２０３の前ジョブＩＤに、実行ジョブＩＤを設定し、実行ジョブＩＤをＮＵＬＬ（初期値）に設定する（ステップＳ７０３）。
【００６１】
更に、制御部１０１は、終了したジョブの削除処理を行い、終了したジョブに対応する情報を、ジョブリストマスタ２０２から削除する（ステップＳ７０４）。なお、このジョブ削除処理については、後述する。
【００６２】
このように、制御部１０１は、登録されたジョブの監視を行って所要時間を更新し、所要時間がゼロになった場合（つまりジョブが終了した場合）に、ジョブを削除する。
【００６３】
（ジョブ削除処理）
次に、制御部１０１が実行するジョブ削除処理について、図８を用いて説明する。ジョブ削除処理では、終了したジョブをジョブリストマスタ２０２から削除する。以下、詳述する。
【００６４】
まず、待機スペース２のリーダー６は、ＩＣタグ５１のジョブＩＤを読み取る（Ｌ８）。
【００６５】
次に、リーダー６は、読み取ったワーク５０のジョブＩＤを、工程ｉのクライアント端末９に送信する（Ｌ９）。
【００６６】
そして、クライアント端末９は、リーダー６から受け取ったワーク５０のジョブＩＤと、クライアント端末９が設置される工程の識別コードである工程コードとを生産管理装置１０に送信する（Ｌ１０）。
【００６７】
さらに、生産管理装置１０の制御部１０１は、クライアント端末９からジョブＩＤと工程コードとが送信されると、通信部１０５によりデータを受信し、データベース１０６のジョブリストマスタ２０２から、受信したジョブＩＤに対応するジョブを削除する（Ｌ１１）。
【００６８】
このように、制御部１０１は、終了したジョブを削除する。
【００６９】
結果として、作業を終了したワーク５０は、作業ステーション３から払い出され、ワーク５０は次の工程に送られる。
以上のように、空いたマシンに対して、時間効率のよいジョブの振り分けができ、生産効率を向上させることが出来る。
【００７０】
上記実施形態では、プログラムがＲＯＭ１０２に予め記憶されているものとして説明した。しかし、生産管理装置１０を、生産管理装置１０の全部又は一部として動作させ、あるいは、上述の処理を実行させるためのプログラムを、メモリカード、ＣＤ−ＲＯＭ（Compact Disc Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto Optical disk）などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
【００７１】
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【図面の簡単な説明】
【００７２】
【図１】本実施形態に係る生産管理システムの構成図である。
【図２】従来の生産管理システムの生産ラインの構成を示す図である。
【図３】データベースの構成を示す図である。
【図４】ジョブを登録する処理を説明する図である。
【図５】ディスパッチング処理を説明する図である。
【図６】ディスパッチング処理を説明するフローチャートである。
【図７】ジョブ監視処理を説明するフローチャートである。
【図８】ジョブ削除処理を説明する図である。
【符号の説明】
【００７３】
１  工程設備
２  待機スペース
３  作業ステーション
４  アクチュエータ
５  設備制御装置
６  リーダー
７  作業用マシン
８  センサー
９  クライアント端末
１０  生産管理装置
１１  ＬＡＮ
５０  ワーク
５１  ＩＣタグ
１０１  制御部
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  記憶部
１０５  通信部
１０６  データベース
２０１  品種情報マスタ
２０２  ジョブリストマスタ
２０３  マシン稼働状況マスタ
２０４  加工時間マスタ
２０５  マシン切替情報マスタ
【図１】
0004828197.tif 000002
【図２】
0004828197.tif 000003
【図３】
0004828197.tif 000004
【図４】
0004828197.tif 000005
【図５】
0004828197.tif 000006
【図６】
0004828197.tif 000007
【図７】
0004828197.tif 000008
【図８】
0004828197.tif 000009