ข้ามไปยังเนื้อหา

วงจรแบ่งแรงดันและเซนเซอร์แบบอนาล็อก

เมื่อจบบทเรียนนี้ คุณจะ

  1. คำนวณแรงดันขาออกของวงจรแบ่งแรงดันจากค่าตัวต้านทานสองตัว
  2. แปลงค่าที่ ADC อ่านได้เป็นแรงดันจากความละเอียดและแรงดันอ้างอิง แล้วเทียบกับมัลติมิเตอร์
  3. อธิบายผลของความต้านทานขาเข้าของ ADC (และของมิเตอร์) ต่อความแม่นยำของวงจรแบ่งแรงดัน
  • ผ่านบทเรียน แรงดัน กระแส และความต้านทาน มาแล้ว ใช้กฎของโอห์มและวงจรอนุกรมได้
  • สำหรับแล็บ: เบรดบอร์ด สายจัมเปอร์ ตัวต้านทาน 10 kΩ, 12 kΩ และ 1 MΩ สองตัว มัลติมิเตอร์ และบอร์ด
  • ส่วนที่อ่านลูกบิดด้วย ADC ใช้ตัวอย่าง QWA309 ของ Developer Hub ซึ่งรันได้บน TESAIoT Dev Kit เท่านั้น ถ้าใช้ Eva Kit ดูหมายเหตุในแล็บ

ถ้ามี TESAIoT Dev Kit เปิดตัวอย่าง QWA309 Potentiometer Monitor บน Developer Hub แล้ว flash ลงบอร์ด จอจะแสดงการ์ดสี่ใบของลูกบิด (potentiometer) สี่ตัว แต่ละใบมีค่าดิบ (raw) แรงดัน และเปอร์เซ็นต์ ลองหมุนลูกบิดตัวหนึ่งจนสุดทั้งสองทาง แล้วสังเกตสองอย่าง

  • ค่าดิบวิ่งตั้งแต่ราว 0 ถึงราว 4095 ทำไมต้องเป็นเลขนี้
  • แรงดันสูงสุดที่จอแสดงคือราว 1.8 V ไม่ใช่ 3.3 V ทำไม

ตาม README ของตัวอย่างนี้ ลูกบิดทั้งสี่ตัวต่อกับขา P15.4 ถึง P15.7 และอ่านด้วย SAR ADC ขนาด 12 บิต แรงดันอ้างอิง 1.8 V เมื่อจบบทนี้ คุณจะอธิบายตัวเลขทุกตัวบนจอนั้นได้ด้วยตัวเอง

ตัวต้านทานสองตัวต่ออนุกรมคร่อมแหล่งจ่าย จุดกึ่งกลางจะได้แรงดันเป็นสัดส่วนของแรงดันแหล่งจ่าย เรียกว่า วงจรแบ่งแรงดัน (voltage divider)

V_in R1 (top) ADC pin V_out R2 (bottom) V_out = V_in × R2 / (R1 + R2) 1.8 V wiper pot
ซ้าย: วงจรแบ่งแรงดันสองตัวต้านทาน ขวา: โพเทนชิโอมิเตอร์คือวงจรแบ่งแรงดันที่ขากลาง (wiper) เลื่อนได้

กระแสที่ไหลผ่าน R1 และ R2 เท่ากัน (อนุกรม) คือ I = V_in / (R1 + R2) แรงดันคร่อม R2 จึงเป็น I × R2

V_out = V_in × R2 / (R1 + R2)

ตัวอย่าง 3.3 V, R1 = 10 kΩ (ตัวบน), R2 = 4.7 kΩ (ตัวล่าง)

V_out = 3.3 × 4.7 / (10 + 4.7) = 3.3 × 0.3197 = 1.055 V

