|
ทำความรู้จักกับ SCADA
SCADA
คืออะไร
SCADA
นั้นย่อมาจากคำว่า
Supervisory Control And Data
Acquisition
เป็นระบบตรวจสอบและวิเคราะห์ข้อมูลแบบ
Real-time
ใช้ในการตรวจสอบสถานะตลอดจนถึงควบคุมการทำงานของระบบควบคุมในอุตสาหกรรมและงานวิศวกรรมต่าง
ๆ เช่น งานด้านโทรคมนาคมสื่อสาร การประปา การบำบัดน้ำเสีย การจัดการด้านพลังงาน
อุตสาหกรรมการกลั่นน้ำมันและก็าซ อุตสาหกรรมเคมี อุตสาหกรรมประกอบรถยนต์ การขนส่ง
กระบวนการนิวเคลียร์ในโรงไฟฟ้าเป็นต้น ตัวอย่างการใช้งานเช่นใช้
SCADAตรวจสอบข้อมูลเช่นการรั่วไหลของของเหลวที่เกิดขึ้นในท่อขนส่งจากตัวตรวจจับแล้วส่งสัญญาณแจ้งเตือนให้พนักงานทราบ
โดยส่งข้อมูลสู่ส่วนกลางของระบบ
SCADA
เป็นต้น
นอกจากนั้น SCADA
อาจทำหน้าที่คำนวนและประมวลผลข้อมูลที่ได้จากฮาร์ดแวร์ต่าง ๆ เช่น
PLC, Controller, DCS, RTU
แล้วแสดงข้อมูลทางหน้าจอ หรือส่งสัญญาณควบคุมฮาร์ดแวร์ดังกล่าว
เช่นหากอุณหภูมิของอุปกรณ์สูงเกินพิกัด ให้ทำการปิดอุปกรณ์นั้นเป็นต้น
โดยสั่งงานผ่าน PLC
หรือ Controller
ที่ติดต่ออยู่ ทั้งนี้
SCADA
สามารถเก็บรวบรวมข้อมูลที่ได้จากระบบควบคุมทั้งหมดไว้ในฐานข้อมูลเพื่อให้พนักงานหรือโปรแกรมอื่น
ๆ สามารถนำไปใช้งานได้
SCADA
นั้นเข้าไปมีส่วนในงานควบคุมทั้งเล็กและใหญ่ที่ต้องการแสดงผล
แลกเปลี่ยนข้อมูล หรือควบคุมระบบต่าง ๆ จากส่วนกลาง
เพื่อการทำงานของระบบรวมที่สัมพันธ์กัน
มองเห็นภาพรวมได้อย่างชัดเจนและมีความรวดเร็วต่อเหตุการณ์ต่าง ๆ ที่เกิดขึ้น
ระบบ
SCADA
ในปัจจุบันมีความสามารถในการสื่อสาร ควบคุม และประมวลผลข้อมูลจาก
I/O
ของอุปกรณ์เช่น PLC, DCS,
RTU
ได้ถึงระดับที่เกินหนึ่งแสน
I/O
แล้ว
และได้รับการพัฒนาให้มีความสามารถรองรับความต้องการใหม่ ๆ
ของผู้ใช้งานอย่างต่อเนื่องตลอดมา
SCADA
เริ่มใช้งานในคอมพิวเตอร์ตั้งแต่ระบบปฏิบัติการ
DOS, VMS
และ
UNIX
จนมาถึงระบบปฏิบัติการ
Windows NT, XP, Server 2003
และ
LINUX
ในที่นี้จะแสดงลักษณะสำคัญของ
SCADA
ตามโครงสร้าง
(Architecture)
หน้าที่การทำงาน
(Functionality)
และ
การพัฒนาโปรเจ็ค
(Application Development)
เพื่อให้คุณผู้อ่านได้เข้าใจส่วนสำคัญของ
SCADA
ได้อย่างละเอียด
โครงสร้างของ
SCADA (Architecture)
โครงสร้างด้านฮาร์ดแวร์
(Hardware Architecture)
SCADA
แบ่งตามโครงสร้างฮาร์ดแวร์ได้สองระดับคือ
Client
และ
Data Server
หรือเรียกสั้น ๆ ว่า
Server
โดยที่
Client
คือคอมพิวเตอร์ที่รับและส่งข้อมูลไปยัง
Data Server
โดยฝั่ง
Client
นี้จะแสดงผลการทำงานของระบบควบคุมเช่น แสดงเป็นกราฟิก กราฟแบบต่อเนื่อง
หรือระบบแจ้งเตือนเมื่อเกิดเหตุการณ์ฉุกเฉินหรือต้องการแจ้งเตือน เป็นต้น ฝั่ง
Client
สามารถสั่งงานควบคุมไปยัง
Data Server
เพื่อส่งสัญญาณไปยัง
PLC, DCS
หรือ
Controller
อีกทอดหนึ่ง ส่วน
Data Server
จะทำหน้าที่ติดต่อกับ
PLC, DCS, Controller
หรือ
RTU
ต่าง ๆ
เพื่อรับสัญญาณและส่งสัญญาณไปยัง
Client
และรับการร้องขอจาก
Client
เพื่อควบคุมอุปกรณ์
PLCและ
Controller
ต่าง ๆ
Client
และ
Data Server
ส่วนใหญ่ติดต่อกันผ่านระบบเครือข่าย
Ethernet
ดังรูปที่ 1-01

