manvaのエンジニアリング魂

エンジニアリング・ものづくり・DIYをもっと身近にするためのブログ。インスピレーションを刺激します。

最短でKiCadを使えるようになりたい

プリント基板を作るために,KiCadを使えるようになりたいが,結構ボリュームのあるソフトなので,どうやって習得するか。良さそうなチュートリアルを探したが,ソフトを起動して,メニューの「ヘルプ」「KiCadことはじめ」というのが元々入っているので,とりあえずこれをやっておくのが良さそうだ。

これをやる場合,ヘルプで読むよりは,

https://docs.kicad-pcb.org/master/ja/getting_started_in_kicad/getting_started_in_kicad.pdf

の方がちょっと最新版(2020/9/4ver.)であり,フォントも読みやすいので,こちらを参照・抜粋しながらKiCadの基本的な使い方をまとめる。以下,このファイルの参照を【 】で囲って記載する。

なぜ「KiCadことはじめ」をなぞっただけの記事を書くのか

「KiCadことはじめ」は,コンパクトにまとめられている(上記PDFファイルで本文46ページ程度)が,これでも長い,と感じる人もいるだろう(私以外にも)。メインの流れの実作業分だけわかれば,後は使いながら覚えればよい。あと,英文からの翻訳なので言い回しが多少読みづらかったりする。

  • もっと最小限の作業だけでいい
  • 読みやすくして,さらっと流せるようにしたい。

また,旧バージョンをベースにして書かれたようで,書いてある通りいかない部分がある。バージョンアップのせいか,UbuntuバージョンとWindowsバージョンの違いなのか,用語が一致しない部分(例えば「コンポーネント」→「シンボル」)もある。

  • KiCadバージョン:5.1.6 (2020/9/22時点での最新Ver.)に対応
  • Windows版,日本語版でやってみた一事例として

同じ条件の人はサクサク進められ,ちょっと条件が違う人にも参考になるだろう。

 

インストール

https://kicad-pcb.org/download/windows/

からダウンロードしてインストールするだけなのだが,1つ注意点がある。

最初,私が「KiCadことはじめ」を進めていくと,以下のような問題が生じた。

  • 【Chapter4.1   50.】(フットプリントをリンクするあたり)で,「LED_THT:LED-D5.0mm」「Package_DIP:DIP-8_W7.62mm」「Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical」がない。
  • 似たようなものを選んで進めたが,【Chapter5.1   26.】で,3Dビューアで表示しても基板しかなく,部品が表示されない。

バージョンの違いのせいかと思ったのだが,どうも,だいぶ前に一度旧バージョンをお試し程度で使ったことがあったのが問題だったらしい。旧バージョンをインストールしたことがある人は,アンインストールしただけではダメで,いったん,

  • C:\Users\ユーザ名\AppData\Roaming\kicad を削除

する必要があるようだ。これで上記の問題が解決した。同じような問題が生じている人は,これで解決するかも知れない。

 

KiCadによるプリント基板作成の流れ

【Chapter 2】の最初にフローチャートがあるが,結構煩雑なので,もう少し簡潔に言うと以下のような流れである。

  1. 回路図を作成
  2. プリント基板を作成
  3. 発注

 (はしょり過ぎか)。この順に説明する。

 

準備完了。では,始めよう。

「KiCadことはじめ」を最短ルートで突破する