ออกแบบย้อนกลับ อยากได้ 1.8 V จาก 3.3 V สัดส่วนที่ต้องการคือ 1.8 / 3.3 = 0.545 ถ้าเลือก R1 = 10 kΩ แล้ว R2 = 12 kΩ จะได้ 3.3 × 12 / 22 = 1.800 V พอดี คู่ 10 kΩ กับ 12 kΩ นี้เราจะต่อจริงในแล็บ

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

เซนเซอร์อนาล็อกหลายชนิดก็ใช้หลักเดียวกัน เช่น เทอร์มิสเตอร์ (ความต้านทานเปลี่ยนตามอุณหภูมิ) หรือ LDR (ความต้านทานเปลี่ยนตามแสง) ใส่มันแทน R1 หรือ R2 แล้วแรงดันที่จุดกลางก็เปลี่ยนตามปริมาณที่เราอยากวัด

2. ADC: จากแรงดันเป็นตัวเลข และจากตัวเลขกลับเป็นแรงดัน

หัวข้อที่มีชื่อว่า “2. ADC: จากแรงดันเป็นตัวเลข และจากตัวเลขกลับเป็นแรงดัน”

ADC (analog-to-digital converter) แบบ N บิตแบ่งช่วง 0 ถึงแรงดันอ้างอิง (V_ref) ออกเป็น 2^N ขั้น ได้ตัวเลข 0 ถึง 2^N − 1

  • ADC 12 บิต มี 2^12 = 4096 ขั้น ค่าดิบจึงอยู่ในช่วง 0 ถึง 4095
  • ขนาดของหนึ่งขั้น (1 LSB) = V_ref / 2^N

ตัวอย่าง ADC 12 บิต V_ref = 1.8 V (แบบที่ใช้อ่านลูกบิดบน TESAIoT Dev Kit)

1 LSB = 1.8 V / 4096 = 0.000439 V ≈ 0.44 mV

แปลงค่าดิบกลับเป็นแรงดัน

V = raw × V_ref / 2^N
raw 2048 → 2048 × 1.8 / 4096 = 0.900 V (ครึ่งหนึ่งของช่วงพอดี)
raw 3000 → 3000 × 1.8 / 4096 = 1.318 V

โค้ดบางชิ้นหารด้วย 4095 แทน 4096 ตัวอย่าง Pot Monitor ก็ใช้ POT_ADC_FULL_SCALE = 4095 และคำนวณเป็นเลขจำนวนเต็มหน่วย mV raw 3000 จึงได้ 3000 × 1800 / 4095 = 1318 mV (ปัดทิ้งเศษ) สองแบบนี้ต่างกันไม่ถึงหนึ่ง LSB ซึ่งน้อยกว่าความคลาดเคลื่อนของตัวต้านทานในวงจรมาก สิ่งสำคัญคือรู้ว่าโค้ดที่คุณใช้เลือกแบบไหน

เปอร์เซ็นต์ไม่ต้องใช้แรงดันอ้างอิง เปอร์เซ็นต์ = 100 × raw / ค่าเต็มสเกล เป็นอัตราส่วนล้วน ๆ ส่วนแรงดันขึ้นกับ V_ref โดยตรง ถ้า V_ref จริงต่างจากที่โค้ดสมมุติ แรงดันที่คำนวณจะผิดตามสัดส่วนนั้น ในขณะที่เปอร์เซ็นต์ยังถูก SDK ของ TESAIoT Dev Kit เขียนเตือนเรื่องนี้ไว้ในตัวอย่างอ่านลูกบิดของ CM33 ว่าฟังก์ชันแปลงเป็นโวลต์ “คูณด้วย 3.3 V ที่เขียนตายตัว” ไม่ได้วัด V_ref จริง นี่คือเหตุผลที่เราต้องเทียบกับมัลติมิเตอร์อย่างน้อยหนึ่งครั้ง

สูตรในหัวข้อ 1 ใช้ได้เมื่อไม่มีอะไรดึงกระแสออกจากจุด V_out แต่ของจริงมีเสมอ ทั้งขา ADC และมัลติมิเตอร์เอง มองจากขา V_out วงจรแบ่งแรงดันเหมือนแหล่งจ่าย V_th ที่มีความต้านทานภายใน R_th = R1 ∥ R2 (วงจรสมมูลเทวินิน)

