MyProject

ฟังเสียงทวิตๆ Twitter จาก Arduino – ตอนที่ 1

By July 24, 2009 January 30th, 2011 One Comment

หลังจากที่สงสัยมานานว่า twitter มัน คืออะไร ทำไมมีแต่คนพูดถึง ทั้งนิตยสารหลายๆเล่มก้อเอามาพูดถึง วิทยุก้อมีพูด? ถ้านั่งอ่าน ไม่สัมผัสเอง ไม่เข้าใจแน่ๆครับ ไอ้เรื่องแบบนี้ ต้องลองสัมผัส? จะเข้าใจง่ายกว่า

หลังจากได้ลอง ผมก้อพอจะสรุปได้ว่า? twitter มันคืออะไร? มันก้อคือ micro-blog? คือการบล๊อค ด้วยข้อความสั้นๆ โดยเสน่ห์ของ twitter ที่ผมสัมผัสมา คือมันง่ายมากครับ ใช้ email ,sms จะใช้ web หรือโปรแกรม app อื่นๆ มันก้อส่งข้อความได้ โดยผู้ที่จะรับข้อความของเรา ก้อแค่มา following เราครับ ซึ่งทางเราจะอนุญาติ หรือไม่อนุญาติให้ติดตามก้อได้

อย่างในบล๊อคของไอยาราฟันส์ ผมก้อเอาไว้ update ว่ามีบทความใหม่แล้ว สมาชิกมาอ่านกันได้ หรือไว้ ส่ง? link ที่น่าสนใจ กับคำอธิบาย สั้นไว้อ่านต่อ หรือให้เพื่อนๆที่สนใจ เอาไปอ่านต่อครับ? ตัวอย่างในเวปของเรา ก้อดูขวามือได้ครับ

บางคน ก้อมีทั้ง webblog ทั้ง micro-blog (อย่างผม มีหมด สงสัยจะบ้าไปแล้ว โชดดีที่ไม่ได้ไปติดเกมส์ใน facebook อีก) แล้วมันต่างกันอย่างไง ส่วนมากการใช้งาน? twitter จะเป็นการส่งข้อความแบบปัจจุบัน เรื่องที่เกิดขนาดนั้น? แต่ webblog จะเป็นบันทึกที่ผ่านมาแล้ว อย่างเช่น เดินผ่านเจอหนังสือน่าสนใจ ถ่ายรูป ส่งเข้าข้อความ twitter แล้วกลับมาก้อ มาเขียน review ต่อ

ด้วยการใช้งานที่ง่าย twitter จึงเป็นรูปแบบ blog ที่กำลังมาแรง สำหรับ ผมมองว่า การส่งข้อความทำเน็ทได้ หรือการรับข้อความจากที่ใดก้อได้ในโลก โดยใช้ app ของ twitter มีประโยชน์มาก เราจะสามารถประยุกต์การใช้ไมโครกับ เครื่อข่ายอินเตอร์เน็ท ให้ใช้งานมีประโยชน์ได้ และ ทำให้สิ่งประดิษฐ์ เราสือสารกับเราง่ายขึ้น

(รุปประกอบจาก Hack Twitter to Control Electronics ,hacknmod.com)

สำหรับไอเดียที่ลองทำอุปกรณ์ไฟฟ้าควบคุมผ่าน internet โดยมี twitter เป็นส่วนกลางครับ มีหลากหลายครับ? อย่างเช่น

  • เอาไว้ทำป้ายโฆษณา ข่าวสั้น ผ่าน twitter หรืออย่างเช่น Ganzbot เขาทำหุ่นยนต์อ่าน rss จาก twitter คอมพิวเตอร์จะวิเคราะห์อารมณ์ของข้อความ ส่งมาหน้าตา มาที่หุ่นยนต์
  • ใน Botanicalls เป็นอุปกรณ์ gadget ช่วยปลูกต้นไม้ มันจะมี sensor ไว้ตรวจสอบว่าน้ำในกระถางต้นไม้แห้งเกินไป มันจะส่งข้อความ กล้บมาหาเราผ่าน twitter ไอเดียเริ่มกระฉูดอีกรอบ แล้วใช่ไหมครับ

