การปรับแรงดันสำหรับ Arduino Analog In, เกินกว่าตัวแยกแรงดันไฟฟ้า


16

เมื่อเร็ว ๆ นี้ฉันได้สร้างเซ็นเซอร์โค้งไฟเบอร์ออปติกและฉันต้องการอ่านค่าที่ได้จากพวกเขาลงในคอมพิวเตอร์ผ่านทาง Arduino ฉันวัดแสงด้วยโฟโตไดโอดนี้จากอุตสาหกรรมไฟเบอร์ออปติก ขณะนี้ฉันกำลังให้ LED ที่ปลายอีกด้านเช่นเดียวกับโฟโตไดโอด 2.2V คำถามของฉันเกี่ยวกับความจริงที่ว่าความผันผวนของแรงดันไฟฟ้าที่วัดด้วยมัลติมิเตอร์บนโฟโตไดโอดนั้นเป็นแบบเส้นตรง แต่ค่อนข้างเล็กเนื่องจากเส้นใยมีการเปลี่ยนรูปแม้จะค่อนข้างรุนแรง เมื่อใช้เส้นใยตรงขึ้นอยู่กับไฟเบอร์ (มันยากที่จะให้คะแนนพวกเขาเหมือนกัน) แรงดันไฟฟ้าจะวนอยู่ที่ประมาณ 1.92V และด้วยการโค้งงอมันก็จะขึ้นไปพูด 1.93-1.94V ฉันไม่กังวลเกี่ยวกับการทำให้แรงดันไฟฟ้าเหมือนกันกับที่ฉันสามารถวัดได้ในซอฟต์แวร์

สิ่งที่ฉันกังวลเกี่ยวกับการสูญเสียความละเอียดเมื่อทำ A / D กับ Arduino หากความผันผวนของแรงดันไฟฟ้าของฉันอยู่ที่ 10mV A / D ของ 10 บิต A / D จะไม่วัดปริมาณนรกออกมาแม้ว่าฉันจะปรับแรงดันไฟฟ้าได้สูงถึง 5V ด้วยตัวแบ่งแรงดันไฟฟ้าหรือไม่ สิ่งที่ฉันกำลังมองหาคือ scaler อะนาล็อก ฉันจะยืดช่วงนั้นระหว่าง 1.92 ถึง 1.94 ให้ครอบคลุมเต็มรูปแบบได้อย่างไรจาก 0V ถึง 5V เพื่อที่ฉันจะสามารถใช้ประโยชน์จาก Arduino A / D ได้อย่างเต็มรูปแบบ?

ฉันรู้สึกว่าสิ่งนี้จะต้องเป็นการดำเนินการทั่วไปในอุปกรณ์อิเล็กทรอนิกส์ แต่ฉันไม่เคยศึกษาอย่างเป็นทางการดังนั้นสิ่งต่าง ๆ มากมายที่ฉันสูญเสียไป

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


คุณจะกรุณาแสดงแผนผังของผู้รับหรือไม่ คุณกำลังจ่ายแรงดันไบอัสที่ 1.9 โวลต์หรือไม่?
endolith

หากคุณหมายถึงแผนผังสำหรับตัวรับสัญญาณเองฉันเชื่อมโยงกับแผ่นข้อมูลด้านบน นี่คืออีกครั้ง: i-fiberoptics.com/pdf/IFD91.pdfหากคุณหมายถึงวิธีที่ฉันติดมันคุณจะเห็นได้ในรูปถ่าย ผู้รับเป็นสีดำ ฉันให้ 2.2V (แต่ในภาพเป็นแบตเตอรี่ li-ion) ผ่านสายสีแดงที่ด้านข้างของตัวรับสัญญาณที่มีจุดสีส้มและฉันวัดแรงดันไฟฟ้าผ่านตัวต้านทานที่ต่อกับพื้น ด้านอื่น ๆ.
ระเบียง

คำตอบ:


11

ดังนั้นถ้าฉันเข้าใจถูกต้องคุณต้องการ "อ่าน" รูปแบบ 10 mV ที่ด้านบนของสัญญาณ 1.9V หรือไม่

หากเป็นเช่นนั้นฉันขอแนะนำสองขั้นตอนที่แยกจากกัน ครั้งแรกจะเป็นขยายโฟโตไดโอด (หน้า 9 เป็นวงจรมาตรฐานที่สุด) ซึ่งจะช่วยให้ได้รับกระแสจากโฟโตไดโอดของคุณที่แปลเป็นแรงดันไฟฟ้า

