หน้าแรก ดูโปรเจกต์ทั้งหมด
Intermediate

โปรเจกต์ Arduino Opta™ OPC UA กับ Node-RED

สร้างระบบ control และ monitoring แบบ real-time โดยการเปลี่ยน Arduino Opta™ ของคุณให้เป็น OPC UA server และเชื่อมต่อเข้ากับ Node-RED panel

โปรเจกต์ Arduino Opta™ OPC UA กับ Node-RED
3,355 การดู
1 ถูกใจ

รายการอุปกรณ์และเครื่องมือ

1x Arduino Opta WiFi
-
}

แอปพลิเคชันและแพลตฟอร์ม

รายละเอียดและวิธีทำ

Introduction

โปรเจกต์นี้เป็นการสร้าง OPC-UA server บนแพลตฟอร์ม Arduino Opta™ โดยมี Node-RED client ทำหน้าที่เป็นแผงควบคุม (control panel) สำหรับระบบที่ใช้ Opta™ ช่วยให้สามารถควบคุมและตรวจสอบข้อมูลแบบ real-time ของ:

  1. Opta™ relays
  2. Digital inputs (เช่น ปุ่มกด)
  3. Modbus-connected temperature และ humidity sensor ผ่าน Modbus port ของ Opta™

What is OPC-UA?

OPC Unified Architecture (OPC-UA) คือโปรโตคอลการสื่อสารที่มีความยืดหยุ่นและไม่ยึดติดกับแพลตฟอร์ม (platform-agnostic) ซึ่งมีการใช้งานอย่างแพร่หลายในระบบ industrial automation

คุณสมบัติหลัก:

  1. Secure by design: มีการตรวจสอบสิทธิ์ (Authentication), การเข้ารหัส (encryption) และการตรวจสอบความถูกต้องของข้อมูล (integrity checks)
  2. Scalable and robust: รองรับตั้งแต่ระดับ embedded devices ไปจนถึงระบบ enterprise
  3. Interoperable: ใช้แนวทาง Information-model สำหรับการแลกเปลี่ยนข้อมูลที่มีโครงสร้าง
  4. Platform-independent: เป็นสถาปัตยกรรมแบบ service-oriented ที่เป็นมาตรฐาน

การนำ OPC-UA มาใช้ในโปรเจกต์นี้ช่วยให้การรวมระบบ (integration) ระหว่างฮาร์ดแวร์ Arduino Opta™ และระบบระดับสูงกว่า เช่น Node-RED, MES, SCADA และอื่นๆ เป็นไปได้อย่างราบรื่น สร้างอินเทอร์เฟซการควบคุมและตรวจสอบที่เป็นหนึ่งเดียวและทำงานร่วมกันได้

Code

สำหรับโปรเจกต์นี้ คุณจำเป็นต้องมี Arduino sketch สำหรับรัน OPC-UA server บน Opta™ และ Node-RED flow สำหรับสร้าง client control panel โดยไฟล์ Code ทั้งสองนี้สามารถดูได้ที่ส่วน Code ด้านล่าง เรามาดูกันว่าโค้ดเหล่านี้ทำหน้าที่อะไรบ้าง

opta_opcua_server

นี่คือ Arduino sketch (C++) ที่จะรันบน Arduino Opta™ ซึ่งจะช่วยให้เครื่องสามารถ:

  1. Host ตัว OPC-UA server บนแพลตฟอร์ม Opta™
  2. ควบคุม relay outputs
  3. อ่านสถานะ digital input (ปุ่มกด)
  4. อ่านค่า temperature และ humidity จากเซนเซอร์ Modbus

node-red-opc-ua-client

นี่คือ Node-RED flow ที่เชื่อมต่อในฐานะ OPC-UA client เข้ากับ Arduino Opta™ server เพื่อให้ผู้ใช้งานมี Dashboard ที่สามารถ:

  1. เปิด-ปิด (Toggle) relays
  2. ตรวจสอบสถานะของปุ่มกด
  3. แสดงค่าที่อ่านได้จาก Sensor แบบ real-time

How it works

ทำการ Flash Arduino Opta™ ด้วย OPC-UA server sketch opta_opcua_server/ ที่อยู่ในส่วน code ด้านล่าง โดยดาวน์โหลดไฟล์ .ino และใช้ Arduino IDE ในการ upload ลงใน Opta™

สำหรับการนำเข้า (import) Node-RED flow ให้ดาวน์โหลดไฟล์ json node-red-opc-ua-client/ จากส่วน code ด้านล่าง จากนั้นสามารถ import เข้าสู่ Node-RED ได้โดยตรง

จากนั้นตั้งค่า Node-RED ให้เชื่อมต่อกับ OPC-UA endpoint ที่ถูกต้อง เมื่อ sketch .ino ทำงานบน Opta™ ระบบจะแสดง IP address ผ่าน Serial Monitor ให้เปิด Serial Monitor ใน Arduino IDE ขณะที่ Opta™ เชื่อมต่ออยู่และรัน sketch เพื่อดู IP address สำหรับนำไปตั้งค่า endpoint

คราวนี้มาลองทดสอบโดยใช้ Dashboard เพื่อสั่งงาน relays, อ่านค่าปุ่มกด และตรวจสอบข้อมูล Sensor กันเลย!

Code

🔒 ปลดล็อก Code

สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้

รหัสอ้างอิงโปรเจกต์: arduino-optatm-opc-ua-with-nodered-a2a4a5
490 บาท
PromptPay QR Code