Tag Archives: Arduino

BPI-GSM module บอร์ด IoT มี GSM ต่อเครือข่ายมือถือในตัว จากผู้สร้าง Banana Pi

Banana Pi นอกจากจะสร้างบอร์ดคอมพิวเตอร์จิ๋วแล้ว เหมือนจะมาจับตลาดบอร์ด Internet of Things (IoT) ด้วยครับ โดยสร้างบอร์ด BPI-GSM module มี Simcom SIM808 เป็น GSM module รองรับ Quad-band 850/900/1800/1900MHz

ใช้ไมโครคอนโทรลเลอร์ ATmega2560 ของ Atmel แบบเดียวกับที่ใช้ใน Arduino Mega 2560 ซึ่งมีหน่วยความจำ 256 KB flash, 8KB RAM, 4KB EEPROM ในตัว เท่ากับบอร์ดนี้ทำงานได้ด้วยตัวมันเองเลยไม่ต้องต่อกับคอมพิวเตอร์จิ๋วอีก การควบคุมสั่งการ GSM module ก็ผ่าน serial port ด้วยคำสั่ง AT ซึ่ง ATmega2560 ก็มีถึง 4 serial port ในตัว

และก็มี I/O แบบดิจิทัล 54 ขาให้ใช้งาน และบนบอร์ดยังมีจอแสดงผลแบบ OLED, ตัววัดอุณหภูมิความชื้น DHT22 และมีแบตเตอรี LiPo มาให้กับตัวบอร์ด ราคา 64 ดอลลาร์ (อาจจะแพงไปนิดนะครับ)

ที่มา https://bananapi.gitbooks.io/bpi-accessories/content/bpi-gsmmodule.html ผ่านทาง http://www.cnx-software.com/2016/04/07/bpi-gsm-arduino-compatible-board-integrates-a-gsm-gps-module-sensors-and-an-oled-display/

ปล. links blog เนื้อหาเกี่ยวกับ การสร้างเครื่องเก็บข้อมูลอุณหภูมิและความชื้น
http://hug-hed.blogspot.com/2016/01/Free-Code-Datalogger-Humid.html

และอาจต้องมีรีเลย์ ถ้าจะควบคุมโรงเรือนการเกษตรแบบปิด

UDOO X86 คอมพิวเตอร์จิ๋วใช้ชิป Intel มี Arduino 101 ในตัว มาขอระดมทุน

UDOO ผู้สร้างบอร์ดคอมพิวเตอร์จิ๋ว เปิดตัวครั้งแรกด้วยบอร์ด UDOO ตามมาด้วย UDOO Neo และล่าสุดคราวนี้ได้ออก UDOO X86 ใช้ชิป Intel สถาปัตยกรรม x86 สี่แกน มาเป็นหน่วยประมวลในส่วนของคอมพิวเตอร์ และใช้ Intel Curie แบบเดียวกับที่ใช้ใน Arduino 101 มาทำเป็นไมโครคอนโทรลเลอร์ โดยขอระดมทุนที่ Kickstarter

UDOO X86 มีให้เลือกสองแบบคือ Basic และ Advanced ในส่วนของคอมพิวเตอร์ ใช้หน่วยประมวลผลจาก Intel แบบสี่แกนสำหรับเครื่องพีซี ขนาด 14 นาโนเมตร (Quad Core 64-bit new-generation x86 processors made by Intel, designed for the PC domain. Prodigious processors concentrated in 14 nm) ไล่ดูรายละเอียดแล้ว จะใช้แบบ Braswell โดยแบบ Basic เป็น Atom x5-E8000 เร็ว 2GHz มี RAM 2GB และแบบ Advanced ใช้ Celeron N3160 เร็ว 2.24GHz มี RAM 4GB ทั้งสองแบบระายความร้อนด้วย heat sink ปราศจากพัดลม มีช่องต่อจอ HDMI หนึี่งช่องและ miniDP สองช่อง ต่อจอภาพ 4K ได้สามจอพร้อมๆ กัน มี eMMC 8GB บนบอร์ด ใช้บูตได้ หรืิอจะบูตจาก microSD card, LAN, USB 3, SATA หรือ M.2 SATA ก็ได้ ระบบปฏิบัติการก็ใช้ของที่รองรับ x86 ได้ เช่น Windows, Linux หรือ Android

ในส่วนของไมโครคอนโทรลเลอร์ ทำงานได้เหมือน Arduino 101 เพราะใช้ชิป Intel Curie เหมือนกัน โดยต่อผ่านทาง USB port ไปยังส่วนที่เป็นคอมพิวเตอร์บน UDOO X86 เพื่อใช้งาน และจะใช้ Arduino 101 ในการเปิดคอมพิวเตอร์ (wake up) ก็ได้ มีหัวต่อกับบอร์ดต่อขยายแบบ Arduino 101 Shield ได้ ซึ่งใช้ลอจิกแบบแรงดันไฟฟ้า 3.3 โวลต์ (สามารถทนแรงดัน 5 โวลต์ได้) มี Bluetooth low energy และตัววัดความเร่งสามแกนและไจโรสโคปสามแกน (รวม 6 แกน)

