วันอังคารที่ 3 มีนาคม พ.ศ. 2563

งานที่ 5 ระบบควบคุณภาพในสถานประกอบการ

มาตรฐาน ISO 9001


ISO 9001 เป็นมาตรฐานสากลที่องค์กรธุรกิจทั่วโลกให้ความสำคัญ เพื่อความเป็นเลิศทางด้านคุณภาพ และความมีประสิทธิภาพของการดำเนินงานภายในองค์กร
ISO 9001 จึงเป็นระบบบริหารงานคุณภาพตามมาตรฐานสากล แนวคิดสำคัญของ ISO 9001 คือการจัดวางระบบบริหารงานเพื่อการประกันคุณภาพ ซึ่งเป็นระบบที่ทำให้เชื่อมั่นได้ว่ากระบวนการต่างๆ ได้รับการควบคุมและสามารถตรวจสอบได้ โดยผ่านระบบที่ระบุขั้นตอนและวิธีการทำงาน เพื่อให้มั่นใจว่าบุคลากรในองค์กรรู้หน้าที่ความรับผิดชอบและขั้นตอนต่างๆ ในการปฏิบัติงาน โดยต้องมีการฝึกอบรมให้ความรู้และทักษะในการปฏิบัติงาน มีการจดบันทึกข้อมูล รวมทั้งการตรวจสอบการปฏิบัติงานว่าเป็นไปตามที่ระบุไว้ในระบบหรือไม่ และมีการแก้ไขข้อผิดพลาดรวมทั้งมีแนวทางในการป้องกันข้อผิดพลาดเดิม
ในปัจจุบันมาตรฐาน ISO 9001:2015 มีการเพิ่มข้อกำหนดในเรื่องการทำความเข้าใจกับองค์กรและบริบทองค์กร การทำความเข้าใจกับความต้องการและความคาดหวังของผู้มีส่วนได้ส่วนเสียเพื่อใช้สำหรับการดำเนินการกับความเสี่ยงและโอกาสรวมถึงข้อกำหนดอื่นๆ ซึ่งเป็นพื้นฐานหนึ่งที่จะช่วยให้องค์กรสามารถมุ่งสู่การพัฒนาอย่างยั่งยืนได้ต่อไป
มาตรฐานที่ใช้ได้กับทุกองค์กรและมาตรฐาน ISO อื่น
ISO 9001 เน้นบทบาทของผู้บริหารระดับสูงที่จะต้องให้ความสำคัญกับความต้องการ ความคาดหวังของลูกค้า และผู้ที่เกี่ยวข้อง องค์กรทุกประเภท ไม่ว่าจะเป็นภาคอุตสาหกรรมการผลิตหรือภาคบริการทั้งรัฐและเอกชน สามารถนำระบบบริหารงานคุณภาพ ISO 9001 ไปใช้ได้ และไม่มีขีดจำกัดว่าต้องใช้กับองค์กรขนาดใหญ่ที่มีการลงทุนสูงและบุคลากร จำนวนมากเท่านั้น แต่ยังใช้ได้กับวิสาหกิจขนาดกลางและขนาดย่อม (SMEs) ซึ่งจะช่วยยกระดับคุณภาพผลิตภัณฑ์และบริการให้เทียบเคียงกับองค์กรขนาดใหญ่ ที่มีชื่อเสียงได้ ยิ่งกว่านี้ ISO 9001:2015 ใช้โครงสร้างของข้อกำหนดตาม Annex SL ในปัจจุบันมีมาตรฐานที่มีโครงสร้างนี้เช่น ISO 14001:2015, ISO 22301:2012 และ ISO 27001:2013 เป็นต้น ซึ่งในอนาคต มาตรฐาน ISO ทุกฉบับก็จะถูกปรับให้อยู่ในรูปแบบ Annex SL เหมือนกันทำให้การดำเนินการบูรณาการ (Integrate) มาตรฐานต่างๆได้ง่ายมากขึ้น
ประโยชน์ที่ได้รับภายในองค์กร
  • มีการบริหารเชิงกลยุทธและการบริหารความเสี่ยงจากบริบทและความต้องการและความคาดหวังของผู้มีส่วนได้ส่วนเสียขององค์กร
  • มีการจัดการกับความต้องการและความคาดหวังของผู้มีส่วนได้ส่วนเสีย
  • มีคุณภาพสินค้าที่ดีสม่ำเสมอและปรับปรุงอย่างต่อเนื่อง
  • มีระบบข้อมูลเพื่อการตัดสินใจได้อย่างแม่นยำขึ้น
  • มีการจัดการความรู้ขององค์กร
  • เกิดประสิทธิภาพและประสิทธิผลในการทำงานดีขึ้น
  • เป็นส่วนหนึ่งของการมุ่งสู่การพัฒนาอย่างยั่งยืน
  • มีโครงสร้างมาตรฐานที่บูรณาการ (Integrate) มาตรฐานต่างๆได้ง่ายมากขึ้น
ประโยชน์ที่ได้รับภายนอกองค์กร
  • ลูกค้าเกิดความมั่นใจในสินค้าและบริการ
  • การจัดการเป็นที่ยอมรับในระดับสากล
  • บรรลุความต้องการและความคาดหวังของผู้มีส่วนได้ส่วนเสีย
  • เสริมสร้างความสัมพันธ์อันดีกับผู้มีส่วนได้ส่วนเสีย
  • เพิ่มศักยภาพในการแข่งขัน
