มาเล่น Line Beacon กัน

ช่วงนี้มีบทความเกี่ยวกับ Line Beacon เยอะมาก และก็เป็นเรื่องที่ดีมากๆ ที่ทาง Line API Expert มีบทความดีๆ ออกมาอธิบายทำให้เริ่มต้นได้ง่ายมากขึ้น แนะนำให้ติดตามอ่านกัน เช่น ลองเล่น LINE Beacon แบบไม่ต้องใช้ Device จริง
นอกจากจะมีบทความดีๆ แล้ว ยังมีเครื่องมือดีๆ อีกเยอะ เช่น Line simple beacon ที่ใช้เครื่อง notebook ทำตัวเป็น beacon แทน ไม่ต้องใช้ beacon จริงๆ ก็ได้ ลองกดไปติดตามดูกันได้ นอกจากนี้ยังมี package เพิ่มสำหรับ micro:bit ทำให้ micro:bit เป็น Line Beacon ให้ได้ด้วย

หรือจะใช้ ESP32 มาทำเป็น Line Beacon ก็ได้เช่นกัน ลองอ่านจาก blog ของ Line Engineering ได้ เอาเป็นว่าหลังจากนี้ Line กับ Internet of Things มาผนวกกันแน่นอน
มาลองเขียน ChatBot Beacon กัน fork โครงการ line-bot-nodejs-starter จาก github มา
git clone https://github.com/kamnan43/line-bot-nodejs-starter.git
ตัวโค้ดจะเป็น Boilerplate แบบเข้าใจง่าย ดูโค้ดในส่วน switch case ตรง beacon จะมีการรับค่า direct message จาก webhook มาเราสามารถเอาค่านี้มาใช้งานต่อได้ เช่น hardware id ที่มี event เดินเข้าหา beacon ให้แสดงข้อความ aaa เดินออกจาก beacon ให้แสดงข้อความ bbb เป็นต้น
ตัวอย่าง Line Beacon ChatBot ส่งข้อความตลกๆ ของ Chuck Norris

แปะวิดีโอ Usecase ของโรงพยาบาลไว้ให้ดูเผื่อได้ไอเดีย

สั่งงาน Arduino ผ่าน Bluetooth โดยใช้ SerialCommand กัน

เคย blog เรื่อง สั่งงาน Arduino ผ่าน Bluetooth ไปบ้างแล้ว จำได้ว่าใช้ตัวอย่างจาก ArduDroid ซึ่งน่าจะเข้าใจง่าย แต่ก็พบว่ามันไม่ง่ายเท่าไร T_T ก็เลยมาอัพเดทเพิ่มเติม Arduino มี Library ที่น่าสนใจอยู่ตัวนึงชื่อ SerialCommand Library นี้ทำหน้าที่เป็น Token Parser ให้ เรียกว่าไม่ได้เขียน Parse ข้อมูลเอง เพียงแค่กำหนดคำสั่งและให้ไปทำหน้าที่อะไรผ่าน call back ยกตัวอย่างเช่น สั่ง ON ให้เรียก function เปิดไฟ สั่ง OFF ให้เรียก function ปิดไฟ เป็นต้น นอกจากนี้ยังสามารถ parse argument ที่ต่อจากคำสั่งได้ด้วย มาลองเล่นกัน

ต่อ Bluetooth Module ให้เรียบร้อย แล้ว flash โค้ดตัวอย่างดังนี้
Continue reading

ตั้งค่า HC-05 Bluetooth Module ด้วย AT Command ภาค 2

ผมซื้อ Bluetooth Module HC-05 มาใหม่ 3 ตัว ก็เลยจับมาตั้งชื่อใหม่จะได้ไม่สับสน สังเกตดูพบว่า module ที่ผมได้มีมันมี switch สำหรับเข้าโหมด setting อยู่ด้านข้าง กดปุ่มแล้วเข้า setting mode ได้เลย ไม่ต้องต่อสายเข้า pin 34 เพื่อสั่งเข้า setting mode อีกต่อไป ใครเคยอ่าน blog ตอนเก่าๆ เรื่องตั้งค่า HC-05 Bluetooth Module ด้วย AT Command กันมาแล้ว อยากให้มาลองดูวิธีใหม่กันดูบ้าง รับรองว่าง่ายมากๆ Bluetooth Module HC-05 หน้าตาเป็นแบบนี้ครับ


Continue reading

