กระทู้เมื่อเร็วๆ นี้

หน้า: 1 ... 8 9 [10]
91
IOT : Internet of Thing (ESP32) / Re: ....
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 20, 2019, 08:50:31 PM »
วงจรที่ใช้ทดลอง


ตัวอย่างโปรแกรม [1] วนตรวจสอบสถานะที่ขาพอร์ต
   โปรแกรมอ่านค่าสถานะของขาพอร์ตที่เชื่อมต่อกับสวิตช์กดติดปล่อยดับ แล้วแสดงสถานะที่อ่านได้แสดงผลที่ LED
โค๊ด: [Select]
#define LED1 21
#define LED2 19
#define LED3 18
#define LED4 5
#define SW1 27
#define SW2 14
#define SW3 12
#define SW4 13
void setup(){
  pinMode(LED1, OUTPUT);
  pinMode(LED2, OUTPUT);
  pinMode(LED3, OUTPUT);
  pinMode(LED4, OUTPUT);
  pinMode(SW1, INPUT_PULLUP);
  pinMode(SW2, INPUT_PULLUP);
  pinMode(SW3, INPUT_PULLUP);
  pinMode(SW4, INPUT_PULLUP);
}
void loop(){
  digitalWrite(LED1, digitalRead(SW1));
  digitalWrite(LED2, digitalRead(SW2));
  digitalWrite(LED3, digitalRead(SW3));
  digitalWrite(LED4, digitalRead(SW4));
  delay(50);
}
ตัวอย่างโปรแกรม [2] ใช้การอินเตอร์รัพท์
   โปรแกรมทดสอบการใช้งานการอินเตอร์รัพท์ภายนอก โดยรับจากสวิตช์ที่ต่อไว้ที่ขา GPIO27
โค๊ด: [Select]
struct Button {
  const uint8_t PIN;
  uint32_t numberKeyPresses;
  volatile bool pressed;
};
Button SW = {27, 0, false};
void IRAM_ATTR isr() {
  SW.pressed = true;
}
void setup() {
  pinMode(SW.PIN, INPUT_PULLUP);
  attachInterrupt(SW.PIN, isr, FALLING);
  Serial.begin(9600);
}
void loop() {
  for (byte i = 0; i < 20; i++) {
    Serial.print(".");
    delay(100);
    if (SW.pressed) {
      SW.numberKeyPresses += 1;
      Serial.printf("\nSwitch has been pressed %u times\n", SW.numberKeyPresses);
      SW.pressed  = false;
      return;
    }
  }
  Serial.println();
}
92
IOT : Internet of Thing (ESP32) / Re: ....
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 20, 2019, 08:22:31 PM »

ฟังก์ชั่นที่ใช้งานในการทดลองนี้

รูปแบบ คำอธิบาย
pinMode(pin, mode); pin: หมายเลขขาที่ต้องการเซตโหมด
mode: INPUT, OUTPUT, INPUT_PULLUP
digitalWrite(pin,value); pin: หมายเลข ขาที่ต้องการเขียนลอจิกออกพอร์ต
value: ค่าลอจิกที่ต้องการส่งออก HIGH or LOW
digitalRead(pin); pin: หมายเลขขาที่ต้องการอ่านค่าสถานะลอจิก
delay(ms); ms: ตัวเลขที่หยุดค้างของเวลาหน่วยมิลลิวินาที (unsigned long)

รูปแบบ คำอธิบาย
attachInterrupt(pin, ISR, mode); ฟังก์ชั่นเปิดการใช้งานอินเตอร์รัพท์ภายนอก
pin: หมายเลขขาพอร์ตที่ต้องการรับสัญญาณอินเตอรรัพท์
ISR: ชื่อฟังก์ชั่นรองที่ใช้ตอบสนองการอินเตอร์รัพท์
mode: เป็นการกำหนดลักษณะของสัญญาณที่ใช้กระตุ้นการอินเตอร์รัพท์
->LOW เมื่อขาเป็นลอจิกศูนย์
->CHANGE เมื่อขามีการเปลี่ยนระดับลอจิก 1->0, 0->1
->RISING เมื่อขามีการเปลี่ยนระดับลอจิกจาก 0 ไปเป็น 1
->FALLING เมื่อขามีการเปลี่ยนระดับลอจิกจาก 1 ไปเป็น 0
หมายเหตุ
   1. หมายเลข pin สามารถใช้ตัวเลข GPIO ได้โดยตรง
   2. ขาพอร์ต GPIO34, GPIO35, GPIO36, GPIO39 ใช้งานได้เฉพาะอินพุทเท่านั้น
