ล้วงตับลากไส้แพลตฟอร์ม Arduino
ปัจจุบันที่ก้าวไปสู่อนาคต การศึกษาด้านเทคโนโลยีและแนวคิดในการสร้างนวัตกรรม เป็นภาวะจำเป็นที่ต้องปูพื้นฐานการศึกษาทุกระดับชั้นตั้งแต่ ชั้นประถม มัธยม อาชีวศึกษา หรือแม้แต่ระดับอุดมศึกษาก็ตาม ล้วนแล้วแต่มีเรื่องของโครงงานและนวัตกรรมเข้ามาเกี่ยวข้องเกือบทั้งสิ้น นั่นคือประเด็นหลักที่เราต้องตระหนักอย่างที่หลีกเลี่ยงไม่ได้
หัวใจหลักของการสร้างนวัตกรรมในปัจจุบันคือการศึกษา 3 เรื่องหลักนั่นคือ
1. Coding หรือการเขียนโปรแกรม
2. เทคโนโลยีการสื่อสาร 5G
3. วงจรอิเล็กทรอนิกส์
ดังนั้นระบบการศึกษารู้เรื่องนี้เป็นอย่างดี เลยนำพาการศึกษาเข้ามา ในรูปแบบของการแข่งขันนวัตกรรมระดับต่าง ๆ ไม่ว่าจะเป็นหุ่นยนต์หรือสิ่งประดิษฐ์ทั้งหลาย เพื่อตอบสนองการเรียนรู้ 3 เรื่องที่กล่าวมาข้างต้น
ไมโครคอนโทรลเลอร์คืออุปกรณ์อิเล็กทรอนิกส์ที่ตอบโจทย์ 3 หัวข้อข้างบนอย่างเข้ากันแบบลงตัวที่สุด เพราะเป็นทั้งอุปกรณ์ที่สามารถสั่งงานด้วยการเขียนโปรแกรมและสามารถติดต่อสื่อสารผ่านระบบไหนก็ได้ ไม่ว่าจะเป็นการใช้สายหรือไร้สายแบบต่าง ๆ ไม่เว้นแต่ระบบ 5G
Arduino คือแพลตฟอร์มไม่ใช่ ไมโครคอนโทรลเลอร์ ที่สามารถเขียนโปรแกรมสั่งงานไมโครคอนโทรลเลอร์ได้อย่างหลากหลายทั้ง AVR, ST, ESP ที่สามารถสร้างนวัตกรรมได้อย่างง่ายดายเพื่อตอบโจทย์การเรียนรู้อย่างเป็นระบบ
สุเมธ มามาตย์
กุมภาพันธ์ 2567
โดยมีเนื้อหาดังต่อไปนี้....
บทที่ 1 โครงสร้างการทำงาน Arduino IDE………………………………….11
1.1 ตามรอยเส้นทาง Arduino กับการสร้างนวัตกรรม
1.2 โปรแกรม Arduino และการติดตั้งโปรแกรม
1.3 ข้อมูลตัวช่วยเหลือในแพลตฟอร์ม Arduino
1.4 เมนูการใช้งานที่จำเป็นของ Arduino IDE
1.5 การสร้างนวัตกรรมบนแพลตฟอร์ม Arduino
แบบตามรอยยาก
บทที่ 2 ไมโครคอนโทรลเลอร์และระบบควบคุมอัตโนมัติ......................15
2.1 ไมโครคอนโทรลเลอร์และไมโครโปรเซสเซอร์
2.2 โครงสร้างภายในและภายนอกของ MCU
2.3 องค์ประกอบการมีชีวิตของไมโครคอนโทรลเลอร์
2.4 ไมโครคอนโทรลเลอร์ค่ายต่าง ๆ
ค่าย Microchip AVR ATmega8, ATmega168, ATmega328
ค่าย ST STM8, STM32
ค่าย Espressif ESP8266, ESP32
บทที่ 3 อินเตอร์เฟสและการเชื่อมต่อ...................................................19
3.1 การต่อวงจรรับส่งข้อมูลแบบดิจิทัลแบบขนาน
3.2 การต่อวงจรรับส่งข้อมูลแบบอนาล๊อก
3.3 วงจรและการรับส่งข้อมูลแบบอนุกรมชนิด Serial
3.4 วงจรและการรับส่งแบบเส้นเดียว One Wire
3.5 วงจรและการรับส่งข้อมูลแบบอนุกรมชนิด SPI
3.6 วงจรและการรับส่งข้อมูลแบบอนุกรมชนิด I2C
บทที่ 4 การโปรแกรมข้อมูลเบื้องต้น.....................................................23
4.1 หลักการเชื่อมต่อระหว่างคอมพิวเตอร์กับ MCU เพื่อโปรแกรม
ข้อมูลลงไปบนตัว MCU
4.2 การเชื่อมต่อขาชุดโปรแกรมเข้ากับไมโครคอนโทรลเลอร์ตระกูล
AVR เช่นเบอร์ ATmega8, ATmega168, ATmega328
4.3 การเชื่อมต่อขาชุดโปรแกรมเข้ากับไมโครคอนโทรลเลอร์ตระกูล
STM8 STM32
4.4 การเชื่อมต่อขาชุดโปรแกรมเข้ากับไมโครคอนโทรลเลอร์ตระกูล
ESP8266 และ ESP32
บทที่ 5 เส้นทางในการพัฒนานวัตกรรมบนแพลตฟอร์ม Arduino…….31
5.1 คำสั่งและเครื่องมือช่วยเหลือ
5.2 การติดตั้งบอร์ดเพิ่มเติมและการใช้งาน
5.3 แนวทางในการสร้างนวัตกรรมโดยใช้ Arduino แพลตฟอร์ม
5.4 โปรแกรมที่ใช้ในการสร้างนวัตกรรม
5.5 เทคนิคการสร้างบอร์ดเพื่อใช้งานเอง
5.6 ตัวอย่างการออกแบบบอร์ดควบคุมอเนกประสงค์พร้อมลาย PCB
บทที่ 6 โปรแกรม Simulation……………………………………………………..35
6.1 โปรแกรม Proteus กับการจำลองวงจรด้านนวัตกรรม
6.2 การทดลองวงจรโดยไม่ต้องมีบอร์ด Arduino
6.3 การเขียนวงจรเพื่อทำการทดลองวงจรดิจิทัลอินพุทเอาท์พุท
6.4 การแฟลชโปรแกรมตัวไมโครคอนโทรลเลอร์ด้วย Proteus
6.5 การเขียนวงจรควบคุมมอเตอร์
6.6 การเขียนวงจรเพื่อการแสดงผล LCD
บทที่ 7 เทคนิคการแฟลชโปรแกรมและการทำบูตโหลดเดอร์.................39
7.1 การต่อใช้งานอุปกรณ์เพื่อทำการอัพโหลดเฟอร์มแวร์
7.2 วงจรและการต่อเพื่อโปรแกรมบูตโหลดเดอร์
7.3 การประกอบวงจรเครื่องโปรแกรม MCU
7.4 การใช้งานเครื่องโปรแกรม MCU AVR ตระกูล ATmega
บทที่ 8 Coding คำสั่งที่ใช้ในการเขียนโปรแกรมภาษาซี.......................43
8.1 ประวัติภาษาซี
8.2 โครงสร้างภาษาซี
8.3 คำสงวนหรือคีย์เวิร์ดของภาษาซี
8.4 โอเปอร์เรเตอร์
8.5 การดำเนินการทางคณิตศาสตร์
8.6 การดำเนินการทางตรรกศาสตร์
8.7 คำสั่งในภาษาซี
8.8 การเขียนฟังก์ชั่นในภาษาซี
บทที่ 9 การเขียนโปรแกรมบนแพลตฟอร์ม Arduino…………………….79
9.1 โปรแกรมทดสอบอุปกรณ์เอาท์พุท LED, Relay
9.2 โปรแกรมเพื่อการทดสอบอินพุท
9.3 โปรแกรมรับค่าอนาล๊อก
9.4 โปรแกรมสร้างสัญญาณความถี่ และ PWM
9.5 โปรแกรมเพื่อควบคุมมอเตอร์ DC Motor
9.6 โปรแกรมเพื่อแสดงผลบนจอ LCD
9.7 โปรแกรมแสดงผลแบบ 7-Segmet
9.8 โปรแกรมเพื่ออ่านค่าอุณหภูมิจาก DS18B20
9.9 โปรแกรมเพื่ออ่านค่าจาก DHT22
9.10 โปรแกรมเพื่ออ่านค่าระยะทางด้วย Ultrasonic
9.11 โปรแกรมควบคุม Servo Motor
9.12 การบันทึกเสียงและการแปลงไฟล์เป็น MP3
9.13 โปรแกรมอ่านค่า MP3
9.14 วงจรและโปรแกรมเทคนิคการวัดแรงดันไฟฟ้า 0-1000V
9.15 การเชื่อมโยงโปรแกรมแบบหลาย Libraries
บทที่ 10 การออกแบบโปรเจคและการเขียนโปรแกรม.......................85
10.1 เครื่องจ่ายเจลอัตโนมิตพูดได้
10.2 ถังขยะพูดได้
10.3 ประตูเปิดปิดอัตโนมัติ
10.4 เครื่องวัดปริมาณน้ำ
ภาคผนวก........................................................................................89
A. EP1 การใช้งาน Proteus ตอนที่ 1
B. EP2 การใช้งาน Proteus ตอนที่ 2
C. EP3 การใช้งาน Proteus ตอนที่ 3
D. EP4 ไมโครคอนโทรลเลอร์
E. EP5 การสื่อสารอนุกรม RS232
D. EP6 ทดลองวงจรและโปรแกรม ตอนที่ 1
E. EP7 ทดลองวงจรและโปรแกรม ตอนที่ 2
F. EP8 ทดลองวงจรและโปรแกรม ตอนที่ 3
G. EP9 ทดลองวงจรและโปรแกรม ตอนที่ 4
H. EP10 การสร้างสินค้าต้นแบบ ด้วย PCB ชนิด 2 หน้า ตอนที่ 1
I. EP11 การสร้างสินค้าต้นแบบ ด้วย PCB ชนิด 2 หน้า ตอนที่ 2
J. EP12 การสร้างสินค้าต้นแบบ ด้วย PCB ชนิด 2 หน้า ตอนที่ 3
K. EP13 การสร้างสินค้าต้นแบบ ด้วย PCB ชนิด 2 หน้า ตอนที่ 4
L. EP14 การสร้างสินค้าต้นแบบ ด้วยPCB ชนิด 2 หน้า ตอนที่ 5
M. EP15 การสร้างสินค้าต้นแบบ ด้วยPCB ชนิด 2 หน้า ตอนที่ 6
N. EP16 การเตรียมการเพื่อทำต้นแบบ PCB ชนิด 2 หน้า
O. EP17 ขั้นตอนการผลิต PCB แบบ 2 หน้า
P. EP18 การลงอุปกรณ์ทดสอบบอร์ดและการเบิร์นบูตโหลดเดอร์
Q. EP19 พื้นฐานการออกแบบเซ็นเซอร์
R. EP20 ตัวอย่างโปรเจคเครื่องจ่ายเจลอัตโนมัติพูดได้