มาเล่น Arduino Robot ควบคุมด้วย Android App Bluetooth Joystick กัน

เมื่องาน OSSFestival 2014 ที่ผ่านมา มี workshop เกี่ยวกับ Arduino DIY ได้รับความสนใจมากจากหลายคนที่สนใจด้าน OpenSource Hardware ซึ่งโครงการอย่าง Arduino และ Raspberry Pi เป็นโครงการ OpenSource Hardware ที่ประสบความสำเร็จมาก เรียกได้ว่าใช้เครื่องมือทุกอย่างที่เป็น OpenSource ในการทำงานได้ ตั้งแต่การประกอบแบบ DIY,Arduino Bootloader สำหรับ Burn ลงในชิบ ATMEGA328, IDE ที่ใช้เขียนโปรแกรมและระบบปฏิบัติการที่ใช้งานได้ เรียกได้ว่าใช้งานเครื่องมือแบบ OpenSource ได้ในทุกกระบวนการเลยทีเดียว ดีจัง 🙂 ใน workshop ได้แนวคิดหลายอย่าง ไม่ว่าจะเป็นบอลลูนติด Arduino ควบคุมด้วย Remote Control แบบ Infra Red หรือการใช้งาน Arduino DIY กับ RFID เป็นต้น เรียกได้ว่าทำได้หลายอย่างมากๆ
ในตอนแรกคิดว่าจะลองทำบอลลูนควบคุมด้วย Arduino แต่ต้องถอดใจก่อนเพราะไม่มีลูกโป่งและก๊าซฮีเลียม แนวคิดนี้ก็เลยขอพักไว้ก่อน ลองทำอะไรง่ายๆ ก่อนน่าจะดีกว่า อย่างเช่น Robot เอ่อ…ต้องเรียกรถ 2 ล้อน่าจะถูกกว่าเพราะมี 2 ล้อสำหรับควบคุมทิศทางและล้ออิสระอีก 2 ล้อเอาไว้พยุงตัวรถเท่านั้นเอง อุปกรณ์ที่ต้องใช้มีดังนี้ครับ

  • Robot Chassis Kit (Chassis + Motor + Wheel)
  • Arduino UNO
  • Motor Drive Shield (L298P)
  • Bluetooth Module HC-05
  • Battery ขนาด AA 6 ก้อน
  • Battery Box ขนาด AA 6 ก้อน

Continue reading

สั่งงาน Arduino ผ่าน Bluetooth กัน

ครั้งที่แล้ว blog เรื่องตั้งค่า HC-05 แต่ไม่ได้บอกว่าเอามาทำอะไร โปรเจคที่ใช้ Bluetooth ส่วนใหญ่จะใช้งานด้านการสื่อสารหรือส่งข้อมูลเป็นหลัก เพราะ HC-05 สามารถทำงานได้ 2 โหมด เป็น Server หรือ Client ได้ เราสามารถประยุกต์ใช้ Bluetooth Module มาเป็นช่องทางในควบคุมอุปกรณ์ระหว่างมือถือกับ Arduino โดยหลักการง่ายๆ ของการใช้ Bluetooth คือต้องมีการ pair อุปกรณ์เข้าหากัน หาก Arduino ของคุณต่อกับ Relay Board คุณก็สามารถสั่งงานผ่าน Mobile App ได้ ก่อนจะถึงการควบคุม Relay มาดูวิธีการสื่อสารแบบง่ายๆ กันก่อน ต่อ Bluetooth Module กับ Arduino ดังภาพ

จากนั้นสั่งอัพโหลดโค้ดดังนี้

Continue reading

ตั้งค่า HC-05 Bluetooth Module ด้วย AT Command

มีหลายท่านถามเรื่อง Bluetooth เข้ามาไม่ได้เกี่ยวข้องกับการใช้งานเลย แต่เป็นเรื่องของชื่อ Bluetooth HC-05 เพราะค่ามาตรฐานใช้ชื่อว่า HC-05 ถ้ามีโปรเจคที่ใช้ Bluetooth มาก เวลาจะ pair อุปกรณ์ คุณก็จะเห็นชื่อ HC-05 เต็มไปหมด และไม่รู้ว่าจะต้อง pair HC-05 ตัวไหนกันแน่ วิธีการเปลี่ยนชื่อของ Bluetooth Module นี้ง่ายมาก เพียงแค่ส่งค่า HIGH ไปยังขา Key เพื่อบอกอุปกรณ์ให้เข้าสู่ Setting Mode จากนั้นก็สั่งงานผ่าน Serial Monitor เท่านั้น สำหรับคำสั่งต้องใช้คำสั่ง AT Command เท่านั้น ถ้าใครสนใจก็สามารถหาข้อมูลเพิ่มเติมได้ มาลงมือกัน Bluetooth Module กับ Arduino ตามรูป

