รู้จักไมโครคอนโทรลเลอร์และการเขียนโปรแกรมขั้นพื้นฐาน

Page 1

ร้ ู จักไมโครคอนโทรลเลอร์ และการเขียนโปรแกรมพืน้ ฐาน รองศาสตราจารย์ธีรวัฒน์ ประกอบผล คณะวิทยาศาสตร์ สถาบันเทคโนโลยีพระจอมเกล้าเจ้าคุณทหารลาดกระบัง Email : kpteeraw@kmitl.ac.th

L/O/G/O


เนือ้ หา 1

ความรู้พนื ้ ฐานเกี่ยวกับการจัดกิจกรรม

2

รู้จักไมโครคอนโทรลเลอร์

3

การนาไมโครคอนโทรลเลอร์ ไปใช้ งาน

4

การเขียนโปรแกรมให้ ไมโครคอนโทรลเลอร์

5

การประยุกต์ ใช้ ไมโครคอนโทรลเลอร์ www.themegallery.com


ตัวอย่างการจัดกิจกรรม •

สร้ างกิจกรรมที่เน้ นการเรียนรู้ การรวมความคิด การแก้ ปัญหาจากหลากหลายรายวิชา เช่ น การ สร้ างหุ่นยนต์ จากไมโครคอนโทรลเลอร์ , การ ทดลองกับตัวตรวจวัด , การเชื่อมต่ อ คอมพิวเตอร์ เบือ้ งต้ น ใช้ ICT เป็ นตัวเชื่อมโยงกิจกรรม

www.themegallery.com


www.themegallery.com


ปั ญหาที่พบสาหรั บเด็กไทย อยากจะต่ ออย่ างเดียว • ไม่ คดิ แบบวิทยาศาสตร์ •

เป็ นเด็กเล็กไม่วา่ กัน ถ้ าคิดจะดีขึ ้น

www.themegallery.co

www.themegallery.com


ระบบควบคุมอัตโนมัติ ฟิ สิกส์ , เคมี, อื่น ๆ

อินพุต

เขียนโปรแกรมคอมพิวเตอร์

ระบบควบคุม อัตโนมัติ

เอาต์ พุต


วิชาพืน้ ฐานการสร้ างหุ่นยนต์ การสร้ างหุ่นยนต์ มีโครงสร้ างวิชาหลัก ๆ ดังต่ อไปนี ้ วิทยาศาสตร์ ประยุกต์

ระบบวัด

ระบบควบคุม คอมพิวเตอร์

www.themegallery.com


เล่นกับ LED ทาได้ ง่ายเมือ่ ใช้ uc

สร้ างวงจร Timer ควบคุมจังหวะเวลา

ขับหลอด LED ได้ มากขึน้ ต่ อกับพอร์ ตโดยตรง

www.themegallery.com


สร้ างโครงงานได้ ง่าย ๆ เครื่องวัดอุณหภูมิอย่ างง่ าย แสดงผลทาง LED 7 ส่ วน 2 หลัก ส่ งข้ อมูลแบบอนุกรม ใช้ สัญญาณน้ อย

วัด

ประมวลผล

แสดงผล www.themegallery.com


การใช้ งานไมโครคอนโทรลเลอร์

ตัวตรวจรู้

หน่ วยแสดงผล

สวิตซ์

LED / LCD

A/D Real Time clock

uC

หน่วยความจา ROM & RAM

พอร์ ตอินพุต เอาต์พตุ

D/A

ลาโพง

ตัวนับ ตัวจับเวลา หน่วยทางานพิเศษอื่น ๆ www.themegallery.com


คุณลักษณะของไมโครคอนโทรลเลอร์ • • •

• •

มีไมโครโปรเซสเซอร์ เป็ นส่ วนประกอบ มีหน่ วยความจาโปรแกรมและข้ อมูลอยู่ภายใน มีตัวนับตัวจับเวลา มีวงจรแปลง A/D และ D/A อยู่ภายใน สามารถโปรแกรมพอร์ ตให้ ใช้ งานเป็ นอินพุต หรื อเอาต์ พุตได้ เชื่อมต่ อกับอุปกรณ์ ดจิ ติ อลได้ ง่าย www.themegallery.com


