Kicadのライブラリの作り方

# Kicadの自作ライブラリの作り方

###### この記事ではKiCad5.1.5を使用しています。

## 1, Kicadのそれぞれの部品について。

Kicadの部品は2つ(3つ)に分けることが出来ます。回路図で使う「シンボル」、実体配線で使う「フットプリント」、3dビュワーで見ることが出来る「3dshape？(正式名称を知らぬ)」です。

シンボルはライブラリと呼ばれるファイルの中に種類別に分けられておりライブラリを読み込むことでkicadで使えるようにします。拡張子は.libです。

フットプリントは.prettyの拡張子がついたフォルダの中に.kicad_modという拡張子で格納されています。フットプリントを読み込むときは.prettyの拡張子がついたフォルダを指定します。

3Dshapeは.stepと.wrlファイルを読み込むことができます。

配布されているシンボルはKiCad\share\kicad\library\
フットプリントはKiCad\share\kicad\modules\
3dshapeはKiCad\share\kicad\modules\packages3d\の中に入っています。

シンボルはシンボルエディターで、フットプリントはフットプリントエディターで編集することができます。3dは3Dcadなら多分なんでも作ることができます。詳しくはKiCadの3Dビューアーで見る部品を3Dcadで作る。に書いています。かなり大きくなってしまったので別記事にしました。

そして、それぞれの部品の保存形式だが、フットプリントと3dshapeはフォルダの中に入っているので他の人から欲しい部品だけもらうということが出来るが、シンボルは.libという拡張子のファイルの中に入っているのでこの部品だけ欲しいということが簡単には出来ない。その都度シンボルエディターで編集するか、そのライブラリごと導入する必要がある。短くまとめるとめんどくさい。しかし、シンボルを作ることはあまりないので気にすることもないかもしれない。

**まとめ**

| 内容 | シンボル | フットプリント | 3Dshape |
| -------- | -------- | -------- | -------- |
| パス | KiCad\share\kicad\library\ | KiCad\share\kicad\modules\ | KiCad\share\kicad\modules\packages3d\ |
| 編集ソフト | シンボルエディタ<br>![シンボルのエディタ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/03bd514b-f9b8-eeae-63c8-fff700e8d361.png) | フットプリントエディタ<br>![フットプリントのエディタ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/128d3101-07a3-51d0-4590-36ce7eb245a7.png) | 3Dcad Creoなど<br>![3Dshapeのエディタ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/f212d03a-66d1-3b70-7ed4-04530b8e83b0.png) |
| ファイル | ![シンボルのファイル.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/80862c82-f61b-1770-ed42-6422c6a92354.png) | ![フットプリントのファイル.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/a7f211be-db2e-9d23-4527-6b5a382d6e51.png) | ![3Dshapeのファイル.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/6cb3a0af-a69a-a525-c61e-0d7952246b5d.png) |

## 2, 準備

これから作るフットプリントなどの保存先を作ります。正直言ってどこでもいいのですが、適当な場所に保存するといつの間にか無くなったりするのでちゃんと場所を決めて作りましょう。

自分は”kicad”という全ての基板のデータが入っているフォルダの中に自作ライブラリという名前でフォルダを作り、そこの中にシンボルやフットプリントや3dshapeのデータを入れています。

![準備.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/7ce22f2a-aa8b-6b19-b1ed-28c195630504.png)

## 3, シンボルの作り方

シンボルの作り方を2ピンのXAコネクタを例に説明していきます。

### ①作ったシンボルを収納するライブラリを作ります。2回目以降は作る必要はありません。

【ファイル】＞【新規ライブラリ】
![3-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/0f4d7b92-e2ee-f057-c964-5e294476592c.png)

### ②ライブラリの種類を決めます

グローバル：すべてのプロジェクトで使うことができる
プロジェクト：シンボルエディターを開いたプロジェクトでのみ使える

特に理由がない限り、グローバルにした方がいいです。
![3-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/795353ba-f3d2-728d-cf5c-7dcae2a86026.png)

### ③シンボルを作ります。
【ファイル】＞【新規フットプリント】、もしくは![add_component.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/d7b3eb89-db03-9023-df6b-18a938b6c248.png)←このマークか、Ctrl+N
![3-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/12e81dad-ef0c-f03b-2146-7e03c46b70f9.png)

### ④作った部品を収納するライブラリを選択(さっき作ったライブラリを選択すればいいです。)
![3-4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/164aaeae-6e10-8dc9-5fc4-ec2c079cd9e7.png)

### ⑤シンボルの名前を設定します。(今回は2ピンxaを作るのでそれに合った名前にします。)
![3-5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/7f09fd12-bf2c-b41d-d551-642785d6a277.png)

