製造後にPCB設計の間違いを修正する方法は?


19

ここで16歳の初心者。

私のプロジェクトは、PCBをシャーシ、充電回路を備えたリポバッテリー、赤外線センサーを備えたミニロボットです。I2C加速度計とジャイロスコープにLSM6DS33TRを使用し、データシートによると10Kの「プルアップ抵抗器」とマイクロコントローラーとしてATMEGA328Pを使用しました。

独自の産業用PCBボードを設計して製造するのは初めてです。JLCPCBでPCBを製造しました。ファイルを送信して配信を待った後、デザインの間違いを見つけたとき。I2Cバスのプルアップ抵抗は3V3にプルアップする必要があるため、正しく配線していないことに気付きました。

私の質問は:

  1. すでに製造されているPCBに電圧を供給するためにSDAおよびSCLプルアップを行うために、接続をリダイレクトまたは変更するにはどうすればよいですか?
  2. 設計を変更して別のPCBを製造する必要がありますか?(壊れた):)

これが、私が作成したプロジェクトの全体図です:(i2c線は丸で囲まれています) ここに画像の説明を入力してください

最上層:(GNDカッパープレーン) ここに画像の説明を入力してください

最下層:(3V3銅プレーン) ここに画像の説明を入力してください


3
よくやった!幸いなことに、私たちはこのようなことをすべて行い、それらを修正するプロセスを経てきました。@Oldfartと同じことを提案するつもりでした。幸運を祈ります。
エリオットアルダーソン

10
おめでとうございます!ボッジの国へようこそ!:)(青いワイヤーのスプールを破壊するまで、あなたは本当のPCBデザイナーではありませんか?XD)
ThreePhaseEel

4
将来のプロジェクトでは、より重要なトレースのいくつかに余分なパッドを追加することをお勧めします。たとえそれらが読み込まれていなくても、必要に応じてワイヤをそれらに接続でき、ワイヤをはんだ付けすることを心配する必要はありません小さなICパッケージのピン。
ハース

6
@Hearthが言ったことは、ほとんどのEDA / EDMソフトウェアで、1つの「ピン」を持つテストポイントコンポーネントを作成し、そのテストポイントのフットプリントをほんの少しの表面実装パッドにすることで実現できます。ボード全体にこれらすべてのドットがラベル付けされており、MODに使用したり、スコーププローブを接続したりできます。あなたのツールが既にライブラリに似たようなものを持っている可能性が高いです。
ティムウェスコット

8
たとえそれほど魅力的に見えなくても、購入したボードを機能させることをお勧めします。その後、再作成することにした場合は、100%の問題を発見する可能性が高くなります。
スペロペファニー

回答:


19

PCBを「パッチ」する必要があります。

下に描いてみたように、既存のパッドに2つのプルアップ抵抗(10K)を配置して短絡させます。次に、もう一方の端から最も近い3V3接続へのワイヤ。

ここに画像の説明を入力してください

SMD抵抗器を描画しましたが、「旧式の」軸方向のものも使用できます。


5
これらの修正にはワイヤラップワイヤを使用するのが好きだと付け加えましたが、どんな細いソリッドワイヤでもかまいません。また、抵抗器の下に小さな接着剤を置いて、抵抗器を所定の位置に保持したいと思います。
エリオットアルダーソン

3
SMDには2番目のパッドがないため、アキシャルTHT抵抗器の方が適切な場合があります。接着剤を追加することは役立つかもしれませんが、それが最善の解決策であるかどうかはわかりません。運が良ければ、THT抵抗のリードは、余分な配線を避けて、目的の場所に到達するのに十分な長さになります。
フレッド

私は0603抵抗を使用しました。そうそう、抵抗はパッドに到達するのに良いかもしれません。ありがとう!
デイブベネメリト

9

ボードにはさらに問題があります。たとえば、U5の電源ピンにはコンデンサが直列に接続されており、VCCとGNDの間のデカップリングキャップであると思われます。また、AVRのデカップリングキャップも表示されません。

最終的には、ボードを正しくやり直すことをお勧めします。


1
ただし、その特定の問題を修正するのは難しくありません。これはおそらくコメントであり、回答ではありません。
ハース

2
U5のVCCの問題は、I2C抵抗の問題とほぼ同じ方法で修正できます。特に、もう一方の端を接地する必要があり、その場合、OPはグランドプレーンからはんだマスクを少し削るだけです正しい場所で、キャップを横向きに置き、両端をはんだ付けします。
ティムウェスコット

2
これらの2つのキャップを0オームの抵抗で置き換えるだけで十分であることに注意してください。また、そのジャンパー線を使用してデカップリングコンデンサを接続しないでください。インダクタンスがキャパシタンスをキャンセルするためです。グランドプレーンに直接取り付けるというティムのアプローチは機能します。
ベンフォイト

3
ボード上での大量の作業を気にしない人もいれば、ボードをやり直すのに十分な理由として複数のエラーを見る人もいます。だから私は、OPの決定を左右するかもしれないより多くのエラーがボード上にあるという事実を指摘することは有効な答えだと思う。
重要ではない

それをありがとう!この回答までキャップの間違いに気付いていません。私はその時XDを考えていたのか分からない。私のPCBのミスには本当にやるべきことがたくさんあります。ありがとう!
デイブベネメリト

9

I2Cバスは、PCBを変更せずに修正できます(@Unimportantで見つかった他の問題には引き続き注意が必要です)。

単に:

  • 直列抵抗器(奇妙なことに指示子がありませんか?)を、直列抵抗器に適した低い値(22オームなど)に置き換えます。
  • ATMEGAの対応するI2Cピンでプログラム可能な内部プルアップ抵抗を有効にします。

プログラム可能なプルアップは、I2Cの使用に関する正確な推奨値ではないため、新しいプルアップ強度に基づいて最大速度を再計算する必要があります。


注目に値しますが、おそらくIMUが必要とするデータレートでは動作しません。
マットヤング

4
@MattYoung: "IMU"の最大レートは1.6kspsであり、空想的なデータレートは必要ありません(高速を必要とするセンサーは最初にI2Cを使用しません)
Ben Voigt

私はatmegaの内部プルアップ抵抗を検討しましたが、かなりの研究を重ねた結果、I2Cには適さないことがわかりました。このチップの少なくとも、空想的なレートは必要ありません。その情報をありがとう:)
デイブベネメリト
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.