The Principles of Quality Management
QMP 1  : การให้ความสำคัญกับลูกค้า Customer Focus
QMP 2  : ความเป็นผู้นำ Leadership
QMP 3  : การมีส่วนร่วมของบุคลากร Engagement of People
QMP 4  : การบริหารเชิงกระบวนการ Process Approach
QMP 5  : การปรับปรุง Improvement
QMP 6  : การตัดสินใจบนพื้นฐานของหลักฐาน Evidence-base Decision Making
QMP 7  : การบริหารความสัมพันธ์ Relationship Management

วันอาทิตย์ที่ 1 มีนาคม พ.ศ. 2563

งานที่ 4 การจัดความขัดแย้งในองค์กร

การจัดความขัดแย้งในองค์กร


     
          ความขัดแย้ง เป็นสภาพการณ์ที่ทำให้บุคคลอยู่ในภาวะที่ไม่สามารถตัดสินใจ หรือตกลงหาข้อยุติอันเป็นที่พึงพอใจของทั้ง 2 ฝ่ายได้ หรือเป็นสิ่งที่เกิดขึ้นเมื่อบุคคลหรือกลุ่มประสบปัญหาของการตัดสินใจ ความขัดแย้งจึงเป็นปฏิสัมพันธ์ที่มีลักษณะของความไม่เป็นมิตร เป็นความตึงเครียดซึ่งเกิดจากความคิดเห็นที่ไม่ตรงกัน อาจเกิดขึ้นได้ในบุคคลคนเดียว ระหว่างบุคคล และระหว่างกลุ่ม เทคนิควิธีการจัดการความขัดแย้งของผู้บริหาร

 การเผชิญหน้ากับความขัดแย้ง ซึ่งเป็นหน้าที่ของผู้บริหารที่จะต้องกล้าเผชิญกับปัญหาและหาวิธีการจัดการกับความขัดแย้งให้เป็นไปในทิศทางที่เหมาะสม โดยพยายามลดอคติส่วนตัวลง การนำแนวคิดเชิงบูรณาการมาใช้ในการหาทางออกให้แก่ตนเองและอีกฝ่ายหนึ่ง
 ทำความเข้าใจสถานภาพของแต่ละฝ่าย (Understand each other’s position) เช่น การหาสาเหตุที่แท้จริงของความขัดแย้ง การศึกษาอารมณ์ความรู้สึกของแต่ละฝ่าย โดยผู้บริหารต้องพยายามชี้ให้เห็นว่าถ้าแต่ละฝ่ายไม่ให้ความร่วมมือในการ แก้ไขปัญหา ความขัดแย้งก็จะไม่สามารถประสบผลสำเร็จได้เลย
 ระบุปัญหา (Identify the problem) โดยที่แต่ละฝ่ายต้องสร้างความชัดเจนของปัญหาร่วมกัน ซึ่งเป็นขั้นตอนที่ยากมากที่สุด เนื่องจากแต่ละฝ่ายต่างก็มุ่งเอาชนะ นำไปสู่ความขัดแย้งมากยิ่งขึ้น ผู้บริหารต้องตระหนักในการใช้หลักมนุษยสัมพันธ์เพื่อให้ทั้งสองฝ่าย ร่วมกันแก้ปัญหา ให้ความเคารพต่อตนเองและฝ่ายตรงกันข้าม ตลอดจนให้แต่ละฝ่ายรับ ผิดชอบต่อหน้าที่ของตน
 แสวงหาทางเลือกและประเมินทางเลือก (Search for appropriate alternatives and evaluation) โดยให้ทั้งสองฝ่ายหาแนวทางที่หลากหลายเพื่อการแก้ปัญหา โดยทางเลือกดังกล่าวจะต้องได้รับการยินยอมและเป็นที่พอใจกันทั้งสองฝ่าย เพื่อให้ทุกฝ่ายได้รับชัยชนะ
 สรุปแนวทางและนำทางเลือกที่เหมาะสมไปใช้ (Conclusion and implement the appropriate alternatives) โดยให้แต่ละฝ่ายรับรู้ในข้อตกลงนั้นๆ แล้วนำข้อตกลงไปปฏิบัติ ซึ่งอาจมีการแก้ไขเพิ่มเติม การเจรจากันใหม่และร่วมกันแก้ปัญหาใหม่อีกครั้งหนึ่ง เพื่อปรับปรุงทางเลือกและข้อตกลงเพื่อให้เป็นที่พึงพอใจกับทุกฝ่าย ทั้งนี้ผู้บริหารอาจเลือกวิธีการหรือเทคนิคที่จะจัดการหรือบริหารความขัดแย้งในองค์กรเพื่อหาแนวทางแก้ไขและหาเหตุผล

งานที่ 3 กิจกรรมควบคุมความเสี่ยง


กิจกรรมควบคุมความเสี่ยง

นแผนก Machine Shop ฝั่ง Mechanic

สวมใส่รองเท้า Safety สวมแว่นตาในการขึ้นเครื่องกลึง เครื่องเจียร และเครื่องตัดแบบใบเลื่อย
สวมหูฟังทุกครั้งที่ใช้เครื่องจักร

 






                  





งานที่ 2 กิจกรรมเพิ่มประสิทธิภาพขององค์กร


กิจกรรมเพิ่มประสิทธิภาพขององค์กร

กิจกรรม 5ส เป็นกระบวนการหนึ่งที่เป็นระบบมีแนวปฏิบัติ ที่เหมาะสมสามารถนำมาใช้เพื่อปรับปรุงแก้ไขงานและรักษาสิ่งแวดล้อมในสถานที่ทำงานให้ดีขึ้น ทั้งในส่วนงานด้านการผลิต และด้านการบริการ ซึ่งนำมาใช้ในการเพิ่มประสิทธิภาพการทำงานขององค์กร ได้อีกทางหนึ่ง

  สะสาง Seiri (เซริ) (ทำให้เป็นระเบียบ) คือ การแยกระหว่างของที่จำเป็นต้องใช้กับของที่ไม่จำเป็นต้องใช้ขจัดของที่ไม่จำเป็นต้องใช้ทิ้งไป นศ.ได้เก็บและแยกอุปกรณ์ต่างๆให้แบบสัดส่วน