ขั้นตอนที่สองจะเป็นเครื่องขยายเสียง instrumentatation เช่นตระกูล INA จาก Texas Instruments (ที่ดีที่สุด แต่ก็อาจมีราคาแพง) วิธีนี้จะช่วยในการลบสัญญาณ "โหมดทั่วไป" ของคุณซึ่งในกรณีนี้คือ 1.9 V. คุณยังสามารถเพิ่มการเพิ่มเข้าไปในแอมป์เครื่องมือวัดหรือเพิ่มแอมป์สหกรณ์แบบง่าย ๆ ในการตั้งค่าแบบไม่กลับด้านเพื่อช่วยให้ได้ สัญญาณของคุณถึง 5 V ที่จำเป็น

ฉันไม่ได้บอกว่ามันจะสมบูรณ์แบบ แต่ฉันคิดว่านั่นเป็นการเริ่มต้นที่ดี

ในฐานะโน้ตสุดท้ายฉันชอบความคิดของเดวิดด้านบนเกี่ยวกับที่หนีบแม้ว่าสิ่งเหล่านี้อาจทำให้เกิดข้อผิดพลาดในการวัดที่ตัวแปลง A / D สิ่งที่สำคัญกว่าคือถ้าคุณสามารถแกว่งได้ลองแอมป์สหกรณ์ที่ดีกว่า 741 สิ่งเหล่านี้เป็นเรื่องปกติ แต่รายละเอียดแย่มาก แรงดันออฟเซ็ต 3 หรือ 4 mV ที่ขั้วอินพุตสามารถรบกวนสัญญาณขนาดเล็กอย่างที่คุณพยายามวัด

~ Chris Gammell


1
คุณไม่ต้องการแอมป์เครื่องมือ แอมป์ diff ง่าย ๆ จะทำ คุณจำเป็นต้องใช้แหล่งจ่ายคงที่ 1.9 V เพื่อใช้เป็นข้อมูลอ้างอิงของคุณ ฉันคาดเดาบางอย่างเช่นนี้อยู่แล้วในวงจรเป็นอคติสำหรับเซ็นเซอร์ มันจะช่วยให้มีวงจร นอกจากนี้หลังจากลบอคติแล้วคุณจะต้องเพิ่มอคติอีกครั้งเพื่อให้ได้ช่วงระหว่าง 0 ถึง 5 V ของ ADC
endolith

1
ฉันยอมรับว่าคุณไม่จำเป็นต้องมี แต่ก็เป็นความคิดที่ดี แอมป์ instrumentation เป็นเพียงแอมป์ diff ที่มีบัฟเฟอร์ก่อนหน้านี้ (บางครั้งมีตัวต้านทานเพิ่มเพื่อรับ) หากคุณใช้แอมป์ diff คุณจะอยู่ในความเมตตาของตัวต้านทานในแอมป์ diff ของคุณ บางครั้งต่ำสุด 1K หากเขาพยายามวัดบางอย่างความต้านทานสูง (จากบัฟเฟอร์ของ iAmp) สามารถช่วยได้จริงๆ (เช่นไม่มีกระแสไหลเข้าสู่อุปกรณ์วัด)
Chris Gammell

12

การปรับสภาพสัญญาณในแง่นี้เป็นเรื่องธรรมดามาก คุณต้องการใช้แอมพลิฟายเออร์เพื่อสร้างช่วง 10mV นั้น (เช่น) ช่วง 0-5V ทั้งหมดของอาร์ดิโน สิ่งนี้สามารถทำได้โดยใช้ op-amps เช่น LM741 คุณอาจต้องการใช้ "ตัวยึดแรงดันไฟฟ้า" (เช่น: ซีเนอร์ไดโอดสองตัว) บนเอาต์พุตของการปรับสภาพสัญญาณ / อินพุตของคุณไปยัง ADC เพื่อให้แน่ใจว่าค่าไม่เกิน 5V หากคุณมองไปรอบ ๆ ออนไลน์ที่แผ่นข้อมูล op-amp และ / หรือวงจรปรับสภาพสัญญาณคุณควรหาคำแนะนำเกี่ยวกับสิ่งที่คุณกำลังมองหา


4

ขอแนะนำให้คุณดูที่การรวมกันของ PGA (แอมพลิฟายเออร์เกน) และ DAC ที่มีเอาต์พุตเซ็นเซอร์ไปยังอินพุต "+" และ DAC ไปที่อินพุต "-" (หรือบางสิ่งบางอย่างที่รวมกันซึ่งให้ฟังก์ชันการทำงานที่เทียบเท่า) โดยทั่วไปดูสัญญาณที่มีอัตราขยายต่ำหาว่าออฟเซ็ตคืออะไรนำแรงดันไฟฟ้านั้นไปใช้กับ DAC และเหวี่ยงตัวเพิ่มขึ้น

PGA308 ของ TIดูเหมือนว่ามันอาจเป็นทางออกที่ดี

