(57)【特許請求の範囲】
【請求項１】
モータを有したローラコンベア装置の一部を構成する直線搬送装置、又は直角搬送装置を制御可能なコントローラであって、
前記直線搬送装置は、制御ゾーンに区分されていて各制御ゾーンにモータを備え搬送物を直線方向に搬送する装置であり、前記直角搬送装置は、複数のモータを備えていて搬送物の搬送方向を変更可能な装置であり、
モータ制御基板を有し、モータ制御基板は、複数のモータ駆動回路と、直線搬送装置、又は直角搬送装置を制御する書き換え可能な搬送プログラムが記憶された書き換え可能なメモリと、ＣＰＵとを有し、
且つ前記直線搬送装置及び直角搬送装置に設けられた複数の検知手段からの信号を受信可能な入出力回路を有するコントローラにおいて、
プログラム作成支援プログラムを使用して搬送プログラムを作成することが可能であり、前記プログラム作成支援プログラムは、
一つ又は複数の動作が組み合わされて成る一連の動作の名称として、ユーザが任意に決めた名称を入力する名称項目と、名称項目に入力された前記一連の動作が実行される条件を入力する条件項目と、前記一連の動作の具体的内容を入力する動作項目と、
前記一連の動作に続いて実行される一連の動作に対応する名称項目に記載の名称を入力する次工程項目とを入力可能であり、
一つの条件項目と一つの動作項目とが一対の条件動作対として処理されると共に、前記条件動作対が１又は複数の次工程項目と一つの名称項目とに関連付けてプログラムテーブルを構成するものであることを特徴とするコントローラ。
【請求項２】
モータを有したローラコンベア装置を制御可能なコントローラであって、モータ駆動回路と、書き換え可能なメモリと、ＣＰＵとを有するコントローラにおいて、
プログラム作成支援プログラムを使用してローラコンベア装置を制御する搬送プログラムを作成することが可能であり、前記プログラム作成支援プログラムは、
一つ又は複数の動作が組み合わされて成る一連の動作の名称として、ユーザが任意に決めた名称を入力する名称項目と、名称項目に入力された前記一連の動作が実行される条件を入力する条件項目と、前記一連の動作の具体的内容を入力する動作項目と、
前記一連の動作に続いて実行される一連の動作に対応する名称項目に記載の名称を入力する次工程項目とを入力可能であり、
一つの条件項目と一つの動作項目とが一対の条件動作対として処理されると共に、前記条件動作対が１又は複数の次工程項目と一つの名称項目とに関連付けてプログラムテーブルを構成するものであることを特徴とするコントローラ。
【請求項３】
プログラム作成支援プログラムは、一つの前記名称項目に対して、複数の条件動作対を関連付けることが可能であることを特徴とする請求項１又は２に記載のコントローラ。
【請求項４】
プログラム作成支援プログラムのプログラムテーブルには、前記名称項目に対応する主番号列と、条件動作対に対応する副番号列とがあることを特徴とする請求１乃至３のいずれかに記載のコントローラ。
【請求項５】
プログラム作成支援プログラムのプログラムテーブルを、コンピュータの表示画面に表状又は表の一部として表示する表示プログラムを有することを特徴とする請求項１乃至４のいずれかに記載のコントローラ。
【請求項６】
プログラム作成支援プログラムは、複数の条件項目とそれに対応するそれぞれのプログラムが関連付けられた条件項目データテーブルと、複数の動作項目とそれに対応するそれぞれのプログラムが関連付けられた動作項目データテーブルとを有し、前記条件項目データテーブルと動作項目データテーブルから所望の項目を選択して入力し、プログラムテーブルを構成することが可能であることを特徴とする請求項１乃至５のいずれかに記載のコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコントローラ、ローラコンベア装置、ローラコンベア装置の制御方法、ならびにプログラム作成支援プログラムに関し、さらに詳細には、構成部品の削減が可能であり、制御方法の自由度を向上可能なコントローラ、ローラコンベア装置、ローラコンベア装置の制御方法、ならびにプログラム作成支援プログラムに関する。
【背景技術】
【０００２】
工場や物流倉庫では、容易に荷物を搬送するため、ローラコンベア装置が利用されている。ローラコンベア装置には、複数のローラが設けられており、その内のいくつかには、モータを内蔵したローラ（以下、モータ内蔵ローラと称する）が設けられることもある。特許文献１には、複数の制御ゾーンに区分されたローラコンベア装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２３１７４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されたローラコンベア装置は、ＰＬＣ（プログラマブル・ロジック・コントローラ）とコントローラで制御されている。
ＰＬＣは、複数のコントローラの統括制御が可能である。また、ＰＬＣは、ローラコンベア装置において、分岐点等での複雑な搬送制御に用いられている。ＰＬＣは、制御盤に組み込んで使用されることが多く、ローラコンベア装置の近傍に配置すると、邪魔になることがある。さらに、前記制御盤と、ローラコンベア装置とは、配線で接続する必要があり、配線工事が手間である。
また、特許文献１に開示されたローラコンベア装置では、各制御ゾーンにコントローラが設けられている。コントローラは、数種類の搬送ロジック（定型の搬送プログラム）を内蔵している。例えば、各コントローラ同士を数珠つなぎに接続することにより、連携制御が可能である。このことにより、ゼロプレッシャ蓄積制御（ＺＰＡ制御）と呼ばれる、搬送物同士の衝突を回避可能な制御もできる。ところが、従来技術のコントローラは、数種類の搬送ロジックしか内蔵していないため、制御方法の自由度に制限があった。
【０００５】
上記した現状に鑑み、本発明は、構成部品の削減が可能であり、制御方法の自由度を向上可能なコントローラ、ローラコンベア装置、ローラコンベア装置の制御方法、ならびにプログラム作成支援プログラムの提供を目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するための発明は、モータを有したローラコンベア装置を、制御可能なコントローラであって、モータ制御基板を有し、モータ制御基板は、モータ駆動回路と、書き換え可能なメモリと、ＣＰＵとを有することを特徴の一つとするコントローラである。
【０００７】
ＣＰＵと、書き換え可能なメモリとを有したモータ制御基板は、略コンピュータである。よって、ＰＬＣ等の外部の制御装置、ならびにＰＬＣを収納する制御盤を削減できる。また、書き換え可能なメモリを用いて、プログラムの変更が可能である。本発明のコントローラによれば、構成部品の削減が可能であり、制御方法の自由度を向上できる。
【０００８】
また請求項１に記載の発明は、モータ制御基板は、複数のモータ駆動回路を有することを特徴の一つとする。
【０００９】
１枚のモータ制御基板に、複数のモータ駆動回路を備えることで、モータ制御基板の数量を減らすことができる。本発明のコントローラによれば、構成部品の削減が可能である。
【００１０】
また請求項１に記載の発明は、プログラマブル・ロジックを有することを特徴の一つとする。
【００１１】
プログラマブル・ロジックは、任意の論理回路の作成および消去が可能である。本発明のコントローラによれば、制御方法の自由度を向上できる。
【００１２】
また請求項１に記載の発明は、複数の検知手段からの信号を受信可能な入出力回路を有することを特徴の一つとする。
【００１３】
複数の検知手段は、搬送物を検知可能なセンサであることが望ましい。本発明のコントローラによれば、制御方法の自由度をより向上できる。
【００１４】
即ち請求項１に記載の発明は、モータを有したローラコンベア装置の一部を構成する直線搬送装置、又は直角搬送装置を制御可能なコントローラであって、前記直線搬送装置は、制御ゾーンに区分されていて各制御ゾーンにモータを備え搬送物を直線方向に搬送する装置であり、前記直角搬送装置は、複数のモータを備えていて搬送物の搬送方向を変更可能な装置であり、モータ制御基板を有し、モータ制御基板は、複数のモータ駆動回路と、直線搬送装置、又は直角搬送装置を制御する書き換え可能な搬送プログラムが記憶された書き換え可能なメモリと、ＣＰＵとを有し、且つ前記直線搬送装置及び直角搬送装置に設けられた複数の検知手段からの信号を受信可能な入出力回路を有するコントローラにおいて、プログラム作成支援プログラムを使用して搬送プログラムを作成することが可能であり、前記プログラム作成支援プログラムは、一つ又は複数の動作が組み合わされて成る一連の動作の名称として、ユーザが任意に決めた名称を入力する名称項目と、名称項目に入力された前記一連の動作が実行される条件を入力する条件項目と、前記一連の動作の具体的内容を入力する動作項目と、前記一連の動作に続いて実行される一連の動作に対応する名称項目に記載の名称を入力する次工程項目とを入力可能であり、一つの条件項目と一つの動作項目とが一対の条件動作対として処理されると共に、前記条件動作対が１又は複数の次工程項目と一つの名称項目とに関連付けてプログラムテーブルを構成するものであることを特徴とするコントローラである。
請求項２に記載の発明は、モータを有したローラコンベア装置を制御可能なコントローラであって、モータ駆動回路と、書き換え可能なメモリと、ＣＰＵとを有するコントローラにおいて、プログラム作成支援プログラムを使用してローラコンベア装置を制御する搬送プログラムを作成することが可能であり、前記プログラム作成支援プログラムは、一つ又は複数の動作が組み合わされて成る一連の動作の名称として、ユーザが任意に決めた名称を入力する名称項目と、名称項目に入力された前記一連の動作が実行される条件を入力する条件項目と、前記一連の動作の具体的内容を入力する動作項目と、前記一連の動作に続いて実行される一連の動作に対応する名称項目に記載の名称を入力する次工程項目とを入力可能であり、一つの条件項目と一つの動作項目とが一対の条件動作対として処理されると共に、前記条件動作対が１又は複数の次工程項目と一つの名称項目とに関連付けてプログラムテーブルを構成するものであることを特徴とするコントローラである。
【００１５】
コントローラは、通信回路を有することが望ましい。
【００１６】
通信回路は、他のコントローラ等と通信可能な回路であることが望ましい。本発明のコントローラによれば、制御方法の自由度をさらに向上できる。
【００１７】
また前記したコントローラを有し、対象物を搬送可能なローラコンベア装置であって、対象物を電子符号で識別可能な識別手段を有することをローラコンベア装置が推奨される。
対象物を電子符号で識別可能な識別手段を有するローラコンベア装置に使用されるものであり、前記電子符号を受信可能であることが望ましい。
【００１８】
対象物を電子符号で識別可能な識別手段とは、例えばバーコードリーダを備えたコンピュータであることが望ましい。電子符号化された対象物の情報は、様々な制御に活用できる。本発明のローラコンベア装置によれば、制御方法の自由度を向上できる。
【００１９】
また前記コントローラを複数有し、コントローラ同士は通信線で接続されたローラコンベア装置が推奨される。
コントローラ同士を通信線で接続可能であることが望ましい。
【００２０】
コントローラ同士で制御情報を送受信できる。本発明のローラコンベア装置によれば、制御方法の自由度を高度に向上できる。
【００２１】
ローラコンベア装置の制御方法であって、前記識別手段で対象物に電子符号を付し、電子符号を、対象物が到着するよりも前にコントローラで受信することを特徴とするローラコンベア装置の制御方法が推奨される。
【００２２】
電子符号を、対象物が到着するよりも前にコントローラで受信することにより、対象物を止めることなく、順次搬送することができる。本発明のローラコンベア装置の制御方法によれば、遅延の少ない搬送ラインを構築できる。
【００２３】
受信した電子符号を、他のコントローラに発信し、電子符号を複数のコントローラで共有することを特徴とするローラコンベア装置の制御方法が推奨される。
【００２４】
電子符号を複数のコントローラで共有することにより、複雑な搬送ラインを構築できる。また、例えば、通信線で接続されたコンピュータで搬送物の流れを監視することも可能である。本発明のローラコンベア装置の制御方法によれば、制御方法の自由度をより高度に向上できる。
【００２５】
本発明に関連する発明は、コントローラに内蔵されるプログラムを、コンピュータで作成するためのプログラム作成支援プログラムにおいて、一連の動作の名称を入力する名称項目と、動作が実行される条件を入力する条件項目と、動作の内容を入力する動作項目と、一連の動作に続く動作の名称を入力する次工程項目とを入力可能であり、一つの条件項目と一つの動作項目とが一対の条件動作対として処理されると共に、前記条件動作対が１又は複数の次工程項目と一つの名称項目とに関連付けてプログラムテーブルを構成することを特徴とするプログラム作成支援プログラムである。
【００２６】
また請求項１、２に記載の発明は、プログラム作成支援プログラムを使用して搬送プログラムを作成することが可能であり、前記プログラム作成支援プログラムは、一つ又は複数の動作が組み合わされて成る一連の動作の名称として、ユーザが任意に決めた名称を入力する名称項目と、名称項目に入力された前記一連の動作が実行される条件を入力する条件項目と、前記一連の動作の具体的内容を入力する動作項目と、前記一連の動作に続いて実行される一連の動作に対応する名称項目に記載の名称を入力する次工程項目とを入力可能であり、一つの条件項目と一つの動作項目とが一対の条件動作対として処理されると共に、前記条件動作対が１又は複数の次工程項目と一つの名称項目とに関連付けてプログラムテーブルを構成するものであることを特徴とする。
【００２７】
プログラムテーブルに、名称項目と、条件項目と、動作項目と、次工程項目とを入力すると、コントローラに内蔵されるプログラムが、コンピュータによって自動作成される。すなわち、一般的なプログラム言語を用いることなく、コントローラに内蔵されるプログラムを自動作成可能である。本発明のプログラム作成支援プログラムによれば、ユーザの利用に好適である。
【００２８】
一つの前記名称項目に対して、複数の条件動作対を関連付けることが可能であることが推奨される。
請求項３に記載の発明は、プログラム作成支援プログラムは、一つの前記名称項目に対して、複数の条件動作対を関連付けることが可能であることを特徴とする請求項１又は２に記載のコントローラである。
【００２９】
複数の条件動作対が一つの前記名称項目に関連付けられることにより、複数の条件動作対を、一つの名称のプログラムとして、条件分けを行うことが可能である。本発明のプログラム作成支援プログラムによれば、ユーザの利用により好適である。
【００３０】
プログラムテーブルには、前記名称項目に対応する主番号列と、条件動作対に対応する副番号列とがあることが推奨される。
請求項４に記載の発明は、プログラム作成支援プログラムのプログラムテーブルには、前記名称項目に対応する主番号列と、条件動作対に対応する副番号列とがあることを特徴とする請求項１乃至３のいずれかに記載のコントローラである。
【００３１】
前記名称項目に対応する主番号列は、一つの名称のプログラムに一つの主番号を付けるものである。条件動作対に対応する副番号列は、一つの主番号のプログラム内に格納されている条件動作対に番号を付けるものである。このことにより、一つの名称のプログラム内に、複数のプログラムを設けることができる。本発明のプログラム作成支援プログラムによれば、ユーザの利用にさらに好適である。
【００３２】
プログラムテーブルを、コンピュータの表示画面に表状又は表の一部として表示する表示プログラムを有することが望ましい。
請求項５に記載の発明は、プログラム作成支援プログラムのプログラムテーブルを、コンピュータの表示画面に表状又は表の一部として表示する表示プログラムを有することを特徴とする請求項１乃至４のいずれかに記載のコントローラである。
【００３３】
プログラムテーブルを、表状又は表の一部として、コンピュータの表示画面で見ることができるので、プログラムの修正や見直しが容易である。本発明のプログラム作成支援プログラムによれば、デバッグが容易である。また、制御動作を把握し易い。
【００３４】
複数の条件項目とそれに対応するそれぞれのプログラムが関連付けられた条件項目データテーブルと、複数の動作項目とそれに対応するそれぞれのプログラムが関連付けられた動作項目データテーブルとを有し、前記条件項目データテーブルと動作項目データテーブルから所望の項目を選択して入力し、プログラムテーブルを構成することが可能であることが望ましい。
請求項６に記載のの発明は、プログラム作成支援プログラムは、複数の条件項目とそれに対応するそれぞれのプログラムが関連付けられた条件項目データテーブルと、複数の動作項目とそれに対応するそれぞれのプログラムが関連付けられた動作項目データテーブルとを有し、前記条件項目データテーブルと動作項目データテーブルから所望の項目を選択して入力し、プログラムテーブルを構成することが可能であることを特徴とする請求項１乃至５のいずれかに記載のコントローラである。
【００３５】
条件項目データテーブルとは、例えば、センサやタイマーのＯＮ／ＯＦＦ確認、モータのエラー確認等、確認や判断内容を決める条件命令が格納されたものである。また、動作項目データテーブルとは、例えば、モータやタイマーのＯＮ／ＯＦＦ等、制御動作の実行命令が格納されたものである。すなわち、前記データテーブルから、任意の項目をユーザが選択するだけで、所望のプログラムを自動作成可能である。本発明のプログラム作成支援プログラムによれば、制御方法の自由度を向上できる。
【発明の効果】
【００３６】
本発明のコントローラによれば、構成部品の削減が可能であり、制御方法の自由度を向上できる。また、本発明の関連発明たるローラコンベア装置、ローラコンベア装置の制御方法、ならびにプログラム作成支援プログラムによれば、制御方法の自由度を向上できる。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施形態に係るコントローラを示す正面図である。
【図２】図１のコントローラの回路構成を示すブロック図である。
【図３】本発明の実施形態に係るローラコンベア装置を示す平面図である。
【図４】図３の直線搬送装置を示す平面図である。
【図５】図３の直角移載装置を示す平面図である。
【図６】直角移載装置の一部を示す正面図である。
【図７】本発明の実施形態に係るプログラム作成支援プログラムの動作環境を示す概念図である。
【図８】図７のプログラム作成支援プログラムのプログラムテーブルが表示された表示装置の一部を示す正面図である。
【図９】プログラムテーブルを用いた直線搬送装置のプログラム（No.0〜7 ）が表示された表示装置の一部を示す正面図である。
【図１０】プログラムテーブルを用いた直線搬送装置のプログラム（No.8〜14）が表示された表示装置の一部を示す正面図である。
【図１１】プログラムテーブルを用いた直線搬送装置のプログラム（No.15 〜19）が表示された表示装置の一部を示す正面図である。
【図１２】図９〜１１の直線搬送装置の直線主搬送プログラムの動作を示すフローチャートである。
【図１３】直角移載装置の直角主搬送プログラムの動作を示すフローチャートである。
【図１４】直角移載装置の直角分岐搬送プログラムの動作を示すフローチャートである。
【図１５】本発明の実施形態に係るローラコンベア装置の動作を示す概念図であり、（ａ）〜（ｄ）は搬送物の直線搬送状態を示す。
【図１６】本発明の実施形態に係るローラコンベア装置の動作を示す概念図であり、（ａ）〜（ｃ）は直角移載装置の搬送状態を示す。
【図１７】本発明の実施形態に係るプログラム作成支援プログラムの条件項目データテーブル、動作項目データテーブル等を示す表（第１表）である。
【図１８】本発明の実施形態に係るプログラム作成支援プログラムの条件項目データテーブル、動作項目データテーブル等を示す表（第１表のつづき）である。
【図１９】本発明の実施形態に係るプログラム作成支援プログラムの条件項目データテーブル、動作項目データテーブル等を示す表（第１表のつづき）である。
【図２０】本発明の実施形態に係るプログラム作成支援プログラムの条件項目データテーブル、動作項目データテーブル等を示す表（第１表のつづき）である。
【発明を実施するための形態】
【００３８】
以下は、本発明のコントローラ、ローラコンベア装置、ローラコンベア装置の制御方法、ならびにプログラム作成支援プログラムの実施形態について、図面を参照しながら詳細に説明する。なお、以下の説明は、実施形態の理解を容易にするためのものであり、これによって、本発明が制限して理解されるべきではない。また、公知のものについては、説明を省略する。
【００３９】
図３において、ローラコンベア装置２０の左右方向を「主搬送方向」とし、ローラコンベア装置２０の左右方向に直交する方向を「分岐方向」とする。
【００４０】
コントローラ１は、後述するローラコンベア装置２０を制御するための制御機器である。コントローラ１は、複数の電子部品を有している。
図１に示すように、コントローラ１は、長方形のプリント基板２（モータ制御基板）を有している。プリント基板２の両面の略全体は、絶縁材料で覆われており、保護されている。プリント基板２は、モータコネクタ３ａ〜３ｄと、センサコネクタ４ａ〜４ｅと、通信コネクタ５ａ，５ｂと、電源コネクタ６とを有している。
モータコネクタ３ａ〜３ｄは、基板２とモータを接続するための端子である。
センサコネクタ４ａ〜４ｅは、基板２とセンサを接続するための端子である。
通信コネクタ５ａ，５ｂは、複数のコントローラ１同士を接続するための端子である。
電源コネクタ６は、基板２に電源を供給するための端子である。
【００４１】
図２のブロック図に示すように、コントローラ１は、Ｉ／Ｏ回路１１と、通信回路１２と、ロジック内蔵ドライバ１４（モータ駆動回路）と、マイクロコンピュータ１５（ＣＰＵ）と、メモリ１６（書き換え可能なメモリ）とを有している。
Ｉ／Ｏ回路１１は、外部装置と入出力信号をやり取りするための回路である。Ｉ／Ｏ回路１１は、センサコネクタ４ａ〜４ｅに接続されている。
通信回路１２は、他のコントローラと通信が可能な回路である。通信回路１２は、ＣＡＮｏｐｅｎ規格に準拠している。通信回路１２は、通信コネクタ５ａ，５ｂに接続されている。
【００４２】
モータドライバ１４は、モータ駆動回路である。モータドライバ１４は、図示しないプログラマブル・ロジック１７を有している。モータドライバ１４は、各々モータコネクタ３ａ〜３ｄに接続されている。なお、モータドライバ１４は、ＰＷＭ（パルス幅変調）制御が可能であることが望ましい。
マイクロコンピュータ１５（ＣＰＵ）は、プログラムの演算処理が可能な装置である。マイクロコンピュータ１５（ＣＰＵ）は、図示しないＲＡＭ（メインメモリ）を有している。
メモリ１６は、書き換え可能な記憶装置であり、プログラムやデータの格納が可能である。メモリ１６は、電気型消去メモリ（ＥＥＰＲＯＭ）や、フラッシュメモリで構成されることが望ましい。
【００４３】
ローラコンベア装置２０は、図３に示すように、コントローラ１（１ａ〜１ｄ）と、直線搬送装置２１（２１ａ〜２１ｃ）と、直角移載装置２２と、ＩＤ装置５０（識別手段）と、搬送物７０（対象物）とを有している。
コントローラ１は、複数配置されている。各コントローラ１は、ＣＡＮ通信線５３で相互に接続されており、ＣＡＮ通信によるバス６０（バス型ネットワーク）が構築されている。
バス６０の一方の端部は、ゲートウェイ基板５５に接続されている。バス６０の他方の端部は、終端抵抗５６に接続されている。
【００４４】
ゲートウェイ基板５５は、プロトコルコンバータと呼ばれる変換装置である。ゲートウェイ基板５５は、通信プロトコルが相違するネットワーク同士を接続可能である。ゲートウェイ基板５５は、通信線５３でＩＤ装置５０（識別手段）に接続されている。なお、ゲートウェイ基板５５とＩＤ装置５０（識別手段）とは、イーサネット（富士ゼロックス株式会社の登録商標）規格で通信が行われる。
ＩＤ装置５０（識別手段）は、コンピュータ５１と、バーコードリーダ５２とを有している。
バーコードリーダ５２は、搬送物７０（対象物）に貼付されたバーコードを読み取り可能な装置である。バーコードリーダ５２は、コンピュータ５１に接続されている。
コンピュータ５１は、バーコードリーダ５２から読み込んだ情報を、電子符号化するための装置である。コンピュータ５１によって、「ＴｒａｙＩＤ」と呼ばれるＩＤ（電子符号）を、搬送物７０に付すことが可能である。
【００４５】
直線搬送装置２１（２１ａ〜２１ｃ）は、直線方向の搬送が可能な装置である。図４に示すように、直線搬送装置２１ａは、ローラ２３と、フレーム２５ａ，２５ｂと、センサ２７ａ〜２７ｄ（検知手段）を有している。ローラ２３は、モータ２４ａ〜２４ｄ（モータ内蔵ローラ）と、フリーローラ２６とを有している。
モータ２４ａ〜２４ｄ（モータ内蔵ローラ）は公知のそれと同様に、ローラの内部にモータを備えている。なお、モータをローラに内蔵しないタイプのものでも構わない。
また、モータ２４ａ〜２４ｄは、モータの回転数を検出可能な、回転数検出手段３１を有している。回転数検出手段３１は、ホールＩＣや、エンコーダで構成されることが望ましい。また、モータ２４ａ〜２４ｄ以外のその他のモータについても、回転数検出手段３１を有していることとする。なお、モータは、ＤＣ２４Ｖで駆動するブラシレスモータであることが望ましい。
フリーローラ２６は、モータ等の動力機構を持たないローラである。
フレーム２５ａ，２５ｂは、モータ２４ａ〜２４ｄ（モータ内蔵ローラ）およびフリーローラ２６を、回動可能に支持するための枠組みである。
センサ２７ａ〜２７ｄ（検知手段）は、在荷状態（搬送物の有無）を検知する検知装置である。センサ２７ａ〜２７ｄは、搬送物に光を照射し、反射した光で搬送物の有無を検知できる反射型センサから成る。
また、直線搬送装置２１ｂは、ローラ２３と、フレーム２５ａ，２５ｂと、センサ２７ｅ〜２７ｈ（検知手段）を有している。ローラ２３は、モータ２４ｅ〜２４ｈ（モータ内蔵ローラ）と、フリーローラ２６とを有している。
直線搬送装置２１ｃは、ローラ２３と、フレーム２５ａ，２５ｂと、センサ２７ｉ〜２７ｌ（検知手段）を有している。ローラ２３は、モータ２４ｉ〜２４ｌ（モータ内蔵ローラ）と、フリーローラ２６とを有している。
【００４６】
直線搬送装置２１ａは、ゾーンＡ〜Ｄの４つの制御ゾーンに区分されている。ゾーンＡ〜Ｄの各ゾーンは、モータ２４ａ〜２４ｄ（モータ内蔵ローラ）の両側にフリーローラ２６が位置している。例えば、ゾーンＡは、１本のモータ２４ａ（モータ内蔵ローラ）の両側に、フリーローラ２６が位置している。つまり、ゾーンＡは、５本のローラ２３から構成されている。隣接するローラ２３同士にはベルト２８が懸架されている。このことにより、モータ２４ａ（モータ内蔵ローラ）の回転に応じて、５本のローラが同方向に回転する。ゾーンＢ〜ＤについてもゾーンＡと同様の構成を有している。
ゾーンＡ〜Ｄには、センサ２７ａ〜２７ｄが各々配置されており、各ゾーンの在荷状態が検知される。
なお、直線搬送装置２１ｂ，２１ｃについても同様である。
【００４７】
直角移載装置２２は、搬送方向を９０度変更可能な装置である。図５に示すように、直角移載装置２２は、ローラ２３と、フレーム３０ａ〜３０ｄと、センサ３２（検知手段）と、付勢路３３とを有している。ローラ２３は、モータ２９（モータ内蔵ローラ）と、フリーローラ２６から構成されている。
４本のローラ２３は平行に並んで位置し、ローラ２３同士の間に付勢路３３が平行に位置している。すなわち、付勢路３３の長手方向が、ローラ２３の長手方向に沿っている。
図６に示すように、付勢路３３は、板状部材３５と、プーリ３６ａ〜３６ｈと、モータ３７（モータ内蔵ローラ）と、昇降用モータ３８ａ，３８ｂ（モータ内蔵ローラ）と、ベルト３９とを有している。板状部材３５は、プーリ３６ａ〜３６ｈを、回動可能に片持ち支持するための土台である。
【００４８】
プーリ３６ｇ，３６ｈの間には、モータ３７（モータ内蔵ローラ）が位置している。プーリ３６ａ〜３６ｈとモータ３７（モータ内蔵ローラ）には、ベルト３９が懸架されている。
昇降用モータ３８ａ，３８ｂ（モータ内蔵ローラ）は、図示しない昇降用カムに連結されている。このことにより、昇降用モータ３８ａ，３８ｂ（モータ内蔵ローラ）を一体的に回転させると、板状部材３５の昇降が可能である。
なお、図６に示すように、付勢路３３は通常、ローラ２３の天面よりも、やや下がった位置にある。また、モータ３７（モータ内蔵ローラ）と、昇降用モータ３８ａ，３８ｂ（モータ内蔵ローラ）は、３台の付勢路３３に渡って配置されている。このことにより、３台の付勢路３３は、同期運転する。
【００４９】
図５において、ローラ２３上に搬送物があると仮定する。搬送物を分岐方向であるフレーム３０ａ又は３０ｂの方向に搬送したい場合には、モータ２９（モータ内蔵ローラ）を回転させる。このことにより、搬送物をフレーム３０ａ又は３０ｂの方向に搬送可能である。
一方、搬送物を主搬送方向であるフレーム３０ｃ又は３０ｄの方向に搬送したい場合には、昇降用モータ内蔵ローラ３８ａ，３８ｂを回転させて、板状部材３５をローラ２３の天面よりも上側に位置させる。そして、モータ３７（モータ内蔵ローラ）を回転させると、ベルト３９がプーリ３６ａ〜３６ｈに沿って回転する。この回転するベルト３９で、搬送物をフレーム３０ｃ又は３０ｄの方向に搬送可能である。
【００５０】
ローラコンベア装置２０は、コントローラ１にプログラムを内蔵することにより、制御可能である。コントローラ１へのプログラムの転送は、図７に示すコンピュータ８０をコントローラ１に接続し、プログラム作成支援プログラム７５を用いることで可能である。プログラム作成支援プログラム７５は、コンピュータ上で動作可能なソフトウェアである。
図７に示すように、コンピュータ８０は、表示装置８１と、入力装置８２と、ＣＰＵ８３と、ＲＡＭ８４と、メモリ８５，８６とを有している。プログラム作成支援プログラム７５は、コンピュータ８０のメモリ８５にインストールされている。
【００５１】
プログラム作成支援プログラム７５は、プログラムテーブル７６と、条件項目データテーブル７７と、動作項目データテーブル７８と、定型命令プログラム７９とを有している。条件項目データテーブル７７と、動作項目データテーブル７８と、定型命令プログラム７９とは、メモリ８６に格納されている。
【００５２】
プログラムテーブル７６は、命令等を入力するための表である。プログラムテーブル７６は、図８に示すように、表示装置８１に表示される。
プログラムテーブル７６は、図８に示すように、主番号列９０（No）と、名称項目９１（State ）と、副番号列９２（Block ）と、条件項目９３（Condition ）と、動作項目９４（Action）と、次工程項目９５（Blanch）とを有している。
プログラム作成支援プログラム７５では、一つの条件項目９３（Condition ）と、一つの動作項目９４（Action）とが、一つの条件動作対として処理される。
条件動作対は、１又は複数の次工程項目９５（Blanch）と、一つの名称項目９１（State ）とに関連付けられて、プログラムテーブル７６を構成する。なお、一つの名称項目９１（State ）に対して、複数の条件動作対を関連付けることも可能である。
【００５３】
主番号列９０（No）は、プログラムの主番号を示すものである。
名称項目９１（State ）は、一連の動作の名称を入力する名称項目である。名称項目９１（State ）は、プログラム名を示すものであり、ユーザが任意の名称を入力できる。
【００５４】
副番号列９２（Block ）は、主番号列９０（No）内における副番号を示すものである。すなわち、一つの主番号列９０（No）のプログラム内において、副番号列９２（Block ）を有するプログラムを、ブロック単位でまとめることが可能である。ブロックは複数を用意可能であり、複数のブロックの優先順位は、副番号の番号順である。ただし、優先順位の高いブロックにおいて、命令が実行できない場合には、下位のブロックが実行される。
なお、一つのブロック内では、複数の条件動作対を用意可能であり、その場合には、上段の条件動作対から実行され、下段の条件動作対が順次実行される。
【００５５】
次工程項目９５（Blanch）とは、一連の動作に続く動作の名称を入力する次工程項目である。次工程項目９５（Blanch）は、その行のプログラムを終えた後に、移動予定のプログラムの名称項目９１（State ）を入力するものである。
【００５６】
条件項目９３（Condition ）は、動作が実行される条件を入力する条件項目である。条件項目９３に入力する命令は、条件項目データテーブル７７から選択可能である。
条件項目データテーブル７７は、複数の条件命令が格納されたデータベースである。例えば、センサやタイマーのＯＮ／ＯＦＦ確認、モータのエラー確認等、確認や判断内容を決める条件命令の集まりである。
条件項目データテーブル７７に格納されている条件命令は、図１７〜２０に示す第１表の「Condition 」と記載された行の「コマンド名」に示す通りである。
【００５７】
動作項目９４（Action）は、動作の内容を入力する動作項目である。動作項目９４に入力する実行命令は、動作項目データテーブル７８から選択可能である。
動作項目データテーブル７８は、複数の実行命令が格納されたデータベースである。例えば、モータやタイマーのＯＮ／ＯＦＦ等、制御動作の実行命令の集まりである。
動作項目データテーブル７８に格納されている条件命令は、図１７〜２０に示す第１表の「Action」と記載された行の「コマンド名」に示す通りである。
【００５８】
ここで、図１７〜２０に示す第１表の「コマンド名」について、カテゴリ毎に解説する。
第１表内で用いている「自軸」とは、制御の対象となるモータを指す。「他軸」とは、制御の対象となるモータ以外のモータを指す。モータの回転方向において、「ＣＷ方向」とは、時計回りを指し、「ＣＣＷ方向」とは、反時計回りを指す。
また、「モータパルス」とは、回転数検出手段３１で検出したモータからのパルス数である。
さらに、「カウンタ」、「タイマー」とは、プログラム上で動作可能な「カウンタ」、「タイマー」である。
【００５９】
[ General ]
< Condition >
「C ＿chk 」は、自軸モータのカウンタ値と、任意に設定された確認値とを比較し、一致した場合に条件成立となる命令である。なお、確認値は、０〜２５４の間の整数で設定可能である。「C ＿clr 」又は「C ＿incr」命令と合わせて使用できる。
< Action >
「C ＿clr 」は、自軸モータのカウンタ値をクリアする命令である。
「ERR ＿initialize」は、自軸モータのエラーの初期化を行う命令である。
「C ＿incr」は、自軸モータのカウンタ値に「１」を加算する命令である。
< Branch >
「RETRY ＿chk 」は、ジャンプする名称項目９１（State ）を２箇所設定する命令である。
【００６０】
[ Error Operation ]
< Condition >
「ERR ＿OFF ＿chk 」は、指定する他軸モータのエラー状態を確認する命令である。エラーが無い場合、条件成立となる。
「ERR ＿ON＿chk 」は、指定する他軸モータのエラー状態を確認する命令である。エラーがある場合、条件成立となる。
「Host＿clr ＿chk 」は、同一コントローラ内のモータにクリア命令が書き込まれた場合に、条件が成立する命令である。
< Action >
「JamERR＿clr 」は、ＪＡＭエラーを解除する命令である。なお、ＪＡＭエラーとは、自軸モータが駆動しているにも関わらず、一定時間の間、搬送物が移動しない（自センサがＯＮからＯＦＦにならない）場合に、搬送が妨げられたと判断するエラーである。
「SensorERR ＿clr 」は、センサタイマーエラーを解除する命令である。
「BUS ＿OFF ＿CLR 」は、バスオフエラーを解除する命令である。
「JamERR＿set 」は、ＪＡＭエラーをセットする命令である。
「SensorERR ＿set 」は、センサタイマーエラーをセットする命令である。
「BUS ＿OFF ＿SET 」は、バスオフエラーをセットする命令である。
【００６１】
[ Sensor / Motor Check ]
< Condition >
「MotorOFF＿chk 」は、指定する他軸モータの動作状態を確認する命令である。他軸モータがＯＦＦの場合、条件成立となる。
「MotorON ＿chk 」は、指定する他軸モータの動作状態を確認する命令である。他軸モータがＯＮの場合、条件成立となる。
「SensorOFF ＿chk 」は、指定するセンサの動作状態を確認する命令である。センサがＯＦＦの場合、条件成立となる。
「SensorON＿chk 」は、指定するセンサの動作状態を確認する命令である。センサがＯＮの場合、条件成立となる。
【００６２】
[ Motor Synchrinization ]
< Condition >
「AXIS＿STATE ＿F 」は、同一コントローラ内の他軸モータが「SELF＿STATE ＿S 」でセットした値と、任意に設定された確認値とを比較し、不一致の場合に条件成立となる命令である。なお、確認値は、０〜２５４の間の整数で設定可能である。「SELF＿STATE ＿S 」命令と合わせて使用できる。
「AXIS＿STATE ＿T 」は、他軸モータが「SELF＿STATE ＿S 」でセットした値と、任意に設定された確認値とを比較し、一致の場合に条件成立となる命令である。なお、確認値は、０〜２５４の間の整数で設定可能である。「SELF＿STATE ＿S 」命令と合わせて使用できる。
「GET ＿REQUEST 」は、他軸モータが「AXIS＿REQUEST 」でセットした値と、任意に設定された確認値とを比較し、一致の場合に条件成立となる命令である。なお、確認値は、０〜２５４の間の整数で設定可能である。「AXIS＿REQUEST 」命令と合わせて使用できる。
「SELF＿VALID 」は、自軸モータが「SELF＿STATE ＿S 」でセットした値と、任意に設定された確認値とを比較し、一致の場合に条件成立となる命令である。なお、確認値は、０〜２５４の間の整数で設定可能である。
【００６３】
< Action >
「AXIS＿REQUEST 」は、他軸モータに対して、任意の値をセットする命令である。なお、任意の値は、０〜２５４の間の整数で設定可能である。
「SELF＿STATE ＿C 」は、自軸モータが「SELF＿STATE ＿S 」でセットした値をクリアする命令である。
「SELF＿STATE ＿S 」は、他軸モータに対して、任意の値をセットする命令である。なお、任意の値は、０〜２５４の間の整数で設定可能である。「AXIS＿STATE ＿F 」又は「AXIS＿STATE ＿T 」命令と合わせて使用できる。
【００６４】
[ Motor Run / Stop ]
< Action >
「MotorSTOP ＿all 」は、同一のコントローラで制御する全てのモータを停止する命令である。
「MotorANGLE＿CCW 」は、自軸モータをＣＣＷ方向に指定角度だけ回転させる命令である。指定角度は、０〜１２，０００度の範囲で、５度刻みで設定可能である。
「MotorANGLE＿CW」は、自軸モータをＣＷ方向に指定角度だけ回転させる命令である。指定角度は、０〜１２，０００度の範囲で、５度刻みで設定可能である。
【００６５】
「MotorRUN＿spd1」は、設定した方向に、第一速度でモータを駆動する命令である。なお、モータ駆動と同時に、タイマーをスタートさせることも可能である。以下の「MotorRUN＿spd*」も同様である。
「MotorRUN＿spd1＿CCW 」は、ＣＣＷ方向に、第一速度でモータを駆動する命令である。
「MotorRUN＿spd1＿CW」は、ＣＷ方向に、第一速度でモータを駆動する命令である。
「MotorRUN＿spd1＿rev 」は、設定した方向と逆方向に、第一速度でモータを駆動する命令である。
【００６６】
「MotorRUN＿spd2」は、設定した方向に、第二速度でモータを駆動する命令である。
「MotorRUN＿spd2＿CCW 」は、ＣＣＷ方向に、第二速度でモータを駆動する命令である。
「MotorRUN＿spd2＿CW」は、ＣＷ方向に、第二速度でモータを駆動する命令である。
「MotorRUN＿spd2＿rev 」は、設定した方向と逆方向に、第二速度でモータを駆動する命令である。
【００６７】
「MotorRUN＿spd3」は、設定した方向に、第三速度でモータを駆動する命令である。
「MotorRUN＿spd3＿CCW 」は、ＣＣＷ方向に、第三速度でモータを駆動する命令である。
「MotorRUN＿spd3＿CW」は、ＣＷ方向に、第三速度でモータを駆動する命令である。
「MotorRUN＿spd3＿rev 」は、設定した方向と逆方向に、第三速度でモータを駆動する命令である。
「MotorSTOP 」は、自軸モータを停止する命令である。
【００６８】
[ Start Timer ]
< Action >
「TMR1＿start 」は、タイマー１をスタートする命令である。なお、タイマーの値は、１〜２５４の間の整数で設定可能である。時間の換算は、設定値１が１００ミリ秒（ｍｓｅｃ）である。以下の「TMR*＿start 」も同様である。
「TMR2＿start 」は、タイマー２をスタートする命令である。
「TMR3＿start 」は、タイマー３をスタートする命令である。
「TMR4＿start 」は、タイマー４をスタートする命令である。
「TMR5＿start 」は、タイマー５をスタートする命令である。
「TMR6＿start 」は、タイマー６をスタートする命令である。
「TMR7＿start 」は、タイマー７をスタートする命令である。
「TMR8＿start 」は、タイマー８をスタートする命令である。
【００６９】
[ Check Timer ]
< Condition >
「TMR1＿chk 」は、タイマー１が時間切れとなった場合、条件成立となる命令である。なお、「TMR1＿start 」命令が未実行の場合は、タイムアップとみなし条件成立となる。以下の「TMR*＿chk 」も同様である。
「TMR2＿chk 」は、タイマー２が時間切れとなった場合、条件成立となる命令である。
「TMR3＿chk 」は、タイマー３が時間切れとなった場合、条件成立となる命令である。
「TMR4＿chk 」は、タイマー４が時間切れとなった場合、条件成立となる命令である。
「TMR5＿chk 」は、タイマー５が時間切れとなった場合、条件成立となる命令である。
「TMR6＿chk 」は、タイマー６が時間切れとなった場合、条件成立となる命令である。
「TMR7＿chk 」は、タイマー７が時間切れとなった場合、条件成立となる命令である。
「TMR8＿chk 」は、タイマー８が時間切れとなった場合、条件成立となる命令である。
【００７０】
[ Stop Timer ]
< Action >
「TMR1＿stop」は、「TMR1＿start 」にてスタートしたタイマー１を停止する命令である。
「TMR2＿stop」は、「TMR2＿start 」にてスタートしたタイマー２を停止する命令である。
「TMR3＿stop」は、「TMR3＿start 」にてスタートしたタイマー３を停止する命令である。
「TMR4＿stop」は、「TMR4＿start 」にてスタートしたタイマー４を停止する命令である。
「TMR5＿stop」は、「TMR5＿start 」にてスタートしたタイマー５を停止する命令である。
「TMR6＿stop」は、「TMR6＿start 」にてスタートしたタイマー６を停止する命令である。
「TMR7＿stop」は、「TMR7＿start 」にてスタートしたタイマー７を停止する命令である。
「TMR8＿stop」は、「TMR8＿start 」にてスタートしたタイマー８を停止する命令である。
【００７１】
[ Remote IN / OOT ]
< Action >
「RemoteOUT ＿clr 」は、リモートＯＵＴ端子の出力をＯＦＦする命令である。なお、リモートＯＵＴ端子とは、外部装置への電圧供給をＯＮ／ＯＦＦ可能な端子である。
「RemoteOUT ＿set 」は、リモートＯＵＴ端子の出力をＯＮする命令である。
「MotorPORT ＿clr 」は、リモートポートの出力をＯＦＦする命令である。なお、リモートポートとは、リモートＯＵＴ端子と同様の機能を有した端子である。リモートポートでは、１つのモータコネクタを最大３つの端子として制御することも可能である。
「MotorPORT ＿set 」は、リモートポートの出力をＯＮする命令である。
【００７２】
[ Tray ID ]
< Condition >
「ValidTrayID 」は、自軸モータの「TrayID」に格納されている値が、「0x00000000」，「0xffffffff」以外の場合、条件成立となる命令である。
< Action >
「Tray＿bit 」は、自軸モータの「TrayID」に格納されている値の上位４ビットを変更する命令である。
「Tray＿get 」は、他軸モータの「TrayID」に格納されている値の内、上位４ビットの値以外の値を、自軸モータの「TrayID」に取得する命令である。
「TrayID＿clr 」は、自軸モータの「TrayID」に格納されている値をクリアする命令である。
「TrayID＿get 」は、他軸モータの「TrayID」に格納されている値を、自軸モータの「TrayID」に取得する命令である。
「TrayID＿put 」は、自軸モータの「TrayID」に格納されている値を、バス６０（ＣＡＮ通信）上に送信する命令である。
【００７３】
[ RAT status ]
< Condition >
「RAT ＿STATE ＿CHK 」は、他軸モータが「RAT ＿STATE ＿S 」命令でセットした値と、任意の設定された確認値とを比較し、一致していれば条件成立となる命令である。なお、確認値は、０，１０００，２０００，３０００から選択可能である。
「RAT ＿STATE ＿R 」は、他軸モータが「RAT ＿STATE ＿S 」命令でセットした値を確認し、値が０又は２でれば条件成立となる命令である。
「RAT ＿STATE ＿V 」は、他軸モータが「RAT ＿STATE ＿S 」命令でセットした値を確認し、値が０又は１でれば条件成立となる命令である。
「RTAG＿NUMCHK」は、自軸モータの「TrayID」に格納されている値の上位４ビットが、任意の確認値と比較し、一致していれば条件成立となる命令である。
< Action >
「RAT ＿STATE ＿S 」は、他軸モータに対して、任意の値をセットする命令である。
「RTAG＿NUMSET」は、自軸モータの「TrayID」に格納されている値の上位４ビットの値を変更する命令である。
【００７４】
[ External Machine ]
< Condition >
「RX＿FLAG＿CHK 」は、「RX＿FLAG」値と、任意の確認値を比較し、一致していれば条件成立とする命令である。なお、確認値は、１〜２５４の間の整数で設定可能である。なお、「RX＿FLAG」とは、コンピュータ８０等の外部通信機器との通信用データの内、受信用データを指す。
「TX＿FLAG＿CHK 」は、「TX＿FLAG」値と、任意の確認値を比較し、一致していれば条件成立とする命令である。なお、確認値は、１〜２５４の間の整数で設定可能である。なお、「TX＿FLAG」とは、コンピュータ８０等の外部通信機器との通信用データの内、送信用データを指す。
「COMP＿RX＿BYTE＿USER」は、自軸モータの「RX＿FLAG」値と、「Byte＿User」の値を比較し、任意に設定する比較条件が成立すれば、条件成立とする命令である。
「COMP＿TX＿BYTE＿USER」は、自軸モータの「TX＿FLAG」値と、「Byte＿User」の値を比較し、任意に設定する比較条件が成立すれば、条件成立とする命令である。なお、「Byte＿User」とは、コントローラ１同士で送受信可能な通信用データである。
「COMP＿TX＿RX」は、自軸モータの「TX＿FLAG」値と、「RX＿FLAG」値を比較し、任意に設定する比較条件が成立すれば、条件成立とする命令である。
「BYTE＿USER＿CHK 」は、指定する他軸モータの「Byte＿User」の値と、任意の確認値を比較し、一致していれば条件成立とする命令である。
【００７５】
< Action >
「RX＿FLAG＿SET 」は、自軸モータの「RX＿FLAG」値を設定する命令である。
「TX＿FLAG＿SET 」は、自軸モータの「TX＿FLAG」値を設定する命令である。
「VERSION ＿SET 」は、プログラムのバージョン番号をコントローラへ書き込む命令である。
「BYTE＿USER＿GET 」は、指定する他軸モータの「Byte＿User」の値を、自軸モータの「Byte＿User」の値として取得する命令である。
「BYTE＿USER＿SET 」は、自軸モータの「Byte＿User」の値を設定する命令である。
「PLS ＿CNT ＿START 」は、自軸モータのモータパルスのカウントをスタートする命令である。指定パルス数のカウントアップで、自軸モータを第二速度へ切り替える。
「PLS ＿CNT ＿START ＿R 」は、自軸モータのモータパルスのカウントをスタートする命令である。指定パルス数のカウントアップで、自軸モータを第二速度へ切り替える。
「PLS ＿CNT ＿STOP」は、「PLS ＿CNT ＿START 」又は「PLS ＿CNT ＿START ＿R 」でスタートさせた自軸モータのモータパルスのカウントを停止する命令である。
【００７６】
図１７〜２０に示す第１表の「コマンド名」である「Condition 」および「Action」において、各コマンドに入力する数値や指定機器名等は、「Argument」と呼んでいる。「Argument」は、「I CAN Designer」と呼ぶソフトウェア（プログラム）で入力および選択が可能である。ちなみに、「I CAN Designer」は、プログラム作成支援プログラム７５とは別のソフトウェアであるが、プログラム作成支援プログラム７５と同様に、コンピュータ８０を用いて動作するものである。
「I CAN Designer」では、コントローラ１の動作設定、コントローラ１とモータとの接続設定、各種ノードプロパティ（タイマー値、モータ速度、センサ等）の設定が可能である。その他、通信ネットワーク設定、搬送ラインのレイアウトデザインの作成、モータのＪＯＧ運転や各エラー等のモニタリング機能、ゲートウェイ基板５５ｔの通信設定等を行うことが可能である。
【００７７】
「I CAN Designer」で用いる指定機器名は次の通りである。
[ Argument TRAY ]
「Tray＿1st 」は、自軸モータが管理する１つ目のＴｒａｙＩＤを指す。
「Tray＿2nd 」は、自軸モータが管理する２つ目のＴｒａｙＩＤを指す。
「Tray＿3rd 」は、自軸モータが管理する３つ目のＴｒａｙＩＤを指す。
「Tray＿4th 」は、自軸モータが管理する４つ目のＴｒａｙＩＤを指す。
「Tray＿5th 」は、自軸モータが管理する５つ目のＴｒａｙＩＤを指す。
「Tray＿6th 」は、自軸モータが管理する６つ目のＴｒａｙＩＤを指す。
【００７８】
[ Argument COIL ]
「ROUTPORT＿U 」は、１つのモータコネクタに備えるリモート出力の内のＵをを指す。
「ROUTPORT＿UV」は、１つのモータコネクタに備えるリモート出力の内のＵ，Ｖを指す。
「ROUTPORT＿UVW 」は、１つのモータコネクタに備えるリモート出力の内のＵ，Ｖ，Ｗを指す。
「ROUTPORT＿UW」は、１つのモータコネクタに備えるリモート出力の内のＵ，Ｗを指す。
「ROUTPORT＿V 」は、１つのモータコネクタに備えるリモート出力の内のＶを指す。
【００７９】
[ Argument SENSOR / MOTOR ]
「SELFS ＿1 」は、自ゾーンセンサ１を指す。
「SELFS ＿2 」は、自ゾーンセンサ２を指す。
「UPSTM ＿1 」は、上流モータ１を指す。
「UPSTM ＿2 」は、上流モータ２を指す。
「UPSTM ＿3 」は、上流モータ３を指す。
「UPSTM ＿4 」は、上流モータ４を指す。
「DWSTM ＿1 」は、下流モータ１を指す。
「DWSTM ＿2 」は、下流モータ２を指す。
「DWSTM ＿3 」は、下流モータ３を指す。
「DWSTM ＿4 」は、下流モータ４を指す。
「DWSTS ＿1 」は、下流センサ１を指す。
【００８０】
つぎに、定型命令プログラム７９は、ローラコンベア装置２０の制御の基本となるプログラムを、ひな型として用意したものである。
例えば、直線搬送装置２１は、直線主搬送プログラムに基づいて制御される。直線主搬送プログラムは、コンピュータ８０の表示装置８１に表示すると、図９〜１１に示すプログラムテーブル１０１（直線主搬送プログラム）の通りとなる。
プログラムテーブル１０１（直線主搬送プログラム）は、主番号列９０（No）が「０」、名称項目９１（State ）が「INIT」のプログラムからスタートする。名称項目９１（State ）が「INIT」のプログラムでは、２行の命令の対が、１つのブロックに格納されている。すなわち、１行目の「ERR ＿initialize(0) 」にて自軸モータのエラーの初期化を行う。次に、「TMR6＿start(10) 」にてタイマー６をスタートさせた後、「VERSION ＿SET(1401) 」でバージョン番号を取得する。そして、主番号列９０（No）が「１」、名称項目９１（State ）が「POWER ＿ON」のプログラムへ移行する。以降、順次、プログラムが展開される。
なお、各命令において、「（0 ）」というように、デフォルト（出荷状態）では“0 ”が格納されており、ユーザにて所望の値が入力されることとする。
【００８１】
プログラム作成支援プログラム７５では、一つの条件項目９３（Condition ）と、一つの動作項目９４（Action）とが、一つの条件動作対として扱われる。例えば、主番号列９０（No）が「２」、名称項目９１（State ）が「STOP＿IDLE」のプログラムにおいて、１つ目のブロック１には、２行の条件動作対が格納されている。
１行目では、「SensorON＿chk(UPSTS ＿1)」という条件項目９３（Condition ）と、「MotorRUN＿spd1(0) 」という動作項目９４（Action）とが、一つの条件動作対を成している。
２行目では、「SensorOFF ＿chk(SELFS ＿1)」という条件項目９３（Condition ）と、「TMR6＿start(25) 」という動作項目９４（Action）とが、一つの条件動作対を成している。
そして、このブロック１は、次工程項目９５（Blanch）が「TRAY＿IN」に関連付けられている。なお、一つの名称項目９１（State ）に対して、複数のブロックを関連付けることが可能である。
【００８２】
その他のブロックについても前述と同様である。なお、条件動作対において、条件項目９３（Condition ）又は動作項目９４（Action）のどちらかが「空白」の場合でも、「項目なし」と判断して、一つの条件動作対として扱われる。
以上のように、ユーザは、入力装置８２を用いて、プログラムテーブル７６に入力を行うだけで、ローラコンベア装置２０を制御可能なプログラムを、コンピュータ８０で自動作成できる。
【００８３】
直線主搬送プログラムの動作は、図１２のフローチャートに示す通りである。直線主搬送プログラムは、ステップ１〜ステップ１４で構成されている。フローチャートについて、直線搬送装置２１のゾーンＢを例にすると、モータとはモータ２７ｂを指す。上流センサ１とはセンサ２７ａを指し、自センサとはセンサ２７ｂを指し、下流センサ１とはセンサ２７ｃを指す。他のゾーンＡ，Ｃ，Ｄについても同様である。
図１２のフローチャートの動作は、図９〜１１に示したプログラムテーブル１０１（直線主搬送プログラム）によって、実現することができる。
以下、具体的に説明する。
【００８４】
図１２のフローチャートの「運転開始」の動作は、次のプログラムに基づく。
プログラムテーブル１０１において、主番号列９０（No）「０」、名称項目９１（State ）「INIT」では、１行目の「ERR ＿initialize(0) 」と、２行目の「TMR6＿start(10)
」と、３行目の「VERSION ＿SET(1401) 」とが動作して、次の名称項目９１（State ）「POWER ＿ON」に進む。
すなわち、最初に、自軸モータのエラーが初期化される。続いて、タイマー６で１秒のカウントダウンが開始される。そして、プログラムのバージョン番号をコントローラ１に書き込んだ後、「POWER ＿ON」に進む。
【００８５】
主番号列９０（No）「１」、名称項目９１（State ）「POWER ＿ON」では、条件項目９３（Condition ）「TMR6＿chk(0)」の条件が成立すると、次の名称項目９１（State ）「STOP＿IDLE」に進む。
すなわち、タイマー６が時間切れになったかどうかを確認し、条件が成立していると、「STOP＿IDLE」に進む。
以上が、図１２のフローチャートの「運転開始」の動作である。
【００８６】
続いて、図１２のフローチャートの「ステップ１」〜「ステップ２」の動作は、次のプログラムに基づく。
主番号列９０（No）「２」、名称項目９１（State ）「STOP＿IDLE」において、副番号列９２（Block ）「Block1」が動作する。
副番号列９２（Block ）「Block1」の１行目では、条件項目９３（Condition ）「SensorON＿chk(UPSTS ＿1)」の条件が成立すると、動作項目９４（Action）「MotorRUN＿spd1(0) 」が動作する。
すなわち、上流センサ１がＯＮしているかどうかを確認し、条件が成立していると、自軸モータを速度１でＲＵＮ（回転）する。
つぎに、２行目では、条件項目９３（Condition ）「SensorOFF ＿chk(SELFS ＿1)」の条件が成立すると、動作項目９４（Action）「TMR6＿start(25) 」が動作する。そして、次の名称項目９１（State ）「TRAY＿IN」に進む。
すなわち、自センサがＯＦＦしているかどうかを確認し、条件が成立していると、タイマー６で２．５秒のカウントダウンが開始される。そして、「TRAY＿IN」に進む。
以上が、図１２のフローチャートの「ステップ１」〜「ステップ２」の動作である。
【００８７】
なお、主番号列９０（No）「２」、名称項目９１（State ）「STOP＿IDLE」において、副番号列９２（Block ）「Block1」の条件が不成立の場合には、副番号列９２（Block ）「Block2」が動作する。
副番号列９２（Block ）「Block2」では、条件項目９３（Condition ）「SensorON＿chk(SELFS ＿1)」の条件が成立すると、動作項目９４（Action）「TrayID＿put(Tray＿1st)」が動作する。そして、次の名称項目９１（State ）「CHK ＿DWST」に進む。
すなわち、自センサがＯＮしているかどうかを確認し、条件が成立していると、自軸モータが管理する１つ目の「TrayID＿」の値を、ＣＡＮ通信（バス６０）上に送信する。そして、「CHK ＿DWST」に進む。
【００８８】
続いて、図１２のフローチャートの「ステップ３」の動作は、次のプログラムに基づく。
主番号列９０（No）「３」、名称項目９１（State ）「TRAY＿IN」において、副番号列９２（Block ）「Block1」が動作する。
副番号列９２（Block ）「Block1」の１行目では、条件項目９３（Condition ）「SensorOFF ＿chk(UPSTS ＿1)」の条件が成立すると、動作項目９４（Action）「TMR4＿start(0)」が動作する。
すなわち、上流センサ１がＯＦＦしているかどうかを確認し、条件が成立していると、タイマー４をスタートする。
つぎに、２行目では、動作項目９４（Action）「TrayID＿get(Tray＿1st+UPSTS ＿1)」が動作する。
すなわち、上流センサ１の「TrayID」を取得し、自軸モータが管理する１つ目の「TrayID」に格納する。
つぎに、３行目では、動作項目９４（Action）「TMR6＿stop(0) 」が動作して、そして、次の名称項目９１（State ）「SENS＿TIM 」に進む。
すなわち、タイマー６を停止させる。そして、「SENS＿TIM 」に進む。
以上が、図１２のフローチャートの「ステップ３」の動作である。
【００８９】
なお、主番号列９０（No）「２」、名称項目９１（State ）「TRAY＿IN」において、副番号列９２（Block ）「Block1」の条件が不成立の場合には、副番号列９２（Block ）「Block2」が動作する。
副番号列９２（Block ）「Block2」では、条件項目９３（Condition ）「SensorON＿chk(SELFS ＿1)」の条件が成立すると、動作項目９４（Action）「TMR6＿stop(0) 」が動作する。そして、次の名称項目９１（State ）「CHK ＿DWST2 」に進む。
すなわち、自センサがＯＮしているかどうかを確認し、条件が成立していると、タイマー６を停止させる。そして、「CHK ＿DWST2 」に進む。
【００９０】
さらに、副番号列９２（Block ）「Block2」の条件が不成立の場合には、副番号列９２（Block ）「Block3」が動作する。
副番号列９２（Block ）「Block3」では、条件項目９３（Condition ）「TMR6＿chk(0)」の条件が成立すると、動作項目９４（Action）「MotorSTOP(0)」が動作する。そして、次の名称項目９１（State ）「TARY＿IN＿WAIT」に進む。
【００９１】
続いて、図１２のフローチャートの「ステップ４」の動作は、次のプログラムに基づく。
主番号列９０（No）「５」、名称項目９１（State ）「SENS＿TIM 」において、副番号列９２（Block ）「Block1」が動作する。
副番号列９２（Block ）「Block1」の１行目では、条件項目９３（Condition ）「SensorON＿chk(SELFS ＿1)」の条件が成立すると、動作項目９４（Action）「TMR4＿stop(0)
」が動作する。
すなわち、自ゾーンセンサ１がＯＮしているかどうかを確認し、条件が成立していると、タイマー４を停止させる。
つぎに、２行目では、動作項目９４（Action）「TrayID＿put(Tray＿1st)」が動作する。そして、次の名称項目９１（State ）「CHK ＿DWST2 」に進む。
すなわち、自軸モータが管理する１つ目の「TrayID」の値をＣＡＮ通信上（バス６０）に送信する。そして、「CHK ＿DWST2 」に進む。
以上が、図１２のフローチャートの「ステップ４」の動作である。
【００９２】
続いて、図１２のフローチャートの「ステップ５」の動作は、次のプログラムに基づく。
主番号列９０（No）「８」、名称項目９１（State ）「CHK ＿DWST2 」において、副番号列９２（Block ）「Block1」が動作する。
副番号列９２（Block ）「Block1」の１行目では、条件項目９３（Condition ）「SensorOFF ＿chk(DWSTS ＿1)」の条件が成立すると、動作項目９４（Action）「TMR1＿start(0)」が動作する。
すなわち、下流センサ１がＯＦＦしているかどうかを確認し、条件が成立していると、タイマー１をスタートさせる。
つぎに、２行目では、条件項目９３（Condition ）「MotorON ＿chk(DWSTM ＿1)」の条件が成立すると、次の名称項目９１（State ）「TRAY＿OUT 」に進む。
すなわち、下流モータ１がＯＮしているかどうか確認し、条件が成立すると、「TRAY＿OUT 」に進む。
以上が、図１２のフローチャートの「ステップ５」の動作である。
【００９３】
なお、副番号列９２（Block ）「Block1」の条件が不成立の場合には、副番号列９２（Block ）「Block2」が動作する。図１２のフローチャートにおいて、「ステップ１２」に移る動作である。
主番号列９０（No）「８」、名称項目９１（State ）「CHK ＿DWST2 」において、副番号列９２（Block ）「Block2」の１行目では、条件項目９３（Condition ）「SensorON＿chk(DWSTS ＿1)」の条件が成立すると、動作項目９４（Action）「MotorSTOP(0)」が動作する。そして、次の名称項目９１（State ）「CHK ＿DWST」に進む。
すなわち、下流センサ１がＯＮしているかどうか確認し、条件が成立の場合には、自軸モータを停止させる。そして、「CHK ＿DWST」に進む。
主番号列９０（No）「７」、名称項目９１（State ）「CHK ＿DWST」において、副番号列９２（Block ）「Block2」の１行目では、条件項目９３（Condition ）「SensorOFF ＿chk(DWSTS ＿1)」の条件が成立すると、動作項目９４（Action）「TMR1＿start(0)」が動作する。
すなわち、下流センサ１がＯＦＦかどうか確認し、条件が成立すると、タイマー１をスタートする。
つぎに、２行目では、動作項目９４（Action）「MotorRUN＿spd1(0) 」が動作し、次の名称項目９１（State ）「TRAY＿OUT 」に進む。
すなわち、自軸モータを速度１で運転させ、「TRAY＿OUT 」に進む。
以上が、図１２のフローチャートの「ステップ１２」〜「ステップ１４」の動作である。
【００９４】
続いて、図１２のフローチャートの「ステップ６」、「ステップ７」の動作は、次のプログラムに基づく。
主番号列９０（No）「９」、名称項目９１（State ）「TRAY＿OUT 」において、副番号列９２（Block ）「Block1」が動作する。
副番号列９２（Block ）「Block1」の１行目では、条件項目９３（Condition ）「SensorOFF ＿chk(SELFS ＿1)」の条件が成立すると、動作項目９４（Action）「TMR1＿stop(0) 」が動作する。
すなわち、自ゾーンセンサ１がＯＦＦしているかどうかを確認し、条件が成立していると、タイマー１を停止させる。
つぎに、２行目では、動作項目９４（Action）「TMR3＿start(0)」が動作する。
すなわち、タイマー３（ＲＵＮ保持タイマー）をスタートさせる。
つぎに、３行目では、動作項目９４（Action）「ERR ＿initialize(0) 」が動作する。そして、次の名称項目９１（State ）「LOST＿CHK 」に進む。
すなわち、自軸モータのエラーを初期化させる。そして、「LOST＿CHK 」に進む。
【００９５】
続いて、図１２のフローチャートの「ステップ８」〜「ステップ１１」の動作は、次のプログラムに基づく。
主番号列９０（No）「１１」、名称項目９１（State ）「LOST＿CHK 」において、副番号列９２（Block ）「Block1」が動作する。
副番号列９２（Block ）「Block1」の１行目では、条件項目９３（Condition ）「SensorON＿chk(DWSTS ＿1)」の条件が成立すると、動作項目９４（Action）「TrayID＿clr(Tray＿1st)」が動作する。そして、次の名称項目９１（State ）「TR＿AFTER 」に進む。
すなわち、下流センサ１がＯＮかどうか確認し、条件が成立すると、自軸モータが管理する１つ目の「TrayID」の値をクリアする。そして、「TR＿AFTER 」に進む。
【００９６】
副番号列９２（Block ）「Block1」の条件が不成立の場合には、副番号列９２（Block
）「Block2」が動作する。
副番号列９２（Block ）「Block2」の１行目では、条件項目９３（Condition ）「TMR3＿chk(0)」の条件が成立すると、動作項目９４（Action）「MotorSTOP(0)」が動作する。
すなわち、タイマー３（ＲＵＮ保持タイマー）が時間切れかどうか確認し、条件が成立すると、自軸モータを停止させる。
つぎに、２行目では、動作項目９４（Action）「TrayID＿clr(Tray＿1st)」が動作する。そして、次の名称項目９１（State ）「STOP＿IDLE」に進む。
すなわち、自軸モータが管理する１つ目の「TrayID」の値をクリアする。そして、「STOP＿IDLE」に進む。つまり、「ステップ２」に戻る。
以上が、図１２に示すフローチャートに基いたプログラムテーブル１０１（直線主搬送プログラム）の動作の主な説明である。
【００９７】
一方、直角移載装置２２は、直角主搬送プログラムおよび直角分岐搬送プログラムに基づいて制御される。
直角主搬送プログラムの動作は、図１３のフローチャートに示す通りである。直角主搬送プログラムは、ステップ１〜ステップ１９で構成されている。フローチャートにおいて、モータとはモータ３７を指す。上流センサ１とは２７ｄを指し、自センサとはセンサ３２を指し、下流センサ１とはセンサ２７ｅを指す。なお、直角主搬送プログラムの主な動作内容は、従来公知の直線搬送プログラムと略同様であり、詳細は後述する。
【００９８】
直角分岐搬送プログラムの動作は、図１４のフローチャートに示す通りである。直角分岐搬送プログラムは、ステップ１〜ステップ６で構成されている。フローチャートにおいて、モータとはモータ２９を指す。自センサとはセンサ３２を指し、下流センサ２とは２７ｉを指している。なお、直角分岐搬送プログラムの主な動作内容は、従来公知の直線搬送プログラムと略同様であり、詳細は後述する。
【００９９】
つぎに、図９〜１２に示した直線主搬送プログラム、図１３，１４に示した直角主搬送プログラムおよび直角分岐搬送プログラムについて、ローラコンベア装置２０の動作に基づいて説明する。なお、説明では、図１５（ａ）〜（ｄ）および図１６（ａ）〜（ｃ）を用いることとする。
図１５（ａ）に示すように、直線搬送装置２１ａのゾーンＡから搬送されて来た搬送物７０（対象物）は、ゾーンＢに位置している。この時、ゾーンＡのＴｒａｙＩＤには「２」が格納され、ゾーンＢのＴｒａｙＩＤには「１」が格納され、ゾーンＢのモータ２４ｂはＲＵＮ（運転）しており、センサ２７ｂはＯＮである。
ゾーンＣにおいて、上流センサ１（センサ２７ｂ）がＯＮであるため、ゾーンＣのモータ２４ｃがＲＵＮ（運転）する。
上流（ゾーンＢ）のＴｒａｙＩＤである「１」を、ゾーンＣのＴｒａｙＩＤに格納する。
そして、図１５（ｂ）に示すように、搬送物７０がゾーンＣに到着したため、自センサ（センサ２７ｃ）がＯＮする。
ここで、下流センサ１（センサ２７ｄ）がＯＦＦかどうかを確認する。下流センサ１（センサ２７ｄ）がＯＦＦであるため、モータ２４ｃは停止せず、そのままＲＵＮし続ける。
搬送物７０（対象物）がセンサ２７ｃの前から離れるため、自センサ（センサ２７ｃ）がＯＦＦとなる。
モータ２４ｃのＲＵＮ保持タイマーがスタートする。
モータ２４ｃはＲＵＮ保持タイマーが切れるまでＲＵＮし続ける。この間に搬送物７０はゾーンＣからゾーンＤに搬送される。
ＲＵＮ保持タイマーのＯＦＦに伴い、モータ２４ｃがＯＦＦとなる。
ゾーンＣのＴｒａｙＩＤに格納された「１」をクリアする。
ここまでが１つのゾーンにおけるＴｒａｙＩＤの伝達フローとなる。
【０１００】
搬送物７０および搬送物１００は、前述のＴｒａｙＩＤの伝達フローと同様の動きを行い、図１５（ｂ）から図１５（ｃ）へと進んでいく。
図１５（ｃ）に示すように、搬送物７０は、ゾーンＤに位置している。ゾーンＤのセンサ２７ｄは、ＯＮしている。
直角移載装置２２であるゾーンＥにおいて、指定ＩＤに「２」が格納されている。ゾーンＥでは、上流センサ（センサ２７ｄ）がＯＮであるため、ゾーンＥのモータ３７がＲＵＮ（運転）する。
上流（ゾーンＤ）のＴｒａｙＩＤである「１」を、ゾーンＥのＴｒａｙＩＤに格納する。
ゾーンＥのＴｒａｙＩＤである「１」と、指定ＩＤである「２」とを比較し、一致しないので、直角主搬送プログラムを続行する。
そして、図１５（ｄ）に示すように、搬送物７０がゾーンＥに到着したため、自センサ（センサ３２）がＯＮする。
ここで、ゾーンＦの下流センサ１（センサ２７ｅ）がＯＦＦかどうか確認する。下流センサ１（センサ２７ｅ）がＯＦＦであるため、モータ３７は停止せず、そのままＲＵＮし続ける。
搬送物７０（対象物）が自センサ（センサ３２）の前から離れるため、自センサ（センサ３２）がＯＦＦとなる。
モータ３７のＲＵＮ保持タイマーがスタートする。
モータ３７はＲＵＮ保持タイマーが切れるまでＲＵＮし続ける。この間に搬送物７０はゾーンＥからゾーンＦに搬送される。
ＲＵＮ保持タイマーのＯＦＦに伴い、モータ３７はＯＦＦとなる。
ゾーンＥのＴｒａｙＩＤに格納された「１」をクリアする。
【０１０１】
図１６（ａ）に示すように、搬送物１００は、ゾーンＤに位置している。搬送物１００は、前述のＴｒａｙＩＤの伝達フローと同様の動きを行い、図１６（ａ）から図１６（ｂ）へと進んでいく。
図１６（ｂ）に示すように、搬送物１００は、ゾーンＥに位置している。ゾーンＥに位置するセンサ３２はＯＮである。ゾーンＥにおいて、指定ＩＤと、ＴｒａｙＩＤには、「２」が格納されている。
ゾーンＥのＴｒａｙＩＤである「２」と、指定ＩＤである「２」とを比較し、一致するため、「分岐要求送信」となり、直角分岐搬送プログラムへと移る。
ゾーンＧの下流センサ２（センサ２７ｉ）がＯＦＦであるため、モータ２９がＲＵＮとなる。
図１６（ｃ）に示すように、モータ２９のＲＵＮに伴い、搬送物１００はゾーンＥからゾーンＧに搬送される。
以上が、ローラコンベア装置２０に基づいた直線主搬送プログラム、直角主搬送プログラムおよび直角分岐搬送プログラムの動きである。
【０１０２】
前述のように、本実施形態のコントローラ１において、マイクロコンピュータ１５（ＣＰＵ）と、メモリ１６（書き換え可能なメモリ）とを有したプリント基板２（モータ制御基板）は、略コンピュータである。よって、ＰＬＣ等の外部の制御装置、ならびにＰＬＣを収納する制御盤を削減できた。また、メモリ１６（書き換え可能なメモリ）を用いて、プログラムの変更が可能である。
【０１０３】
１枚のプリント基板２（モータ制御基板）に、複数のロジック内蔵ドライバ１４（モータ駆動回路）を備えることで、プリント基板２（モータ制御基板）の数量を減らすことができた。すなわち、コントローラ１の数量を削減できた。
【０１０４】
本実施形態のローラコンベア装置２０において、ＩＤ装置５０（識別手段）で搬送物７０，１００（対象物）に「ＴｒａｙＩＤ」と呼ばれるＩＤ（電子符号）を付し、「ＴｒａｙＩＤ」を搬送物７０，１００（対象物）到着するよりも前にコントローラ１で受信することができた。このことにより、搬送物７０，１００（対象物）を止めることなく、順次搬送することができた。
【０１０５】
本実施形態のローラコンベア装置の制御方法において、「ＴｒａｙＩＤ」を搬送物７０，１００（対象物）到着するよりも前にコントローラ１で受信することにより、搬送物７０，１００（対象物）を止めることなく、順次搬送することができた。
【０１０６】
本実施形態のプログラム作成支援プログラム７５において、プログラムテーブル７６に、名称項目９１と、条件項目９３と、動作項目９４と、次工程項目９５とを入力するだけで、コントローラ１に内蔵されるプログラムが、コンピュータ８０によって自動作成された。すなわち、一般的なプログラム言語を用いることなく、コントローラ１に内蔵されるプログラムを作成できた。
【０１０７】
本実施形態のプログラム作成支援プログラム７５では、一つの名称項目９１に、複数の条件動作対を、関連付けることができた。このことにより、複数の条件動作対を、一つの名称のプログラムとして、条件分けを行うことができた。
【０１０８】
本実施形態のプログラム作成支援プログラム７５では、プログラムテーブル７６を、表状又は表の一部として、コンピュータ８０の表示画面９１で見ることができた。このことにより、プログラムの修正や見直しが容易となった。
また、条件項目データテーブル７７と、動作項目データテーブル７８から、任意の項目を選択するだけで、所望のプログラムを作成できた。
【０１０９】
以上のように、本実施形態のコントローラ１によれば、構成部品の削減ができ、制御方法の自由度を向上できた。
また、本発明のローラコンベア装置２０、ローラコンベア装置の制御方法、ならびにプログラム作成支援プログラム７５によれば、制御方法の自由度を向上できた。
【０１１０】
上記した実施形態では、搬送物７０に「ＴｒａｙＩＤ」と呼ばれるＩＤ（電子符号）を付す例を示した。コンピュータ５１が、ゲートウェイ基板５５を介してコントローラ１に接続されていることにより、「ＴｒａｙＩＤ」を用いて、コンピュータ５１で搬送物７０のモニタリングを行うことも可能である。
【０１１１】
上記した実施形態では、ＩＤ装置５０（識別手段）は、コンピュータ５１と、バーコードリーダ５２とを有する例を示したが、本発明はこれに限定されるものではない。例えば、バーコードリーダ５２の代わりに、ＲＦＩＤ（無線ＩＤ）技術を用いた装置でも構わない。すなわち、バーコードの代わりに、ＲＦタグやＩＣタグ等を用いても構わない。
【符号の説明】
【０１１２】
１，１ａ〜１ｄ    コントローラ
２    プリント基板（モータ制御基板）
１２    通信回路
１４    ロジック内蔵ドライバ（モータ駆動回路）
１５    マイクロコンピュータ（ＣＰＵ）
１６    メモリ（書き換え可能なメモリ）
１７    プログラマブル・ロジック
２０    ローラコンベア装置
２４ａ〜２４ｌ，３４ａ，３４ｂ，３７    モータ（モータ内蔵ローラ）
２７，２７ａ〜２７ｌ，３２    センサ（検知手段）
５０    ＩＤ装置（識別手段）
５３    通信線
５４    ＣＡＮ通信線
７０，１００    搬送物（対象物）
７５    プログラム作成支援プログラム
７６，１０１    プログラムテーブル
７７    条件項目データテーブル
７８    動作項目データテーブル
８０    コンピュータ
９０    主番号列（No）
９１    名称項目（State ）
９２    副番号列（Block ）
９３    条件項目（Condition ）
９４    動作項目（Action）
９５    次工程項目（Blanch）
【図１】
0005641768.tif 000002
【図２】
0005641768.tif 000003
【図３】
0005641768.tif 000004
【図４】
0005641768.tif 000005
【図５】
0005641768.tif 000006
【図６】
0005641768.tif 000007
【図７】
0005641768.tif 000008
【図８】
0005641768.tif 000009
【図９】
0005641768.tif 000010
【図１０】
0005641768.tif 000011
【図１１】
0005641768.tif 000012
【図１２】
0005641768.tif 000013
【図１３】
0005641768.tif 000014
【図１４】
0005641768.tif 000015
【図１５】
0005641768.tif 000016
【図１６】
0005641768.tif 000017
【図１７】
0005641768.tif 000018
【図１８】
0005641768.tif 000019
【図１９】
0005641768.tif 000020
【図２０】
0005641768.tif 000021