สะดวก Seiton (เซตง) = สะดวก (วางของในที่ที่ควรอยู่) คือ การจัดวางของที่จำเป็นต้องใช้ให้เป็นระเบียบสามารถหยิบใช้งานได้ทันที นศ.ได้ทำช่องแบ่งเก็บอุปกรณ์ ให้มีการหยิบใช้ไดง่ายขึ้น



 สะอาด Seiso (เซโซ) = สะอาด (ทำความสะอาด) คือการปัดกวาดเช็ดถูสถานที่ สิ่งของ อุปกรณ์ เครื่องมือเครื่องจักร ให้สะอาดอยู่เสมอ นศ.ได้มีการกวาดและเช็ดถูก่อนพักเที่ยงและเลิกงาน
 

สุขลักษณะ Seiketsu (เซเคทซึ) = สุขลักษณะ (รักษาความสะอาด) คือ การรักษาและปฏิบัติ 3ส ได้แก่ สะสาง สะดวก และสะอาดให้ดีตลอดไป นศ.ได้มีส่วนร่วมในการเก็บกวาดและซ้อมพื้นเพื่อให้คงสะอาดตลอด
 สร้างนิสัย Shitsuke (ซึทซึเคะ) = สร้างนิสัย (ฝึกให้เป็นนิสัย) คือ การรักษาและปฏิบัติ4ส หรือสิ่งที่ กำหนดไว้แล้วอย่างถูกต้องจนติดเป็นนิสัย นศ.ได้มีส่วนร่วมทุกครั้งเมื่อถึงเวลา

งานที่ 1 ผังโครงสร้างองค์กร ในสถานที่ฝึกงาน


 ผังโครงสร้างองค์กร ในสถานที่ฝึกงาน




โครงสร้างองค์กรจัดแบ่งกัน ตามหน้าที่การทำงาน

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


วันพุธที่ 3 ตุลาคม พ.ศ. 2561

Mini Project


Mini Project 

LED RGB CUBE 3x3x3






บล็อกไดอะแกรม







Software



int led1_red   = 3;              // กำหนดให้ led1_red ใช้ขาที่ 3
int led1_green = 4;            // กำหนดให้ led1_green ใช้ขาที 4  
int led1_blue  = 5;            // กำหนดให้ led1_blue ใช้ขาที่ 5


int led2_red   = 6;              // กำหนดให้ led2_red ใช้ขาที่ 6
int led2_green = 7;           // กำหนดให้ led2_green ใช้ขาที่ 7
int led2_blue  = 8;            // กำหนดให้ led2_blue ใช้ขาที่ 8


int led3_red   = 9;            // กำหนดให้ led3_red ใช้ขาที่ 9 
int led3_green = 10;         // กำหนดให้ led3_green ใช้ขาที่ 10   
int led3_blue  = 11;         // กำหนดให้ led3_blue ใช้ขาที่ 11  

int sw1 = 12;
int SW2;                           // กำหนดให้ sw1 ใช้ขาที่ 12   

void setup() {
  Serial.begin(9600);
  pinMode(led1_red,OUTPUT);     
  pinMode(led1_green,OUTPUT);
  pinMode(led1_blue,OUTPUT);

  pinMode(led2_red,OUTPUT);
  pinMode(led2_green,OUTPUT);
  pinMode(led2_blue,OUTPUT);

  pinMode(led3_red,OUTPUT);     // กำหนดให้ led1_red,led2_red,led3_red เป็น OUTPUT
  pinMode(led3_green,OUTPUT);  // กำหนดให้ led1_green,led2_green,led3_green เป็น OUTPUT  
  pinMode(led3_blue,OUTPUT);    // กำหนดให้ led1_blue,led2_blue,led3_blue เป็น OUTPUT

  pinMode(sw1,INPUT);           // กำหนดให้ sw1 เป็น INPUT

}

void loop() {
  SW2= digitalRead(sw1);
  Serial.println(SW2); 
   if (SW2 == 1){              // ถ้า sw1 = 1 ให้ทำต่อ
     LEDRED1();                 
     delay(500);
     LEDGREEN1();
     delay(500);
     LEDBLUE1();
     delay(500);
     LEDRED2();
     delay(500);
     LEDGREEN2();
     delay(500);
     LEDBLUE2();
     delay(500);
     LEDRED3();            // ให้ LEDRED1,LEDRED2,LEDRED3 ทำงาน       
     delay(500);              // หน่วงเวลา 0.5 วิ  
     LEDGREEN3();     // ให้ LEDGREEN1,LEDGREEN2,LEDGREEN3 ทำงาน         
     delay(500);             // หน่วงเวลา 0.5 วิ
     LEDBLUE3();        // ให้ LEDBLUE1,LEDBLUE2,LEDBLUE3 ทำงาน    
     delay(500);             // หน่วงเวลา 0.5 วิ  
 
}
  else                         // ถ้าไม่ใช่
  {
    LEDRED();          // ให้ LEDRED ทำงาน       
   delay (500);           // หน่วงเวลา 0.5 วิ    
   LEDGREEN();     // ให้ LEDGREEN ทำงาน         
   delay (500);          // หน่วงเวลา 0.5 วิ     
   LEDBLUE();       // ให้ LEDBLUE ทำงาน          
   delay (500);         // หน่วงเวลา 0.5 วิ     
  }
  }