### ⑥ピンを、作る部品の端子の数だけ追加します。(今回は2つ)
ピン名にはvccやgndなどわかりやすい名前を付けます。
Pin numberはピンの番号を入れます。フットプリントに割り当てるときに参照されるもので、基本的に1から順に埋めていきます。
![3-6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/eb813435-7f1e-1784-58f0-ad9828544228.png)

### ⑦必要に応じて線や文字で装飾します。
![3-7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/68589875-aa7a-4605-7649-16eab7f7fca4.png)

### ⑧フットプリントの関連づけを行います。(しなくてもいい)
![edit_component_profile.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/d9d36e56-1970-6e10-661b-1609bb7e837b.png)←これをクリックし、シンボルプロパティを開きます。
![3-8-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/1e0b9ddf-b7cf-8e12-27d6-9ad8562d8a54.png)

フットプリントの横の定数の欄をクリックし、![open_futprint.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/04fdc915-8fd0-555b-8800-0fc4e84215c8.png)←このマークをクリック
![3-8-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/8d42e7c8-2238-680d-6f5f-e8baa6199ae5.png)

フットプリントを選択します。
![3-8-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/e4e69236-5ef0-5ac5-9842-fb4c39a86a44.png)

![shape_3d.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/9a4347e7-79b3-d9ad-cb02-1fc420835f39.png)←これかAlt+3で3dビュワーを起動できます。
![3-8-4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/7f462b70-5b8c-0da1-9609-0d750434a531.png)

## 4,フットプリントの作り方
### ①【ファイル】＞【新規ライブラリ】より、作ったシンボルを収納するライブラリを作ります。シンボルと同様に2回目以降は作る必要はありません。
![4-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/85309067-9826-1c4c-68b1-802f65ef0cdc.png)

### ②ライブラリの種類を決めます
グローバル：すべてのプロジェクトで使うことができる
プロジェクト：シンボルエディターを開いたプロジェクトでのみ使える
![4-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/0edd3554-6ffc-1ef5-d241-62956acb839e.png)

### ③フットプリントの作成
【ファイル】＞【新規フットプリント】、もしくは ![new_footprint.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/51b090f6-de6f-3b89-4c48-a9247ae5bbd2.png)←このマークか、Ctrl+Nで開き、フットプリントの名前を決める。（今回は斜めの抵抗の作るのでそれに合った名前にする。）
![4-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/92d69c47-2f92-fa02-4d05-8c48d4d2b731.png)

### ④とりあえず保存します。
【ファイル】＞【保存】か、 か、Ctrl+Sを押して保存先のライブラリを決めます。
![4-4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/782e7db1-8ed0-e120-6cf4-f0b6f727108c.png)

### ⑤パッドを追加します。
【配置】＞【パッド】か、 ![pad.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/286b53fb-b974-77e2-188d-773ed4e77bde.png)←を押して追加してください。
![4-5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/4f116eea-b115-09e7-91d3-2a66b049bbe7.png)

### ⑥必要に応じてパッドの形状を変更してください。
パッドを選択した状態で右クリックから【プロパティ】を選択。
ユニバーサル基板に近づけるにはサイズを2.2mmに、穴サイズを1にします。
![4-6-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/004913ae-fb2a-b511-6c8c-84e88b98c296.png)

また、1つのパッドに設定した内容をほかのパッドに移したいときは、コピー元のパッドを選択した状態で右クリックして【パッド】＞【パッドプロパティをコピー】で内容をコピーして、貼り付けたいパッドを選択した状態で右クリックして【パッド】＞【ペーストパッドプロパティ】で貼り付けを行う。
![4-6-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/367e2b36-1b04-38df-3137-dcf276333be1.png)
![4-6-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/7690442d-af89-982d-838c-f3fa9ad2f0ec.png)

また、全てのパッドに一括で設定を適用したい場合は適用元のパッドを選択した状態で右クリックして【パッド】＞【パッドプロパティをプッシュ】から、チェックボックスをすべて外して、【現在のフットプリント上のパッドを変更】をおす。
![4-6-4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/cda2487d-4483-e62a-70ce-c4c4ba836ab1.png)
![4-6-5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/ddfe8744-da4e-70ee-f1d6-17c36adf9537.png)

### ⑦必要に応じて線や文字で装飾します。
![4-7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/cf3c4305-c857-62db-53d0-28c644600430.png)

