獣医さんの電子工作とパソコン研究室
 
 57.EAGLE部品ライブラリ一覧表の作成 
 

 

 ■ EAGLEの部品ライブラリの一覧を作りたい

 
 世界中でたいへん有名なCAD(Computer Aided Design) ツールに"EAGLE"があります。多くの電子工作関係者に使われているようで、使い方やライブラリも充実しています。
無料版のLight Editionがあり、機能制限があるものの、便利に使用させていただいております。
 
 EAGLE 販売元 CadSoft Online 
 
 回路図を書くときに、部品ライブラリから部品を選択するのですが、あまりにも数が多く、また、検索機能もあまり使い勝手が良くないのでいろいろ調べていると、EAGLEの販売元であるCADsoftのページにELS (Eagle Library Search)というEagle Library の検索用プログラムがありました。
早速ダウンロードするものの、フォルダ関連がデフォルトインストールでないとまずいのか、うまく動作しませんでした。
 
 こちらのページを拝見すると、ELSプログラムはライブラリフォルダをサーチしてlbrlst.scrというものを作るらしいということがわかりました。このlbrlst.scrは簡単なスクリプトでしたので、自分でもlbrlst.scrに匹敵するようなものが作れるのではないかということで作業を始めました。
 
 方法を検討した結果、EXCELを使いVBAでELSが吐き出すlbrlst.scrと同じ物を作成しました。
しかし、lbrlst.scrを実行してできたテキストファイルが見にくかったり、多くのライブラリごとのテキストファイルができてしまうので検索しにくかったりするので、ついでに、この生成されたテキストファイルをEXCELにまとめて取り込んで、検索をしやすくするように工夫してみました。
 

 ■ EAGLE ライブラリ・内容一覧の抽出 by Microsoft EXCEL
 
 この部品ライブラリ一覧の作成手順は、エクセルVBAで指定したフォルダ内(EAGLE lbrフォルダ)のlbrファイルを再帰的に抽出(サブフォルダ内も抽出)し、make_lib_list.scrというscrファイルを作成します。
make_lib_list.scrをEAGLEで呼び出すと、自動的に部品ライブラリ内のデバイス名などを抽出したテキストファイルが作成されます。この抽出されたデバイス名を含むテキストファイルはEAGLEのアクティブオブジェクトフォルダに 1.lst,2.lst・・・n.lst という名前で保存されます。
このまま、これらテキストファイルを開いて検索することもできますが、一気に検索できるようEXCELのシートに読み込みます。
EXCELのシートになっていれば、ソートや検索も便利ですので、目的の部品がどのlbrファルにあるのかみつけることができます。
 
 ダウンロードは↓です、解凍するとEAGLE_lib_list.xlsができます。
EAGLE_lib_lixt.LZH  18KB
   
こちらは↓は、標準インストール時のライブラリ部品一覧が入ってますので、
そのまま検索にご利用ください。
EAGLE_lib_list_all.LZH  963KB
※エクセルのVBAを使っていますので、セキュリティレベルを下げないと使えません。
  
 ■ 使い方

 
 エクセルでEAGLE_lib_list.xlsを開くと、次の画面が出ます。
注意:特にこの画面のセルを保護したりしていませんので、フォルダ名の入っているセルの位置を変更するとVBAでエラーになります。

 
@のピンクになっているセルに、抽出したい部品ライブラリがあるフォルダ名を入力します。
デフォルトでインストールしてあると C:\Program Files\EAGLE-5.2.0\lbr です。
こうするとlbrフォルダ以下全てのlbrファイルを対称とします。各サブフォルダ内を対象としたい場合は、サブフォルダ名まで入力します。
Aのセルには作成するscrファイルを保存するフォルダ名を入力します。
デフォルトでインストールしてあると C:\Program Files\EAGLE-5.2.0\lbr です。
この2つのフォルダ名をセットしたら「作成」ボタンを押してください。
EAGLEの部品ライブラリ名抽出用scrファイル make_File_list.scr が作成されます。
 
make_File_list.scrが作成されたら、EAGLEを起動してライブラリからDevice名を抜き出します。
 
Device名を抜き出したテキストファイルは、EAGLEのアクティブオブジェクトフォルダに保存されます。
リスト専用のオブジェクトフォルダを作っておいたほうが良いでしょう。
 
アクティブオブジェクトフォルダが準備できたら、図のようにNew→Libraryでライブラリ画面を呼び出します。
 
ライブラリエディタ画面のSCRアイコンをクリックし、make_Lib_list.scrをクリックし選択します。
 
これで、部品ライブラリ個々のDevice名をテキストファイルに書き出します。
 
抽出されたデータのファイル名は 1.lst、2.lst・・・ というように、連番のテキストファイルとなります。
 
これらを開いてもらえば、デバイス名を見ることができます。↓
 
 
このままでは検索が不便ですので、作成されたDevice名のテキストファイルを、一つにまとめます。
エクセルのBのセルに、作成されたlstファイルのあるフォルダ名を入力し、「統合と振り分け」ボタンをクリックします。
これで、1.lst、2.lst・・・n.lstを読み込み、エクセルのそれぞれのシート(Device、Package、Symbol)に振り分けます。
 
 
全てのデバイス名がDeviceシートに読み込まれていますので、ソート、検索をエクセルの機能を使って行ってください。↓
 

★エクセルVBAやエクセルシートは完全な形での使用ではありませんので、ご利用に際してはVBAの取扱が必要です。あくまで、このようなことができるという参考にしていただければと思います。
★ulpを使ってプログラミングすれば、このようなこともできると思います。
 

参考サイト
 電子工作と linux 環境 ・・・ Handicraft Diary ・・・ 2004/1/7 Eagleメモ
 EAGLE 販売元 CadSoft Online ・・・ Download ・ Miscellaneous
 
Last up date 2009/11/21

 

This page count Total:21104 / Today:1 / Yesterday:3  

 本業のページ