ทางเลือกของ SPI เนื่องจาก EMI


24

ปัจจุบันฉันสร้างระบบที่ประกอบด้วยกล่องพลาสติกซึ่งมี MCU พูดคุยกับ 7 ADCs โดยใช้ 2MHz SPI ผ่านสายยาวประมาณ 5 ซม

MCU และ ADC เชื่อมต่อโดย SPI

ปัญหาคือว่าฉันกังวลเกี่ยวกับอีเอ็มไอ ทุกสิ่งที่ฉันได้อ่านแสดงให้เห็นว่าสัญญาณดิจิตอลทุกชนิดที่ไม่ปลอดภัยบน PCB ในแชสซีโลหะที่มีการลงกราวด์นั้นจะแผ่รังสีมากเกินไปที่จะผ่านการทดสอบ EMI ฉันเดาว่านี่จะรวม I2C ด้วย

นี่เป็นโอกาสที่จะทำให้การทดสอบ EMI ล้มเหลวหรือไม่ ฉันจะทำอะไรเกี่ยวกับเรื่องนี้?

ฉันกำลังมองหาคำตอบใด ๆ รวมทั้ง "ใช้รถบัส / ADC ที่แตกต่างกัน" แต่ไม่รวมถึงคำตอบที่เกี่ยวข้องกับการเปลี่ยนแปลงเชิงกลเช่น: "ใส่ ADC ทั้งหมดใน PCB เดียวกัน" หรือ "ใส่ทุกอย่างไว้ในกล่องโลหะ" . ฉันสนใจทางเลือก Low-EMI โดยเฉพาะกับ SPI รวมถึงรถบัสที่แตกต่างกัน

นี่คือข้อมูลที่เกี่ยวข้องเกี่ยวกับแอปพลิเคชัน โปรดแจ้งให้เราทราบหากคุณต้องการทราบข้อมูลเพิ่มเติม:

  • 6 สายไปที่บอร์ด ADC แต่ละอัน (Power, GND, CS, CLK, MOSI, MISO)
  • ADC ปัจจุบันคือMCP3208 (Microchip 8-channel, 12-bit)
  • ฉันกำลังทำงานในแอปพลิเคชั่นที่มีข้อ จำกัด ด้านพื้นที่อย่างสิ้นเปลืองดังนั้นการเพิ่มระบบป้องกันให้กับสายไฟจึงไม่ใช่ตัวเลือก
  • มันจะเป็นการดีถ้าได้ใช้บัสที่แตกต่างกัน (หนึ่งหรือสองคู่เท่านั้น) แต่ ADCs เดียวที่มีการสื่อสารต่างกันดูเหมือนจะเป็นประเภท LVDS แบบหลาย MSPS
  • CAN อาจช้าเกินไปและยังมีขนาดใหญ่สำหรับแอปพลิเคชันที่ จำกัด พื้นที่
  • อัตราตัวอย่าง: ฉันต้องการตัวอย่างทุกช่องทางที่ 1kHz

ที่เพิ่ม:

เพียงให้แนวคิดของข้อ จำกัด ของพื้นที่:

PCB ขนาดเล็กที่มี MCP3202

ที่นี่คุณสามารถเห็นหนึ่งใน ADC PCB อันนี้มี MCP3202 แทนที่จะเป็น MCP3208 แต่มันใช้งานได้ (ish) มันอยู่ในแพ็คเกจ TSSOP 8 PCB มีขนาด 11 มม. x 13 มม. สายเคเบิลสีดำมีขนาดเส้นผ่าศูนย์กลาง 2 มม. อย่างที่คุณเห็นไม่มีแม้แต่พื้นที่สำหรับตัวเชื่อมต่อและสายไฟจะถูกบัดกรีโดยตรงไปยัง PCB แล้วจึงนำไปวางกระถาง การขาดตัวเชื่อมต่อเกิดจากข้อ จำกัด ด้านพื้นที่โดยรอบมากกว่าข้อ จำกัด ด้านพื้นที่ PCB


4
การป้องกันสายเคเบิลสามารถพิจารณาได้ว่าใช้งานไม่ได้ แต่เพิ่มจำนวนสายไฟ (การส่งสัญญาณต่างกัน) เป็นสองเท่าได้อย่างไร
timrorr