93
การใช้งานพอร์ตในโหมดดิจิทัลอินพุทและการใช้งานอินเตอร์รัพท์บื้องต้น
   ขาพอร์ตของ ESP32 ทุกขาสามารถใช้งานเป็นอินพุทพอร์ตได้และทุกขาก็สามารถใช้งานในส่วนอินเตอร์รัพท์แบบภายนอกได้ การเขียนโปรแกรมรับค่าเข้ามาเพื่อประมวลผลสามารถทำได้ 2 แนวทางคือ
   1. แบบ Polling เป็นการเขียนโปรแกรมแบบวนตรวจสอบลอจิกที่ขาพอร์ต การเขียนโปรแกรมลักษณะนี้จะอ่านค่าจากขาพอร์ตด้วยฟังก์ชั่น digitalRead
   2. แบบ Interrupt เป็นการเขียนโปรแกรมที่เปิดให้ยอมรับการรับสัญญาณการขัดจังหวะจากภายนอกได้

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

(a) การใช้งานตัวต้านทานพูลอัพภายนอก ใช้ฟังก์ชั่น pinMode(pin,INPUT);
(b) การใช้งานตัวต้านทานพูลอัพภายใน ใช้ฟังก์ชั่น pinMode(pin,INPUT_PULLUP);
หมายเหตุ ขาพอร์ต GPIO34,35,36,39 ต้องใช้ตัวต้านทานพูลอัพภายนอกเท่านั้น

วิธีการใช้งานพอร์ตดิจิทัลอินพุท
  เป็นการใช้งานพอร์ตที่ต้องวนอ่านสถานะลอจิกที่ขาพอร์ต การใช้งานพอร์ตให้ทำงานเป็นอินพุทพอร์ตมี 2 ฟังก์ชั่นที่เกี่ยวข้องคือ
1. ฟังก์ชั่นกำหนดโหมดให้เป็นอินพุทพอร์ต โดยจะวางฟังก์ชั่นนี้ไว้ใน void setup() ตัวอย่างฟังก์ชั่นใช้งานได้แก่
     pinMode(pin,INPUT)   ;     // กำหนดขาพอร์ตให้ทำงานเป็นอินพุทพอร์ตแบบไม่ใช้ตัวต้านทานพูลอัพภายใน
     pinMode(pin,INPUT_PULLUP)   ;   // กำหนดขาพอร์ตให้ทำงานเป็นอินพุทพอร์ตแบบใช้ตัวต้านทานพูลอัพภายใน
2. ฟังก์ชั่นอ่านค่าสถานะลอจิกที่ขาพอร์ต ซึ่งฟังชั่นนี้จะส่งค่ากลับมา 2 ค่าคือ HIGH,LOW  การจะใช้งานฟังก์ชั่นนี้ได้จะต้องใช้ฟังก์ชั่นกำหนดโหมดขาให้เป็นอินพุทก่อน ตัวอย่างฟังก์ชั่นใช้งานได้แก่
     bool status=digitalRead(pin)   ;     // เป็นฟังก์ชั่นการอ่านสถานะที่ขา pin มาไว้ในตัวแปลชื่อว่า status ซึ่งประกาศเป็นตัวแปรชนิด boolean ไว้

ธรรมชาติของสัญญาณที่ได้จากสวิตช์และวิธีแก้ไข
   วงจรสวิตช์ที่ใช้งานทั่วไปเป็นสวิตช์แบบที่ใช้แรงกดจากปลายนิ้วของผู้ใช้งาน โครงสร้างภายในเป็นหน้าสัมผัสซึ่งการกดการปล่อยในแต่ละครั้งจะก่อให้เกิดสัญญาณกระเด้งกระดอน(ฺBounce) ดังรูป


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