void LEDRED(){
  digitalWrite(led1_red,HIGH);
  digitalWrite(led1_green,LOW);
  digitalWrite(led1_blue,LOW);
  digitalWrite(led2_red,HIGH);
  digitalWrite(led2_green,LOW);
  digitalWrite(led2_blue,LOW);
  digitalWrite(led3_red,HIGH);        // เขียน led1_red,led2_red,led3_red เป็น HIGH
  digitalWrite(led3_green,LOW);     // เขียน led1_green,led2_green,led3_green เป็น LOW
  digitalWrite(led3_blue,LOW);       // เขียน led1_blue,led2_blue,(led3_blue เป็น LOW
}

void LEDGREEN(){
  digitalWrite(led1_red,LOW);
  digitalWrite(led1_green,HIGH);
  digitalWrite(led1_blue,LOW);
  digitalWrite(led2_red,LOW);
  digitalWrite(led2_green,HIGH);
  digitalWrite(led2_blue,LOW);
  digitalWrite(led3_red,LOW);          // เขียน led1_red,led2_red,led3_red เป็น LOW
  digitalWrite(led3_green,HIGH);    // เขียน led1_green,led2_green,led3_green เป็น HIGH
  digitalWrite(led3_blue,LOW);        // เขียน led1_blue,led2_blue,(led3_blue เป็น LOW
}

void LEDBLUE(){
  digitalWrite(led1_red,LOW);
  digitalWrite(led1_green,LOW);
  digitalWrite(led1_blue,HIGH);
  digitalWrite(led2_red,LOW);
  digitalWrite(led2_green,LOW);
  digitalWrite(led2_blue,HIGH);
  digitalWrite(led3_red,LOW);         // เขียน led1_red,led2_red,led3_red เป็น LOW
  digitalWrite(led3_green,LOW);     // เขียน led1_green,led2_green,led3_green เป็น LOW
  digitalWrite(led3_blue,HIGH);      // เขียน led1_blue,led2_blue,(led3_blue เป็น HIGH
}
void LEDRED1(){
  digitalWrite(led1_red,HIGH);   // เขียน led1_red เป็น HIGH
  digitalWrite(led2_red,LOW);    // เขียน led2_red เป็น LOW
  digitalWrite(led3_red,LOW);    // เขียน led3_red เป็น LOW
}
void LEDRED2(){
  digitalWrite(led1_red,LOW);   // เขียน led1_red เป็น LOW
  digitalWrite(led2_red,HIGH);  // เขียน led2_red เป็น HIGH
  digitalWrite(led3_red,LOW);   // เขียน led3_red เป็น LOW
}
void LEDRED3(){
  digitalWrite(led1_red,LOW);   // เขียน led1_red เป็น LOW
  digitalWrite(led2_red,LOW);   // เขียน led2_red เป็น LOW
  digitalWrite(led3_red,HIGH);  // เขียน led3_red เป็น HIGH 
}
void LEDGREEN1(){
  digitalWrite(led1_green,HIGH);   // เขียน led1_green เป็น HIGH
  digitalWrite(led2_green,LOW);    // เขียน led2_green เป็น LOW
  digitalWrite(led3_green,LOW);    // เขียน led3_green เป็น LOW
}
void LEDGREEN2(){
  digitalWrite(led1_green,LOW);    // เขียน led1_green เป็น LOW
  digitalWrite(led2_green,HIGH);   // เขียน led2_green เป็น HIGH
  digitalWrite(led3_green,LOW);    // เขียน led3_green เป็น LOW
}
void LEDGREEN3(){
  digitalWrite(led1_green,LOW);    // เขียน led1_green เป็น LOW
  digitalWrite(led2_green,LOW);    // เขียน led2_green เป็น LOW
  digitalWrite(led3_green,HIGH);   // เขียน led3_green เป็น HIGH
}
void LEDBLUE1(){
  digitalWrite(led1_blue,HIGH);     // เขียน led1_blue เป็น HIGH
  digitalWrite(led2_blue,LOW);      // เขียน led2_blue เป็น LOW
  digitalWrite(led3_blue,LOW);      // เขียน led3_blue เป็น LOW
}
void LEDBLUE2(){
  digitalWrite(led1_blue,LOW);       // เขียน led1_blue เป็น LOW
  digitalWrite(led2_blue,HIGH);     // เขียน led2_blue เป็น HIGH
  digitalWrite(led3_blue,LOW);       // เขียน led3_blue เป็น LOW

}
void LEDBLUE3(){
  digitalWrite(led1_blue,LOW);    // เขียน led1_blue เป็น LOW
  digitalWrite(led2_blue,LOW);   // เขียน led2_blue เป็น LOW
  digitalWrite(led3_blue,HIGH);  // เขียน led3_blue เป็น HIGH
}



ลิงก์วิดีโอตัวอย่าง  https://youtu.be/oDJ-wighUXg
                                                                 







วันอังคารที่ 2 ตุลาคม พ.ศ. 2561

ปรับคะแนน


 

Arduino Based Automation ผ่าน Bluetooth


 Hardware  
  Input
  • Module Bluetooh HC - 05         
  Output
  • Relay 12V 4 ตัว
  • หลอดไฟ 12V 4 หลอด

 Software

#include <SoftwareSerial.h>                                 // เรียกใช้ไลบารี่

const int rxPin = 4;                                                // กำหนด rxPin ใช้ขา 4
const int txPin = 2;                                                // กำหนด txPin ใช้ขา 2             

SoftwareSerial mySerial(rxPin, txPin);                 // ตั้งค่าข้อมูล

