ลดความซับซ้อนของเครื่องมือเปรียบเทียบหน้าต่างจำนวนมาก


10

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

ทางออกที่ดีที่สุดของฉันในปัจจุบันคือการใช้ไอซีตัวเปรียบเทียบและใช้ตัวเปรียบเทียบแบบแยกหน้าต่างสำหรับเทอร์มิสเตอร์แต่ละตัว ในการปรับแก้ปัญหาให้เหมาะสมฉันสามารถใช้ตัวเปรียบเทียบแบบ Quad จำนวนหนึ่งซึ่งแต่ละตัวมีเอาต์พุตแบบ open-drain เพื่อให้ฉันสามารถเชื่อมต่อได้ทั้งหมด อย่างไรก็ตามในสาระสำคัญมันเป็นวงจรเดียวกัน แรงดันไฟฟ้าอ้างอิง / ทริกเกอร์ที่ฉันสามารถสร้างได้หนึ่งครั้งบัฟเฟอร์แล้วจ่ายให้กับเครื่องมือเปรียบเทียบทั้งหมด

ฉันรู้สึกโง่เพียงแค่โยนเครือข่ายเปรียบเทียบปัญหา ฉันไม่แน่ใจว่าไม่มีวิธีที่ดีกว่านี้หรือไม่ฉันพยายามปรับพื้นที่ของบอร์ดให้เหมาะสม คุณมีความคิดสร้างสรรค์บ้างไหม? ตัวอย่างเช่นเลือกแรงดันไฟฟ้าต่ำสุด / สูงสุดของเทอร์มิสเตอร์ทั้งหมดและใช้ตัวเปรียบเทียบแบบหน้าต่างเดียว (EDIT: two comparators ofc) ซึ่ง IMHO จะนำไปสู่การแก้ปัญหาที่ใหญ่กว่าและไม่ใช่คำตอบที่ดีฉันแค่พูดถึงแรงบันดาลใจ

แก้ไข: ฉันรู้ว่าโซลูชันที่ใช้ซอฟต์แวร์จะดีที่สุด นั่นคือเหตุผลที่ฉันพูดถึงถูกต้องตั้งแต่เริ่มต้นและล่วงหน้าเพื่อป้องกันไม่ให้ทุกคนแนะนำมัน เหตุผลที่มีการกำหนดปัญหาด้วยวิธีนี้เป็นเพราะนี่คือวงจรความปลอดภัยและข้อมูลจำเพาะต้องการให้ฉันใช้วิธีการแก้ปัญหาเฉพาะฮาร์ดแวร์เพิ่มเติมจากซอฟต์แวร์ตรวจสอบ ดังนั้นโซลูชันซอฟต์แวร์ที่มีอยู่แล้วฉัน "เพียงแค่" จำเป็นต้องค้นหาวิธีที่ดีที่สุดในการใช้ฮาร์ดแวร์ที่ใช้


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

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

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

1
มาตรฐานนี้ต้องการระบบอิสระสองระบบโดยที่หนึ่งในนั้นเป็นฮาร์ดแวร์เท่านั้น ฉันได้เห็นรายละเอียดสำหรับระบบที่ดำเนินการโดยอิสระ แต่ความซ้ำซ้อนให้ความน่าเชื่อถือที่จำเป็น คุณสามารถติดตั้งระบบตรวจสอบขนาดเล็กสองระบบสำหรับพื้นที่ของฮาร์ดแวร์เดียวเท่านั้นตัวอย่างเช่น
Olin Lathrop

2
FPGA ถือเป็นซอฟต์แวร์หรือไม่
Eric Johnson เมื่อ

คำตอบ:


11

เครื่องมือเปรียบเทียบหน้าต่างหนึ่งตัวนับบิต 3 บิตและอะนาล็อก mux 8: 1 เพื่อเชื่อมต่อเทอร์มิสเตอร์หนึ่งตัวกับตัวเปรียบเทียบ

หากสิ่งที่คุณจำเป็นต้องรู้คือพวกเขาทั้งหมดดี; นั่นคือ 3 ชิปทำงานเสร็จแล้ว (74HC163, 74HC4051, ตัวเปรียบเทียบและบางอย่างเช่น 555 เพื่อตอกบัตร)

