107
โครงงานเลขทีวศ.คพ. 37/2557 เรื่อง การพัฒนาส่วนเสริมสาหรับชุดหุ่นยนต์เพื่อการเรียนรู้โกโกบอร์ด โดยใช้ Raspberry Pi นายมารุตพงค์ ไชยลังกา รหัส 540610639 โครงงานนีเป็นส่วนหนึ่งของการศึกษาตามหลักสูตรปริญญาวิศวกรรมศาสตร์บัณฑิต ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยเชียงใหม่ พ.ศ. 2558

โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

โครงงานเลขท วศ.คพ. 37/2557

เรอง

การพฒนาสวนเสรมส าหรบชดหนยนตเพอการเรยนรโกโกบอรด

โดยใช Raspberry Pi

นายมารตพงค ไชยลงกา รหส 540610639

โครงงานน

เปนสวนหนงของการศกษาตามหลกสตรปรญญาวศวกรรมศาสตรบณฑต

ภาควชาวศวกรรมคอมพวเตอร

คณะวศวกรรมศาสตร มหาวทยาลยเชยงใหม

พ.ศ. 2558

Page 2: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร
Page 3: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

PROJECT No. 37/2557

Developing add-ons for the GoGo Board,

an educational robotics kit, using the Raspberry Pi

Marutpong Chailangka Code 540610639

A PROJECT SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF

BACHELOR OF ENGINEERING (COMPUTER ENGINEERING) FACULTY OF ENGINEERING, CHIANG MAI UNIVERSITY

2015

Page 4: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

หวขอโครงงาน : การพฒนาสวนเสรมส าหรบชดหนยนตเพอการเรยนรโกโกบอรดโดยใช Raspberry Pi

Developing add-ons for the GoGo board, an educational robotics kit, using the Raspberry Pi โดย : นายมารตพงค ไชยลงกา รหส 540610639 ภาควชา : วศวกรรมคอมพวเตอร อาจารยทปรกษา : อ.ดร.อานนท สหพทกษเกยรต ปการศกษา : 2557

ภาควชาวศวกรรมคอมพวเตอร คณะวศวกรรมศาสตร มหาวทยาลยเชยงใหม อนมตใหโครงงานนเปน

สวนหนงของการศกษาตามหลกสตรปรญญาวศวกรรมศาสตรบณฑต สาขาวศวกรรมคอมพวเตอร

..................................................................... หวหนาภาควชาวศวกรรมคอมพวเตอร

(ผศ.ดร.ศนสนย เออพนธวรยะกล)

หนาอนมตโครงงาน

คณะกรรมการสอบโครงงาน

……………………............................................ ประธานกรรมการ

(อ.ดร.อานนท สหพทกษเกยรต)

………………………………............................................. กรรมการ

(อ.ดร.สนต พทกษกจนกร)

………………………………............................................. กรรมการ

(อ.ดร.โดม โพธกานนท)

Page 5: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

หวขอโครงงาน : การพฒนาสวนเสรมส าหรบชดหนยนตเพอการเรยนรโกโกบอรดโดยใช Raspberry Pi

Developing add-ons for the GoGo board, an educational robotics kit, using the Raspberry Pi โดย : นายมารตพงค ไชยลงกา รหส 540610639 ภาควชา : วศวกรรมคอมพวเตอร อาจารยทปรกษา : อ.ดร.อานนท สหพทกษเกยรต ปการศกษา : 2557

บทคดยอ

โครงงานนมวตถประสงคเพอพฒนาสวนเพมขยายใหกบชดหนยนตเพอการเรยนรโกโกบอรด

โดยใช Raspberry Pi จดเดนของสวนเพมขยายทสรางดวย Raspberry Pi คอจะสามารถเพม

ความสามารถทเดมท าไดยากในระบบสมองกลฝงตวทวไป เนองจาก Raspberry Pi เปนเครอง

คอมพวเตอรทขบเคลอนดวยระบบปฏบตการ Linux จงสามารถเพมความสามารถใหมๆ ไดโดยงาย

เชน การเชอมตอกบอปกรณ USB เชนกลอง webcam, อปกรณรบพกด GPS, Aircard เพอรบสง

SMS และเชอมตอเครอขาย, การเลนไฟลสอชนดตางๆ, การใชบรการเครอขายเชน สงอเมล, อานและ

รบคาจากบรการ push/pull ตางๆ เชน Pushbullet และ IFTT โครงงานนจะเพมความสามารถ

เหลานใหกบโกโกบอรด โดยจะสงงานไดผานภาษา Logo ซงใชงานไดงายส าหรบเยาวชน รวมไปถง

เพมสวนของการเขาใชงานผาน Web Application หรอทเรยกวา GoGo Home Screen ทประกอบ

ไปดวยการการแปลงขอความเปนเสยงทเลนผาน Browser, การจดการไฟล, การแสดงกราฟของ

ขอมลทท าการบนทกไว, การบนทกเสยงเพอน าไปใชกบ GoGo Board, การใชสวนประกอบของ

HTML และแปลงเสยงเปนค าสงเพอสงงาน GoGo Board การวดผลของโครงงานนจะท าโดยการ

น าเสนอความสามารถใหมทระบบท าได

Page 6: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

Project Title : Developing add-ons for the GoGo board, an educational robotics kit, using the Raspberry Pi

By : Marutpong Chailangka Student ID 540610639 Department : Computer Engineering Project Advisor : Arnan Sipitakiat Ph.D. Academic Year : 2012

Abstract

The objective of this project is to develop add-ons for the GoGo Board, an educational

robotics kit for children, using the Raspberry Pi. The highlight of using the Raspberry Pi

is that it can allow for new add-ons that would usually be difficult to make using

traditional embedded systems. Raspberry Pi is a computer based on Linux. So it is

possible to make use of connected USB devices such as a Webcam, a GPS receiver, an

Aircard for sending SMS and connecting to the network, playing media files, sending

emails or using cloud services such as receiving pushes from Pushbullet on the IFTT (If

This Then That) service. The features are controlled using Logo, an educational

programming language, easy to understand by students. The project also includes

access to web application via a browser on computer or smartphone. The web

application is called “GoGo Home Screen”, which contains features such as text-to-

speech and audio playback on a browser, a file manager, Web UIs and speech

recognition (speech-to-text) to control the GoGo board. Evaluation of this new system

was done by demonstrating the new capabilities that have been created.

Page 7: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

กตตกรรมประกาศ

โครงงานการพฒนาสวนเสรมส าหรบชดหนยนตเพอการเรยนรโกโกบอรดโดยใช Raspberry

Pi นส าเรจลลวงไปดวยด เนองจากไดรบความอนเคราะหและชวยเหลอจาก อ.ดร.อานนท สหพทกษ

เกยรต อาจารยทปรกษาโครงงานทใหค าแนะน า ใหความรเกยวกบโครงงาน และความชวยเหลอเปน

อยางดดวยความเอาใจใสตลอดระยะเวลาการท าโครงงาน คณะผจดท าโครงงานจงขอกราบ

ขอบพระคณอาจารยเปนอยางสงมา ณ ทนดวย

ขอขอบพระคณคณาจารยทกทานในภาควชาวศวกรรมคอมพวเตอร คณะวศวกรรมศาสตรท

ไดให ความร ค าแนะน า แนวทางในการแกปญหา และใหความชวยเหลอแกนกศกษาในทกๆ ดาน

ตลอดจนบคลากรและเจาหนาทประจ าภาควชา ทไดใหค าแนะน าในขนตอนตางๆ ในการท าโครงาน

ชวยอ านวยความสะดวกและเกอหนนการท าโครงงานครงนใหราบรนไปดวยดเสมอมา

ขอขอบคณครอบครวทอบรมเลยงด สนบสนนและสงเสรมใหเรยนมาจนถงปจจบนไดดตลอด

มา รวมถงขอขอบคณกองพฒนานกศกษา คณะวศวกรรมศาสตร และกองพฒนานกศกษา

มหาวทยาลยเชยงใหม ทไดสนบสนนทนการศกษาตลอดทงหลกสตรการศกษา

ขอขอบคณทกปญหาและทกอปสรรคทเกดขนระหวางการท าโครงงานน ทท าใหสามามารถ

เรยนรและหาแนวทางในการแกไขและปรบปรง ซงสามารถน าไปประยกตใชในชวตการท างานจรง

และในภายภาคหนาได หากโครงงานนมขอผดพลาดประการใด กขออภยมา ณ ทนดวย

มารตพงค ไชยลงกา

Page 8: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

สารบญ

หนา

หนาอนมตโครงงาน ................................................................................................................................ ก

บทคดยอ .................................................................................................................................................. ข

Abstract .................................................................................................................................................ค

กตตกรรมประกาศ .................................................................................................................................. ง

สารบญ .................................................................................................................................................... จ

สารบญรปภาพ ........................................................................................................................................ ซ

สารบญตาราง ......................................................................................................................................... ฏ

บทท 1 บทน า.......................................................................................................................................... 1

1.1 ทมา ....................................................................................................................................... 1

1.2 วตถประสงค ......................................................................................................................... 2

1.3 เปาหมายและขอบเขต ......................................................................................................... 2

1.4 ประโยชนทคาดวาจะไดรบ ................................................................................................... 3

1.5 เทคโนโลยและเครองมอทใช ................................................................................................ 3

1.6 ระยะเวลาและขนตอนในการด าเนนงาน ............................................................................. 5

บทท 2 ทฤษฎทใช .................................................................................................................................. 6

2.1 Programmable brick, MIT Cricket ................................................................................ 6

2.2 Lego Mindstorms ............................................................................................................. 7

2.3 ชดหนยนตเพอการเรยนรโกโกบอรด ................................................................................... 8

2.4 Raspberry Pi....................................................................................................................... 9

2.5 ระบบสมองกลฝงตว ............................................................................................................. 9

2.6 ภาษา Python และ TKinter ........................................................................................... 10

2.7 IFTTT และ Pushbullet .................................................................................................. 11

2.7.1 IFTTT ................................................................................................................. 11

2.7.2 Pushbullet ...................................................................................................... 12 2.8 ภาษา PHP, HTML ........................................................................................................... 14

2.8.1 ภาษา PHP ........................................................................................................ 14

2.9.2 ภาษา HTML และ JavaScript ........................................................................ 14

2.9.3 ภาษา JavaScript ............................................................................................. 14

Page 9: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

สารบญ (ตอ)

หนา

2.8 OrientDB .......................................................................................................................... 15

2.9 WebSocket...................................................................................................................... 15

2.10 Web Speech API ......................................................................................................... 15

บทท 3 โครงสรางและขนตอนการท างาน ......................................................................................... 16

3.1 โครงสรางโดยรวมของระบบ ............................................................................................. 16

3.1.1 GoGo Widget .................................................................................................. 16

3.1.2 Raspberry Pi.................................................................................................... 17

3.1.3 GoGo Board .................................................................................................... 19

3.2 การพฒนาระบบ ................................................................................................................ 20

3.2.1 GoGo Widget .................................................................................................. 20

3.2.2 Raspberry Pi.................................................................................................... 22

3.2.3 GoGo Board .................................................................................................... 26

3.3 การท างานของระบบ ......................................................................................................... 27

3.3.1 IP Address QR Code ..................................................................................... 27

3.3.2 Email Sender .................................................................................................. 28

3.3.3 SMS Sender .................................................................................................... 31

3.3.4 RFID ................................................................................................................... 33

3.3.5 Data Logging ................................................................................................... 35

3.3.6 GoGo Home Screen ..................................................................................... 40

3.3.7 Pi Display ......................................................................................................... 44

3.3.8 File Manager ................................................................................................... 46

3.3.9 Sound Recording ........................................................................................... 47

3.3.10 Web UI ........................................................................................................... 49

3.3.11 Speech Recognition ................................................................................... 53

3.3.12 Pushbullet และ IFTTT ................................................................................ 55

Page 10: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

สารบญ (ตอ)

หนา

บทท 4 การทดลองและผลการทดลอง .............................................................................................. 56

4.1 รายละเอยดการทดลอง ..................................................................................................... 56

4.2 ขนตอนการทดลองและผลการทดลอง ........................................................................ 57

4.2.1 IP Address QR Code ..................................................................................... 57

4.2.2 Email Sender .................................................................................................. 58

4.2.3 SMS Sender .................................................................................................... 60

4.2.4 RFID ................................................................................................................... 62

4.2.5 Data Logging ................................................................................................... 64

4.2.6 GoGo Home Screen ..................................................................................... 66

4.2.7 Pi Display ......................................................................................................... 69

4.2.8 File Manager ................................................................................................... 70

4.2.9 Sound Recording ........................................................................................... 72

4.2.10 Web UI ........................................................................................................... 73

4.2.11 Speech Recognition ................................................................................... 75

4.2.12 Pushbullet และ IFTTT ................................................................................ 76

บทท 5 สรปและขอเสนอแนะ ............................................................................................................. 81

5.1 สรปโครงงาน ..................................................................................................................... 81

5.2 ปญหาและแนวทางแกไข ................................................................................................... 81

5.3 ขอเสนอแนะ ...................................................................................................................... 82

เอกสารอางอง ...................................................................................................................................... 83

ภาคผนวก ............................................................................................................................................. 86

การใชงาน IFTTT ..................................................................................................................... 87

Page 11: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

สารบญรปภาพ

หนา บทท 2

รปท 2-1 Programmable Brick ............................................................................................. 6

รปท 2-2 Lego Mindstorms .................................................................................................. 7

รปท 2-3 บอรดหนยนตเพอการเรยนรโกโกบอรด รน 5.0 ...................................................... 8

รปท 2-4 Raspberry Pi Type B ............................................................................................. 9

รปท 2-5 บรการ IFTTT ......................................................................................................... 11

รปท 2-6 แสดงความสมพนธระหวาง Recipe, Trigger และ Action ................................. 11

รปท 2- 7 บรการ Pushbullet .............................................................................................. 12

รปท 2- 8 OrientDB .............................................................................................................. 15

บทท 3 รปท 3- 1 แสดงโครงสรางของระบบ ..................................................................................... 16

รปท 3- 2 GoGo Widget 1.2.1 ............................................................................................ 17

รปท 3- 3 GoGo Home Screen เมอแสดงใน Browser .................................................... 18

รปท 3- 4 GoGo Home Screen เมอแสดงใน Browser บน Smart Phone ................... 19

รปท 3- 5 PyCharm Community Edition 3.4.1 ............................................................. 20

รปท 3-6 Raspberry Pi Tab ................................................................................................ 21

รปท 3- 7 Section Gmail Configuration .......................................................................... 21

รปท 3- 8 Section Send SMS ............................................................................................ 22

รปท 3- 9 แสดงตวอยางค าสงทพฒนาสวนเสรม .................................................................. 22

รปท 3- 10 PuTTY ................................................................................................................ 23