ราคาระดมทุนที่ได้บอร์ดเริ่มต้นที่ 89 ดอลลาร์สำหรับแบบ Basic และ 109 ดอลลาร์สำหรับแบบ Advanced ถ้าเพิ่มเงินให้ทุน ก็จะมีของอื่นๆ มาเพิ่มด้วย (เช่น กล่องใส่ Acrylic, adapter 12v 3A, SDD) ถ้าจะเทียบกับตัวเลือกอื่นๆ ก็มี เช่น Jaguarboard ที่ถูกกว่านี้เล็กน้อยแต่ GPIO ก็มีน้อยและไม่มี Arduino มาให้ในตัว หรือ Intel NUC ซึ่งรุ่นใหม่ๆ ก็ใช้ชิป Core i5 กันเลยทีเดียว พลังประมวลผลมากขึ้น แต่ราคาก็สูงตามด้วย (Braswell ก็มี) และ GPIO อาจไม่ได้มีมากมายสำหรับ Maker หรือ Tinkerer อีกเจ้าก็คือ ASRock Beebox ก็มาเป็นกล่องเช่นกัน มี SSD มาให้ด้วย ในส่วนของ ASRock ก็มี mainboard ที่มี Braswell และ heat sink ในตัว เช่น N3050 หรือ N3150 ขนาดบอร์ดใหญ่ขึ้น มีช่อง PCIx ให้ด้วย แต่แหล่งจ่ายไฟที่ต้องการอาจไม่ใช่ 12v นะครับ และอีกเจ้าก็คือ MinnowBoard Max แต่ราคาถึง 139 ดอลลาร์

ตอนนี้ระดมทุนได้เกินเป้า 100,000 ดอลลาร์แล้วครับ ต้องเรียกว่าทำได้ถึงเป้าในชั่วข้ามคืน เพราะเมื่อคืนยังได้ประมาณห้าหมื่นดอลลาร์อยู่เลย สอยอีกที ดีไหม มีเรื่องให้เสียเงิน (มาดอง) อีกแล้ว

ที่มา https://www.kickstarter.com/projects/udoo/udoo-x86-the-most-powerful-maker-board-ever/description?lang=en

Windows 10 บนสมารต์โฟน ใช้กับ Arduino

Microsoft มาเล่นกับ Arduino บ้างแล้วครับ มีสองอย่างคือ Windows Remote Arduino และ Windows Virtual Shields for Arduino

อย่างแรก Windows Remote Arduino ใช้ Windows ควบคุม Arduino จะว่าไปมันก็คือ Firmata ที่ให้โปรแกรมบนคอมพิวเตอร์เครื่องอื่นเข้าใช้งาน pin ของ Arduino เสมือนว่าเป็น pin ของมันเอง โดยงานนี้เป็น Firmata สำหรับ Visual Studio ในตัวอย่างนั้นใช้ StandardFirmata ใน Examples ที่ติดมากับ Arduino IDE อยู่แล้ว

อย่างหลัง Windows Virtual Shields for Arduino เป็นการทำให้มือถือ Windows Phone ทำหน้าที่เป็น shield หรือบอร์ดต่อขยายของ Arduino อาจดูคล้ายๆ ADK ของ Android โดยที่ Arduino จะใช้ Virtual Shields library ประกอบในการเขียนโปรแกรม sketch ส่วนที่มือถือ ก็ใช้โปรแกรมที่เขียนบน Visual Studio 2015 การต่อกับมือถือจะผ่าน Bluetooth นะครับ ที่ Arduino จึงต้องมี Bluetooth module แบบที่ต่อผ่านทาง serial port ด้วย

คลิปจาก Windows IoT แสดงการนำ Arduino ต่อกับมือถือ Windows Phone (ผ่านทาง Bluetooth) และ LED strip ซึ่งสว่างตามการสั่งงานผ่านมือถือ

ใช้งาน Codebender เขียนโปรแกรมลง Arduino ผ่านเว็บได้เลย

เคยลอง codebender แบบสั้นๆ ไปครั้งหนึ่ง แต่ตอนนั้นบรรยายภาษาอังกฤษ คราวนี้บรรยายไทยบ้าง โดย codebender เป็นเว็บที่ใช้เขียนโปรแกรม Arduino sketch บนหน้าเว็บแล้วส่งขึ้น Arduino ทางหน้าเว็บได้เลย มีปุ่มที่ทำงานได้เหมือน Arduino IDE มาก ส่วน library ที่มีมาให้ก็เยอะน่าจะครบกับหลายๆ งาน โดยไม่ต้องติดตั้งเอง

