Arduino Shield

Arduino Shield

      Arduino ทุกเวอร์ชั่น (ยกเว้นพวกที่เป็น SMD และ เวอร์ชั่นที่ทำขึ้นกันเอง) 
จะถูกออกแบบให้มี Layout ของ Pin ต่างๆในรูปแบบเดียวกัน เพื่อให้สามารถใช้
อุปกรณ์เสริมหลายๆอย่างร่วมกันได้ โดยวิธี Plug n' play หมายถึงแค่เสียบลงไป
แล้วก็นำไปใช้งานได้เลย ทำให้อุปกรณ์เสริมที่นำมาใช้ต่อพ่วงร่วมกันเรียกว่า Shield 
ซึ่งหมายถึง เกราะ หรืออะไรประมาณนั้นประมาณว่า สวมเกราะเสร็จ ออกไปรบได้เลย

     เมื่อมีการนำอุปกรณ์มาต่อพ่วงก็ต้องพูดถึงการ เขียนโปรแกรม ... ซึ่งแน่นอน
บน Arduino (หรือบอร์ดที่เป็น Arduino Compatible อย่าง Intel Galileo) 
เราจะพึ่งการใช้งานจาก Libraryเป็นส่วนใหญ่ Shield ส่วนใหญ่จะพ่วงมาพร้อมกับ 
Library สำหรับใช้งานกับ Shield ของตนเอง เรียกว่า นอกจากจะแค่ Plug in 
เข้ามาแล้วยัง Play ง่ายๆด้วย Library ที่ให้มาด้วยเลย 
(งานนี้ไม่ต้องพึ่ง Cheat code กันเลยทีเดียว)

     Shield ส่วนใหญ่จะใช้ ICSP Connector ในการเชื่อมต่อกับ Arduino board 
(หรือ Galileo board) โดยเมื่อเชื่อมต่อ Shield แล้วเรายังสามารถใช้งาน 
Digital pin และ Analog pin บางอันได้อยู่ 
(หมายถึงว่า เราจะเสียการเชื่อมต่อบางอันไปให้ Shield ทำงาน)
ในปัจจุบันมีการออกแบบให้ Shield ใช้ทรัพยากรในการเชื่อมต่อกับบอร์ดน้อยที่สุด 
ทำให้สามารถเชื่อมต่อกับอุปกรณ์อื่นๆได้มากขึ้น


   สำหรับ Arduino นั้น Shield เป็นอุปกรณ์เสริมที่สำคัญ เพราะทำให้เราสามารถ 
"เล่นกับมัน" ได้มากขึ้น โดยเฉพาะ Shield ที่เป็นประโยชน์ต่อผู้เขียนมากก็คือ 
Ethernet Shield เพราะในยุคของ IoT (Internet of Things) 
อะไรก็เป็นการเชื่อมต่อ ผ่านระบบเครือข่าย เก็บข้อมูลไว้บน Cloud เสียหมด 
แต่บน Intel Galileo นั้น Ethernet Shield จะไม่มีความหมายอีกต่อไป 
เพราะถูกทดแทนด้วย Ethernet ที่ถูกฝังมาพร้อมกับบอร์ดอยู่แล้ว...

รายการ Library มาตรฐาน
EEPROM  สำหรับอ่านและเขียน สำหรับ หน่วยความจำ EEPROM
Ethernet  สำหรับการเชื่อมต่ออินเตอร์เน็ต โดยใช้ Arduino Ethernet Shield
Firmata  สำหรับการสือสารกับโปรแกรมบนคอมพิวเตอร์โดยใช้ serial protocol
GSM  สำหรับการเชื่อมต่อกับเครือข่าย GSM/GRPS ด้วย GSM Shield
LiquidCrystal  สำหรับการควบคุมการแสดงผลจอ LCD
SD  สำหรับการอ่านและเขียน SD การ์ด
Servo  สำหรับควบคุม มอเตอร์เซอร์โว
SPI  สำหรับการสือสารกับอุปกรณ์อื่นๆ ใช้ Serial Peripheral Interface (SPI)
Stepper  สำหรับการควบคุม สเต็ปเปอร์ มอเตอร์
TFT  สำหรับการแสดงผลตัวอักษร , รูปภาพ และ รูปทรงต่างๆ บน จอภาพ TFT
WiFi  สำหรับการเชื่อมต่อกับอินเตอร์เน็ต โดยใช้ Wifi Shield
วิธีการเพิ่มไลบรารี่ มาตราฐานใน โค้ดโปรแกรม
1.พิมพ์เอาเอง โดยสามารถพิมพ์ชื่อ ไลบรารี่โดยใช้คำสั่ง
#include <ชื่อไลบรารี่>
2.ใช้การเลือกจากเมนู Sketch -> Include Library -> ชื่อไลบรารี่ 
ซึ่งจะทำการเพิ่มไลบรารี่ให้โดยอัตโนมัติ
วิธีการติดตั้งไลบรารี่ใหม่
วิธีที่ 1 ใช้ Library Manager 

