หน้าแรกคู่มือIoTสอนใช้ Telegram Notification กับ IoT HMI แทน Line Notify
IOT
ขั้นสูง
19 นาที

สอนใช้ Telegram Notification กับ IoT HMI แทน Line Notify

วิธีตั้งค่า Telegram Bot สำหรับแจ้งเตือน IoT HMI ด้วย SK-070QE และ FAS-312MT หลัง Line Notify หยุดบริการ มีคำแนะนำการใช้ HTTP Protocol และ Postman

อัพเดทล่าสุด: 7/3/2569

ราคาชุดอุปกรณ์

฿7,230

การทำ Telegram Notification ด้วย IoT HMI

การใช้งาน Telegram Notification เป็นทางเลือกที่ยอดเยี่ยมสำหรับระบบแจ้งเตือนอุตสาหกรรม เนื่องจาก Line Notify จะยกเลิกการให้บริการในวันที่ 31 มีนาคม 2025 และ Telegram มีข้อดีคือสามารถใช้ฟรีโดยไม่มีข้อจำกัด

อุปกรณ์ที่ใช้ในตัวอย่าง

  • HMI: SK-070QE-G-WiFi Module (มี WiFi Module ในตัว)
  • PLC: FAS-312MT-AC-E (รองรับการสื่อสารหลายรูปแบบ)
  • Software: Postman สำหรับทดสอบ API

พื้นฐาน HTTP Protocol

HTTP (Hyper Text Transfer Protocol) เป็นโปรโตคอลที่ใช้ในการสื่อสารบนเว็บ ประกอบด้วย:

ส่วนประกอบหลัก

  • Client: อุปกรณ์ที่ส่งคำขอ (IoT HMI)
  • Server: เซิร์ฟเวอร์ที่รอรับคำสั่ง (Telegram Server)

ประเภท Request

  • GET Request: ขอข้อมูลเท่านั้น
  • POST Request: ส่งข้อมูลไปกับคำขอ (ใช้สำหรับส่งข้อความ)

Status Code ที่สำคัญ

  • 200: OK - สำเร็จ
  • 404: ไม่พบข้อมูล
  • 500: Server มีปัญหา

ขั้นตอนการตั้งค่า Telegram Bot

1. การติดตั้ง Telegram

  • Desktop: ไปที่ desktop.telegram.org
  • Mobile: ค้นหา "Telegram" ใน App Store หรือ Play Store

2. การสร้าง Bot

  1. เปิด Telegram แล้วค้นหา @BotFather
  2. กดปุ่ม Start
  3. ส่งคำสั่ง /newbot
  4. ตั้งชื่อ Bot (เช่น "Factonation Key Bot")
  5. ตั้ง Username (เช่น "Factonation_Notify_Bot")
  6. บันทึก Token ที่ได้รับไว้

3. การหา Chat ID

  1. เปิด Postman หรือเครื่องมือทดสอบ API
  2. สร้าง GET Request ไปที่:
https://api.telegram.org/bot[YOUR_TOKEN]/getUpdates
  1. ส่งข้อความทดสอบไปที่ Bot
  2. ส่ง Request อีกครั้งเพื่อดู Chat ID

การตั้งค่า HMI สำหรับส่งข้อความ

1. การสร้าง HTTP Request

  • URL: https://api.telegram.org/bot[TOKEN]/sendMessage
  • Method: POST
  • Timeout: 2000 ms
  • Header: Content-Type: application/json

2. การตั้งค่า JSON Payload

{
  "chat_id": "YOUR_CHAT_ID",
  "text": "YOUR_MESSAGE"
}

3. Parameter Configuration

  1. Send Mode: Bit Trigger
  2. Address: LB0 (จาก Off เป็น On)
  3. Automatic Reset: เปิดใช้งาน
  4. Format: JSON-Advanced

4. Payload Values

  • chat_id: Data Type = String, Value = Chat ID ของคุณ
  • text: Data Type = String, Address = LW0 (สำหรับข้อความ)

ตัวอย่างการใช้งานจริง

การแจ้งเตือน Alarm

// Script สำหรับ Alarm
if (M0 == 1) {
    clear_array();
    if (M1 == 1) {
        copy_string("Machine Breakdown Alert!", LW0);
    }
    else if (M2 == 1) {
        copy_string("Material Low Alert!", LW0);
    }
    LB0 = 1; // Trigger HTTP Request
}

การแจ้งเตือนการบรรลุเป้าหมาย

// Script สำหรับ Target Achievement
if (M10 == 1) {
    clear_array();
    append_int_to_string("Target Achieved: ", D7500, LW0);
    append_string(" pieces completed", LW0);
    LB0 = 1; // Trigger HTTP Request
}

การแจ้งเตือนตามเวลา

// Script สำหรับ Time-based Notification
if ((D14 == target_hour) && (D15 == target_minute)) {
    clear_array();
    copy_string("Daily Report - Production Summary", LW0);
    LB0 = 1; // Trigger HTTP Request
}

การแก้ปัญหาที่พบบ่อย

HTTP Request ไม่สำเร็จ

  • ตรวจสอบ WiFi Connection
  • ตรวจสอบ Token และ Chat ID
  • ตรวจสอบ Header Content-Type

ข้อความไม่ส่ง

  • ตรวจสอบ Trigger Bit Configuration
  • ตรวจสอบ Timeout Setting
  • ตรวจสอบ JSON Format

Bot ไม่ตอบกลับ

  • ตรวจสอบ Bot Status กับ @BotFather
  • ตรวจสอบ Chat ID ที่ถูกต้อง

เคล็ดลับการใช้งาน

  1. ใช้ Global Variables สำหรับข้อมูลที่ใช้หลาย Script
  2. สร้าง Custom Functions สำหรับการจัดการ String
  3. ตั้งค่า Timeout ให้เหมาะสม (แนะนำ 2000-5000 ms)
  4. ทดสอบด้วย Postman ก่อน นำไปใช้กับ HMI
  5. ใช้ Bit Trigger เพื่อประหยัดทรัพยากร

สรุป

การใช้ Telegram Notification กับ IoT HMI เป็นโซลูชันที่มีประสิทธิภาพและฟรี สามารถแทนที่ Line Notify ได้อย่างสมบูรณ์ ข้อดีหลักคือ:

  • ฟรีและไม่มีข้อจำกัด ในการส่งข้อความ
  • รองรับ HTTP Protocol ที่เป็นมาตรฐาน
  • ใช้งานง่าย และมีความยืดหยุ่นสูง
  • เหมาะสำหรับระบบอุตสาหกรรม ทุกประเภท

การเตรียมพร้อมสำหรับการเปลี่ยนแปลงจาก Line Notify จะช่วยให้ระบบแจ้งเตือนของคุณยังคงทำงานได้อย่างต่อเนื่องและมีประสิทธิภาพ