1.回路図を作成 Eeschema

  1. KiCad起動 f:id:manva:20200921105824p:plain

  2.  メニュー「ファイル」「新規」「プロジェクト」で,適当なフォルダにファイル名「tutorial1」として「保存」。
  3. ランチャから,Eeschema(回路図エディタ)f:id:manva:20200921112557p:plain起動。初めて起動した場合や,上記で\AppData\Roaming\kicadを削除した場合は,↓の画面が出るだろうが「既定・・」のままで「Ok」。

    f:id:manva:20200921114342p:plain

  4. Eeschemaのウィンドウ上方のツールバー「ページ設定を編集」f:id:manva:20200921152722p:plainで,「タイトル」に「Tutorial1」と入れて「Ok」→図面右下にタイトルが記入される。

  5. 回路図にシンボル(電子部品の回路図記号)を配置する: 右のツールバー「シンボルを配置」f:id:manva:20200921151327p:plainで,回路図シート内の適当な場所をクリック
  6. 「シンボルを選択」ダイアログが表示されるので,フィルタ検索欄にrと打つと,「Device」というライブラリの中にある,「R Resistor」が検索されるので,それをダブルクリック

    f:id:manva:20200921151504p:plain

  7. 回路図シート内の適当なところをクリックして配置
  8.  操作練習
    ・マウスホイールでズームイン・ズームアウト
    ・マウスホイール(中央)ボタンのドラッグで表示位置移動
    ・マウスでポイントしてrで回転
    ・マウスでポイントしてxで上下反転,yで左右反転
    ・右クリックメニュー「複製」(またはマウスでポイントしてc)でコピー,クリックで配置 
    ・右クリックメニュー「ドラッグ」(またはマウスでポイントしてg)で移動 ,クリックで配置
    ・右クリックメニュー「削除」で削除
    ・Ctr+Zで元に戻す
  9. 抵抗を右クリック,「プロパティ」「定数を編集」で,「テキスト」に「1k」と入力して「Ok」,回路図シート内の適当なところをクリックして配置
  10. 抵抗をもう1つコピー。上と同様に「定数を編集」で,「テキスト」に「100」と入力して「Ok」,回路図シート内の適当なところをクリックして配置
  11. 同様に,「Device」ライブラリの「LED」を追加
  12. デフォルトにないライブラリからシンボルを追加

    (の練習として,すでに有効になっているライブラリを追加する。同様にすれば,誰かがネットで公開しているライブラリから読込むこともできる。)

    ・メニューの「設定」「シンボルライブラリーを管理」

    ・「プロジェクト固有のライブラリー」タブで 「テーブルに既存のライブラリを追加」f:id:manva:20200925202108p:plain(左下のフォルダのアイコン)

    ・C:\Program Files\KiCad\share\kicad\library フォルダの「MCU_Microchip_PIC12.lib」を選択して「開く」。

    ・「別名(ニックネーム)」を「microchip_pic12mcu」に変更して「Ok」

  13. 回路図シートをクリックすると,ライブラリに先程の「microchip_pic12mcu」があるので 「PIC12C508A-ISN」を選択して「Ok」,回路図シート内の適当な場所をクリックして配置。マウスでポイントしてyで左右反転し,GP0~GP2ピンが右側になるようにする
    ーーーーーここまでの完成図 【Chapter4.1   24.】に該当
    f:id:manva:20200921162910p:plain
  14. デフォルトにない回路図シンボルを自作する
    ・「tutorial1」フォルダ内に「library」というフォルダを作成
    ・「シンボルを作成,削除,編集」f:id:manva:20200921151327p:plain(右と上に同じアイコンがあるが,上の方。またはランチャの左から2番目「シンボルエディター」)
    ・開いた「シンボルエディター」ウィンドウのメニューの「ファイル」「新規ライブラリ」で,さっき作ったlibraryフォルダに「myLib.lib」という名前で「保存」。 「ライブラリテーブルへ追加」のダイアログが出るので,「プロジェクト」を選択 して「Ok」
    ・「シンボルエディター」ウィンドウの上の「新しいシンボルを作成」f:id:manva:20200921151327p:plainをクリックすると「シンボルライブラリーを選択」ダイアログが出るので,さっき作った「myLib」を選択
    ・「シンボル名」を「MYCONN3」,「デフォルトのリファレンス記号」を「J」にして「Ok」
    ・右ツールバーにある「シンボルにピンを追加」f:id:manva:20200921222045p:plainで,シンボルエディタ内の適当な場所をクリック
    ・「ピンのプロパティ」ウィンドウが表示されるので,「ピン名」を「VCC」,「Pin number」を「1」, 「Electrical type」を「電源入力」,「向き」を「左」に設定して「OK」
    ・MYCONN3 ラベルの右下あたりをクリックしてピンを配置
    ・同様に,「ピン名」を「INPUT」,「Pin number」を「2」,「Electrical type」を「パッシブ」としてVccピンの下に配置
    ・同様に,「ピン名」を「GND」,「Pin number」を「3」,「Electrical type」を「パッシブ」としてINPUTピンの下に配置

    ・「シンボルのボディに矩形を追加」f:id:manva:20200921222931p:plainで,シンボルの輪郭を描く。
    ・「MYCONN3」と「J」の文字が重なっているので,移動しておく。右クリックすると,重なっているので「明示的な選択」がでる。「J」を選んで「移動」
    ーーーーーここまでの完成図 【Chapter7.1   7.】に該当

    f:id:manva:20200921223715p:plain

    →【Chapter7.1   7.】の図では,「Power input」とか「Passive」とか書いてあるがバージョンの違いのせいか,「????」になっている

    ・矩形を塗りつぶしたい場合(必須ではない)
    シンボルエディターのメニューの「設定」「設定」で「カラー」「ボディの背景色」を選び,「Ok」。塗りつぶしたい矩形の枠をマウスでポイントしてe →「矩形 図形のプロパティ」ダイアログが出るので,「ボディ背景色で塗りつぶし」を選択して「Ok」

    ・「全ての変更を保存」f:id:manva:20200921224317p:plain,シンボルエディターを閉じる

  15. Eeschemaに戻って「シンボルを配置」で,さっき作った「myLib」の「MYCONN3」を選択,回路図シートをクリックして配置
  16. 「電源ポートを配置」f:id:manva:20200921225250p:plain,回路図シートをクリックして「power」「Vcc」を選択して「Ok」,回路図シートの1kの抵抗のピン右上あたりをクリックして配置
  17. 同様に,「Vcc」をあと2つと,「GND」を2つ配置(下図のような位置関係になるように)
    ーーーーーここまでの完成図 【Chapter4.1   30.】に該当

    f:id:manva:20200921233342p:plain

  18. 配線:   右ツールバーの「ワイヤーを配置」f:id:manva:20200921230651p:plainで,マイコンの7番ピンの端にある小さな円をクリック,次に,LEDの左の小さな円をクリック →配線される
  19. 同様に下図のようになるように,全て配線する(マイコンの6番ピンからの配線と100Ωの抵抗の右のピンからの配線は,ダブルクリックで終端)
    ーーーーーここまでの完成図 【Chapter4.1   33.】に該当

    f:id:manva:20200921233531p:plain

  20. 操作練習
    ・配線されたシンボルを動かすときは,右クリックで(「移動」ではなく)「ドラッグ」を選ぶと配線が維持される
  21. ラベルを使った接続:「ネットラベルを配置」f:id:manva:20200922071607p:plainマイコンの6番ピンからの配線をクリックすると,「ラベルのプロパティ」ダイアログが出るので,「ラベル」に「INPUT」と入れて「Ok」,クリックして配置

  22. 同様に,100Ωの抵抗の右のピンからの配線に「ネットラベルを配置」,「ラベル」「INPUT」 →これで,同じINPUTというラベルを付けた線がつながったことになる
  23. 「未接続フラグを配置」f:id:manva:20200922074211p:plainで,マイコンの2, 3, 4, 5番ピンをクリック。→何もつながっていない線があると配線チェック時に警告が出るので,つなぎ忘れではないことを示す。

  24. 外部から供給される電源を示す電源フラグが必要なので,「シンボルを配置」f:id:manva:20200921151327p:plainで,「power」ライブラリにある「PWR_FLAG」を2つ配置。その下に「電源ポートを配置」f:id:manva:20200921225250p:plainで,「VCC」と「GND」を1つずつ配置。「ワイヤーを配置」f:id:manva:20200921230651p:plainで,それぞれつなぐ。見やすくするために「VCC」をマウスでポイントしてxで上下反転しておく。

    f:id:manva:20200922080604p:plain

  25. 「回路図シンボルをアノテーションf:id:manva:20200922081729p:plainで,「回路図をアノテーション」ダイアログが出る。デフォルトのままで「アノテーション」を押してから「閉じる」 →R?とかJ?とかなっていたところに番号が振られる

  26. 回路図のチェック: 「エレクトリカル ルールのチェックを実行」f:id:manva:20200922082613p:plainで,「エレクトリカル ルールチェック(ERC)」ダイアログが出る。→エラーがあれば表示される。なければメッセージに「終了」とでるだけ。
  27. フットプリントを関連付け:「回路図シンボルへPCBフットプリントを関連付けする」f:id:manva:20200922084031p:plainで,「フットプリントを関連付け」ダイアログが出る。
    ・中央のペインに,使われている全てのシンボルが表示されているので,まず一番上の「D1」の行 をクリック。
    ・デフォルトで,ライブラリごとにフィルタが掛かっているf:id:manva:20200922093159p:plain。左のペインで「LED_THT」を選び,右のペインで「LED_THT:LED_D5.0mm」をダブルクリックで割当。
    ・同様に,「J1」 に「Connector:Banana_Jack_3Pin 」,「R1」と「R2」に「Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical」を割当てる。(コロン:の左側がそれぞれのライブラリ名。「U1」には自動で「Package_DIP:DIP-8_W7.62mm」が割当てられているはず)
    ・「Ok」で閉じる
  28. ネットリストを生成:「ネットリストを生成」f:id:manva:20200922095031p:plainで,「ネットリスト」ダイアログが出るので,「ネットリストを生成」,ファイル名「tutorial1.net」のままで適当なフォルダに「保存」
  29. Eeschemaに戻って「保存(全てのシート)」f:id:manva:20200921224317p:plainしてからEeschemaを閉じる。
    回路図作成完!

 

