Üretimden sonra bir PCB tasarım hatası nasıl düzeltilir?


19

Newbie 16 yaşında.

Benim projem şasi, şarj devresi ile lipo pil ve kızılötesi sensörler olarak pcb ile mini bir robot. Veri sayfasına göre 10K "çekme direnci" ile I2C ivmeölçer ve jiroskop için LSM6DS33TR ve mikrodenetleyici olarak ATMEGA328P kullandım.

Kendi endüstriyel PCB kartımı tasarlamak ve üretmek için ilk kez. PCB'leri JLCPCB ile ürettim. Dosyaları gönderdikten ve teslimatı bekledikten sonra, tasarımımdan bir hata tespit ettiğimde. 3V3'e kadar çekilmeleri gerektiğinden I2C veriyolum için çekme dirençlerini doğru bir şekilde kablolamadığımı fark ettim.

Sorularım:

  1. SDA ve SCL pull-up'ını PCB üretilmekte olan besleme voltajına getirmek için bağlantıları nasıl yönlendirebilirim veya değişiklikler yapabilirim?
  2. Tasarımı değiştirmeli ve başka bir PCB üretmeli miyim? (Kırdı) :)

İşte yaptığım proje için tüm şematik diyagram: (i2c hatları çevrilidir) resim açıklamasını buraya girin

ÜST KATMAN: (GND Bakır Düzlem) resim açıklamasını buraya girin

ALT KATMAN: (3V3 Bakır Düzlem) resim açıklamasını buraya girin


3
İyi iş! Neyse ki sizin için hepimiz böyle şeyler yaptık ve bunları düzeltme sürecindeyiz. @Oldfart ile aynı şeyi önerecektim. Size iyi şanslar.
Elliot Alderson