const int Loads[] = {9, 10, 11, 12};                       // กำหนด Loads = 9,10,11,12

int state = 0;                                                           // ตั้ง state = 0
int flag = 0;                                                            // ตั้ง flag = 0

void setup() 
{
   for (int i=0;i<4;i++)                                           // กำหนด i=0 ถ้า i น้อยกว่า 4 ให้ i บวกเพิ่ม    
    {
      pinMode(Loads[i], OUTPUT);                       // กำหนด Loads[i] เป็น OUTPUT
    }
   mySerial.begin(9600);                                       // ความเร็บในการรับ-ส่งข้อมูล 9600
   for (int i=0;i<4;i++)                                           // กำหนด i=0 ถ้า i น้อยกว่า 4 ให้ i บวกเพิ่ม
    {
      digitalWrite(Loads[i], LOW);                        // เขียน Loads[i] = LOW โดยใช้วนลูป for
    }
   
}

void loop() 
{
    
    if(mySerial.available() > 0)                             // ถ้า mySerial.available มากกว่า 0
    {
      state = mySerial.read();                                 // state = mySerial.read
      flag=0;                                                           // flag = 0 
    }
    
    switch(state)                                                    // ให้ switch รับค่าจาก state
    {
      case '0':digitalWrite(Loads[0], HIGH);         // กรณี 0 ให้ Loads[0] เป็น HIGH
               flag=1;                                                  // flag = 1
               break;                                                    // หยุด
      case '1':digitalWrite(Loads[0], LOW);          // กรณี 1 ให้ Loads[0] เป็น LOW
               flag=1;                                                  // flag = 1
               break;                                                    // หยุด
      case '2':digitalWrite(Loads[1], HIGH);         // กรณี 2 ให้ Loads[1] เป็น HIGH
               flag=1;                                                  // flag = 1
               break;                                                   // หยุด
      case '3':digitalWrite(Loads[1], LOW);         // กรณี 3 ให้ Loads[1] เป็น LOW
               flag=1;                                                 // flag = 1
               break;                                                   // หยุด
      case '4':digitalWrite(Loads[2], HIGH);        // กรณี 4 ให้ Loads[2] เป็น HIGH
               flag=1;                                                 // flag = 1
               break;                                                   // หยุด
      case '5':digitalWrite(Loads[2], LOW);         // กรณี 5 ให้ Loads[2] เป็น LOW
               flag=1;                                                 // flag = 1
               break;                                                   // หยุด
      case '6':digitalWrite(Loads[3], HIGH);        // กรณี 6 ให้ Loads[3] เป็น HIGH
               flag=1;                                                 // flag = 1
               break;                                                   // หยุด
      case '7':digitalWrite(Loads[3], LOW);         // กรณี 1 ให้ Loads[0] เป็น LOW
               flag=1;                                                 // flag = 1
               break;                                                   // หยุด
      case '8':digitalWrite(Loads[0], LOW);         // กรณี 8 ให้ Loads[0] เป็น LOW
               digitalWrite(Loads[1], LOW);            // ให้ Loads[1] เป็น LOW
               digitalWrite(Loads[2], LOW);            // ให้ Loads[2] เป็น LOW
               digitalWrite(Loads[3], LOW);            // ให้ Loads[3] เป็น LOW
               flag=1;                                                 // flag = 1
               break;                                                   // หยุด
     }
}


FlowChart






วันศุกร์ที่ 28 กันยายน พ.ศ. 2561

งานในชั้นเรียนที่ 15


งานในชั้นเรียนที่ 15


CODE1
#include <LedControl.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 11
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float Tfloat;
long Tint;
LedControl lc=LedControl(8,10,9,1);
// Pin 8->DIN, 10->CLK, 9->CS(LOAD), 1 = No.of devices
void show6digit(int num)
{
  int seg1,seg2;
  seg2 = (((((num%100000)%10000)%1000)%100)/10);
  seg1 = (((((num%100000)%10000)%1000)%100)%10);
  lc.setDigit(0,0,seg1,false);
  if (num>=10)
      lc.setDigit(0,1,seg2,false);
  delay(300);
}
void setup(void)
{
  sensors.begin();
  lc.shutdown(0,false); 
  lc.setIntensity(0,5);
  lc.clearDisplay(0);
}
void loop(void)
{
  sensors.requestTemperatures();
  Tfloat = sensors.getTempCByIndex(0);
  Tint = int(Tfloat);
  lc.clearDisplay(0);
  show6digit(Tint);
}


CODE2
#include <LedControl.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 11
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float Tfloat;
long Tint;
LedControl lc=LedControl(8,10,9,1);
// Pin 8->DIN, 10->CLK, 9->CS(LOAD), 1 = No.of devices
void show6digit(long num)
{
  int seg1,seg2,seg3,seg4,seg5,seg6;
  seg6 = (num/100000);
  seg5 = ((num%100000)/10000);
  seg4 = (((num%100000)%10000)/1000);
  seg3 = ((((num%100000)%10000)%1000)/100);
  seg2 = (((((num%100000)%10000)%1000)%100)/10);
  seg1 = (((((num%100000)%10000)%1000)%100)%10);
  lc.setDigit(0,0,seg1,false);
  lc.setDigit(0,1,seg2,false);
  lc.setDigit(0,2,seg3,false);
  lc.setDigit(0,3,seg4,false);
  lc.setDigit(0,4,seg5,true);
  if (num>=100000)
      lc.setDigit(0,5,seg6,false);
  delay(300);
}
void setup(void)
{
  sensors.begin();
  lc.shutdown(0,false); 
  lc.setIntensity(0,5);
  lc.clearDisplay(0);
}
void loop(void)
{
  sensors.requestTemperatures();
  Tfloat = sensors.getTempCByIndex(0);
  Tint = long(Tfloat*10000);
  lc.clearDisplay(0);
  show6digit(Tint);
}