วิธีการใช้งานการอินเตอร์รัพท์ภายนอก
   เป็นวิธีการรู้สถานะของขาพอร์ตโดยไม่ต้องวนอ่านสถานะ เพียงแต่ต้องกำหนดให้ไมโครคอนโทรลเลอร์เปิดระบบให้ยอมรับการอินเตอร์รัพท์ได้ โดยฟังก์ชั่นการเปิดการยอมรับการอินเตอร์รัพท์นี้จะวางไว้ใน void setup() ฟังก์ชั่นนี้คือ
attachInterrupt(pin, ISR, mode);
    pin: หมายเลขขาพอร์ตที่ต้องการรับสัญญาณอินเตอรรัพท์
    ISR: ชื่อฟังก์ชั่นรองที่ใช้ตอบสนองการอินเตอร์รัพท์
    mode: เป็นการกำหนดลักษณะของสัญญาณที่ใช้กระตุ้นการอินเตอร์รัพท์
        ->LOW เมื่อขาเป็นลอจิกศูนย์
        ->CHANGE เมื่อขามีการเปลี่ยนระดับลอจิก 1->0, 0->1
        ->RISING เมื่อขามีการเปลี่ยนระดับลอจิกจาก 0 ไปเป็น 1
        ->FALLING เมื่อขามีการเปลี่ยนระดับลอจิกจาก 1 ไปเป็น 0
รูปแบบของสัญญาณอินเตอร์รัพท์ที่ตอบสนองเป็นดังรูป


ขาพอร์ตที่มีให้ใช้งาน
94
IOT : Internet of Thing (ESP32) / Re: ....
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 16, 2019, 10:10:07 PM »
ตัวอย่างโปรแกรม [1]
   เป็นโปรแกรมที่ควบคุมความสว่างของ LED จำนวน 1 ตัวที่ต่ออยู่ที่ขา GPIO21 โดยให้ LED ค่อย ๆ สว่างขึ้นจนสว่างสูงสุดแล้วค่อย ๆ หรี่ลงจนดับสนิท
โค๊ด: [Select]
#define LED1 21
/* setting PWM properties */
const int freq = 5000;
const byte ledChannel = 0;
const byte resolution = 8;
void setup(){
  ledcSetup(ledChannel, freq, resolution);
  ledcAttachPin(LED1, ledChannel);
}
void loop(){
  for(int duty = 0; duty <= 255; duty++){   
    ledcWrite(ledChannel, duty);
    delay(15);
  }
  for(int duty = 255; duty >=0; duty--){   
    ledcWrite(ledChannel, duty);
    delay(15);
  } 
}
ตัวอย่างโปรแกรม [2]
   โปรแกรมไฟวิ่งลักษณะฝนดาวตก โดยเป็นไฟวิ่งที่มีความสว่างต่างกัน การกำหนดความสว่างในโปรแกรมนี้ใช้ resolution ขนาด 8 บิตดังนั้นค่าที่กำหนดความสว่าง (Duty cycle) จะมีค่าระหว่าง 0-255 จะทำให้ LED ดับสนิทจนถึงสว่างสูงสุด การกำหนดความสว่างใช้วิธีสร้างเก็บไว้ในตัวแปรอาเรย์ที่ชื่อว่า fade ดังรูป


เมื่อส่งค่าออกไปยังขาพอร์ตให้ส่งไปที่ละจังหวะเรียงกันไปดังรูป


