วันพฤหัสบดีที่ 27 สิงหาคม พ.ศ. 2558

วันที่ 50 ของการฝึกงานที่ FIBO

    วันสรุปผลที่มาฝึกงานที่ FIBO ตั่งแต่วันแรกที่เข้ามาครับมาวันแรกผมรู้สึกดีมากครับอาจารย์สะยามต้อนรับเป็นอย่างดีครับและแนะนำคำนิยามของ FIBO ครับอาจารย์สะยามได้แนะนำพี่ที่ปรึกษาให้พวกผมทั่ง 4 คนครับหลังจากนั้นอาจารย์ก็ให้พี่ดูแลพวกผมครับโดยการหาของมาให้เล่นครับมันคือ ARDUINO และ SHIELD มาทำการเขียนโปรแกรมตั่งแต่ไฟไฟกระพริบไฟเลยครับ คือพวกผมไม่มีพื้นฐานการเขียนโปรแกรมมาก่อนเลยครับที่เรียนอยู่มหาลัยก็เป็นแค่การเขียนภาษา C แค่พื้นฐานครับโดยเขียนลง PIC แบบงายครับมันทำให้ผมรู้สึกว่าผมยังไม่รู้อะไรเลยครับเกียวกับโปรแกรมแต่พอได้ไปฝึกงานที่ FIBO ทำให้ผมได้ความรู้ทางด้านโปรแกรมมากขึ้นและสามารถที่จะนำมาต่อยอดได้ครับ

วันจันทร์ที่ 27 กรกฎาคม พ.ศ. 2558

วันที่ 49 ของการฝึกงานที่ FIBO

       วันนี้พี่ปูเอาหัวฉีดพลาสติกมาให้ครับผมจึงทำงานทดลองครับผมทีได้คือพลาสติกออกมาครับผมดีใจมากครับ
ผมจึงทำการเขียนโปรแกรมให้มันทำงานอัตโนมัติครับโดยมีโปรแกรมแป็นแบบนี้ครับ

#define EN 24
#define X_DIR 28
#define X_STP 26
#define END_EFFECTOR        10
#include <LiquidCrystal.h>
#include <Wire.h> 
 //ประกาศ Library ของจอ I2C
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal lcd(16, 17, 23, 25, 27, 29);
const int analogInPin = A13;
int sensorValue = 0;
float RValue = 0;
float Rsensor = 0;
float Temperature = 0;
float Ta = 0;
float Tb = 0;
float Tc = 0;
const long table [72][2] =
{
 {-55,10723236},{-50,7366689},{-44,5132757},{-40,3624165},{-35,2591304},
 {-30,1874913},{-25,1371886},{-20,1014545},{-15,757881},{-10,571590},
 {-5,435026},{0,333964},{5,258497},{10,201659},{15,158499},{20,125468},
 {25,100000},{30,80223},{35,64759},{40,52589},{45,42951},{50,35272},
 {55,29119},{60,24161},{65,20144},{70,16874},{75,14198},{80,11998},
 {85,10181},{90,8674},{95,7419},{100,6369},{105,5487},{110,4744},
 {115,4115},{120,3581},{125,3126},{130,2737},{135,2404},{140,2117},
 {145,1869},{150,1655},{155,1469},{160,1307},{165,1166},{170,1043},
 {175,934},{180,839},{185,755},{190,681},{195,615},{200,557},{205,505},
 {210,459},{215,418},{220,382},{225,349},{230,319},{235,292},{240,269},
 {245,247},{250,227},{255,210},{260,194},{265,179},{270,166},{275,154},
 {280,143},{285,133},{290,124},{295,115},{300,107}};

