XCircuit

XCircuit

XCircuit は電子回路図を描くのに適したドローイング・プログラムです。 保存ファイルは PostScript 形式なのでそのまま印刷できます。

(右図をクリックすると大きく表示します。)

作者: R. Timothy Edwards さん
ホームページ: http://xcircuit.ece.jhu.edu/
バージョン: 3.1.34 (2004/01/09)
ライセンス: GPL

ライセンスはバージョン 2.5.1 から GPL になりました。

使い方

インストールしたら、kterm などのターミナル・エミュレータから

$ xcircuit

で起動します。

画面上部にはメニューがあります。例えば Edit メニューを見ると、使用頻度の 高いメニューにはキーボードショートカットが割り振られているのが分かります。
さらに画面右側にはボタンのショートカットが配置されています。 画面下には、いろいろな情報を表示するエリアがあります。

XCircuit では描くものの一単位を element といいます。element は 線 (をつないだ Polygon)、円弧、ラベル (テキスト)、曲線 (スプライン)、 およびこれらを組み合わせた object の5種類です。

まず線を描いてみましょう。XCircuit では「線」は基本 element なので メニューの選択などをすることなくいつでも描けるようになっています。 線を描き始める位置をマウスの左ボタンでクリック (作者の説明では tapping) します (もし、ボタンを押している間にマウスカーソルが矢印に変わってしまったら 別の操作になってしまいます。短くクリックしてください)。

クリックしたら、ボタンを離したままマウスを移動させると線が引かれます。 適当な位置で中ボタンをクリックすると線が確定します。 右ボタンをクリックすると取り消しになります。

左ボタンでクリックした場合は連続した折れ線 (Polygon) を描くことができます (下図 A)。

デフォルトでは、線の端点は表示されているグリッドに制約されます。 これはメニューの Options→Snap-to で変更できます。 線の幅や色、折れ線を閉じた (Border Closed) 多角形として描く (上図 B)、 多角形の内部を塗りつぶす (Fill, 上図 C) などは Options→Elements メニューで指定できます。

次は描いた線を移動させてみましょう。描いてある線の近くで、左ボタンを 押し続けると、線の色が金色に変わって選択された状態になります。 この状態でボタンを押したままマウスを移動させると線も一緒に移動します。 マウスボタンを離せば位置が確定して、選択も解除されます。

中ボタンでクリックしても選択できます。この場合は選択状態が継続しているので 別の element をさらに選択することで複数の element を同時に選択できます。
選択のもう一つの方法は、中ボタンでドラッグします。緑色の矩形が 現れて、内部に端点が含まれる element がすべて選択されます。 中ボタンが使えない場合は Shift-左ボタンで代用できます。

選択のボタンを押した位置の「近く」に複数の候補がある場合は マウスカーソルが“?”になり、最初の候補が空色に変わります (また画面下の表示欄にガイドが出ます)。 これを選択するなら中ボタンを、選択しないなら右ボタンをクリックします。 この操作を選択候補すべてについて繰り返します。

XCircuit は回路図を描くのが主目的ですから、 回路図を描くためのオブジェクトを集めたライブラリが用意されています。 デフォルトでは「generic」と「analoglib3」が読み込まれます。 Window→Goto Library でこれらのライブラリを選択すると下図のように表示されます。

generic library

使いたいオブジェクトにマウスカーソルを合わせて左ボタンを押すとそれが 選択され、元の作業中のページに戻って来ます。配置したい位置で ボタンを離します。
オブジェクトを編集するには Edit→Push selected メニューを選択して 対象となるオブジェクトをクリックします。

ライブラリのオブジェクトには「図」以外にいろいろな情報が付加されています。 これは Netlist を作成するための情報です。

たとえば、サンプルの analog1.ps を読み込んでメニューから Netlist→Write spice を実行すると、


analog1.ps

次のような analog1.spc が作成されます。

Spice circuit analog1

M1 net.1 net.1 GND GND nmos W=10u L=2.0u
M2 Vout net.1 GND GND nmos W=4.0u L=2.0u
R3 Vdd Vout 20k
R4 Vdd net.1 100
.end

XCircuit は一般のドローイング・プログラムとして使用しても 十分な能力を持っています。作者の Edwards さんは音楽が趣味のようで、 楽譜を書くのにも XCircuit を使っておられるようです。

インストール

LinuxMLD 5,6,7 用の RPM xcircuit-3.1.34-1_mlb1.i386.rpm (355,439 bytes) をインストールします。
rpm コマンドでインストールするにはスーパーユーザになって

# rpm -i xcircuit-3.1.34-1_mlb1.i386.rpm

とします。
MLD 5,6 では Gnome の GUI でインストールすることもできます。

パッケージの更新履歴

[2004/01/10] xcircuit-3.1.34-1_mlb1
このバージョンでは、ユーザインターフェースに Tcl/Tk を使うようビルドする事ができます (上記パッケージはデフォルトの Xt 版です)。興味のある方はお試しください。 ただし、automake のバージョンが MLD より新しいものが使われていて、 ビルドの手順にはちょっと工夫が必要です。またデフォルト (非 Tcl) でのコンパイルではエラーが出てしまいます (最近は作者はもっぱら Tcl 版だけでテストしているみたいです)。
上記パッケージで使用しているパッチ xcircuit-3.1.34.patch および スペックファイル xcircuit.spec を参考にしてください。

その他

デフォルトのウィンドウサイズが 950x760 になっているので、 スクリーンが 1024x768 でも上下に少しはみ出します。 起動時のウィンドウサイズを変更するには ~/.Xresources に

xcircuit.width          : 950
xcircuit.height         : 700

のように書いておくといいでしょう。

XCircuit は約 15 分ごとに自動セーブを行ないます。 万一、重要な図面の作業中に異常終了してしまったら、 /tmp ディレクトリで “XC” で始まるファイル (例えば XChLBSOW のような) を探してみてください。 正常に終了した場合は自動セーブのファイルは削除されます。
この自動セーブの時間間隔もリソースで変更できます。リソースについての詳細は man page を参照してください。

サンプルファイルは /usr/share/doc/xcircuit-3.1.34/examples/ に あります。このディレクトリには個人用の設定ファイル .xcircuitrc のサンプル (デフォルトのライブラリの代わりに楽譜用のライブラリを読み込む) も あります。

XCircuit のホームページでは チュートリアル リファレンス が閲覧できます。

参考

Edwards さんの プログラムのページ には他にも色々なアプリケーションが 紹介されています。

ロジック回路図の作成、シミュレーションは TkGate のページを参照してください。

[2001/03/30 作成] [2004/01/10 更新]


このページに関する御意見、御要望を science@mlb.co.jp までお寄せ下さい
Copyright © 2001-2005 Media Lab. All Rights Reserved.