ขออภัยฉันควรจะชัดเจนมากขึ้น ฉันหมายถึงสิ่งที่สามารถทำได้ซึ่งก็คือความแตกต่างของเส้นลวด 2 เส้น เห็นได้ชัดว่าการเพิ่มจำนวนสายเป็นไปไม่ได้เป็นสองเท่า ฉันได้แก้ไขคำถาม
Rocketmagnet

1
คุณกำลังพยายามผ่านการทดสอบ / การรับรองประเภทใด
Joel B

1
@JoelB - ขออภัยฉันยังใหม่กับ EMI ดังนั้นฉันจึงไม่แน่ใจ แต่ในบางจุดเราจะต้องทำการทดสอบ EMI บางอย่าง อาจเป็นระดับปกติ / ผู้บริโภคระดับหนึ่งของการทดสอบ EMI หากมีสิ่งนั้น
Rocketmagnet

1
@ Rocketmagnet โอ้ไม่เข้าใจฉันว่าคุณกำลังสร้างเสาอากาศได้อย่างง่ายดายมาก มีวิธีการออกแบบสำหรับสิ่งนี้เขาเข้ามามากกว่านี้ แต่ถ้าคุณเคเบิลไม่ถือความถี่ใด ๆ ที่การทดสอบ EMI ตรวจสอบว่าคุณสบายดีคุณต้องแน่ใจว่าคุณไม่ได้เชื่อมต่อเสียงความถี่สูงอื่น ๆ จากที่อื่น out (ซึ่งเป็นเรื่องง่ายเหมือนการออกแบบระบบดิจิตอลความเร็วสูง) ฉันแค่ต้องการความคิดที่ดีขึ้นสำหรับปัญหาของคุณ ฉันชอบคำถามมากและได้ +1 ของฉันแล้ว
Kortuk

คำตอบ:


13

2 MHz SPI มากกว่า 5 ซม. สายไม่ใหญ่ ฉันทำ 30 MHz SPI มากกว่าสาย 10 ซม. จำนวนมากผ่าน FCC Class B และเทียบเท่ากับ CE กุญแจสำคัญคือการทำให้แน่ใจว่าคุณมีสายเคเบิลที่ดี (การควบคุมที่ดีที่สุดสำหรับพื้นที่ลูป) และยุติสัญญาณของคุณอย่างถูกต้อง

คุณสามารถควบคุมพื้นที่ลูปได้โดยใส่สัญญาณ power / GND ไว้ตรงกลางของสายเคเบิล: ตรงกลางของตัวเชื่อมต่อทั้งคู่ แต่อยู่ตรงกลางของชุดสายไฟเช่นกัน โดยปกติคุณจะมีกำลังหรือ GND ต่อสัญญาณ แต่เนื่องจากเป็นวิธีแก้ปัญหาที่ใช้งานได้ยากคุณจึงต้องทำสิ่งที่ดีที่สุดให้ดีที่สุด ตรวจสอบให้แน่ใจว่าใส่แคปตัวแยกหนึ่งหรือสองตัวบน PCB ทั้งสองด้านของสายเคเบิล

การยุติสัญญาณอย่างถูกต้องนั้นจะยุ่งยากเล็กน้อยเนื่องจากคุณไม่มีสายอิมพีแดนซ์ที่ควบคุมได้ สิ่งที่ฉันจะทำคือใส่ตัวกรอง RC บน PCB ที่ปลายทั้งสองของสายเคเบิล ตัวกรอง RC จะมี C ที่ด้านสายเคเบิลและ R ที่ด้านชิป ที่ไดร์เวอร์สัญญาณฉันจะเริ่มต้นด้วย R ประมาณ 75 โอห์มและ C ประมาณ 1 nF ที่ตัวรับสัญญาณ R จะอยู่ที่ 10 ohms และ C ยังคงเป็น 1 nF เมื่อคุณสร้างต้นแบบแล้วคุณควรลองใช้ค่าที่แตกต่างกัน โดยพื้นฐานแล้วคุณต้องการค่าที่สูงขึ้นสำหรับ R และ C แต่ไม่สูงมากจนสิ่งนั้นหยุดทำงานหรือระดับสัญญาณอ่อนเกินไป ขอบของสัญญาณของคุณควรจะถูกปัดเศษออกมาก แต่ไม่ควรมีเสียงเรียกเข้าและนาฬิกาน่าจะดีในขณะที่อยู่ในช่วงการเปลี่ยนสัญญาณ (ปกติคือ 0.8 ถึง 2.0 โวลต์)