COED3
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 11
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float Tfloat;
LiquidCrystal_I2C lcd(0x27,16,2);
void setup(void)
{
  sensors.begin();
  lcd.begin();
  Serial.begin(9600);
}
void loop(void)
{
  sensors.requestTemperatures();
  Tfloat = sensors.getTempCByIndex(0);
  Serial.print(Tfloat);
  lcd.setCursor(0,0);
  lcd.print("T = ");
  lcd.print(Tfloat,4);
  delay(250);
}



งานในชั้นเรียนที่ 14 การเชื่อมต่อกับ PIR Sensor แสดงผลจอ LCD


งานในชั้นเรียนที่ 14 การเชื่อมต่อกับ PIR Sensor แสดงผลจอ LCD



CODE1
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int PIRpin = 8;
void setup()
{
  lcd.begin();
  pinMode(PIRpin,INPUT);
  lcd.home();
  lcd.print("Waiting for PIR");
  delay(10000);     
  lcd.clear();
}
void loop()
{
  int x = digitalRead(PIRpin);
  lcd.home();
  lcd.print("PIR = ");
  lcd.print(x);
  delay(100);
}

งานในชั้นเรียนที่ 13 งานโปรแกรมเชื่อมต่อโมดูลวัดระยะทางด้วยอัลตร้าโชนิก HC-SR04 และ Buzzer แสดงผลที่จอ LCD


งานในชั้นเรียนที่ 13 งานโปรแกรมเชื่อมต่อโมดูลวัดระยะทางด้วยอัลตร้าโชนิก HC-SR04 และ Buzzer แสดงผลที่จอ LCD 




CODE1
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int triggerPin = 13;
int echoPin = 12;
long duration,distCM,temp_distCM=0;
void setup()
{
  lcd.begin();
  lcd.setCursor(0,0);
  lcd.print("Dist =      cm");
  pinMode(triggerPin,OUTPUT);
  pinMode(echoPin,INPUT);
}
void loop()
{
  digitalWrite(triggerPin,LOW);
  delayMicroseconds(2);
  digitalWrite(triggerPin,HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin,LOW);
  duration = pulseIn(echoPin,HIGH);
  distCM = duration/58;
  if (temp_distCM != distCM)
  {
    lcd.setCursor(7,0);
    lcd.print("    ");
  }
  lcd.setCursor(7,0);
  lcd.print(distCM);
  temp_distCM = distCM;
  delay(300);
}

CODE2
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int triggerPin = 13;
int echoPin = 12;
long duration,distCM;
void setup()
{
  lcd.begin();
  pinMode(triggerPin,OUTPUT);
  pinMode(echoPin,INPUT);
}
void loop()
{
  digitalWrite(triggerPin,LOW);
  delayMicroseconds(2);
  digitalWrite(triggerPin,HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin,LOW);
  duration = pulseIn(echoPin,HIGH);
  distCM = duration/58;
  int x = constrain(distCM,4,19);
  lcd.clear();
  lcd.home();
  for (int i=4;i<=x;i++)
      lcd.print("*");
  delay(150);
}


CODE3
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int triggerPin = 13;
int echoPin = 12;
int buzzerpin = 11;
long duration,distCM;
void setup()
{
  lcd.begin();
  pinMode(buzzerpin,OUTPUT);
  pinMode(triggerPin,OUTPUT);
  pinMode(echoPin,INPUT);
  digitalWrite(buzzerpin,HIGH);
}
void loop()
{
  digitalWrite(triggerPin,LOW);
  delayMicroseconds(2);
  digitalWrite(triggerPin,HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin,LOW);
  duration = pulseIn(echoPin,HIGH);
  distCM = duration/58;
  lcd.home();
    if (distCM > 400)
  {   
    lcd.clear();
    lcd.print("**!!!Alarm!!!**");
    tone(buzzerpin,700,500);
    delay(500);
    digitalWrite(buzzerpin,HIGH);
    delay(70);
    lcd.setCursor(0,1);
    lcd.print(distCM); 
  }
  else
  {
    lcd.print("<-------------->");
    lcd.setCursor(0,1);
    lcd.print(distCM);
  }
}


CODE4
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int triggerPin = 13;
int echoPin = 12;
int buzzerpin = 11;
long duration,distCM;
void setup() 
{
  lcd.begin();
  pinMode(buzzerpin,OUTPUT);
  pinMode(triggerPin,OUTPUT);
  pinMode(echoPin,INPUT);
  digitalWrite(buzzerpin,HIGH);
}
void loop() 
{
  digitalWrite(triggerPin,LOW);
  delayMicroseconds(2);
  digitalWrite(triggerPin,HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin,LOW);
  duration = pulseIn(echoPin,HIGH);
  distCM = duration/58;
  lcd.home();
  if ((distCM>=4)&&(distCM<=30))
  {    
    lcd.clear();
    lcd.print("#####Alarm#####");
    int dl = distCM*20;
    tone(buzzerpin,600,dl);
    delay(dl);
    digitalWrite(buzzerpin,HIGH);
    delay(70);    
  }
  else
  {
    lcd.print("  Dist > 30 cm  ");
  }
}


งานในชั้นเรียนที่ 12 เซ็นเซอร์ตรวจจับ แสดงผลที่จอ LCD

งานในชั้นเรียนที่ 12 เซ็นเซอร์ตรวจจับ แสดงผลที่จอ LCD



