ข้ามไปยังเนื้อหาหลัก
อยู่ระหว่างดำเนินการ

แอปแท็บเล็ตเฝ้าดูการสั่นสะเทือนเครื่องจักร (InCBM) สำหรับโรงงานอาหารและเครื่องดื่ม

ลูกค้า: บริษัทเทคโนโลยีอุตสาหกรรมข้ามชาติ

เคสนี้คือแอปบนแท็บเล็ตที่รวมค่าการสั่นสะเทือนของมอเตอร์ ปั๊ม และโบลเวอร์ในโรงงานอาหารและเครื่องดื่มไว้ในจอเดียว พร้อมผังโรงงาน สีสถานะ กราฟแนวโน้ม และประวัติการแจ้งเตือน เราพัฒนาแอปนี้ต่อยอดจาก InCBM ให้อ่านค่า 76 Tag จากกล่องตรวจวัดการสั่นสะเทือน 3 ชุด และค่าจากเครื่องจักรอีก 5 เครื่องผ่าน Gateway ติดตั้งบนแท็บเล็ตของโรงงาน 2 เครื่องแล้ว และอยู่ระหว่างผู้ว่าจ้างตรวจรับงาน

อุตสาหกรรม
FMCG
ปี
2568–2569
ขอบเขตงาน
งานซอฟต์แวร์: พัฒนา Data Pipeline (ระบบส่งต่อข้อมูล) อ่านค่า 76 Tag จากกล่องตรวจวัด 3 ชุด เชื่อมแดชบอร์ดกับกล่องตรวจวัด ปรับแอป InCBM สำหรับเฝ้าดูเครื่องจักร เพิ่มเครื่องจักร 5 เครื่องที่ส่งค่าผ่าน Gateway ติดตั้งแอปบนแท็บเล็ตของโรงงาน 2 เครื่อง และจัดทำคู่มือการใช้งาน ไม่รวมเซนเซอร์และกล่องตรวจวัด ซึ่งฝั่งผู้ว่าจ้างเป็นผู้จัดหา
ระยะเวลา
กรกฎาคม 2568 – กันยายน 2569

สรุปสั้น

  • แอปนี้รวมค่าการสั่นสะเทือนของมอเตอร์ ปั๊ม และโบลเวอร์ในโรงงานอาหารและเครื่องดื่มไว้บนแท็บเล็ต โดยเราพัฒนาต่อยอดจาก InCBM
  • ระบบอ่านค่า 76 Tag (จุดข้อมูล) จากกล่องตรวจวัดการสั่นสะเทือน 3 ชุด และค่าจากเครื่องจักรอีก 5 เครื่องที่ส่งผ่าน Gateway
  • แอปแสดงผังโรงงานแบ่งโซน สีสถานะปกติ / เฝ้าระวัง / วิกฤต กราฟแนวโน้ม เกณฑ์แจ้งเตือนรายเซนเซอร์ และประวัติการแจ้งเตือนพร้อมปุ่มรับทราบ
  • กล่องตรวจวัด ไม่มี API (ช่องทางเชื่อมต่อระหว่างโปรแกรม) สำหรับรับค่าเกณฑ์จากแอป เกณฑ์ที่ตั้งในแอปจึงใช้ภายในแอปเท่านั้น
  • เราติดตั้งแอปบนแท็บเล็ตของโรงงาน 2 เครื่องและส่งคู่มือแล้ว ขณะนี้อยู่ระหว่างผู้ว่าจ้างตรวจรับงาน
01

โจทย์หน้างาน

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

02

สิ่งที่เราทำ

เราพัฒนาแอปแท็บเล็ตต่อยอดจาก InCBM (ระบบเฝ้าระวังสภาพเครื่องจักร) โดยมีระบบหลังบ้าน Python FastAPI และฐานข้อมูล PostgreSQL บนเซิร์ฟเวอร์ภายในโรงงาน ระบบอ่านค่า 76 Tag (จุดข้อมูล) จากกล่องตรวจวัด 3 ชุด และค่าจากเครื่องจักรอีก 5 เครื่องที่ส่งผ่าน Gateway (อุปกรณ์รวบรวมสัญญาณเซนเซอร์) แอปแสดงผังโรงงาน สีสถานะ กราฟแนวโน้ม เกณฑ์แจ้งเตือนรายเซนเซอร์ และประวัติการแจ้งเตือน

03

สถานะปัจจุบัน

เราติดตั้งแอปบนแท็บเล็ตของโรงงาน 2 เครื่อง ส่งคู่มือการใช้งาน และแจ้งงานเสร็จต่อผู้ว่าจ้างในเดือนกันยายน 2569 ขณะนี้อยู่ระหว่างผู้ว่าจ้างตรวจรับงาน

ผลที่วัดได้