## 5, シルクの絵の作り方
### ①ビットマップ コンポーネント コンバータを開く。
![bitmap.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/63ac6d38-14d7-5be7-bf82-f92ec76b621a.png)←これをクリックするか【Ctrl】+【b】を押す。
![5-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/9c2a1044-746e-97fa-2e9d-5d79f9f5b926.png)

### ②写真を選ぶ
ビットマップをロードを押して画像を選択する。
![5-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/8253dbd7-ae39-3551-b8aa-5ccc804861b3.png)

### ③モノクロ画像の設定をする。
モノクロ画像を選択し、モノクロ閾値をいじる。また、ネガという項目にチェックを入れることによって色を反転させることができます。
黒色のところがシルクが乗るところです。
![5-3-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/b37bb1b0-6710-27ce-ebe4-ff0f3a7dbbb4.png)

|  | ネガなし | ネガあり |
| -------- | -------- | -------- |
| ビットマップ コンポーネント コンバータ | ![5-3-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/c74399ef-7f17-560b-c661-04181a1b1c95.png) | ![5-3-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/7c093d24-1a68-4b22-c705-2c447c4e7eb2.png) |
| フットプリント | ![5-3-4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/e64acf05-9ac1-a627-b2b0-1a2f4bf4690a.png) | ![5-3-5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/5c1024be-7c89-1879-8a1f-5ceedca76ee7.png) |
| 3D | ![5-3-6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/d0b23352-6d79-ff5a-cc65-3a4307b20d60.png) | ![5-3-7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/de2464c2-56f1-5d0d-4f7b-59346640d09b.png) |

モノクロ閾値


| 35 | 44 | 50 |
| -------- | -------- | -------- |
| ![5-3-8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/f6d365c5-ab15-30f0-b72f-9472a98f342f.png) | ![5-3-9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/fae23caa-c7f1-90b1-6cd0-14c3988ffc2c.png) | ![5-3-10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/9ecf4438-47c8-3502-376a-d06db463b4fe.png) |

### ④出力するフットプリントの大きさを設定する。
この計算式で入力する大体の解像度を計算することができます。
二つの解像度の欄は同じ値にしないと形がゆがみます。
また、2.54mm単位の大きさにすることをお勧めします。

【解像度】 ＝ 【サイズ（ピクセル）】/【設定したいサイズ（ｍｍ）】*25.4

今回の画像を高さ10.16mmに設定したいとすると、
![5-4-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/20938506-02b8-662b-cfb3-e47963058c94.png)
今回の画像の縦のピクセル数は239なので
【解像度】 = 239 / 10.16 * 25.4 = 597.5

![5-4-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/ed579565-a170-73cf-5690-b1d20f401236.png)
ちゃんと10.16を四捨五入した10.2になっていることが確認できます。

### ⑤他の設定を行う。
フォーマットをPcbnew (.kicad_modファイル)に設定し、使用するレイヤーを表面層シルクにする。(この記事の筆者はここで何回も失敗してます。修正は簡単なんだけど面倒くさい。)
![5-5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/b2e854ba-228b-6f0d-e567-2c7210d441de.png)

### ⑥出力する
エクスポートを押してフットプリントの名前と出力するファイル先を決めて出力する。
 ![5-6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/c007ae72-d97c-4014-9923-b0b5f0512bb1.png)
 
## 6, フットプリントエディタでの3Dの設定
ここでは斜めの抵抗を例に説明していきます。
### ①使用する3Dデータの選択
【編集】＞【フットプリントプロパティ】か、 ![module_options.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/9e0b01fd-8a61-a17e-62f2-413391c75ceb.png)でフットプリントのプロパティを開き、３D設定の項目に行きます。ファイルマーク から使いたい３Dを選びます。
![6-1-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/8ddaa482-b6d3-19fc-4e98-ac2b4dbaea3a.png)

![6-1-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/2669579d-f2d0-7f35-7c5c-3f7211b6e43c.png)

![6-1-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/dc7df641-41b7-7259-061a-fab217aff215.png)

### ②必要に応じて【スケール】【回転】【オフセット】の値をいじってください
まず45°傾けます。
![6-2-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/f73a29ef-da3b-88ca-eb49-72317914a9c1.png)

距離が足りないのでスケールを √2=1.4142倍します。
z軸までやると抵抗の高さが変わってしまい、違和感がすごいので1倍のままです。
![6-2-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679930/01a0ff7e-fe37-e916-ebfe-2d72f4cabb4b.png)

すこし部品が太くなってしまいますが気にしないことにします。
### ③3Dデータを作る
3Dデータの作り方については[KiCadの3Dビューアーで見る部品を3Dcadで作る。](https://qiita.com/mapletree/items/b93ae8f6b22826e0dcb5)で解説しています。