ตัวแบ่งแรงดันและ ADC


13

ฉันต้องการอ่านแรงดันไฟฟ้าจาก 0-30V ด้วย MCU ADC ซึ่งมีอินพุตสูงสุด 3V

ตอนแรกฉันคิดว่าการใช้ตัวแบ่ง 100k-10k (ดังนั้น 33V แปลเป็น 3V) แต่ตามคำตอบของความต้านทานอินพุต ADC บน MCUsสิ่งนี้จะเพิ่มข้อผิดพลาด 3% เนื่องจากกระแสรั่วไหลของอินพุต ฉันกำลังมองหาข้อผิดพลาดสูงสุด 0.5% อย่างไรก็ตามด้วยค่าที่ต่ำกว่าสำหรับตัวหารฉันมีความเสี่ยงที่จะทำให้อินพุตของ MCU เสียหายเนื่องจากแรงดันไฟฟ้าเกิน (ตัวต้านทานทำหน้าที่ควบคู่กับตัวหนีบไดโอดบนอินพุต) ฉันยังเพิ่มการกระจายพลังงานในตัวต้านทานของฉันซึ่งเป็นอุปกรณ์ 0603 ขนาดเล็ก สูงสุด 0.063W ฉันจะหลีกเลี่ยงสิ่งนี้ได้อย่างไร ความต้านทานอินพุต NB ไม่สำคัญ

ฉันไม่กังวลเกี่ยวกับความเร็วในการสุ่มตัวอย่างมันจะตรวจสอบแรงดันแบตเตอรี่ที่สูงสุด 100 ตัวอย่างต่อวินาที


คุณสร้างก่อนหน้านี้หรือไม่ 3% เป็นกรณีที่เลวร้ายที่สุดจากการรั่วไหลของเคสที่แย่ที่สุดเว้นแต่คุณจะรู้สึกแย่มากคุณสามารถปรับเทียบมันได้
Kortuk

สวัสดี, คุณคิดว่าฉันสามารถปรับตัวต้านทานได้ 3% หรือจัดการด้วยซอฟแวร์ (สเกลโดย 1.03x?)
Thomas O

คุณกำลังบอกว่าคุณต้องการความแม่นยำสูงวาดพลังงานต่ำในราคาที่น้อยมาก ไม่แน่ใจว่าเป็นไปได้ คุณสามารถปรับเทียบในซอฟต์แวร์เช่น kortuk ได้กล่าวถึง แต่ในกระบวนการ fab ที่ใช้เวลาซึ่งจะเท่ากับเงิน
Kellenjb

การขับขี่อินพุต MCU ADC ด้วยอิมพีแดนซ์ขนาดใหญ่นั้นไม่ดีอยู่ดี มันเพิ่มเวลาการตกตะกอนและทำให้เกิดการบิดเบือน ฯลฯ "ADC เหมาะสำหรับสัญญาณอะนาล็อกที่มีความต้านทานเอาต์พุตประมาณ 10 kΩหรือน้อยกว่าหากใช้แหล่งกำเนิดดังกล่าวเวลาการสุ่มตัวอย่างจะน้อยมากหากแหล่งที่มีอิมพีแดนซ์สูงกว่า จะใช้เวลาการสุ่มตัวอย่างจะขึ้นอยู่กับระยะเวลาที่แหล่งข้อมูลต้องการประจุตัวเก็บประจุ S / H ที่สามารถแตกต่างกันอย่างมากผู้ใช้จะแนะนำให้ใช้แหล่งความต้านทานต่ำเท่านั้นที่มีสัญญาณแปรผันช้าซึ่งจะลดการถ่ายโอนประจุที่ต้องการ ถึงหมวก S / H "
endolith

คำตอบ:


10

ใช้ตัวแบ่งแรงดันพร้อมตัวต้านทานและตัวติดตาม opamp หลังจากนั้น ทางเลือกใช้วงจร opamp เพื่อลดแรงดันไฟฟ้าและคุณสามารถทำการกรอง anti alias ได้ในขั้นตอนเดียว!


+1 ใช้แอมป์สหกรณ์ที่ได้รับ 0.1 และทำให้เป็นสองเท่าของตัวกรองการลบรอยหยัก
ajs410

ฉันไม่สามารถจ่ายแอมป์ ฉันมีที่ว่างไม่พอ ฉันอาจจะจ่าย IC buffer ถ้าพวกเขามีขนาดเล็กพอและสามารถใช้ได้กับ 8 ช่องทาง
โทมัสโอ

โดยปกติคุณเพิ่งซื้อแอมป์ขนาดเล็กและเชื่อมต่อเป็นบัฟเฟอร์ national.com/mpf/LM/LMC7111.html SOT23 ใหญ่เกินไป?
endolith

โอ้คุณต้องการ 8 ช่อง
endolith

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

14

โอเคจากคำตอบของคุณต่อความคิดเห็นของฉันฉันคิดว่าฉันสามารถช่วยได้มากขึ้นด้วยคำตอบแบบเต็ม

สร้างมัน!

