วันพฤหัสบดีที่ 16 ตุลาคม พ.ศ. 2557

การทดลองที่ 5.4 การเชื่อมต่อวงจรอิเล็กทรอนิกส์ด้วยแสง

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

รายการอุปกรณ์
1. แผงต่อวงจร(เบรดบอร์ด)                                1 อัน
2. อุปกรณ์เชื่อมต่อทางแสง PC817                      1 ตัว
3. ไดโอดเปล่งแสงสีแดงหรือสีเขียว                    1 ตัว
4. ตัวต้านทาน 220Ω หรือ 330Ω                         1 ตัว
5. ทรานซิสเตอร์ NPN เบอร์ PN2222A                1 ตัว
6. ตัวต้านทาน 1kΩ                                           1 ตัว
7. ตัวต้านทาน 4.7kΩ                                        1 ตัว
8. ตัวต้านทาน 10kΩ                                         1 ตัว
9. ตัวต้านทานปรับค่าได้ 10kΩ หรือ 20kΩ           1 ตัว
10. ไดโอด 1N400x                                          1 ตัว
11. มอเตอร์ไฟฟ้ากระแสตรงขนาดเล็ก                 1 ตัว *
12. สายไฟสําหรับต่อวงจร                                 1 ชุด
13. มัลติมิเตอร์                                                 1 เครื่อง
14. แหล่งจ่ายแรงดันควบคุม                              1 เครื่อง
15. ออสซิลโลสโคปแบบดิจิทัล                         1 เครื่อง

ขั้นตอนการทดลอง
1. ต่อวงจรบนเบรดบอร์ดตามรูปที่ 5.4.1 ให้สังเกต ผังวงจรว่ามี GND1 และ GND2 แยกกันซึ่ง
จะต้องไม่นํามาต่อเขาด้วยกันโดยเด็ดขาด

2. ให้ใช้แรงดันไฟเลี้ยง +5V และ GND1 ให้ใช้จากบอร์ด Arduino แต่สําหรับ +9V และ GND2
ให้ใช้จากแหลงจ่ายแรงดันควบคุม

3. เขียนโค้ด Arduino โดยสร้างสัญญาณแบบ PWM โดยใช้คําสั่ง analogWrite() เพื่อสร้างสัญญาณ
เอาต์พุตที่ขา D5 โดยปรับค่า Duty Cycle ของสัญญาณเอาต์พุตตามค่าที่อ่านได้จากตัวต้านทาน
ปรับค่าได้ ซึ่งต่อเป็นอินพุตที่ขา A1

4. ใช้ออสซิลโลสโคปวัดสัญญาณที่ขา E ของ PC817 เทียบกับ GND2 แล้วทดลองหมุนปรับที่
ตัวต้านทานปรับค่าได้ เพื่อปรับค่า Duty Cycle เป็น 0% 25% 50% และ 100% ตามลําดับ
บันทึกรูปคลื่นสัญญาณที่ได้ในแต่ละกรณี

5. ทดลองเปลี่ยนจาก LED และตัวต้านทาน เป็นมอเตอร์ไฟฟ้ากระแสตรงขนาดเล็ก (ปรับแรงดันไฟเลี้ยง
จาก +9V ให้เป็นแรงดันไฟเลี้ยงที่เหมาะสมกับมอเตอร์ไฟฟ้า +VM) โดยต่อวงจรตามรูปที่ 5.4.2 และ
ทดลองปรับค่า Duty Cycle

6. เขียนรายงานการทดลอง

ผลการทดลอง
Code Ardunioโดยสร้างสัญญาณแบบ PWM โดยใช้คําสั่ง analogWrite() เพื่อสร้างสัญญาณ
เอาต์พุตที่ขา D5 โดยปรับค่า Duty Cycle ของสัญญาณเอาต์พุตตามค่าที่อ่านได้จากตัวต้านทาน
ปรับค่าได้ ซึ่งต่อเป็นอินพุตที่ขา A1
const byte TM_PIN = A1;
/*เลือกขาหมายเลข A1 เพื่อรับสัญญาณจาก trimpot*/
const byte PC_PIN = 5;//เลือกขาหมายเลข 5 เพื่อสร้างสัญญาณ to PC817 

void setup() {
  pinMode(TM_PIN,INPUT);
/*กำหนดพฤติกรรมของ analog pin ที่เราระบุ ให้ trimpot เป็น input*/
  pinMode(PC_PIN,OUTPUT);
/*กำหนดพฤติกรรมของ digital pin ที่เราระบุ ให้ PC817เป็น Output*/
  analogReference(DEFAULT);
/*เลือกแรงดันอ้างอิงสำหรับแปลงสัญญาณเอาตต์พุตต์เป็นข้อมูลดิจิตัล*/
  Serial.begin(9600);//open serial port
}

void loop() {
  int value = analogRead(TM_PIN);
/*อ่านค่าจาก analog pin แล้วเก็บค่าไว้ในตัวแปร */
  int value2=(value/4)*100/255; 
/* นำค่าที่ได้มาคำนวณหาค่า Duty Cycle */
  analogWrite(PC_PIN,value/4); 
/*Writeค่าที่ได้ไปยัง analog pin*/
  Serial.print("Read :");//
  Serial.println(value2);//แสดงค่า duty cycle ทาง serial monitor
  delay(1000);// อ่านค่าช้าลง 1000  ms
}





ใช้ออสซิโลสโคปวัดสัญญาณที่ขา E ของ PC817    แล้วทดลองหมุนปรับที่
ตัวต้านทานปรับค่าได้ เพื่อปรับค่า Duty Cycle เป็น 0% 25% 50% และ 100% ตามลําดับ
คลื่นสัญญาณที่ได้จากการ หมุนปรับตัวต้านทานปรับค่าได้
เพื่อปรับค่า Duty cycle เป็น 0%

คลื่นสัญญาณที่ได้จากการ หมุนปรับตัวต้านทานปรับค่าได้
เพื่อปรับค่า Duty cycle เป็น 25%

คลื่นสัญญาณที่ได้จากการ หมุนปรับตัวต้านทานปรับค่าได้
เพื่อปรับค่า Duty cycle เป็น 50%


คลื่นสัญญาณที่ได้จากการ หมุนปรับตัวต้านทานปรับค่าได้
เพื่อปรับค่า Duty cycle เป็น 100%





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


ต่อวงจรบนเบรนบอร์ด ตามรูปที่ 5.4.1

ปรับตัวต้านทานปรับค่าได้ เพื่อปรับค่า duty cycle 0%
LED ดับ

duty cycle 0% จาก Serial Monitor ของ Arduino IDE

duty cycle 25% จาก Serial Monitor ของ Arduino IDE

ปรับตัวต้านทานปรับค่าได้ เพื่อปรับค่า duty cycle 25%
LED สว่าง

duty cycle 50% จาก Serial Monitor ของ Arduino IDE

ปรับตัวต้านทานปรับค่าได้ เพื่อปรับค่า duty cycle 50%
LED สว่าง

duty cycle 100% จาก Serial Monitor ของ Arduino IDE

ปรับตัวต้านทานปรับค่าได้ เพื่อปรับค่า duty cycle 100%
LED สว่าง
ผังวงจรที่วาดโดยโปรแกรม Fritzing

มุมมอง Schematic View 
มุมมอง Breadboard view




ไม่มีความคิดเห็น:

แสดงความคิดเห็น