ดังที่แอนดี้กล่าวว่า MUX (เช่น 74HC4051) มีความต้านทานค่อนข้างต่ำดังนั้นเทอร์มิสเตอร์แต่ละตัวจะเชื่อมต่อกับอินพุตอะนาล็อกหนึ่งตัวและตัวต้านทานแบบโลนในอีกด้านหนึ่งจะให้ตัวแบ่งแรงดัน ถ้าเทอร์มิสเตอร์ทั้งหมดเชื่อมต่อกับ GND แล้วตัวต้านทานจะไปที่ 5V

แผนผัง

จำลองวงจรนี้ - แผนผังที่สร้างโดยใช้CircuitLab

หากคุณต้องการบันทึก / แสดงสิ่งที่ไม่ตรงตามข้อกำหนดคุณจะเริ่มเพิ่มวงจรเช่นตัวถอดรหัส 3-8 บรรทัด (อีกหนึ่ง IC, 74HC138) เพื่อขับแปด LEDs; ฝ่ายผิดจะเปลี่ยนเป็นกระพริบ

หากคุณต้องการมากกว่านั้นให้ไปที่ MCU และซอฟต์แวร์


แหล่งที่มาของการกระตุ้น (ตัวต้านทาน) อาจอยู่ที่ด้าน "1" ของ MUX (ต่ำ ohm MUX) แต่อย่างอื่น +1 สำหรับการตีฉัน
แอนดี้อาคา

@Andyaka นั่นเป็นเหตุผลที่ฉันไม่ได้ยุ่งกับวงจร! นอกจากนี้ฉันไม่พบ 74 (HCT) 4051, 74x163, 74x138 ในเครื่องมือแก้ไขออนไลน์ ... ฉันจะกรอกรายละเอียดนั้น แต่ถ้าคุณต้องการเติมให้มากกว่านี้มันจะคุ้มค่ากับการโหวตหรือสองคะแนน
Brian Drummond

คุณกำลังม้วนไบรอันฉันจะทิ้งมันไว้กับคุณ
แอนดี้อาคา

1
โอเคความคิดที่น่าสนใจ มีปัญหาเล็กน้อยที่เอาต์พุตเนื่องจากหากเทอร์มิสเตอร์เดียวอยู่นอกขอบเขตตัวอย่างเช่นเอาต์พุตจะบอกฉันได้อย่างแท้จริงในเวลา 1/8-th ของเวลา อาจไม่ได้เป็นเรื่องใหญ่เท่าที่ฉันสามารถดึงออกจาก win.comp ไปยัง shift register ด้วยเอาต์พุตแบบ open-drain ฉันต้องการนาฬิกามัน แต่สิ่งเดียวกันกับที่กระตุ้นมัลติเพล็กเซอร์อาจทำเช่นกัน ความคิดที่คุ้มค่าแน่นอนต่อไปนี้ขอให้ฉันพยายามทำแผนผังให้สมบูรณ์ยิ่งขึ้นและฉันจะกลับไปหาคุณที่นี่
ultimA

ถ้าคุณดูที่ 4 เฮิร์ตซ์และค่าคงที่ของระบบระบายความร้อนของคุณคือ> 2 วินาทีนั่นคือ (a) OK และ (b) ให้อัตราการกะพริบที่ค่อนข้างโดดเด่น คุณรู้คุณลักษณะของระบบฉันเดาได้เท่านั้น
Brian Drummond

13

ฉันคิดว่าคำตอบที่ไม่ใช่ SW ของไบรอันนั้นดีที่สุด แต่นี่เป็นวิธีการแก้ปัญหาแบบอะนาล็อกล้วนๆ ใช้วงจรที่เลือกแรงดันไฟฟ้าเข้าสูงสุด (จากหลาย ๆ ) และนำไปที่เอาต์พุต ทำเช่นเดียวกันกับวงจรสำหรับแรงดันไฟฟ้าต่ำสุด

พิจารณาตัวปรับความแม่นยำ: -

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

มันสร้างแรงดันเอาต์พุตที่ตามแรงดันอินพุตตลอดช่วงบวก พิจารณาสิ่งที่เกิดขึ้นเมื่อคุณมีสองอินพุตดังนี้: -

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

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