จุดข้อมูล (Tag) ที่อ่านจากกล่องตรวจวัด
76
แท็บเล็ตที่ติดตั้งแอปให้โรงงาน
2

ที่มาของโจทย์

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

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

Velocity กับค่าคลื่นแรงกระแทกต่างกันอย่างไร

Velocity คือค่าความเร็วของการสั่น หน่วย mm/s ส่วนค่าคลื่นแรงกระแทกเป็นวิธีวัดของผู้ผลิตกล่องตรวจวัด หน่วย g ควรอ่านค่าทั้งสองร่วมกับคู่มือเครื่องมือและเกณฑ์ที่ทีมบำรุงรักษากำหนด

ข้อกำหนดและข้อจำกัด

ระบบต้องทำงานกับอุปกรณ์ตรวจวัดที่โรงงานมีอยู่ และต้องแสดงผลบนแท็บเล็ต ข้อกำหนดและข้อจำกัดหลักมีดังนี้

  • อ่านค่า 76 Tag จากกล่องตรวจวัด 3 ชุด แต่ละจุดวัดมีค่า Velocity (mm/s) และค่าคลื่นแรงกระแทก (g)
  • รองรับเครื่องจักรอีก 5 เครื่องที่ส่งค่าผ่าน Gateway ซึ่งแยก Velocity เป็นแกน X Y Z และมีค่าคลื่นแรงกระแทก
  • ระบบหลังบ้านและฐานข้อมูลทำงานบนเซิร์ฟเวอร์ภายในโรงงาน
  • กล่องตรวจวัด ไม่มี API สำหรับรับค่าเกณฑ์จากภายนอก เกณฑ์ที่ผู้ใช้ตั้งในแอปจึงไม่ถูกส่งกลับไปที่กล่อง
  • ระบบดึงรายการ Event (เหตุการณ์แจ้งเตือน) จากกล่องตรวจวัด ได้ แต่ดึงข้อความวิเคราะห์ (Analysis) ไม่ได้ เพราะไม่มี API รองรับ

ทำไมงานนี้ไม่ต้องติดเซนเซอร์ใหม่

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

แอปทำหน้าที่แสดงผลและแจ้งเตือนเท่านั้น ทีมซ่อมบำรุงเป็นผู้ตัดสินใจว่าจะเข้าตรวจหรือซ่อมเครื่องใด ระบบทำงานเป็นลำดับดังนี้

  1. 1

    เซนเซอร์วัดการสั่นที่ตัวเครื่อง

    จุดวัดอยู่ที่โบลเวอร์ ปั๊มน้ำ ชุดโรตารี่และสกรูลำเลียง (Screw Feed) มอเตอร์ และกระพ้อลำเลียง (Bucket) แต่ละจุดให้ค่า Velocity และค่าคลื่นแรงกระแทก

  2. 2

    อ่านค่าจากกล่องตรวจวัด และ Gateway

    เซิร์ฟเวอร์ภายในโรงงานอ่านค่า 76 Tag จากกล่องตรวจวัด 3 ชุด และอ่านค่าจากเครื่องจักรอีก 5 เครื่องที่ส่งผ่าน Gateway

  3. 3

    เก็บข้อมูลและเทียบกับเกณฑ์

    ระบบหลังบ้าน Python FastAPI เก็บค่าลงฐานข้อมูล PostgreSQL แล้วเทียบกับเกณฑ์ของแต่ละเซนเซอร์ เพื่อกำหนดสถานะปกติ เฝ้าระวัง หรือวิกฤต

  4. 4

    แสดงผลบนแอปแท็บเล็ต

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

  5. 5

    ตั้งเกณฑ์และรับทราบการแจ้งเตือน

    ผู้ใช้ตั้งช่วงเฝ้าระวังแยกรายเซนเซอร์และใส่ข้อความแจ้งเตือนเองได้ หน้าประวัติบอกเวลา เครื่อง และเซนเซอร์ที่เกิดเหตุ เมื่อกดรับทราบ (Acknowledge) รายการจะหายจากหน้าหลัก

สิ่งที่ส่งมอบ

