วันศุกร์ที่ 26 กันยายน พ.ศ. 2557

การทดลองที่ 4.6 การวัดแรงดันอินพุต-แอนะล็อกและการแสดงค่าโดยใช้ 7-Segment

วัตถุประสงค์ของการทดลอง
1.สามารถออกแบบ และ ต่อวงจรโดยใช้ 7-Segment ร่วมกับบอร์ด Arduino ได้
2.สามารถเขียนโค้ดเพื่อแสดงผลของแรงดันอินพุต-แอนะล็อกที่วัดได้ ทาง 7-Segment

อุปกรณ์ที่ใช้ในการทดลอง

1. แผงต่อวงจร (เบรดบอร์ด)                                                               1 อัน
2. บอร์ด Arduino (ใช้แรงดัน +5V)                                                       1 บอร์ด
3. ตัวต้านทานปรับค่าได้แบบสามขา 10kΩ หรือ 20kΩ                           1 ตัว
4. 7-Segment Display แบบ 2 ตัวเลข (Common-Cathode)                      1 ตัว
5. ทรานซิสเตอร์ NPN (เช่น PN2222A)                                               2 ตัว
6. ตัวต้านทาน 1kΩ                                                                           2 ตัว
7. ตัวต้านทาน 330Ω หรือ 470Ω                                                         8 ตัว
8. สายไฟสําหรับต่อวงจร                                                                   1 ชุด
9. มัลติมิเตอร์                                                                                   1 เครื่อง

ขั้นตอนการทดลอง