V_th R_th = R1 ∥ R2 V_out R_load (ADC, meter)
มองจากขา V_out วงจรแบ่งแรงดันเหมือนแหล่งจ่าย V_th ที่มีความต้านทานภายใน R1 ∥ R2 โหลดที่ต่อเข้าไปจึงแบ่งแรงดันอีกชั้นหนึ่ง

โหลดที่ต่อเข้ามาแบ่งแรงดันอีกชั้นหนึ่ง

V_out = V_th × R_load / (R_load + R_th)

ตัวอย่าง 3.3 V แบ่งด้วย 100 kΩ สองตัว ไม่มีโหลดได้ 1.65 V และ R_th = 100 kΩ ∥ 100 kΩ = 50 kΩ

โหลด V_out คลาดจาก 1.65 V
1 MΩ 1.65 × 1 M / 1.05 M = 1.571 V −4.8%
10 MΩ (มัลติมิเตอร์ทั่วไป) 1.65 × 10 M / 10.05 M = 1.642 V −0.5%

กฎหยาบที่จำง่าย: ให้ความต้านทานของโหลดมากกว่า R_th อย่างน้อยราว 100 เท่า ความคลาดจะต่ำกว่าราว 1%

ADC แบบ SAR มีอีกเรื่องหนึ่ง ขณะสุ่มตัวอย่าง ADC ต่อ ตัวเก็บประจุสำหรับสุ่ม (sampling capacitor) เข้ากับขา แล้วตัวเก็บประจุนั้นต้องประจุผ่าน R_th ให้ทันก่อนแปลงค่า สมมุติตัวเก็บประจุภายในเป็น 5 pF (ค่าสมมุติเพื่อคำนวณ ค่าจริงต้องดูในเอกสารข้อมูลของชิป) และ R_th = 50 kΩ

τ = R × C = 50 kΩ × 5 pF = 250 ns
ให้นิ่งภายในครึ่ง LSB ของ 12 บิต ต้องรอราว ln(2^13) ≈ 9 τ ≈ 2.25 µs

ถ้าเวลาสุ่มของ ADC สั้นกว่านี้ ค่าที่อ่านได้จะต่ำกว่าความจริงเล็กน้อย และเปลี่ยนไปตามค่าที่อ่านก่อนหน้า ทางแก้มีสามทาง ลดค่าตัวต้านทาน (แลกกับกระแสที่สิ้นเปลือง เช่น 10 kΩ สองตัวที่ 3.3 V กินกระแสตลอดเวลา 165 µA) ตั้งเวลาสุ่มให้ยาวขึ้น หรือใส่ตัวเก็บประจุขนาดเล็กที่ขา ADC เป็นแหล่งประจุสำรอง และถ้าต้องการความแม่นยำสูง ใช้ op-amp แบบ voltage follower คั่น

โจทย์ เซนเซอร์ตัวหนึ่งให้แรงดัน 0 ถึง 5 V เราอยากอ่านด้วย ADC 12 บิตที่รับได้ 0 ถึง 1.8 V (V_ref = 1.8 V) ออกแบบวงจรแบ่งแรงดัน แล้วแปลงค่าที่อ่านได้กลับเป็นแรงดันของเซนเซอร์

ขั้นที่ 1 เลือกสัดส่วน 5 V ต้องลงมาต่ำกว่า 1.8 V และควรเผื่อไว้บ้าง เลือกสัดส่วน 1/3 ด้วย R1 = 20 kΩ, R2 = 10 kΩ

V_adc สูงสุด = 5 × 10 / (20 + 10) = 1.667 V ต่ำกว่า 1.8 V และเหลือที่ว่างราว 7%

ขั้นที่ 2 ตรวจผลข้างเคียง