โค๊ด: [Select]
#define LED1 21
#define LED2 19
#define LED3 18
#define LED4 5
byte fade[] = {0,0,0,0,200,255, 200, 150, 100, 50, 10, 0, 0, 0,0};
void setup() {
  ledcSetup(0, 5000, 8);          /*ledcSetup(Channel,Freq,Resolution)  */
  ledcSetup(1, 5000, 8);
  ledcSetup(2, 5000, 8);
  ledcSetup(3, 5000, 8);
  ledcAttachPin(LED1, 0);         /*ledcAttachPin(Pin,Channel)          */
  ledcAttachPin(LED2, 1);
  ledcAttachPin(LED3, 2);
  ledcAttachPin(LED4, 3);
}
void loop() {
  for (int i = 0; i < 11; i++) {
    ledcWrite(0, fade[i]);
    ledcWrite(1, fade[i + 1]);
    ledcWrite(2, fade[i + 2]);
    ledcWrite(3, fade[i + 3]);
    delay(75);
  }
}
<a href="https://www.youtube.com/v/wXS1C54mV4k" target="_blank" class="new_win">https://www.youtube.com/v/wXS1C54mV4k</a>
95
IOT : Internet of Thing (ESP32) / Re: ....
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 16, 2019, 09:51:02 PM »

ฟังก์ชั่นที่ใช้งานในการทดลองนี้

รูปแบบ คำอธิบาย
pinMode(pin, mode); pin: หมายเลขขาที่ต้องการเซตโหมด
mode: INPUT, OUTPUT, INPUT_PULLUP
digitalWrite(pin,value); pin: หมายเลข ขาที่ต้องการเขียนลอจิกออกพอร์ต
value: ค่าลอจิกที่ต้องการส่งออก HIGH or LOW
delay(ms); ms: ตัวเลขที่หยุดค้างของเวลาหน่วยมิลลิวินาที (unsigned long)

รูปแบบ คำอธิบาย
ledcSetup(channel,freq,resolution); ฟังก์ชั่นกำหนดค่าใน Timer
-channel หมายเลขช่องของ Timer ใช้งานได้ 16 ช่องค่า 0-15
-freq ค่าความถี่ที่ใช้สร้างสัญญาณ PWM
-resolution ค่าความละเอียดของ Duty cycle 1-16 bit
เช่นถ้าใช้ 8 bit ค่า Duty cycle ที่กำหนดจะมีค่า 0-255 หมายถึง 0-100%
ledcAttachPin(GPIO, channel); ฟังก์ชั่นกำหนดขาพอร์ตที่ใช้งานกับช่องของ Timer
-GPIO หมายเลขขาพอร์ตที่ใช้งาน
-channel หมายเลขช่องของ Timer ที่เลือกใช้งานกับขาพอร์ตที่ระบุ
ledcWrite(channel, dutycycle) ฟังก์ชั่นสั่งการให้ Timer สร้างสัญญาณ PWM
-channel หมายเลขช่องของ Timer ที่ต้องการสั่งการ
-dutycycle ค่า Duty cycle ที่ต้องการให้ Timer สร้างขึ้น
หมายเหตุ
   1. หมายเลข pin สามารถใช้ตัวเลข GPIO ได้โดยตรง
   2. ขาพอร์ต GPIO34, GPIO35, GPIO36, GPIO39 ใช้งานได้เฉพาะอินพุทเท่านั้น
96
IOT : Internet of Thing (ESP32) / การเรียนรู้ครั้งที่ 4 [Basic ESP32] การใช้งาน PWM
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 16, 2019, 09:50:32 PM »
   การควบคุมพลังงานที่จ่ายให้กับโหลดให้ลดการทำงานลงจากการทำงานปกติ เช่น การลดความสว่างของ LED การลดความเร็วของมอเตอร์ไฟฟ้ากระแสตรง หากใช้วิธีการลดค่าแรงดันที่จ่ายให้ก็สามารถทำได้แต่ผลที่เกิดขึ้นคือจะเกิดกำลังงานสูญเสียไปที่วงจรลดค่าแรงดันนั้น ๆ ซึ่งถ้าหากโหลดใช้กระแสสูงวงจรจะเกิดความเสียหายได้งาน วิธีการแก้ไขคือการเปลี่ยนแปลงจังหวะการส่งกำลังงานให้กับโหลดแทนซึ่งตามจินนาการตามทฤษฎีแล้วจะไม่มีกำลังงานสูญเสียที่วงจรควบคุมเลย การควบคุมลักษณะนี้เป็นการผสมคลื่นทางความกว้างที่เรียกว่า PWM (Pulse Width Modulation) โดยความกว้างของคลื่นจะเปลี่ยนแปลงแต่ความถี่ยังคงเดิม อัตราส่วนระหว่างช่วงคลื่นที่มีแรงดันต่อคาบเวลาคลื่นเรียกว่า Duty cycle ดังรูป


   แต่เนื่องจาก ESP32 ขาพอร์ตไม่มีวงจร PWM โดยตรงมาให้ดังนั้นคำสั่ง analogWrite(); จึงใช้ไม่ได้กับ ESP32 ณ ปัจจุบันนี้ (มกราคม 2019)
  การใช้งานจึงต้องใช้วงจร Timer มาช่วยการทำงานแทนการใช้งาน PWM ใช้การทำงานของ Timer มีฟังก์ชั่นการใช้งานอยู่ 3 ฟังก์ชั่นคือ
   1. ledcSetup(Channel, freq, resolution);   กำหนดค่าการทำงานของวงจรไทเมอร์
   2. ledcAttachPin(GPIO, Channel);            กำหนดขาพอร์ตที่ใช้เชื่อมต่อกับวงจรไทเมอร์
   3. ledcWrite(Channel, dutyCycle);           กำหนดค่า Duty cycle กับวงจรไทเมอร์

