図面 (/)

技術 回路情報作成装置、回路情報作成システム、および回路情報作成プログラム

出願人 河吉成
発明者 河吉成
出願日 2016年5月10日 (4年7ヶ月経過) 出願番号 2016-094327
公開日 2016年12月28日 (4年0ヶ月経過) 公開番号 2016-224926
状態 特許登録済
技術分野 CAD
主要キーワード 位置確認信号 汎用入出力端子 配線バス CPU間 接触素子 モジュールアドレス 試作用 プログラム関数
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2016年12月28日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (15)

課題

試作した電子回路回路図等を自動的に作成する回路情報作成装置を提供する。

解決手段

回路情報作成装置は、ベースモジュール拡張モジュールの間の配線切り換えスイッチング手段と、拡張モジュールの識別情報を取得するアドレス取得手段と、配線情報を取得する配線情報取得手段と、拡張モジュールを動作させるファームウェアを取得するファームウェア取得手段と、識別情報に基づいて拡張モジュールごとの回路構成情報を特定し、該回路構成情報に基づいて配線情報の一部を書き換える配線情報書換手段と、拡張モジュールの回路構成情報と書き換えられた配線情報とに基づいて、回路情報を作成する回路情報作成手段と、書き換えられた配線情報に基づいて、ファームウェアに含まれている配線の定義情報を書き換えるファームウェア作成手段と、を有し、ベースモジュールと結合して特定の機能を果たす拡張モジュールを用いて構成した電子回路の回路構成を示す情報を作成する。

概要

背景

マイクロコンピュータを用いて特定の機能を果たす電子回路を開発するとき、当該機能を果たすため回路構成事前試作して、動作確認を行いながら、適切な回路構成を構築する。この試作段階において、作業を支援するツールとして、例えば、マイクロコンピュータなどの信号処理部を備えたベースボードと、ベースボードに結合して特定機能を果たす拡張モジュールと、を備えた試作ツールが知られている。

この試作ツールは、ベースボードに搭載されているマイクロコンピュータ(信号処理部)と拡張モジュールとの接続にワイヤーコネクタを用いる。ワイヤーを用いる場合は、ベースボードに備わるマイクロコンピュータの個々の端子にワイヤーの一端をハンダ付けし、ワイヤーの他端を拡張モジュールの端子にハンダ付けする。コネクタを用いる場合は、ベースボードと拡張モジュールにコネクタ用の端子を配置し、互いのコネクタ同士を接続する。

電子回路の試作作業は、様々な拡張ボードを組み合わせて動作確認をし、所望する特定の機能を果たす回路構成を確認する作業になる。したがって、機能確認の段階で拡張モジュールが取り替えられることもあるから、拡張ボードとベースボードとの接続を容易に変更できるようにすることが望ましい。特開平05−152705号公報(以下、特許文献1という)には、ベースボードと拡張モジュールの着脱を容易にできる結合構造の例が記載されている。特許文献1は、互いに平行に重なった接続ボードと、かかる接続ボードに対して直交する方向に配置された複数の部品ボードとを、複数の接触素子によって結合させる構造を記載している。

概要

試作した電子回路の回路等を自動的に作成する回路情報作成装置を提供する。 回路情報作成装置は、ベースモジュールと拡張モジュールの間の配線切り換えスイッチング手段と、拡張モジュールの識別情報を取得するアドレス取得手段と、配線情報を取得する配線情報取得手段と、拡張モジュールを動作させるファームウェアを取得するファームウェア取得手段と、識別情報に基づいて拡張モジュールごとの回路構成情報を特定し、該回路構成情報に基づいて配線情報の一部を書き換える配線情報書換手段と、拡張モジュールの回路構成情報と書き換えられた配線情報とに基づいて、回路情報を作成する回路情報作成手段と、書き換えられた配線情報に基づいて、ファームウェアに含まれている配線の定義情報を書き換えるファームウェア作成手段と、を有し、ベースモジュールと結合して特定の機能を果たす拡張モジュールを用いて構成した電子回路の回路構成を示す情報を作成する。

目的

本発明は、試作した電子回路の、不要な部品が無い最少構成にした量産用の回路図を作成するために用いる回路図情報を自動的に作成することができ、当該電子回路の最小構成の回路図に用いるファームウェアも自動的に作成できる回路情報作成装置、回路情報作成システム、および回路情報作成プログラムを提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

信号処理部を備えるベースモジュールと、上記ベースモジュールと結合して特定の機能を果たす拡張モジュールと、を有し、上記ベースモジュールに上記拡張モジュールを少なくとも1つ結合してなる電子回路の構成を示す情報を作成する回路情報作成装置であって、上記ベースモジュールと上記拡張モジュールの結合状態を定義する配線情報に基づいて上記ベースモジュールと上記拡張モジュールの間の配線切り換えスイッチング手段と、上記ベースモジュールに結合されている上記拡張モジュールの識別情報を取得するアドレス取得手段と、上記配線情報を取得する配線情報取得手段と、上記拡張モジュールを動作させるファームウェアを取得するファームウェア取得手段と、上記識別情報に基づいて上記拡張モジュールごとの回路構成情報を特定し、該回路構成情報に基づいて上記配線情報の一部を書き換える配線情報書換手段と、上記ベースモジュールに結合されている上記拡張モジュールの上記回路構成情報および書き換えられた上記配線情報に基づいて、上記電子回路の構成を表す回路図の基になる回路情報を作成する回路情報作成手段と、書き換えられた上記配線情報に基づいて、上記取得されたファームウェアに含まれている上記拡張モジュールと上記ベースモジュールとの配線に係る定義情報を書き換えて、新たなファームウェアを作成するファームウェア作成手段と、を有する回路情報作成装置。

請求項2

上記スイッチング手段は、上記ベースモジュールと上記拡張モジュールを接続する接続手段と、上記接続手段を有効または無効にする接続状態制御手段と、を有する、請求項1記載の回路情報作成装置。

請求項3

上記接続手段は、上記ベースモジュールと上記拡張モジュールを共通バスで接続する有線通信回線である、請求項2記載の回路情報作成装置。

請求項4

上記接続手段は、上記ベースモジュールと上記拡張モジュールを無線チャネルで接続する無線通信回線である、請求項2記載の回路情報作成装置。

請求項5

上記拡張モジュールを結合させた上記ベースモジュールを複数接続して相互に連動させ特定の機能を果たす上記電子回路の構成を示す情報を作成する、請求項1記載の回路情報作成装置。

請求項6

ベースモジュールと拡張モジュールを結合してなる電子回路と、上記電子回路と通信ネットワークを介して接続されるサーバーと、を備える回路情報作成システムであって、請求項1に記載の上記スイッチング手段と、上記アドレス取得手段と、上記配線情報取得手段は、上記ベースモジュールと上記拡張モジュールにおいて構成されるハードウェア側に配置され、請求項1に記載の上記ファームウェア取得手段と、上記配線情報書換手段と、上記回路情報作成手段と、上記ファームウェア作成手段は、上記サーバー側に配置されている、回路情報作成システム。

請求項7