รูปที่
1-01
แสดงโครงสร้างแบบฮาร์ดแวร์ของระบบ
SCADA
จากรูปที่
1-01
นั้น
Controller
จะติดต่อกับอุปกรณ์
Field Instrument
ต่าง ๆ
เช่นเซ็นเซอร์ รีเลย์ เป็นต้นเพื่อนำสัญญาณมาให้กับ
Data Server
โครงสร้างด้านซอร์ฟแวร์
(Software Architecture)
โครงสร้างด้านซอร์ฟแวร์ของระบบ
SCADA
นั้นมีข้อที่ต้องทราบคือ
SCADA
ใช้เทคโนโลยีในการสื่อสารกับฮาร์แวร์ (เช่น
PLC, DCS)
ต่าง ๆ
กันไปตามผู้ผลิต เช่นการใช้
Driver
เฉพาะของผู้ผลิต SCADA
เพื่อสื่อสารกับ PLC,
DCS
เป็นต้น ซึ่งในปัจจุบันมีการกำหนดมาตรฐานกลางคือ
OPC
ขึ้นมาเพื่อยุติปัญหาการใช้เทคโนโลยีเฉพาะด้านในการสื่อสาร
นอกจากนั้นยังมีความสามารถในการบริการข้อมูลให้กับ
Client
ที่รวดเร็วและมีเสถียรภาพ
โครงสร้างด้านซอร์ฟแวร์ของ
SCADA
แสดงได้ดังรูปที่
1-02