รปท 3- 11 Sublime Text ................................................................................................... 24

รปท 3- 12 PCWDH Complier ........................................................................................... 26

รปท 3- 13 GoGo Widget 1.3.6, Raspberry PI Tab ....................................................... 27

รปท 3- 14 Gmail Configuration ใน Raspberry Tab ..................................................... 28

รปท 3- 15 แผนผงการท างานเมอตงคา Email .................................................................... 29

รปท 3- 16 แผนผงการท างานเมอสง Email ......................................................................... 30

รปท 3- 17 Send SMS ใน Raspberry Pi Tab ................................................................... 31

รปท 3- 18 แผนผงการท างานเมอท าการสง SMS ................................................................ 32

Page 12: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

สารบญรปภาพ (ตอ)

หนา รปท 3- 19 การใชงาน RFID ผานภาษา Logo ..................................................................... 33

รปท 3- 20 แผนผงการท างานค าสงตางๆ ชอง RFID ........................................................... 34

รปท 3- 21 การใชงาน Data Logging ผานภาษา Logo ..................................................... 35

รปท 3- 22 แผนผงการท างานเมอใชค าสง Data Logging .................................................. 36

รปท 3- 23 HTTP REST API function ของ OrientDB ..................................................... 37

รปท 3- 24 หนา Data Logging และสวนประกอบ ............................................................. 38

รปท 3- 25 ตวอยางค าสง jQuery กอนท าการสงขอมล ...................................................... 39

รปท 3- 26 หนาแสดงกราฟขอมลและสวนประกอบคราวๆ ................................................. 39

รปท 3- 27 หนาแสดง QR Code .......................................................................................... 41

รปท 3- 28 หนาส าหรบตงตางๆ ............................................................................................ 42

รปท 3- 29 แผนผงการเชอมตอ GoGo Home Screen ...................................................... 43

รปท 3- 30 การแจงเตอนเมอบนทกการตงคาส าเรจ ............................................................ 43

รปท 3- 31 การใชงานเลนไฟลเสยงและ Text-to-speech ผานภาษา Logo ..................... 44

รปท 3- 32 Pi Display บน Browser ................................................................................... 45

รปท 3- 33 หนา File Manager ............................................................................................ 46

รปท 3- 34 หนา Sound Recording ................................................................................... 47

รปท 3- 35 ขณะท าการบนทกเสยง ....................................................................................... 47

รปท 3- 36 เมอบนทกเสยงเสรจสน....................................................................................... 48

รปท 3- 37 โฟลเดอร Recording ใน File Manager .......................................................... 48

รปท 3- 38 Online Rapid Interface Builder ................................................................... 49

รปท 3- 39 โฟลเดอร html ใน File Manager................................................................... 50

รปท 3- 40 หนา Web UI ...................................................................................................... 50

รปท 3- 41 ตวอยาง HTML file ............................................................................................ 51

รปท 3- 42 แผนผงการท างานการสงคา key และ value ................................................... 52

รปท 3- 43 หนา Speech Recognition .............................................................................. 53

รปท 3- 44 หนา Speech Recognition เมอมผลลพท ....................................................... 54

รปท 3- 45 แผนผงแสดงความสมพนธ IFTTT, Pushbullet และ Raspberry Pi .............. 55

Page 13: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

สารบญรปภาพ (ตอ)

หนา บทท 4

รปท 4- 1 IP Address QR Code ใน GoGo Widget ......................................................... 57

รปท 4- 2 ผลการสแกน QR Code บน Smart Phone ...................................................... 58

รปท 4- 3 การตงคา Email และผลลพทการตงคา ............................................................... 58

รปท 4- 4 การสง Email ใน GoGo Widget เมอส าเรจ ....................................................... 59

รปท 4- 5 การสง Email ใน GoGo Widget เมอตงคาไมถกตอง ........................................ 59

รปท 4- 6 Email ทไดรบใน Outlook บน Windows 8...................................................... 60

รปท 4- 7 การสง SMS ใน GoGo Widget เมอส าเรจ ......................................................... 61

รปท 4- 8 SMS ทไดรบใน Smart Phone ............................................................................ 61

รปท 4- 9 การสง SMS ใน GoGo Widget เมอม Error ...................................................... 62

รปท 4- 10 ค าสงทดสอบการท างาน RFID ในภาษา Logo .................................................. 62

รปท 4- 11 การบนทกคาเซนเซอร ในภาษา Logo ............................................................... 64

รปท 4- 12 หนาเลอกคาทบนทกไวใน Data Logging แสดงบนคอมพวเตอร ..................... 65

รปท 4- 13 หนาเลอกคาทบนทกไวใน Data Logging แสดงบน Smart Phone ............... 65

รปท 4- 14 หนา GoGo Home Screen บนคอมพวเตอร ................................................... 66

รปท 4- 15 หนา Setting บนคอมพวเตอร ........................................................................... 67

รปท 4- 16 หนา GoGo Home Screen บน Smart Phone ............................................ 67

รปท 4- 17 Modal แสดง QR Code ทเปน IP Address บน Smart Phone ................... 67

รปท 4- 18 หนา Setting บน Smart Phone .................................................................... 68

รปท 4- 19 หนา Setting เมอบนทกการตงคาไดส าเรจบน Smart Phone........................ 68

รปท 4- 20 เมนแสดงสวนตางของ GoGo Home Screen บน Smart Phone ................. 68

รปท 4- 21 ค าสงทดสอบเลนเสยงและ Text-to-Speech ในภาษา Logo ......................... 69

รปท 4- 22 หนา Pi Display เมอแสดงบนคอมพวเตอร ....................................................... 69

รปท 4- 23 หนา Pi Display เมอแสดงบน Smart Phone ................................................. 70

รปท 4- 24 หนา File Manager บนคอมพวเตอร ................................................................ 70

รปท 4- 25 สวนทใหอพโหลดไฟล บนคอมพวเตอร .............................................................. 71

รปท 4- 26 หนา File Manager บน Smart Phone ......................................................... 71

Page 14: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

รปท 4- 27 สวนทเลนเสยง บน Smart Phone ................................................................... 71

รปท 4- 28 หนาบนทกเสยง )Sound Recording บนคอมพวเตอร) ................................... 72

รปท 4- 29 หนาขณะท าการบนทกเสยง บน Smart Phone ............................................. 72

รปท 4- 30 หนาแสดงผลลพทการบนทกเสยง บน Smart Phone ..................................... 72

รปท 4- 31 หนาแสดง Web UI File บนคอมพวเตอร ......................................................... 73

รปท 4- 32 หนาแสดง Web UI File บน Smart Phone .................................................... 74

รปท 4- 33 หนาแสดงไฟล HTML ทถกสรางมา บน Smart Phone .................................. 74

รปท 4- 34 หนา Speech Recognition บนคอมพวเตอร ................................................... 75

รปท 4- 35 Speech Recognition บน Smart Phone ...................................................... 75

รปท 4- 36 IFTTT Recipe ทเปน Twitter ........................................................................... 77

รปท 4- 37 สวนประกอบของ Recipe Twitter ................................................................... 77

รปท 4- 38 IFTTT การสราง Recipe ทเปน Instagram ..................................................... 78

รปท 4- 39 การ Tweet ขอความใน Twitter ...................................................................... 79

รปท 4- 40 ผลลพททไดรบมาจาก Twitter และ Pushbullet ............................................ 79

รปท 4- 41 ผลลพททไดรบมาจาก Instagram และ Pushbullet ....................................... 79

Page 15: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

สารบญตาราง

หนา

บทท 1

ตารางท 1-1 แผนการด าเนนงาน .............................................................................................. 5

Page 16: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

1

บทท 1 บทน า

1.1 ทมา

การใชชดหนยนตเพอการเรยนรส าหรบเดกมแนวคดเรมขนจาก Programmable Bricks[1]

ทเปนชดหนยนตระบบสมองกลฝงตว มขนาดเลกสามารถพกพาไดสามารถตอกบเซนเซอร และ

อปกรณตางๆ ได โดยมแนวคดใหเดกสามารถทจะออกแบบชนงานดวยตวเองได ตอมาหองวจย

Media Laboratory แหงมหาวทยาลย Massachusetts Institute of Technology ในประเทศ

สหรฐอเมรกา ไดน าแนวคด Programmable Bricks ไปตอยอดและพฒนาเปนอปกรณชอวา MIT

Cricket ทมขนาดเลกและเบากวา เปนวงจรทสามารถตอกบเซนเซอรชนดตางๆ รวมถงสามารถ

ควบคมอปกรณเชน มอเตอร, หลอดไฟ ไดเปนตน สามารถก าหนดพฤตกรรมการท างานของระบบ

โดยใชภาษา Logo ทถกออกแบบมาใหเดกเขาใจไดงาย ตอมาบรษท LEGO ไดน าแนวคดนไปตอยอด

และสรางผลตภณฑ LEGO Mindstorms[2][3] จ าหนายแกบคคลทวไป โดยชนสวนมการออกแบบ

เฉพาะทท าใหสามารถประกอบกนไดพอดตามมาตรฐานของของ LEGO ซงเปนจดเรมตนทท าให

แนวคด Programmable Bricks เปนทรจกอยางกวางขวาง

ในป ค.ศ .2005 เรมมการจ าหนายบอรด Arduino[5][6] เปนบอรดไมโครคอนโทรลเลอร ซง

มราคาไมแพง ใชภาษา C หรอ C++ ในการเขยนโปรแกรม มอปกรณตอพวงมากมาย จงไดรบความ

นยมอยางสงและกลายเปนบอรดมาตรฐานในการสรางโครงงานทตองอาศยสมองกลในการควบคม

Arduino แตกตางจาก Programmable Brick ตรงทไมไดถกออกแบบมาส าหรบเดกและเยาวชน

โดยตรง ท าใหเดกเขาถงอปกรณนไดยาก

Page 17: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

2

อกหนงใน Programmable Brick กคอชดหนยนตเพอการเรยนรโกโกบอรดมจดก าเนดจาก

MIT มจดเดนทถกพฒนาขนส าหรบผเรยนในประเทศก าลงพฒนา ตวบอรดนนเปดเผยรหส )open

source) และราคาถก สามารถผลตไดในทองถน ปจจบนพฒนามาจนถงรน 5.0 ไดเพมความสามารถ

ในการเชอมตอกบ Raspberry Pi ซงเปนคอมพวเตอรขนาดเลก ทมราคายอมเยา สามารถใชรวมกบ

อปกรณตอพวงทมขายทวไปในทองตลาดไดซงมกมราคาถก จงท าให Raspberry Pi ไดรบความนยม

เปนอยางมาก

การน า Raspberry Pi มาใชงานรวมกบชดหนยนตโกโกบอรด ท าใหชวยเพมความสามารถ

ใหมๆ ใหกบชดหนยนตโกโกบอรดไดอยางมาก ตวอยางความสามารถเชน การเรยกใชงานกลองใน

การถายรป ตรวจจบใบหนามนษย และตรวจกบการเคลอนไหว การบนทกคาเซนเซอรลงบน

Raspberry Pi ทมพนทเกบขอมลขนาดใหญ การบนทกและแสดงต าแหนงพกดดาวเทยม GPS การ

เลนเสยง เปนตน ท าใหเยาวชนสามารถก าหนดพฤตกรรมทเรยกใชความสามารถเหลานผานค าสง

ภาษา Logo ไดงายขน

1.2 วตถประสงค

เพอพฒนาสวนเสรมส าหรบชดหนยนตเพอการเรยนรโกโกบอรดใหมความสามารถมากยงขน

1.3 เปาหมายและขอบเขต

เปาหมาย

สรางสวนเสรมส าหรบชดหนยนตโกโกบอรดผานทาง Raspberry Pi

สรางสวนตดตอผใชและค าสงภาษา Logo เพอเรยกใชงานสวนเสรมทสราง

ขนมา

ขอบเขต

สวนเสรมทสรางจะเปนความสามารถทท าไดยากกวาหากใชอปกรณสมองกลฝง

ตวทวไป

Page 18: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

3

1.4 ประโยชนทคาดวาจะไดรบ

ไดเพมสวนเสรมใหมใหกบชดหนยนตเพอการเรยนรโกโกบอรด ทสามารถเรยกใชไดอยางงาย

ผานภาษา Logo เชนการสง Email, การก าหนดพฤตกรรมผานเครอขายสงคมออนไลน หรอ

เหตการณทสนใจในชวตประจ าวน และใชสมารทโฟนเปนตวรบ input ของชดหนยนตเพอการเรยนร

ได เปนตน

1.5 เทคโนโลยและเครองมอทใช

เทคโนโลย

ภาษา Python และ PIC-C ส าหรบพฒนาโปรแกรม

ระบบสมองกลฝงตว

Lex/Yacc ส าหรบสรางค าสงภาษา Logo

TKinter ส าหรบสรางสวนตดตอผใช

HID Communication Protocol ส าหรบการสอสารระหวางคอมพวเตอรและโกโก

บอรด

Python Webserver ส าหรบสรางบรการผาน HTTP

Cloud Service เชน IFTTT, Pushbullet, Gmail เพอสรางบรการผานระบบเครอขาย

ภาษา PHP, HTML และ JavaScript ส าหรบสรางบรการผาน HTTP

Web Socket ส าหรบการสอการระหวาง Web Application และโปรแกรม

OrientDB เพอใชเปนฐานขอมลในการเกบคาของเซนเซอร

QR Code

gammu ใชเชอมตอกบ Air Card เพอสง SMS

Festival Speech Synthesis System เพอสงใหเลนเสยงแบบออฟไลน

Page 19: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

4

Python Library

python-qrcode (Python QR Code image generator)

smtplib (SMTP client) ใชตอกบ Email Server เพอท าการสงอเมล

PyCrypto (The Python Cryptography Toolkit) ใชในการเขารหสขอความ

python-gammu ใชเชอมตอกบ gammu

Pyorient (OrientDB driver for Python) ใชการการเชอมตอกบฐานขอมล

OrientDB

urllib2 ใชเชอมตอไปยง HTTP API

PHP/jQuery Library