信号処理部を備えるベースモジュールと、上記ベースモジュールと結合して特定の機能を果たす拡張モジュールと、を有し、上記ベースモジュールに上記拡張モジュールを少なくとも1つ結合してなる電子回路の構成を示す情報を作成するための回路情報作成プログラムであって、上記信号処理部を、上記ベースモジュールと上記拡張モジュールの結合状態を定義する配線情報に基づいて上記ベースモジュールと上記拡張モジュールの間の配線を切り換えるスイッチング手段、上記ベースモジュールに結合されている上記拡張モジュールの識別情報を取得するアドレス取得手段、上記配線情報を取得する配線情報取得手段、上記拡張モジュールを動作させるファームウェアを取得するファームウェア取得手段、上記識別情報に基づいて上記拡張モジュールごとの回路構成情報を特定し、該回路構成情報に基づいて上記配線情報の一部を書き換える配線情報書換手段、上記ベースモジュールに結合されている上記拡張モジュールの上記回路構成情報および書き換えられた上記配線情報に基づいて、上記電子回路の構成を表す回路図の基になる回路情報を作成する回路情報作成手段、書き換えられた上記配線情報に基づいて、上記取得されたファームウェアに含まれている上記拡張モジュールと上記ベースモジュールとの配線に係る定義情報を書き換えて、新たなファームウェアを作成するファームウェア作成手段、として機能させるための回路情報作成プログラム。

請求項8

ベースモジュールと、拡張モジュールを結合してなる電子回路と通信ネットワークを介して接続されるサーバーと、において実行される回路情報作成プログラムであって、上記信号処理部を、上記ベースモジュールと上記拡張モジュールの結合状態を定義する配線情報に基づいて上記ベースモジュールと上記拡張モジュールの間の配線を切り換えるスイッチング手段、上記ベースモジュールに結合されている上記拡張モジュールの識別情報を取得するアドレス取得手段、上記配線情報を取得する配線情報取得手段、として機能させ、上記サーバーを、上記拡張モジュールを動作させるファームウェアを取得するファームウェア取得手段、上記識別情報に基づいて上記拡張モジュールごとの回路構成情報を特定し、該回路構成情報に基づいて上記配線情報の一部を書き換える配線情報書換手段、上記ベースモジュールに結合されている上記拡張モジュールの上記回路構成情報および書き換えられた上記配線情報に基づいて、上記電子回路の構成を表す回路図の基になる回路情報を作成する回路情報作成手段、書き換えられた上記配線情報に基づいて、上記取得されたファームウェアに含まれている上記拡張モジュールと上記ベースモジュールとの配線に係る定義情報を書き換えて、新たなファームウェアを作成するファームウェア作成手段、として機能させるための回路情報作成プログラム。

技術分野

0001

本発明は、試作した電子回路の量産に用いる情報を自動的に作成する回路情報作成装置、回路情報作成システム、および回路情報作成プログラムに関する。

背景技術

0002

マイクロコンピュータを用いて特定の機能を果たす電子回路を開発するとき、当該機能を果たすため回路構成事前に試作して、動作確認を行いながら、適切な回路構成を構築する。この試作段階において、作業を支援するツールとして、例えば、マイクロコンピュータなどの信号処理部を備えたベースボードと、ベースボードに結合して特定機能を果たす拡張モジュールと、を備えた試作ツールが知られている。

0003

この試作ツールは、ベースボードに搭載されているマイクロコンピュータ(信号処理部)と拡張モジュールとの接続にワイヤーコネクタを用いる。ワイヤーを用いる場合は、ベースボードに備わるマイクロコンピュータの個々の端子にワイヤーの一端をハンダ付けし、ワイヤーの他端を拡張モジュールの端子にハンダ付けする。コネクタを用いる場合は、ベースボードと拡張モジュールにコネクタ用の端子を配置し、互いのコネクタ同士を接続する。

0004

電子回路の試作作業は、様々な拡張ボードを組み合わせて動作確認をし、所望する特定の機能を果たす回路構成を確認する作業になる。したがって、機能確認の段階で拡張モジュールが取り替えられることもあるから、拡張ボードとベースボードとの接続を容易に変更できるようにすることが望ましい。特開平05−152705号公報(以下、特許文献1という)には、ベースボードと拡張モジュールの着脱を容易にできる結合構造の例が記載されている。特許文献1は、互いに平行に重なった接続ボードと、かかる接続ボードに対して直交する方向に配置された複数の部品ボードとを、複数の接触素子によって結合させる構造を記載している。

0005

特開平05−152705号公報

先行技術

0006

特許文献1に記載されている構造を使用して、ベースボードと拡張モジュールを結合しても、電子回路を効率良く試作するには更なる課題がある。すなわち、試作された電子回路と同じ構成の電子回路を量産するには、当該電子回路を不要な部品の無い可及的に最少構成にした、量産用回路図が必要になる。また、製造した電子回路を動作させるためのファームウェアも必要になる。しかしながら、従来の試作ツールは、試作後の電子回路から、当該電子回路の回路図やファームウェアを作成できるものではなく、量産用の回路図やその回路図に合わせたファームウェアを作成できるものでもなかった。また、従来の試作ツールでは、電子回路の試作後において、多くの不要なスイッチングなどの部品が付いたままになる。さらに、従来の試作ツールでは、試作後の工程において必要とされる様々な情報は、別途作成する必要があった。

発明が解決しようとする課題

0007

本発明は、試作した電子回路の、不要な部品が無い最少構成にした量産用の回路図を作成するために用いる回路図情報を自動的に作成することができ、当該電子回路の最小構成の回路図に用いるファームウェアも自動的に作成できる回路情報作成装置、回路情報作成システム、および回路情報作成プログラムを提供することを目的とする。

課題を解決するための手段

0008

本発明の一の実施形態は、信号処理部を備えるベースモジュールと、上記ベースモジュールと結合して特定の機能を果たす拡張モジュールと、を有し、上記ベースモジュールに上記拡張モジュールを少なくとも1つ結合してなる電子回路の構成を示す情報を作成する回路情報作成装置である。かかる回路情報作成装置は、上記ベースモジュールと上記拡張モジュールの結合を定義する配線情報に基づいて上記ベースモジュールと上記拡張モジュールの間の配線切り換えるスイッチング手段と、上記ベースモジュールに結合されている上記拡張モジュールの識別情報を取得するアドレス取得手段と、上記配線情報を取得する配線情報取得手段と、上記拡張モジュールを動作させるファームウェアを取得するファームウェア取得手段と、上記識別情報に基づいて上記拡張モジュールごとの回路構成情報を特定し、該回路構成情報に基づいて上記配線情報の一部を書き換える配線情報書換手段と、上記ベースモジュールに結合されている上記拡張モジュールの上記回路構成情報および書き換えられた上記配線情報に基づいて、上記電子回路の構成を表す回路図の基になる回路情報を作成する回路情報作成手段と、書き換えられた上記配線情報に基づいて、上記取得されたファームウェアに含まれている上記拡張モジュールと上記ベースモジュールとの配線に係る定義情報を書き換えて、新たなファームウェアを作成するファームウェア作成手段と、を有する。

図面の簡単な説明

0009

本発明に係る回路情報作成プログラムを実行するハードウェアの構成の例を示すブロック図である。
上記ハードウェア構成の別の例を示すブロック図である。
上記ハードウェア構成のさらに別の例を示すブロック図である。
上記のハードウェア構成のいずれかを用いて電子回路を試作する手順の例を示すフローチャートである。
本発明に係る回路情報作成プログラムを実行するハードウェアの機能構成の例を示す機能ブロック図である。
上記回路情報作成プログラムを実行するときに用いられるファームウェアの一部分の例を示す図である。
上記回路情報生成プログラムの機能構成の例を示す機能ブロック図である。
上記回路情報生成プログラムの動作の流れの例を示すフローチャートである。
上記回路情報生成プログラムによって生成される回路図データを例示するCADデータの例である。
上記回路情報生成プログラムが使用する定義情報の例を示す図である。
上記回路情報生成プログラムを実行するときに用いられるファームウェアの一部分の詳細な例を示す図である。
上記回路情報生成プログラムが生成する特定ファームウェアの例を示す図である。
上記回路情報生成プログラムの機能構成の別の例を示す機能ブロック図である。
上記回路情報生成プログラムの動作の流れの別の例を示すフローチャートである。

