DesignSpark PCBにEAGLEで自作したライブラリをインポートする方法

#０．経緯
近年、様々な基板CADがでてきました。有名なものだとEAGLE、KiCADなど。作者が多く使っているのがDesignSpark PCBです。このソフトは無償ながら企業が作成したもので公式サポートが豊富だったり、他のソフトウェアに比べ日本語化されている箇所が多いなど日本人に使いやすいものだと感じています。以前はEAGLEを使っていたのですが（実はそんな使っていない）そこで作成したライブラリをそのままDesignSpark PCBで使えないかどうかを試してみる事にしました。（もう一回作るの面倒なんて言えない...）

という事で他にも同じような事をしたい人がいるかと思い記事にしてみました。
#１．環境

* Microsoft Windows [Version 10.0.19042.804]
* DesignSprak PCB 9.0.4
* EAGLE 9.6.2 free

#２．基本的な流れ
まず前提として説明しておきたいのがEAGLEで使用するライブラリファイル群とDesignSprak PCBで使用するライブラリファイル群は種類や仕様が異なります。そこでEAGLEのファイル情報を含み別のソフトウェアに適用可能にする**中間ファイル**を作成します。そしてその中間ファイルをDesignSprak PCB上で情報を訳し展開すればDesignSprak PCBでEAGLEで作成したライブラリが使えるというわけです。
データの流れとしては

```
EAGLEのライブラリファイル群 ---> 中間ファイル ---> DesignSprak PCBのライブラリファイル群
```
となります。
#３．例を用いて実際にやってみる！
ここからは作者が実際に動作をやりながら説明します。
##１．EAGLEでの操作
まずはEAGLEソフトを立ち上げます。そしてFile - open - Libraryをクリックします。
するとEAGLEのライブラリが表示されると思うのでそこで変換したいライブラリを選択します。
![ライブラリ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/33f2ed3f-e5a1-d305-27b2-e0674b0909fe.png)
上記のように私はLEDのライブラリを選択しました。
次にULPというソフトを実行します。これはEAGLEのファイル群を一つの中間ファイルとして作成するものです。
ULPを動作させるにはFile - Run ULPを選択します。
![ライブラリULP.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/768c45d9-38f8-9568-c46f-e2d1de2f9617.png)
その後ウインドウが表示されるので中央のBrowseを選択します。ULPは変換する先のソフトウェアに入っている事が多いです。今回はDesignSprak PCBのULPを動作させるのでDesignSprak PCBのプログラムファイルを開きます。パスは環境に応じて変わる事がありますが大体の場合は以下の様になっているはずです。他にも同一ディレクトリ上にULPが存在していると思いますが今回は以下のULPを使用します。

```
C:\Program Files (x86)\DesignSpark\DesignSpark PCB 9.0\EagleULP\LibraryToIntermediate.ulp
```

恐らくWindowsを使用している人はこのパスにあると思うので確認してみてください。
ULPを選択したら中間ファイルの保存先を指定します。保存が完了したらEAGLEを閉じます。
**これで中間ファイルの作成は完了です！**<code>.eil</code>という拡張子で保存されていると思います。
##２．DesignSprak PCBでの操作
ここからはDesignSprak PCBでの操作です。
上のタブからFile - Libraries... でLibrary Managerウインドウを開きます。
![Library Manager.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/4b870ee1-d7d6-a679-5c84-1dd86e845eee.png)
上のタブのSchematic SymbolsをクリックしNew Lib...をクリックします。ここでは下記の様にuserフォルダ上をインポート先として指定し**LED.ssl**を作成しました。
![インポート先.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/be053f26-ad82-f284-53ef-c7ab1300d2e8.png)
この操作は通常のライブラリ作成と一緒ですね。もちろん、userではなく新しくフォルダーを作りそこにインポートしても大丈夫です。またファイル名もLEDとしていますが好きなもので大丈夫です。無事に保存されるとLibrary Managerウインドウに戻ります。
![7.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/f76bfcba-bc43-0a47-888b-9d2fdf66f338.png)
上記のようになっていれば大丈夫です。
次にこの状態でAdd File...を選択します。その後
![8.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/b5818df7-1a6e-9ced-1d8a-291ae3c91f2d.png)
上記のようにEAGLEで作成した中間ファイルを指定してください。
![9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/0cd7a0e0-c3f4-10e1-5d50-f5f2d4f9b458.png)
選択するとこのような画面が出てくるのですがNoneを選択しておけば大丈夫です。
![9.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/6868b4e9-4ec3-87d6-b5c6-1523edeb6bed.png)
このようになってれば大丈夫です。
次に同じようにPCB Symbolsでもやっていきます。
まずはNew Lib...からインポート先を指定してそこに新しくファイルを作成し名前を付けます。（Schematic Symbolsと同じ名前の方が分かりやすい）
![10.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/08641e51-89d3-e3b3-e679-1d3570292e5d.png)
Add File...で中間ファイルを指定して
![11.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/c902ef71-8561-4fa9-388c-fc8c186c8287.png)
PCB Symbolsでも最後にNoneを選択すれば大丈夫ですがライブラリによっては適切なレイヤを選択しなければなりません。
これで完了です

次にまた同じようにComponentsタブを選択しNew Lib...でインポート先と名前を指定してください。
そしてAdd File...を選択し中間ファイルを指定すれば下記の様になります。
![12.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/a7f70837-5d92-1148-b62e-d7e866ff07e8.png)
**これで完了です！！！ウインドウを閉じて大丈夫です。**
**作業自体はここまでです、お疲れ様でした！！**
##３．実際に使ってみる
てきとうにSchematic Designを作成して変換したライブラリを置いて
![13.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/c6ab385b-1beb-f81b-4426-02db9ec42a4e.png)
Translate To PCBしてPCBファイルにすると
![14.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1100334/f84c862e-8bd6-0b8b-0335-c7b8aa365e13.png)
回路図シンボルとPCBシンボルが連携しているのが分かります。
正常に使えてますね。
#５．補足
操作をしてみてもらえればわかると思いますが回路図シンボルのみでもPCBシンボルのみでも変換可能です。注意しておいてほしいのがライブラリが複雑化すればするほどこの**変換がうまくいかない**場合がありますので、よほど複雑なライブラリを変換する際は新しく作成した方が良いかもしれません。作者自身そこまで複雑なライブラリを使ったことがないので何とも言えませんが。
#６．まとめ
ここまでお読みいただきありがとうございます。
正直、丁寧に説明したつもりですが全然わからないようと思った方はコメント欄で言ってください！返答ができる内容であれば返答します！！（頑張ります）また重要な内容が欠けていた場合はこの記事に追記いたします。作者自身まだ基板CADを使い始めて浅いですがかなりDesignSprak PCBは使いやすいと思います、特にライブラリを作成するところや上記のように他のソフトウェアとの互換性もある程度あるところですね。実際この記事を役立ててくれる方はいるのかどうかもわかりませんが誰か一人のお役に立てたらそれでうれしいです。
ではよい電子工作ライフを！！
#参考資料
[DesignSprak PCBに関する情報](https://www.rs-online.com/designspark/pcb-software-jp "DesignSprak PCB")
[DesignSprak PCBサポート関連](https://www.rs-online.com/designspark/pcb-support-jp "DesignSprak PCB")