Web Speech API (SpeechSynthesis และSpeechRecognition

Responsive File Manager

Chosen

Highstock JS

Recordmp3js

jquery.qrcode

เครองมอทใชในการพฒนา

ซอฟตแวร (Software)

Python 2.7.8

PyCharm

PCWHD Compiler

Sublime Text

PuTTY ฮารดแวร (Hardware)

Raspberry Pi

GoGo Board

Smart Phone

Laptop

USB Devices (เชน Aircard, RFID Reader)

Page 20: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

5

1.6 ระยะเวลาและขนตอนในการด าเนนงาน

การด าเนนงาน ระยะเวลา

ส .ค. ก .ย. ต .ค. พ .ย. ธ .ค. ม .ค. ก .พ. ม .ค. เม .ย.

1. รวบรวมขอมลและไอเดย

2. ศกษาระบบและการท างานของโกโกบอรด

3. ศกษาทฤษฎทเกยวของ 4. ศกษาเครองมอทใชพฒนา

5. ตดตงเครองมอทใชพฒนา

6. พฒนาสวนเสรม 7. ทดสอบระบบเพอหาขอผดพลาด

8. แกไขสวนทผดพลาด

9. งานเอกสารและรายงานโครงการ

ตารางท 1-1 แผนการด าเนนงาน

Page 21: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

6

บทท 2 ทฤษฎทใช

2.1 Programmable brick, MIT Cricket

รปท 2-1 Programmable Brick

Programmable Brick [1] (รปท 2-1) คอคอมพวเตอรระบบสมองกลฝงตวทมขนาดเลกและ

สามารถพกพาไดทบรรจอยภายในชด LEGO. ซงมความสามารถในการมปฏสมพนธทางกายภาพได

รวมไปถงการตอเซนเซอร และการเชอมตออนฟาเรด Programmable Brick ท าใหเดกสามารถ

ออกแบบผลงานเองได ซงมสวนชวยใหเดกเหนวาเขาสามารถทจะออกแบบและประดษฐชนงานดวย

ตวเองได ในขณะเดยวกนกจกรรมเหลานจะเปนฐานส าคญทท าใหเดกมความคดทสนใจในการเรยนร

ทางคอมพวเตอรอกดวย

Programmable Brick สามารถใชงานไดเหมอนกบ LEGO/Logo ซงเปนชดทสามารถ

ประกอบชนสวนของ LEGO เปนรปรางตางๆ ได รวมกบภาษา Logo ท าใหเดกสามารถสรางชนงาน

ขนมาได ไมเพยงแคชนสวนของ LEGO เทานนแตรวมไปถงชนสวนใหมๆ ดวยเชน เฟอง มอเตอร และ

เซนเซอรตางๆ เปนตน จากนนกตอกบคอมพวเตอรและเขยนภาษา Logo ส าหรบการควบคมอ

ปรกรณตางๆ ยกตวอยางเชนเดกตองการทจะสรางบาน LEGO ทมหลอดไฟทสามารถสงเปด-ปดได

ตามเวลาทระบ และมโรงจอดรถทสามารถเปดประดเองไดเมอรถเขามาใกล

Page 22: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

7

ส าหรบ Programmable Brick ถอเปนจดเรมตอนทมไอเดยทด ทสามารถพฒนาตอยอดได

อยางหลากหลาย หองวจย Media Laboratory แหงมหาวทยาลย Massachusetts Institute of

Technology (MIT) ในประเทศสหรฐอเมรกา ไดพฒนาอปกรณทตอยอดมาจาก Programmable

Brick นนกคอ MIT Cricket ทมขนาดเลกและเบากวาเดม โดยมขนาดประมาณถาน 9 โวลต Cricket

สามารถควบคมมอเตอรได 2 ตว รบคาเซนเซอรได 2 ตว และยงมอนฟาเรดส าหรบการสอสารกบ

Cricket หรออปกรณชนดอนได

2.2 Lego Mindstorms

รปท 2-2 Lego Mindstorms

Lego Mindstorms [2][3] เปนผลตภณฑทถกผลตขนจากบรษท LEGO ซงเปนการน าแนวคด

ของ Programmable Brick ตอยอดเปนผลตภณฑจ าหนายแกบคคลทวไป Lego Mindstorms เปน

ชดอปกรณทประกอบดวยซอฟตแวรและฮารดแวรส าหรบการสรางหนยนตทสามารถปรบแตงได

สามารถเขยนโปรแกรมได รวมทงประกอบดวยชนสวนโมดลอจฉรยะทสามารถควบคมระบบการ

ท างาน ชดโมงดลเซนเซอรและมอเตอร และชนสวน LEGO การประกอบหนยนต ซงกอนหนาน

ขนอยกบ ตวถง ลอขบเคลอน แมวาการออกแบบดงกลาวมความงายในการสราง แตมกจะถกจ ากด

ดวยขนาด และแรงเสยดทานของดอกยาง แต Lego Mindstorms ทออกแบบอปกรณแตละชนม

มาตรฐาน และสามารถตอกนไดพอด รวมถงดอกยางทออกแบบมาเฉพาะ สามารถสรางหนยนตไดเรว

รวมทงท าใหชนหนยนตเคลอนทไดอยางราบรนมากยงขน

Page 23: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

8

2.3 ชดหนยนตเพอการเรยนรโกโกบอรด

ชดหนยนตเพอการเรยนรโกโกบอรด[4] เปนหนงใน Programmable Brick มจดก าเนดจาก

MIT โดยโกโกบอรดนถกพฒนาขนโดย ดร.อานนท สหพทกษเกยรต )มหาวทยาลยเชยงใหม) และ ดร.

Paulo Blikstein (มหาวทยาลย Stanford สหรฐอเมรกา) นบตงแตป ค.ศ. 2001 มจดเดนทถก

พฒนาขนส าหรบผเรยนในประเทศก าลงพฒนา ตวบอรดนนเปดเผยรหส )open source) และราคา

ถก สามารถผลตไดในทองถน ปจจบนพฒนามาจนถงรน 5.0 )รปท 2-3)โดยตลอดชวงเวลา 13 ปท

ผานมาโกโกบอรดถกผลตขนแลวกวา 3 พนชด และมการเผยแพรใชงานในหลายประเทศเชน

ประเทศไทย, สหรฐอเมรกา, บราซล, แมกซโก, อยปต, เกาหลใต, และ อาเจนตนา

รปท 2-3 บอรดหนยนตเพอการเรยนรโกโกบอรด รน 5.0

ชดหนยนตโกโกบอรดรน 5.0 ซงถกพฒนาขนลาสดไดเพมความสามารถในการเชอมตอกบ

Raspberry Pi ซงเปนคอมพวเตอรขนาดเลก ราคายอมเยา )US$35) ถกพฒนาขนโดยองคกรไม

แสวงหาก าไรในประเทศองกฤษในป ค.ศ. 2012 โดย Raspberry Pi ไดรบความนยมอยางมาก มการ

จ าหนายไปแลวกวา 3.8 ลานชด )สถต ณ เดอนตลาคม ค.ศ. 2014) การใชงาน Raspberry Pi รวมกบ

โกโกบอรด ชวยสรางความสามารถใหมๆ ใหกบโครงงานของนกเรยนนกศกษาไดเปนอยางมาก เพราะ

Raspberry Pi สามารถใชอปกรณตอพวงทมาขายทวไปในทองตลาดได ซงมกมราคาถกกวาอปกรณ

ตอพวงส าหรบระบบสมองกลฝงตว นอกจากนนยงใชงานไดงายกวาผานภาษาระดบสงอยาง Python

แทนทจะเปนภาษา C หรอ Basic

Page 24: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

9

2.4 Raspberry Pi

รปท 2-4 Raspberry Pi Type B

Raspberry Pi[7] เปนคอมพวเตอรขนาดเลกเทาบตรเครดต ราคาถก ทสามารถตอ

จอคอมพวเตอรหรอ โทรทศน และใชแปนพมพและเมาสได เปนอปกรณทชวยใหผคนทกเพศทกวย

สามารถใชงานคอมพวเตอร และเรยนรวธการเขยนโปรแกรมคอมพวเตอรได เชน Scratch และ

Python มความสามารถในการท าทกอยางเหมอนคอมพวเตอรเชนการเรยกดอนเทอรเนต การเลน

วดโอความละเอยดสง การใชงานสเปรดชท โปรแกรมประมวลผลค า รวมทงสามารถเลนเกมสได

นอกจากนน Raspberry Pi มความสามารถในการโตตอบกบโลก ภายนอกได และถกน ามาใชในสราง

โครงการระบบสมองกลฝงตวจ านวนมาก เชนเครองเลนเพลง เครองตรวจจบสภาพอากาศและสงไป

ทสถานแมขาย เปนตน Raspberry Pi มเปาหมายใหเดกทวโลกสามารถทจะเรยนรในการเขยน

โปรแกรมและเขาใจวธการท างานของคอมพวเตอร

2.5 ระบบสมองกลฝงตว

ระบบสมองกลฝงตว [9] )embedded system) คอระบบประมวลผล ทใชชปหรอไมโคร

โพรเซสเซอร ทออกแบบมาโดยเฉพาะ เปนระบบคอมพวเตอรขนาดจวท ฝงไว ในอปกรณ

เครองใชไฟฟา และเครองเลน อเลกทรอนกสตางๆ เพอเพมความฉลาด ความสามารถใหกบอปกรณ

เหลานนผานซอฟตแวรซงตางจาก ระบบประมวลผลทเครองคอมพวเตอรทวไป ระบบฝงตวถ ก

น ามาใชกนอยางแพรหลายในยานพาหนะ เครองใชไฟฟาในบานและส านกงาน อปกรณอเลกทรอนกส

เทคโนโลยซอฟตแวร เทคโนโลยฮารดแวร เทคโนโลยเครอขายเนตเวรก เทคโนโลยดานการสอสาร

เทคโนโลยเครองกลและของเลนตาง ๆ ค าวาระบบฝงตวเกดจาก การทระบบนเปนระบบประมวลผล

Page 25: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

10

เชนเดยวกบระบบคอมพวเตอร แตวาระบบน จะฝงตวลงในอปกรณอน ๆ ทไมใชเครองคอมพวเตอร

ในปจจบนระบบสมองกลฝงตวไดมการพฒนามากขน โดยในระบบสมองกลฝงตวอาจจะประกอบไป

ดวยไมโครคอนโทรลเลอร หรอ ไมโครโปรเซสเซอร อปกรณ ทใชระบบสมองกลฝงตวทเหนไดชดเชน

โทรศพทมอถอ และในระบบสมองกลฝงตวยงมการใสระบบ ปฏบตการตางๆ แตกตางกนไปอกดวย

ดงนน ระบบสมองกลฝงตวอาจจะท างานไดตงแตควบคมหลอดไฟ จนไปถงใชในยานอวกาศ

2.6 ภาษา Python และ TKinter

ภาษา Python (Python programming language) [10] เปนภาษาโปรแกรมระดบสง เพอ

ใชงานทวไปแบบ อนเทอรพรเตอร ทสรางโดย กโด ฟาน รอสซม )Guido van Rossum) ในพ.ศ.

2533 ปจจบนดแลโดย มลนธซอฟตแวรไพทอน

จดเดนของภาษาไพทอน

ความเปนภาษาสครปต เนองจากไพทอนเปนภาษาสครปต ท าใหใชเวลาในการเขยนและ

คอมไพล ไมมาก ท าใหเหมาะกบงานดานการดแลระบบ )System administration) เปนอยางยง ได

มการสนบสนนภาษา ไพทอนโดยเปนสวนหนงของระบบปฏบตการยนกซ, ลนกซ และสามารถตดตง

ใหท างานเปนภาษาสครปต ของวนโดวส ผานระบบ en:Windows Script Host ไดอกดวย

ไวยากรณทอานงาย ไวยากรณของไพทอนไดก าจดการใชสญลกษณทใชในการแบงบลอกของ

โปรแกรม และใชการยอหนาแทน ท าใหสามารถอานโปรแกรมทเขยนไดงาย นอกจากนนยงมการ

สนบสนน การเขยน docstring ซงเปนขอความ สนๆ ทใชอธบายการท างานของฟงกชน, คลาส, และ

โมดลอกดวย

Tkinter

Tkinter [11] เปนเครองมอมาตรฐานส าหรบการสราง GUI ในภาษา Python บน

ระบบปฏบตการ Windows และ Mac OSX Tkinter นนมาจาก Tk interface ซงพฒนาโดย

Fredrik Lundh

Page 26: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

11

2.7 IFTTT และ Pushbullet

2.7.1 IFTTT

รปท 2-5 บรการ IFTTT

IFTTT [12] ยอมาจาก “If This Then That” ซงเปนบรการบนเวบทสามารถใชบรการตางๆ

เชน Gmail, Facebook, Instagram และ Twitter เปนตน น ามาสรางเปนเงอนไขและใหท าใหท า

เหตการณใดๆ คลายการเขยนโปแกรมแบบหนง ยกตวอยางเชนก าหนดใหสงอเมลลถามคน tweet

บน Twitter ดวย Hashtag ทก าหนดไว หรออยางเชน มคนแทกรปผใชบน Facebook แลวใหอพ

โหลดขน Dropbox เปนตน

IFTT ถกสรางและพฒนาโดย Linden Tibbets, Jesse Tane และผรวมกอตง Alexander

Tibbets ใน ซานฟราซสโก มลรฐแคลฟอรเนย ประเทศสหรฐอเมรกา ใหบรการเมอเดอนกนยายน

ค.ศ. 2011

รปท 2-6 แสดงความสมพนธระหวาง Recipe, Trigger และ Action

IFTTT มสวนประกอบดงน

Channel เปนบรการบนเวบเชน YouTube, eBay, Twitter, API ตางๆ รวมไปถงบรการ

SMS สภาพภมอากาศ และหนเปนตน ปจจบนสามารถใชบรการไดมากกวา 140 channels

Page 27: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

12

Recipe หมายถง “If this then that" แปลวา “ถาเกดสงนใหท าสงนน” Recipe นนเปนการ

รวมระหวาง Trigger และ Action ผใชสามารถสราง recipes ของตวเองได

Trigger คอ “this” สวนหนงของ Recipe เปนสวนทใหเลอกวาหากเกดเหตการณตางๆ จาก

Channel

Action คอ “that” สวนหนงของ Recipe เปนสวนทก าหนดการกระท าทเกดจาก trigger

แลวใหกระท าการใดๆ บน Channel ได

Ingredients เปนสวนประกอบของ Trigger เชนในการสงอเมล สวนประกอบคอ หวขออเมล,

ผรบ, ผสง, เนอหาของอเมลล และไฟลแนบ เปนตน

2.7.2 Pushbullet

รปท 2- 7 บรการ Pushbullet

Pushbullet เปนบรการทสามารถสงเปนขอความ ไฟล link หรอแจงเตอน )Notification

ขามอปกรณตางไดแก Smart Phone (Android, iOS devices) และ Browser (Chrome, Firefox,

Safari และ Opera) รวมไปถงระบบปฏบตการ )Windows, Mac OSX) ไดเชนแจงเตอนจาก

Android ไปยง Chrome เปนตน สามารถเชอมตอกบบรการ IFTTT เพอรบการแจงเตอนจาก

Channel ตางๆ ทมอยจ านวนมาก ม API ทสามารถน ามาประยกตใชงานกบโครงงานนไดดงน

Realtime Event Stream รบการแจงเตอนแบบ realtime ผาน Websocket โดย

เชอมตอจาก Websocket Client ใน )JavaScript, Python หรอภาษาอนๆ) ไปยง

wss://stream.pushbullet.com/websocket/<your_access_token_here> จะไดรบการตอบ

กลบมาในรปแบบของ JSON

Page 28: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

13

ตวอยางการตอบกลบทไดรบใน Websocket

{"type": "nop"} {"type": "tickle", "subtype": "push"}

type=nop –จะสงมาทกๆ 30 วนาท เพอเปนการยยนยนวายงตดอกบ Server อย

type=tickle -จะสงมาเมอมการเปลยนแปลงใดๆ subtype คอสงทเปลยนแปลงไปท

HTTP API –สามารถสงหรอรบการแจงเตอน )pushes) จาก Pushbullet server.

ตวอยางการรบ push notification ผาน HTTP API ผาน curl (Command line ใน Linux)

curl --header 'Authorization: Bearer <your_access_token_here>' -X GET

https://api.pushbullet.com/v2/pushes?modified_after=0

ตวอยางผลลพทการตอบกลบ จะไดมาเปนรปแบบของ JSON ทประกอบไปดวยประเภท หวขอ เนอหา ผสง/ผรบการแจงเตอน และรายเอยดตางๆ ของการแจงเตอน ซงสามารถน าไปใชพฒนาตอได

{"pushes": [ { "iden": "ubdprOsjAhOzf0XYq", "type": "link", "title": "Pushbullet", "body": "Documenting our API", "url": "http://docs.pushbullet.com", "created": 1411595135.9685705, "modified": 1411595135.9686127, "active": true, "dismissed": false, "sender_iden": "ubd", "sender_email": "[email protected]" "sender_email_normalized": "[email protected]", "receiver_iden": "ubd", "receiver_email": "[email protected]", "receiver_email_normalized": "[email protected]", } ] }

Page 29: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

14

2.8 ภาษา PHP, HTML

2.8.1 ภาษา PHP

PHP [14] คอภาษาคอมพวเตอร เปนสครปตทท างานบนฝงเซรฟเวอร โดยลขสทธอยใน

ลกษณะโอเพนซอรส ภาษา PHP ถกออกแบบมาส าหรบพฒนาจดท าเวบไซต และแสดงผลออกมาใน

รปแบบ HTML โดยมรากฐานโครงสรางค าสงมาจากภาษา ภาษา C ภาษา JAVA และ ภาษา PERL

ซง ภาษา PHP นนงายตอการเรยนร ซงเปาหมายหลกของภาษาน คอใหนกพฒนาเวบไซตสามารถ

เขยนเวบเพจ ทมความตอบโตไดอยางรวดเรว และสครปตทผพฒนาเขยนเมอแสดงผลจะไมแสดงตอ

ผใชงาน

2.9.2 ภาษา HTML และ JavaScript

HTML [15] (Hypertext Markup Language) เปนภาษาคอมพวเตอรทเปนมาตรฐานในการ

เขยนเวบเพจ ถกพฒนาโดย World Wide Web Consortium (W3C) มรปแบบการเขยนเปน

สวนประกอบของ HTML คอแทก (Tags) เชน <html> โดยปกตจะมแทกเปดและแทกปด )เชน

<h1> และ </h1>) แตกจะมบางแทกทไมมแทกปดเชน <img> ซงแตละแทกอาจจะม Attribute

ระบคาทควบคมการแสดงผล

HTML อนญาตใหแสดงรปภาพหรอวตถ สามารถจดรปแบบการแสดงผลของขอความเชน

หวเรอง ยอหนา รายการ ลงค และอนๆ สามารถฝงสรปตการงานทอยเบองหลงได เชน JavaScript

และรองรบ Cascading Style Sheets (CSS) ทระบหนาตาและเคาโครงของเวบเพจและวตถตางๆ

ในเวบเพจ

2.9.3 ภาษา JavaScript

JavaScript [16] เปนภาษาสครปตทมลกษณะการเขยน prototype-based scripting

language โดยมโครงสรางของภาษาอยบนพนฐานของภาษา C โดยทวไปใชเปนสวนหนงของเวบเพจ

ควบคกบภาษา HTML ท างานอยบน Browser ทฝงผใช สามารถใหมการปฏสมพนธกบผใช ควบคม

การท างานของ Browser ตดตอสอสารกบ Web Service ควบคมการเปลยนแปลงเนอหาและการ

แสดงผลในหนาเวบเพจ หรอใชเพอเขาถงขอมลทมโครงสรางแบบ Document Object Model

(DOM) นอกจากฝงผใชแลวกมการใชงานฝงของเซรฟเวอรไดเชนกน Node.js การพฒนาเกมส และ

สราง Application ส าหรบคอมพวเตอรและโทรศพท

Page 30: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

15

2.8 OrientDB

รปท 2- 8 OrientDB

OrientDB [17] เปนฐานขอมลทเปน NoSQL ซงเปน open source ถกเขยนขนดวยภาษา

JAVA OrientDB เปนการฐานขอมลแบบ document-based แตสามารถบรหารจดการฐานขอมลใน

รปแบบกราฟ ทเชอมตอแตละ record กบกราฟไดโดยตรง มการท างานทเรวและยงสามารถท างาน

ไดในทกๆ platform ทสนบสนน JAVA โดยไมตองตงคาใดๆ เลย สามารถจดเกบขอมลไดสงสด

120,000 ถง 150,000 record ตอวนาท รองรบ schema-less, schema-full และ schema-mixed

มความปลอดภยสงโดยสทธการเชาถงแบงตามระบบโปรไฟลผใชงานหลากหลายระดบ ยงสามารถ

รองรบ SQL, HTTP Rest/JSON API และอนๆ

2.9 WebSocket

WebSocket [18] เปนรปแบบการสอสารแบบสองทศทาง ) full-duplex) คอสามารถสง

ขอความไดทงฝงเซรฟเวอรและฝงผใช ผานการเชอมตอ TCP แคการเชอมตอเดยว WebSocket เปน

สวนหนงของ HTML5 ทเปนสวนตดตอโดยใช JavaScript ถกออกแบบมาเพอการใชงานรวมกน

ระหวาง Web browser และ Web server ทสามารถสงขอความหากนไดอยางรวดเรวแบบ real-

time สามารถสงขอมลจากเซรฟเวอรไปถงผใชได โดยทผใชไมจ าเปนตอง request ขอมลกอนเหมอน

AJAX ทตอง request อยตลอดเวลา ท าใหประหยดทงเวลาและปรมาณขอมลทถกสงในเครอขาย

2.10 Web Speech API

Web Speech API [19] พฒนาโดย Speech API Community Group ภายใต W3C เปน

JavaScript API ทใหผพฒนาเวบน าการแปลงเสยงเปนขอความ )speech recognition) และการ

แปลงขอความเปนเสยง )speech synthesis) ไปใชรวมกบเวบเพจตางๆ ได โดยเปนสครปตทท างาน

รวมกบ HTML เพอแสดงผลและใชงานบน Web Browser ฝงผใชได สามารถเขยนสครปตเพอสราง

ขอความเปนเสยง )text-to-speech) และจ าแนกเสยงจากฟอรมหนาเวบเพจตอเนองได รองรบการ

ใชงานไดทกภาษา รวมทงสามารถใชงานเปนภาษาไทยได

Page 31: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

16

บทท 3 โครงสรางและขนตอนการท างาน

3.1 โครงสรางโดยรวมของระบบ

รปท 3- 1 แสดงโครงสรางของระบบ

โครงสรางของชดหนยนตเพอการเรยนร GoGo Board มสวนประกอบหลกอย 3 สวนคอ

3.1.1 GoGo Widget

GoGo Widget เปนโปรแกรมประยกตทสามารถใชงานไดหลาย platform พฒนาขนจาก

ภาษา Python ท าหนาทตดตอสอสารกบผใชและชดหนยนตผานทาง USB HID Protocol ตว

โปรแกรมม User Interface ดงรป (รปท 3- 2 GoGo Widget 1.2.1) ทสามารถเรยกใชได งาย

สามารถควบคมการท างานของชดหนยนต , สามารถอาน/บนทกคาตางๆ ของโมโมดลทใชรวมกบ

GoGo Board สามารถดคาสถานะตางๆ และสงงาน Raspberry Pi ได รวมถงมคอมไพเลอรภาษา

Logo ในตวซงท าหนาทแปลงโปรแกรม Logo ใหเปนภาษาไบนารและโหลดลงไปไวบนโกโกบอรด

Page 32: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

17

รปท 3- 2 GoGo Widget 1.2.1

3.1.2 Raspberry Pi

Gogod

Raspberry Pi ทน ามาใชรวมกบ GoGo Board มชดค าสงทท างานอยบน Raspberry Pi ท

ใชภาษา Python ในการพฒนาคอ Gogod (หรอ GoGo daemon) เปนตวกลางคอยรบค าสงจาก

GoGo Board และปฏบตงานตามค าสงทไดรบมา และยงคอยรายงานสถานะระบบใหกบโกโกบอรด

เชนสถานะเครอขาย และสถานะของอปกรณตอพวง

Page 33: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

18

GoGo Home Screen

รปท 3- 3 GoGo Home Screen เมอแสดงใน Browser

GoGo Home Screen เปน Web Application ทแสดงฟเจอรทพฒนาขนใชรวมรบ Gogod

โดยพฒนาจากภาษา PHP, HTML และ JavaScript (jQuery) ใช Apache เปน HTTP Webserver

ใช OrientDB เปนฐานขอมล รวมไปถง Library และ API ทเกยวของ อยบน Raspberry Pi สามารถ

แสดงผลไดดในทกอปกรณ )Responsive) ซง GoGo Home Screen นนเปนสวนทใหผใชสามารถ

เขามาดหนาตาของโปรแกรม )Display) สามารถเขามาจดการไฟล )File Manager) ดกราฟทแสดง

คาของเซนเซอรทบนทกไว )Data Logging) สามารถบนทกเสยง )Sound Recording) ไดโดยตรงจาก

Browser สามารถใชไฟล HTML ในสวนของ Web UI เพอสงค าสงไปให GoGo Board ได สามารถ

ใชการแปลงจากค าพดเปนขอความ )Speech Recognition) เปนค าสงทางเสยงเพอสงไปให GoGo

Board ท างานได นอกจากนนกสามารถตงคาตางๆ ของโปรแกรมได

Page 34: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

19

รปท 3- 4 GoGo Home Screen เมอแสดงใน Browser บน Smart Phone

3.1.3 GoGo Board

GoGo Board เปน PIC ไมโครคอนโทรลเลอร ทมเฟรมแวรทพฒนาโดยใชภาษา C ตว GoGo

Board ท าหนาทคอยรบค าสงจากคอมพวเตอร และสอสารควบคมการท างานของ Raspberry Pi

ผานทาง Serial RS232 นอกจากนนยงม Logo Virtual Machine ทสามารถท างานตามโปรแกรมไบ

นารทคอมพวเตอรสงมาได

Page 35: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

20

3.2 การพฒนาระบบ

การพฒนาสวนเสรมหรอความสามารถใหมๆ ใหกบชดหนยนตเพอการเรยนร GoGo Board

นนตองมการออกแบบค าสงทจะใชในการพฒนา โดยตองจะตองพฒนาทงระบบจงจะสามารถเรยกใช

งานรวมกนได

3.2.1 GoGo Widget

การพฒนา GoGo Widget โดยใช Editor เปน PyCharm Community Edition ใชภาษา

C ใชภาษา Python ในการพฒนา

รปท 3- 5 PyCharm Community Edition 3.4.1

Page 36: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

21

รปท 3-6 Raspberry Pi Tab

ในสวนของ Raspberry Pi Tab ไดเพมสวนตางๆ ดงน

IP Address QR Code ของ Raspberry Pi

พฒนาขนโดยใช python-qrcode [22] ในการสรางเปนรปของ QR Code ทเปน IP

Address ของ Raspberry Pi

Gmail Configuration

รปท 3- 7 Section Gmail Configuration

เปนสวนทพฒนาขนมาเพอใหผใชกรอก Email Address และ Password ของ Gmail มปม

Save เพอสงไปให Gogod บนทกไวเพอใชตดตอกบ Gmail ส าหรบการสงอเมล

และสงอเมลผานสวนนคอกรอกอเมลของผรบ หวขอ และเนอหาของอเมล ในชอง

Recipient, Subject และ Body ตามล าดบ และปม Send

Page 37: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

22

Send SMS

รปท 3- 8 Section Send SMS

เปนสวนทพฒนาขนมาเพอใหผใชกรอกหมายเลขโทรศพทและขอความลองในชอง Phone

และ Message ตามล าดบ และมปม Send เพอสงไปให Gogod ท าการสง SMS

3.2.2 Raspberry Pi

Gogod

บน Raspberry Pi มชดค าสงทพฒนาโดยใชภาษา Python และใช Editor เชนเดยวกบ

GoGo Widget

รปท 3- 9 แสดงตวอยางค าสงทพฒนาสวนเสรม

Page 38: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

23

รปท 3- 10 PuTTY

ใช PuTTY ในการเขาถง Raspberry Pi ผานทาง SSH เพอตดตงโปแกรมและ Library ทเกยวของรวมถงทดสอบ เรยกใชงาน และจดการไหลตางๆ และรวมไปถงการใชเทคโนโลยและ Library ตางๆ ตามสวนเสรมดงน

Email

smtplib [23] (SMTP client) ใชตอกบ Email Server เพอท าการสงอเมล

PyCrypto [24] (The Python Cryptography Toolkit) ใชในการเขารหสรหสผานกอนบนทกการตงคา

SMS

gammu ใชเชอมตอกบ Air Card เพอสง SMS

python-gammu [25] ใชเชอมตอกบ gammu Data Logger

OrientDB (Distributed Graph Database engine) ใชเปนฐานขอมล

Pyorient [21] (OrientDB driver for Python that uses the binary protocol) ใชการการเชอมตอกบฐานขอมล OrientDB

Text-to-Speech (say)

Festival Speech Synthesis System [20] เพอสงใหเลนเสยงแบบออฟไลน Pushbullet/IFTT

ใช Websocket client ใชตดตอกบเซรฟเวอรของ Pushbullet

urllib2 เชอมตอไปยง HTTP API ของ Pushbullet

Page 39: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

24

GoGo Home Screen

รปท 3- 11 Sublime Text

การพฒนาสวนของ GoGo Home Screen นนพฒนาดวยโปรแกรม Sublime Text เปน

text editor ในการเขยนโคด และพฒนาดวยภาษา PHP, HTML, JavaScript (jQuery) ใช Apache

เปน HTTP Webserverรวมไปถง Library และ API ตางๆ ตามสวนเสรมดงน

Home Screen

bootstrap-material-design [30] (Material Design for Bootstrap) ใชเปน

Framework และใชออกแบบ Layout ของหนา Home Screen และทง Web

Application

jQuery ใชในการพฒนาสวนของการท างานทอยเบองหลงของ Web Application

jquery.qrcode [29] ใชส าหรบสราง IP Address QR Code ของ Raspberry Pi

PI Display

พฒนาใหสามารถใชค าสง(ภาษา Logo) ดานลาง ซงเปนค าสงทเปลยนขอความให

เปน เ สยงและ เ ลน ผานหน า Pi Display โดยใ ช Web Speech API ใน สวน

SpeechSynthesis ซงพฒนาในภาษา JavaScript

Page 40: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

25

say "phrase to speak"

พฒนาใหสามารถเลนเสยงเมอสงงานจาก GoGo Board ดวยค าสง(ภาษา Logo)

ดานลางได playsound "filename.mp3"

พฒนาเพอปรบปรงการท างานของเดมทโหลดรปภาพเดมซ าอยตลอด ซงมผลตอ

การแสดงผลและประสทธภาพโดยรวมของระบบ ผพฒนาไดแกโคด JavaScript ท

เปนสวนทท างานอยเบองหลง ใหโหลดรปภาพเพยงครงเดยวหาก GoGo Board สง

ค าสง(ภาษา Logo) ดานลาง มาใหเปลยนรปเปนรปเดม showimage "imagename.jpg"

File Manager

พฒนาใหสามารถอพโหลดและแกไขไฟลผาน Browser พฒนาโดยใชภาษา PHP

และ Responsive File Manager [29]

Data Logging

Chosen [27] ใชในหนาส าหรบเลอกขอมลทตองการแสดงตอไป สามารถเลอกแบบ

หลายตวเลอก หรอคนหาไดโดยงาย

Highstock JS [28] ใชส าหรบแสดงกราฟของขอมลทไดท าการบนทกไว

Sound Recording

Recordmp3js [26] ใชเปนสวนทท าการบนทกเสยง

Speech Recognition

ใช Websocket ในการตดตอระหวาง Web Application และ Gogod

Web Speech API ในสวน SpeechRecognition ใชในการแปลงจากเสยงเปน

ขอความ

Page 41: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

26

3.2.3 GoGo Board

การพฒนาเฟรมแวร GoGo Board โดยใชภาษา C และ Editor เปน PCWHD Complier

รปท 3- 12 PCWDH Complier

Page 42: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

27

3.3 การท างานของระบบ

3.3.1 IP Address QR Code

รปท 3- 13 GoGo Widget 1.3.6, Raspberry PI Tab

เมอมการเชอมตอเครอขายผานทาง LAN หรอ Wireless LAN โปรแกรมจะท างานโดยสราง

และแสดงรป (รปท 3- 13 GoGo Widget 1.3.6, Raspberry PI Tab) QR Code ทเปน IP Address

HTTP Link ของ Raspberry Pi ม IP Address เปน 192.168.0.101 กจะสราง QR Code ท เมอ

สแกนจาก Smart Phone กจะได URL Link เปน http://192.168.0.101 ซงเปนสวนของ GoGo

Home Screen

Page 43: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

28

3.3.2 Email Sender

การตงคา

รปท 3- 14 Gmail Configuration ใน Raspberry Tab

การตงคา Email สามารถตงคาผาน GoGo Widget > Raspberry Pi > Gmail

Configuration ตามกรอบสแดง แสดงดงรป (รปท 3- 14 Gmail Configuration ใน Raspberry Tab)

Page 44: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

29

รปท 3- 15 แผนผงการท างานเมอตงคา Email

เมอกรอก Email Address และ Password ของ Gmail และกดปม Save แลว

GoGo Widget จะสราง Command Packet(1) ตามรป )รปท 3- 15 แผนผงการท างานเมอตงคา

Email) สงไป GoGo Board ผานทาง USB HID Protocol จากนน GoGo Board จะแปลงเปน

Command Packet(2) แบบเดยวกบในภาษา Logo และสงไปให Gogod ผานทาง Serial RS232 ท

เชอมตอกนอย เมอ Gogod ไดรบ Command Packet จะวเคราะหไดวาเปน Packet ทใหบนทก

Email Address แล เขารหส Password กอนทจะบนทกลง Configuration File ทอยบน Raspberry

Pi (3)

ขณะท าการบนทกและเมอบนทกคาเสรจแลว Gogod จะเปลยนคาสถานะสวนของ Email

ตามขนตอนทก าลงท าน Gogod ซงจะรายงานสถานะของ Raspberry Pi )Report Packet)(4) อย

ตลอดอยแลวนนไปให GoGo Widget ผาน GoGo Board สวน GoGo Widget กจะไดรบสถานะ

ตางๆ แลว กจะประมวลผลและแสดงตามสถานะนนๆ (5)

Computer

GoGo

Widget

USB HID Protocol GoGo Board

Raspberry Pi

Gogod

Serial RS232

1. Command Packet from GoGo Widget

2. Command Packet

3. Save data

4. Report Status

5. Report Status

Page 45: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

30

การใชงาน

สามารถสงอเมลผาน GoGo Widget สวนเดยวกบสวนทตงคา Email ไดคอกรอกอเมลของ

ผรบ หวขอ และเนอหาของอเมล ในชอง Recipient, Subject และ Body ตามล าดบ หรอใชค าสง

ภาษา Logo บน GoGo Board ดงดานลาง

sendmail "recipient" "subject" "body"

รปท 3- 16 แผนผงการท างานเมอสง Email

เมอกรอกคาตางๆ แลวและกดปม Send แลว GoGo Widget แลว GoGo Widget ตามรป )รปท 3- 16 แผนผงการท างานเมอสง Email) จะสราง Command Packet )1) สงไป GoGo Board ผานทาง USB HID Protocol จากนน GoGo Board จะแปลงเปน Command Packet (2) แบบเดยวกบในภาษา Logo และสงไปให Gogod ผานทาง Serial RS232 ทเชอมตอกนอย เมอ Gogod ไดรบ Command Packet จะวเคราะหไดวาเปน Packet (3) ทใหสง Email Address กท าการเชอมตอ Gmail Server ผานทาง SMTP และรายงานสถานะ (4,5) เชนเดยวกบการตงคา Email ทอธบายขางตน

Computer

GoGo

Widget

USB HID Protocol GoGo Board

Raspberry Pi

Gogod

Serial RS232

1. Command Packet from GoGo Widget

2. Command Packet

3. Process

4. Report Status

5. Report Status

Internet

LAN / Wireless LAN

Page 46: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

31

3.3.3 SMS Sender

รปท 3- 17 Send SMS ใน Raspberry Pi Tab

การสง SMS สามารถผาน GoGo Widget โดยไปท Raspberry Pi > Send SMS ตามกรอบแสดงดงรป (รปท 3- 17 Send SMS ใน Raspberry Pi Tab) ขนตอนการสงคอกรอกหมายเลขโทรศพทและขอความในชอง Phone number และ Message หรอใชค าสงภาษา Logo บน GoGo Board ดงดานลาง

sendsms "phone number" "message"

Page 47: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

32

รปท 3- 18 แผนผงการท างานเมอท าการสง SMS

เมอกรอกคาตางๆ แลวและกดปม แลว GoGo Widget แลว GoGo Widget ดงรป

)รปท 3- 18 แผนผงการท างานเมอท าการสง SMS) จะสราง Command Packet )1,2) สงไป Gogod

ดวยวธการเชนเดยวกบการสงการตงคา Email )3.3.2 Email Sender) หรอเมอค าสง Logo สงมายง

Gogod แลวกจะท าการสง SMS โดยใช Air Card ทเสยบไวท USB Port (3) และรายงานสถานะไป

ยง GoGo Widget (4,5)

Computer

GoGo

Widget

USB HID Protocol GoGo Board

Raspberry Pi

Gogod

Serial RS232

1. Command Packet from GoGo Widget

2. Command Packet

3. Process

4. Report Status

5. Report Status

USB Port Air Card

Page 48: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

33

3.3.4 RFID

รปท 3- 19 การใชงาน RFID ผานภาษา Logo

สามาราถใชงาน RFID ไดโดยใชค าสงภาษา Logo ดงน

userfid สงให Gogod เชอมตอกบ RFID Reader และท าการอานคาของ RFID ไว

ในหนวยความจ า

rfidtagfound? ค าสงท ใชตรวจสอบดวาม RFID Tag มาแตะท เครอง RFID

Reader หรอไม

rfidbeep สงใหเครอง RFID Reader นนสงเสยง beep

readrfid n ค าสงใหอานคามาจากหนสยความจ าท Gogod ไดอานมาเปนตวเลข

ตงแต 0-255 (n) และน าไปใชในภาษา Logo เชน เทยบตวเลข หรอน าตวเลขไปใชตอไป

writerfid n ค าสงใหเขยนคาลง RFID Tag ดวยตวเลขตงแต 0-255 (n)

Page 49: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

34

รปท 3- 20 แผนผงการท างานค าสงตางๆ ชอง RFID

เมอมค าสงตางๆ จากภาษา Logo สงไปท Gogod แลวจะแยกการท างานตามแตละค าสง

ตามทระบไวเพอคยกบ RFID Reader ผานทาง USB Port เมอใชค าสงใหใชงาน RFID กจะเชอมตอ

แลวอานคาเกบไวในหนวยความจ า)Gogod) จาก RFID อยตลอดเวลา เมอม Tag มาแตะทเครอง

RFID Reader กคาหนวยความจ ากจะถกเปลยน หากใชค าสงใหอานหรอตรวจสอบวาม Tag หรอ

เปลา กจะใชคาจากหนวยความจ านสงกลบขนไปให Gogod Board ท างานตอไป

GoGo Board

Raspberry Pi

Gogod

Serial RS232

Report Packet Command Packet

Process

Use RFID Write RFID

USB Port RFID Reader

Read RFID Tag, Check Tag found?

Page 50: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

35

3.3.5 Data Logging

การบนทกคาตางๆ

รปท 3- 21 การใชงาน Data Logging ผานภาษา Logo

record sensor1 "log8"

สามาราถใชงาน Data Logging ไดโดยใชค าสงภาษา Logo ดงดานบนและดงรป (รปท 3-

21 การใชงาน Data Logging ผานภาษา Logo) Key (Log name) เปนตวหนงสอทสอถงคาท

ตองการบนทก Variable (Log Value) สามารถเปนไดทงคาเซนเซอรตวท 1-8 คอ sensor1 –

sensor 8 หรอเปนตวเลขอนๆ ในค าสงได

Key (Log name)

Variable (Log Value)

Page 51: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

36

รปท 3- 22 แผนผงการท างานเมอใชค าสง Data Logging

ตามรป )รปท 3- 22 แผนผงการท างานเมอใชค าสง Data Logging) เมอมค าสงใหบนทกคา

ลงมาท Gogod จากนนจะท าการตวรจสอบจากฐานขอมล OrientDB วามคา key (log name) อย

หรอไมโดยค าสง SQL คอ

SELECT COUNT(*) FROM ( SELECT expand( classes ) FROM

metadata:schema ) WHERE name = '%s'" % (log_name)

หากยงไมมตารางอยในฐานขอมล จะสรางตารางใหมโดยใชค าสง SQL ใน ภาษา python คอ

self.client.command( "create class "+ log_name)

และสราง index เพอความรวจเรวในการ Query ตอไปดงค าสง

self.client.command( "CREATE PROPERTY " + classname

+ ".datetime STRING" )

self.client.command( "CREATE INDEX "+ classname +

".datetime NOTUNIQUE" )

GoGo Board

Raspberry Pi

Gogod + OrientDB

Serial RS232

Command Packet

Process

Sensor 1-8

Page 52: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

37

เมอสรางตารางเสรจแลวหรอมตารางอยแลว กจะใสขอมลลงตารางดวยค าสง SQL ใน ภาษา

python ดงดานลางโดยจะมการบนทกคาเวลา Time Stamp ลงไปดวยเพอระบไดวาไดท าการบนทก

ไมเมอไหร

command = "insert into %s ( 'datetime', 'value' )

values( '%s', %d )" % (log_name,

time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime()),

log_value)”

การดคาตางๆ

รปท 3- 23 HTTP REST API function ของ OrientDB

Page 53: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

38

รปท 3- 24 หนา Data Logging และสวนประกอบ

เมอเขาไปท GoGo Home Screen (3.3.6 GoGo Home Screen) และ Data Logging จะ

ท าการโหลด JSON มาจาก HTTP REST API ของ OrientDB ดงรป )รปท 3- 23 HTTP REST API

function ของ OrientDB) ทเปนรายชอของ Log ทมอยในฐานขอมลมาใหเลอก โดยเลอกคา sensor

ตางๆ ในชอง choose data หรอพมพและคนหาไดจากชองเดยวกน ดงรป )รปท 3- 24 หนา Data

Logging และสวนประกอบ) สามารถเลอกใหแสดงไดหลายคาพรอมกน และหากตองการใหเฉลยคา

ใหท าเครองหมายถกหรอคลกท Average sensor values by และเลอกรอบของเวลาทตองการ

จากนนคลดทปม เพอสงคาไปใหแสดงกราฟ

Submit Button Choose Log

Check to average values Select period

Page 54: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

39

รปท 3- 25 ตวอยางค าสง jQuery กอนท าการสงขอมล

เมอคลกใหสงขอมล กอนท าการสงกมการใช JQuery ในการตรวจสอบคาตางๆและเรยบ

เรยงคาใหมดงค าสงในรป )รปท 3- 25 ตวอยางค าสง jQuery กอนท าการสงขอมล)

รปท 3- 26 หนาแสดงกราฟขอมลและสวนประกอบคราวๆ

Auto Update Toggle Export Data

Page 55: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

40

เมอสงคามายงหนาทแสดงกราฟ ค าสง jQuery ทท างานอยจะดงขอมล JSON จาก HTTP

REST API ของ OrientDB มาและสงให Highstock JS แสดงเปนกราฟขนมา ดงรป )รปท 3- 26 หนา

แสดงกราฟขอมลและสวนประกอบคราวๆ) สามารถ Toggle ให Update คาอตโนมตไดท Auto

Update ดานบนซาย ถดมาเลอกระดบการ Zoom ดานบนขวามใหเลอกวนทเรมตนและสนสดท

ตองการใหแสดง ถดมามปมใหเลอกวาจะ Export ขอมลในรปแบบตางๆ ไดแก PNG, JPEG, PDF,

SVG ,CSV และ XLS ดานขวาเลอกใหแสดงหรอซอนคาทางดานขวา และแถบดานลางสามารถเลอก

ชวงทตองการใหแสดงโดย Drag ทแถบ

3.3.6 GoGo Home Screen

การใชงาน

สามาราถเขาไปใชงาน GoGo Home Screen )Web Application) ผานทาง Browser ของ

คอมพวเตอรหรอ Smart Phone ดวย URL เปน http://IP Address เชน http://192.168.0.11

ทงนตองอยในเครอขาย LAN เดยวกนดวย จะแสดงตาม รปท 3- 3 GoGo Home Screen เมอแสดง

ใน Browser ในหวขอ 3.1.2 Raspberry Pi

Page 56: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

41

การแสดง QR Code

รปท 3- 27 หนาแสดง QR Code

สามารถแสดงคา QR Code ทเปน URL IP Address ของ GoGo Home Screen เพอให

สแกนโดย Smart Phone ได โดยคลกทไอคอน ตรงดานลางขวาของ Web Application ใน

กรอบดง )รปท 3- 27 หนาแสดง QR Code) จากนนจะม Modal ทแสดง QR Code ขนมา

Page 57: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

42

การตงคาตางๆ

สามารถแสดงคาตางๆ ทจะน าไปใชใน Gogod โดยคลกไอคอน ดานลางขวาของ

Web Application

รปท 3- 28 หนาส าหรบตงตางๆ

การตงคาสามารถตงคา Pushbullet Token )ดคา Token ไดทหวขอ Access Token ท

https://www.pushbullet.com/account ใน) และน ามากรอกทชอง Token หอสามารถตงคา

Account ทจะสง Email ไดตามชอง Gmail Username และ Gmail Password และกด Save เพอ

ท าการบนทกคา

Page 58: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

43

รปท 3- 29 แผนผงการเชอมตอ GoGo Home Screen

เมอสงขอมลไปให PHP จากนนจะดวามการสงคาอะไรมาบาง หากคาไดวางกจะไมน ามา

แกไข JSON Configuration file ซงเปนไฟลเดยวกบการตงคา Email (3.3.2 Email Sender) จะท า

การอานคามาและดวามคาอะไรใหมเขามากจะแกไขและบนทกไฟล และแสดงสถานะวาส าเรจหรอไม

จะเตอนขนมาทดานลาง Browserดงรป )รปท 3- 30 การแจงเตอนเมอบนทกการตงคาส าเรจ)

รปท 3- 30 การแจงเตอนเมอบนทกการตงคาส าเรจ

GoGo Board

Raspberry Pi

Gogod + PHP server

Serial RS232

HTTP

GoGo Home Screen

Browser

Page 59: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

44

3.3.7 Pi Display

การใชงาน

รปท 3- 31 การใชงานเลนไฟลเสยงและ Text-to-speech ผานภาษา Logo

สามารถใชงานใหเลนเสยงจากไฟล หรอเปลยนจากขอความเปนเสยง (Text-to-speech) ได

โดยใชค าสงภาษา Logo ค าสงเลนไฟลเสยง ดงดานลาง

playsound "filename.mp3"

และค าสงเปลยนขอความเปนเสยง ดงดานลางและดงรป (รปท 3- 31 การใชงานเลนไฟล

เสยงและ Text-to-speech ผานภาษา Logo) เมอมค าสงเหลานสงไปท Gogod

say “phrase want to say”

Page 60: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

45

รปท 3- 32 Pi Display บน Browser

ในค าสง playsound จะสงใหเลนเสยงออกทาง audio jack ของ Raspberry Pi และสง

file name ไปให Pi Display (รปท 3- 32 Pi Display บน Browser) ผานทาง Websocket เมอ Pi

Display ไดรบค าสงใหเลนเสยงกจะโหลดไฟลเสยงผานทาง HTTP และเลนเสยงบน Smart Phone

ได

สวนค าส ง say จะส งให Festival Speech Synthesis System เลนเสยงผาน Linux

command line ดงดานลาง เลนเสยงออกล าโพงท audio jack ของ Raspberry Pi และสงขอความ

ไปให Pi Display ผานทาง Websocket เมอ Pi Display ไดรบค าสงให กใช SpeechSynthesis ใน

Web Speech API แปลงขอความเปนเสยงและเลนผาน Smart Phone โดยเสยงจะมความเปน

ธรรมชาตมากกวา ทเลนออกล าโพงเนองจากใช API ทตองตอ Internet ทมการประมวลผลท Server

os.system("echo \""+phrase+"\" | festival --tts")

Page 61: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

46

3.3.8 File Manager

การใชงาน

รปท 3- 33 หนา File Manager

เมอเขาไปท GoGo Home Screen (3.3.6 GoGo Home Screen) และ File Manager (รป

ท 3- 33 หนา File Manager) สามารถคลกเพออพโหลดไฟลรปภาพ เสยง หรอไฟลตางๆ หรอจะ

Drag and Drop ทหนาตางใหอพโหลดได, สามารถสราง text file หรอ folder ได, เลอกรปแบบการ

แสดงผลแบบตางๆ Filter ไฟลทตองการใหแสดง, เรยงล าดบการแสดงไฟล สามารถเปลยนชอ ลบ

คดลอก หรอดตวอยางไฟลไดเชนเลนไฟลเสยง หรอดรปภาพขนาดเตม

Page 62: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

47

3.3.9 Speech Recording

การใชงาน

รปท 3- 34 หนา Speech Recording

เมอเขาไปท GoGo Home Screen (3.3.6 GoGo Home Screen) และ Speech Recording

จะม popup –ขนมาในกรอบดงรป )รปท 3- 34 หนา Speech Recording) เพออนญาตให Browser

ใชงาน Microphone ได คลกท Allow เมอพรอมแลวไอคอน จะเปลยนสเขมขน คลกท

ไอคอนน (record) เพอเรมบนทกเสยง ไอคอนจะเปลยนไปดงรป )รปท 3- 35 ขณะท าการ

บนทกเสยง) และมขอความบอกสถานะวาก าลงบนทกเสยง

รปท 3- 35 ขณะท าการบนทกเสยง

Page 63: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

48

รปท 3- 36 เมอบนทกเสยงเสรจสน

และเมอตองการหยดบนทกเสยงคลกทปม (Stop) และจะท าการแปลงเปนไฟล mp3

แสดงชอไฟล ดงรป )รปท 3- 36 เมอบนทกเสยงเสรจสน) และอพโหลดไปทโฟลเดอร recordings ซง

สามารถเขาไปดไดท File Manager (3.3.8 File Manager) > recordings ดงรป )รปท 3- 37 โฟล

เดอร Recording ใน File Manager) ซงสามารถเปลยนชอไฟล ฟงเสยง และน าไฟลเสยงไปใชใน

ภาษา Logo ดวยค าสง playsound . )3.3.7 Pi Display) ได

รปท 3- 37 โฟลเดอร Recording ใน File Manager

Page 64: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

49

3.3.10 Web UI

การเตรยมไฟล HTML

รปท 3- 38 Online Rapid Interface Builder

สามารถเขยนไฟล HTML ทสวนประกอบเชน button, slider, switch ขนมาไดเอง หรอใช

เครองมอสรางไดเชน Rapid Interface Builder ทสามารถ Drag and Drop เพอสรางไฟล HTML

ขนมาเขาถงออนไลนไดท https://01.org/rib/online/ ดงรป (รปท 3- 38 Online Rapid Interface

Builder) หรอใชเครองมออนๆ ไดเชนกน เมอเสรจแลวคลกท export เปน zip เมอได zip แลวแตก

ไฟล (Extract Files) เปลยนชอ index.html เปนชอทไมซ ากบไฟลอน จากนนอพโหลดไฟลทงหมด

ไปไวท File Manager (3.3.8 File Manager) > recordings ดงรป )รปท 3- 39 โฟลเดอร html ใน

File Manager)

Page 65: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

50

รปท 3- 39 โฟลเดอร html ใน File Manager

การใชงาน

รปท 3- 40 หนา Web UI

เมอเขาไปท GoGo Home Screen (3.3.6 GoGo Home Screen) และ Web UI จะม

รายชอของไฟล HTML ดงรป )รปท 3- 40 หนา Web UI) ทถกอพโหลดไวในโฟลเดร html/ คลก

ไฟลทตองการใชงาน

Page 66: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

51

เมอเลอกไฟลแลว Application จะท าการดงไฟล jQuery ทเขยนไวมารวมกบ HTML file

และท างานอยเบองหลงการในการตรวจสอบสวนประกอบของ HTML ตดตามการท างานของสวน

นนๆ (event monitoring) และตดตอ Websocket เพอสงคาให Gogod ไปให GoGo Board ท างาน

ตอไป

เมอกดปมเปลยนคา slider หรอ switch Application ใน html file ดงรป )รปท 3- 41

ตวอยาง HTML file) จะสราง key และ value ดงน key จะพจารณาจากคา attribute ของ แตละ

element คอ name และ id ตามล าดบหากไมมคาเหลานกจะใชคา default เปน button ส าหรบ

ปม, switch ส าหรบ switch, ตาม label ของ slider หรอ slider ส าหรบ slider สวนคา value จะ

พจารณาจากคา attribute ของ แตละ element คอ value หากไมมกจะใชคาทแสดง (label) บน

แตละ element

รปท 3- 41 ตวอยาง HTML file

Page 67: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

52

รปท 3- 42 แผนผงการท างานการสงคา key และ value

เมอไดคา key และ value แลวจะสง Websocket ไปให Gogod สรางเปน KeyValue

Packet และสงไปให GoGo Board ท างานตอไปตามรป (รปท 3- 42 แผนผงการท างานการสงคา

key และ value) และสามารถเขยนภาษา Logo ไดดงดานลาง เพอเปนเงอนไขในการท างาน

if key “key” = “value” [

do_something

]

GoGo Board

Raspberry Pi

Gogod + PHP server

Serial RS232

Handle event

KeyValue Packet

Key value

HTTP

GoGo Home Screen Browser

Websocket

Page 68: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

53

3.3.11 Sound Recognition

รปท 3- 43 หนา Speech Recognition

เ ม อ เ ข า ไ ป ท GoGo Home Screen (3.3.6 GoGo Home Screen) แ ล ะ Speech

Recognition จะม popup –ขนมาในกรอบดงรป (รปท 3- 43 หนา Speech Recognition) เพอ

อนญาตให Browser ใชงาน Microphone ได คลกท Allow ขณะท าการ Speech Recognize

ไอคอน จะกระพรบเพอบอกสถานะวาก าลงท างานอย หากไมมเสยงในขณะหนง จะหยดท างาน

ไอคอน กจะไมกระพรบ สามารถคลกทไอคอนนเพอใหท างานหรอหยดท างานได โดยหากคลก

จณะกระพรบคอใหหยดท างาน คลกขณะไมกระพรบจะใหท างาน

Page 69: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

54

รปท 3- 44 หนา Speech Recognition เมอมผลลพท

เมอ Application แปลงเสยงเปนขอความแลวจะสง Websocket ทม key และ value เปน

speech และขอความทถกแปลงมาแลว ไปให Gogod สรางเปน KeyValue Packet และสงไปให

GoGo Board ท างานตอไปตามรป )รปท 3- 44 หนา Speech Recognition เมอมผลลพทรปท 3-

42 แผนผงการท างานการสงคา key และ value) ในหวขอ 3.3.10 Web UI และ Gogod จะสง

Websocket คานนไปทก Websocket client กจะเหนขอความทกอปกรณทเปด Web Application

หนานอยดวยเหมอนกน ดงรป )รปท 3- 44 หนา Speech Recognition เมอมผลลพท) และสามารถ

เขยนภาษา Logo ไดดงดานลาง เพอเปนเงอนไขในการท างาน

if key “speech” = “value” [

do_something

]

Page 70: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

55

3.3.12 Pushbullet และ IFTTT

กอนอนนนตองม Account ของบรการ Pushbullet (https://ifttt.com) และ IFTTT

(https://www.pushbullet.com/) กอน รวมถงการผกบรการ IFTTT และ Pushbullet เขาดวยกน

โดยเขาไปท https://ifttt.com/pushbullet และท าการผกบรการ

รปท 3- 45 แผนผงแสดงความสมพนธ IFTTT, Pushbullet และ Raspberry Pi

เมอ Active channel ทตองการใช สราง Recipe ดไดจากภาคผนวก )การใชงาน IFTTT)

และต งคา Pushbullet Token ในสวนของการต งคา (3.3.6 GoGo Home Screen) แลวนนก

สามารถใชงานไดทนท โดยท Gogod จะท าการตรวจสอบความถกตองของ Token หากถกตองกจะ

ท าการเชอมตอ Websocket ไปยงเซรฟเวอรของ หากมการแจงเตอนใหม เซรฟเวอรจะสงเขามาทาง

Websocket วามการเปลยนแปลงของบรการ เมอทราบแลวมการแจงเตอนใหมแลวนนกใช urllib2

เชอมตอไปยง HTTP API ของ Pushbullet ตามทศทางดงรป )รปท 3- 45 แผนผงแสดงความสมพนธ

IFTTT, Pushbullet และ Raspberry Pi) จะไดการแจงเตอนทมหวเรอง (title) และสวนของเนอหา

(body) จากนนกจะแปลงเปน KeyValue Packet และสงไปให GoGo Board ท างานตอไป ) และ

สามารถเขยนภาษา Logo ไดดงดานลาง เพอเปนเงอนไขในการท างาน

if key “key” = “value” [

do_something

]

Page 71: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

56

บทท 4 การทดลองและผลการทดลอง

4.1 รายละเอยดการทดลอง การทดลองนนจะทดลองโดยทดสอบการท างานของแตละสวนเสรม )adds-on) ทกสวนเสรม

ตาม )3.3 การท างานของระบบ) มดงน

IP Address QR Code

Email Sender

SMS Sender

RFID

Data Logging

GoGo Home Screen

Pi Display

File Manager

Sound Recording

Web UI

Speech Recognition

Pushbullet และ IFTTT

โดยทดสอบหากสวนเสรมใดมค าสงภาษา Logo กจะท าการเขยนเปนค าสงละเรยกใชงานบน

GoGo Board สวนเสรมใดตองท างานบน Browser กจะทดลองโดยทดสอบเรยกใชงานบน

คอมพวเตอรคอมพวเตอร และบน Smart Phone

Page 72: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

57

4.2 ขนตอนการทดลองและผลการทดลอง

4.2.1 IP Address QR Code

รปท 4- 1 IP Address QR Code ใน GoGo Widget

ในสวนของ IP Address QR Code จะทดสอบโดยการเรยก GoGo Widget ขนมาและ

เชอมตอกบระบบเครอขายผานทาง LAN และ USB Wireless LAN โดยจะ Connect และ

Disconnect กบระบบเครอขายเพอดการเปลยนแปลงของ QR Code ทแสดง และทดสอบใช Smart

Phone สแกน QR Code

ผลการทดลอง

สามารถสแกน QR Code ได IP Address ทถกตองทง

LAN และ Wireless LAN ทกครง ไดผลลพทดงรป )รปท 4- 2

ผ ล ก า ร ส แ ก น QR Code

บน Smart Phone) เวลาท ไมม IP Address กจะไม

แสดง QR Code ขนมา ซงตรงกบการท างานตามทตองการ

ทงนขนอยกบหนาจอของ Laptop ดวยคอหากมแสงสะทอน

จากหนาจอมาก )ภายนอกอาคาร) จะใชเวลาในการสแกนนาน

หนอย

Page 73: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

58

รปท 4- 2 ผลการสแกน QR Code

บน Smart Phone

4.2.2 Email Sender

การตงคา Email

ทดสอบโดยตงคา Email ดวย GoGo Widget การตงคานนจะทดลองดวาสามารถบนทกการ

ตงคาไดหรอไมและทดสอบความถกตองการการเขารหสและถอดรหสเพอน าไปใชในการสง Email

ตอไป โดยกรอก Email, Password และกดปม Save ดผลการท างาน

รปท 4- 3 การตงคา Email และผลลพทการตงคา

ผลการทดลอง

พบวาสามารถเขารหส รหสผาน )Password) กอนการบนทกลง Configuration File และ

ถอดรหสตอนเรยกใชงานไดถกตองทกครง และขนสถานะ “Success” เมอบนทกเสรจ ในกรอบดงรป

)รปท 4- 3 การตงคา Email และผลลพทการตงคา)

การสง Email

หลงจากตงคา Email ส าเรจแลว ทดสอบการสง Email โดยตงคา Email ดวย GoGo

Widget ในสวนของ Gmail Configuration กรอกผรบ หวขอ และเนอหาของ Email ในชอง

Recipient, Subject และ Body ตามล าดบ กดปม Send และดผลการทดลอง

Page 74: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

59

และใชภาษา Logo เขยนเพอสง Email ทมผรบเปน “[email protected]” ชอ

หวเรองเปน “Email Title” และขอความเปน “Email Body” ดวยค าสง ดงน

sendmail " [email protected]" "Email Title"

"Email Body"

รปท 4- 4 การสง Email ใน GoGo Widget เมอส าเรจ

รปท 4- 5 การสง Email ใน GoGo Widget เมอตงคาไมถกตอง

ผลการทดลอง

เมอมการตงคาทถกตอง )Email และรหสผานถกตอง) เมอกดสงจาก GoGo Widget หรอใช

ค าสงภาษา Logo กจะมการท างานเชนเดยวกน หากส าเรจจะมขอความแจงเตอนสถานะ “Success”

ดงรป )รปท 4- 4 การสง Email ใน GoGo Widget เมอส าเรจ) และท าการตรวจสอบ Email ทเปน

ฝงรบกไดรบส าเรจดงรป )รปท 4- 6 Email ทไดรบใน Outlook บน Windows 8) หาก Raspberry

Page 75: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

60

Pi ไม ได เชอมตออนเตอร เนต หรอทดลองต งคาดวยรหสผานท ไมถกตอง จะขนขอความ

“Authentication Error” ดงรป )รปท 4- 5 การสง Email ใน GoGo Widget เมอตงคาไมถกตอง)

ซงถกตองตามความตองการ

รปท 4- 6 Email ทไดรบใน Outlook บน Windows 8

4.2.3 SMS Sender

ทดสอบการสง SMS ดวย GoGo Widget ในสวนของ Send SMS หมายเลขโทรศพทของ

ผรบและขอความ ลงในชอง Phone number และ Message ตามล าดบ กดปม Send และดผลการ

ทดลอง รวมทงหดลองไมเสยบ Aircard เพอตรวจสอบความถกตองของสถานะการแจงเตอน

และใชภาษา Logo เขยนเพอสง SMS ทมผรบเปน “0856536xxx” ขอความเปน “Message

from JAmes” ดวยค าสง ดงน

sendsms "0856536xxx" "Message from JAmes"

Page 76: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

61

รปท 4- 7 การสง SMS ใน GoGo Widget เมอส าเรจ

รปท 4- 8 SMS ทไดรบใน Smart Phone

Page 77: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

62

รปท 4- 9 การสง SMS ใน GoGo Widget เมอม Error

ผลการทดลอง

เมอมการเสยบ Aircard ไวท Raspberry Pi และท าการสง SMS ส าเรจแลวจะมขอคววาม

ขนสถานะ “Success” ดงรป )รปท 4- 7 การสง SMS ใน GoGo Widget เมอส าเรจ) และมขอความ

สงไปทโทรศพทมอถอไดดงรป )รปท 4- 8 SMS ทไดรบใน Smart Phone) หากไมมการเสยบ

Aircard จะไมสามารถท าการสง SMS ได จะมสถานะแจงเตอน “Error : Device doesn’t exist”

ดงรป รปท 4- 9 การสง SMS ใน GoGo Widget เมอม Error ซงท างานไดถกตองตามความตองการ

4.2.4 RFID

รปท 4- 10 ค าสงทดสอบการท างาน RFID ในภาษา Logo

Page 78: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

63

ทดสอบการท างานของ RFID ดวยค าสงภาษา Logo ดงรป )รปท 4- 10 ค าสงทดสอบการ

ท างาน RFID ในภาษา Logo) ตามค าสงมการท างานคอเรมแรกสงใหใชงาน RFID (userfid)

แสดงเลข 0 บน GoGo Board ท าการเชคตลอด )forever) วาม RFID Tag มาแตะทเครองอาน

หรอไม (rfidtagfound?) หากมใหเครองอาน RFID สงเสยง beep (rfidbeep) และแสดง

หมายเลข 1 จากนนเชคดวา RFID Tag ทอานมานนมคาเปน 1 หรอไม )rfidbeep) หากใช ให

เขยนเลข 2 ทบลงไป )rfidbeep) และแสดงหมายเลข 2 รอจนกวาจะยก RFID Tag ออกจาก

เครออาน (waituntil [not rfidtagfound?]) จงแสดงหมายเลข 3 การทดลองจะ

ทดลองดวย RFID Tag ทมหมายเลข 1 และ 2

ผลการทดลอง

เมอมการเสยบ RFID Reader ไวท Raspberry Pi และท าการทดลองดงกลาวแลวตรวจด

สถานะการท างานโดยตรวจสอบจากตวเลขทแสดงบน GoGo Board คอขณะทสงใหใชงาน RFID จะ

แสดงเลข 0 ไปจนกวาม RFID Tag มาแตะ เมอแตะกมเสยง beep จาก RFID Reader แสดงหากเปน

RFID Tag ทมคาเปน 1 จะแสดงหมายเลข 1 แบบรวดเรวจนไมทนเหนและท าการเปลยนคาเปน 2

และแสดงหมายเลข 2 ขนมา เมอยก RFID Tag ออกกแสดงหมายเลข 3 คางไว

หากเปน RFID Tag ทมคาเปน 2 เมอท าการแตะทเครองอานจะแสดงหมายเลข 1 จะไม

เปลยนคาและไมแสดงหมายเลข 2 ท GoGo Board และเมอยกออกจะแสดงหมายเลข 3 ซงท างาน

ไดถกตองตามค าสงทเขยนไว

Page 79: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

64

4.2.5 Data Logging

รปท 4- 11 การบนทกคาเซนเซอร ในภาษา Logo

การทดสอบ Data Logging ทดสอบโดยบนทกคา เซนเซอร 1 และ เซนเซอร 2 ซงเปนคา

ความชนในดนทปลกตนไมและแสงสวาง ทมการเกบคา Log name เปน “humidity” และ “light”

โดยเขยนเปนภาษา Logo ดวยค าสงตามดานลางและดงรป (รปท 4- 11 การบนทกคาเซนเซอร ใน

ภาษา Logo) มการท างานคอบนทกคาเซนเซอร 1 และ 2 ทกๆ 2 วนาท ดผลการทดลองโดยดจาก

GoGo Home Screen สวน Data Logging และดการแสดงผลหนาส าหรบเลอกคาต างๆ ใน

Browser บนคอมพวเตอรและบน Smart Phone และหนาทแสดงกราฟ

record sensor1 "humidity"

record sensor2 "light"

Page 80: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

65

รปท 4- 12 หนาเลอกคาทบนทกไวใน Data Logging แสดงบนคอมพวเตอร

รปท 4- 13 หนาเลอกคาทบนทกไวใน Data Logging แสดงบน Smart Phone

ผลการทดลอง

เมอสงใหบนทกคาเซนเซอรไวประมาณ 10 ชวโมง และมาดกราฟแสดงคาของเซนเซอรท

GoGo Home Screen สวน Data Logging เลอกคาเปนคาทบนทกไวคอ humidity และ light ดง

รป )รปท 4- 12 หนาเลอกคาทบนทกไวใน Data Logging แสดงบนคอมพวเตอร) และดการแสดงผล

บน Smart Phone ดวย ดงรป )รปท 4- 13 หนาเลอกคาทบนทกไวใน Data Logging แสดงบน

Smart Phone) พบวามการแสดงผลทถกตอง

Page 81: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

66

สวนคาตางๆ ทบนทกไวนนกมคาทถกตองคอในตวอยางบนทกคาแสงสวาง )light) เสนสด าม

คานอยลงในชวงเยน ประมาณ 18:00 น. และเสนสฟาคาความชน (humidity) มคาคอยๆ ลดลง

เรอยๆ และเมอมการรดน าตนไมในเวลาประมาณ 22:00 น. (เพอดการเปลยนแปลงคา) กมคาสงขน

ตามความชนในดน และคอยๆ ลดลงไปอก

4.2.6 GoGo Home Screen

ทดสอบการแสดงผลของ GoGo Home Screen โดยเขาไปยง URL ทเปน IP Address ของ

Raspberry PI และตงคา Email และ Pushbullet Token และดผล

รปท 4- 14 หนา GoGo Home Screen บนคอมพวเตอร

Page 82: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

67

รปท 4- 15 หนา Setting บนคอมพวเตอร

รปท 4- 16 หนา GoGo Home Screen

บน Smart Phone

รปท 4- 17 Modal แสดง QR Code ทเปน IP

Address บน Smart Phone

ผลการทดลอง

พบวาแสดงผลไดดใน Browser ทงคอมพวเตอรและ Smart Phone ดงรปขางตน

Page 83: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

68

รปท 4- 18 หนา Setting

บน Smart Phone

รปท 4- 19 หนา Setting เมอบนทกการตงคา

ไดส าเรจบน Smart Phone

รปท 4- 20 เมนแสดงสวนตางของ GoGo

Home Screen บน Smart Phone

และเมอท าการบนทกการการตงคา )ดงรปขางตน) กท าไดถกตอง มการแจงเตอนวา

“Saved Configuration” ตนลาง ดงรป )รปท 4- 19 หนา Setting เมอบนทกการตงคาไดส าเรจบน

Smart Phone)

Page 84: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

69

4.2.7 Pi Display

รปท 4- 21 ค าสงทดสอบเลนเสยงและ Text-to-Speech ในภาษา Logo

ทดสอบโดยเลนเสยงทบนทกไวทชอ “audio_recording_1429538748811.mp3” ใน

Folder “recordings” รายละเอยดเกยวกบการบนทกเสยงดท Sound Recording (3.3.9 Speech

Recording) และใหพดหรอแปลงขอความเปนเสยงและเลน )Text-to-Speech) ขอความวา “Hello

I am a pet” โดยเรยกใชงานเปนภาษา Logo คอ playsound "audio_recording_1429538748811.mp3"

say "Hello I am a pet"

และดงรป (รปท 4- 21 ค าสงทดสอบเลนเสยงและ Text-to-Speech ในภาษา Logo)

รปท 4- 22 หนา Pi Display เมอแสดงบนคอมพวเตอร

Page 85: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

70

รปท 4- 23 หนา Pi Display เมอแสดงบน Smart Phone

ผลการทดลอง

พบวาใน Browser Chrome ทงคอมพวเตอรและ Smart Phone )iOS และ Android) ดง

รปขางตน สามารถเลนเสยงและแปลงขอความเปนเสยง )Text-to-Speech) ได

Native Browser )Android) และ Browser Mozilla Firefox (บนคอมพวเตอร และAndroid)

เลนไดแตเสยงไมสามารถแปลงขอความเปนเสยงได

4.2.8 File Manager

ทดสอบการแสดงผลและการท างานของการจดการไฟล File Manager โดยไปท GoGo

Home Screen สวนของ File Manager

รปท 4- 24 หนา File Manager บนคอมพวเตอร

Page 86: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

71

รปท 4- 25 สวนทใหอพโหลดไฟล บนคอมพวเตอร

รปท 4- 26 หนา File Manager

บน Smart Phone

รปท 4- 27 สวนทเลนเสยง บน Smart Phone

ผลการทดลอง

พบวาใน Browser ทงคอมพวเตอรและ Smart Phone ดงรปขางตน สามารถแสดงผลไดด

สามารถสราง text ไฟล สรางโฟลเดร อพโหลดไฟลไดแบบเลอกไฟลหรอ Drag and Drop ได เปลยน

การแสดงผล (Box view, List view, Columns list view) Filter (Files, Images, Archives, Videos,

Music or File name) Sorting (File name, Date, Size or Type) รวมถงการแสดงรป และเลน

ไฟลเสยง และอนๆ ได

Page 87: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

72

4.2.9 Sound Recording

ทดสอบการแสดงผลและการท างานของการบนทกเสยง Sound Recording โดยไปท GoGo

Home Screen สวนของ Sound Recording

รปท 4- 28 หนาบนทกเสยง )Sound Recording) บนคอมพวเตอร

รปท 4- 29 หนาขณะท าการบนทกเสยง

บน Smart Phone

รปท 4- 30 หนาแสดงผลลพทการบนทกเสยง

บน Smart Phone

Page 88: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

73

ผลการทดลอง

พบวาใน Browser Chrome ทงคอมพวเตอรและ Smart Phone )iOS และ Android) และ

Browser Mozilla Firefox ทงคอมพวเตอรและ Smart Phone (Android) ดงรปขางตน สามารถ

บนทกเสยงได

สวน Native Browser )Android) นนไมสนนสนนการบนทกเสยง

4.2.10 Web UI

ทดสอบการแสดงผลและการท างานของ Web UI โดยไปท GoGo Home Screen สวน

ของ Web UI สวนรายละเอยดการสราง HTML File ดไดทหวขอ Web UI (3.3.10 Web UI)

รปท 4- 31 หนาแสดง Web UI File บนคอมพวเตอร

Page 89: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

74

รปท 4- 32 หนาแสดง Web UI File

บน Smart Phone

รปท 4- 33 หนาแสดงไฟล HTML ทถกสรางมา

บน Smart Phone

ผลการทดลอง

พบวาใน Browser Chrome ทงคอมพวเตอรและ Smart Phone )iOS และ Android) และ

Browser Mozilla Firefox ท งคอมพว เตอร และ Smart Phone (Android) รวมไปถ ง Native

Browser )Android) ดงรปขางตนสามารถแสดงผลไดด และสามารถตรวจจบการกดปม เลอน Slider

เปลยน Switch และ Select ได

Page 90: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

75

4.2.11 Speech Recognition

ทดสอบการแสดงผลและการท างานของการแปลงเสยงเปนขอความ )Speech to text)

Speech Recognition โดยไปท GoGo Home Screen สวนของ Speech Recognition

รปท 4- 34 หนา Speech Recognition บนคอมพวเตอร

รปท 4- 35 Speech Recognition บน Smart Phone

Page 91: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

76

ผลการทดลอง

พบวาใน Browser Chrome (บนคอมพวเตอร iOS และ Android) แสดงผลไดดดงรป

ขางตน สามารถแปลงเสยงเปนขอความ )Speech to text) ได

สวน Native Browser )Android) และ Browser Mozilla Firefox (บนคอมพวเตอร และ

Android) แสดงผลไดด แตไมสนนสนน Speech Recognition

4.2.12 Pushbullet และ IFTTT

เมอตงคา Pushbullet Token แลวในหวขอการตงคาตางๆ ) 3.3.6 GoGo Home

Screen )ท าการทดสอบโดยสราง Recipe รายละเอยดดงหวขอ Pushbullet และ IFTTT (3.3.12

Pushbullet และ IFTTT, การใชงาน IFTTT ใน

ภาคผนวก) และใหสงคามาท Gogod

Page 92: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

77

รปท 4- 36 IFTTT Recipe ทเปน Twitter

ทดลองโดยใชบรการ Twitter เมอม Tweet ทม Hashtag เปน #mytweet ดงรป )รปท 4-

36 IFTTT Recipe ทเปน Twitter) ใหสง push notification ทม key เปน “twitter” value เปน

“TextNoHashtag” ดงรป )รปท 4- 37 สวนประกอบของ Recipe Twitter) คอเปนขอความท

Tweet แตไมรวม Hashtag เขามาดวย

รปท 4- 37 สวนประกอบของ Recipe Twitter

Page 93: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

78

รปท 4- 38 IFTTT การสราง Recipe ทเปน Instagram

และทดลองโดยใชบรการ Instagram เมอมรปภาพจากทกคนทม Hashtag เปน

#preyfornepal ดงรป )รปท 4- 38 IFTTT การสราง Recipe ทเปน Instagramรปท 4- 36 IFTTT

Recipe ทเปน Twitter) ใหสง push notification ทม key เปน “ig_nepal” value เปน

“Username” คอ username ของผโพสตรป

Page 94: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

79

รปท 4- 39 การ Tweet ขอความใน Twitter

รปท 4- 40 ผลลพททไดรบมาจาก Twitter และ Pushbullet

รปท 4- 41 ผลลพททไดรบมาจาก Instagram และ Pushbullet

Page 95: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

80

ผลการทดลอง

เมอทดลอง Tweet ดวย Hashtag #mytweet และขอความ “project ok” ดงรป )รปท 4-

39 การ Tweet ขอความใน Twitter) โดยปกต IFTTT จะตรวจสอบ Recipe ของเราภายในเวลา 5

นาท เมอรวาม Tweet ใหมตามเงอนไข กจะสง push มาท Pushbullet และมาถง Gogod ทม key

เปน “twitter” value เปน “project ok” ดงรป )รปท 4- 40 ผลลพททไดรบมาจาก Twitter และ

Pushbullet) ตามทตงไวตอนสราง recipe และตอน tweet ขอความจาก Twitter และ push จาก

Instagram ทม key เปน “ig_nepal” value เปน “woojae_park” ดงรป (รปท 4- 41 ผลลพทท

ไดรบมาจาก Instagram และ Pushbullet) จากนนสรางเปน KeyValue Packet ให GoGo Board

ท างานตอไป

Page 96: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

81

บทท 5 สรปและขอเสนอแนะ

5.1 สรปโครงงาน

โครงงานนมวตถประสงคเพอพฒนาสวนเพมขยายใหกบชดหนยนตเพอการเรยนรโกโกบอรด

โดยใช Raspberry Pi จดเดนของสวนเพมขยายทสรางดวย Raspberry Pi คอจะสามารถเพม

ความสามารถทเดมท าไดยากในระบบสมองกลฝงตวทวไป เนองจาก Raspberry Pi เปนเครอง

คอมพวเตอรทขบเคลอนดวยระบบปฏบตการ Linux ซงสามารถเขยนโปรแกรมใหท างานไดตาม

ตองการได

ความสามารถทสามารถท าไดไดแก การใช Air Card เพอรบสง SMS การเชอมตอเครอขาย,

การเลนไฟลสอชนดตางๆ , การใชบรการเครอขายเชน สงอเมล , อานและรบคาจากบรการบน

อนเตอรเนต เชน Pushbullet และ IFTT โครงงานนไดเพมความสามารถเหลานใหกบโกโกบอรด โดย

จะสงงานไดผานภาษา Logo ซงใชงานไดงายส าหรบเยาวชน รวมไปถงเพมสวนของการเขาใชงานผาน

Web Application หรอทเรยกวา GoGo Home Screen ซงสามารถแสดงผลไดดในทกอปกรณ

)Responsive web design) ไมวาจะเปนคอมพวเตอร หรอ Smart Phone ทสวยงามและงายตอการ

ใชงาน ประกอบไปดวยการแปลงขอความเปนเสยง (Text-to-Speech) และเลนผาน Browser, การ

จดการไฟล, การแสดงกราฟของขอมลทท าการบนทกไว , การบนทกเสยง (Voice Recording) เพอ

น าไปใชค าสงใหเลนไฟลเสยงใน GoGo Board, การใชสวนประกอบของ HTML และแปลงเสยงเปน

ขอค าสง )Speech Recognition) เพอสงงานไปยง GoGo Board ได

5.2 ปญหาและแนวทางแกไข

ปญหาทพบในโครงงานและแนวทางการแกไขคอ

การแสดงกราฟขอมลในสวนของ Data Logging (3.3.5 Data Logging) ในตอนแรกใน

ขนตอน Query ขอมลแบบ Auto Update ตองใชเวลานานกวะส าเรจ สวนวธแกไขคอสราง index

ของ filed ทท าการ Query ในฐานขอมลตอนทสรางตารางขอมล เมอม index แลวพบวามความเรว

ขนมาก และการเปลยนเปน Raspberry Pi 2 ทมหนวยประมวลผลการท างานทเรวกวากมผลท าให

Query ไดเรวขนไปอก

Page 97: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

82

สวนของ File Manager (3.3.8 File Manager) ไมสรางแสดง Thumbnail ของรปภาพและ

ไมสามารถสราง Thumbnail ของโฟลเดอรและไฟลอนๆได วธแกไขปญหาคอลง library ของ PHP ท

เกยวของไปดวย สวนทไมสามารถสราง Thumbnail ไดแกโดย ก าหนดสทธการเขาถงโฟลเดอรทเกบ

Thumbnail และ library ทเปน Responsive File Manager ใน Linux ใหเขาถงและ execute ได

ผาน Command Line ใน Linux คอ

chmod 775 –R thumbs และ chmod 775 –R filemanager

5.3 ขอเสนอแนะ

สวนเสรมบางอยางเชน การแปลงขอความเปนเสยง (Text-to-Speech) และและแปลงเสยง

เปนขอค าสง )Speech Recognition) ตองใชงานบน Chrome บนอปกรณทสามารถเชอมตอไปยง

อนเตอรเนตไดเทานน ทงนเพอการเลนเสยงจะเปนธรรมชาตกวารปแบบอน หากการเลนเสยงผาน

audio jack ของ Raspberry Pi กยงสามารถท างานไดแบบ offline แตคณภาพอาจจะไมทดเทยมกบ

ทเลนแบบขางตนได บรการสง Email และรบการแจงเตอน Pushbullet จ าเปนตองใชอนเตอรเนต

ในการเชอตอไปยงบรการนนๆ ควรตอ Raspberry Pi ดวยสาย LAN หรอ USB Wireless LAN กอน

ใชงาน

ใน Raspberry PI ควรใช micro SD card Class 10 หรอ Class สงๆ เพอความเรวและ

ประสทธภาพการท างานตางๆ นนเรวขนไปไดมากเชนการ boot ของระบบปฏบตการ, การใชงาน

เขาถงไฟลตางๆ และการโหลดขอมลเพอแสดงกราฟขอมล เปนตน

Page 98: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

83

เอกสารอางอง

[1] Resnick, M., Martin, F., Sargent, R., & Silverman, B. (1996). Programmable

bricks: Toys to think with. IBM Systems journal, 35(3.4), 443-452.

[2] Baum, D. (2003). Definitive Guide to Lego Mindstorms (Vol. 2). Apress.

[3] Lego Mindstorms [homepage on the Internet]

[cited 2014 Nov 18]. Available from:

http://en.wikipedia.org/wiki/Lego_Mindstorms

[4] Sipitakiat, A., Blikstein, P., & Cavallo, D. P. (2004, June). GoGo board:

augmenting programmable bricks for economically challenged audiences.

InProceedings of the 6th international conference on Learning sciences (pp.

481-488). International Society of the Learning Sciences.

[5] Arduino [homepage on the Internet]

[cited 2014 Nov 18]. Available from: http://en.wikipedia.org/wiki/Arduino

[6] Arduino [homepage on the Internet]

[cited 2014 Nov 11]. Available from: http://www.arduino.cc/

[7] Raspberry Pi [homepage on the Internet]

[cited 2014 Nov 11]. Available from: http://www.raspberrypi.org/

[8] Paulo Blikstein. (2013). Gears of our childhood: constructionist toolkits,

robotics, and physical computing, past and future. In Proceedings of the 12th

International Conference on Interaction Design and Children (IDC '13). ACM,

New York, NY, USA, 173-182.

[9] ระบบฝงตว [homepage on the Internet]

[cited 2014 Nov 20]. Available from: http://th.wikipedia.org/wiki/ระบบฝงตว

[10] ภาษาไพทอน [homepage on the Internet]

[cited 2014 Nov 20]. Available from: http://th.wikipedia.org/wiki/ภาษาไพทอน

Page 99: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

84

เอกสารอางอง (ตอ)

[11] Tkinter [homepage on the Internet]

[cited 2014 Nov 20]. Available from: http://en.wikipedia.org/wiki/Tkinter

[12] IFTTT [homepage on the Internet]

[cited 2014 Nov 20]. Available from: https://ifttt.com

[13] Pushbullet [homepage on the Internet]

[cited 2014 Nov 20]. Available from: https://www.pushbullet.com/

[14] PHP [homepage on the Internet] [cited 2015 May 9].

Avaliable from: http://en.wikipedia.org/wiki/PHP

[15] HTML )HyperText Markup Language) [homepage on the Internet]

[cited 2015 May 9]. Avaliable from: http://en.wikipedia.org/wiki/HTML

[16] JavaScript [homepage on the Internet]

[cited 2015 May 9]. Avaliable from: http://en.wikipedia.org/wiki/JavaScript

[17] OrientDB [homepage on the Internet]

[cited 2015 May 9]. Avaliable from: http://orientdb.com/

[18] WebSocket [homepage on the Internet]

[cited 2015 May 10]. Avaliable from: https://www.websocket.org/

[19] Web Speech API Specification [homepage on the Internet]

[cited 2015 May 10]. Avaliable from: https://dvcs.w3.org/hg/speech-api/raw-

file/tip/speechapi.html

[20] Festival Speech Synthesis System [homepage on the Internet]

[cited 2015 May 10]. Avaliable from: http://www.festvox.org/festival/

[21] pyorient - OrientDB driver for Python [homepage on the Internet]

[cited 2015 May 10]. Avaliable from:

https://github.com/orientechnologies/pyorient

Page 100: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

85

เอกสารอางอง (ตอ)

[22] qrcode - Pure python QR Code generator [homepage on the Internet]

[cited 2015 May 10]. Avaliable from: https://github.com/lincolnloop/python-

qrcode

[23] smtplib - SMTP protocol client [homepage on the Internet] [cited 2015 May

10]. Avaliable from: https://docs.python.org/2/library/smtplib.html

[24] PyCrypto - The Python Cryptography Toolkit [homepage on the Internet]

[cited 2015 May 10]. Avaliable from: https://www.dlitz.net/software/pycrypto/

[25] python-gammu (Python bindings for Gammu) [homepage on the Internet]

[cited 2015 May 10]. Avaliable from: http://wammu.eu/python-gammu/

[26] Recordmp3js [homepage on the Internet] [cited 2015 May 10].

Avaliable from: https://github.com/nusofthq/Recordmp3js

[27] chosen (unwieldy select boxes more friendly) [homepage on the Internet]

[cited 2015 May 10]. Avaliable from: https://github.com/harvesthq/chosen

[28] HighStock [homepage on the Internet] [cited 2015 May 10].

Avaliable from: http://www.highcharts.com/products/highstock

[29] RESPONSIVE filemanager [homepage on the Internet] [cited 2015 May 10].

Avaliable from: http://www.responsivefilemanager.com/

[29] jquery.qrcode.js [homepage on the Internet] [cited 2015 May 10].

Avaliable from: http://jeromeetienne.github.io/jquery-qrcode/

[30] Material Design for Bootstrap [homepage on the Internet] [cited 2015 Feb 6].

Avaliable from: https://fezvrasta.github.io/bootstrap-material-design/

Page 101: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

86

ภาคผนวก

Page 102: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

87

การใชงาน IFTTT

การ Active บรการตางๆ

ท าการ Active บรการตางๆ ทตองการโดยเขาทไป Channels

(https://ifttt.com/channels) และเลอกบรการ

เมอเลอก Channel หรอบรการไดแลวเชน Facebook คลกทปม Active ดงรป

Page 103: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

88

จะมหนาตางขนมาใหคลกยนยนเพอใหใชบรการนนๆ ได ซงอาจจะแตกตางกนไปแลวแต

บรการ

เมอ Active ส าเรจแลวกพรอมทจะใชบรการแลว

Page 104: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

89

การสราง Recipe

เขาไปท https://ifttt.com/myrecipes/personal/new คลกท this ดงรป

เลอก Trigger Channel หรอบรการทตองการรบ push Notification

เมอเลอก Channel แลว จากนนจะม Trigger ทใหเลอกตามแตละบรการ ดงตวอยางเปน

บรการ Facebook

Page 105: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

90

คลก Create Trigger

คลก that

เลอก Action Channel เปนบรการ Pushbullet

Page 106: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

91

เลอก Action เปน Push a note

แกไข Title ใหเปนค าทตองการใชเปน Key และแกไข Message เปน value ของ

KeyValue Packet ทจะน าไปใชตอไป โดยสามารถเพม Ingredient )คลกท เพอด

Ingredient) ลงไปในชอง message ได และคลก Create Action

ตรวจทานดครงสดทาย จากนนคลก Create Recipe

Page 107: โครงงานเลขที่ วศ.คพ. 37/2557learninginventions.org/wp-content/uploads/2015/03/Report...โครงงานเลขท วศ.คพ. 37/2557 เร

92

เมอสราง Recipe ส าเรจจะปรากฏดงรป