実施例

0010

本発明を適用した実施形態について、図面を参照しながら説明する。以下は、ベースモジュールの信号処理部が回路情報作成プログラムを実行することで回路情報作成装置として動作する試作ツールの実施形態について最初に説明する。次に、試作ツールとサーバーがそれぞれのプログラムを実行して回路情報を作成する回路情報作成システムの実施形態について説明する。
●ハードウェアの構成1
まず、本実施形態に係る回路情報作成プログラムを実行するハードウェアの構成の例について説明する。図1に示す回路情報作成装置としての試作ツール1000は、電子回路の試作用ツールとして用いられるハードウェア資源である。本実施形態において、回路情報作成プログラムは、試作ツール1000において実行されるコンピュータソフトウェアである。

0011

試作ツール1000は、信号処理部を備えるベースモジュール10と、特定機能部であるデバイス21を備える拡張モジュール20と、ベースモジュール10と拡張モジュール20を結合する配線を切り換える配線モジュール30と、を有してなる。

0012

ベースモジュール10は、信号処理部であるCPU11と、CPU11の各端子に対する配線を切り換えるスイッチング手段の一部を構成する第1信号変換部12と、を有してなる。

0013

CPU11の内部には記憶手段としてのメモリ111が搭載されている。メモリ111には、CPU11が実行する回路情報作成プログラムや、回路情報作成プログラムが用いる定義を含むデータ群等が記憶されている。また、メモリ111には、CPU11に接続される拡張モジュールを含む各種の外部装置を動作させるためのファームウェアが記憶されている。このファームウェアは、CPU11のプログラムライブラリの一部であって、後述のように、回路情報作成プログラムの実行によって書き換えられることになる。書き換えられた新たなファームウェアもメモリ111に格納される。

0014

なお、回路情報作成プログラムは、CPU11の内部のメモリ111ではなく、外部の記憶手段に保存されていてもよい。また、回路情報作成プログラムは、インターネットに接続されているWebサーバー上で実行されるソフトウェアとして構成されていてもよい。さらに、回路情報作成プログラムの実行に用いられるデータや、回路情報作成プログラムの実行によって作成される新たなファームウェアやデータは、Webサーバー上に保存されていてもよい。すなわち、本実施形態に係る回路情報作成プログラムは、その処理や、当該処理の準備に要する処理を実行可能なハードウェア資源と協働するソフトウェアによって構成されていればよい。本明細書における実施形態の説明は、これらを前提とする。

0015

試作ツール1000は、ベースモジュール10と拡張モジュール20の配線を切り換えて、特定の機能を果たす電子回路を構成する。より具体的には、試作ツール1000は、ベースモジュール10のCPU11と、拡張モジュール20のデバイス21との配線を配線モジュール30によって切り換えて、所望する信号処理や制御動作をする電子回路を構成することで、所望の電子回路を試作する支援をする装置である。また、試作ツール1000は、後述のように、試作した電子回路の構成を示す情報(回路図情報や新たなファームウェア)を作成する回路情報作成装置としての役割を有する。

0016

第1信号変換部12は、例えば、パラレルシリアル変換機能、または、シリアルパラレル変換機能を有し、回路情報作成プログラムを実行したCPU11によって動作を制御される。第1信号変換部12は、CPU11の各端子から出力された各種のパラレル信号をパラレル−シリアル変換処理してシリアル信号を生成し、該生成されたシリアル信号を拡張モジュール20に出力する。また、第1信号変換部12は、拡張モジュール20から出力されたパラレル信号をパラレル‐シリアル変換処理してシリアル信号を生成し、該生成されたシリアル信号を信号変換部12でシリアル信号をパラレル信号にしてCPU11に入力する。あるいは、CPU11は、信号変換部12を介さずにシリアル信号で試作ツールを動作させることもできる。この場合、CPU11は、拡張モジュール20の入出力端子に対する端子の割り当ての処理を後で行えばよい。

0017

拡張モジュール20は、回路情報作成プログラムを実行したCPU11の制御に基づいて特定の機能の一部または全部を果たすように動作するデバイス21と、スイッチング手段の一部を構成する第2信号変換部22と、を有してなる。それぞれの拡張モジュール20は、識別情報としてアドレス情報モジュールアドレス)を保有する。かかるモジュールアドレスは、CPU11の制御に基づいて拡張モジュール20からCPU11に送信(出力)される。モジュールアドレスは、一般には、プログラム動作での初期化の際や、個々の拡張モジュール20の使用の際に、CPU11によって受信(取得)される。モジュールアドレスが拡張モジュール20からCPU11に送信される他のタイミングについては後述する。デバイス21は、CPU11の制御に応じて所定の動作や処理を実行する。また、デバイス21は、かかる所定の動作や処理によって得た情報を、CPU11に出力する。

0018

第2信号変換部22も、例えば、パラレル−シリアル変換機能、または、シリアル−パラレル変換機能を有し、回路情報作成プログラムを実行したCPU11によって動作を制御される。第2信号変換部22は、デバイス21の各端子から出力された各種のパラレル信号をパラレル−シリアル変換処理してシリアル信号を生成し、該生成されたシリアル信号をベースモジュール10に出力する。また、第2信号変換部22は、ベースモジュール10からのシリアル信号をシリアル−パラレル変換処理してパラレル信号を生成し、該生成されたパラレル信号をデバイス21に入力する。

0019

配線モジュール30は、通信手段であって、回路情報作成プログラムを実行したCPU11によって制御される。配線モジュール30は、CPU11の各端子と各デバイス21の各端子とを接続する配線を、配線情報に基づいて動的に切り換える。なお、配線情報とは、ベースモジュール10と拡張モジュール20の結合状態を定義する情報である。より具体的には、配線情報は、ベースモジュールの端子と拡張モジュールに搭載されたデバイス類の端子を定義し、また、これら端子間の結合状態を定義する情報である。

0020

図1では、配線モジュール30は、シリアル通信を行う回路として例示されている。なお、試作ツール1000における配線モジュール30は、この例に限られない。配線モジュール30は、有線通信回線である高速通信バスを用いて構成されることができる。あるいは、配線モジュール30は、無線チャネルおよび無線通信回線を用いて構成されることができる。

0021

図1は、ベースモジュール10に3つの拡張モジュール20が接続されている状態を例示しているが、ベースモジュール10に接続される拡張モジュール20の数は任意である。ベースモジュール10の仕様によっては、拡張モジュール20の接続数は3つよりも多くなる。電子回路を試作するには、少なくとも1つの拡張モジュール20をベースモジュール10に接続すればよい。

0022