ไมโครคอนโทรลเลอร์ ชนิดต่ าง ๆ ที่นิยมใช้ กันมีหลายตระกูล เลือกใช้ ได้ ตามความเหมาะสม

• • • • •

Z-80 ไมโครโปรเซสเซอร์ MCS-51 ไมโครคอนโทรลเลอร์ PIC มีให้ เลือกหลายเบอร์ หลายขนาด AVR มีความเร็วสู ง ARM นิยมใช้ ในโทรศัพท์ ,PDA , เครื่องคิดเลข

www.themegallery.com


ไมโครคอนโทรลเลอร์ ตระกูล PIC เป็ นอีกตระกูลหนึ่งที่น่าสนใจ

มีให้ เลือกหลายเบอร์ พิจารณาว่ าต้ องการพอร์ ตเท่ าไร หน่ วยความจาเท่ าไร มีwww.themegallery.com คาสั่งมากหรือไม่


มีเครื่องโปรแกรมและชุด พัฒนาเฉพาะ เขียนได้ หลายภาษา

www.themegallery.com


การนาไมโครคอนโทรลเลอร์ไปใช้งาน • ต่อไฟเลี้ ยง • ให้สญ ั ญาณนาฬิกา • วงจรรีเซต • ต่ออุปกรณ์ภายนอกเพิ่มเติม • เขียนโปรแกรม


วงจรรีเซต

ต่ อไปเลีย้ ง

สัญญาณนาฬิกา

ต่ ออุปกรณ์ ภายนอกเพิ่มเติม


การเขียนโปรแกรมสาหรั บไมโครคอนโทรลเลอร์

เขียนด้ วยภาษาแอสแซมบลี • เขียนด้ วยภาษาระดับสูง • แปลงเป็ นรหัสภาษาเครื่ อง • โปรแกรมลงไปบนชิป •

MOV R1 , 12H int x,y;MOV R2 , 23H x = 4; MOV A , R1 AA: y = 5; ADD A , R2 x011011001100110110101 = x+ y; 20H , A MOV P1 = x; 110011110010110010111 INC R2 P2 = y; 010111000001110110111 INC R1 JMP AA

ปั จจุบันไมโครคอนโทรลเลอร์ ใช้ หน่ วยความจา โปรแกรมประเภท Flash Memory ทาให้ โปรแกรม ได้ หลายครัง้ และโปรแกรมโดยไม่ ต้องถอดออกจากวงจรได้ (In-System Programmable) www.themegallery.com


บอร์ ต OBEC • • • • • •

ใช้ ไมโครคอนโทรลเลอร์ เบอร์ 89G516 หน่ วยแสดงผลแบบ LED 7 ส่ วน 8 หลัก สแกนด้ วยชิป พอร์ ตต่ อตัววัดอุณหภูมิ DS18S20 มีไอซีฐานเวลาจริง (RealTime Clock) เบอร์ วงจรสื่อสารอนุกรมแบบ RS232/RS485 ตัวต้ านทานปรับค่ าได้ แบบ TRIMPOT 25 รอบ สาหรับ A/D จานวน 2 ชุด ขนาด 5k และ 50k • วงจร DC อินพุตแบบ Opto-Isolate (Active Low) ทีส่ ามารถเลือกเป็ น 5,12 โวลต์ ได้ มีรีเลย์ สาหรับเชื่อมต่ อกับภายอก • ขั้วต่ อสาหรับรับข้ อมูลจาก Sensor ขนาด 12 โวลต์ • พอร์ ตเชื่อมต่ อกับพอร์ ตของชิป www.themegallery.com

www.themegallery.com


ลาโพง

หน่วยแสดงผลตัวเลข 8 หลัก