การใช้งานก็ไปที่เว็บ codebender เพื่อสมัครและพิมพ์ (เขียน) โปรแกรมตามต้องการ หรือใช้โปรแกรมของคนอื่น เช่น https://codebender.cc/sketch:108498 และอาจต้องทำการติดตั้ง plug-in บน browser เพื่อให้ browser นั้นใช้งาน serial port ได้ โดยจะมี link ให้กดครับ หลังจากนั้นก็เลือกแบบของ Arduino (ของผมเป็น Leonardo) และ serial port (ของผมเป็น COM7) ให้ถูกตัว แล้วกด Run on Arduino

ถ้า log in เข้าไป จะมีให้เลือก programmer ได้ด้วย หรืออาจไปที่หน้า https://codebender.cc/how_it_works โดยไม่ต้อง log in แต่ต้องกด next ไปเรื่อยๆ เพื่อให้จบการสาธิต

ถ้าใช้ Linux อาจต้องการสิทธิ์ในการเข้าถึง serial port ด้วยคำสั่ง gpasswd ดูวิธีการได้ที่ http://feedback.codebender.cc/knowledgebase/articles/388068-using-arduino-on-linux

ต่อ Arduino Shield หลายตัว ระวังขาตีกัน

เอาทั้ง Ethernet Shield ซึ่งมีช่องต่อ SD card ในตัว มันใช้งานผ่านพอร์ต SPI และ LCD Shield ที่ใช้จอแบบ 1602 และปุ่มกดที่ต่อกับ analog input มาต่อซ้อนกันใช้บน Arduino แต่เจอปัญหาว่าขาที่ใช้เลือกอุปกรณ์ SPI ว่าจะเป็น Ethernet หรือ SD card ขา 4 และ 10 ถูกใช้ร่วมกับขาของจอ LCD ใครจะต่อแบบนี้ต้องระวังด้วยนะครับ สงสัยต้องจัมป์สายจอเอง

เปิดตัว UDOO Neo บอร์ดคอมพิวเตอร์จิ๋ว มี ARM Cortex-A9 และ Cortex-M4 ในตัว ขอระดมทุนที่ Kickstarter

คอมพิวเตอร์จิ๋ว UDOO ที่เคยระดมทุนสำเร็จเมื่อราวสองปีที่แล้ว คราวนี้มาขอระดมทุนทำ UDOO Neo ที่พลังประมวลผลอาจดูลดลงไปจากรุ่นแรกอยู่บ้าง แต่ก็ลดราคาจำหน่ายลงไปได้ โดยยังใช้หน่วยประมวลลผลจาก Freescale แต่เปลี่ยนไปใช้ชิป i.MX 6SoloX ซึ่งบรรจุซีพียู ARM Cortex-A9 เร็ว 1GHz (คอร์เดียว) ใช้เป็นคอมพิวเตอร์จิ๋ว และ ARM Cortex-M4 เร็ว 166MHz เป็นไมโครคอนโทรลเลอร์ เรียกได้ว่า two-in-one กันเลย เมื่อเทียบกับ UDOO รุ่นแรก ที่ชิปคอมพิวเตอร์กับไมโครคอนโทรลเลอร์แยกกัน

มีสองรุ่นที่ออกมา คือ UDOO Neo การเชื่อมต่อมี Ethernet และ Wi-Fi 802.11 b/g/n รวมถึง BT 4.0 (Classic Bluetooth และ Bluetooth Low Energy) มี motion sensor 9 แกน คือตัววัดแรงเฉื่อย ไจโรสโคป และเข็มทิศ (IMU) ในส่วนของการแสดงผลมีช่องต่อจอ HDMI และ LVDS สำหรับต่อจอแบบสัมผัส โดยราคาระดมทุนสำหรับผู้ที่มาก่อนที่ 45 ดอลลาร์ ส่วนอีกรุ่นคือ UDOO Neo Basic รุ่นตัดทอน มีแรมเพียง 512 MiB ไม่มี Ethernet และ motion sensor โดยราคาระดมทุนสำหรับผู้ที่มาก่อนคือ 35 ดอลลาร์