กระแสที่วงจรกินจากเซนเซอร์ที่ 5 V = 5 V / 30 kΩ = 0.167 mA
R_th = 20 kΩ ∥ 10 kΩ = 6.67 kΩ โหลด 10 MΩ ทำให้คลาดเพียง 6.67 k / 10 M ≈ 0.07%
ความละเอียดฝั่งเซนเซอร์ = 0.44 mV × 3 = 1.32 mV ต่อหนึ่งขั้น

ถ้าเซนเซอร์จ่ายกระแสได้น้อยมาก 0.167 mA อาจมากเกินไป ต้องเช็กเอกสารของเซนเซอร์ นี่คือการแลกกันระหว่างกระแสกับความแม่นยำ

ขั้นที่ 3 แปลงค่ากลับ อ่านได้ raw = 3500

V_adc = 3500 × 1.8 / 4096 = 1.538 V
V_sensor = V_adc × (R1 + R2) / R2 = 1.538 × 3 = 4.614 V

ขั้นที่ 4 เทียบกับมิเตอร์ วัดแรงดันขาออกของเซนเซอร์ด้วยมัลติมิเตอร์ ถ้าต่างจาก 4.614 V เกินราว 1% ให้สงสัยสามอย่างตามลำดับ ค่าจริงของตัวต้านทาน (วัดด้วยโหมด Ω ตอนปิดไฟ) ค่า V_ref จริง และเวลาสุ่มของ ADC

  1. แหล่งจ่าย 3.3 V, R1 = 4.7 kΩ (ตัวบน), R2 = 10 kΩ (ตัวล่าง) V_out เป็นเท่าไร
  2. อยากได้ 1.2 V จาก 3.3 V โดยใช้ R2 = 10 kΩ เป็นตัวล่าง R1 ต้องเป็นเท่าไร ถ้าต้องใช้ค่ามาตรฐาน E24 ที่ใกล้ที่สุด จะได้แรงดันเท่าไร
  3. ADC 12 บิต V_ref = 1.8 V (ก) raw 1024 คือกี่โวลต์ (ข) raw สูงสุด 4095 คือกี่โวลต์ ทำไมไม่ถึง 1.8 V พอดี
  4. ADC 10 บิต V_ref = 3.3 V หนึ่ง LSB กี่ mV และแรงดัน 1.0 V จะได้ raw ประมาณเท่าไร
  5. วงจรแบ่งแรงดัน 1 MΩ สองตัวจาก 3.3 V วัดด้วยมิเตอร์ที่มีความต้านทานขาเข้า 10 MΩ จะอ่านได้เท่าไร เทียบกับตัวอย่าง 100 kΩ สองตัวกับโหลด 1 MΩ ในหัวข้อ 3 แล้วสังเกตอะไร
  6. ADC 12 บิตอ่านได้ raw 2867 โดยโค้ดใช้ค่าเต็มสเกล 4095 คิดเป็นกี่เปอร์เซ็นต์
  1. V_out = 3.3 × 10 / 14.7 = 2.245 V ≈ 2.24 V
  2. R1 = R2 × (V_in / V_out − 1) = 10 kΩ × (3.3 / 1.2 − 1) = 10 kΩ × 1.75 = 17.5 kΩ ค่า E24 ที่ใกล้ที่สุดคือ 18 kΩ ได้ 3.3 × 10 / 28 = 1.179 V
  3. (ก) 1024 × 1.8 / 4096 = 0.450 V (ข) 4095 × 1.8 / 4096 = 1.7996 V ค่าสูงสุดต่ำกว่า V_ref หนึ่ง LSB (0.44 mV) เพราะตัวเลขเริ่มนับจาก 0
  4. 1 LSB = 3.3 V / 1024 = 3.22 mV และ 1.0 V × 1024 / 3.3 = 310.3 จึงได้ raw ราว 310
  5. R_th = 500 kΩ ได้ 1.65 × 10 M / 10.5 M = 1.571 V เท่ากับตัวอย่างในหัวข้อ 3 พอดี เพราะอัตราส่วน R_load / R_th เป็น 20 เท่าเหมือนกัน ความคลาดขึ้นกับอัตราส่วนนี้ ไม่ใช่ค่าสัมบูรณ์
  6. 100 × 2867 / 4095 = 70.0%