ฉันไม่ใช่ 100% แต่ฉันคิดว่าคุณสามารถนำ op-amps กลับมาใช้ใหม่สำหรับแรงดันไฟฟ้าต่ำสุด บางทีฉันอาจผิด

จากนั้นใช้ตัวเปรียบเทียบทั้งสองบรรทัดเพื่อพิจารณาว่าหนึ่งในแปดอาจอยู่นอกระยะ


เมื่อไม่นานมานี้เรามีคำถามเดียวกันและฉันคิดว่าวิธีแก้ปัญหานี้เป็นอัญมณีที่ซ่อนเร้น
Janka

@Janka บางทีคุณสามารถค้นหาและเชื่อมโยงมันได้หรือไม่ ฉันอยากเห็นมัน
แอนดี้อาคา

+1 ฉันชอบสิ่งนี้ อาจเป็น 4 LM324s + แบบมีสายหรือ LM393 และคุณเสร็จแล้ว เขาสามารถกรอง * & * $$ ออกจากมันเพื่อป้องกันทริกเกอร์ที่ผิดพลาด
Spehro Pefhany

ฉันรู้สึกว่ามันไม่เกินเดือนที่แล้วและมีความสำคัญในคำแต่ฉันคิดว่าฉันผิด: ฉันไม่สามารถหาได้
Janka

Hi! ขอบคุณสำหรับคำตอบ. ฉันคิดว่านี่จะเพิ่มต้นทุนในทุกด้าน การสร้างเครื่องมือเปรียบเทียบหน้าต่างอย่างไร้เดียงสา 8 ประการในคำถามต้นฉบับนั้นต้องการเครื่องมือเปรียบเทียบ 16 เครื่อง โซลูชันที่นำเสนอนี้ต้องการ 16 เพียงสำหรับการสร้างขั้นต่ำ + สูงสุดแล้วเพิ่มอีก 4 สำหรับการเปรียบเทียบที่เกิดขึ้นจริงบวกกับอาร์เรย์ของไดโอด Ofc ความแตกต่างในจำนวนของไอซีที่เกิดขึ้นจริงมีขนาดเล็กลงเนื่องจาก quad opamps แต่ก็ยังไม่ชนะ
ultimA

3