1.ไปที่เมนู Sketch -> Include Library -> Manage Libraries...

2.จะมีหน้าต่างแสดงรายการไลบรารี่ ที่ติดตั้งแล้วและยังไม่ได้ทำการติดตั้ง ซึ่งเราสามารถเลื่อนหารายการ ไลบรารี่ที่เราต้องการได้
3.Library ตัวไหนที่ติดตั้งเรียบร้อยแล้วจะแสดงคำว่า INSTALLED
4.เราสามารถพิมพ์ ค้นหาในช่องค้นหา เพื่อหาไลบรารี่ที่เราต้องการ ในที่นี้ให้พิมพ์ nokia จะแสดงรายการที่เราต้องการขึ้นมา และให้กดเลือกรายการนั้น จะมีปุ่ม Install เพื่อให้เราทำการติดตั้งไลบรารี่
วิธีที่ 2 ติดตั้งไลบรารี่แบบ .ZIP ไลบรารี่

1.ไลบรารี่บางตัวที่เราต้องการนำมาใช้ อาจจะอยู่ในรูปแบบของ .ZIP ไฟล์ 
ที่สามารถดาวน์โหลดได้จากอินเตอร์เน็ต เมื่อเราดาวน์โหลดมาแล้ว 
เราต้องทำการ อิมพอร์ตไลบรารี่มาไว้ในตัว IDE ก่อน ทำได้โดยไปที่เมนู 
Sketch ของตัว IDE Sketch -> Include Library -> Add .Zip Library...

2.แล้วทำการเลือกไฟล์ .zip ของไลบรารี่ที่เราโหลดมาจากอินเตอร์เน็ต
วิธีที่ 3 ติดตั้งด้วยตัวเอง

1.วิธีการนี้เมื่อเราทำการดาวน์โหลดไฟล์ ไลบรารี่มาแล้ว 
ซึ่งอาจะอยู่ในรูปแแบบของ .ZIP ไฟล์ หรือรูปแบบของไฟล์บีบอัดชนิดอื่นๆ 
เช่น .TAR, .RAR ให้เราทำการ ขยายไฟล์ให้เรียบร้อย
2.แล้วนำไปวางที่ C:\Program Files(x86)\Arduino\libraries\ เป็นอันใช้ได้
3.ตัวอย่างการเพิ่มไลบรารี่เอง : Tick Tock Shield

-ดาวน์โหลด Library ไฟล์ จาก http://www.seeedstudio.com/wiki/Tick_Tock_Shield_Kit -Unzip “Tick_Tock_Shield_libraries.Zip” จะได้ 4 โฟล์เดอร์
-คัดลอกทั้ง4โฟล์เดอร์ นำไปวางที่ C:\Program Files(x86)\Arduino\libraries\ -ปิดหน้าต่าง Arduino IDE ทุกหน้าต่าง แล้วเปิดใหม่จะปรากฏ Tick Tock Library ขึ้นมา

Tick Tock Shield

Real time clock shield เป็นชีลสำหรับการเริ่มต้นเรียนรู้ 
การเขียนโปรแกรมควบคุมอุปกรณ์ต่างๆที่หลากหลายและแตกต่างกันออกไป
เป็นชีลที่รวมหลายๆอุปกรณ์ไว้ในชีลเดียว 
ผู้ใช้จะได้เรียนรู้การเขียนโปรแกรมควบคุมส่วนต่างๆ 
เช่น หลอดไฟ LED, เสียง Buzzer, เวลา Real Time Clock, 
การแสดงผล 7-Segment, Input Buttons, Light Sensor,
Temperature Sensor เป็นต้น 
เหมาะสำหรับผู้เริ่มต้นการเขียนโปรแกรมหรือเริ่มต้นเรียนรู้ด้าน Microcontroller

Hardware Resources
•Coin Cell Holder: provides power to RTC IC when external power is off; •Buzzer: create audio effect; •Light Sensor: detect ambient light intensity; •Temperature Sensor: detect ambient temperature; •K1...K3: temporary buttons; •D1...D4: LEDs; •U3: DS1307, Real Time Clock IC; •U5: TM1636, 7-seg display driver IC.
Pins Used On Arduino
•D2: control LED1; •D3: control LED2; •D4: control LED3; •D5: control LED4; •D6: control buzzer; •D7: TM1636 SCLK pin; •D8: TM1636 DIO pin; • D9: control K1; •D10: control K2; •D11: control K3; •A0(D14): poll readings from temperature sensor; •A1(D15): poll readings from light sensor; •A4(D18): DS1307 SDA pin •A5(D19): DS1307 SCK pin

0 ความคิดเห็น:

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