CODE1
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int aval,temp_aval=0;
void setup()
{
  lcd.begin();
  lcd.setCursor(0,0);
  lcd.print("aval = ");
}
void loop()
{
   aval = analogRead(A0);
   if (temp_aval != aval)
   {
      lcd.setCursor(7,0);
      lcd.print("    ");
   }
   lcd.setCursor(7,0);
   lcd.print(aval);
   temp_aval = aval;
   delay(300);
}


CODE2
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int aval,temp_aval=0;
void setup()
{
  lcd.begin();
  lcd.setCursor(0,0);
  lcd.print("aval = ");
}
void loop()
{
   aval = analogRead(A0);
   if (temp_aval != aval)
   {
      lcd.setCursor(7,0);
      lcd.print("    ");
   }
   lcd.setCursor(7,0);
   lcd.print(aval);
   if (aval>400)
   {
      lcd.setCursor(0,1);
      lcd.print("Hi_Pattayatech");
   }
   else
   {
      lcd.setCursor(0,1);
      lcd.print("-----");
   }
   temp_aval = aval;
   delay(300);
}

งานในชั้นเรียนที่ 11 LDR แสดงผลที่จอ 7-Segmen


งานในชั้นเรียนที่ 11 LDR แสดงผลที่จอ 7-Segmen



CODE1
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int aVal=0,tempaVal=0;
void setup()
{
  lcd.begin();
}
void loop()
{
  aVal = analogRead(A0);

  if (tempaVal != aVal)
  {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("LDR");
    lcd.setCursor(0,1);
    lcd.print(aVal);
    delay(300);
  }
  tempaVal = aVal;
}


CODE2
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int aVal=0,tempaVal=0;
void setup()
{
  lcd.begin();
}
void loop()
{
  aVal = analogRead(A0);
  if (tempaVal != aVal)
  {
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print(aVal);
    lcd.setCursor(0,1);
    if (aVal<100)
      lcd.print("Dark");
    else
      lcd.print("Light");
    delay(300);
  }
  tempaVal = aVal;
}



งานในชั้นเรียนที่ 10 จอ LED 7-Segmen 2 จอ


งานในชั้นเรียนที่ 10 จอ LED 7-Segmen 2 จอ



CODE1
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
void setup()
{
  lcd.backlight();
  lcd.begin();//LiquidCrystal_I2C
}
void loop()
{
  lcd.setCursor(0,0);
  lcd.print("Hello LCD I2C");
  lcd.setCursor(0,1);
  lcd.print("Pattayatech");
}


CODE2
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int x=48;
int y=-79;
float z=8.74586;
void setup()
{
lcd.begin();
}
void loop()
{
  lcd.setCursor(0,0);
  lcd.print("x = ");
  lcd.print(x);
  lcd.setCursor(8,0);
  lcd.print("y = ");
  lcd.print(y);
  lcd.setCursor(0,1);
  lcd.print("z = ");
  lcd.print(z,4);
}


CODE3
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
byte heart[8] = {0x00,0x0A,0x1F,0x1F,0x0E,0x04,0x00,0x00};
byte smile[8] = {0x00,0x11,0x00,0x00,0x11,0x0E,0x00,0x00};
void setup()
{
  lcd.begin();
  lcd.createChar(0,heart);
  lcd.createChar(1,smile);
}
void loop()
{
  lcd.setCursor(0,0);
  lcd.write(0);
  lcd.setCursor(0,1);
  lcd.write(1);
}


CODE4
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
void setup()
{
  lcd.begin();
}
void loop()
{
  lcd.home();
  lcd.print("ECS");
  for (int i=0;i<13;i++)
  {
    delay(400);
    lcd.scrollDisplayRight();
  }
  for (int i=0;i<13;i++)
  {
    delay(400);
    lcd.scrollDisplayLeft();
  }
}


CODE5
#include <LiquidCrystal_I2C.h> 
LiquidCrystal_I2C lcd(0x27,16,2);
int aVal=0,tempaVal=0;
void setup()
{
lcd.begin();
}
void loop() 
{
aVal = analogRead(A0);
lcd.setCursor(0,0);
if (tempaVal != aVal)
{
  lcd.clear();
  lcd.print(aVal);
  delay(300);
}
tempaVal = aVal;
}


CODE6
#include <LiquidCrystal_I2C.h> 
LiquidCrystal_I2C lcd(0x27,16,2);
int aVal=0,tempx=0,x;
void setup()
{
  lcd.begin();
}
void loop() 
{
aVal = analogRead(A0);
lcd.setCursor(0,0);
x = map(aVal,0,1023,1,17);
  if (tempx != x)
  {
    lcd.clear();
    for(int i=0;i<x;i++)
    {
      lcd.print("*");
    }
  }
  tempx = x;
}


CODE7
#include <Keypad.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
char keys[4][4] = {
  {'7','8','9','A'},
  {'4','5','6','B'},
  {'1','2','3','C'},
  {'*','0','#','D'}};
byte rowPins[4] = {7,6,5,4}; 
byte colPins[4] = {3,2,1,0}; 
Keypad keypad = Keypad(makeKeymap(keys),rowPins,colPins,4,4);
void setup()
{
  lcd.begin();
  lcd.setCursor(0,0);
}
void loop()
{
  char key = keypad.getKey();
  if (key != NO_KEY)
  {
    lcd.print(key);
  }
}

