今回は生成したガーバデータの中身を確認します。
今回の説明
このシリーズは以下の順番で説明しています。今回の説明は「プリント基板製造」の部分になります。
- EAGLE概要
EAGLEでできることを説明します。説明だけではつまらないのでサンプルプロジェクトを触ってみてどんな感じなのか実感してもらおうと思います。またEAGLEにはいくつかライセンス形態がありますので、それらについても説明します。サンプルを見るためEAGLEのインストールも行います。 - 作成する回路
この入門記事で作成するプリント基板の回路を説明します。回路は「MacでPICマイコン電子工作入門」で作成したものをベースにします。プリント基板にするときに元の回路を少し変更しますので、その背景などを説明します。 - プリント基板を発注するまでの作業流れ
EAGLEをインストールしてから最後にプリント基板を発注するまでのおおまかな作業の流れを説明します。この項目のあとの説明は、作業の流れに沿って説明していくことになりますので、全体像をつかんでいただければと思います。 - 回路図作成
EAGLEを使って回路図を作成します。回路は簡単ですが、必要となりそうな手順などいろいろ盛り込んで説明したいと思います。 - プリント基板パターン作成
EAGLEでは「ボード図」と呼んでいる、プリント基板のバターンを作成します。記事の中で詳しく説明しますが、EAGLEは無償でありながら自動配線機能を持っています。もちろん手動配線も可能です。このセクションでは、自動配線と手動配線の両方の手順でプリント基板のパターンを作成してみたいと思います。なお、複雑な回路になると自動配線で100%配線できないため、自動配線後、手動で手直しする方法なども説明します。また、プリント基板作成を業者に発注する場合、特有の注意点などもありますので、それらも合わせて説明します。 - プリント基板製造
この入門記事で作成したプリント基板を実際に業者に発注してみます。発注してから届くまで3〜4週間かかりますので、発注後、記事更新が遅くなりますがご了承ください。
ガーバデータビューア
ガーバデータの中身を確認するためのガーバーデータビューアというアプリがいくつもリリースされています。ただ「いくつも」といってもいつものことながらMac版は少ないです。ということでMacで比較的多く利用されている「gerbv」というオープンソースのアプリを使います。
オープンソースの場合、ソースコードをダウンロードして、自分でビルドして、、、とちょっと面倒ですよね。そこで今回は「Homebrew」というパッケージ管理ソフトを使います。さらにgerbvはX11を必要としますので、それもインストールします。ちょっとややこしいですね。まとめると、gerbvをインストールするために、HomebrewとX11をインストールする、ということで、まずはHomebrewとX11をインストールします。そのあとgerbvをインストールしてガーバデータの中身を確認します。
Homebrewをインストールする
さっきからHomebrewとかパッケージ管理システムとか言ってますが、そもそも何者なんでしょうか。まずは簡単に説明しておきます。
オープンソースで配布されているソフトを使うためには、基本的にはソースコードを配布されているサイトからダウンロードしてきて、自分の環境にあったconfigファイルを生成して、ビルドする、っていう手順が必要です。これ、かなり面倒ですし、難しそうですよね。さらにビルドしたオープンソースが増えてくると、アップデートがあったときとか削除したいときとか、管理するのも大変ですよね。
そこで、考えられたのがパッケージ管理システムです。MacやそのベースとなっているUnix、またLinuxにはそれぞれ何種類かのパッケージ管理システムがあります。このパッケージ管理システムですが、ターミナルアプリからコマンドベースで簡単にパッケージ(=オープンソースのアプリ)を管理することができます。例えばHomebrewでは「brew」というコマンドで操作します。例えば、gerbvをインストールしたい場合、
$ brew install gerbv
と入力すれば、Homebrewがgerbvのソースコードを持ってきて、ビルドして、インストールしてくれます。ちょっと乱暴なたとえですが、Macでいうところの無料版App Storeみたいな感じでしょうか。App Storeってそのアプリがどこにあるか、アップデートがあるかどうかはユーザはいちいち確認する必要はありませんよね。アップデートがあればApp Storeで自動的に確認してくれます。パッケージ管理システムもパッケージのアップデートは簡単で、
$ brew upgrade
と入力すれば、アップデートがあったパッケージをアップデートしてくれます。
なお、Macでは有名なパッケージ管理システムとして、MacPortsとHomebrewがあります。今回はHomebrewを使います。
それではHomebrewをインストールします。インストールはターミナルアプリでコマンドベースで行いますので、アプリケーションフォルダ → ユーティリティフォルダ → ターミナルアプリを立ち上げておきます。
次にHomebrewのサイトにインストール方法がありますが、以下のコマンドをコピペしてターミナルにペースト、リターンキーを押せばOKです。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
これでHomebrewのインストールは完了です。
X11(XQuartz)をインストールする
gerbvはcocoaアプリではなく、X11ウインドウシステムを使うアプリです。X11は説明すると長くなりますので説明は省略しますが、Unix/Linux系で昔から使われているウインドウシステムです。ウインドウシステムって何?って方もいらっしゃるかもしレませんが、後でgerbvを立ち上げるとなんとなくわかると思います。MacOSXのUIとは雰囲気がかなり違います。これはMacOSXのUI(Cocoa)を使っていなくて、X11のUIを使っているためなんです。
ところで、昔のMacOSXはX11が標準でインストールされていたのですが、最近のOSXはインストールされていません。さらにX11はすでに開発が中止されていて、後継のXQuartzというアプリに引き継がれています。
ということで、XQuartzをインストールしましょう。XQuartzのインストールは通常のMacOSXアプリと同様、インストーラでインストールします。以下のサイトからDownloadのところにある最新のdmgファイルをダウンロード、マウント、インストールします。
特に難しいところはありませんので、手順の説明は省略します。なお、インストール先はユーティリティフォルダになります。
gerbvをインストールする
それではgerbvをインストールしましょう。ターミナルアプリから、
brew install gerbv
と入力すればOKです。関係するパッケージをインストールしたり、ビルドしたりしますのでちょっと時間がかかると思います。これで必要なソフトは揃いました。
ガーバデータを確認する
それではgerbvを立ち上げてみます。立ち上げはターミナルアプリから以下のコマンドを入力します。
$ gerbv
X11(XQuartz)も立ち上げるのでちょっと時間がかかると思います。立ち上がると以下のような画面になります。
なんか、、、普通のMacOSXのアプリとずいぶんUIの雰囲気が違いますよね。左上のアプリケーションメニューを見るとgerbvではなくて「X11」ってなってますよね。これは、X11っていうシステムの上でgerbvが動いているんです。X11って要するにMacOSXとは違うUI表示システム(=ウインドウシステム)って感じなんです。ではなぜX11アプリを作るんでしょうか。それは、X11用に作っておけば、他のUnix/Linuxでもビルドして動かすことができるためです。OS毎に作る手間が省けるわけです。
まず、ガーバデータを確認する前に、設定をちょっと変更しておきます。デフォルトの設定の場合、パターンの描画がちょっと粗いので細かくしておきます。gerbvのメニュー、View → Rendering → High Qualityを選択しておいてください。
設定したら、ガーバデータを開いてみます。例えば、表面のパターンは拡張子が.GTLですので、先ほど生成したSimpleTimerPCB.GTLを開きます。ファイルを開く場合はFile → Open Layer(s)…メニューです。
それでは開いてみてください。
色は異なるかもしれませんが、表面のパターンが描かれている感じですよね。同様にElecrowに提出する他のガーバデータも確認してみてください。確認といってもパターンがぴったり合っているかの確認まではできませんので、そもそもファイルが壊れていないか、程度の確認で大丈夫です。
なおガーバデータを開いていくと、だんだん重なって表示されます。こんな感じ。
みづらくなってきたら、表示非表示の切り替えができますので、うまく切り替えてください。
実は前回Elecrowに発注したとき、ドリルデータがない、って言われたんです。でも提出したファイルにはドリルデータがあるので、gerbvで確認したところ、ファイルが壊れてました。ということで、このようなことがないように一通りgerbvで確認しておくとよいと思います。
次回はいよいよ発注します。