なお、本実施形態に係る回路情報作成プログラムを実行することができる回路情報作成装置のハードウェア構成は、図1に例示した試作ツール1000に限られない。回路情報作成装置のハードウェアは、少なくとも、「信号処理部」と、信号処理部と結合して協働し特定機能を果たす「特定機能部」と、を有していればよい。また、回路情報作成装置のハードウェアは、信号処理部と特定機能部との結合を回路情報作成プログラムの命令に応じて動的に変化させる機能や、信号処理部と特定機能部との接続(結線)状態を切り替える機能を備える「配線切換部」を有していればよい。回路情報作成装置のハードウェアは、上に示した種々の機能を発揮するための処理を実行できるものであればよい。

0023

●ハードウェアの構成2
次に、回路情報作成装置としての試作ツールのハードウェア構成の別の例について説明する。図2Aに示す試作ツール1001は、複数のベースモジュール101と、各ベースモジュール101に個別に接続する拡張モジュール201と、を有してなる。拡張モジュール201は、それぞれ独自のデバイス21を備えている。各デバイス21(デバイスA、デバイスB、及びデバイスC)は、それぞれの信号処理や動作を制御するベースモジュール101のCPU11と1対1で配線されて結合されている。その上で、各デバイス21(デバイスA乃至C)は、他のデバイス21と無線回線を介して相互に接続し、協働して特定の機能を果たすように構成されている。この例では、CPU11とデバイス21を1対1に組み合わせた電子回路同士が無線回線で接続されることで、各CPU11をメッシュ状に接続する。

0024

図2Aに示す試作ツール1001は、特定の機能の一部を担う各々の拡張モジュール201を個別のCPU11によって制御することで、無線回線である配線モジュール301を介して拡張モジュール201同士を接続する。したがって、試作ツール1001によれば、無線接続機能を備える電子回路を試作することができる。

0025

図2Bに示す試作ツール1002は、図2Aに示す2つのベースモジュール101を一つのベースモジュール102に置き換えた構成である。ベースモジュール102は、一つのCPU11に複数のデバイス21を接続するように構成されている。試作ツール1002において、ベースモジュール102は、他の一部のベースモジュール101と無線回線である配線モジュール301を介して接続される。

0026

また、図2Aおよび図2Bに示すように、試作ツール1001および試作ツール1002は、無線通信回線を介して、複数のCPU11を1つの信号処理部として機能させることができる。すなわち、試作ツール1001および試作ツール1002は、複数分散しているCPU11の一部または全部を合わせて、一つのCPU(信号処理部)として機能させることができる。したがって、これら試作ツール1001,1002は、図1に示した試作ツール1000の構成すなわち、1つのCPU11に複数の拡張モジュール20が接続された構成と同様の機能を果たす。また、拡張モジュール20を結合させたベースモジュール10を複数接続して、これらを相互に連動させて特定の機能を果たす構成にしてもよい。以下、試作ツール1000、試作ツール1001、試作ツール1002、のいずれかの試作ツールを代表例として説明する場合、他の試作ツールも同様に適用できるものとして、その説明を省略する。

0027

●ハードウェアの構成3
次に、回路情報作成装置としての試作ツールのハードウェア構成のさらに別の例について説明する。図3に示す試作ツール1003は、配線切換部に電子スイッチ群を用いるものである。

0028

試作ツール1003におけるベースボード570は、試作ツール1000におけるベースモジュール10に相当し、拡張ボード580は、拡張モジュール20に相当する。

0029

図3において、ベースボード570は、信号処理部であるマイクロコンピュータ590と、スイッチング手段を構成するスイッチング制御回路620、スイッチング回路621、およびスイッチング回路622と、を有してなる。また、ベースボード570は、表示部576を有している。ベースボード570には拡張ボード580が、コネクタ630によって結合されている。なお、スイッチング制御回路620としてはI/Oエキスパンダなどを用いることができる。

0030

拡張ボード580は、指定判定部583と、スイッチング手段を構成するスイッチング回路581およびスイッチング回路592、特定の機能を果たすデバイス群582を有している。なお、拡張ボード580も、表示部594を有している。

0031

マイクロコンピュータ590とスイッチング制御回路620、指定判定部583のすべては、信号バス575、信号バス572、信号バス585で数珠つなぎ状につながっている。

0032

ベースボード570は、コネクタ630を介して拡張ボード580と電気的に接続することができる。ベースボード570と拡張ボード580の接続は、ベースボード570に配置されたスイッチング制御回路620によって、スイッチング回路621を無効にし、かつ、スイッチング回路622を有効にすることで行う。スイッチング回路621を無効にし、スイッチング回路622を有効にすることで、ベースボード570のスイッチング制御回路620の入出力端子I/Oと拡張ボード580の指定判定部583の入出力端子I/Oとを電気的に接続することができる。この状態でスイッチング制御回路620の入出力端子I/Oを入力状態とし、拡張ボード580上の指定判定部583からのコネクタ接続位置確認信号を受け取ることで、拡張ボード580の接続位置を確認することができる。

0033

他の構成として、拡張ボード580の指定判定部583の入出力端子I/Oと、ベースボード570のスイッチング制御回路620の入出力端子I/Oとの入出力方向を逆にし、拡張ボード580側でベースボード570の出力信号を受け取るようにする。そしてこの信号を、通信バスを通してベースボード570のマイクロコンピュータ590に伝えるように構成してもよい。

0034

また、試作ツール1003は、図1に示す例と同様に、ベースボード570に対して複数の拡張ボード580を接続する構成とすることもできる。他の構成として、拡張ボード相互間で接続位置の確認をするようにすれば、拡張ボード580を多段に接続する、すなわち拡張ボード580同士を直接接続することが可能となる。この場合、より規模の大きな回路情報作成装置を構築することができる。

0035

試作ツール1003は、回路情報作成プログラムを実行したマイクロコンピュータ590の制御に基づいて、以下のように動作する。まず、マイクロコンピュータ590は、拡張ボード580上の指定判定部583の入出力端子I/Oと、ベースボード570のスイッチング制御回路620の入出力端子I/Oとの接続関係を確認するための信号を、拡張ボード580に対して送受信する。これによって、マイクロコンピュータ590は、拡張ボード580の接続位置をアドレス毎に確認する。拡張ボード580が正しく接続されていれば、マイクロコンピュータ590は、その旨を示す情報を、ベースボード570の表示部576に表示し、また、拡張ボード580の表示部594に表示させる。

0036

第1制御ライン574は、ベースボード570における各スイッチング回路621,622を制御するスイッチング制御回路620の制御信号伝送される信号線である。第2制御ライン593は、拡張ボード580における各スイッチング回路581,592を制御する指定判定部583の制御信号が伝送される信号線である。

0037

マイクロコンピュータ590に接続された指定判定部583およびスイッチング制御回路620を制御するために信号バス575、信号バス585に伝送される制御信号は、すべて同じ信号である。また、マイクロコンピュータ590は、信号バス578と指定判定部583とスイッチング制御回路620を使用して、各スイッチング回路621、622、592、581を制御する。

0038

マイクロコンピュータ590による上に示した制御は、スイッチング回路592とスイッチング回路622とを、信号バス587、信号バス578、信号バス5871を介して2つの接続状態を相互に切り換える制御に相当する。上記の制御による接続状態の一方は、指定判定部583の入出力端子I/Oとスイッチング制御回路620の入出力端子I/Oとをつなぐ状態である。また、接続状態の他方は、マイクロコンピュータ590と拡張ボード580のデバイス群582とを、スイッチング回路581とスイッチング回路621により信号バス588と信号バス578を介してつなぐ状態である。

0039