วงจรที่ใช้ในการทดลอง
   การเรียนรู้ครั้งนี้เป็นตัวอย่างการใช้งาน PWM ส่งออกขาพอร์ตซึ่งต่อใช้งานให้เป็นตัวอย่างเพียง 4 ขาเท่านั้น การเชื่อมต่อเป็นดังรูป

97
IOT : Internet of Thing (ESP32) / Re: ลายปริ้นวงจรบอร์ดทดลอง IOT รุ่น ESP32 [V.2019.1]
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 11, 2019, 01:35:31 PM »
ตัวอย่างการประกอบลงแผ่น PCB (แผ่นวงจรสั่งโรงงานผลิต)






98
IOT : Internet of Thing (ESP32) / Re: ลายปริ้นวงจรบอร์ดทดลอง IOT รุ่น ESP32 [V.2019.1]
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 11, 2019, 01:35:18 PM »
ESP32 DOIT DevKit สั่งจากต่างประเทศ
จะได้ราคาถูกกว่าในไทย แต่จะใช้เวลานานกว่าค่อนข้างมากโดยปกติไม่เกิน 15 วัน สามารถสั่งผ่าน Shopee ได้ที่
https://shopee.co.th/Official-DOIT-ESP32-Development-Board-WiFi-Bluetooth-Ultra-Low-Power-Consumption-Dual-Core-ESP-32-ESP-32S-ESP-32-Similar-i.59553004.1486438240
99
IOT : Internet of Thing (ESP32) / Re: ...
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 11, 2019, 09:10:30 AM »

รายการอุปกรณ์

www.es.co.th
ลำดับที่รายการจำนวนตัว
10.1uF2
20.1uF(SMD)5
31uF1
4470uF1
51N40021
6BC5471
7Female Pin Header1x121
8Female Pin Header1x27
9Female Pin Header1x33
10Female Pin Header1x41
11Female Pin Header1x52
12Female Pin Header1x81
13Female Pin Header1x91
14Pin Header Connector 40 Pins1
15LDR1
16LED3mm9
17RELAY-FTR-F3AA0051
18Tactile Switches5
19Terminal Box 2 Pin1

รายการอุปกรณ์

www.arduinoall.com
ลำดับที่รายการจำนวนตัว
1Resistor 220 (ใช้งาน 9 ตัว)1 แพค
2Resistor 10k(ใช้งาน 3 ตัว)1 แพค
3Resistor 1k (ใช้งาน 2 ตัว)1 แพค
4Resistor 4k7 (ใช้งาน 2 ตัว)1 แพค
5Female Pin Header1x152
6Female Pin Header 1x4-901
7Trim POT-3386P1
8OLED 128x64 0.96"1
9LCD i2c 16x21
10MAX7219 7-segment 8 digit1
11DHT111
12DS18B201
13BreadBoard 1701
14ESP32 DOIT DevKit1
หมายเหตุ
1. ตัวต้านทานจาก ArduinoALL จัดแพคไว้ 10 ตัวต่อ 1 แพค
2. จุดจ่ายไฟ (5V, 3.3V, GND) ใช้ Female Header 1x3 กับ  Pin Header ตัดเอา 3 ขา แล้ววางคู่กัน ดังรูป

