พัฟของควันในอากาศ 3 PCBs ที่แตกต่างกัน PCB มีผีไหม?


15

ใช่นั่นคือไฮกุ (แก้ไข: แก้ไขมัน ... ตอนนี้มันเป็นไฮกุจริง ๆ )

ไม่ฉันไม่ได้ยิ้ม

ฉันทำการทดสอบมาตรฐาน เห็นสิ่งที่เกิดขึ้นเมื่อหนึ่งในสองรางไฟฟ้าถูกย่อให้ GND บน PCB ที่ฉันออกแบบ เรากำลังพูดถึงรางไฟ 12 V ที่จ่ายโดยแหล่งจ่ายไฟแบบตั้งโต๊ะพร้อมตัวแปลงเจ้าชู้ 5 V บนบอร์ดแยกต่างหากที่จ่ายรางอื่นบน PCB (ซึ่ง ATmega328PB ของฉันเชื่อมต่ออยู่)

รางไฟขนาด 12 V มีช่องเสียบ DC บาร์เรลจำนวนหนึ่งที่สามารถสัมผัสกับผู้ใช้งานได้ ดังนั้นฉันจึงตัดสินใจที่จะไขไขควงของช่างอัญมณีเป็นหนึ่งในนั้นเพื่อทำการทดสอบการลัดวงจรของฉัน

ดูเถิดเป็นควันจาก ATmega328PB ของฉัน

ฉันคิดว่านั่นหมายถึงหนึ่งในสิ่งต่อไปนี้เกิดขึ้น:

ป้อนคำอธิบายรูปภาพที่นี่

แผนผังเวลา

นี่คือแผนผังของการเชื่อมต่อกับ ATmega328PB:

ATmega328PB แผนผัง

นี่คือแผนผังทั้งหมดของสิ่งต่าง ๆ ในการออกแบบที่มีการเชื่อมต่อกับราง 12 V (ราง VBAT +) และที่ควบคุมเส้นทางย้อนกลับปัจจุบันของ GND:

การควบคุมพลังงาน FET

Analog Front End

และนี่คือแผนผังของแจ็คบาร์เรลและแจ็คที่เกี่ยวข้องตรวจจับพิน (โปรดทราบว่าสิ่งเหล่านี้เชื่อมต่อโดยตรงกับพินของ ATmega328PB ที่ไม่มีการต้านทานอนุกรม)

แจ็คกระบอก DC พร้อมแจ็คตรวจจับหมุด

แผนลัดวงจร

แผนการจัดการกับไฟฟ้าลัดวงจรบนรางรถไฟ 12 V นั้นเพียงแค่ปิดLOAD_FET N-channel FET เพราะหนึ่งในสองเงื่อนไขเชิงตรรกะถูกพบในเฟิร์มแวร์:

  1. การสุ่มตัวอย่าง ADC ที่อัตรา 1 เฮิร์ตซ์จะตรวจสอบสภาพกระแสเกินและทำให้สวิตช์ FET_LOAD หยุดทำงานจึงตัดกระแสไฟฟ้าลัดวงจร
  2. แรงดันไฟฟ้าที่จ่ายให้ ATmega จะเข้าสู่สภาวะบราวน์เอาต์และ MCU จะรีเซ็ตและเริ่มต้นสวิตช์ FET_LOAD เป็น "ปิด" เพื่อตัดกระแสไฟฟ้าลัดวงจร

ควันตัวใหญ่

นี่คือโพรบออสซิลโลสโคปว่าเกิดอะไรขึ้นกับรางVbat +บน CH1 (สีเหลือง) และ+5รางบน CH2 (สีฟ้า) เมื่อตัด Vbat + เป็น GND ลัดวงจรผ่านการใช้ไขควงไขควงของอัญมณีกับสายไฟของสายเคเบิลที่ต่อเข้ากับสาย บาร์เรลแจ็ควงจร (ฉันไม่ได้ติดไขควงเข้าไปในเต้ารับ ) ในขณะที่มันถูกขับเคลื่อนโดยแหล่งจ่ายไฟบนม้านั่งที่ตั้งไว้ที่ 12V @ 5 แอมป์:

ลัดวงจร  CH1 - Vbat + |  CH2 - + 5V

หลังจากนั้นก็เกิดขึ้น ATmega ก็จะร้อนมากเมื่อใดก็ตามที่ฉันขับเคลื่อนบอร์ดและทำหน้าที่เป็นลัดวงจรระหว่างอินพุต + 5V และสัญญาณกราวด์ ฉัน desoldered ATmega ด้วยลมร้อนและทดสอบ FET_LOAD N-channel FET เพื่อดูว่ามันทอดหรือไม่ อันที่จริงมันล้มเหลวเช่นนี้ว่ามันจะไม่ปิดหรือเปิดอีกต่อไปเมื่อแรงดันไฟฟ้าของประตูถูกนำไปใช้กับ +5 หรือสัญญาณกราวด์ แต่แทนที่จะทำงานที่ใดที่หนึ่งในเขตพลบค่ำระหว่าง มันลดลงประมาณ 2.3 โวลต์ในขณะที่ดำเนินการ ~ 200 mA ไม่ว่าจะเป็น "เปิด" หรือ "ปิด" เมื่อมีการเสียบปลั๊กเข้ากับแจ็คถัง