図3において、ベースボード570側に拡張ボード580の位置信号を受け取るための入出力端子を別途に設けて、この入出力端子をベースボード570の入出力端子に接続し、拡張ボード580側にも指定判定部583の入出力端子に接続する端子を設けてもよい。こうすれば、ベースボード570側のスイッチング回路622と拡張ボード580側のスイッチング回路592がなくても、自動的に拡張ボード580の位置を判断することができる。また、取り付け位置に合わせて、指定判定部583から拡張モジュールの端子の数と種類、拡張モジュールのモジュールアドレス、その他、拡張モジュールの回路を使用するための各種情報を信号に乗せて送れば、より緻密な動作を実現することができる。

0040

以上説明した試作ツール1003を用いると、ベースボード570に拡張ボード580を任意に取り付け或いは取り外しをし、ベースボードと拡張ボードをランダムにかつ多数の組み合わせを試しながら、容易に動作させて確認することができる。これによって、特定の機能を果たす電子回路の試作をより容易に、かつ、効率的に行うことができる。

0041

ここまで説明した試作ツール1000、試作ツール1001、試作ツール1002および試作ツール1003のいずれを用いても、回路情報作成プログラムを実行して、試作した電子回路を動作させることができる。また、各試作ツールを用いて回路情報作成プログラムを実行すると、試作した電子回路の回路図を作成することができる情報(回路図情報)を自動的に作成することができる。また、各試作ツールによれば、試作した電子回路の動作に用いることができるファームウェアを容易に作成することができる。なお、試作ツールが回路情報作成プログラムを実行して作成された新たなファームウェアを、当該生成前に使用されるファームウェアと区別するために、「特定ファームウェア」という。

0042

●試作手順
次に、回路情報作成プログラムを実行して電子回路を試作する手順の例を説明する。この手順は、図5に示す試作ツール1004を用いる場合を前提とする。図5に示す試作ツール1004は、すでに説明した試作ツール1000、1001、1002、1003を概念的に簡略化したものの例である。なお、ツールの特性によって、回路情報作成プログラムの処理手順に多少の違いが生ずる。このため、各ツールによる手順の違いについては、該当する説明箇所で適宜説明を加えるものとする。図4のフローチャートに示すように、まず、目的とする機能を発揮するような電子回路を構成するために必要となる拡張モジュール5020の組み合わせを選択し、それぞれの拡張モジュールをベースモジュール5010に取り付けて、試作する電子回路(以下、試作回路という。)を組み立てる(S101)。

0043

次に、試作ツール1004とファームウェアとAPI(Application Programming Interface)を使用して、試作回路を動作させる(S102)。試作回路の動作が目的としている動作(予定している動作)でなければ(S103のNo)、試作回路を再度組み立てる(S101)。

0044

試作回路の動作が目的としている動作であれば(S103のYes)、例えば不図示のユーザインタフェース画面実行ボタンがユーザにより選択されて、S104でCPU5011が以下の処理を行う。CPU5011は、ベースモジュール5010に取り付けられている拡張モジュール5020の識別情報であるモジュールアドレスを各拡張モジュール5020から取得し、取得したモジュールアドレスの一覧であるモジュールアドレス一覧を生成して出力する(S104)。モジュールアドレス一覧の出力先は、例えば、ベースモジュール5010が備えるCPU5011のメモリ5111である。出力されるモジュールアドレス一覧は、拡張モジュール5020を一意識別可能なアドレス情報によって構成されているデータ群である。

0045

次に、CPU5011は、モジュールアドレス一覧に含まれている拡張モジュール5020のアドレス情報に該当する回路図データを特定し、この回路図データに対してCPU5011の端子を当てはめて、配線を固定した回路図データを生成する(S105)。CPU5011により回路図データを特定する処理は、例えば、拡張モジュール5020のモジュールアドレスと拡張モジュール5020の回路図データとを対応付けデータベースを予めメモリ5111等に格納し、S104で取得されたモジュールアドレスに該当する回路図データを特定する。CPU5011は、生成された回路図データを、例えばメモリ5111に記憶する。なお、すでに説明のとおり、回路図データや、回路図を作成するプログラムは、CPU5011とは別体の記憶手段に記憶されてもよい。また、これらデータやプログラムはインターネット上に配置されているサーバーに記憶されてもよい。

0046

次に、CPU5011は、S105で生成した回路図データすなわちCPU5011の端子を当てはめて固定した回路図データに合うように、S102で使用されたファームウェアを書き換える(S106)。この書き換えられた新たなファームウェアが特定ファームウェアになる。生成された特定ファームウェアは、CPU5011のメモリ5111に記憶される。なお、生成された特定ファームウェアは、CPU5011とは別途設けられた記憶手段に保存されてもよい。この場合、インターネット上に配置されたWebサーバー上に特定ファームウェアが保存されてもよい。

0047

以上のとおり、回路情報作成プログラムを実行した試作ツール1004によれば、仮に構成したベースモジュールと1以上の拡張モジュールからなる電子回路の動作を確認した後に、当該電子回路の生産に必要な回路情報(回路図データ)および特定ファームウェアを自動的に作成することができる。すなわち、回路情報作成装置としての試作ツール1004によれば、当該ツールで使用したスイッチ群シリアルパラレル変換器などの不要な部品が無い可及的に最少構成にした量産用の回路図を作成するために用いる回路図データを、自動的に作成することができる。また、試作ツール1004によれば、当該電子回路を構成するために用いられる特定ファームウェアを自動的に作成することができる。

0048

●回路情報作成プログラムの機能構成例
次に、回路情報作成装置によって実行される回路情報作成プログラムについて、図5乃至図12を参照して説明する。図5に示す試作ツール1004には、前述した試作ツール1000や1001、1002、1003が概念的にも含まれている。試作ツール1004は、CPU5011とデバイス5021が配線モジュール5030を介して結合する構成である。配線モジュール5030は、スイッチング手段であって、回路情報作成プログラムとしてのプログラム100を実行したCPU11によって制御される。配線モジュール5030は、CPU5011とデバイス5021との接続をスイッチングしてつなぐ実質的な端子としてCPU5011によって制御されればよい。このため、配線モジュール5030は、パラレル通信、シリアル通信、再配線バススイッチング、無線など様々な通信形式を用いることができる。CPU5011は、信号の入出力に用いられる信号端子5013を複数備えている。デバイス5021は、CPU5011に複数結合可能なモジュールである。それぞれのデバイス5021は、CPU5011の信号端子5013と接続される機能端子5023を複数備えている。

0049

プログラム100に基づいてCPU5011が処理を実行するときに使用するデータは、CPU5011のメモリ5111に予め記憶してある。CPU5011のメモリ5111に記憶してあるデータは、ファームウェア、CPU5011がデバイス5021を検知し識別するときに用いるアドレス情報、信号端子5013と機能端子5023の配線時に機能端子5023を識別する相対的端子番号などである。なお、アドレス情報や相対的端子番号は、CPU5011と別体の記憶手段に保存してもよい。この場合、これらのデータはインターネットに接続されたサーバー上に保存されてもよい。

0050

図5においてCPU5011の信号端子5013は、GPIO01、GPIO02、・・・、GPIO09の9個の端子からなるものとする。これら9個の信号端子5013は、汎用入出力端子である。信号端子5013はそれぞれ、デバイス5021と接続して、CPU5011からデバイス5021への制御信号や、デバイス5021からCPU5011への信号等のやりとりを行うインターフェースを構成する。

0051