ให้เอาสาย VCC ของ Bluetooth Module ออกก่อน จากนั้นอัพโหลดโค้ดข้างล่างเข้าไป

จากนั้นเสียบสาย VCC เข้าที่เดิม ให้สังเกตดูว่าไฟที่ Bluetooth Module กระพริบช้าลงประมาณ 2 วินาทีต่อครั้ง แสดงว่าเข้าสู่ Setting Mode แล้ว ให้เปิด Serial Monitor ขึ้นมา แล้วพิมพ์ AT กด Send จะได้ผลลัพท์เป็น OK ดังภาพ ถ้าไม่ได้ให้ดูการต่อวงจรใหม่อีกรอบ

เอาสาย VCC ออกแล้วเสียบเข้าไปใหม่ จากนั้นสั่งเปลี่ยนชื่อเป็น ARDUINO HOME ด้วยคำสั่ง AT+NAME=”ARDUINO HOME” จากนั้นเอาสาย VCC ออก เอาสาย Key ที่ Digital PIN 9 ออกแล้วเสียบสาย VCC เข้าไปใหม่ ไฟที่ Bluetooth Module จะกระพริบถี่ขึ้นเข้าสู่โหมดการใช้งานปกติ เปิด Bluetooth Manager ดูว่าชื่อเปลี่ยนไปหรือยัง
ชื่อเดิม

ชื่อใหม่

แก้ไขชื่อเรียบร้อยแล้วแบบนี้ก็ไม่หลงแล้วครับ 🙂

Plantronics Backbeat Go

ไปเดินเซ็นทรัลแจ้งวัฒนะอยู่หลายรอบ กว่าจะตัดสินใจซื้อหูฟังบลูทูธของ Plantronics รุ่น Backbeat Go เนื่องจากไม่มีร้านไหนให้ทดลองและทดสอบ พยายามเดินถามอยู่ 2 ร้าน เนื่องจากความไม่แน่ใจในเทคโนโลยีเคยซื้อหูฟังแบบนี้อยู่ 2 ยี่ห้อพบว่าสัญญาณขาดๆ หายๆ เสียงไม่เป็นสเตอริโอทำให้รู้สึกหงุดหงิดมาก และที่สำคัญทำหายทั้ง 2 ตัวเลย ครั้งนี้ก็เลยเลือกนานอยากทดลองทดสอบให้แน่ใจ สุดท้ายเดินไปร้าน Samsung ข้างๆ J-Mart ขอทดลอง Plantronics รุ่น Backbeat Go พนักงานร้านก็ให้บริการดีมาก เพราะผมไปเซ้าซี้อยากลองอยู่ 2 ครั้ง อีกอย่างผมซื้อ Galaxy Nexus จากร้านนี้ด้วย ยังไงก็ขอลองหน่อยนะ ไหนๆ ก็แกะกล่องแล้วถ้าถูกใจจะซื้อเลย พนักงานร้านเลยใจอ่อนแกะกล่อง Plantronics ให้ผมลองทันที หูฟังเป็นหน้าตาอย่างนี้ครับ
 

 
พอได้ทดลองแล้วพบว่าให้เสียงเกือบตรงต้นฉบับเพลง คือ Google Play Music ไม่มี EQ มาให้ดังนั้นเสียงเพลงจะแบนราบมีเสียงทุ้มเสียงแหลมนิดหน่อยซึ่งคุณภาพเสียงถือว่าใช้ได้ ก็เลยหา App Equalizer มาติดตั้งเพื่อปรับคุณภาพเสียงให้ดียิ่งขึ้น เรียกได้ว่าถูกใจมากครับ สำหรับ Plantronics Backbeat Go มีข้อเสียอยู่นิดหน่อยคือ เปิดเพลงฟังต่อเนื่องได้ 4.7 ชั่วโมง ส่วน Stand by ได้ 10 ชั่วโมง ซึ่งอาจดูน้อยกว่าหูฟังตัวใหญ่รุ่นอื่นและยี่ห้ออื่น สำหรับผมถือว่าพอใช้ครับ