สำหรับช่องต่ออื่นๆ ที่น่าสนใจที่ทั้งสองรุ่นมีเหมือนกัน ก็มีช่อง CSI ใช้ต่อกับกล้อง มีช่องต่อ MicroSD card (ต่อ SDIO ได้) มี I2S และ SPDIF เพื่อเล่นเสียงดีๆ มี analog input จำนวน 6 ช่อง มี USB 2.0 และ OTG อย่างละหนึ่ง การต่อที่มักพบในระบบไมโครคอนโทรลเลอร์ มี 3x UART, 2x CAN Bus, 8x PWM, 1x I2C และ 1x SPI เดาว่าที่ PWM มีมากถึงแปดและ UART ที่มีถึงสาม คงเป็นเพราะตัวไมโครคอนโทรลเลอร์ Cortex-M4 ที่ติดมา

ในส่วนของ software จะมีระบบปฏิบัติการทั้ง Linux ที่เป็น kernel 3.10 มาในโฉมของ UDOObuntu ซึ่งก็คือ Ubuntu ที่ใช้กับเครื่อง UDOO และ Android Kitkat 4.4.3 แบบ Vanilla Android ไม่มีการปรับแต่งเสริมเพิ่มเติม

ที่มา http://www.udoo.org/udoo-neo-is-on-kickstarter-get-the-35-or-45-early-bird-now/

ปล. UDOO รุ่นแรกก็สอยมาแล้ว คราวนี้ เอาอีกดีไหม ตอนนี้ระดมทุนสำเร็จไปแล้วในเวลาไม่น่าจะถึงวัน

ทดลอง ESP8266 Arduino IDE

มีข่าวว่ามีคนนำเอา Arduino IDE ซึ่งใช้เขียนโปรแกรมลง Arduino สามารถใช้พัฒนาโปรแกรมให้กับ ESP8266 Wi-Fi module งานนี้ไม่ใช่การทำ shield ที่เป็น ESP8266 ให้กับ Arduino นะครับ แต่มองได้ว่าเป็นการเขียน sketch ให้เอาไปรันได้บน ESP8266 ได้

แนวทางมาจากเว็บ Ayarafun นะครับ แต่ของผมจะใช้รุ่น ESP1 ซึ่งต้องร้อยสายเองแทนการใช้ NodeMCU ที่มี ESP8266 และ USB to serial พร้อมทั้งแหล่งจ่ายไฟ 3.3 โวลต์ทีี่ให้กำลังไฟเพียงพอ อยู่ในบอร์ดเดียวกัน สามารถต่อกับ USB ของคอมพิวเตอร์ได้เลย ผมเลยหาแหล่งจ่ายไฟแรงดัน 3.3 โวลต์จาก Raspberry Pi มาจ่ายเลย และต่อ USB to serial ใช้ไอซี CP2102

นอกจากไฟเลี้ยงและ ground แล้ว (ground ต้องต่อร่วมกัน ทั้งตัว ESP8266, RPi และ USB to serial) ก็ต่อขา TX เข้ากับขา TX ของ CP2102 USB to serial ส่วนขา RX ก็เช่นกัน และขา CH_PD ของ ESP8266 ต่อกับไฟ 3.3 โวลต์ และสุดท้ายขา GPIO0 ต้องต่อลง ground เพื่อให้รับการเขียนโปรแกรมใหม่บน ESP8266 (ไม่งั้นอาจเจอ error: espcomm_open failed)

จากนั้นในส่วนของโปรแกรม IDE ก็สามารถไปดาวน์โหลดแบบที่คอมไพล์แล้วได้เลยแค่แตกซิปที่ https://github.com/esp8266/arduino เมื่อเปิด IDE ขึ้นมา ไปที่เมนู Tools เลือก Programmer เป็น esptools เลือก Board เป็น Generic ESP8266 board เลือก Port เป็นพอร์ตของ USB to serial ที่เครื่องเห็น (แต่ละเครื่องคอมพิวเตอร์อาจไม่เหมือนกัน และอาจต้องติดตั้ง driver) การ upload โปรแกรมลง ESP8266 ผมลองไฟกระพริบตามโค้ดข้างล่าง ถ้า upload ไม่ได้ผลก็ reset ด้วยการชอร์ตขา reset ไปยังไฟ 3.3 โวลต์ ซึ่งเมื่อ reset สำเร็จ จะเห็นไฟ LED สีน้ำเงินสว่างวาบสั้นๆ

const int ledPin =  2;      // the number of the LED pin
 
void setup() {
  // initialize the LED pin as an output:
  pinMode(ledPin, OUTPUT);
}
 
void loop() {
    digitalWrite(ledPin, HIGH);
    delay(300);      
    digitalWrite(ledPin, LOW);
    delay(300);  
}

ถ้า upload สำเร็จ ก็น่าจะได้ผลลัพธ์คล้ายๆ รูปข้างล่างนี้ และถ้าเอาขาบวกของ LED ไปแตะกับขา GPIO2 (อีกขาของ LED ไปต่อ ground) ก็จะเห็นไฟกระพริบครับ
esp8266-arduino-ide-blink