10
Tebrikler! Korse ülkesine hoş geldiniz! :) (mavi kablo makarasını
parçalayana

4
Gelecekteki projeler için, daha önemli izlerden bazılarına ekstra pedler eklemenizi öneririm, ancak doldurulmasalar bile, gerektiğinde onlara teller bağlayabilirsiniz ve üzerine bir tel lehimleme konusunda endişelenmenize gerek yoktur. küçük bir IC paketinin bir pimi.
Ocak

6
@Hearth'ın söyledikleri çoğu EDA / EDM yazılımında, bir "pim" bulunan bir test noktası bileşeni yapılarak ve daha sonra bu küçük bir yüzeye montaj pedi olan bir ayak izi yaparak gerçekleştirilebilir. Modlar için veya kapsam problarını bağlamak için kullanabileceğiniz tüm bu noktaları etiketinizin üzerinde etiketlenmiş olacaksınız. Aracınızın kütüphanelerde zaten benzer bir şeye sahip olma olasılığı yüksektir.
TimWescott

8
Bu kadar çekici görünmese bile, satın aldığınız panoları almanızı öneririm. Daha sonra, yeniden yapmaya karar verirseniz, sorunların% 100'ünü bulmanız daha olasıdır.
Spehro Pefhany

Yanıtlar:


19

PCB'nizi 'yamalamanız' gerekir.

Aşağıda çizmeye çalıştığım gibi yapardım: iki adet çekme rezistörünü (10K) mevcut pedlere kısaltarak yerleştirin. Daha sonra diğer telden en yakın 3V3 bağlantısına kadar bir kablo biter.

resim açıklamasını buraya girin

SMD direnci çizdim ama "eski moda" eksenel olanları da kullanabilirsiniz.


5
Sadece bu düzeltmeler için tel sarma teli kullanmayı sevdiğimi eklemek istedim, ancak herhangi bir ince katı tel yapmalıdır. Ben de onları yerinde tutmak için dirençlerin altına küçük bir damla tutkal koymaya meyilli olurum.
Elliot Alderson

3
SMD için ikinci bir ped olmadığından, eksenel THT direnci daha uygun olabilir. Biraz yapıştırıcı eklemek yardımcı olabilir ama en iyi çözüm olup olmadığından emin değil. Biraz şansla, THT direncinin uçları istenen yere ulaşmak için yeterince uzun olacak ve ekstra kablolamadan kaçınacaktır.
Fredled

Ben 0603 direnç kullandım .. evet bu dirençler pedlere ulaşmak için iyi olabilir. Teşekkürler!
Dave Benemerito

9

Kartınızda daha fazla sorun var. Örneğin, U5 için güç kaynağı pimlerinin VCC ve GND arasındaki ayırma başlıkları olması gerektiğini tahmin eden seri kapasitörleri vardır. Ayrıca AVR için ayırma kapağı da görmüyorum.

Sonunda tahtayı doğru şekilde tekrar yapmak daha iyi olabilir.


1
Bununla birlikte, bu özel sorunun düzeltilmesi zor değildir. Bu muhtemelen bir yorum olmalı, cevap değil.
Ocak

2
U5'teki VCC sorunu, I2C direnç problemiyle aynı veya daha fazla şekilde düzeltilebilir - özellikle diğer ucun toprağa gitmesi gerektiğinden ve bu durumda OP sadece bazı lehim maskesini toprak düzleminden çizebilir doğru noktada, kapağı çaprazlamasına yerleştirin ve lehim her iki ucu da aşağı doğru.
TimWescott

2
Bu iki kapağın 0 ohm dirençlerle değiştirilmesinin muhtemelen yeterince iyi olduğunu belirtmek gerekir. Ayrıca bu atlama teli, ayırıcı kapasitörleri bağlamak için kullanılmamalıdır çünkü endüktansları kapasitansı iptal eder - Tim'in doğrudan bir yer düzlemine bağlanma yaklaşımı işe yarayacaktır.
Ben Voigt

3
Bazı insanlar bir tahta üzerinde çok sayıda bodge işi umursamıyor ve bazıları birden fazla hatayı tahtayı tekrar yapmak için yeterince iyi bir neden olarak görebilir. Bu yüzden, yönetim kurulunda OP'nin kararını etkileyebilecek daha fazla hata olduğu gerçeğine dikkat çeken geçerli bir cevap.
Önemsiz

Bunun için teşekkürler! Bu cevaba kadar kapak hatasını gerçekten fark etmedim. O zaman ne düşündüğümü bilmiyorum XD. Gerçekten benim pcb hata için yapılacak çok şey var. Teşekkürler!
Dave Benemerito

9

I2C veri yolu PCB değişikliği olmadan sabitlenebilir (önemsiz olan diğer sorunlar hala dikkat gerektirir).

basitçe:

  • Seri dirençleri (garip bir şekilde belirleyici olmayan?) Seri dirençler için uygun düşük bir değerle değiştirin, örneğin 22 ohm.
  • ATMEGA'nın ilgili I2C pinlerinde programlanabilir dahili çekme dirençlerini etkinleştirin.

Programlanabilir pullup'ların I2C kullanımı için tam olarak önerilen değerler olmayacağını unutmayın, bu nedenle yeni çekme kuvvetine bağlı olarak maksimum hızı yeniden hesaplamanız gerekir.


Dikkat çekmeye değer, ancak muhtemelen bir IMU'nun ihtiyaç duyacağı veri hızlarıyla çalışmaz.
Matt Young

4
@MattYoung: "IMU" nun maksimum 1.6kps hızı var, herhangi bir fantezi veri hızına ihtiyacı yok (ve yüksek hızlara ihtiyaç duyan sensörler ilk etapta I2C kullanmayacak)
Ben Voigt

Atmega'nın iç çekme dirençlerini düşündüm ve oldukça araştırma yaptıktan sonra I2C için uygun olmadığını öğrendim. En azından bu çip için herhangi bir fantezi oranına ihtiyaç duymaz. Bu bilgi için teşekkürler :)
Dave Benemerito
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.