โหนก

มีลางสังหรณ์ที่เนื่องจาก FET ได้รับความเสียหายที่เวกเตอร์สำหรับความเสียหายต่อ ATmega อาจเกิดจากการส่งแรงดันไฟฟ้าสูงผ่านท่อระบาย FET ไปที่เกตและไปยัง MCU มีการทดสอบตามมาด้วยแรงดันไฟฟ้าที่ต่ำกว่าในการจ่ายราง 12V หมายเหตุภาพสามภาพแรกนั้นเหมือนกัน แต่มีกระแสสูงสุดต่างกัน เมื่อ ATmega ปิดตัวลง (เนื่องจากแรงดันไฟฟ้าที่ทรุดตัวลงบน Vbat + ราง) สัญญาณLOAD_GND_ENABLE ที่จัดทำโดย MCU (สีน้ำเงินด้านล่าง) จะเข้าสู่ระดับต่ำโดยตัดสวิตช์FET_LOAD

ตำนาน:

CH1 = แรงดันไฟฟ้าข้าม Rshunt (0.005 ohm) CH2 = แรงดันไฟฟ้าที่สัญญาณ LOAD_GND_ENABLE (เชื่อมต่อกับ ATmega)

Vbat + จ่ายที่ 6V:

ป้อนคำอธิบายรูปภาพที่นี่

Vbat + จ่ายที่ 7V:

ป้อนคำอธิบายรูปภาพที่นี่

Vbat + จ่ายที่ 8V:

ป้อนคำอธิบายรูปภาพที่นี่

Vbat + จ่ายที่ 9V:

ป้อนคำอธิบายรูปภาพที่นี่

ในครั้งล่าสุดกระแสไม่เคยหยุดเพิ่มขึ้นและสัญญาณLOAD_GND_ENABLEเต้นได้อย่างสนุกสนาน แต่ทั้งหมดนั้นดูเหมือนว่าขีด จำกัด สูงสุดไม่เคยถูกละเมิดที่ขาLOAD_GND_ENABLE (อย่างน้อยฉันไม่คิดว่าพวกเขาเป็น ... ฉันมีขอบเขต 2 แชนเนลเท่านั้นและจะต้องมีการวัดราง + 5V เพื่อทราบว่าแรงดันไฟฟ้าบนLOAD_GND_ENABLE wrt Vcc)

ขั้นตอนถัดไป

ฉันเหลือบอร์ดเดียวเท่านั้นที่สามารถเสียสละได้ดังนั้นแผนของฉันคือ:

  1. ใช้ ATmega328PB ที่ว่างเปล่าเพื่อให้พินของ 'ทั้งหมดจะถูกตั้งค่าเริ่มต้นเป็นอิมพีแดนซ์สูงโดยไม่มีการกำหนดค่า / เริ่มต้นอุปกรณ์ต่อพ่วง ทำซ้ำการทดสอบการลัดวงจรเพื่อดูว่า ATmega328PB ยังคงขึ้นไปในควัน ถ้ามันไม่ได้ไปจากนั้น MCU จะต้องล้มเหลวเพราะมันเป็นแหล่ง / จมมากเกินไปในปัจจุบันจากหนึ่งในหมุดที่กำหนดค่าเป็นเอาท์พุทในขณะที่มันกำลังใช้เฟิร์มแวร์ในการทดสอบก่อนหน้านี้

  2. ทดสอบกับ ATmega328PB ที่ติดตั้งบนกระดานฝ่าวงล้อม (โชคไม่ดีที่ชิปนี้ไม่ได้มาในแพ็คเกจ DIP) ที่เชื่อมต่อกับ PCB ผ่านทางสายไฟ เลือกที่จะเริ่มต้นการเชื่อมต่อ flywire เดียวในแต่ละครั้งทำการทดสอบและดูว่า Flywire ใดกลายเป็นสิ่งที่รับผิดชอบการทอด ATmega328PB

  3. สั่งซื้อ PCB ตัวอย่างใหม่พร้อมรูปแบบที่เปลี่ยนแปลงซึ่งร่องรอยทั้งหมดที่เชื่อมต่อกับ ATmega328PB นั้นเชื่อมต่อกันด้วยสะพานประสานที่สามารถบัดกรีด้วยมือได้เมื่อฉันทดสอบ วิธีนี้สามารถทำการทดสอบการลัดวงจร (และการทดสอบอื่น ๆ ) ด้วย ATmega ที่เชื่อมต่อกับสัญญาณจำนวน จำกัด ในแต่ละครั้งและทำให้ง่ายต่อการเชื่อมต่อวงจรภายนอกอื่น ๆ ทั้งหมดเข้ากับสะพานบัดกรีเหล่านี้เพื่อควบคุมพวกมันอิสระจาก ATmega .