เราส่งมอบงานซอฟต์แวร์ทั้งชุด ตั้งแต่การอ่านค่าจากอุปกรณ์จนถึงแอปบนแท็บเล็ต งานนี้ไม่รวมเซนเซอร์และกล่องตรวจวัด

  • Data Pipeline (ระบบส่งต่อข้อมูล) ที่อ่านค่า 76 Tag จากกล่องตรวจวัด 3 ชุด และเก็บลงฐานข้อมูลบนเซิร์ฟเวอร์ภายในโรงงาน
  • การเชื่อมแดชบอร์ดกับกล่องตรวจวัด รวมถึงการแสดงรายการ Event จากกล่องตรวจวัด ในแอป
  • การอ่านค่าจากเครื่องจักร 5 เครื่องที่ส่งผ่าน Gateway โดยตั้งเกณฑ์แยกได้ทั้ง Velocity แกน X Y Z และค่าคลื่นแรงกระแทก
  • แอป InCBM บนแท็บเล็ต: ผังโรงงาน สีสถานะ รูปเครื่องพร้อมจุดติดเซนเซอร์ กราฟแนวโน้ม หน้าตั้งเกณฑ์ และประวัติการแจ้งเตือน
  • ช่องบันทึกบนหน้าหลัก สำหรับจดรอบบำรุงรักษาหรือการซ่อมล่าสุดให้ผู้ใช้คนอื่นเห็น
  • การติดตั้งแอปบนแท็บเล็ตของโรงงาน 2 เครื่อง และคู่มือการใช้งาน

ขั้นตอนและการขยายขอบเขต

ระหว่างโครงการ ขอบเขตงานเพิ่มเครื่องจักรอีก 5 เครื่องที่ส่งค่าผ่าน Gateway เข้ามาในแอปเดียวกัน เครื่องกลุ่มนี้มีค่า Velocity แยก 3 แกน จึงต้องเพิ่มหน้าตั้งเกณฑ์ให้รองรับค่าแต่ละแกน ลำดับงานมีดังนี้

  1. กรกฎาคม 2568: เริ่มโครงการ อ่านค่าจากกล่องตรวจวัด 3 ชุด
  2. ระหว่างโครงการ: เพิ่มเครื่องจักร 5 เครื่องที่ส่งค่าผ่าน Gateway
  3. กันยายน 2569: ติดตั้งแอปบนแท็บเล็ตของโรงงาน 2 เครื่อง ส่งคู่มือ และแจ้งงานเสร็จต่อผู้ว่าจ้าง
  4. ปัจจุบัน: อยู่ระหว่างผู้ว่าจ้างตรวจรับงาน

ผลที่ยืนยันได้ถึงตอนนี้

ผลที่ยืนยันได้ถึงตอนนี้คือการติดตั้งและการส่งมอบเอกสาร เราติดตั้งแอปเฝ้าดูการสั่นสะเทือนบนแท็บเล็ตของโรงงาน 2 เครื่อง ส่งคู่มือการใช้งาน และแจ้งงานเสร็จต่อผู้ว่าจ้างในเดือนกันยายน 2569 หลังจากนั้นเราปรับคู่มือตามความเห็นของผู้ว่าจ้าง

แอปที่ติดตั้งอ่านค่า 76 Tag จากกล่องตรวจวัด 3 ชุด และค่าจากเครื่องจักรอีก 5 เครื่องผ่าน Gateway งานนี้ยังไม่มีตัวเลขวัดผลการซ่อมบำรุง เพราะอยู่ระหว่างผู้ว่าจ้างตรวจรับงาน เราจึงรายงานเฉพาะสิ่งที่มีเอกสารยืนยัน

สิ่งที่เราเรียนรู้

งานนี้ให้หลักการ 3 ข้อสำหรับงานต่อซอฟต์แวร์เข้ากับอุปกรณ์ตรวจวัดที่มีอยู่

  • ตรวจช่องทางข้อมูลของอุปกรณ์เดิมทั้งขาออกและขาเข้าก่อนออกแบบฟังก์ชัน ในงานนี้กล่องตรวจวัด ส่งค่าออกได้ แต่ไม่มี API รับค่าเกณฑ์และไม่มี API ส่งข้อความวิเคราะห์ เกณฑ์จึงอยู่ในแอป และแอปแสดงรายการ Event แทน
  • อุปกรณ์และข้อมูลที่ฝั่งลูกค้าเป็นผู้จัดหา คือเงื่อนไขของแผนงาน ในงานนี้เซนเซอร์และข้อมูลจากฝั่งลูกค้ามาถึงช้ากว่าแผน จึงควรระบุรายการเหล่านี้และวันที่ต้องได้รับไว้ในแผนตั้งแต่วันแรก
  • การแจ้งเตือนต้องมีผู้รับทราบและมีประวัติ ปุ่มรับทราบ หน้าประวัติ และช่องบันทึกการซ่อม ทำให้ทีมรู้ว่าการแจ้งเตือนใดมีคนรับเรื่องแล้ว และเครื่องใดเพิ่งได้รับการดูแล

นำแนวทางนี้ไปใช้กับโรงงานของคุณได้อย่างไร