คำแนะนำในการปรับปรุงวิธีแก้ปัญหามัลติเพล็กซ์สำหรับใช้เป็นวงจรความปลอดภัย: มีอินพุตมัลติเพล็กเซอร์ตัวใดตัวหนึ่งเป็นค่าที่ตั้งไว้ล่วงหน้าสำหรับอินพุตที่รู้จักนอกหน้าต่างเซฟ (หรือแม้กระทั่งสองอินพุต ตรวจสอบว่ามีการตอบสนอง "นอกหน้าต่าง" จากตัวเปรียบเทียบเมื่อเลือกอินพุทที่เกี่ยวข้องบนมัลติเพล็กเซอร์

ดีที่สุดขับมัลติเพล็กเซอร์ที่มีตัวนับ (ซิงโครนัสดีที่สุด) ที่มีความละเอียดมากกว่าที่คุณต้องการ (และได้รับการตอกบัตรสองครั้งอย่างรวดเร็ว): ตัวนับบิตที่สำคัญอย่างน้อยทำให้สัญญาณทริกเกอร์ที่ยอดเยี่ยมเพื่อให้คุณโหลดสถานะของตัวเปรียบเทียบ ขอบทริกเกอร์ D flipflop หลังจากมีเวลาเหลือเฟือในการชำระ - และสัญญาณทริกเกอร์นี้ยังสามารถรั้วรอบขอบชิดได้อย่างปลอดภัยโดยตรรกะขึ้นอยู่กับสถานะเคาน์เตอร์เพื่อพลิก D D ต่าง ๆ (เช่นหนึ่งสำหรับแต่ละเทอร์มิสเตอร์หรือหนึ่งสำหรับเทอร์มิสเตอร์ - ช่องทดสอบที่ฉันแนะนำด้านบน)

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


3

นี่คือ6 x หน้าต่างเปรียบเทียบ ICและนี่คือการเปรียบเทียบหน้าต่าง Quad IC
ไม่มี 8, อนิจจา

คุณสามารถตอบสนองความต้องการด้วย 4 x เจ้า olde LM339 quad ท่อระบายน้ำเปิดเปรียบเทียบ
สิ่งเหล่านี้สามารถมีได้ใน
1.7 มม. x 1.7 มม. (3 มม. x 3 มม. รวมแผ่นอิเล็กโทรด) QFN
หรือ TSSOP 6.4 x 5 มม

เอกสารข้อมูลที่นี่

คุณต้องการแรงดันอ้างอิงหน้าต่างด้านบนและด้านล่าง (3 ตัวต้านทาน) และดึงออกเอาต์พุตเดียว


สวัสดี. ใช่ฉันยังกล่าวถึงในคำถามเดิมว่าเป็นไปได้ที่จะใช้อาร์เรย์ซึ่งจะช่วยลดจำนวน IC อย่างไม่ต้องสงสัย ฉันเดาว่าคำถามมีมากขึ้นถ้าเป็นไปได้ที่จะลดจำนวนองค์ประกอบโดยใช้สถาปัตยกรรมที่แตกต่างจากการใช้อุปกรณ์การรวมที่สูงขึ้น ฉันยอมรับคำตอบของไบรอันเพราะใช้ส่วนประกอบทางกายภาพเพียง 5-6 ชิ้นคุณสามารถสร้างวงจรสำหรับเทอร์มิสเตอร์ 16 หรือ 32 ตัวด้วยโซลูชันนั้น อาจไม่ใช่สำหรับ NTC ที่มีจำนวนน้อยเช่น <8 แต่มีอะไรมากกว่านั้นและโซลูชันนั้นเป็นผู้ชนะที่ชัดเจน อย่างไรก็ตามขอขอบคุณ (สำหรับความคิดเห็นของคุณก่อนหน้านี้)
ultimA

2

ทำไมจึงซับซ้อน

U2 + จะเป็น max (อินพุต) - diode drop

U1- จะเป็น min (อินพุต) + diode drop

R3,4,5 กำหนดเกณฑ์ ถ้าต่ำเกินไปสำหรับอินพุตใด ๆ U1- ต่ำกว่าขีด จำกัด บน U1 +, U1out จะสูง หากสูงเกินไปสำหรับอินพุตใด ๆ U2 + จะสูงกว่าขีด จำกัด U2out สูงขึ้น

ไม่แน่ใจว่าสิ่งที่คุณต้องการทำจริงเมื่อเกิดเงื่อนไขอย่างใดอย่างหนึ่ง แต่ไดรฟ์ทรานซิสเตอร์ / FET / SCR มาถึงใจ


1

คุณสามารถซื้อไอซีตัวเปรียบเทียบหน้าต่างเพื่อประหยัดพื้นที่ของบอร์ด ตัวอย่างเช่นTPS3700 , LTC1042 , LMV7231 (ฐานสิบหก) หรือMAX969 (รูปสี่เหลี่ยม)


-2
ฉันส่วนใหญ่พยายามเพิ่มประสิทธิภาพพื้นที่บอร์ด
ฉันรู้สึกโง่เพียงแค่โยนเครือข่ายเปรียบเทียบปัญหา

ทางออกที่ชัดเจนคือการใช้ไมโครคอนโทรลเลอร์ที่มีอย่างน้อย 8 A / D อินพุต ส่วนที่เหลือเป็นเฟิร์มแวร์

แม้แต่ไมโครช้าก็สามารถติดตามเทอร์มิสเตอร์ 8 ตัวได้ คุณสามารถสร้างระบบที่ตอบสนองได้ภายในเสี้ยววินาที นั่นควรจะเร็วกว่าเวลาตอบสนองของเทอร์มิสเตอร์มากเท่าที่ควร

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


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

6
การสร้างเคสเพื่อความปลอดภัยสำหรับระบบซอฟต์แวร์ (ตามคำถามที่แก้ไขอาจมีความจำเป็น) อาจมีราคาแพงกว่าการสร้างระบบฮาร์ดแวร์อิสระอย่างมากมาย
Brian Drummond

3
สิ่งที่คุณพูดจะไม่เปลี่ยนความจริงที่ว่าคำตอบของคุณไม่ถูกต้องหยาบคายและไม่ช่วยเหลือ
MCG

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