ตอบคำถามใน quiz.yaml ให้ถูกอย่างน้อย 4 ใน 5 ข้อ ข้อ 4 และ 5 วัดเรื่องโหลด ถ้าผิดให้กลับไปอ่านหัวข้อ 3 อีกครั้ง

ส่วน A: วงจรแบ่งแรงดันบนเบรดบอร์ด (ทุกบอร์ด)

  1. ถอด USB ต่อ R1 = 10 kΩ จาก 3V3 ไปจุด M และ R2 = 12 kΩ จากจุด M ลง GND
  2. ทาย เขียนแรงดันที่จุด M ที่คาดไว้ (1.80 V ถ้า 3V3 เท่ากับ 3.30 V พอดี)
  3. เสียบ USB วัดแรงดันจริงของ 3V3 และแรงดันที่จุด M คำนวณใหม่ด้วยแรงดัน 3V3 ที่วัดได้ แล้วเทียบ
  4. ถอด USB เปลี่ยนตัวต้านทานเป็น 1 MΩ ทั้งสองตัว ทายก่อนว่าจะวัดได้เท่าไร แล้วเสียบ USB วัดจุด M
  5. สืบสวน ค่าที่วัดได้ในข้อ 4 น่าจะต่ำกว่าครึ่งหนึ่งของ 3V3 อย่างเห็นได้ชัด ใช้สูตรในหัวข้อ 3 คำนวณย้อนหาความต้านทานขาเข้าของมิเตอร์คุณ
R_meter = R_th × V_วัดได้ / (V_th − V_วัดได้) โดย V_th = 3V3 / 2 และ R_th = 500 kΩ
ตัวอย่าง: วัดได้ 1.571 V จาก V_th 1.650 V → R_meter = 500 k × 1.571 / 0.079 ≈ 9.9 MΩ

ตัวต้านทาน ±5% ทำให้ผลคลาดได้อีกหลายเปอร์เซ็นต์ จึงควรวัดค่าจริงของ 1 MΩ ทั้งสองตัวก่อน (ตอนยังไม่ต่อวงจร และไม่จับขาด้วยนิ้ว) แล้วใช้ V_th = 3V3 × R2 / (R1 + R2) กับ R_th = R1 ∥ R2 จากค่าที่วัดได้ เทียบผลกับค่าในคู่มือของมิเตอร์ (ส่วนใหญ่ประมาณ 10 MΩ ในโหมดแรงดันไฟตรง) ถ้าใกล้เคียงกัน แปลว่าคุณเพิ่งวัด “เครื่องมือวัด” ด้วยตัวมันเอง

ส่วน B: อ่านลูกบิดด้วย ADC (TESAIoT Dev Kit)

  1. รันตัวอย่าง QWA309 Potentiometer Monitor หมุนลูกบิดตัวหนึ่งไปสี่ตำแหน่ง ราว 1/4, 1/2, 3/4 และสุด
  2. แต่ละตำแหน่ง จดค่า raw และค่า mV ที่จอแสดง แล้วคำนวณเองด้วย raw × 1800 / 4095 ตัวเลขของคุณต้องตรงกับจอ ถ้าไม่ตรง ให้หาว่าโค้ดทำอะไรต่างจากที่คุณคิด
  3. ถ้าคุณเข้าถึงขากลางของลูกบิดได้ (เช่น จากขาด้านใต้บอร์ด) วัดแรงดันขากลางเทียบกับ GND ด้วยมัลติมิเตอร์ แล้วเทียบกับค่าที่ ADC บอก ถ้าเข้าถึงไม่ได้ ข้ามข้อนี้ไป อย่าจิ้มขาชิปบนบอร์ดที่เปิดไฟอยู่
  4. อยากเห็นค่าเปลี่ยนตามเวลาแบบกราฟ ลองตัวอย่าง QWA309 4-Channel ADC Scope ซึ่งอ่านลูกบิดทั้งสี่ตัวทุก 60 ms แล้ววาดเป็นเส้นกราฟ