ใครยังนึกไม่ออกว่าเอาไปประยุกต์กับอุปกรณ์อิเล็กทรอนิกส์อย่างไง เข้าไปชมตัวอย่างที่ Silicon Craft วีดีโอบล็อค ของทางผมนะครับ? กับอีกที่ Hack Twitter to Control Electronics

เริ่มต้นสร้างกันเลยครับ

หลังจากหาข้อมูลจากใน อินเตอร์เน็ท มาสักแป็บ โดยใช้ keyword ว่า +arduino? +twitter จะพบข้อมูลเยอะมาก ผมจะเอาที่ผมรู้จักเยอะๆหน่อย จะได้เริ่มง่ายครับ ตัวอย่างของโปรแกรมผม จึงเริ่มจาก arduino-based-rss-reader-with-lcd เป็นตัวอ่าน arduino เข้าจอ LCD ครับ

โดยการทำงานของจะมีสองส่วน

  1. ส่วนแรกคอมพิวเตอร์ กับ internet ส่วนแรก เราก้อใช้ประโยชน์ของคอมพิวเตอร์ ที่มันต่อเน็ทได้แล้ว และไว้รันโปรแกรม python สำหรับรับข่าวจากเวป ส่งข้อความ (TEXT) เข้ามาที่บอร์ด arduino ผ่าน Serial port (เอาแค่ส่งข้อความ serial port สบายมาก) ดังนั้นโปรเจคแรกนี้ เป็นแค่ศึกษาว่า Arduino กับ ดึงข้อมูลมาได้อย่างไงครับ
  2. ส่วน i/o ใช้ arduino จะมีหน้าที่แสดงผลครับ เอาข้อความมาแสดง ลักษณะการทำงานครับ ของตัวโปรแกรมจะรับข้อมูลจาก serial จะส่งข้อมูลเข้าจอ LCD

ส่วนของคอมพิวเตอร์

สำหรับคอมพิวเตอร์ สิ่งที่ผมเพิ่มเติม เขียนโปรแกรมที่เอา ข้อความจากเวป มาเข้าบอร์ดผ่าน serial โดยผมใช้ python กับ module ชื่อ feedpaeser เป็นตัวดึงข้อมูลจากเวปไซค์ได้ และ pySerail เอาไว้ส่งข้อมูลผ่าน serial

Python เป็นภาษาใหม่ครับหลายๆคนอาจจะไม่คุ้น แต่จิง มันแอบฝั่งตัวเองไว้ในโปรเจค opensource หลายๆตัวครับ อย่างscript ใน openoffice, blender 3D ต่อไปท่านอาจจะได้เห็นบทบาทของ python มากขึ้นครับ

โดย ตัวอย่าง โค๊ดอย่างง่ายๆ

import feedparser

  # feed comment for www.ayarafun.com
  feed = feedparser.parse("http://www.ayarafun.com/comments/feed/")

  #check total entries
  maxfeed = int ( len(feed['entries']) )

  #print header title page
  print feed.feed.title.encode('tis-620')
  print "**********************************\n"

  # print entries from feed
  for items in range(maxfeed):
       summary_entries=feed['entries'][items]['title']
       print '(' , (items+1) ,'/', maxfeed ,')'
       print len( summary_entries )
       print summary_entries.encode('tis-620']

หลังจากรันแล้วจะเห็นว่า python โปรเจค feed commnet เข้ามาแสดงใน console และเป็นภาษาไทยด้วย ซึ่งมาถึงส่วนนี้ คงจะเริ่มมีปัญหาเพิ่มแล้ว เพราะว่าจอ Char LCD ปกติ มันคงไม่แสดงผลภาษาไทยแน่ๆ เรียกว่า งานเข้า เอาเข้าไป ในส่วน hardware ผมจึงต้องสร้างจอแสดงผลภาษาไทยได้ครับ

screen-python-thai

รอบนี้ เอาแค่นี้ก่อนครับ เดี่ยวต่อตอนสอง ภาค hardware จะเป็นครั้งแรกในโลกกก ที่มี thai? twitter reader? ฮ่าๆ ถ้ามีฝรั่ง ทำให้เราสิจะแปลก 😀

chang

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

One Comment

Leave a Reply to anyware4green Cancel Reply