ถ้าโรงงานของคุณมีระบบตรวจวัดการสั่นสะเทือนอยู่แล้ว คุณใช้แนวทางเดียวกับเคสนี้ได้ คืออ่านค่าจากอุปกรณ์เดิม เก็บบนเซิร์ฟเวอร์ภายในโรงงาน แล้วแสดงสถานะบนแท็บเล็ต ส่วนที่ต้องปรับคือวิธีอ่านข้อมูล เมื่ออุปกรณ์ของคุณเป็นยี่ห้ออื่นหรือส่งข้อมูลออกต่างช่องทาง

ส่วนที่ใช้ซ้ำได้ และส่วนที่ต้องปรับ

ส่วนของระบบใช้ซ้ำได้ต้องปรับเมื่อ
การอ่านค่าการอ่านค่าจากกล่องตรวจวัด และ Gatewayอุปกรณ์เป็นยี่ห้ออื่น ต้องตรวจก่อนว่าส่งข้อมูลออกทางช่องทางใดได้
การเก็บข้อมูลระบบหลังบ้าน Python FastAPI และ PostgreSQL บนเซิร์ฟเวอร์ภายในโรงงานยังไม่มีเซิร์ฟเวอร์ในโรงงาน หรือนโยบายไอทีกำหนดที่เก็บข้อมูลต่างออกไป
หน้าจอผังโรงงาน สีสถานะ กราฟแนวโน้ม และประวัติการแจ้งเตือนของแอป InCBMต้องใช้ผังโรงงาน รายชื่อเครื่อง และรูปเครื่องจริงของโรงงานคุณ
เกณฑ์แจ้งเตือนการตั้งเกณฑ์แยกรายเซนเซอร์และรายแกนทีมบำรุงรักษาของคุณต้องกำหนดช่วงเฝ้าระวังและวิกฤตของเครื่องแต่ละชนิดเอง
  • ตรวจว่าอุปกรณ์ตรวจวัดเดิมส่งข้อมูลออกทางไหนได้ และรับค่าเกณฑ์หรือคำสั่งกลับได้หรือไม่
  • เตรียมผังโรงงาน รายชื่อเครื่อง และรูปเครื่องจริงพร้อมตำแหน่งเซนเซอร์ให้ครบตั้งแต่ต้น เพราะเป็นข้อมูลหลักของหน้าจอ
  • แท็บเล็ตต้องเชื่อม Wi-Fi เข้าเครือข่ายเดียวกับเซิร์ฟเวอร์ในโรงงาน และควรทดสอบการแสดงผลกับแท็บเล็ตทุกรุ่นที่จะใช้จริง
  • ตกลงให้ชัดว่าใครรับทราบการแจ้งเตือน และใครบันทึกการซ่อมในแอป

เทคโนโลยีที่ใช้

InCBMกล่องตรวจวัดการสั่นสะเทือน (Vibration Monitor)Gateway เซนเซอร์สั่นสะเทือนModbus (Gateway)แอปแท็บเล็ต (Flutter)Python FastAPIPostgreSQL

คำถามที่พบบ่อย

ต้องติดเซนเซอร์ใหม่ทั้งหมดไหม

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

ตั้งเกณฑ์แจ้งเตือนเองได้ไหม

ได้ ผู้ใช้ตั้งช่วงเฝ้าระวังแยกรายเซนเซอร์ และใส่ข้อความที่ต้องการให้แสดงตอนแจ้งเตือนได้ เครื่องที่ส่งค่าผ่าน Gateway ตั้งแยกได้ทั้ง Velocity แกน X Y Z และค่าคลื่นแรงกระแทก เกณฑ์นี้ใช้ภายในแอป ไม่ได้ส่งกลับไปเปลี่ยนค่าที่กล่องตรวจวัด

ข้อมูลการสั่นสะเทือนเก็บไว้ที่ไหน

ในเคสนี้ระบบหลังบ้านและฐานข้อมูล PostgreSQL ทำงานบนเซิร์ฟเวอร์ภายในโรงงาน ถ้าโรงงานของคุณมีนโยบายเรื่องที่เก็บข้อมูล ควรแจ้งตั้งแต่ช่วงสำรวจ เพื่อวางที่ตั้งเซิร์ฟเวอร์ให้ตรงนโยบาย

ใช้กับอุปกรณ์ตรวจวัดยี่ห้ออื่นได้ไหม

เคสนี้เชื่อมกับกล่องตรวจวัด และ Gateway ถ้าเป็นอุปกรณ์อื่น ต้องตรวจก่อนว่าส่งข้อมูลออกทางช่องทางใดได้บ้าง แล้วจึงประเมินงานเชื่อมเข้าแอป

งานนี้เสร็จแล้วหรือยัง

เราติดตั้งแอปบนแท็บเล็ตของโรงงาน 2 เครื่องและส่งคู่มือการใช้งานแล้ว ขณะนี้อยู่ระหว่างผู้ว่าจ้างตรวจรับงาน

อยากได้ระบบแบบนี้ในงานของคุณ?