ค่าสูงสุดอย่างน้อย 3 nF เหมาะสำหรับการป้องกัน ESD แต่นั่นอาจไม่เป็นปัญหาในแอปพลิเคชันของคุณ


ขอบคุณสำหรับคำตอบ. ใช่ฉันค่อนข้างแน่ใจว่าการเปลี่ยนแปลงอิมพีแดนซ์หลายจุดในขณะที่มันย้ายจาก pcb เป็นขั้วต่อเป็นสายเคเบิล ฯลฯ นอกจากนี้สาย CS, CLK และ MOSI ยังใช้ร่วมกันใน ADC ทั้งหมด นั่นสร้างความแตกต่างหรือไม่?
Rocketmagnet

@Rocketmagnet ตัวกรอง RC ส่วนใหญ่จะไปจบ นั่นเป็นสาเหตุที่สัญญาณจะออกมาดูโค้งมนมาก สิ่งนี้จะทำหลายสิ่งให้คุณสิ่งที่สำคัญที่สุดคือการสร้างความต้านทานไม่สำคัญ คุณควรทำการส่งสัญญาณ CS, CLK และ MOSI ซ้ำเพื่อไม่ให้ใช้ร่วมกันผ่านสายเคเบิล บางครั้งไม่สามารถทำได้ดังนั้นอย่างที่สอง (ระยะทาง) ที่ดีที่สุดคือการใช้การเลิกจ้างแยกต่างหากสำหรับแต่ละสายและไม่แบ่งปันการเลิกจ้าง

2

สามารถเป็นทางออกที่ดีที่สุดของคุณในแอปพลิเคชันประเภทนี้ มันต่างกันและควรลดจำนวนสายไฟที่ไปยังบอร์ดแต่ละอัน หากคุณสุ่มตัวอย่างเจ็ดชิปแปดช่องต่อชิปสิบสองบิตต่อช่องนั่นคือข้อมูล 672 บิตต่อเวลาตัวอย่าง ที่ตัวอย่าง 1 kHz อัตราการถ่ายโอน 1 Mbit นั่นคือ 1000 บิตต่อเวลาตัวอย่าง ไม่ได้ทำให้คุณมีค่าใช้จ่ายมากนักดังนั้นคุณอาจพิจารณาใช้ไมโครคอนโทรลเลอร์ที่มีคอนโทรลเลอร์ CANbus แยกต่างหากสองตัว (Microchip ทำให้หลาย ๆ ตัวฉันใช้ dsPIC 30F6012a) แบ่ง A / Ds ของคุณเป็นสองบัสด้วย ไมโครคอนโทรลเลอร์ส่วนกลางทั้งคู่และคุณควรมีแบนด์วิดธ์มากมาย

ในอีกด้านหนึ่งคุณอาจลองเปลี่ยนตัวแปลง A / D เป็นไมโครคอนโทรลเลอร์ dsPIC 30F4013 อาจเป็นตัวเลือกที่ดี 13 A-D 13-bit channels และ CANbus

ฉันคิดว่าคุณสามารถแปลง SPI เป็น / จากโปรโตคอลแรงดันไฟฟ้าที่แตกต่างกันเช่น RS-485 แต่ฉันไม่รู้ว่าจะแสดงความคิดเห็นอย่างฉลาดพอ


ขอบคุณสำหรับคำตอบ. ฉันได้รับการพิจารณา CAN แต่ในท้ายที่สุดฉันไม่แน่ใจว่ามีพื้นที่เพียงพอสำหรับส่วนประกอบ หากมีตัวรับส่งสัญญาณ CAN ขนาดเล็กใด ๆ ก็อาจเป็นไปได้ อันที่เล็กที่สุดที่ฉันสามารถหาได้คือ SOIC 8
Rocketmagnet

2
!! เมื่อคุณพูดว่า space-constrained คุณหมายถึงมัน! คุณอาจตรวจสอบคำตอบนี้: electronics.stackexchange.com/a/30596/7523เห็นได้ชัดว่าคุณอาจสามารถหนีได้โดยไม่ใช้ตัวรับส่งสัญญาณในสถานการณ์เช่นนี้ แน่นอนฉันจะสนใจที่จะรู้ว่าถ้าคุณสามารถ!
Stephen Collings

3
หึ ตรวจสอบชื่อในคำตอบที่คุณเชื่อมโยง
Rocketmagnet

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