ตำแหน่ง raw mV บนจอ mV คำนวณเอง มิเตอร์ (ถ้าวัดได้)
ราว 1/4
ราว 1/2
ราว 3/4
สุด

ถ้าใช้ Eva Kit SDK มีตัวอย่าง C ของ CM33 ที่อ่านลูกบิดบน Eva Kit เป็นค่าดิบ 16 บิต (0 ถึง 65535) เปอร์เซ็นต์ และโวลต์ โดยคูณกับ 3.3 V ที่สมมุติไว้ ให้เทียบโวลต์ที่โค้ดรายงานกับมัลติมิเตอร์ แล้วอธิบายส่วนต่างด้วยเรื่อง V_ref ในหัวข้อ 2

บทเรียนถัดไป ชิ้นส่วนพื้นฐาน เราจะใช้กฎของโอห์มกับหลอด LED ดูว่าตัวเก็บประจุกับไดโอดทำหน้าที่อะไร และเลือกทรานซิสเตอร์เมื่อขาของไมโครคอนโทรลเลอร์จ่ายกระแสไม่พอ ถ้าอยากอ่านลูกบิดจากโค้ด C บน TESAIoT Dev Kit ต่อ ดูบทเรียน analog และ ADC ในหลักสูตร TESAIoT Firmware Stack

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

คำถามทบทวน