รูปที่
1-02
จากรูป
1-02
จะพบว่าในส่วนของ SCADA
Server
นั้น การติดต่อกับ
PLC
หรือ
Controller
นั้น
ทำได้ทั้งผ่าน Driver
หรือ OPC
โดยที่
OPC
และ
Driver
สามารถรับคำสั่งแบบ Read
/ Write
เพื่ออ่านข้อมูลจาก
PLC
หรือ
เขียนข้อมูลเพื่อสั่งงานไปยัง
PLC
ได้
SCADA Server
จะทำหน้าที่จัดการข้อมูล
RTDB (Real Time Data Base)
ที่ได้จาก PLC
แล้วส่งให้กับ SCADA
Client
โดยที่
SCADA Server
บางประเภทจะติดต่อกับ
SCADA Client
ผ่าน
DDE Server
ซึ่งทำให้สามารถนำเข้าข้อมูลจาก
PLC
เข้าสู่โปรแกรมเช่น MS
Excel
หรือ โปแกรม
Client
อื่น ๆ
ที่ติดต่อกับ DDE Server
ได้
SCADA
บางตัวจะออกแบบให้ SCADA
Server
ทำหน้าที่ตรวจจับ Alarm
และเก็บไว้ใน Alarm DB
หรือเก็บข้อมูลที่เป็น
Historian
ไว้ใน
Log DB
เป็นต้นเพื่อส่งให้
Alarm Display
และ
Log Display
ทางฝั่ง
SCADA Client
ต่อไป
สำหรับส่วน
Development Environment
นั้นจะขึ้นอยู่กับการออกแบบของ
SCADA
ซอร์ฟแวร์นั้น ๆ ซึ่งโดยทั่วไปก็จะมีเครื่องมือในการสร้างและจัดการกราฟิก
(Graphic Editor)
เครื่องมือในการจัดการโปรเจ็คที่สร้างขึ้นมา
(Project Editor)
มีเครื่องมือในการนำเข้าและส่งออก
Text file
ที่เก็บค่าคอนฟิกูเรชั่นของการติดต่อกับ
Driver
หรือ
OPC Server
ไว้
โครงสร้างด้านการสื่อสาร
(Communications)
การสื่อสารระหว่าง
Client-Server
จะสื่อสารผ่านโปรโตคอลโดยทั่วไปเช่น
TCP/IP
โดย
Client
จะติดต่อกับพารามิเตอร์หรือ
Tag
ภายใน
Server
ที่บริการข้อมูลด้วยรูปแบบที่แตกต่างกันไปตามผู้ผลิต เช่นมีการส่งค่าจาก
Server
เมื่อค่าของ I/O
ของ
PLC
มีการเปลี่ยนแปลง เป็นต้น
การสื่อสารกับอุปกรณ์นั้น
Server
จะทำการตรวจสอบค่าจากอุปกรณ์ตามช่วงเวลาที่ผู้ใช้งานกำหนดไว้
(Defined polling rate)
โดยอาจจะต่างกันไปตามพารามิเตอร์ประเภทต่าง ๆ โดยตัว
Controller
จะส่งค่าพารามิเตอร์ตามที่ถูกร้องขอให้กับ
Data Server
พร้อมค่าเวลาขณะนั้น
(Time Stamp)
การสื่อสารกับอุปกรณ์ของ
Data Server
นั้นอาจเป็นการสื่อสารแบบ
Modbus, Profibus, CAN bus
เป็นต้น
ขึ้นอยู่กับมาตรฐานการสื่อสารของอุปกรณ์นั้น ๆ ว่าเป็นแบบใด ในปัจจุบันมีการสร้าง
OPC Server
ที่สนับสนุนการติดต่อด้วยมาตรฐานต่างๆเพิ่มขึ้นมากมายจนครอบคลุมอุปกรณ์ทุกประเภท
และมีการพัฒนาให้ทั่วถึงไปยังอุปกรณ์ใหม่ ๆ อย่างต่อเนื่อง
โครงสร้างอินเทอร์เฟส
(Interface)
การติดต่อระหว่าง Data
Server
กับอุปกรณ์หรือระหว่าง
Data Server
และ
Data Server
และกับ
Client
นั้น
มีการผลิตเป็น Driver
ออกมามากมายตามเทคนิคเฉพาะของแต่ละผู้ผลิต
ต่อมาจึงมีการกำหนดมาตรฐานของอินเทอร์เฟสขึ้นมาเป็น
OPC (OLE for Process Control)
ซึ่งมีความรวดเร็วในการสื่อสารและบริการข้อมูลโดยมีการจัดตั้ง
OPC Foundation
ขึ้นเป็นองค์กรณ์หลักในการกำหนดมาตรฐานและถ่ายทอดเทคโนโลยีให้แก่สมาชิก
OPC
จึงเป็นมาตรฐานกลางที่เปิดกว้างมากที่สุด
การติดต่อกับฐานข้อมูลภายนอกของ
SCADA Software
นั้น
มีการสร้างให้สามารถติดต่อได้ผ่าน
ODBC (Open Data Base Connectivity),
OLEDB (Linking and Embedding Data Base), DDE (Dynamic Data Exchange)
เป็นต้น
เพื่อให้สามารถแลกเปลี่ยนข้อมูลหรือทำการเก็บข้อมูลไว้ในฐานข้อมูลรูปแบบต่าง ๆ
ในปัจจุบันมีการพัฒนาให้สามารถติดต่อกับโปรแกรม
ERP
ต่าง ๆ
เช่น SAP
เป็นต้นได้ด้วย
โครงสร้างความสามารถในการขยายระบบ (Scalability)
Scalability
คือความสามารถในการรองรับและต่อขยายระบบ
SCADA
กับส่วนต่าง ๆ เช่น I/O
ของอุปกรณ์ Controller
และจำนนเครื่อง SCADA
Client
ที่เพิ่มขึ้น หรือการต่อพ่วงกับระบบ
SCADA
ของยี่ห้ออื่น ๆ เป็นต้น ถ้าหาก
Data Server
เป็นแบบ
Driver
ที่สร้างด้วยเทคโนโลยีเฉพาะในการติดต่อกับอุปกรณ์ ก็เป็นเรื่องลำบากในการต่อขยาย
เพราะ
Driver
บางประเภทสามารถติดต่อได้เฉพาะ
SCADA Software
บางยี่ห้อเท่านั้น ปัญหานี้เป็นที่วิพากวิจารณ์กันอย่างกว้างขวาง
ซึ่งปัจจุบันได้หันมาใช้มาตรฐานกลางคือ
OPC
เพื่อแก้ไขปัญหานี้
โครงสร้างการสำรองระบบ (Redundancy)
SCADA Software
ส่วนใหญ่มีความสามารถในการทำสำรองระบบของ
Data Server
โดยที่เมื่อ Data Server
เกิดความขัดข้องก็จะสั่งงานให้
Data Server
อีกตัวหนึ่งทำงานแทนที่ โดยจะมีการกำหนดคอนฟิกูเรชั่นไว้ที่
Client
ว่าจะให้เลือกติดต่อกับ
Data Server
ตัวไหนเมื่อเกิดความขัดข้องเกิดขึ้น
ในบางครั้งโมดูลที่ทำหน้าที่จัดการด้าน
Redundancy
นี้อาจจะทำหน้าที่อีกประการหนึ่งคือเป็นจุดพักข้อมูลที่รับมาจาก
Data Server
เพื่อนำไปส่งให้กับ
Client
ต่าง ๆ เพราะในกรณีที่มี
Client
จำนวนมากติดต่ออยู่กับ
Data Server
ตัวเดียวนั้นอาจมีความล่าช้าในการบริการข้อมูลของ
Data Server
เพราะต้องให้บริการข้อมูล
Client
ให้ครบจำนวนก่อนที่จะไปรับข้อมูลใหม่จากอุปกรณ์มาได้ ดังนั้นโมดูลที่ทำหน้าที่
Redundant
จึงทำหน้าที่เป็นจุดรับข้อมูลแล้วช่วยส่งต่อให้
Client
ต่างๆ
อีกทอดหนึ่ง Data Server
จะได้ทำหน้าที่บริการข้อมูลให้แก่โหนดเพียงจุดเดียว
จึงมีความรวดเร็วในการบริการข้อมูล
หน้าที่การทำงาน
(Functionality)
การเข้าถึงพารามิเตอร์ของอุปกรณ์
หมายถึงความสามารถในการเข้าถึงกลุ่มของพารามิเตอร์ในอุปกรณ์เช่น
I/O
ของ
PLC
เป็นต้น
ความสามารถของ Data
Server
ในการกำหนดว่าพารามิเตอร์ใด อ่านได้อย่างเดียว เขียนได้อย่างเดียว
หรือทั้งอ่านทั้งเขียน เป็นต้น
ระบบแสดงผลแบบ
MMI (Man Machine
Interface)
คือความสามารถในการแสดงผลการทำงานของอุปกรณ์ในรูปแบบ กราฟิก ข้อความ
สัญลักษณ์ แผนภาพ เป็นต้น
โดยสามารถเชื่อมโยงลักษณะการเปลี่ยนแปลงของกราฟิกเหล่านี้กับพารามิเตอร์จาก
Data Serverได้
ความสามารถในการสั่งงานผ่านระบบกราฟิกเช่น การปิด/เปิด
สวิทซ์บนจอมอนิเตอร์ส่งผลไปยัง
I/O
ของ
PLC
เป็นต้น
ความสามารถในการจัดการกราฟิกเช่น การย่อ ขยาย
การกำหนดการเคลื่อนไหวแบบต่าง ๆ เช่น การหมุน การเคลื่อนที่แบบซิกแซกตามสัญญาณของ
Data Server
การแสดงผลสัญญาณในรูปแบบมิเตอร์และเกจวัดแบบต่าง ๆ การนำเข้ากราฟิกประเภทต่างๆ
การจัดแบ่งเลเยอร์ เป็นต้น เหล่านี้เป็นข้อเปรียบเทียบความสามารถของ
SCADA Software
ทั้งสิ้น
ระบบแสดงกราฟสัญญาณแบบต่อเนื่อง
(Trending)
Trending
เป็นความสามารถในการพล็อตกราฟต่อเนื่องกันไปบนจอภาพเพื่อแสดงค่าสัญญาณจาก
Data Server
โดยอาจจะสามารถพล็อตสัญญาณได้หลายสัญญาณเช่น
8 24
สัญญาณ
พร้อมกันในหน้าต่างเดียว เพื่อให้สามารถเปรียบเทียบสัญญาณที่พล็อตได้
และไม่จำกัดว่าจะสร้างหน้าต่างพล็อตจำนวนเท่าใด
Trending
อาจมีความสามารถในการ ซูมสัญญาณที่พล็อต
และหยุดการพล็อตเพื่อเลื่อนดูค่าที่พล็อตในแต่ละช่วงเวลาได้ด้วยตัวของผู้ใช้งานเอง
นอกจากนั้นการพล็อตอาจสามารถเลือกได้ว่าจะให้เป็นการพล็อตแบบใดเช่น
Time plot, Logarithmic plot, Strip
Chart, Bar Chart, Circular, X-Y plot
เป็นต้น
นอกจากนั้นบางผู้ผลิตยังสามารถนำค่า
Historian
หรือข้อมูลสัญญาณที่เก็บไว้ในฐานข้อมูลออกมาพล็อต
ได้อีกด้วย
โดย
Trending Module
นี้อาจเป็นแบบ ActiveX
Control
คือสามารถนำไปใช้งานในแอปลิเคชั่นอื่นที่สนับสนุนการนำเข้า
ActiveX
ได้
ระบบแจ้งเตือน
(Alarm)
SCADA Software
ส่วนใหญ่มีระบบแจ้งเตือนโดย
Alarm Display
จะรับสัญญาณมาจาก Alarm
DB
ในฝั่ง
SCADA Server
โดย
Alarm DB
สามารถที่จะทำการกำหนดคอนฟิกูเรชั่นว่าจะนำสัญญาณตัวใดมาเป็นตัวพารามิเตอร์ในการแจ้งเตือนบ้าง
และมีการแบ่งระดับของ
Priority, Limit
อย่างไร
เป็นต้น
ระบบแจ้งเตือนยังสามารถที่จะเก็บข้อมูลการแจ้งเตือนไว้ในฐานข้อมูลประเภทต่าง ๆ
ได้เช่น MS SQL Server,
MS Access, Oracle, MS Excel
เป็นต้น
และบางยี่ห้อสามารถแสดงออกมาเป็นรายงานในรูปแบบตารางหรือ แผนภูมิได้อีกด้วย
การทำงานแบบ
Automation
เป็นความสามารถที่
SCADA
ทำหน้าที่ต่าง ๆ ตามที่กำหนด เช่น ส่งอีเมล์ แสดงข้อความแบบ
Instance Messageบนหน้าจอ
เปิดไปยังหน้าจออื่น ๆ เก็บข้อมูลลงฐานข้อมูล เปิดโปรแกรม หรือรันคำสั่งสคริปต์
เป็นต้น ตามสัญญาณที่ได้รับจาก
Data Server
และข้อกำหนดที่สร้างขึ้น
การสร้างและพัฒนา
(Application
Development)
การกำหนดคอนฟิกูเรชั่น
การกำหนดคอนฟิกูเรชั่น
ขั้นแรกต้องมีการกำหนดว่าจะติดต่อกับพารามิเตอร์หรือ
Tag
ใดบ้างจาก Data Server
ดังนั้นจะต้องทำการ
Define
หรือสร้าง
Tag
ที่
Data Server
ก่อนว่า
Tag
แต่ละตัวหมายถึง Address
ที่เท่าใดของอุปกรณ์
(PLC, DCS, RTU, Controller
ต่างๆ)
โดยทั่วไปสามารถทำการนำเข้าคอนฟิกูเรชั่นไฟล์ที่สร้างไว้ก่อนเข้ามาได้ และสามารถ
Export
ไปยัง
Data Server
อื่น ๆ
ได้ จากนั้นโปรแกรมย่อยอื่น ๆ ของ
SCADA Software
ฝั่งไคลเอนท์
จึงทำคอนฟิกูเรชั่นตามหน้าที่การทำงานของตนเอง เช่น
โมดูลที่มีหน้าที่แสดงผลกราฟิกก็ต้องกำหนดว่ากราฟิกนั้น ๆ จะเชื่อมโยงกับ
Tag
ใดจาก
Data Server
ส่วนโมดูลที่ทำหน้าที่แจ้งเตือนก็ต้องทำคอนฟิกูเรชั่นว่าจะนำ
Tag
ใด
มาเป็นสัญญาณแจ้งเตือน และกำหนดระดับสัญญาณ
Limit
เป็นต้น
เครื่องมือในการพัฒนา
(Development Tool)
เครื่องมือในการสร้างและพัฒนาระบบ
SCADA
โดยทั่วไปจะประกอบด้วย
-
เครื่องมือในการสร้างระบบกราฟิก ที่ประกอบด้วยเครื่องมือวาดภาพ
เครื่องมือกำหนดเอ็ฟเฟ็คพิเศษต่าง ๆ ไลบรารี่ของกราฟิกสำเร็จรูปในอุตสาหกรรมด้านต่าง
ๆ
-
เครื่องมือในการสร้าง
Trending
-
เครื่องมือในการสร้างระบบAlarm
-
เครื่องมือในการกำหนดการติดต่อกับฐานข้อมูลเพื่อทำการเก็บรวบรวมข้อมูลของ
Trending
และ
Alarm
ลงไว้ในฐานข้อมูล
-
เครื่องมือในการช่วยสร้าง
Script
เช่น
Java script, VB Script
-
เครื่องมือจัดการด้านความปลอดภัย การแบ่งระดับ
User
และขอบเขตการใช้งานของ
User
-
เครื่องมือในการสร้าง
Web application
เพื่อให้สามารถควบคุมและตรวจสอบระบบควบคุมผ่าน
Web browser
ได้
ที่กล่าวมาทั้งหมดนี้เป็นลักษณะของ
SCADA
และ
SCADA Software
ส่วนใหญ่ ทั้งนี้คุณผู้อ่านก็คงจะพอเห็นภาพว่า
SCADA
นั้นสามารถเป็นศูนย์กลางของระบบควบคุมทั้งหมดขององค์กร
และมีส่วนช่วยในการตรวจสอบการทำงานของระบบให้เป็นไปตามปกติได้อย่างมีประสิทธิภาพและทั่วถึง
ภายในเวลาอันรวดเร็ว มีส่วนช่วยในการตัดสินใจในการดำเนินงานจากข้อมูลต่าง ๆ
ที่ได้รับจากระบบ SCADA
นอกจากนี้เรายังสามารถเชื่อมโยงข้อมูลที่ได้จาก
SCADA
เข้ากับข้อมูลทางธุรกิจอื่น ๆ เพื่อประมวลผลร่วมกัน เช่น
ข้อมูลจำนวนของเสียเป็นกิโลกรัมที่ตรวจสอบได้จาก
SCADA
ถูกนำมาคำนวนร่วมกับค่าใช้จ่ายอื่น
ๆ แบบ Real time
เพื่อสรุปเป็นรายงานค่าใช้จ่ายประจำวันเป็นต้นได้อย่างรวดเร็ว
|