1. ออกแบบวงจร วาดผังวงจร และต่อวงจรบนเบรดบอร์ด ร่วมกับบอร์ด Arduino เพื่อวัดแรงดันที่ได้
จากวงจรแบ่งแรงดันที่ใช้ตัวต้านทานปรับค่าได้ (แรงดันอยู่ในช่วง 0V ถึง 5V) เช่น ป้อนเข้าที่ขา A0
ของบอร์ด Arduino แล้วนําค่าไปแสดงผลโดยใช้ 7-Segment Display จํานวน 2 หลัก และ ให้มีทศนิยมเพยงหนึ่งตําแหน่ง เช่น ถ้าวัดแรงดันได้ 2.365V จะแสดงผลเป็น “2.4” ถ้าวัดได้ 2.539V ให้แสดงผลเป็น “2.5” เป็นต้น และให้ใช้ ้แรงดันไฟเลี้ยง VCC=+5V และ Gnd จากบอร์ด Arduino เท่านั้น [ทุกกลุ่มจะต้องวาดวงจรสําหรับการทดลองมาให้แล้วเสร็จ (ให้เตรียมตัวมาก่อนเข้าเรียน

2. เขียนโค้ดสําหรับ Arduino เพื่ออ่านค่าจากแรงดันอินพุต-แอนะล็อก แลวนำไปแสดงผลโดยใช้ 7-Segment Display ตามที่กล่าวไป (และให้แสดงค่าที่อ่านได้ออกทาง Serial Monitor ด้วย) และในการเขียนโค้ด ห้ามใช้ตัวแปรหรือตัวเลขแบบ float

3. เขียนรายงานการทดลอง ซึ่งประกอบด้วยคําอธิบายการทดลองตามขั้นตอน ผังวงจรที่ถูกต้อง
ครบถ้วนตามหลักไฟฟ้า (ให้วาดด้วยโปรแกรม Cadsoft Eagle) รูปถ่ายของการตอวงจรบน  เบรดบอร์ด โค้ด Arduino ที่ได้ทดลองจริงพร้อมคำอธิบายโค้ด/การทํางานของโปรแกรม และตัวอย่างผลที่แสดงบน Serial Monitor (Screen Capture)

ผลการทดลอง

Code
byte NPN_13 = 10;//from NPN
byte NPN_14 = 11;//from NPN
byte dot = 9;//form seventSegment
byte Trimpot = A0; //from Tempot
byte sevenSegmentPins[] = {2,3,4,5,6,7,8};
byte sevenSegment[10][7] =
{
  //a b c d e f g
  { 1,1,1,1,1,1,0 },  // = 0
  { 0,1,1,0,0,0,0 },  // = 1
  { 1,1,0,1,1,0,1 },  // = 2
  { 1,1,1,1,0,0,1 },  // = 3
  { 0,1,1,0,0,1,1 },  // = 4
  { 1,0,1,1,0,1,1 },  // = 5
  { 1,0,1,1,1,1,1 },  // = 6
  { 1,1,1,0,0,0,0 },  // = 7
  { 1,1,1,1,1,1,1 },  // = 8
  { 1,1,1,1,0,1,1 }   // = 9
};
void setup()
{
   pinMode(Trimpot,INPUT); //pin A0
   pinMode(dot, OUTPUT); //pin 9
   pinMode(NPN_13, OUTPUT); //pin 10
   pinMode(NPN_14, OUTPUT); //pin 11
   digitalWrite(NPN_13, HIGH);//กำหนดสถานะ HIGH ให้กับ digital pin NPN
   digitalWrite(NPN_14, HIGH); );//กำหนดสถานะ HIGH ให้กับ digital pin NPN
   analogReference(DEFAULT);//เลือกแรงดันอ้างอิงสำหรับป้อนขาอินพุต
   Serial.begin(9600);  // open serial port
   for(int i=0; i<7; i++)
   {
     pinMode(sevenSegmentPins[i], OUTPUT);//กำหนดพฤติกรรมของขาที่ระบุ ในที่นี่กำหนดให้ pin ที่ต่อกับ sevenSegment เป็น OUTPUT
   }
}
//function to write number to 7 segment
void segmentWrite(byte digit){
  for (byte i=0; i<7; i++)  {

    digitalWrite(sevenSegmentPins[i], sevenSegment[digit][i]);
}

void loop(){
  long int value = analogRead(Trimpot); //ใช้อ่านค่าจากพินแอนาล็อคที่ระบุ (อ่านจากTrimpot)
  digitalWrite(dot, HIGH);//กำหนดให้พินที่ต่อกับจุด dot บน sevenSegment มีสถานะเป็น HIGH(ติด)
  long int value2 = (value*50)/1024; //แปลงระดับแรงดันที่ขาแอนะล็อก-อินพุต(จากTrimpot) ให้เป็นข้อมูลแบบดิจิทัล

  digitalWrite(NPN_13, HIGH); );//กำหนดให้ pin ที่ต่อกับ NPN มีสถานะเป็น HIGH เหมือนกับการเปิดสวิตซ์  เนื่องจาก NPN จะทำหน้าที่คล้ายกับสวิตซ์ของวงจร ในที่นี่จะปิดสวิตซ์ ซึ่งเป็นตัวควบคุม sevenSegment หลักแรก
  digitalWrite(NPN_14, LOW);//กำหนดให้ pin ที่ต่อกับ NPN มีสถานะเป็น LOW เหมือนกับการปิดสวิตซ์  เนื่องจาก NPN จะทำหน้าที่คล้ายกับสวิตซ์ของวงจร ในที่นี่จะปิดสวิตซ์ ซึ่งเป็นตัวควบคุม sevenSegment หลักที่สอง

  long int count0 = value2/10;//นำเลขที่แปลงได้ที่เป็นจำนวนเต็มมาทำการหาร 10 เพื่อให้แสดงเป็นเลขหลักแรก
  segmentWrite(count0);//ส่งค่า count0 ที่ได้ไปยัง function segmentWrite
  delay(10);

  digitalWrite(NPN_13, LOW);//กำหนดให้ pin ที่ต่อกับ NPN มีสถานะเป็น LOW เหมือนกับการปิดสวิตซ์  เนื่องจาก NPN จะทำหน้าที่คล้ายกับสวิตซ์ของวงจร ในที่นี่จะปิดสวิตซ์ ซึ่งเป็นตัวควบคุม sevenSegment หลักแรก
  digitalWrite(NPN_14, HIGH);//กำหนดให้ pin ที่ต่อกับ NPN มีสถานะเป็น LOW เหมือนกับการเปิดสวิตซ์  เนื่องจาก NPN จะทำหน้าที่คล้ายกับสวิตซ์ของวงจร ในที่นี่จะปิดสวิตซ์ ซึ่งเป็นตัวควบคุม sevenSegment หลักที่สอง
  long int count1 = value2%10;//นำเลขที่แปลงได้ที่เป็นจำนวนเต็มมาทำการหารเอาเศษด้วย 10 เพื่อให้แสดงเป็นเลขหลักที่สอง

  segmentWrite(count1);
  delay(10);

  // send message to serial port
  Serial.print(count0);//ค่า
  Serial.print(".");//พิมพ์ข้อมูลไปยังพอร์ต (จุดทศนิยม)
  Serial.print(count1);
  Serial.println();//เว้นบรรทัด
}



ตัวอย่างผลที่แสดงบน Serial Monitor (Screen Capture)








ภาพและวิดีโอประกอบการทดลอง



ผังวงจรที่วาดโดยโปรแกรม Fritzing
Breadboard view
Schematic view


วันพฤหัสบดีที่ 18 กันยายน พ.ศ. 2557

การทดลองที่ 4.4 สัญญาณอินพุต-แอนะล็อกและการใช้งานร่วมกับบอร์ด Arduino

วัตถุประสงค์การทดลอง

1.เพื่อให้สามารถต่อวงจร เพื่อสร้างสัญญาณอะนาล็อคเพื่อเป็นสัญญาณอินพุตให้กับ Arduino
2.ฝึกการต่อวงจรโดยใช้ Arduino และ เขียนโค้ด Arduino เพื่อให้ LED ติด/ดับ ตามค่าความเข้มของแสงได้

อุปกรณ์ที่ใช้ในการทดลอง

1. แผงต่อวงจร (เบรดบอร์ด)                                                                 1 อัน
2. ตัวต้านทานปรับค่าได้ 10kΩ หรือ 20kΩ                                              1 ตัว
3. ตัวต้านทานไวแสง LDR                                                                   1 ตัว
4. ไดโอดเปล่งแสงขนาด 5 มม.                                                            1 ตัว
5. ตัวต้านทาน 330Ω หรือ 470Ω                                                           1 ตัว
6. ตัวต้านทาน 10kΩ                                                                           1 ตัว
7.บอร์ด Arduino (ใช้แรงดัน +5V)                                                          1 บอร์ด
8.สายไฟสําหรับต่อวงจร                                                                       1 ชุด
9. มัลติมิเตอร์                                                                                      1 เครื่อง

ขั้นตอนการทดลอง

1. ต่อวงจรตาม ผังวงจร รูปที่ 4.4.1  บนเบรดบอร์ด ร่วมกับบอร์ด Arduino  ใช้แรงดันไฟเลี้ยง
VCC=+5V และ Gnd จากบอร์ด Arduino เท่านั้น (โดยให้ต่อวงจรบนเบรดบอร์ดก่อน จากนั้นจึงเชื่อมต่อ
สัญญาณอินพุตและเอาต์พุตของบอร์ด Arduino เมื่อตรวจสอบความถูกต้อง แล้วจึงป้อนแรงดันไฟ
เลี้ยงและ Gnd ตามลําดับ)


2. เขียนโปรแกรมตามตัวอย่างโค้ดที่กําหนดให้ และทําขั้นตอน Upload จากนั้นให้ทดลองหมุนปรับค่าที่
ตัวต้านทานปรับค่าได้ หรือปิดบริเวณส่วนรับแสงของ LDR เปิดหน้าต่าง Serial Monitor ของ
Arduino IDE แล้วสังเกตข้อความที่ถูกส่งมาจากบอร์ด Arduino

3. ปรับแก้โค้ด เพื่อให้วงจรและบอร์ด Arduino แสดงพฤติกรรมดังนี้ ถ้าปิดส่วนรับแสงของตัว
ต้านทานไวแสง LDR หรือมปริมาณแสงน้อยลง  ให้  LED1 “สว่าง”   ถ้า LDR ได้รับแสงตาม
สภาวะแสงปรกติ หรือได้รับปริมาณแสงมาก จะทําให LED1 “ ไม่ติด”

4. เขียนรายงานการทดลอง และตอบคําถามท้ายการทดลอง

ผลการทดลอง


ข้อที่ 2
Code Ex
const byte LDR_PIN = A1; //from LDR
const byte VREF_PIN = A2; //from Trimpot
const byte LED1_PIN = 5; //to LED1
 void setup()
{
      pinMode(LED1_PIN,OUTPUT); //กำหนดพฤติกรรมของขาที่เราระบุ 
      digitalWrite(LED1_PIN,LOW);  //กำหนดค่า LOW ให้กับ digital pin
      analogReference(DEFAULT); //เลือกแรงดันอ้างอิงสำหรับป้อนขาอินพุตต์
      Serial.begin(9600); //open sesrial port 
}
 void loop() {
      //read analog values
      int value1 = analogRead(LDR_PIN);
      int value2 = analogRead(VREF_PIN);
     //send message to serial port
     Serial.print("Read");  //พิมพ์ข้อมมูลไปยังพอร์ต จะมีคำว่า Read
     Serial.print(value1,DEC); //พิมพ์ข้อมมูล ที่เป็นค่าที่ได้จาก พิน  (LDR)ไปยังพอร์ต
     Serial.print(", "); 
     Serial.print(value2,DEC); //พิมพ์ข้อมมูล ที่เป็นค่าที่ได้จาก พิน  (Trimpot)ไปยังพอร์ต
     delay(200); 
}

ค่าที่ได้จาก Serial Monitor ของ Arduino IDE

LDR
ตัวต้านทานปรับค่าได้
ปริมาณแสงน้อย
ปริมาณแสงมาก
R=0kΩ
R=20kΩ
476
805
1023
0


ข้อที่ 3


วงจรที่ใช้ในการทดลอง

เมื่อ LDR ได้รับปริมาณแสงมาก LED จะดับ


เมื่อ LDR ได้รับแสงสว่าน้อยลง LED จะติด





Code
const byte LDR_PIN = A1; //from LDR 
const byte VREF_PIN = A2; //from Trimpot 
const byte LED1_PIN = 5; //to LED1 
 void setup() { 
      pinMode(LED1_PIN,OUTPUT); //กำหนดพฤติกรรมของขาที่เราระบุ 
      digitalWrite(LED1_PIN,LOW);  //กำหนดค่า LOW ให้กับ digital pin
      analogReference(DEFAULT); //เลือกแรงดันอ้างอิงสำหรับป้อนขาอินพุตต์
      Serial.begin(9600); //open sesrial port 

 void loop() { 
 //read analog values 
     int value1 = analogRead(LDR_PIN); //คือใช้อ่านค่าจากพิน ที่ระบุ (LDR)
     int value2 = analogRead(VREF_PIN); //คือใช้อ่านค่าจากพิน ที่ระบุ (Trimpot )
 //send message to serial port         
   if(analogRead(LDR_PIN)>500){
          digitalWrite(LED1_PIN,LOW);//โดยถ้าค่าที่อ่านได้จากขา input  A1 (LDR_PIN) มากกว่า                                                              500 คือจะเป็นค่าช่วงที่ LDRได้รับปริมาณแสงมาก ก็จะให้                                                            LED มีสถานะเป็น LOW คือดับ
  }else{
         digitalWrite(LED1_PIN,HIGH); //ถ้าไม่ใช่ คือ ค่าที่อ่านได้จากขาอินพุต A1 (LDR_PIN) น้อย                                                        กว่า 500 คือจะเป็นช่วงที่ LDRด้รับปริมาณแสงน้อย ก็จะให้                                                             LED มีสถานะเป็น L HIGH คือติด
  }
 Serial.print("Read");  //พิมพ์ข้อมมูลไปยังพอร์ต จะมีคำว่า Read
 Serial.print(value1,DEC); //พิมพ์ข้อมมูล ที่เป็นค่าที่ได้จาก พิน  (LDR)ไปยังพอร์ต
 Serial.print(", "); 
 Serial.print(value2,DEC); //พิมพ์ข้อมมูล ที่เป็นค่าที่ได้จาก พิน  (Trimpot)ไปยังพอร์ต
 delay(200); 
}

ผังการต่อวงจรโดยโปรแกรม Fritzing


ผังวงจร Breadboard View

ผังวงจร Schematic View 


คําถามท้ายการทดลอง

1. ค่าที่ได้ (เลขจํานวนเต็ม) จากบอร์ด Arduino สําหรับสัญญาณอินพุตที่ขา A1 มีค่าอยู่ในช่วงใด
(ต่ําสุด-สูงสุด)
Ans   ค่าจะอยู่ในช่วง 476 - 805 โดยค่าจะต่ำสุด เมื่อมีแสงสว่างมาก และค่าจะเพิ่มขึ้นเมื่อ LDR ได้รับปริมาณแสงน้อยลง

2. จะต้องปรับแก้โค้ดอย่างไรสําหรับบอร์ด Arduino ถ้าจะทําให้ LED1 มีความสว่างมากน้อยได้ตาม
ปริมาณแสงที่ได้รับ เช่น ถ้า LDR ได้แสงสวางน้อย จะทําให้ LED1 สว่างมาก แต่ถ้า LDR ได้แสง
สว่างมาก จะทําให้ LED1สว่างน้อย หรือไม่ติดเลย
Ans   เพิ่มเงื่อนไขและใช้ คำสั่ง analogRead(); //คือใช้อ่านค่าจากพิน ที่ระบุ
           if(analogRead(LDR_PIN)>500){
                           digitalWrite(LED1_PIN,LOW);
           }else{
                           digitalWrite(LED1_PIN,HIGH);
          }
        //โดยถ้าค่าที่อ่านได้จากขา input  A1 (LDR_PIN) มากกว่า 500 คือจะเป็นค่าช่วงที่ LDRได้รับปริมาณแสงมาก ก็จะให้ LED มีสถานะเป็น LOW คือดับ
        //ถ้าไม่ใช่ คือ ค่าที่อ่านได้จากขาอินพุต A1 (LDR_PIN) น้อยกว่า 500 คือจะเป็นช่วงที่ LDRด้รับปริมาณแสงน้อย ก็จะให้ LED มีสถานะเป็น L HIGH คือติด


วันพุธที่ 10 กันยายน พ.ศ. 2557

การทดลองที่ 4.2 การต่อวงจรสําหรับเปรียบเทียบช่วงแรงดัน

วัตถุประสงค์ของการทดลอง

1. เพื่อฝึกการต่อวงจรโดยใช้ไอซีเปรียบเทียบแรงดัน LM393N และตัวต้านทาน ปรับค่าได้
2. เข้าใจหลักการเปรียบเทียบแรงดัน ของไอซี  LM393N

อุปกรณ์ที่ใช้ในการทดลอง
1.แผงต่อวงจร (เบรดบอร์ด)                                                                        1 อัน
2.ไอซีเปรียบเทียบแรงดัน เบอร์ LM393N                                                     1 ตัว
3. ตัวต้านทานปรับค่าได้แบบ 3 ขา ขนาด 10kΩ หรือ 20kΩ                            1 ตัว
4.ตัวต้านทาน 10kΩ                                                                                   4 ตัว
5.ตัวต้านทาน 330Ω หรือ 470Ω                                                                   1 ตัว
6.ไดโอดเปล่งแสง (LED) ขนาด 5 มม.                                                         1 ตัว
7.สายไฟสําหรับต่อวงจร                                                                             1 ชุด
8.มัลติมิเตอร์                                                                                             1 เครื่อง
9. แหล่งจ่ายแรงดันควบคุม                                                                         1 เครื่อง
10.เครื่องกําเนิดสัญญาณแบบดิจิทัล                                                            1 เครื่อง
11. ออสซิลโลสโคปแบบดิจิทัล                                                                   1 เครื่อง

ขั้นตอนการทดลอง
1. ต่อวงจรบนเบรดบอร์ด โดยใช้ไอซี LM393N ตามผังวงจรในรูปที่ 4.2.1 และป้อนแรงดันไฟเลี้ยง
VCC= +5V และ Gnd จากแหล่งจ่ายควบคุมแรงดัน
ผังวงจรที่ 4.2.1  วงจรไอซีเปรียบเทียบแรงดัน 2 ชุด

2. ใช้มัลติมิเตอร์วัดแรงดัน V1 และ V2 เทียบกับ Gnd ของวงจร ตามลําดับ บันทึกค่าที่ได้
3. สร้างสัญญาณแบบสามเหลี่ยม (Triangular Wave)  อยู่ในช่วงแรงดัน 0V ถึง 5V  ใช้เครื่อง
กําเนิดสัญญาณ (Function Generator) กําหนดให้ Vpp = 5V (Peak-to-Peak Voltage) และ
แรงดัน Offset = 2.5V และความถี่ f = 1kHz เพื่อใช้เป็นสัญญาณอินพุต Vin สําหรับวงจร
4. ใช้ออสซิลโลสโคปวัดสัญญาณ โดยใช้ช่อง A สําหรับวัดสัญญาณที่มาจากเครื่องกําเนิดสัญญาณ (Vin) และช่อง B สําหรับวัดสัญญาณเอาต์พุตที่ขาหมายเลข 1 (V3) ของตัวเปรียบเทียบแรงดัน (บันทึกภาพที่ได้ )
5. ใช้ออสซิลโลสโคปวัดสัญญาณ โดยใช้ช่อง A สําหรับวัดสัญญาณที่มาจากเครื่องกําเนิดสัญญาณ (Vin) และช่อง B สําหรับวัดสัญญาณเอาต์พุตที่ขาหมายเลข 7 (V4) ของตัวเปรียบเทียบแรงดัน (บันทึกภาพที่ได้ )
6. ต่อวงจร ตามผังวงจรในรูปที่ 4.2.2 โดยตัวต้านทานปรับค่าได้ขนาด 10kΩ หรือ 20kΩ
ผังวงจรที่ 4.2.2 วงจรไอซีเปรียบเทียบช่วงแรงดัน

7. ใช้มัลติมิเตอร์วัดแรงดัน Vin ทดลองหมุนปรับค่าที่ตัวต้านทานปรับค่าได้ แล้วสังเกตสถานะของการ
ติด/ดับของ LED1 ให้จดบันทึกค่าแรงดัน Vin ที่ทําให้ LED1 เกิดการเปลี่ยนสถานะติด/ดับ
8. เขียนรายงานการทดลอง

ผลการทดลอง

   - ใช้มัลติมิเตอร์วัดแรงดัน V1 และ V2 เทียบกับ Gnd
                                 

วัดแรงดัน
เทียบกับ GND
แรงดันที่วัดได้
V1
0.001 V
V2
3.059 V
                                                                                                                             

กราฟ ระหว่าง สัญญาณ อินพุต (สัญญาณรูปสามเหลี่ยม) และ สัญญาณเอาพุตต์ (รูปสี่เหลี่ยม) ที่ขาหมายเลข 1 (V3)ของ ไอซี LM393N  โดยจากกราฟ แรงดัน Vin ที่ทำให้ สัญญาณเอาพุตต์ V3 มีสถานะ                                                 LOW  อยู่ในช่วง   0   V  ถึง    4.1   V      :       HIGH    อยู่ในช่วง     4.1 V   ถึง  5 V  


กราฟ ระหว่าง สัญญาณ อินพุต (สัญญาณรูปสามเหลี่ยม) และ สัญญาณเอาพุตต์ (รูปสี่เหลี่ยม) ที่ขาหมายเลข 7  (V4)ของ ไอซี LM393N  โดยจากกราฟ แรงดัน Vin ที่ทำให้ สัญญาณเอาพุตต์ V4 มีสถานะ                            LOW  อยู่ในช่วง    0 V  ถึง   1.5 V     :       HIGH    อยู่ในช่วง     1.5 V ถึง  5 V 


 - บันทึกค่าแรงดัน Vin ที่ทําให้ LED1 เกิดการเปลี่ยนสถานะติด/ดับ


ช่วงแรงดัน
สถานะของ LED ติด/ดับ
0 V - 1.721 V
ติด
1.721 V-3.387 V
ดับ
3.387 V- 5.106 V
ติด

ภาพประกอบการทดลอง

                   วงจรไอซีเปรียบเทียบแรงดัน 2 ชุด


วัดแรงดันที่จุด V1 เทียบกับ GND ของวงจร

วัดแรงดันที่จุด V2 เทียบกับ GND ของวงจร
กราฟ ของสัญญาณ อินพุตต์(รูปสามเหลี่ยม)
และ กราฟของสัญญาณ เอาพุตต์ (รูปสี่เหลี่ยม) ของ V3

ต่อวงจรไอซีเปรียบเทียบแรงดัน 2 ชุด (ใช้วัด V3)

กราฟ ของสัญญาณ อินพุตต์ (รูปสามเหลี่ยม)
และ กราฟของสัญญาณ เอาพุตต์ (รูปสี่เหลี่ยม) ของ V4

ต่อวงจรไอซีเปรียบเทียบแรงดัน 2 ชุด (ใช้วัด V4)

                       - วงจรไอซีเปรียบเทียบช่วงแรงดัน

ทำการปรับค่าของตัวต้านทาน เพื่อให้แรงดันมีค่าเพิ่มขึ้น LED จะติคในช่วงนี้

เมื่อแรงดันมีค่าอยู่ในช่วงนี้ LED จะดับ


แรงดันในช่วงนี้ LED ยังดับอยู่

เมื่อ แรงดันเพิ่มขึ้นจนถึงช่วงนี้ LED จะติดอีกครั้ง


LED ยังคงติดจนค่าแรงดันเพิ่มขึ้นถึง 5 V


ผังวงจรโดยโปรแกรม Fritzing


4.2.1 วงจรไอซีเปรียบเทียบแรงดันสองชุด Breadboard View

4.2.1 วงจรไอซีเปรียบเทียบแรงดันสองชุด Schematic View

4.2.2 วงจรไอซีเปรียบเทียบช่วงแรงดัน Breadboard View

4.2.2 วงจรไอซีเปรียบเทียบช่วงแรงดัน Schematic View

คําถามท้ายการทดลอง 

1. แรงดัน V1 และ V2 มีค่าประมาณ  0  โวลต์ และ  3.055  โวลต์ ตามลําดับ

2. แรงดัน Vin จะต้องมีค่าอยู่ในช่ว  0   ถึง   4.1   โวลต์ และ   4.1   ถึง  5   โวลต์
จึงจะทําให้แรงดัน V3 ที่ขาหมายเลข 1 ของ LM393N (วงจรในรูปที่ 4.2.1) ได้ลอจิก LOW และ
HIGH ตามลําดับ

3. แรงดัน Vin จะต้องมีค่าอยู่ในช่วง   0   ถึง  1.5  โวลต์ และ  1.5  ถึง  5   โวลต์
จึงจะทําให้แรงดัน V4 ที่ขาหมายเลข 7 ของ LM393N (วงจรในรูปที่ 4.2.1) ได้ลอจิก LOW และ
HIGH ตามลําดับ

4. แรงดัน Vin ที่ได้จากการหมุนปรับค่าของตัวต้านทานปรับค่าได้ จะต้องมีค่าอยู่ในช่วงใด จึงจะทําให้
LED1 สว่าง
Ans ช่วงที่ 1 คือ ช่วงแรงดัน ระหว่าง 0 V - 1.721 V ช่วงที่ 2คือ แรงดันระหว่าง 3.387 V- 5.106 V