หากคุณต้องการโซลูชันที่ราคาไม่แพงให้ใช้แอมพลิฟายเออร์ดิฟเฟอเรนต์แบบคงที่ (มาตรฐาน 4-resistor + op-amp จะทำอย่างไร) + DAC 8 บิตที่เสถียรและเงียบสงบ (ลักษณะเสถียรภาพ / เสียงรบกวนสำคัญกว่าความแม่นยำ) เอาต์พุตเซ็นเซอร์ในอินพุต "+" ไปยังแอมป์ diff และเอาต์พุต DAC บนอินพุต "-"

แบบฝึกหัดสำหรับผู้อ่าน: แสดงว่าคุณสามารถนำเอาท์แอมป์แอมป์ออกจากความอิ่มตัวและเข้าสู่ช่วงเชิงเส้นโดยใช้เทคนิคการค้นหาแบบไบนารีด้วย DAC และทำให้มั่นใจได้ว่าการได้รับไม่เกิน G1 = แรงดันไฟฟ้าอินพุต ADC แบบเต็ม หารด้วยผลรวมของขนาดขั้นตอนที่ระบุของ DAC และ DNL (ความไม่เป็นเชิงเส้นเชิงอนุพันธ์) ฉันอาจใช้ขนาดเล็กกว่าของ (G1 / 2) และ G2 โดยที่ G2 = แรงดันไฟฟ้าอินพุต ADC แบบเต็มหารด้วยช่วงแรงดันเอาท์พุทเซ็นเซอร์ที่คุณสนใจ


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

ทำไมคุณต้องใช้ DAC คุณเพิ่งสร้าง DC ออฟเซ็ตด้วยเหรอ? ดูเหมือนว่าค่อนข้างมากเกินไป
endolith

ใช่. DAC ได้ถูกกำหนดล่วงหน้าโดยมีข้อสมมติฐานว่าต้องเปลี่ยน DC offset ในช่วงกว้าง หากคุณมีระบบที่มีการกระจายแรงดันไฟฟ้าในช่วงแคบ ๆ เท่านั้น (สมมติว่าคุณได้ทำการวิเคราะห์ความคลาดเคลื่อนที่ถูกต้องแล้ว) ตัวแบ่งตัวต้านทานและการอ้างอิงอาจเพียงพอที่จะสร้างแรงดันออฟเซ็ต หรือเพื่อเพิ่มความซับซ้อนเล็กน้อยตัวต้านทานเครือข่าย + มัลติเพล็กเซอร์ (ซึ่งก็คือ DAC บางตัว) DAC ไม่ใช่อุปกรณ์ที่ซับซ้อนหรือมีราคาแพงหากคุณไม่ต้องการความละเอียดความเร็วสูงพิเศษหรือละเอียดมาก
46499 Jason S

3

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


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

2

คุณต้องการสองสิ่ง: เพื่อใช้อินพุตที่ต่างกันเพื่อเปรียบเทียบกับมาตรฐาน 1.9v (หรือใกล้กับมัน) และแอมพลิฟายเออร์เพื่อเพิ่มความละเอียดของความแตกต่างนั้น

เพื่อผลลัพธ์ที่ดีที่สุดคุณควรใช้แอมป์เครื่องมือคุณภาพสูงภายนอกหรือแอมป์สหกรณ์ แต่คุณสามารถลองใช้สิ่งอำนวยความสะดวกที่มีอยู่ในไมโครคอนโทรลเลอร์ ทั้ง Arduino Megaega (ATMega2560 chip) และ Arduino Leonardo นั้นมีตัวเลือกสำหรับดิฟเฟอเรนเชียล, ขยายอินพุตไปยัง ADC บนชิป (Uno ไม่มีสิ่งนี้) ATMega2560 สามารถทำหลายช่องทาง (มัลติเพล็กซ์) ของ ADC ส่วนขยายที่แตกต่างกันสำหรับเซ็นเซอร์หลายตัว - อ่านแผ่นข้อมูลเพื่อดูว่ามีพินใดบ้างที่เป็นไปได้ มันมีตัวเลือกขยาย 200x ซึ่งจะทำให้ความละเอียด 1024 ขั้นตอนเต็มใน 25 mv คุณต้องวางตำแหน่งหน้าต่าง 25 mV ที่คุณต้องการ!

นั่นอาจเป็นหรือไม่มีเสียงรบกวนอย่างเพียงพอสำหรับจุดประสงค์ของคุณ - มันไม่ได้คุณภาพสูงเท่าที่คุณสามารถสร้างจากภายนอกได้มากกว่า $ $$

ส่วนที่ยากขึ้นอาจได้รับการอ้างอิง 1.9v ที่มั่นคงและแม่นยำเพื่อเปรียบเทียบกับ


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