top of page
  • ahedgehogchase

Lesson 6. エレクトロニクスデザイン§17. Fab Moduleを用いたエレクトロニクスデザイン

エレクトロニクスデザインツール

実はFab Moduleでデザインができる

そして、次は、Fab Moduleの前身となったもの(kokompe)だ。コンパイルされていているが、これはほとんど時代遅れになってしまったので、オンライン上で公開するのはやめようとしている。しかし、一点においてだけ、僕はこのツールを使用することがある。ハードウェアの記述言語として僕はこれを使用している。​​

どういうことか説明するために、組み込みプログラミングについて見てみよう。僕が今お見せしようとしているのは、Fab Moduleの一つの機能だ。この画面は、言うなれば”Hello world”的なものだ。この画面は配線の図で、こちらの画面はアウトラインの図だと。 配線図に戻ってみよう。付属のエディタを用いる場合も、外部のエディタを用いる場合も、まず僕は編集することから始める。 コマンドを打ち込んで僕は抵抗を加えるとしよう。僕は抵抗をこの場所に置きたい。PCBに加えようとしている。ここに、水晶振動子のX座標とジャックのY座標に合わせて抵抗を配置して、僕はこれを90°回転させた。 ここで、面白いのは、僕は水晶振動子の位置をジャックとの関係性によって定義したということだ。 そして、水晶振動子とジャックのどちらかを動かせば、抵抗はこれらと一緒に動くことになる。なぜならばこれらの関係は定義されているからだ。 そして、導線をセットしてこれに配線をしていきたい。 ここで僕は抵抗に配線を行った。そして、 僕はこれを切削していきたい。 ここに、配線を削り出すための図がある。 これらの操作を行うにあたり、僕がやろうとしていることはGUIでクリックしてドラッグするっていうよりも、僕は一連の関係性についてのコマンドを入力する。 これが、ほかのパーツに関連したパーツの位置を決めるやり方であり、そして、これらを接続する方法だ。 こうやって、君たちは、部品同士がどのように相互依存しているかを示す、非常に複雑な依存関係のツリー図を作り上げることができる。 僕にとっては、このやり方で行う方が、早く回路を設計することができる。このやり方は初心者にとっては全然簡単じゃないけれども、このやり方のほうがものすごくしっくり来る人もいるだろう。 そして、これらの操作はFab Moduleで行うことができる。 将来的にはハードウェア記述言語を使って欲しい エレクトロニクスに関連する講義ではこれから毎回、僕が君たちに5つのファイルを提示する。 ①ひとつ目は基板のレイアウト。②2つ目はその基板のハードウェア記述言語。③3つ目はその図面。④4つ目はマシンに入力するトレースのデータだ。(訳註:5つ目は…?) もう一度話を戻すが、君たちは全てを目で見ることができる。配線やアウトラインは基板の図面として見ることができるし、それを記述したプログラムや、レイアウトを記述したプログラムも見ることができる。 僕は君たちの多くはハードウェア記述言語のアプローチを取りたいと思うようになるだろうと思っている。実際に僕や数人の受講者にとって、このハードウェア記述言語という方法は非常にうまくいくだろう。 しかし、僕が初心者向けのドローファイルじゃなくてプログラムを紹介する理由は、このやり方から始めることはオススメしないが、多くを学んだ後にはこの段階に進んで欲しいからだ。

 

Antimonyを用いたエレクトロニクスデザイン 受講者:僕はこれをAntimonyで進めたいと思っています。でも、僕は確信が持てません。僕はこのやり方が、可能なのか分からないんです。 できるよ。 Fab Moduleは今現在3世代存在する。 kokompe はコンパイルされたFab Moduleだ。そして、その中枢は関数表現の幾何学的ソルバだ。そのソルバはデザインプログラムを翻訳して絵に落とし込む。そして、それはMatthew Keeterが彼の学位論文の一部で書いた内容でもある。 Fab Moduleはそれよりも多くのことができる。

 

kokopelliを用いたエレクトロニクスデザイン 彼は kokopelli を開発した。 kokopelliは幾何学的ソルバの役割を果たすFab Moduleの一部分に過ぎない。そして、それはOpenSCADに少しばかり似ている。 ここで1つの例について考えさせて欲しい。 僕の研究室の学生の一人、 Sam Calisch の例だ。彼は、彼の エレクトロニクスデザインをすべてkokopelliで行なっている 。​

図. Sam Calischの例

これが彼の制作したエレクトロニクスデザインだ。彼は僕が古いkokompeを使うように、 kokopelliを使う。

 

●kokopelliはAntimonyの一部 そして、Antimonyは以前僕が紹介したCADツールだけれども、さっき君が質問してくれた内容で、本当に重要な点は、Antimonyの部分的なノードはそれぞれが独立したプログラムだってことだ。 つまり、Antimonyという1つのソフトウェアにあるノードの1つがkokopelliというプログラム全体に相当するんだ。 だから、僕が示したことのすべては、ひとつのノードで行うことができるし、君の質問のように、ひとつのノードで全てを行うのではなく、いくつかに分けたり統合したりして行うことができるんだ。 そういう訳で、さっきのは良いコメントだった。 君たちはこれら(エレクトロニクスデザイン)を全てAntimonyで行うことができる。 これはとても面白い質問で、ある意味において、将来的にはこれは僕が取り組んでいるmods projectにつながるんだ。

つづく

講義の目次は 【和訳版】FabAcademy 2016 からご覧ください。 ※この記事は FabAcademy 2016 におけるニール・ガーシェンフェルド教授(MIT)による講義動画をもとに作成しました。正確な訳ではないので間違っていたら指摘いただけるとありがたいです。

最新記事

すべて表示

Lesson 13. 出力デバイス §4. LEDマトリックス

●LEDマトリックス 次に紹介するのはLEDマトリックスだ。 動作しているのを見てみると、ディスプレイの一部分が表示されているのが見えるだろ? 僕はディスプレイの一部分を用いてラスタリング(画像を色のついた格子状のドットで表現すること)を行なっているんだ。 ●Charlieplexing これは便利な技で、Charlieplexingと呼ばれる。 このLEDは大量購入すると6セント

Lesson 13. 出力デバイス §3. 調光LED

●調光LED さあ、ここから僕は多くのデバイスを紹介していこう。 最初に紹介するのは、色調を変化させることのできるLEDだ。色を周期的に変えることができるんだ。 これが、その部品だ。 この部品には赤と緑の、青のLEDが1つのパッケージに含まれている。大量購入すれば、40セントで買うことができる。これらはスタジアムとかにある巨大なディスプレイに用いられていて、これがスタジアムでは1ピク

Lesson 13. 出力デバイス §2. 電源

●電源 今回の課題のゴールはたくさんのバッテリーを使うことじゃない。モバイルにしなくちゃならない場合を除いてバッテリーを使うのはお勧めしない。一般的には各Labは各種電源を取り揃えているはずだ。 今から紹介するベンダーMARLIN P. JONES & ASSOC. INC.は数多くのベンチサプライ(電源)を取り扱っている。 きっと諸君はこれらの各種電源をプロジェクトに用いることになるだ

bottom of page