2.プリント基板を作成 Pcbnew

  1. ランチャから,Pcbnewf:id:manva:20200922102146p:plainを起動。
  2. Pcbnewのウィンドウ上方のツールバー「ページ設定(用紙サイズ及びテキスト)」f:id:manva:20200921152722p:plainで,「タイトル」に「Tutorial1」と入れて「Ok」→コゲ茶色で見えにくいが枠ができている。図面右下にタイトルが記入される。
  3. 「基板セットアップ」f:id:manva:20200922102934p:plainで,「基板セットアップ」ダイアログが出る。
    ・「レイヤー」で,「2レイヤー,両面実装」の設定になっている。「F.Cu」と「B.Cu」という2層基板の設定になっていることがわかる(確認のみ)
    ・「デザインルール」で,「最小配線幅:」を「0.25」mmに変更
    ・「ネットクラス」で,「クリアランス」と「dPair幅」を「0.25mm」に変更,「Ok」で閉じる
  4. ネットリストのインポート: 「ネットリストをロード」f:id:manva:20200922104351p:plainで,「ネットリスト」ダイアログが出る。「ネットリストファイル:」で,さっき作った「tutorial1.net」を選択。「基板を更新」を押してから「閉じる」と,マウスカーソルのかなり上の方に小さくプリントパターンの図がついてきている↓ので,枠の中に入るようにクリックして配置。(操作はEeschemaと同様。マウスホイールで拡大縮小,マウスホイール(中央)ボタンのドラッグで表示位置移動 )
    f:id:manva:20200922104246p:plain
  5. 各部品のフットプリントを移動・回転して,並べ替える。操作はEeschemaとだいたい同じだが,Eeschemaではマウスでポイントしてmやrだったが,Pcbnewでは,クリックして選択してからmやr。配線すべきピンが,白い線でつながれているので,なるべく交差しないようにする。ここでは,下図のように配置する(【Chapter5.1   9.】に該当) 。
    f:id:manva:20200922105926p:plain
    同じINPUTというラベルを付けておいた,マイコンの6番ピンと100Ωの抵抗のピンがつながっているのが確認できる。

  6. 基板外形の定義: 上のツールバーで「Edge.Cuts」レイヤーを選択。

    f:id:manva:20200922112157p:plain

    「図形ラインを追加」f:id:manva:20200922112027p:plainで,基板の外形を表す四角形を作る。
  7. 配線幅の変更:   
    ・「基板セットアップ」f:id:manva:20200922102934p:plainで,「ネットクラス」を選択
    ・「+」で行を追加,「名前」を「power」,「配線幅」を0.61mmとする(「ことはじめ」では,24ミルにする,と書いてあるが,ミルというのはミリインチのこと。mmに換算すると0.61mm)
    ・右下「ネット」と書かれているところに配線のリストがある(何も出ない時があるが,一度閉じて開き直したら出たりする)ので,「GND」以外のネットリストを全て「power」に変更。(クリックしてカーソルキーで変更すると楽)
  8. 配線:   
    ・上のツールバーで「F.Cu(PgUp)」レイヤー(2層基板の表面のレイヤー)を選ぶ
    ・「配線」f:id:manva:20200922113209p:plainで,まず「J1」の1番ピンをクリック,次に「R2」のピンをクリック →配線される
    ・同様に,GND(マイコンの8番ピンとJ1の3番ピン)以外を全て配線する
    ーーーーーここまでの完成図 【Chapter5.1   19.】に該当f:id:manva:20200922140040p:plain
  9. 上のツールバーで「B.Cu(PgDn)」レイヤー(2層基板の裏面のレイヤー)を選ぶ
  10. 操作練習(しなくても良い)
    ・GND(マイコンの8番ピンとJ1の3番ピン)を配線する →裏面は緑色で配線される
    ・配線中にvを押してからクリックすると,そこからビアで別の面に飛ぶ
    ・「ネットをハイライト」f:id:manva:20200922144515p:plainを押して配線やピンをクリックすると,つながっているところがハイライト表示される
  11. GND面の塗り潰し: 
    ・「塗り潰しゾーンを追加」f:id:manva:20200922144315p:plainをクリックして,基板の外枠の角をクリック
    ・「導体ゾーンのプロパティ」ダイアログが出るので,「ネット」で「GND」を選択,「外形を水平,垂直,45度に制限」にチェックして「Ok」
    ・基板の外枠の角を順にクリックして四角で囲む →塗り潰される

  12. プリント基板のチェック: 「デザイン ルールのチェックを実行」f:id:manva:20200922082613p:plainで,「DRC」ダイアログが出るので,「DRCを実行」。問題なければ「閉じる」
  13. 「基板の保存」f:id:manva:20200921224317p:plain
  14. メニューの「表示」「3D ビューアー」で基板の3Dイメージが表示される。【Chapter5.1   19.】に該当。Connector:Banana_Jack_3Pinは3Dイメージが表示されなかった。
    f:id:manva:20200922151803p:plain
    プリント基板作成完!

 