ลองตอบเองก่อน แล้วค่อยเปิดดูเฉลย

  1. วงจรแบ่งแรงดันจาก 3.3 V ใช้ R1 = 10 kΩ เป็นตัวบน และ R2 = 20 kΩ เป็นตัวล่าง แรงดันขาออกเป็นเท่าไร (เป้าหมายข้อ 1)

    1. 1.1 V
    2. 2.2 V
    3. 1.65 V
    4. 3.3 V
    ดูเฉลย

    คำตอบ: B. 2.2 V

    V_out = 3.3 × 20 / (10 + 20) = 2.2 V แรงดันขาออกคือแรงดันคร่อมตัวล่าง ตัวล่างใหญ่กว่าจึงได้แรงดันมากกว่าครึ่ง ถ้าได้ 1.1 V แปลว่าสลับตัวบนกับตัวล่าง

  2. ADC 12 บิต แรงดันอ้างอิง 1.8 V อ่านได้ค่าดิบ 2048 แรงดันที่ขาประมาณเท่าไร (เป้าหมายข้อ 2)

    1. 0.90 V
    2. 1.65 V
    3. 2.048 V
    4. 0.45 V
    ดูเฉลย

    คำตอบ: A. 0.90 V

    V = 2048 × 1.8 / 4096 = 0.90 V คือครึ่งหนึ่งของช่วง 0 ถึง 1.8 V ค่าดิบเป็นจำนวนขั้น ไม่ใช่ mV

  3. โค้ดแปลงค่าดิบเป็นโวลต์โดยคูณกับ 3.3 V ที่เขียนตายตัว แต่แรงดันอ้างอิงจริงของบอร์ดคือ 3.2 V ข้อใดถูก (เป้าหมายข้อ 2)

    1. ทั้งโวลต์และเปอร์เซ็นต์ผิดเท่ากัน
    2. โวลต์ที่รายงานสูงเกินจริงราว 3% แต่เปอร์เซ็นต์ยังถูก
    3. ทั้งโวลต์และเปอร์เซ็นต์ยังถูก เพราะ ADC ชดเชยเอง
    4. เปอร์เซ็นต์ผิด แต่โวลต์ถูก
    ดูเฉลย

    คำตอบ: B. โวลต์ที่รายงานสูงเกินจริงราว 3% แต่เปอร์เซ็นต์ยังถูก

    เปอร์เซ็นต์คืออัตราส่วนของค่าเต็มสเกล ไม่ต้องใช้แรงดันอ้างอิง ส่วนโวลต์คูณกับ 3.3 แทน 3.2 จึงสูงเกิน 3.3 / 3.2 = 1.031 เท่า วิธีจับความผิดแบบนี้คือเทียบกับมัลติมิเตอร์

  4. วงจรแบ่งแรงดัน 100 kΩ สองตัวจาก 3.3 V ต่อเข้ากับโหลด 1 MΩ แรงดันขาออกประมาณเท่าไร (เป้าหมายข้อ 3)

    1. 1.65 V
    2. 1.57 V
    3. 1.50 V
    4. 0.30 V
    ดูเฉลย

    คำตอบ: B. 1.57 V

    R_th = 50 kΩ ได้ 1.65 × 1 M / (1 M + 50 k) = 1.571 V ต่ำกว่าค่าไม่มีโหลดราว 4.8% เพราะโหลดดึงกระแสออกจากจุดกลาง

  5. ADC อ่านค่าจากวงจรแบ่งแรงดันความต้านทานสูงได้ต่ำกว่าความจริง ข้อใดช่วยแก้ได้ (เลือกได้มากกว่าหนึ่งข้อ) (เป้าหมายข้อ 3)

    1. ลดค่าตัวต้านทานของวงจรแบ่งแรงดันลง
    2. ใส่ op-amp แบบ voltage follower คั่นระหว่างวงจรแบ่งแรงดันกับ ADC
    3. เพิ่มค่าตัวต้านทานทั้งสองตัวเป็นสิบเท่า
    4. ตั้งเวลาสุ่มตัวอย่าง (acquisition time) ของ ADC ให้ยาวขึ้น
    ดูเฉลย

    คำตอบ: A. ลดค่าตัวต้านทานของวงจรแบ่งแรงดันลง · B. ใส่ op-amp แบบ voltage follower คั่นระหว่างวงจรแบ่งแรงดันกับ ADC · D. ตั้งเวลาสุ่มตัวอย่าง (acquisition time) ของ ADC ให้ยาวขึ้น

    ทุกข้อที่ถูกลด R_th ที่ ADC มองเห็น หรือให้เวลาตัวเก็บประจุสำหรับสุ่มประจุนานขึ้น การเพิ่มค่าตัวต้านทานทำให้ R_th สูงขึ้นและอาการหนักขึ้น

อ้างอิงบทเรียนนี้

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

"วงจรแบ่งแรงดันและเซนเซอร์แบบอนาล็อก" จาก TESA Open Knowledge โดยสมาคมสมองกลฝังตัวไทย (Thai Embedded Systems Association: TESA) https://github.com/tesaiot/tesa-qualification-program สัญญาอนุญาต CC BY-NC 4.0

ข้อความอ้างอิงภาษาอังกฤษ: "Voltage dividers and analog sensors" from TESA Open Knowledge by the Thai Embedded Systems Association (TESA), https://github.com/tesaiot/tesa-qualification-program, licensed under CC BY-NC 4.0

ลิงก์บทเรียน: https://tesaiot.github.io/tesa-qualification-program/courses/electronics-and-instruments/m01-circuits/l02-dividers-and-sensors/

วิธีอ้างอิง TESA ฉบับเต็ม

TESA Open Knowledge · © 2026 สมาคมสมองกลฝังตัวไทย (TESA) · CC BY-NC 4.0

เนื้อหาเผยแพร่ภายใต้ CC BY-NC 4.0 นำไปใช้ต่อในงานที่ไม่ใช่เพื่อการค้าได้ โปรดอ้างอิงสมาคมสมองกลฝังตัวไทย (TESA) ทุกครั้ง · วิธีอ้างอิง TESA