文書の過去の版を表示しています。
回路図
パーツ集め
パーツライブラリ検索
他の基板から流用
- File>Export>librariesで指定のライブラリをエクスポートできる。
- 参照元が見当たらなくてもエクスポートできる。
自力で作る
シンボル
- 回路図記号
- >NAME、>VALUEを必ず入れる
フットプリント
- SO4など、パッケージサイズが規格化されているものは、使いまわせる
- EAGLE上で描くのがめんどくさいものはfusion360で描いてdxfでエクスポートすればきれいにできる
- ただし原点出しできないのでそこは詰み…
- >NAME、>VALUEを入れる
- valueはvalueレイヤーにいると表示されないので、board図でtplaceに置くこと
デバイス
- シンボルとフットプリントを紐づける部分
- 紐づけミスに注意
- プレフィックスを設定できる。(IC1、のICの部分。接頭文字)
- value offをonにすることで、valueの変更が後からできる。(Arduinoのような固有のものではなく、抵抗のような素子の数値が変わるものの変更が可能になる)
プレフィックスおすすめ
素子 | プレフィックス |
---|---|
LED | LED |
MOSFET | Q |
DCDC | IC |
シフトレジスタ | IC |
スイッチ | SW |
CPU | U |
ダイオード | D |
コンデンサ | C |
抵抗 | R |
パーツの3Dモデルをアップロードしたいとき
- STEPファイルを使う
- パーツばらばらで出力できない
- 必ず別でデータを作る
- (データに不備があるらしくできなかった)STLで出してアップロードしてSTEPに変換がいいかも
手順
- ライブラリの詳細画面>Library>Create New Version &update latest version(?)
- コントロールパネルで右クリックしてView on web
- 最新のバージョンになってることを確認したら、閉じるボタンを押す
- 3DModelsタグをクリック
- 各ライブラリからアップロードするわけではない
- モデルをアップロードしたらPackageで連結していく
- SAVEボタンが見えないと思うがCtrl+Sでいける
回路図
- Add Pardで部品追加
- Netで配線する
- 適当につなげると黒ポチ(ジャンクション)が出るが、Netで配線すれば消せる
- move中に右クリックで回転
- 物理的に配線するほか、Net配線をピンから出して、Place labelにチェックを入れてNameを変更することで、エア配線可能
- label作って配線するとその配線もうあるエラーが出るので使わない
- labelはただのlabelでどこかに接続・導通するわけではない
- infoでつながってるかどうかも確認できる
- Replaceで配線そのまま、良しなに部品を入れ替えられることもある
ライブラリ
- rclはよく使う
- EUでもUSでも。抵抗などの、汎用データはここ。
- R-US_0204/7だとどっちも大きめのも小さめのも刺さるらしい
- wirepad
- 汎用パッドはここ(スルーホールなど)
- pinhead
- 回路図の微妙にピッチがほかのと違って気持ち悪い?あんまり使わないほうがいいかも。ほかの基板から流用するほうがいい。
ピンヘッダはここ。90度のものあり。
- supply1
- VCC、GNDシンボルはここ。
- led
- LEDのライブラリ
ボード図(実装図)
はじめに
- NAMEやVALUEがボード図で出てこないとき、自作パーツに>NAME、>VALUEを描いていないことが考えられる
- 更新後、ライブラリをバージョンアップしてもボード図に反映されないことがある。その場合は一度ボード図を破棄するとうまくいくことがある
- ボード図に出てきても、ガーバーデータに出てきてない場合は、tValues等見せないレイヤーに来ている可能性がある
- Prefixはあとから設定されても回路図にも実装図にも反映されないので、自力で置き換える必要がある…?
- →Tools>renumber partsでOK。prefixの反映もここで自動で行われる
- File>design rules>Layers>coreで基板の厚みを変えられる。
配線
- 手動で配線する
- 配線パズルが解けない場合は、ビア打って逃げる
- Edit→NET CLASSで電源ライン、GNDとかは設定しておく
- 配線の太さは手動で決める
- POWERは1.0〜1.5mmくらい
- 信号線は0.3〜0.5mmくらい
- change width 0.3などで配線の太さを指定でき、このコマンドを実行してから配線をクリックするとその太さに変更できる
- infoの上のLayer Settingsで見たいレイヤーを切り替えられる
- OK押さないと反映されないので注意
- 信号線は鋭角を避ける。エッチング時に失敗するため
- パスコンはまっすぐ通す
- 配線の電流容量(1mm / 1A、via0.5φ x 3個 / 1A)
- PADを出す場合は回路図側から配置すること
- 調べるとポリゴンツールを使う方法も出てくるが、回路図的にはつながってない子ができ、シルクの位置も自力で打つ必要があるため、絶対やめろ
- ピンヘッダはわざわざ長穴にしなくていいので、ライブラリ使う場合は直す→ライブラリ絶対使うな。ピッチが合わない。他のピンヘッダ使ってる基板から流用せよ。
- 回路は左から右に、電圧の高いものが上から下に書く(回路の素101からだったかも)
- 寸法入力はMeasuresへ。寸法の真ん中ダブルクリックで行ける
- 予めショートさせておきたいpadはtCream等で指定
- 使ったdrcファイルも一緒にリポジトリに入れる
- TOPとBOTTOMをそれぞれ表示してチェック
GND
- GNDはベタにするので割と適当でいい
- TOPとBOTTOMのベタGNDになるべく電位差が発生しないようにビアを打つ
- ベタGNDのISOLATEは0.3くらいにする 広めにしないとエッチング不足を引き起こす
- 使われてないGNDをむやみに延長しない(アンテナになって悪さする)
- GNDを強くする
配置
- mirrorで部品の位置の反転。配線などは反転できない
- パスコンはICの近くに、パスコンを通してICに電源供給
- ユニバーサル基板のスルーホール穴の間隔が0.1インチ (2.54mm)=100mil
- モーターの大電流の経路とマイクアンプ回路のような増幅回路をオーバーラップさせない
- 部品外形をシルクで描いて干渉を防ぐ
- ネジ頭と部品の干渉、銅箔の導通に注意
- ものによっては、配線不可領域がある
- tStopなどにシルクが被っていると印刷されないので注意
- tKeepoutで部品重なり配置禁止範囲の指定.
- change size 1.0などで文字サイズを修正
- Altキー押しながらならgrid無視で配置できる
コマンド
- 横のアイコンをクリックする方法と、検索バーっぽいところにコマンドを打ち込むことで、コマンドを指定できる
- 上ボタンで過去のコマンドに戻れる
- ripup で配線カット
- delete でそれ以外の削除(名前、部品、など)
- move でパーツの移動
- 複数を移動したい場合は、Groupで選択してから適当なところで右クリックすると、move Groupが選択できる
- パーツの中心がない場合は、tOrigin系を可視化すると出てくる
- 関連するものを一気に消したい場合は、Shift押しながらDelete
- ratsnest で配線最適化(unRoutedな配線が一番短い線で結ばれる状態)&ベタGND配置
- ベタGND配置時、infoでisolateを0.3に設定しないとただの真っ赤になる
- 見え方を変えるだけなので、ctrl+Zとかは使えない。注意。ベタGNDのISOLATEは0.3くらいにする
- TopとBottomで配線が被っている場合は配線をクリックして右クリックで切り替えられる
ULP
- 部品番号を振りなおす
- C2, C5, C100 ⇒ C1, C2, C3
- 回路図で振りなおす場合,Tools>renumber parts、Renumber parts without packageにチェックを入れる
- 変な日付が入ったらRenumber parts without package
- Board and schematic are not consistent!エラーが起きることがある。今の変更を破棄し、回路図だけを開いてもう一回実行して様子見。
- ボード図で振りなおす場合,cmd-renumber.ulp
- 部品番号を開始番号から振りなおす
- C1, C2, C3 ⇒ C100, C101, C102
run renumsch-at-starting-num.ulp (回路図)- Tools>renumber partsでOK。prefixの反映もここで自動で行われる
- 未配線をズームする
- run zoom-unrouted.ulp
- http://www.cadsoftusa.com/download-eagle/?language=en よりUser Language Programs (ULPs)を選択して,search for ULPにキーワードを入力しダウンロード。保存先はEAGLE インストールファイルのulpフォルダ
- パーツリスト,Valueを表示する
- run bom.ulp
- 回路図のほうで実行しないとエラーになる
- Nameを置換する
- LED1, LED2 ⇒ LED_3MM1, LED_33MM2
- Plefix(D2等の頭文字)を変更する
- run change-prefix-sch.ulp LED LED_3MM (回路図)
- Netの名前を変える
- N$1, N$2 ⇒ N$101, N$102
- run renamnet-suffix.ulp (回路図)
- Net suffix にNetの後に続く文字を入力する。
- eagleのsch/brdファイルからライブラリを抽出する
- exp-project-lbr.ulp
- 個人的にはあまり使わないかも。EAGLEのexport機能でいける
固定
- 配線固定用の穴はあけておくとよい
- φ3.0にするとこの結束バンドが入る
自動配線
- Net classを設定(POWER 1mm、そのほか0.5mmくらい)
- Autoroute
- 配線全消しはripup →GOボタン
面付け
- width0.5でLINEを引いてVscoreレイヤーに貼り付けることでできる
設計フロー
- 平面図や三面図上で大まかな配置を検討
- ratsnestをもとにパーツ配置(電源を考慮、unroutedが短くなることを考慮)
- 高さチェック(高さがシビアなら)
- 配置調整
- route, polygon
- DRC DRCパラメータは製造場所に合わせておく。例)#attach(bocco.dru:1073919281)
- net整合性確認
- 恐らく以下3つのANDでOKのはず。
- schとbrdそれぞれからnetlistを生成し、差異がないことを確認 File → export → netlist。これでどの足にもついていない浮きパターンによる短絡以外は確認できる。
- Unroutedが無いことを確認(後述)。schにあり、brdにない、引き忘れがないことを確認できる。
- DRCでoverlapがないことを確認。浮きパターンによる短絡を検知できる。
- シルク記入
- まずsmashとmoveで部品ごとにtNames, bNames層の部品名の位置を調節。レジスト開口とかぶらないように。
- レジスト開口とのクリアランスチェック:tStop, bStopを表示した状態でDRC。
- 危ないところがないか目視確認。銅箔は一層ずつONにして個々に+銅箔全層をONにして+unroutedが無いことを確認。
- unroutedはlength.ulpやstatistic-brd.ulpで確認可能。
- (気になるなら念のため)全パーツ寸法が間違っていないか確認
- 画像認識マークをつける(必要なら)
- 面付け、ミシン目作成(必要なら)
- . brdファイルのみ別名でコピーを作成し、開く。schがないという警告が出る。
- コピーしたい層すべてを表示
- group all; cut (> 0 0) でクリップボードにコピー、pasteで貼り付け
- Vカットを入れるには:Dimension層に0.2mm幅の線を端から端まで入れると(P板やJETPCBは)Vカットとみなしてくれます
- 心配なら VScore層に描画後、gerberで.vscなどの拡張子で出力、READMEに.vscはv-scoreですと書けばまず大丈夫でしょう。
- ミシン目を入れるには:Milling層に2mm幅の線でルーターカットを書き込み、0.6などのドリルを連ねてミシン目を作成。
- Milling層は、gerberで.milなどの拡張子で出力、READMEに.milは直径2mmのミルのセンターラインですと書いてください。
- 寸法記入(Measuring層)→基板発注時に少なくとも外寸は必要なので。
- ガーバー出力
- 好きな.camファイルを使ってガーバーを出力 例)#attach(boccov2_01.cam:1073919280)
- gerbvなどのビューワで最終確認
- ドリルと銅箔の位置関係(スルーホール)が正しいか
- シルクがレジスト開口に被ってないか(かぶっている場合は製造業者に「シルクをレジスト開口でカット」を明示するほうが無難)
- パッド/ランドのレジスト開口と他の信号線が近接しすぎていないこと
- 必要なパッドにメタルマスク開口があること
- 不要な部分にメタルマスク開口がないこと
- READMEファイルにファイル名とファイルの内容を記述 例)#attach(README.txt:1073919279)
- 基板発注
- 実装屋さんにパターン図および実装資料を提出
- パーツリスト: bom.ulpを走らせて、valueでグループすると員数なども数えてくれます。csvファイルが“;”区切りなので、適宜“,”に置換してからexcelで編集するとgood。カラムを追加(実装の有無、支給の有無、必要数、支給数)。
- マウンタ情報: mountsmd.ulpを走らせると出力される。mnt, mnb
- シルク図: tPlaceとDimensionをONにしてprint pdf。bPlaceとDimensionをONにしてprint mirrorチェックしてpdf。
- メタルマスクガーバー: cam processing時にtCream, bCreamを出力するようにしとけばOK。
- 外形ガーバー: out
- シルクガーバー: plc, pls
小技
主にやたら入り組んだ部品のパターンを作るときの座標入力を手動ではなく一括でやると便利という話。
座標入力が (x y) というコマンドで行えるのと、パッドの寸法を w x h というコマンドで行えるのを利用して、
エクセルなどの上でパッドサイズと座標を一覧化し、concatenateで整形してコマンド欄に貼り付けるとコピペ一回でパッド作成が終わって便利
ガーバーデータ出力
エラー
- This job contains a mix of legacy and new cam outputs which may result in layer misalignment. このジョブにはレガシーと新しいカム出力が混在しているため、レイヤーの位置ずれが発生する可能性があります。
- 全項目を出力してないときに出るエラー。legacyになにか残らないようにしよう
レビューのポイント
すべての部品が定格内で動く
絶対最大定格は壊れはじめる限界なので、これで設計してはいけません。 想定されるすべてのユースケース(たとえば電源なら、充電中、電池が満充電、電池が放電終止、など含め)で動作範囲を満足するように設計しましょう。
- ピンの入力電圧範囲
- ピンの出力電流範囲
- キャパシタの耐圧(2〜3倍みておく)
- 抵抗の電力
- インダクタの電流
など
パターンレビュー
Cのパッケージサイズが小さすぎないか
Cは小さいと耐圧が下がります。かかる電圧の2倍以上の耐圧をとっておくべきとされています。
パッケージ、耐圧、容量、温度特性、入手性の全条件を満たす製品が存在することを必ず確認しましょう。
Rはのパッケージサイズが小さすぎないか
Rは小さいと許容電力が下がります。
特に以下は注意:
- LEDの電流制限抵抗
- 電源ラインに入れるシャント抵抗的なもの
レジスト開口とパターンのクリアランス
レジストと銅箔がずれると開口から他の信号が覗いてしまって、最悪短絡する。
0.2mm程度は開いているといい。
パスコンを通ってからICに供給する
ICで出たノイズはパスコンを関門にして外(他のデバイスと共有しているベタGNDや電源ライン)に出さないようにします。
DCDC回路の設計
周辺部品の選定と、レイアウトについて細かく指示があるので、必ず仕様書を守るように。
レイアウト例が載っている場合はそれに則っておくと無難。 周辺部品についても選定例が載っている場合はそれに則っておくと無難。
高速信号
クリスタルは短く配線
USB1.1、SPIなど10MHz前後以上の信号は反射を気にする
USB2.0、RAM、などは等長配線やテーパーが必要で、eagleのキャパオーバー。
電源が弱い
GND内やVCC内で電位が異なる場所ができてしまうと、アナログノイズや通信不良などいろいろ問題がおきます。
配線が細いと抵抗値が大きくなって電流の増減がそのまま電位の上下に変換されるので、電源ノイズが大きくなります。
- 電源はなるべく短く太く供給する
- 両面ベタGNDに対してviaを打って電位差を防ぐ