ใช่มันเป็นคำถามจริงๆ!

และคำถามคือ:

  • ไม่มีใครเห็นอะไรที่นี่ที่ฉันทำไม่ได้ ชัดเจนหรือไม่ ฉันหวังว่ามันจะไม่ชัดเจน ...
  • ขั้นตอนต่อไปของคุณคืออะไร

5
+1 สำหรับไฮกุและคำถามที่มีรายละเอียดครบถ้วนดีมาก แต่น่าเสียดายที่ฉันไม่มีประสบการณ์ / ความรู้ที่จะเริ่มให้คำตอบ
manassehkatz-Moving 2 Codidact

2
อัตราตัวอย่าง 1 วินาทีสำหรับการลัดวงจรคือ WAY TOO SLOW สมมติว่าชิ้นส่วนที่มีความเสี่ยงนั้นเป็นเซมิคอนดักเตอร์บางส่วนซึ่งมีพื้นที่ใช้งานที่มีความหนา 10 ไมครอนนั่นคือ 10 ไมครอนที่มีความร้อน 1.14 ไมครอนเป็นเอกภาพคุณจึงต้องตรวจสอบกระแสเกินจริง
analogsystemsrf

2
สิ่งที่ไฟฟ้าจะไม่ได้ทำงานหลังจากที่ปล่อยให้มายากลควันออก ...
พลังงานแสงอาทิตย์ไมค์

ฉันหวังว่าเราจะเห็นคำถามเพิ่มเติมเช่นนี้ +1
Wossname

คำตอบ:


1

ฉันคิดว่าสวิตช์ของคุณในบรรทัด LOAD_GND น่าจะเป็นบุคคลที่มีความผิดที่นี่รวมกับแจ็คที่ไม่มีการป้องกันตรวจจับสายไปยังไมโคร (ซึ่งฉันจะทราบว่ามีการเชื่อมต่อกับ LOAD_GND สำหรับแจ็คใด ๆ ที่ไม่มีปลั๊ก

พิจารณาสิ่งที่เกิดขึ้นหากคุณปิดมอสเฟต (แจ็คตรวจจับสายบนซ็อกเก็ตใด ๆ ที่ไม่มีแจ็คเสียบจะเชื่อมต่อกับแรงดันไฟฟ้าของแบตเตอรี่ผ่านโหลดลัดวงจรควันจะตามมา) อย่างน้อยคุณควรมีความต้านทานแบบอนุกรม บนแจ็คตรวจจับเส้น (บอกว่า 10k หรือมากกว่านั้นและไดโอดคู่หนึ่ง) แต่จริงๆแล้วฉันไม่เห็นว่าสวิตช์ LOAD_GND นั้นซื้ออะไรให้คุณมากกว่าสวิตช์ด้านสูงหรือไม่

อนึ่งฉากยานยนต์มีตรรกะที่ดีมาก ๆ ที่ควบคุมสวิทช์ด้านสูงในตัวเหนือการเดินทางในปัจจุบันและการรับรู้ในปัจจุบัน


คุณพูดถูก รัดกุมถูกต้องมาก ขอบคุณที่คุณ
macdonaldtomw

3

ราง 12 V มีช่องเสียบ DC บาร์เรลจำนวนหนึ่งติดตั้งอยู่ที่จะเปิดรับผู้ใช้ปลายทาง ดังนั้นฉันจึงตัดสินใจที่จะไขไขควงของช่างอัญมณีเป็นหนึ่งในนั้นเพื่อทำการทดสอบการลัดวงจรของฉัน

ซึ่งหมายความว่าคุณใส่ + 12V ลงบนJACK_DETECTบรรทัดที่ไม่มีการป้องกันทอดชิป ดู "แรงดันไฟฟ้าที่ขา [.. ]" ด้านบน

ออกแบบวงจรใหม่ที่มีความผิดปกติสั้น ๆ ระหว่างVBAT+และJACKx_DETECTไม่อนุญาตให้แรงดันไฟฟ้าบนขาของ MCU สูงกว่า VCC - เช่นตัวต้านทานและไดโอด


0

เห็นได้ชัดว่าไม่สามารถแสดงความคิดเห็น (ยัง) แต่ฉันเปลี่ยนคำตอบให้เห็นด้วยกับข้อสังเกตข้างต้น

สิ่งหนึ่งที่ฉันจะเข้าร่วมคือการทำให้แน่ใจว่า FET ของคุณอยู่ในสภาพดี (pullup / pulldown) เมื่อ ATMega อยู่ในสถานะ boot / reset โดยปกติพินจะถูกตั้งค่าเป็นโหมดอินพุต IIRC ซึ่งทำให้เกต FET ลอยตัวและนำเสนอไดรฟ์ Vgs ที่ไม่ดีซึ่งเป็นการเพิ่มความต้านทานของแชนเนล หากกระแสไหลระหว่างการเชื่อมต่อท่อระบายน้ำและแหล่งกำเนิดมีความสำคัญจะทำให้ความร้อนสูงเกินไป / ทำลาย FET อย่างรวดเร็ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.