このような信号はいくつかの方法でPCに入力されます。
インターフェイスは一般にそれぞれ固有の機能を持っています。 ディジタル信号を扱うものでも、多ビットの入出力を行うもの、通信を行うもの、パルスの計測を行うものなど多種にわたります。 それに対して、Universal Interfaceはそれ自体のみではなにもできませんが、設定データをダウンロードすることで、単なる入出力やカウンタを必要な数組み合わせたり、入力情報を加工したりできるようになるインターフェイスです。
市販品は当然機能が固定されていますが(多少は設定可能ですが)、時として自分の要求に合わないことがあります。たとえば、ロボット制御をしたいとき、その基本であるサーボモータの制御を行うには、モータへの指令出力(PWM)、エンコーダパルスカウンタ、ゼロ点/リミット検出が必要となりますが、普通はこれをすべて備えたインターフェイスはなく、それぞれ単機能のものを買ってくることになります。制御したいモータが2個程度だと、それぞれのボードはチャネルや機能が余るのに、スロットを3個も消費します。回路規模や入出力の本数を考えるとそんなに大きいものではありません。
昔のCバスやISAバス時代には、そんなときはボードをつくってしまうという選択肢がありました。ところが、PCIバスは複雑であり、簡単には設計製作ができません。できたとしても、金銭的、時間的コストがわりにあいません。
それに対して本ボードは、多少ディジタル回路の設計ができれば、自分の欲しい機能をすぐに得ることができます。もちろん、規模に限界はありますが。
本来はインターフェイスとして開発されましたが、入力された信号を内部で加工した上でPC側に渡すことも、もちろんできます。入力にA/Dコンバータを接続すれば、ボード上でディジタルフィルタなどの信号処理、画像処理なども行うことができます。
回路データのダウンロードは専用のソフトで1〜2秒程度で完了します。
そのため、インターフェイス開発中のデバッグも容易ですし、運用時も機能を切り替えながら使うことも可能です。
はんだ付けしてつくった回路はICを抜いてくる以上のリサイクルはなかなか難しいのですが、本ボードの場合は、回路は画面上で書いた回路図/HDLで書いた設計データで、ほとんどソフトです。そのため、適当に切り張りして流用することや、ライブラリ化が容易です。
一方で、ボード自身も、ある用途に使い終わったら、すぐに別の用途に転用できます。
そのため、使えば使うほどコストパフォーマンスが上がります。
自分で人件費0円で適当につくっちゃったこともあるのかもしれませんが、ボード原材料費は2万円をきっています。
専門に量産すればもっと安くなるかも知れませんが、現在のところ、量産はされていません。
当時在籍していた東北大学江村研究室で4脚歩行ロボットの制御システムの改修が計画されました。
もともとは2脚ロボットと同様、MS-DOSで動くNECのPC9801/9821シリーズのパソコンで制御されていました。
パソコンの老朽化に伴う改修で、その機会にPCもIBM PC/AT互換系に更新することにしました。
そのとき、最大の問題になったのがインターフェイスです。ロボットは12個のDCサーボモータで動作するため、モータへの指令出力(D/A)とエンコーダカウンタ、ゼロ点等のスイッチ入力、センサからのアナログ信号入力がありました。
このなかでも、エンコーダカウンタがやっかいで、当時リーズナブルな価格帯で探していたものは最大でも1枚4チャネル、あっというまにスロットがうまります。
これは昔から同じですが、以前はCバスに独自につくった12チャネルのD/Aとカウンタボードを刺していました。
しかし、PCIであったため、そう簡単につくるわけにもいきません。そこで、それを機会に以前から企んでいた構想を提案し、必要な部材を購入していただき、開発を始めました。その結果、ボード2枚に各々8チャネルのPWM発生回路(フィルタを外付けしてアナログ出力)とエンコーダカウンタ、ゼロ点入力回路を搭載し、ボード2枚でモータ類を賄いました。
ちなみに、制御OS側はすでに2脚ロボットで実績をあげていたLinuxによる制御システム一式を持ち込み、ロボット固有の部分を書き換える形で実装しました。
さらに蛇足ですが、先に改修した2脚はというと、メインコントローラのみをLinuxに置き換え、ハードとやり取りをするスレーブコントローラをMS-DOSのままにしていたため、このような問題は先送りにされていました。
その他、データに関しては基本的に公開致します。また、本ページの情報やデータを元に商品化をご検討いただける場合は是非ご相談下さい。
発表済文献等: