Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore IPST-SE@2016

IPST-SE@2016

Published by chayanat_komrod2521, 2019-10-25 03:13:56

Description: IPST-SE
เอกสารประกอบการสอนวิชาหุ่นยนต์อัตโนมัติ
ระดับชั้นมัธยมศึกษาตอนต้น (ม.1-ม.3)

โดย ครูชญาณัฏฐ์ คำรอด
โรงเรียนเบญจมราชูทิศ จังหวัดจันทบุรี

Search

Read the Text Version

11

การใช้งาน 22 กล่องสมองกล

หลกั การของระบบควบคมุ 3 อินพตุ ประมวลผล เอาตพ์ ตุ

ตวั อย่างระบบควบคมุ อย่างงา่ ยๆ 4 ระบบควบคมุ ของเครอ่ื งปรบั อากาศ ตรวจสอบการเปิ ด จากรีโมตหรือสวิตช์ สงั ่ ใหค้ อมเพรสเซอรท์ างาน เครื่องปรบั อากาศ ตรวจสอบอุณหภมู ิจาก มากกว่า เซนเซอร์ กบั คา่ ท่ีตง้ั ไว้ คา่ ที่ตง้ั ไว้ นอ้ ยกว่า ค่าที่ตง้ั ไว้ สงั ่ ใหค้ อมเพรสเซอรห์ ยดุ ทางาน

ชุดอปุ กรณ์ในชดุ IPST-SE มาตรฐาน 2 5

Analog/Digital USB (Download) I2C แบตเตอรี่ อแดปเตอร์ 6 เปิ ด/ปิ ด เซอรโ์ ว PORT DIGITAL

7 จอสี 128x160 จดุ ป่ มุ ปรบั knob RESET Serial1 มอเตอรไ์ ฟตรง สวิตช์ OK ไฟแบตอ่อน สวิตช์ SW1 PORT DIGITAL

โปรแกรมที่ใช้งาน 8 โปรแกรม wiring โปรแกรม Arduino

ติดตงั้ ซอฟตแ์ วร์ 9 Arduino1.0.7_Setup150326 ประกอบด้วย • ซอฟตแ์ วร์ Arduino 1.0.7 • ไลบรารี่ IPST-SE • ตวั อย่าง IPST-SE • ไดรเวอร์ USB

ติดตงั้ ซอฟตแ์ วร์ 10 1 23 4 หลงั จากนี้จะมี หน้าต่างติดตงั้ 5 ไดรเวอร์ ห้าม Cancel

ขนั้ ตอนติดตงั้ ไดรเวอร์ 11 เพื่อให้คอมพิวเตอรร์ จู้ กั กบั บอรด์ IPST-SE

เปิ ดโปรแกรมครงั้ แรก 12 เลือกบอรด์ IPST-SE โปรแกรม Arduino ถกู เปิ ด

ตรวจสอบว่าเลือกบอรด์ IPST-SE แล้ว 13

เชื่อมต่อกบั คอมพิวเตอร์ 14

เลือกพอรต์ อนุกรม 15 เลือก Serial Port ใหต้ รง

รปู แบบการทางานโปรแกรม Arduino 16 void setup() { สาหรบั กาหนดค่า เกิดขึน้ ครงั้ เดียว } void loop() { โปรแกรมหลกั ทางานต่อเนื่อง }

โฟลวชารต์ แสดงการทางานโปรแกรม Arduino 17 START ทางานใน Setup ทางานใน Loop

โปรแกรม ท่ี 1 18 #include <ipst.h> void setup() { glcd(0,0,\"Hello World\"); } void loop() { }

ตรวจสอบไวยกรณ์และอพั โหลด 19 Ctrl+R 3. อพั โหลดไปยงั IPST-SE Ctrl+U 1. คอมไพล์ 2. แจ้งว่าคอมไพลผ์ า่ น

ผลลพั ธท์ ่ีจอภาพ IPST-SE 20

คณุ สมบตั ิของจอภาพ GLCD 21

คาสงั่ GLCD 22 glcd แสดงข้อความที่จอ GLCD ได้ 21 ตวั 16 บรรทดั (size 1) รปู แบบ glcd(x,y,*p,...) พารามิเตอร์ x คือตาแหน่งบรรทดั มีค่าตงั้ แต่ 0-15 y คือตาแหน่งตวั อกั ษรมีค่าตงั้ แต่ 0-24 *p คือข้อความท่ีต้องการนามาแสดง ค่าพิเศษ %d แสดงตวั เลขจานวนเตม็ ในช่วง -32,768 ถึง 32,767 %h แสดงตวั เลขฐานสิบหก %b แสดงตวั เลขฐานสอง %l แสดงตวั เลขจานวนเตม็ ในช่วง -2,147,483,648 ถึง 2,147,483,647 %f แสดงผลตวั เลขจานวนจริง (แสดงทศนิยม 3 หลกั )

คาสงั่ อื่นๆ ของ GLCD 23 glcd setTextColor setTextBackgroundColor glcdClear glcdFillScreen glcdMode setTextSize glcdPixel glcdRect glcdFillRect glcdLine glcdCircle glcdFillCircle glcdArc

ค่าสีตวั อกั ษร 24 ตวั อย่าง GLCD_RED, GLCD_GREEN, #include <ipst.h> GLCD_BLUE, void setup(){ GLCD_YELLOW, GLCD_BLACK, setTextColor(GLCD_WHITE); GLCD_WHITE, glcd(0,0,\"Hello\"); GLCD_CYAN, setTextColor(GLCD_GREEN); GLCD_MAGENTA glcd(1,0,\"World\"); GLCD_ORANGE } GLCD_LIME void loop(){} GLCD_VIOLET GLCD_PINK setTextColor(COLOR) GLCD_DOLLAR GLCD_SKY INEX GLCD_BROWN GLCD_DARKGREEN GLCD_NAVY GLCD_GRAY GLCD_DARKGRAY

ปรบั ขนาดตวั อกั ษร 25 setTextSize() ขนาดตวั อกั ษรเป็น 4 เท่าขนาดปกติ ตวั อย่าง : setTextSize(4);

คาสงั่ ของ glcdMode (หมนุ หน้าจอ) 26 ปกติเป็น Mode 0 ตวั อย่าง : glcdMode(1);

ค่าสีพืน้ หลงั ตวั อกั ษร 27 ตวั อย่าง #include <ipst.h> void setup(){ setTextBackgroundColor(GLCD_RED); setTextColor(GLCD_YELLOW); glcd(0,0,\"Hello World\"); } void loop(){} setTextBackgroundColor(COLOR)

glcdClear() glcdFillScreen(COLOR) 28 เคลียรห์ น้าจอ เทสีลงบนหน้าจอทงั้ หน้า ตัวอย่าง #include <ipst.h> void setup(){} void loop(){ glcdClear(); delay(500); glcdFillScreen(color[0]); delay(500); glcdFillScreen(color[1]); delay(500); glcdFillScreen(color[2]); delay(500); }

แสดงรปู ทรงเรขาคณิต 29 glcdRect(x,y,width,height,color) glcdFillRect(x,y,width,height,color) glcdCircle(x,y,radius,color) glcdFillCircle(x,y,radius,color) glcdLine(x1,y1,x2,y2,color) x ตำแหน่งแนวนอน width ควำมกว้ำง y ตำแหน่งแนวตงั้ height ควำมสงู redius รศั มี color สี

แบบทดสอบ 1 30 สร้ำงวงกลมสีแดงอย่กู ึ่งกลำงจอภำพ รศั มีเตม็ จอพอดี

แบบทดสอบ 2 31 ลำกเส้น 4 เส้นโดยมีจดุ ตดั อย่กู ลำงจอภำพพอดี

แบบทดสอบ 3 32 สรำ้ งสี่เหลี่ยมซ้อนกนั ดงั รปู

การแสดงผลค่าตวั เลข 33 glcd(0,0,\"%d\",100);

ตวั แปร (ที่ใช้งานบอ่ ยๆ) 34 byte 0-255 (unsigned char) word 0-65535 (unsigned int) boolean 0-1 True False int -32768 ถึง 32767 char -128 ถึง 127 float -3.4 x 1038 ถงึ 3.4 x 1038 หาข้อมลู เพิ่มเติมจาก reference

หลอด LED เอาตพ์ ตุ ดิจิตอลอย่างงา่ ย 35

คาสงั่ ส่งค่าออกเอาตพ์ ตุ ดิจิตอล 36 out(ch,state); ส่งค่าสถานะ(state) 0 หรือ 1 ออกไปยังตาแหน่งขา (ch)ทรี่ ะบุ เช่น out(17,1);

ตวั อย่าง : ไฟกะพริบ 37 #include <ipst.h> void setup(){ } void loop(){ out(17,1); delay(100); out(17,0); delay(100); }

กาหนดเสียง : ลาโพงเปี ยโซ 38 • ใช้ลาโพงเปี ยโซ มีอิมพีแดนซ์ 32W • มีค่าความถี่ย่าน 300Hz ถงึ 3000 Hz K1 C1 SOUND 10/16V + S ZX-SPEAKER SP1 Piezo speaker

การต่อลาโพงเปี ยโซ 39 ZX-SPEAKER ต่อช่อง 16

คาสงั่ สร้างเสียง 40 beep : กาเนิดเสียงความถี่ 500 Hz นาน 100 มิลลิวินาที beep(ch); sound : กาเนิดเสียงตามความถี่และช่วงเวลาที่กาหนด sound(ch,freq,time); freq กำหนดคำ่ ควำมถเ่ี สยี ง time กำหนดชว่ งเวลำกำเนิดเสยี ง มลิ ลวิ นิ ำที

ตวั อย่าง : สรา้ งเสียง 1 41 #include <ipst.h> void setup(){ } void loop(){ beep(19); delay(1000); } สร้างสญั ญาณเสียงต๊ิดทุกๆ 1 วินาที (ความถ่ีเสียง 500 Hz ดงั นาน 0.1 วินาที)

ตวั อย่าง : สร้างเสียง 2 42 #include <ipst.h> void setup(){ } void loop(){ sound(19,1200,500); delay(1000); } สร้างสญั ญาณเสียงความถ่ี 1200 Hz ดงั นาน 0.5 วินาที เว้นทกุ ๆ 1 วินาที

สวิตช์ OK 43 กดเป็น True ไม่กดเป็น False

คาสงั่ sw_OK() 44 sw_OK() ตรวจสอบสวิตช์ OK บน IPST-SE 1 (True) เม่ือกดสวิตช์ 0 (False) เมื่อไม่กดสวิตช์ หมายเหตุ การกดสวติ ชท์ าใหค้ า่ ทอี่ ่านไดจ้ าก Knob มคี า่ เป็น 0 ตวั อย่าง if(sw_OK()) { beep(19); } ผลลพั ธ์ เมอ่ื กดสวติ ชม์ เี สยี งออกลำโพง

คาสงั่ sw_OK_press() 45 วนรอกดสวิตช์ OK เม่ือปล่อยสวิตช์ จะกระโดดไปทาคาสงั่ บรรทดั ถดั ไป ตวั อย่าง sw_OK_press(); beep(19); ผลลพั ธ์ : รอกดสวติ ช์ เมอื่ กดสง่ เสยี งออกลำโพง

ฟังกช์ นั่ OK() 46 1. แสดงข้อความที่หน้าจอ 2. รอจนกระทงั่ กดสวิตช์ OK 3. ทางานคาสงั่ ถดั ไป ตวั อย่าง #include <ipst.h> void setup(){ OK(); } void loop(){ }

สวิตช์ SW1 47

คาสงั่ sw1() 48 sw1() ตรวจสอบสวิตช์ SW1 บน IPST-SE 1 (True) เมอ่ื กดสวิตช์ 0 (False) เมอ่ื ไม่กดสวติ ช์ ตวั อย่าง if(sw1()) { out(17,1); }

คาสงั่ sw1_press() 49 วนรอกดสวิตช์ SW1 เม่อื ปล่อยสวิตช์ จะกระโดดไปทาคาสงั่ บรรทดั ถดั ไป ตวั อย่าง sw1_press(); beep(19); ผลลพั ธ์ : รอกดสวติ ช์ SW1 เมอื่ กดสง่ เสยี งออกลำโพง

แบบทดสอบ 4 50 เขียนโปรแกรม ใช้สวิตช์ OK เปิ ด ใช้สวิตช์ SW1 ปิ ด สวิตช์ OK และ SW1


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook