วันจันทร์ที่ 15 พฤษภาคม พ.ศ. 2560

จิกซอในจินตนาการ ตอนที่ 4 unity coding สำหรับโปรแกรมวาดรูปบน android

        ด้วยความที่ลักษณะของappค่อนข้างคล้ายไปทางเกม  จึงได้เลือกใช้unityสำหรับการสร้างตัวappขึ้นมา  ซึ่งunityจะค่อนข้างครบเครื่องในเรื่องการพัฒนาเกม และการเขียนโปรแกรมเชิงวัตถุ(Object)  ที่สำคัญยังสามารถพัฒนาappบนแพลตฟอร์มอื่นๆได้หลากหลายอีกด้วย  ในทีนี้เราจะสร้างandroid applicationกัน


หลักๆก็จะแบ่งส่วนการทำงานเป็นสามส่วน คือ
1. ส่วนที่เก็บข้อมูลของแต่ละdot และจัดข้อมูลเป็นpackage ก่อนส่งให้ controller
2. ส่วนTCP serverเพื่อให้มือถือทำหน้าที่เป็นhost สำหรับจ่ายpackageให้แต่ละclientที่เชื่อมต่อเข้ามา(Node mcu)
3. ส่วนGUIเพื่อตกแต่งให้โปรแกรมสวยงามและใช้งานง่าย  รวมถึงโปรแกรมเบื้องหลังที่ช่วยในส่วนการแสดงผล (prefab,raycast,etc.)

วันจันทร์ที่ 8 พฤษภาคม พ.ศ. 2560

จิกซอในจินตนาการ ตอนที่ 3 code รับส่งข้อมูล ระหว่าง APP และ Dot Matrix

#include 
#include 

#define SERVER_PORT 4000            //ค่า port ที่ต้องการเชื่อมต่อ
IPAddress server_ip = {192,168,43,1};       //ค่า ip ของ Server (อย่าลืมแก้เป็น IP ของตัวเอง)
 
const char* ssid = "chicky";         //ค่าของ SSID (อย่าลืมแก้เป็น ชื่อ SSID ของตัวเอง)
const char* password = "chicky#69"; //ค่าของ SSID (อย่าลืมแก้เป็น password ของตัวเอง)
 
WiFiServer server(SERVER_PORT); //สร้าง object server และกำหนด port ที่ต้องการเชื่อมต่อกับ server
WiFiClient client;              //สร้าง object client
Ticker second;

int ben = 0 , i = 0, j = 136, n = 136, fast;
int  number = 0, half_min = 0;
uint8_t mix_ben = 0, c =0;
const int latchPin = 15;//Pin connected to ST_CP of 74HC595
const int clockPin = 14;//Pin connected to SH_CP of 74HC595 
const int dataPin = 13; //Pin connected to DS of 74HC595  
int slot[144] ={0x08, 0x39, 0x5E, 0x7E, 0x7E, 0x3E, 0x1D, 0x38, /*" ",0*/
                0x08, 0x38, 0x5E, 0x7F, 0x7F, 0x3E, 0x0C, 0x0E, /*"ไก่",1*/
                0x00, 0x44, 0xCD, 0xFF, 0xFF, 0xCD, 0x44, 0x00, /*"1",2*/
                0x00, 0x89, 0x9B, 0xFB, 0xFB, 0x9B, 0x89, 0x00, /*"2",3*/
                0x00, 0x26, 0x6F, 0xE7, 0xE7, 0x6F, 0x26, 0x00, /*"3",4*/
                0x00, 0x48, 0xDC, 0xCF, 0xCF, 0xDC, 0x48, 0x00, /*"4",5*/
                0x00, 0x90, 0xB8, 0xBE, 0xBE, 0xB8, 0x90, 0x00, /*"5",6*/
                0x00, 0x40, 0xE0, 0xF8, 0xF8, 0xE0, 0x40, 0x00, /*"6",7*/
                0x00, 0x00, 0x80, 0xE0, 0xE0, 0x80, 0x00, 0x00, /*"จรวดขึ้น",8*/
                0x00, 0x00, 0x00, 0x6C, 0x92, 0x92, 0x6C, 0x00, /*"8",9*/
                0x00, 0x00, 0x00, 0x4C, 0x92, 0x92, 0x7C, 0x00, /*"9",10*/
                0x00, 0x00, 0x00, 0xFC, 0x22, 0x22, 0xFC, 0x00, /*"A",11*/
                0x00, 0x00, 0x00, 0xFE, 0x92, 0x92, 0x6C, 0x00, /*"B",12*/
                0x00, 0x00, 0x00, 0x7C, 0x82, 0x82, 0x44, 0x00, /*"C",13*/
                0x00, 0x00, 0x00, 0xFE, 0x82, 0x82, 0x7C, 0x00, /*"D",14*/
                0x00, 0x00, 0x00, 0xFE, 0x92, 0x92, 0x82, 0x00, /*"E",15*/
                0x00, 0x00, 0xFE, 0x12, 0x12, 0x02, 0x00, 0x00, /*"F",16*/
                              /*"add slot",17*/}; 

จิกซอในจินตนาการ ตอนที่ 2 วงจร



ในส่วนนี้จะเป็นวงจรที่ จะแปลงไฟ จาก 9V มาเป็น 5 V เพื่อเลี้ยงไฟ 5V ให้กับ Node Mcu V2 ซึ่งไฟ 9V นั้นสามารถหาได้ทั่ว ไป  7-11 เราเลือกใช้ถ่าน เพราะมันจะสะดวกด้านการเคลื่อนย้าย บล็อก ของแต่ละบล็อก

วันพฤหัสบดีที่ 4 พฤษภาคม พ.ศ. 2560

จิกซอในจินตนาการ ตอนที่ 1 แสดงผล DOT MATRIX





อุปกรณ์

1.       Dot matrix สีแดง ใช้ไฟเลี้ยง 5 V เป็นขา common cathode
2.       Board Driver สีแดง เป็นตัว Driver dotmartrix ใช้ชิพ 74HC595 เป็น ชิพที่ใช้เพิ่มขา Analog  ใช้ทั้งหมด 2 ตัว

Node MCU ปัญหา WDT RESET



Node mcu  ถ้าเกิด bug ประมาณนี้  เพราะว่า

1.              ทำ loop หลายรอบ
2.             code มีความยาวมากเกินไป
3.             wifi  หลุดบ่อย
4.             ถ้าไม่ได้แตะ ตัว Hardware เช่น กด หรือ จับไว้

wdt หรือ Watch Dog Timer เป็นวงจรเล็ก ๆ ที่เอาไว้เช็คว่าโปรแกรมยังทำงานปกติในเวลาทีกำหนด ถ้าโปรแกรมทำงานช้ากว่าที่กำหนดแสดงว่าโปรแกรมอาจทำงานไม่ปกติหรือแฮงค์ wdt reset ก็จะเริ่มทำงานเมื่อโปรแกรมทำงานสั่งให้ reset nodemcu ซึ่งเกิดจากโคดมีปัญหา หรือตัว hardware

วันเสาร์ที่ 29 เมษายน พ.ศ. 2560

รวมข้อมูล และปัญหา Node MCU

ข้อแตกต่างของ NodeMCU V1 V2 และ V3
V1 (หรือเวอร์ชั่นเป็นทางการก็คือ V 0.9) เป็นตัวแรกที่ออกมา โดยใช้ Module WiFi เบอร์ ESP-12 และ USB to Serial เบอร์ CH340
V2 (หรือเวอร์ชั่นเป็นทางการก็คือ V1.0) เป็น Official NodeMCU โดยปรับปรุงให้มีขนาดความกว้างเล็กลงส่วนความยาวยังคงเท่ากับเวอร์ชั่นแรก และมีประสิทธิภาพโดยรวมดีขึ้น โดยใช้ Module WiFi เบอร์ ESP-12E และ USB to Serial เบอร์ CP2102 ถือได้ว่าเป็นบอร์ดที่เล็กที่สุดเมื่อเทียบกันทั้ง 3 version

V3 ไม่ได้เป็น Official NodeMCU ซึ่งผลิตโดยบริษัท Lolin ใช้ Module WiFi เบอร์ ESP-12E เหมือน V2 แต่ใช้ USB to Serial เบอร์ CH340 เหมือน V1 บอร์ดมีขนาดใหญ่สุดในทั้ง 3 version คือกว้างเท่า V1 แต่ยาวกว่า

ติดตั้ง Arduino IDE ลงบน ESP8266 NodeMCU
1  .        https://www.arduino.cc/en/main/software

2. file >> Preferences

2.            Addition Board Manager URLs: ให้ใส่ http://arduino.esp8266.com/stable/package_esp8266com_index.json

วันพฤหัสบดีที่ 16 กุมภาพันธ์ พ.ศ. 2560

Pototype 2 สำรวจที่ พิพิธภัณ


Pototype 2
ต้องการแก้ปัญหา
1.            เด็กขาดความคิดสร้างสรรค์ ไม่มีจิตนากร
2.            เด็กขาดทักษะด้านแก้ปัญหา
3.            เล่นได้เฉพาะบุคคลกลุ่มเดียว
HMW
·       เราจะทำอย่างไงให้เด็กได้เคลื่อนไหวร่างกายไปพร้อมกับการได้เห็นสถานที่ต่างๆที่ไม่ใช่ที่บ้าน
·       เราจะทำอย่างไร ให้เด็กได้เล่นกันทุกคนไม่แย่งกันเล่น
·       เราจะทำอย่างไรให้เด็กได้เพลิดเพลินกับการเล่นให้มากที่สุด


วิธีเล่น
1.            วาดรูป
2.            รูปจะไปอยู่บน BOX
3.            BOX ต่างๆ จะโดนสับจนมั่ว
4.            ผู้เล่นต้องต่อบล็อกพวกนั้น ให้กับมาเป็นเหมือนเดิม

วันจันทร์ที่ 6 กุมภาพันธ์ พ.ศ. 2560

HW 3 Pototype 1






Pototype 1
ต้องการแก้ปัญหา
1.            เด็กไม่ออกกำลังกาย
2.            เด็กยังไม่มีประสบการณ์นอกสถานที่ ที่ไม่ใช่ที่บ้านของตัวเอง
HMW
·       เราจะทำอย่างไงให้เด็กได้เคลื่อนไหวร่างกายไปพร้อมกับการได้เห็นสถานที่ต่างๆที่ไม่ใช่ที่บ้าน
·       เราจะทำอย่างไรให้เด็กได้สนุกไปกับการเรียนรู้ โดยไม่ใช่แค่เด็กผู้ชาย หรือ เด็กผู้หญิงเพียงกลุ่มเดียว
·       เราจะทำอย่างไร ให้เด็กมีปฎิสัมพันที่ดีกับคนรอบข้างได้อย่างไร

วันพุธที่ 18 มกราคม พ.ศ. 2560

HW2 เก็บข้อมูลและสัมภาษณ์เด็กที่พิพิธภัณฑ์เด็ก(ทุ่งครุ) (ต่อ)


Persona

กลุ่มเป้าหมาย :   ผู้ปกครอง
ชื่อ :   น้าน้อย
backstory :   เป็นผู้ปกครองที่พาลูกชายมางานวันเด็ก
motivation goal :
  1. อยากให้ลูกได้คลายเครียดจากการเรียน
  2. ต้องการสร้างเงื่อนไขกับลูก หากอยากจะเล่นก็ต้องอ่านหนังสือด้วย
insight :   เพื่อให้ลูกรู้จักแบ่งเวลา และป้องกันเด็กติดเกม
quote :
"การที่เราไปห้ามไม่ให้เขาเล่นอะไรเลย เด็กเขาจะเครียด ซึ่งเราไม่อยากเห็นเขาเครียด"
hmw? :
  • เราจะสอนเด็กเรื่องการแบ่งเวลา ผ่านสื่อกลางอย่างของเล่นได้อย่างไร?
  • เราจะทำอย่างไรให้เด็กสนุกในขณะที่สอนเด็กไปด้วย?


HW2 เก็บข้อมูลและสัมภาษณ์เด็กที่พิพิธภัณฑ์เด็ก(ทุ่งครุ)

การบ้านครั้งที่ 2 :


         เก็บข้อมูลจาการสังเกตพฤติกรรมของกลุ่มเป้าหมาย และการสัมภาษณ์  ซึ่งคำถามที่ใช้เก็บข้อมูลมีดังนี้
  

คำถาม (ผู้ปกครอง) : 

  • ของเล่นที่ดีในความคิดของคุณคืออะไร? 
  • ซื้อของเล่นให้ลูกหลานบ่อยไหม? 
  • ปกติใช้เกณฑ์อะไรในการเลือกซื้อของเล่น? 
  • เคยให้ลูกหลานเล่นหุ่นยนต์ไหม? 
  • คาดหวังให้เด็กได้เรียนรู้อะไรจากการเล่นของเล่น?

คำถาม(เด็ก) : 

  • เล่นของเล่นบ่อยไหม? 
  • ปกติเล่นของเล่นเวลาไหน? 
  • ของเล่นที่ชอบที่สุดคืออะไร? เพราะอะไร?
  • ของเล่นที่ไม่ชอบคืออะไร? เพราะอะไร?
  • ถ้าของเล่นเกิดมีชีวิตขึ้นมา อยากให้ของเล่นนั้นทำอะไรได้?

HW1 สัมภาษณ์ลูกค้าในโรงอาหารมจธ.

การบ้านครั้งที่1 : 

Empathy map 

 





วันจันทร์ที่ 9 มกราคม พ.ศ. 2560

สมาชิกกลุ่ม 17


สมาชิกกลุ่ม 17

   นายศิวากร ศิริวัฒนากุล 58340500071 ( โอ๋ )

   นายธัญเทพ โททอง 58340500074 ( ฟิว )



                  นายแก้วกิรติ บัวแก้ว 58340500056 ( Max )