CODE8
#include <Keypad.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
char keys[4][4] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}};
byte rowPins[4] = {7,6,5,4}; 
byte colPins[4] = {3,2,1,0}; 
char num[4];
int m=3;
Keypad keypad = Keypad(makeKeymap(keys),rowPins,colPins,4,4);
void setup()
{
  lcd.begin();
  lcd.setCursor(0,0);
  lcd.print("PW : ");
  lcd.setCursor(5,0);
  lcd.cursor();
}
void loop()
{  
  char key = keypad.getKey();
  if ((key != NO_KEY) && (key>=48) && (key<=57))
  {
    lcd.print(key);
    num[m]=key;
    m--;
    if(m<0)
    {
      delay(500);
      lcd.setCursor(0,1);
      if((num[3]=='4')&&(num[2]=='5')&&(num[1]=='9')&&(num[0]=='6'))
      {
        lcd.print("OPEN");
      }
      else
      {             
        lcd.print("CLOSE");
      }      
      delay(1500);      
      m=3;
      lcd.clear();
      lcd.setCursor(0,0);
      lcd.print("PW : ");
      lcd.setCursor(5,0);  
     }
   }
}



งานในชั้นเรียนที่ 8 Buzzer แสดงผลที่จอ LED 7-Segmen

งานในชั้นเรียนที่ 8 Buzzer แสดงผลที่จอ LED 7-Segmen




CODE1
#include "LedControl.h"
#define C4  262
#define D4  294
#define E4  330
#define F4  349
#define FS4 370
#define G4  392
#define A4  440
#define B4  494
#define C5  523
#define D5  587

int melody[] = {C4,D4,E4,F4,G4,A4,B4,C5};
float beats[] = {1,1,1,1,1,1,1,1};

int buzzer = 11;
int timestop = 70;

LedControl lc=LedControl(8,10,9,1);

void setup() {

lc.shutdown(0,false);
lc.setIntensity(0,5);
lc.clearDisplay(0);
int dl = 500;
pinMode(buzzer, OUTPUT);
int numnote;
numnote = sizeof(melody)/2;
for(int i=0;i<numnote;i++){
  lc.setChar(0,7-i,'-',false);
  tone(buzzer, melody[i],dl*beats[i]);
  delay(dl*beats[i]);
  digitalWrite(buzzer, HIGH);
  delay(timestop);
}
}

void loop() {
  // put your main code here, to run repeatedly:

}

CODE2
#include "LedControl.h"
#define C4  262
#define D4  294
#define E4  330
#define F4  349
#define FS4 370
#define G4  392
#define A4  440
#define B4  494
#define C5  523
#define D5  587

int melody[] = {D4,D4,E4,D4,G4,FS4,D4,D4,E4,D4,A4,G4,D4,D4,D5
,B4,G4,FS4,E4,C5,C5,B4,G4,A4,G4};
float beats[] = {0.5,0.5,1,1,1,2,0.5,0.5,1,1,1,2,0.5,0.5,1,1,1,1,1,0.5,0.5,1,1,1,2,};

int buzzer = 11;
int timestop = 70;

LedControl lc=LedControl(8,10,9,1);
// Pin 8->DIN, 10->CLK, 9->CS(LOAD),

void setup() {

lc.shutdown(0,false);
lc.setIntensity(0,5);
lc.clearDisplay(0);
int dl = 400;
pinMode(buzzer, OUTPUT);
lc.setChar(0,7,'H',false);
lc.setChar(0,6,'b',false);
lc.setChar(0,5,'d',false);
int numnote;
numnote = sizeof(melody)/2;
for(int i=0;i<numnote;i++){

  tone(buzzer, melody[i],dl*beats[i]);
  delay(dl*beats[i]);
  digitalWrite(buzzer, HIGH);
  delay(timestop);
}
}

void loop() {
  // put your main code here, to run repeatedly:

}

CODE3
#include "LedControl.h"
#define C4  262
#define D4  294
#define E4  330
#define F4  349
#define G4  392

int melody[] = {E4,D4,C4,D4,E4,E4,E4,D4,D4,D4,E4,G4,G4,E4,D4
,C4,D4,E4,E4,E4,D4,D4,E4,D4,C4};
float beats[] = {1,1,1,1,1,1,2,1,1,2,1,1,2,1,1,1,1,1,1,2,1,1,1,1,4,};

int buzzer = 11;
int timestop = 70;

LedControl lc=LedControl(8,10,9,1);
// Pin 8->DIN, 10->CLK, 9->CS(LOAD),

void setup() {

lc.shutdown(0,false);
lc.setIntensity(0,5);
lc.clearDisplay(0);
int dl = 250;
pinMode(buzzer, OUTPUT);
int numnote;
numnote = sizeof(melody)/2;
for(int i=0;i<numnote;i++){
  lc.setDigit(0,0,beats[i],false);
  tone(buzzer, melody[i],dl*beats[i]);
  delay(dl*beats[i]);
  digitalWrite(buzzer, HIGH);
  delay(timestop);
    }
    delay(500);
 
  lc.setChar(0,0,16,false);
}
int dly = 100;
void loop() {

  lc.setChar(0,0,1,false);
delay(dly);
 lc.setChar(0,0,2,false);
delay(dly);
 lc.setChar(0,0,3,false);
delay(dly);
 lc.setChar(0,0,4,false);
delay(dly);
 lc.setChar(0,0,5,false);
delay(dly);
 lc.setChar(0,0,6,false);
delay(dly);
 lc.setChar(0,0,7,false);
delay(dly);
 lc.setChar(0,0,8,false);
delay(dly);
}

งานที่ 5 ระบบควบคุณภาพในสถานประกอบการ

มาตรฐาน ISO 9001 ISO 9001 เป็นมาตรฐานสากลที่องค์กรธุรกิจทั่วโลกให้ความสำคัญ เพื่อความเป็นเลิศทางด้านคุณภาพ และความมีประสิทธิภาพของการ...