สวิตซ์ รีเซต

ไมโครคอนโทรลเลอร์

รีเลย์

RS232

www.themegallery.com


การทดลองนาสัญญาณอนาลอกเข้ าไปประมวลผลอย่ างง่ าย หากต้ องการใช้ บอร์ ดทดลองจาลองการทางานของระบบทีร่ ับสัญญาณอนาลอกเข้ าไป ประมวลผลตามเงือ่ นไขทีก่ าหนดแล้วให้ เอาต์ พุตออกมา สามารถใช้ ส่วนประกอบของบอร์ ตทดลองได้ ดงั รู ปต่อไปนี้ Microcontroller +5

ตัวต้ านทานปรับ ค่าได้

LED 8 หลอด หรือแสดงตัวเลข

แรงดันไฟฟ้าระหว่าง 0 ถึง +5 โวลต์ www.themegallery.com


การทดลองกับวงจรแปลงสัญญาณอนาลอกเป็ นดิจติ อล การทดลองระบบควบคุมอุณหภูมอิ ย่ างง่ าย เตาควบคุมอุณภูมิ Microcontroller

Output

Heater

Output

Fan

Sensor

Input

www.themegallery.com

www.themegallery.com


การเชื่อมต่ อกับคอมพิวเตอร์ แสดงผลตัวเลข

Microcontroller

Output Heater

Output

Output

Fan

Output

Sensor

Buzzer

Input

RS232-485

Key

PC

www.themegallery.com


การแสดงผลทางหลอด LED •

• • •

สามารถต่ อกับพอร์ ตได้ โดยตรง ง่ าย หนึ่งหลอดหนึ่งบิต ทดสอบโปรแกรมได้ ง่าย ต้ องพิจารณาการขับกระแสของพอร์ ตด้ วย

www.themegallery.com


พอร์ ตของ 89G516 จุดต่อภายนอก

• มีพอร์ ต 4 พอร์ ต • บางบิตโปรแกรมเป็ นอินพุตหรือเอาต์ พุตได้ หลายแบบ • การใช้ งานต้ องพิจารณาโครงสร้ างภายในด้ วย

www.themegallery.com


ตัวนับตัวจับเวลา • •

รั บสัญญาณนาฬิกาภายนอก เป็ นตัวนับ รั บสัญญาณนาฬิกาภายใน เป็ นตัวจับเวลา

www.themegallery.com


การทดลองที่ 1 แสดงผลทางบิตพอร์ ต • นาหลอด LED มาต่ อ แล้วเขียนโปรแกรมส่ งค่าลอจิก ออกมา “0” หรือ “1” ออกมา หน้ าที่ของเราต้ องเขียนโปรแกรมอ่ านทีละบิตออกมา

uC

PORT P1

sbit sbit sbit sbit sbit sbit sbit sbit

P10 P11 P12 P13 P14 P15 P16 P17

= = = = = = = =

P1^0; P1^1; P1^2; P1^3; P1^4; P1^5; P1^6; P1^7;

P10 P11 P12 P13 P14 P15 P16 P17

= = = = = = = =

1; 0; 1; 0; 1; 0; 1; 0;

www.themegallery.com


การทดลองที่ 2 แสดงผลเป็ นตัวเลข • นาหลอด LED 7 ส่ วนมาต่ อกัน 8 หลัก ใช้ MAX7219

หลัก

uC

• dis_num_digi(x , y);

• dis_num(x );

ตัวเลข

• disclear(); หน้ าที่ของเราต้ องเขียนโปรแกรมส่ งค่ าไปให้www.themegallery.com กับฟั งก์ ชันแสดงผล


การทดลองที่ 3 นาฬิ กา • เขียนโปรแกรมติดต่ อกับชิปฐานเวลาจริง หน่ วยแสดงผล

uC

setrtc(d, mo, y, h, mi, se)

ไอซีฐานเวลาจริง dis_rtc() rt_rtc(m)