100
IOT : Internet of Thing (ESP32) / ลายปริ้นวงจรบอร์ดทดลอง IOT รุ่น ESP32 [V.2019.1]
« กระทู้ล่าสุด โดย admin เมื่อ มกราคม 11, 2019, 09:10:19 AM »
ลายปริ้นวงจรบอร์ดทดลอง IOT รุ่น ESP32 [V.2019.1]
  ลายปริ้นที่ใช้ในการศึกษาทดลองค้นคว้าเกี่ยวกับเทคโนโลยี IoT (Internet of Things) โดยบอร์ดทดลองนี้ใช้โมดูลที่ใช้ชิพ ESP32 รุ่นที่มีขาใช้งาน 30 ขา (รุ่น DOIT DevKit) ผู้สนใจที่จะทำปริ้นไว้ใช้งานสามารถจัดทำด้วยตนเองได้โดยครูได้ออกแบบให้เป็นลายวงจรเพรงหน้าเดียว (มีจุดจั้ม 2 จุด) มีรายละเอียดดังนี้

1. ลายวงจรที่ใช้งาน


2. ลายปริ้นที่จัดทำขึ้นเองจะต้องจั้ม 2 จุดดังรูป และไม่มีตัวเก็บประจุลดสัญญาณเบาซ์ (คร่อมสวิตช์)


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


4. ตำแหน่งของตัวเก็บประจุลดสัญญาณเบาซ์ (คร่อมสวิตช์) ซึ่งเป็นตัวเก็บประจุผิวหน้า


ต้นแบบลายปริ้นสามารถทำด้วยต้นเองได้โดยวิธีการรีดผ่านกระดาษโฟโต้หรือกระดาษมัน สามารถดาวน์โหลดได้ที่
https://drive.google.com/file/d/1wcugiISXGf78Fvvjpd29tza_SpuGCJdU/view?usp=sharing

แผ่นวงจรพิมพ์มีขนาด 3.2x5.5 นิ้ว โดยการวัดให้ใช้ไม้โปรวัดนิ้วด้านองศา(1 นิ้วมี 10 ช่อง) ก่อนทำต้องวัดขนาดให้ถูกต้องก่อนทำปริ้นเนื่องจากอาจเกิดการผิดพลาดจากการตั้งค่าการพิมพ์จากเครื่องพิมพ์

การตั้งค่าเครื่องพิมพ์เพื่อให้ได้ขนาด PCB ที่ถูกต้อง
-ตั้งค่าหน้ากระดาษเป็นขนาด A4
-ตั้งค่าการพิมพ์ดังรูป



ในกรณีที่ทำปริ้นด้วยตนเอง..
ให้นักศึกษาใช้เทคนิคโทนเนอร์ทรานเฟอร์ซึ่งรายละเอียดการทำดูได้จากเวปไซต์ของครู


กรณีใช้กระดาษโฟโต้
http://www.praphas.com/index.php/2008-11-03-14-25-25/36-2008-11-04-15-15-34/77-2010-09-13-05-43-56

กรณีใช้กระดาษโบว์ชัวด์
http://www.praphas.com/index.php/2008-11-03-14-25-25/36-2008-11-04-15-15-34/78-toner-transfer

เทคนิคนี้ใช้ได้ดีเฉพาะพิมพ์ด้วยเครื่องพิมพ์เลเซอร์ สำหรับใช้วิธีการถ่ายเอกสารอาจไม่ประสบความสำเร็จ เนื่องจากเครื่องถ่ายเอกสารมีความร้อนสูงทำให้หมึกละลายลงกระดาษมันได้
เมื่อกัดปริ้นเสร็จ ทำการล้างหมึกที่ติดแผ่นปริ้นออกด้วยทินเนอร์
หน้า: 1 ... 8 9 [10]