void step (boolean dir, byte dirPin, byte stepperPin, int steps, int RPM) 
    digitalWrite (dirPin, dir); 
     for (int i = 0; i <steps; i++)
   { 
   digitalWrite (stepperPin, HIGH); 
   delayMicroseconds (150000/RPM); 
   digitalWrite (stepperPin, LOW); 
   delayMicroseconds (150000/RPM); 
   } 

 void setup()
  {
   pinMode(10,OUTPUT);
   pinMode(A13,INPUT);
   pinMode (X_DIR, OUTPUT); 
   pinMode (X_STP, OUTPUT); 
   pinMode (EN, OUTPUT); 
   digitalWrite (EN, LOW);
 
 }
 void loop() 
 {
   sensorValue = analogRead(analogInPin); // Read the SENSOR
   RValue = (sensorValue*5.0000)/1024.0000; //Calculated from sensor
   Rsensor = ((50/(5 - RValue))-10)*1000; //The value of the resistive sensors.
     //delay(100);
      for(int i =0 ; i<72 ; i++)
   {
     if(Rsensor>table[i][1])
     {
       Ta  = ((table[i-1][1])-Rsensor); //Calculated the resistive sensors
       Tb = Ta/((table[i-1][1])-(table[i][1]));
       Tc = Tb*5;       Temperature = (table[i][0])-Tc;
       lcd.clear();
       lcd.setCursor(0, 1);
       lcd.print("Temp =" ); 
       lcd.print(Temperature);
       lcd.print(" C");
       break;
     }
     
   }
 
     if(Temperature < 150)
    {
   digitalWrite(END_EFFECTOR, HIGH);   
    }
    else{digitalWrite(END_EFFECTOR, LOW);
         step (HIGH, X_DIR, X_STP, 200, 200 );
        }
    if(Temperature >= 170)
    {
        digitalWrite(END_EFFECTOR, LOW);   
    }
    else{digitalWrite(END_EFFECTOR, HIGH); }      
    
 }
   
   


วันที่ 48 ของการฝึกงานที่ FIBO

     วันนี้ผมได้ทดลองฉีดพลาสิกครับแต่ผลที่ได้คือพลาสติกไม่ยอมไหลผมคิดว่ามันต้องมีอะไรไปติดแน่ๆๆเลยครับผมต้องให้พี่ปูมาแก่ปัญหาให้ครับต้องรอเป็นพรุ่งนี้ครับเพราะปี่ปูจะเอาไปแช้น้ำยาละลายพลาสติกครับผมเลยทำการติดตั่งเซ็นเซอร์ตัวที่สองครับและรอทดลองหัวฉีดพลาสติกครับ


วันอาทิตย์ที่ 26 กรกฎาคม พ.ศ. 2558

วันที่ 47 ของการฝึกงานที่ FIBO

วันนี้พี่สองพาไปซื่อของที่บ้านหม้อครับพี่สองไปซื่อสลิงมาทำแขนกลของพี่เขาพวกผมทุกคนเลยขอติดรถไปด้วยครับโดยผมจะไปซือเวอร์เนียร์และพาบอมไปซือโน๊ดบุ๊กที่ ฟอร์จูนทาวน์ผมได้ซือเวอร์เนียร์มาด้วยครับ

วันพุธที่ 22 กรกฎาคม พ.ศ. 2558

วันที่ 46 ของการฝึกงานที่ FIBO

        วันนี้ผมได้ทำการเขียนโปรแกรมใหม่ เหตุผมที่ผมเขียนใหม่คือโปรแกรมอันเดิมมันยังไม่ดีครับมันยังอ่านค่าอุณหภูมิไม่ถูกต้องครับ แนวทางการเขียนของผมคือ ให้ความร้อนจากหัวฉีดพลาสติกแล้วแสดงผลออกทางจอภาพแล้วทำการคอนโทรลความร้อนให้คงที่จากนั้นให้ทำการจ่ายพลาสติกให้กับหัวหัวฉีดพลาสติก ครับ

#define END_EFFECTOR        10
#include <LiquidCrystal.h>