www.themegallery.com หน้ าที่ของเราต้ องเขียนโปรแกรมอ่ านค่ าเวลาออกมาเป็ นรหัส BCD แล้ วนามาแสดงผล หรือใช้ งาน


การทดลองที่ 4 ตัววัดอณ ุ หภูมิ • ใช้ ชิป DS18S20 ที่ให้ ผลลัพธ์ ออกมาเป็ นแบบดิจติ อล หน้ าที่ของเราต้ องเขียนโปรแกรมอ่ านทีละบิตออกมา

DS18S20

uC GND

Vcc

ส่งข้ อมูลแบบดิจิตอล 16 บิต

อุณหภูมิ +85 +125 +25.0 +0.5 0 -0.5 -25.0

ดิจติ อล Hex 0000 0101 0101 0000 0550H 0000 0000 1111 1010 00FAH 0000 0000 0011 0010 0032H 0000 0000 0000 0001 0001H 0000 0000 0000 0000 0000H 1111 1111 1111 1111 FFFFH www.themegallery.com 1111 1111 1100 1110 FFCEH


การนาหุ่นยนต์ มาเป็ นเครื่ องมือจัดการเรี ยนรู้ • เป็ นสื่อการสอนให้ นักเรียนได้ ฝึกคิดสร้ างสรรค์ • กระตุ้นให้ เด็กเกิดความคิด จินตนาการ การเรี ยนรู้ ความอยากรู้ และลงมือทา • ทาให้ เด็กชอบวิทยาศาสตร์ เพราะครู นาการทดลองมาให้ ทา • ไม่ ได้ เป็ นการสอนตามหลักสูตรแกนกลาง แต่ เป็ นการสอนเสริ มในเรื่ องต่ าง ๆ • การเรี ยนจะไม่ สมบูรณ์ หากครู ไม่ เป็ นผู้กระตุ้นให้ เกิดคาถาม และแนะนาเด็ก • เป็ นเครื่ องมือจัดกิจกรรมการสอนแบบองค์ รวม • เป็ นเครื่ องมือในการออกแบบการจัดการเรี ยนรู้ แบบเน้ นผู้เรี ยนเป็ นสาคัญ

www.themegallery.com


เนือ้ หาแยกเป็ นช่ วงชัน้ ธรรมชาติของเด็กประถม ชอบเรียนรู้ ชอบเล่ น ชอบทาสิ่งใหม่ ๆ ที่ ตนเองไม่ เคยทามาก่ อน ช่ วงชัน้ ที่ 1

ช่ วงชัน้ ที่ 2

ช่ วงชัน้ ที่ 3

รู้จกั การสร้ างสิ่งประดิษฐ์ อย่ างง่ ายโดยใช้ อุปกรณ์ พนื ้ ฐาน เข้ าใจการต่ อวงจรไฟฟ้า การต่ อแบตเตอรรี การควบคุม มอเตอร์ การสร้ างหุ่นยนต์ อย่ างง่ าย

รู้จักองค์ ประกอบและโครงสร้ างของหุ่นยนต์ วงจรสวิตซ์ การควบคุมมอเตอร์ เซนเซอร์ อย่ างง่ าย หลักการแก้ ปัญหา โดยใช้ ภาษาโลโก้

เขียนโปรแกรม เชื่อมโยงกับงาน วิทยาศาสตร์ www.themegallery.com


เนือ้ หาแยกเป็ นชัน้ ปี •

ป.1 สร้ างสิ่งประดิษฐ์ ห่ นุ ยนต์ จากวัสดุเหลือใช้ เช่ น แกนกระดาษทิชชู กระดาษสี กระดาษแข็ง หลอดกาแฟ กระดาษกาว เพื่อสร้ างเป็ นตัว หุ่นยนต์ ขนาดเล็ก ป.2 การต่ อวงไฟฟ้า การต่ อถ่ านไฟฉาย การต่ อหลอดไฟ การต่ อมอเตอร์ เป็ นพัดลม สร้ างหุ่นยนต์ อย่ างง่ ายโดยมีมอเตอร์ เป็ นส่ วนประกอบ เช่ น หุ่นยนต์ โดเรมอนมีใบพัด ป.3 วงจรขนาน การต่ อมอเตอร์ สองตัว การสร้ างหุ่นยนต์ อย่ างง่ าย นา สิ่งประดิษฐ์ จาก ป1 มาประกอบเพื่อตกแต่ งหุ่นให้ ดสู วยงาน