また、図5においてデバイス5021の機能端子5023は、Signal1、Signal2、Signal3、の3個の端子からなるものとする。なお、後述するプログラム100を実行する環境は、CPU5011に接続するデバイス5021の数を3個に限るものではない。また、各デバイス5021が有する機能端子5023の数を3本に限るものでもない。

0052

次に、試作ツール1004の動作に用いるファームウェアについて説明する。この例ではファームウェアは、CPU5011のメモリ5111に記憶しているが、CPU5011の外部の記憶媒体にファームウェアを記憶しておくこともできる。ファームウェアには、CPU5011とデバイス5021を接続するための配線の制御に必要な情報とコマンドが、定義情報として記述されている。図6は、ファームウェアに含まれる定義情報の一部の例を示している。図6に示す定義情報121は、アドレス情報と相対的端子番号を定義するための情報からなる。

0053

図6に示すように、定義情報121に含まれる「#define」コマンドは、CPU5011が備える各端子(信号端子5013)を定義している。

0054

「Module_A=」や「Module_B=」にて記述されている部分は、プログラム100で用いられるクラスやインスタンス、または構造体等を定義している。この定義によって、プログラム100は、デバイス5021を識別するための変数として「Module_A」、「Module_B」を用いることができる。この「Module_A」、「Module_B」は、デバイス5021のアドレス情報とデバイス5021の配線情報に相当する。

0055

定義情報121に含まれているプログラム関数「set_IOs()」は、デバイス5021のそれぞれの機能端子5023に対応する配線状態を先ほどの#defineで定義したCPU5011の端子のどれかに当てはまるように指定するコマンドである。このコマンドにより、「Module_A」および「Module_B」として区別されるそれぞれのデバイス5021に対して、CPU5011が備える信号端子5013が各機能端子5023にどのように配線されるか指定される。

0056

同じ定義の信号(Signal2、Signal3)は、「Module_A」および「Module_B」として区別されるデバイス5021に対して、イネイブル信号やバススイッチなどによって、接続を切り換えて用いられる。なお、同じ定義の信号が共通バス等であった場合は、切り換え処理が不要になる場合もある。

0057

次に、本発明に係る回路情報作成装置が実行する回路情報作成プログラムの例であるプログラム100の機能構成について説明する。図7に示すように、プログラム100は、拡張モジュール検出部110と、配線操作部120と、拡張モジュール接続部130と、アドレス一覧取得部140と、回路情報生成部150と、特定ファームウェア生成部160と、を有してなる。言い換えると、回路情報作成装置のCPUは、プログラム100を実行することによって、かかるCPUが拡張モジュール検出部110、配線操作部120、拡張モジュール接続部130、アドレス一覧取得部140、回路情報生成部150、及び特定ファームウェア生成部160として機能する。

0058

拡張モジュール検出部110は、ベースモジュール5010が備える物理的端子(信号端子5013)に接続されている拡張モジュール5020のそれぞれの位置を検出して特定する処理を実行する。なお、上述した試作ツール1000,1001,1002では、位置検出の処理を行う必要はなく、プログラム的に位置として指定することは任意である。

0059

配線操作部120は、上に示した定義情報121に記述されているような配線の定義に基づいて、CPU5011とデバイス5021を配線する(動的に再配線する)ように配線モジュール5030を動作させる処理を実行する。なお、上述した試作ツール1000,1001,1002では、このように動的に再配線する必要はなく、プログラム的に動的に再配線することは任意である。

0060

拡張モジュール接続部130は、CPU5011に対して各拡張モジュール5020を接続状態あるいは非接続状態にする制御を実行し、または、かかる制御を有効あるいは無効にする処理を実行する。拡張モジュール接続部130は、CPU5011に対して接続状態にするデバイス5021にはイネイブル信号(Enable)を通知し、CPU5011に対して非接続状態にするデバイス5021にはディスイネイブル信号(Disable)を通知する。

0061

アドレス一覧取得部140は、拡張モジュール検出部110が検出した拡張モジュール5020の各アドレス情報(モジュールアドレスアドレス一覧)を取得する処理を実行する。

0062

回路情報生成部150は、取得したモジュールアドレス一覧に基づいて、CPU5011のメモリ5111に記憶されている拡張モジュール5020の回路情報を読み出す。回路情報作成部150は、当該読み出された回路情報に示されている端子の名称等を定義情報121に基づいて書き換える。回路情報作成部150は、当該書き換えられた回路情報を、CPU5011のメモリ5111に記憶する。

0063

特定ファームウェア生成部160は、回路情報生成部150において書き換えられた回路情報に基づいて、定義情報121を書き換える。ここで書き換えられた定義情報121は、CPU5011とデバイス5021との配線状態を反映させたものであるから、試作された電子回路を構成して動作させるときに必要になる情報である。特定ファームウェア生成部160は、書き換えられた定義情報121を含めてファームウェアを生成する。ここで生成されるファームウェアを、特定ファームウェアという。

0064

●回路情報作成プログラムの処理の例
次に、図7に示した機能構成を備えるプログラム100による回路情報作成処置の流れの例について、図8のフローチャートを参照して説明する。図8において、各処理のステップをS110、S111、S112・・・のように表記する。

0065

試作ツール1004において、ベースモジュール5010に必要な拡張モジュール5020を取り付けてプログラム100を実行すると、まず、CPU5011は、メモリ5111から定義情報121を読み出す(S110)。なお、プログラム100の中に定義情報121が含まれている場合は、CPU5011は、定義情報読み出し処理を実行せずに、次の処理に移行する。

0066

続いて、CPU5011は、読み出された定義情報121に基づいて、CPU5011とデバイス5021の端子に関する情報や相対的な端子の名称、拡張モジュール5020を識別するアドレス情報を定義する(S111)。

0067

続いて、CPU5011は、定義されたアドレス情報を用いて、ベースモジュール5010への拡張モジュール5020の取り付け位置を検出する処理を実行する(S112)。このとき、CPU5011は、ベースモジュール5010に取り付けられている拡張モジュール5020における各取り付け位置を検出する。なお、この取り付け位置を検出する処理(S112)は、試作ツール1000,試作ツール1001,及び試作ツール1002において任意の処理である。任意の処理であるのは、これら列記したツールを用いてプログラム100を実行させる場合、拡張モジュール5020の取り付け位置が関与しなくても問題ないからである。

0068

次に、CPU5011は、配線モジュール5030を制御して、定義情報121に定義されている内容に基づき信号端子5013(GPIO01、GPIO02、・・、GPIO09)と機能端子5023の配線を変更する処理を実行する(S113)。この処理により、CPU5011の信号端子5013と、デバイス5021の機能端子5023のそれぞれが再配線される。この処理は、再配線しなくてもよい試作ツール1000、1001、1002では任意の処理である。再配線しない試作ツール1000、1001、1002は、配線モジュール5030にシリアル通信バスCPU間の通信、有線無線を問わないという状態が対応している。

0069

次に、CPU5011は、再配線されたデバイス5021をベースモジュール5010に接続する処理を実行する(S114)。この処理(S114)によって、ベースモジュール5010と拡張モジュール5020とで構成される電子回路は、動作可能な状態になる。次に、当該電子回路を動作させて、ベースモジュール5010と拡張モジュール5020の結合、その組み合わせにより特定の機能を果たす動作を得られるか否かを確認する(S115)。このS115では、試作された構成によって所望の回路が完成した否かの最終的な評価をユーザーが行う。なお、S115において、電子回路の動作や評価の一部を自動的に行うようにしてもよい。

0070