#include <Wire.h>
 //ประกาศ Library ของจอ I2C
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal lcd(16, 17, 23, 25, 27, 29);
const int analogInPin = A13;
int sensorValue = 0;
float RValue = 0;
float Rsensor = 0;
float Temperature = 0;
float Ta = 0;
float Tb = 0;
float Tc = 0;
const long table [72][2] =
{
 {-55,10723236},{-50,7366689},{-44,5132757},{-40,3624165},{-35,2591304},
 {-30,1874913},{-25,1371886},{-20,1014545},{-15,757881},{-10,571590},
 {-5,435026},{0,333964},{5,258497},{10,201659},{15,158499},{20,125468},
 {25,100000},{30,80223},{35,64759},{40,52589},{45,42951},{50,35272},
 {55,29119},{60,24161},{65,20144},{70,16874},{75,14198},{80,11998},
 {85,10181},{90,8674},{95,7419},{100,6369},{105,5487},{110,4744},
 {115,4115},{120,3581},{125,3126},{130,2737},{135,2404},{140,2117},
 {145,1869},{150,1655},{155,1469},{160,1307},{165,1166},{170,1043},
 {175,934},{180,839},{185,755},{190,681},{195,615},{200,557},{205,505},
 {210,459},{215,418},{220,382},{225,349},{230,319},{235,292},{240,269},
 {245,247},{250,227},{255,210},{260,194},{265,179},{270,166},{275,154},
 {280,143},{285,133},{290,124},{295,115},{300,107}};

 void setup()
  {
   pinMode(10,OUTPUT);
   pinMode(A13,INPUT);

 }
 void loop()
 {
   sensorValue = analogRead(analogInPin); // Read the SENSOR
   RValue = (sensorValue*5.0000)/1024.0000; //Calculated from sensor
   Rsensor = ((50/(5 - RValue))-10)*1000; //The value of the resistive sensors.
     delay(100);
      for(int i =0 ; i<72 ; i++)
   {
     if(Rsensor>table[i][1])
     {
       Ta  = ((table[i-1][1])-Rsensor); //Calculated the resistive sensors
       Tb = Ta/((table[i-1][1])-(table[i][1]));
       Tc = Tb*5;       Temperature = (table[i][0])-Tc;
       lcd.clear();
       lcd.setCursor(0, 1);
       lcd.print("Temperature =" );
       lcd.print(Temperature);
       lcd.print(" C");
       break;
     }
   
   }

     if(Temperature < 150)
    {
   digitalWrite(END_EFFECTOR, HIGH);  
    }
    else{digitalWrite(END_EFFECTOR, LOW); }
     
      if(Temperature >= 200)
    {
   digitalWrite(END_EFFECTOR, LOW);  
    }
    else{digitalWrite(END_EFFECTOR, HIGH); }    
   
 }
 
 

วันจันทร์ที่ 20 กรกฎาคม พ.ศ. 2558

วันที่ 45 ของการฝึกงานที่ FIBO

           วันนี้ผมได้ทำการเปลี่ยนตัวจับหัวฉีดพลาสติกครับเนื่องจารต้องทำงารติดพัดลมครับในการออกแบบของผมยังไม่ดีเท่าที่ควรครับคือรูขันน็อตมันไม่ตรงกับตัวอย่างเดิมครับมันแตกต่างกันอยู่ประมาณ 1-2 mm ครับจากนั้นได้ทำการเปลี่อนครับและทำการลงโปรแกรมครับซึงผลที่ผมทำสามารถฉีดพลาสติกได้ครับแต่ผมยังไม่ได้เอาโปรแกรมคอลโทรลมอเตอรืฉีดพลาสติกลงครับแค่รองดูว่ามันสามารถละลายพลาสติกได้ไหมครับซึงผลที่ออกมาเป็นที่น่าพอใจครับมันสามารถงานพรุ่งนี้คือเขียนโปรแกรมใหม่ครับแล้วหาไฟเลี้ยงให้กับพัดลมครับปัญหามันคือพัดลมใช้ไป 5V  0.11 A แต่บอร์ดไดร์ จ่ายไฟ 12 V ครับ




วันที่ 44 ของการฝึกงานที่ FIBO

                 วันนี้ผมได้ทำการทดรอง Heater หัวปรินเต้อครับโดนการเขียนโปรแกรมสั่งให้ร้อนหรือ HIGH และสั่งให้หยุดจ่ายไฟ หรือ LOW ในการทดลองนี้ผมทำขึงมาดูว่ามันสามารถใช้การใด้ครับซึ่งผลที่ได้คือสามารถใช้งานได้ครับและได้ทำการอ่านบทความเพื่อทำความเข้าใจให้การใช้งานและรอชินงานที่จะนำมาติดตั่งครับมันคือ ตัวจับตัวฉีดพลาสติกครับตัวเดิมมันไม่มีพัดลมผมเลยออกแบบมาเพื่อติดพัดลมให้มันครับ