• ป.4 การต่ อวงจรมอเตอร์ ให้ สามารถหมุนได้ สองทิศทาง มีไฟแสดงการ เดินหน้ า ถอยหลัง อุปกรณ์ ทใี่ ช้ เป็ นดังนี้


• ป.5 รู้ จกั โครงสร้ างหุ่นยนต์ รู้ จกั เซนเซอร์ อย่ างง่ าย วงจรสวิตซ์ สาหรับ ควบคุมให้ มอเตอร์ หมุนซ้ ายขวา สร้ างหุ่นยนต์ แบบชนแล้ วถอยหลังได้ เอง นา ไมโครคอนโทรลเลอร์ มาใช้ โดยโหลดโปรแกรมตัวอย่ างเพือ่ ทดลองใช้ งาน

• ป.6 การแก้ ปัญหา การวิเคราะห์ การทางาน การออกแบบโปรแกรมอย่ างง่ าย เขียนโปรแกรมด้ วยภาษาโลโก้

www.themegallery.com


วิชาพืน้ ฐานการสร้ างหุ่นยนต์ การสร้ างหุ่นยนต์ มีโครงสร้ างวิชาหลัก ๆ ดังต่ อไปนี ้ วิทยาศาสตร์ ประยุกต์

ระบบวัด

ระบบควบคุม คอมพิวเตอร์

www.themegallery.com


องค์ ประกอบของหุ่นยนต์ อย่ างง่ าย ภาคเชนเซอร์

จ่ าย พลังงาน

ภาคควบคุม

ภาคเคลื่อนไหว

หุ่นยนต์ ตามที่ออกแบบขึน้ www.themegallery.com


มอเตอร์ •

แปลงพลังงานไฟฟ้าเป็ นพลังงานกล

[ Image information in product ]  Image : www.opanas.com  Note to customers : This image has been licensed to be used within this PowerPoint template only. You may not extract the image for any other use.

www.themegallery.com


ภาคจ่ ายไฟ ภาคจ่ ายไฟเป็ นส่ วนที่ให้ พลังงานกับหุ่นยนต์ แบบเตอรรี่ แบตเตอรรี่ซงิ ้ ค์ คาร์ บอน แบตเตอรรี่อลั คาไลท์ แบตเตอรรี่นิเกิลแคดเมียม นิเกิลเมทัลไฮไดร แบตเตอรรี่ลิเทียมไอออน

หม้ อแปลงไฟฟ้า • ใช้ ไฟบ้ าน • ใช้ หม้ อแปลงไฟฟ้า

แผงเซลแสงอาทิตย์ พลังงานขึน้ กับขนาดของ เซล

• เรกกูเลตเตอร์

www.themegallery.com


แบตเตอรรีชนิดต่ าง ๆ

www.themegallery.com


ขัน้ ตอนการสร้ างหุ่นยนต์ ออกแบบสร้ างและทดสอบ เลือกวัสดุอุปกรณ์ ท่ ตี ้ องนามาใช้ เขียนแบบโครงร้ างของหุ่นยนต์

วิเคราะห์ ความต้ องการของงาน Description of the products www.themegallery.com


ตั้งคาถามจากหุ่นยนต์ แรงบิดเท่าไร

1.

แรงบิด

4. ควบคุมการ

ควบคุม

รอบ

ทางานได้ อย่างไร

5. กินพลังงาน

2. รอบการหมุนเป็ น

พลังงาน

เท่าไร