สร้างตัวแบ่งความต้านทานแบบง่ายของคุณ สิ่งนี้มีข้อดีหลายประการสำหรับหนึ่งขนาด

อธิบายมัน!

ตอนนี้คุณกำลังจะใช้ไมโครคอนโทรลเลอร์ด้วยนี่คือที่ที่คุณต้องอธิบายลักษณะข้อผิดพลาดของคุณ ใช้ตัวสร้างแรงดันไฟฟ้าที่แม่นยำมากตอนนี้ตรวจสอบแรงดันไฟฟ้าและดูว่าข้อผิดพลาดใดที่ยูซีวัดจริง

วิเคราะห์มัน!

ตอนนี้เมื่อมันได้รับความสนุกสนาน มีหลายสิ่งที่คุณสามารถวัดได้

ความแม่นยำและความแม่นยำ

สิ่งที่ใหญ่ที่สุดในการวัดที่นี่คือถ้าเกิดข้อผิดพลาดที่จุดซ้ำ หากทุกครั้งที่คุณกวาดคุณจะได้รับข้อผิดพลาดที่แตกต่างกันหรือหากการกวาดตามเส้นทางที่แตกต่างให้ข้อผิดพลาดที่จุดเดียวกันนี่ไม่ใช่ตัวเลือก มักเกิดขึ้นกับกระแสรั่วไหล ส่วนสำคัญที่นี่คือคุณไม่จำเป็นต้องมีความแม่นยำสูงเพียงระดับความแม่นยำสูง หากคุณสามารถระบุลักษณะข้อผิดพลาดของคุณ uC ของคุณสามารถแก้ไขได้ หากคุณมีความแปรปรวนจำนวนมากคุณต้องเปลี่ยนวิธีแก้ไข

การสอบเทียบ X point คืออะไร

ตอนนี้ถ้าคุณมีความแม่นยำสูงตามที่กล่าวไว้ก่อนหน้าคุณสามารถไปยังการแก้ไขความถูกต้อง ทีนี้ถ้าคุณวาดกราฟแรงดันไฟฟ้าเข้ากับแรงดันขาออกคุณจะต้องตัดสินใจว่า "จุดอ้างอิง" ที่คุณต้องการ อุปกรณ์ที่สวยงามช่วยให้ 1 จุด (หรือจุดศูนย์ไม่จำเป็นต้องสอบเทียบ) โพรบวัดอุณหภูมิหลายชนิด

การสอบเทียบจุดเดียว

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

การสอบเทียบสองจุด

ทั้งเส้นโค้งเชิงเส้นอาจเป็นออฟเซ็ตและมีความแตกต่างของสลาฟคุณต้องการเพียงจุดอ้างอิงสองจุดและการประมาณเชิงเส้นเพื่อแยกออฟเซ็ตของคุณ นี่ยังค่อนข้างง่ายคุณแค่เอาจุดใด ๆ คูณด้วยสเกลาร์และเพิ่มออฟเซ็ต

อย่างที่คุณเห็นมันได้รับความยุ่งเหยิงยิ่งคะแนนที่คุณต้องการ ในบางจุดมันง่ายกว่าที่จะใช้ทุกดาต้าพอยน์และสัมพันธ์กับค่าจริง ตัวอย่างเช่นการค้นหาว่า 0000 คือ 1V, 0001 คือ 2V, 0002 คือ 1.5V นี่เป็นสิ่งที่ยุ่งเหยิงและยังคงใช้งานได้เฉพาะถ้าออฟเซ็ตสามารถทำซ้ำได้ สิ่งนี้สามารถเกิดขึ้นได้

ข้อสรุปมันขึ้นมา

ฉันหวังว่าสิ่งนี้จะช่วยบอกฉันหากคุณต้องการความชัดเจนมากขึ้น หากคุณจบลงด้วยกระแสรั่วไหลที่ไม่น่าเชื่อถือก็ถึงเวลาที่ต้องจัดการกับความต้องการบัฟเฟอร์หรืออะไรทำนองนั้น

ฉันเห็นความเป็นไปได้ที่จะเกิดข้อผิดพลาดสูงจากการรั่วไหล แต่ฉันจะพนันได้ว่าข้อผิดพลาดนั้นค่อนข้างเล็กในช่วงส่วนใหญ่และเมื่อมันสามารถแก้ไขได้อย่างง่ายดาย


1
ในฐานะที่เป็นหมายเหตุด้านนี้ดูเหมือนจะเป็นงานตัน แต่จริงๆแล้วมันเป็นงานที่ค่อนข้างเล็กเพื่อลดต้นทุนส่วนประกอบ
Kortuk

ความคิดเห็นที่ดี! วิธีที่ยอดเยี่ยมในการทำซอฟต์แวร์ วิธีสุดท้ายของการค้นหาตารางอาจเป็นวิธีที่ดีที่สุด ข้อเสียเปรียบเพียงอย่างเดียวคือ ROM ที่ใช้ แต่สำหรับ ADC ขนาด 8-10 บิตบน MCU มันควรจะทำได้
smashtastic

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