3.発注 Elecrow

個人向けにプリント基板を作ってくれる会社はいくつかあるが,Elecrow社↓が安くて良さそうなので,ここに発注する。

www.elecrow.com

  1. ガーバーファイルの生成: Pcbnewのメニューから,「ファイル」「プロット」
  2. 「製造ファイル出力」ダイアログが出るので,「出力ディレクトリー:」に適当なフォルダを指定
  3. 左のリストで,「F.Paste」「B.Paste」は,いらなそうなのでチェックを外す。
  4. 「製造ファイル出力」ボタン →指定したフォルダに製造ファイル(*.gbr)が出力される
  5. 「ドリルファイル生成」ボタンを押すと,「ドリルファイル生成」ダイアログが出るので,「ドリル単位」を「mm」にして「ドリルファイル生成」ボタン →指定したフォルダにドリルファイル(*.drl)が出力される
  6. ガーバーファイルのチェック: 「ガーバービューアー」f:id:manva:20200922161113p:plain(GerbView)を起動
  7. GerbViewのメニュー「ファイル」「ガーバーファイルを開く」で,拡張子.gbrのファイル(tutorial1-job.gbrjob以外)を全て選択して「開く」
  8. GerbViewのメニュー「ファイル」「Excellonドリルファイルを開く」で,拡張子.drlのファイル2つを選択して「開く」
  9. 表示されたデータが正しいか確認(どこを確認すればよいか私はわからないが)
  10. 発注準備: GerbViewの「2点間の距離を計測」f:id:manva:20200922183541p:plainで縦と横の寸法を計測しておく。デフォルトだとグリッドが荒すぎてちゃんと測れないので,右上f:id:manva:20200922184052p:plainで下げる。私の場合,グリッドを半分にして測ったらX46.99mm, Y41.91mmであった。
  11. Elecrow社の上記リンク先のページに,2層基板の場合の必要なファイルの表がある。これに合わせてファイル名を変更する。
    tutorial1-F_Cu.gbr   → tutorial1.GTL
    tutorial1-B_Cu.gbr   → tutorial1.GBL
    tutorial1-F_Mask.gbr  → tutorial1.GTS
    tutorial1-B_Mask.gbr  → tutorial1.GBS
    tutorial1-F_SilkS.gbr  → tutorial1.GTO
    tutorial1-B_SilkS.gbr  → tutorial1.GBO
    tutorial1-PTH.drl    → tutorial1.TXT
    tutorial1-NPTH.drl   → tutorial1-NPTH.TXT
    tutorial1-Edge_Cuts.gbr → tutorial1.GML
  12. 上記9つのファイルをzipファイルにまとめる
  13. 発注: Elecrow社の上記リンク先のページの「ガーバーファイルを提供」からzipファイルをアップロードし,その下で変更したい部分があれば変更する。製造枚数は最小で5枚。
  14. 上記で計測した寸法を入力する([mm]単位に切り上げ)。100mm x 100mm以下だと基板の値段は$4.9で変わらないようだが,送料は寸法によって変わるらしい。「国家:」を「Japan」にし,一番安い「Registered Airmail」が$6.24であった。合計$11.14。安い!
  15. 「Add To Cart」したら,もう発注できそう(だがしない)。(ユーザー登録・ログインは必要)

    f:id:manva:20200922190028p:plain

 

一通り流れはわかったので,次は本当に作りたいものを作る。