เท่าไร

3. จะควบคุม

ทิศทางได้ อย่างไร

ทิศทาง www.themegallery.com


ครูต้องตัง้ ปั ญหา •

ระบบนีช้ ่ วยทดแรงได้ อย่ างไร

www.themegallery.com


www.themegallery.com


ระบบเครื่ องมือวัด 1. ตรวจจับ

การทางาน สอดคล้ องกัน

แสดงผล

3.

2. ปรั บแต่ ง

www.themegallery.com


ระบบเครื่องมือวัด ( Instrumentation System ) •

ตรวจจับ ( Transducer ) : วัดปริมาณทางฟิ สิกส์ เช่ น ปริมาณความร้ อน ความเข้ มของแสงสว่ าง ความดังของเสียง การ เปลี่ยนแปลงของแม่ เหล็กไฟฟ้า ค่ าอุณหภูมิ ค่ าความดัน

ปรับแต่ ง ( Signal processing Unit ) : เปลี่ยนแปลงค่ าให้ ดยี ่ งิ ขึน้ เช่ น ค่ าแรงดันไฟฟ้า (V) หรือ ค่ ากระแสไฟฟ้า ( I ) ที่ส่งมาจากตัวตรวจจับ อาจจะมากหรือน้ อย แล้ วให้ ไฟฟ้าออกมาใช้ งาน

แสดงผล ( Record & Display ) : แสดงค่ าที่วัดได้ ให้ เห็น เช่ น มิเตอร์ แสดงผลเป็ นเข็มชีท้ ่ แี ผงหน้ าปั ทม์ หรือ เป็ นตัวเลขแบบดิจิตอล

www.themegallery.com


ระบบเครื่องมือวัด ( Instrumentation System ) LT TT LT PT

DSPU DSPU : Digital Signal Processing Unit

www.themegallery.com


การจัดการเรียนการสอนในโรงเรียน  จัดในหลักสูตรการงานอาชีพและเทคโนโลยี  จัดเป็ นกิจกรรมพัฒนานักเรียน

 จัดเป็ นโครงการสอนเสริมเพิ่มศักยภาพ

www.themegallery.com


การจัดกิจกรรมด้านวิชาการ  วางรากฐานวิทยาศาสตร์ คณิตศาสตร์ท่ จี าเป็ น  ฝึ กทักษะกระบวนการคิดวิเคราะห์

 ใช้ทฤษฏีการสร้างความรูด้ ว้ ยตนเอง  ฝึ กแก้ปัญหาโจทย์ดว้ ยตนเอง  ครูผูส้ อนควรทาวิจยั ควบคู่กบั การเรียนการสอน


ปัจจัยที่ส่งผลต่อความสาเร็จ ครูวิทยาศาสตร์ และคอมพิวเตอร์ 

ครูผูส้ อน ต้องเข้าใจถึงวัตถุประสงค์  นักเรียน ต้องรักที่จะทาหุ่นยนต์  ผูบ้ ริหาร ต้องสนับสนุ น  ผูป้ กครอง ต้องคอยชี้ แนะอย่างถูกต้อง


ทิศทางการพัฒนาการเรียนรู้เทคโนโลยีห่นุ ยนต์ ในระดับการศึกษาขั้นพื้นฐานของประเทศ  รู จ ้ กั ระบบการวัด  รูจ้ กั ระบบควบคุม  รูจ้ กั การเขียนโปรแกรมคอมพิวเตอร์ ใช้ หุ่นยนต์และสิ่ งประดิษฐ์เป็ นเครื่ องมือ

ส่ งเสริ มกระบวนการพัฒนาทักษะกระบวนการคิด พัฒนาเทคโนโลยีใหม่ ส่ งเสริ มการพั ฒนาทักษะกระบวนการคิดแก้ปัญหา และสิ่ งประดิษฐ์ที่มีใช้งานได้จริ ง www.themegallery.com


Thank you! www.themegallery.com

L/O/G/O


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.