試作された電子回路について、特定の機能を果たす動作を確認できなければ(S115のNO)、試作が完成していないものとして、試作する拡張モジュール5020の構成や動作プログラムを変更する(S116)。ここでの「動作プログラム」とは、ユーザが任意に作成するプログラムであって、上述したファームウェアとは異なる。このS116はユーザによって行われ、試作される拡張モジュール5020の構成が変更された後に、S110からの処理がCPU5011によって再び実行される。

0071

試作された電子回路について特定の機能を果たす動作を確認して試作が完成すれば(S115のYes)、CPU5011は、S111で定義された、ベースモジュール5010に接続されている拡張モジュール5020のアドレス情報(モジュールアドレス)の一覧であるモジュールアドレス一覧を生成して出力する(S117)。S117において、モジュールアドレス一覧の出力先は、CPU5011のメモリ5111である。或いは、別途取り付けたプロセッサ内部メモリや、その他の外部記憶装置にモジュールアドレス一覧を出力してもよい。

0072

次に、CPU5011は、S118の処理に移行して、以下のように回路図データを生成する。まず、CPU5011は、S117で生成されたモジュールアドレス一覧に基づいて、それぞれの拡張モジュール5020に対応する回路図データを特定してCPU5011のメモリ5111から読み出す。CPU5011は、読み出された回路図データに対して、すでに動作確認された電子回路の構成に係る相対的端子番号を、CPU5011の信号端子5013の名称に書き換える。かかる端子番号の書き換えの処理により、CPU5011とデバイス5021の配線が確定し、試作された電子回路の回路図データが確定すなわち配線モジュール5030が無い最少構成の回路図のデータ(回路図情報)が生成される。CPU5011は、生成された回路図データをCPU5011のメモリに記憶する。或いは、CPU5011は、生成された回路図データを、別途取り付けたプロセッサの内部メモリや、その他の外部記憶装置に記憶してもよい。このようにして記憶された回路図データは、試作回路の回路図を作成するときに、画面表示や印刷により、さらにはCADによる編集作業で使用できるデータになる。したがって、この回路図データを用いることで、当該電子回路の試作に必要となる回路図を作成することができる。

0073

続いて、CPU5011は、S118で生成された回路図データに基づいて、特定ファームウェアを生成し、当該生成されたファームウェアをCPU5011のメモリ5111に記憶する(S119)。或いは、S119において、CPU5011は、生成されたファームウェアを、別途取り付けたプロセッサの内部メモリや、その他の外部記憶装置に記憶してもよい。この特定ファームウェアは、上に示した回路図データに基づく電子回路を動作させるときに用いることができるファームウェアである。

0074

●回路図データの例
次に、CPU5011がプログラム100を実行することにより上述したS118で生成される回路図データについて説明する。図9は、回路図データを図面として表示するCADのデータの例を示している。図9に示すCADデータ91は、紙面右側にCPU5011が配置され、紙面左側にデバイス5021が配置されている。図9に示すように、プログラム100の実行によって生成されたCADデータ91は、CPU5011の信号端子5013とデバイス5021の機能端子5023を接続する配線とが1対1の関係になっている。なお、CADデータ91の元になる回路構成情報である回路図データには、予め回路規模も定義されている。したがって、CADデータ91は、CPU5011を表す部分(表示領域)とデバイス5021を表す部分とが互いに重ならないようにして生成される。このように端子番号が書き換えられて生成される図9に示すCADデータ91は、実際の電子回路の構成を示すものになる。なお、各種共通バスが複数のデバイス5021間で共有されていても構わない。

0075

次に、CPU5011がプログラム100を実行することにより上述したS119で生成される特定ファームウェアについて説明する。まず、プログラム100が使用する定義情報121の詳細な例を図10に、ファームウェアの例を図11に示す。図10に示す定義情報121は、すでに説明したものよりも詳細な情報を用いるソースコードの一例である。なお、図10は、定義情報121の記述にpythonスクリプトを用いた場合を例示している。

0076

定義情報121において定義されている情報は、以下のとおりである。まず、CPU5011の端子番号と、CPU5011の各端子における機能の関係を「#SPI bus」というコメント文から「NC=0」までの間で記述している。

0077

次に、配列名を「io」として、配列ioの中にCPU5011の各端子の端子番号を要素として格納し、この配列ioを利用して、入力端子出力端子の定義を抽象化している。入力端子は変数「inpin」として定義され、出力端子は変数「outpin」として定義されている。なお、「pcbOutput」と「pcbInput」は、試作段階では使用しない。

0078

図10に示した定義情報121に基づいてデバイス5021の機能端子5023を割り当てるファームウェアの例を図11に示す。図11に示すファームウェアは、拡張モジュール5020のアドレス情報を引数として呼び出す「getWiring関数」を用いるものである。特定のアドレス情報を引数としてgetWiring関数を呼び出せば、そのアドレス情報に対応する拡張モジュール5020の相対的な配線情報を取得することができる。図11の例では、アドレス情報が「1」から「5」に相当する(5台の)拡張モジュール5020をベースモジュール5010に接続し得る状態を示している。

0079

図10に例示した定義情報121と、図11に例示したファームウェアを用いてプログラム100を実行することで、図12に例示する特定ファームウェアが生成される。図12に示すように、ベースモジュール5010には、アドレス情報が「1」、「3」、「4」に相当する拡張モジュール5020のみが接続されている。

0080

図12に示すように、特定ファームウェアも、「getWiring関数」の引数に拡張モジュール5020のアドレス情報を用いることで、当該アドレス情報に相当する拡張モジュール5020に固定された配線情報を取得することができる。この場合、図9に示した回路図データを用いて作成した回路図に係る電子回路を動作させるときのファームウェアとして、上に示したような配線情報をそのまま用いて動作させることができる。他の試作ツールについても同じように設定することができる。

0081

以上説明したプログラム100は、試作ツールのハードウェア構成が上に例示したいずれの構成によるものであっても、利用可能である、すなわち試作ツールを回路情報作成装置として機能および動作させることができる。プログラム100および試作ツールは、ベースモジュール5010に接続された拡張モジュール5020のアドレスと、配線が定義されているファームウェアとを収集し、回路図データに含まれている配線の名称とファームウェアによる配線の定義とを書き換えられるものであればよい。

0082

以上のようにプログラム100を実行した回路情報作成装置としての試作ツールによれば、試作段階を経て作成される量産用の電子回路について、配線モジュール5030が無い最少構成の量産用の回路図の元になる回路情報を自動的に生成することができる。また、上に示した試作ツール1004は、一部の拡張モジュール5020のみに1つのCPU5011を接続し、残りの拡張モジュール5020をCPU5011に接続せずに回路図やファームウェアを作成することもできる。この場合、CPU5011に接続する拡張モジュールの組み合わせ方も自由に行うことができる。

0083

また、プログラム100は、CPU5011を含む複数のCPUに1以上の拡張モジュールを接続する構成の電子回路の回路図を試作ツール1004に自動生成させることができる。この場合、試作した電子回路を1つのCPU5011を備える回路に一部分割するなどの処理を行うことも可能である。その際におけるファームウェアの連動は、一部のCPU5011から統一して指示を出すか、別のパソコンモバイル端末などのCPUから統一した指示を出せばよい。あるいは、拡張モジュールに接続されたCPUごとに何をするかをあらかじめ指示して決めておくこともできる。CPU5011とデバイス5021の配線が確定すれば、その配線情報を反映させればよい。すなわち、配線の情報を抽象化すればよい。

0084

また、図2Aや図2Bで説明した試作ツール1001や試作ツール1002のように、複数のCPU11が分散した回路の場合、一部のCPU11のみを複数のデバイス21に任意に結合して(図2B参照)回路図やファームウェアを生成することもできる。また、その逆すなわち図2Bに示す形態で生成した回路図やファームウェアを単一のCPUに結合し直して(図2A参照)回路図やファームウェアを生成することも任意に実現できる。さらに、例えば、デバイスAに対してはCPU11を無線接続し、デバイスBに対してはCPU11を有線接続する回路図やファームウェアを生成することもできる。

0085

したがって、上述した回路情報作成装置を用いれば、開発コストを削減することができ、電子回路のラピッドプロトタイピングを容易に行うことができる。したがって、回路情報作成装置は、ラピッドプロトタイピングが必要なスタートアップIoT機器の開発などに有効に使用することができる。

0086

次に、回路情報作成プログラムおよび回路情報作成装置のさらに別の実施形態について、図13及び図14を参照して説明する。すでに説明した試作ツール1004とプログラム100は、いわゆるスタンドアロン型で実行されるものである。他方、以下に説明する実施形態は、いわゆるネットワーク型システム構成である。

0087

●別の構成例
図13に示すように、本実施形態は、クライアントプログラム6100が実行される試作ツール1004と、サーバー側プログラム6101が実行されるサーバー6200とによって、回路情報作成システムが構成される。試作ツール1004は、上述したように、ベースモジュールと拡張モジュールとが結合された電子回路である。加えて、本実施形態では、試作ツール1004は、ベースモジュールのCPU11がネットワーク6300を介してサーバー6200と通信可能に接続される。

0088

クライアントプログラム6100は、すでに説明したプログラム100を基礎とし、サーバー6200上で実行されるサーバー側プログラム6101と連動するプログラムである。図13に示すように、クライアントプログラム6100は、配線操作部6120と、拡張モジュール接続部6130と、アドレス一覧取得部6140と、を有してなる。言い換えると、試作ツール1004のCPU5011は、クライアントプログラム6100を実行することにより、かかる試作ツール1004を配線操作部6120、拡張モジュール接続部6130、及びアドレス一覧取得部6140として機能させる。

0089

サーバー側プログラム6101は、データアップロード部6270と、回路情報生成部6250と、特定ファームウェア生成部6260と、データダウンロード部6280と、を有してなる。言い換えると、サーバー6200のCPUは、サーバー側プログラム6101を実行することにより、かかるサーバー6200をデータアップロード部6270、回路情報生成部6250、特定ファームウェア生成部6260、及びデータダウンロード部6280として機能させる。また、サーバー6200には、サーバー側プログラム6101が適宜参照する基礎データであるデータ群6102が記憶されている。データ群6102は、たとえば、参照配線情報データ6201、参照回路図データ6202、参照アドレス一覧2003、参照ファームウェア6204からなる。

0090

図13に示すクライアントプログラム6100を構成する拡張モジュール検出部6110と、配線操作部6120と、拡張モジュール接続部6130と、アドレス一覧取得部6140とは、すでに説明したプログラム100の実行により発揮される機能と同等のものである。したがって、これらの詳細な説明を省略する。

0091

なお、サーバー6200は、例えばWebサーバーであって、サーバー側プログラム6101は、PHPなどのスクリプト言語で記述されているものとする。

0092

データ群6102は、サーバー6200の外部から取り込むようにしてもよいし、試作ツール1004のCPU5011に記憶させておいてもよい。また、必要な処理のタイミングで試作ツール1004からサーバー6200にアップロードしてもよい。また、CPU5011で使用しているファームウェアまたはファームウェアを元に編集したデータを参照データとして使用してもよい。

0093

●回路情報作成プログラムの処理の別の例
以上説明をした構成を備えるクライアントプログラム6100とサーバー側プログラム6101を実行した場合の処理の流れの例について説明する。図14に示すフローチャートは、各処理ステップをS110、S111・・・のように示している。すでに説明したプログラム100と同じ処理については、同じ符号を付与し、詳細な説明を省略する。

0094

試作ツール1004においてクライアントプログラム6100を実行すると、試作ツール1004のCPU5011は、メモリ5111から定義情報121を読み出して(S110)、上述した一連の処理を実行する。その結果、CPU5011は、ベースモジュール5010に接続されている拡張モジュール5020のアドレス情報(モジュールアドレス)を取得し、その一覧であるモジュールアドレス一覧を生成して所定の記憶媒体(例えばメモリ5111)に出力する(S117)。

0095

続いて、試作ツール1004により生成されたモジュールアドレス一覧をデータアップロード部6270を通じてサーバー6200にアップロードする(S201)。このS201の処理は、試作ツール1004とサーバー6200とが通信しながら、すなわち試作ツール1004のCPU5011とサーバー6200のCPUとで協働して行われる。また、試作ツール1004のCPU5011から各種外部装置を介して各種データをサーバー6200にアップロードしてもよい。その他、サーバー6200が参照すべきファームウェアや配線情報などが試作ツール1004側に記憶されているならば、S201では、それらの情報も同時にサーバー6200にアップロードしてもよい。

0096

続いて、サーバー6200側で回路図データ生成処理(S118)が実行される。S118において、サーバー6200は、モジュールアドレス一覧に含まれたアドレス番号から回路図を特定して、CPU5011とデバイス5021との配線を対応付けた図9で上述したような回路図データを生成する。サーバー6200は、生成された回路図データを例えばサーバー6200内の記憶装置に出力(格納)する。

0097

さらに、サーバー6200は、ファームウェア出力処理(S119)によって、図10に例示したような定義情報121を参照ファームウェア6204とし、特定ファームウェア生成部6260において適宜の書き換えを実行する。その結果、図12に例示したような特定ファームウェアが生成される。サーバー6200は、生成された特定ファームウェアを例えばサーバー6200内の記憶装置に出力(格納)する。

0098

続いて、サーバー6200により生成された回路図データと特定ファームウェアは、データダウンロード部6280を通じて、試作ツール1004にダウンロードされる(S204)。このS204の処理は、試作ツール1004とサーバー6200とが通信しながら、すなわち試作ツール1004のCPU5011とサーバー6200のCPUとで協働して行われる。あるいは、S204の処理は、試作ツール1004以外の通信端末やサーバー6200の各種外部装置にダウンロードするようにすることもできる。

0099

以上説明した例では、アドレス一覧から参照データをそれぞれ探し、CPU5011の信号端子に拡張モジュールの端子を合わせていく処理をしたが、これに限られるものではない。例えば、アドレス一覧をアップロードせず、拡張モジュール5020の配線情報のみをアップロードしても参照するモジュールがわかっていれば、配線の情報を書き換えることができ、上述と同様のデータを生成することができる。つまり、CPU5011とどのようなパターンで配線が接続されているかさえ分かれば、回路図データや特定ファームウェアとしてCPU5011とデバイス5021間の配線をすることができる。

0100

なお、上記のサーバー側プログラム6101において実行される各処理は、Javascript(登録商標)のようにローカル側で処理できるコンピュータ言語によって作成されてもよい。また、その他クラウド上の分散型処理で行われてもよい。また、サーバー側プログラム6101において実行される各処理は、ローカル専用アプリケーションを介して実行されてもよく、或いはローカルアプリケーション単体で実行されてもよい。

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