1. Trang chủ
  2. » Luận Văn - Báo Cáo

Truy xuất thông tin và điều khiển quá trình công nghệ trên nền tảng web

90 16 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 90
Dung lượng 1,39 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tìm hiểu những khái niệm mới trong lĩnh vực tự động hóa công nghiệp, mối quan hệ giữa các thành phần, các lớp trong đó là một điều quan trọng trong việc tích hợp hệ thống, mở rộng ứng dụ

Trang 1

ĐẶNG HỮU THỌ

TRUY XUẤT THÔNG TIN VÀ ĐIỀU KHIỂN QUÁ TRÌNH CÔNG NGHỆ TRÊN NỀN TẢNG

Trang 2

Cán bộ hướng dẫn khoa học : TS.Tröông Ñình Chaâu

Cán bộ chấm nhận xét 1 :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký)

Cán bộ chấm nhận xét 2 :

(Ghi rõ họ, tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ được bảo vệ tại HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ

TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày tháng năm

Trang 3

NHIỆM VỤ LUẬN VĂN THẠC SĨ

Họ tên học viên: Phái:

Ngày, tháng, năm sinh: .Nơi sinh:

Chuyên ngành: .MSHV:

I- TÊN ĐỀ TÀI:

II- NHIỆM VỤ VÀ NỘI DUNG:

III- NGÀY GIAO NHIỆM VỤ (Ngày bắt đầu thực hiện LV ghi trong Quyết định giao đề tài):

IV- NGÀY HOÀN THÀNH NHIỆM VỤ:

V- CÁN BỘ HƯỚNG DẪN (Ghi rõ học hàm, học vị, họ, tên):

(Học hàm, học vị, họ tên và chữ ký) QL CHUYÊN NGÀNH

Nội dung và đề cương luận văn thạc sĩ đã được Hội đồng chuyên ngành thông qua

Ngày tháng năm

Trang 4

Lời cám ơn

Trong thời đại bùng nổ thông tin hiện nay, các ứng dụng trong đời sống, sản xuất ngày càng hiện đại và phức tạp Với yêu cầu các hệ thống mang tính mở cao hơn đưa đến hiệu quả ngày càng cao Để đạt được điều đó, lĩnh vực tự động hóa công nghiệp xuất hiện thêm các khái niệm mới

Tìm hiểu những khái niệm mới trong lĩnh vực tự động hóa công nghiệp, mối quan hệ giữa các thành phần, các lớp trong đó là một điều quan trọng trong việc tích hợp hệ thống, mở rộng ứng dụng Do vậy, tôi chọn đề tài Truy xuất thông tin và điều khiển quá trình công nghệ trên nền tảng Web làm đề tài luận văn thạc sĩ

Tôi xin chân thành cảm ơn các bạn lớp cao học ngành Điều khiển học Kỹ thuật K15, các thầy cô trong bộ môn Điều khiển tự động khoa Điện-Điện tử, đại học Bách khoa Tp HCM Đặc biệt là thầy Trương Đình Châu đã nhiệt tình giúp đỡ để hoàn thành luận văn này

Trang 5

Tóm tắt

Trong lĩnh vực tự động hóa quá trình công nghệ, sản xuất của các doanh nghiệp - xí nghiệp, việc tích hợp các thành phần trong hệ thống điều khiển là vấn đề được đặt lên hàng đầu Việc tích hợp hệ thống một cách hợp lý sẽ mang lại nhiều lợi ích như tiết kiệm chi phí sản xuất, nâng cao năng suất lao động, tăng khả năng mở rộng cho hệ thống Một trong những kỹ thuật hiện đại trong vấn đề tích hợp hệ thống hiện nay là truy xuất thông tin dựa trên nền tảng Web

Trong khuôn khổ luận văn tác giả phân tích, lựa chọn và xây dựng công cụ cho việc tích hợp các thành phần trong hệ thống điều khiển trên một công nghệ chuẩn - Web

Mô hình truy xuất thông tin quá trình công nghệ dựa trên nền tảng Web mang lại rất nhiều ưu điểm so với mô hình truyền thống Để giải quyết vấn đề này trong luận văn đặt ra và thực hiện những nhiệm vụ:

 Giả lập quá trình và đối tượng động bằng Simulink của Matlab

 Thực hiện kết nối giữa OPC Server với đối tượng động

 Thực hiện kết nối phần mềm HMI với quá trình động thông qua OPC Server

 Thực hiện kết nối giữa OPC Client COM và OPC Server COM bằng giao thức HTTP

 Xây dựng OPC Client XML để truy xuất OPC Server DA COM thông qua giao thức HTTP, WebService

 Xây dựng Web server truy cập đến quá trình công nghệ thông qua OPC Server; dùng trình duyệt Interner Explorer để hiển thị thông tin quá trình công

Trang 6

Luận văn đã thực hiện việc phân tích, tổng hợp các kỹ thuật hiện nay Tiến đến, xây dựng mô hình truy xuất động thông tin quá trình thông tin quá trình công nghệ Và cụ thể đạt được những kết quả như:

 Đưa ra được một cái nhìn tổng thể về vấn đề truy xuất thông tin của các quá trình công nghệ hiện nay

 Tích hợp phần mềm HMI với đối tượng thông qua OPC; thực hiện việc hiển thị động thông tin quá trình công nghệ bằng trình duyệt Internet Explorer

 Thực hiện OPC XML client truy xuất vào OPC server COM truyền thống bằng giao thức HTTP và WebService

 Thực hiện liên kết giữa OPC client COM và OPC server COM với giao thức HTTP bằng OPCXML gateway

Luận văn nêu ra toàn bộ mối liên kết của các quá trình công nghệ từ cấp thấp nhất đến cấp cao nhất Do vậy, các kỹ sư điều khiển có thể tích hợp hệ thống một cách dễ dàng Việc mở rộng các ứng dụng được thực hiện dễ dàng Có thể ứng dụng việc tích hợp hệ thống đã nêu trên trong nhiều lĩnh vực như dầu khí, điện lực, cung cấp nước, hàng không…

Luận văn có thể phát triển nghiên cứu sâu hơn về OPC XML và Webservice tạo ra các phần mềm ứng dụng, đồng thời thực hiện mô phỏng đối tượng có liên kết với OPC gần với thực tế sản xuất Nghiên cứu phương pháp điều khiển dự báo mô hình ứng dụng trong công nghiệp Phát triển, xây dựng OPC server theo đặc tả UA (Universal Architecture), là cấu trúc mang tính mở nhất hiện nay Phát triển OPC theo công nghệ NET, điều này làm tăng khả năng sử dụng của OPC Phát triển việc truy xuất thông tin theo các chuẩn khác nhau trong môi trường internet Ứng dụng giao thức HTTPs để thực hiện các vấn đề về bảo mật hệ thống

Trang 7

OPC, nền tảng Web là khái niệm mới trong lĩnh vực tự động hóa công nghiệp và ngày càng phát triển mạnh Do vậy, nghiên cứu về OPC, nền tảng web, truy xuất thông tin qúa trình công nghiệp thông qua các chuẩn khác nhau là cần thiết trong công cuộc công nghiệp hóa, hiện đại hóa

Trang 8

Mục lục

Chương 1 7

Tổng quan 7

1.1 Mục tiêu đề tài 7

1.2 Tính cấp thiết của đề tài 7

1.3 Phân tích và so sánh các phương pháp truy xuất thông tin quá trình công nghệ 8

1.3.1 Truy xuất thông tin quá trình công nghệ truyền thống 8

1.3.2 Truy xuất thông tin dựa trên nền Web 14

1.4 Các vấn đề cần giải quyết 18

Chương 2 20

Phân tích các công nghệ và thiết kế hệ thống 20

2.1 COM (Component Object Model) 20

2.2 OPC 23

2.2.1 Tổng quan 23

2.2.2 Các đối tượng (Objects) và các giao tiếp (Interfaces) 27

2.2.3 Đặc tả OPC Data Access (OPC DA) 28

2.3 Webservice và OPC XML 36

2.3.1 Giới thiệu về Web Service 36

2.3.2 Vai trò của Web Service 36

2.3.3 Đặc tả OPC XML 1.0 37

2.4 Giả lập quá trình công nghệ và đối tượng động 49

2.4.1 Điều khiển dự báo mô hình (MPC) trong điều khiển quá trình (Proccess control) 49

2.4.2 Sử dụng MPC Toolbox để xây dựng bộ điều khiển MPC cho lò hơi công nghiệp&giám sát hệ thống bằng OPC 53

Chương 3 57

Kết qủa thực hiện 57

3.1 Tổng quan 57

3.2 OPC XML DA Client truy xuất thông tin quá trình công nghệ thông qua OPC Server 59

3.3 OPC Client COM truy xuất OPC Server COM bằng web service và giao thức HTTP 60

3.4 Mô hình trình duyệt IE hiển thị thông tin quá trình điều khiển hệ thống qua Internet 61

3.5 HMI truy xuất vào thông tin thiết bị thông qua OPC Server 62

Trang 9

3.6 OPC Server có thể kết nối với các thiết bị theo các giao thức khác

nhau 63

Chương 4 64

Kết luận và hướng phát triển của đề tài 64

4.1 Kết luận 64

4.2 Hướng phát triển 65

Tài liệu tham khảo 67

Phụ lục 69

Trang 10

Chương 1

Tổng quan

1.1 Mục tiêu đề tài

Tích hợp các thành phần trong hệ thống điều khiển đa cấp là vấn đề được đặt lên hàng đầu trong việc thực hiện tự động hóa quá trình công nghệ, sản xuất của các doanh nghiệp - xí nghiệp Việc tích hợp hệ thống một cách hợp lý sẽ mang lại nhiều lợi ích như tiết kiệm chi phí sản xuất, nâng cao năng suất lao động, tăng khả năng mở rộng cho hệ thống Một trong những kỹ thuật hiện đại trong vấn đề tích hợp hệ thống hiện nay là truy xuất thông tin dựa trên nền tảng Web Mục tiêu đề tài là phân tích tổng hợp các kỹ thuật tích hợp hiện nay và xây dựng mô hình truy xuất thông tin động quá trình công nghệ dựa trên nền tảng Web

1.2 Tính cấp thiết của đề tài

Tự động hóa công nghiệp là lĩnh vực đang ngày càng phát triển mạnh mẽ, tích hợp tất cả các công nghệ hiện đại Tuy nhiên, việc nghiên cứu một cách tổng quan về tự động hóa công nghiệp, các kỹ thuật thực hiện trong lĩnh vực này còn chưa được thực hiện một cách đầy đủ Hầu hết các đề tài trong lĩnh vực này trước đây đều tập trung vào việc xây dựng các giao diện HMI để mô phỏng hệ thống hoặc xây dựng một hệ thống SCADA để liên kết với các PLC

Ở Việt Nam hiện nay, sử dụng các hệ thống SCADA đều phụ thuộc vào từ phần cứng cho đến phần mềm của một nhà cung cấp (ví dụ, Siemens, Omron,

…) Cho nên, về vấn đề chi tiết hệ thống đều phụ thuộc từ đầu đến cuối vào nhà cung cấp này, và tốn nhiều kinh phí cho việc bảo trì hệ thống (thuê chuyên gia nước ngoài) Chuyên gia về tích hợp hệ thống chưa được chuyên nghiệp hóa cho

Trang 11

nên việc lựa chọn các thành phần trong hệ thống tự động hoá – các doanh nghiệp xí nghiệp chưa nghĩ đến Vấn đề nữa là truy xuất và điều khiển quá trình công nghệ, đối đượng phân bố từ xa là mơ ước của các nhà sản xuất vì mang lại hiệu quả cao

Trong khuôn khổ luận văn tác giả phân tích, lựa chọn và xây dựng cấu trúc cho việc tích hợp các thành phần trong hệ thống điều khiển trên một công nghệ chuẩn - Web

Để thấy rõ lợi ích của công nghệ Web, trước hết luận văn đề cập đến việc phân tích và so sánh các phương pháp truy xuất thông tin quá trình công nghệ khác nhau

1.3 Phân tích và so sánh các phương pháp truy xuất thông tin quá trình công nghệ

1.3.1 Truy xuất thông tin quá trình công nghệ truyền thống

Một ví dụ điển hình cho việc truy xuất thông tin quá trình công nghệ là hệ thống SCADA trong các nhà máy (hình 1.3.1) SCADA là hệ thống điều khiển giám sát và thu thập dữ liệu trong các hệ thống công nghiệp phổ biến trên toàn thế giới Nó được ứng dụng rộng rãi trong hầu hết các lĩnh vực sản xuất, hàng hóa, vận tải [11]

SCADA là sự tích hợp của các thiết bị phần cứng và phần mềm Các thiết bị phần cứng là các PLC, các thiết bị cảm biến, các thiết bị điều khiển, các thiết bị truyền động….Các gói phần mềm là do mỗi hãng sản xuất thiết bị tạo ra để sử dụng các thiết bị của hãng mình Các hệ thống SCADA truyền thống chỉ hoạt động trong một phạm vi một nhà máy, xí nghiệp Các hoạt động về bảo trì, sửa chữa, các yêu

Trang 12

giảm chi phí sản xuất Vấn đề truy xuất thông tin của các quá trình công nghệ cần được mở rộng ra thành mạng diện rộng (intranet), internet…Để thực hiện điều này, các hãng sản xuất thực hiện mở rộng theo nhiều cách khác nhau, ở nhiều cấp độ khác nhau [10]

Liên kết ở cấp trường

Xét ớ cấp trường (field), có rất nhiều giao thức truyền thông khác nhau của nhiều hàng sản xuất khác nhau ví dụ như Modbus, Profibus, DeviceNet… Mô hình truyền thông ở cấp trường giừa MTU và RTU (hình 1.3.2)

Supervision

Automatic Control

Field Management

Business Management

Analog I/O, Discrete I/O

Flow

measur.

T Temp

measur.

P Pressure measur. Actuator

Control objects

Realtime DB

SCADA

Station SCADA Station VB, C++Applications

Web

Server Modules of factoryresource management Relation DB

Cấu trúc hệ thống điều khiển truyền thống

Hình 1.3.1

Trang 13

Thông qua môi trường truyền thông (comunication network) các RTU liên lạc với các MTU Mạng truyền thông ở cấp trường có nhiều cách khác nhau như mạng vô tuyến, mạng hữu tuyến Các chuẩn truyền thông hiện nay là RS232, RS485, RS422 Khi mạng truyền thông là intranet/intetnet, các thiết bị đều tích hợp gateway, mỗi thiết bị đều có một địa chỉ IP để liên kết với các thiết bị khác, thì việc mở rộng hệ thống là hoàn toàn có thể Đây là một xu hướng trong việc phát triển mở rộng hệ thống SCADA Thông qua giao thức TCP/IP, các thiết bị có thể kết nối với nhau trong phạm vi mạng intranet hoặc internet (hình 1.3.3)

Với cấu hình như trên thì rất thuận tiện cho việc mở rộng hệ thống SCADA Các nhà sản xuất hệ thống đang nghiên cứu mở rộng hệ thống như vậy

C e n tral M o n ito rin g S tatio n

đ iều khiển

RTU

CN MTU

Giám sát viên

Hình 1.3.2

Trang 14

Liên kết giữa cấp trường và cấp ứng dụng

Liên kết này là liên kết giữa các thiết bị với các phần mềm giám sát, điều khiển và hiển thị Mô hình truy xuất thông tin giữa ứng dụng với thiết bị (hình 1.3.4) Theo cách truyền thống thì mỗi hãng sản xuất sẽ có driver riêng cho thiết

bị của hãng, tương ứng với giao thức cấp trường của thiết bị Khi một ứng dụng muốn liên kết với thiết bị thì phải hiểu rõ driver này và điều này rất hạn chế trong việc mở rộng các ứng dụng Việc các ứng dụng liên kết theo chuẩn DDE cũng mang nhiều hạn chế trong việc phát triển ứng dụng [14] Với yêu cầu đặt

ra là hệ thống phải mang tính mở để người sử dụng có thể khai thác một cách hiệu quả ứng dụng, khái niệm OPC xuất hiện và là một chuẩn mở trong công nghiệp Trong phạm vi luận văn đề cập đến các đặc tả của OPC

TCP/IP Network (internet/intranet)

HMI Station

MTU RTU

Hình 1.3.3

Trang 15

Liên kết ở cấp ứng dụng

Là liên kết giữa các ứng dụng cấp trên như liên kết giữa các HMI, giữa các ứng dụng với nhau… Lớp ứng dụng là lớp cao nhất trong mô hình truyền thông, có tính chất tương tác trực tiếp với người sử dụng, do đó cấu trúc của hệ thống phải hướng đến mở để người sử dụng có thể tương tác càng nhiều với hệ thống thì càng mang lại hiệu suất cao Với mô hình truyền thống, các ứng dụng bên ngoài truy xuất vào hệ thống thông qua Web Server chỉ đơn thuần là lấy dữ liệu trong các cơ sở dữ liệu, không liên quan gì với đặc tính động của hệ thống công nghiệp Các ứng dụng công nghiệp cập nhật dữ liệu vào cơ sở dữ liệu và người sử dụng truy cập vào lấy dữ liệu trong cơ sở dữ liệu [11] Yêu cầu đặt ra là làm sao có thể dùng các chương trình đơn giản như các trình duyệt, telnet…để có thể truy xuất trực tiếp vào hệ thống để hiển thị dữ liệu và cả cấu hình cho hệ thống

Driver tương ứng với giao thức bus trường

Ứng dụng

người dùng

(C++, VB…)

Ứng dụng (HMI, SCADA)

Giao thức trường (Modbus,

DDE DDE

Trang 16

Cấu trúc phân lớp trong mô hình truyền thông hiện tại của các phần mềm hiển thị giám sát trong công nghiệp theo giao thức TCP/IP (hình 1.3.5) Các phần mềm này liên kết với nhau qua giao thức DDE, DCOM hoặc tự phát triển giao thức cho riêng mình dựa trên giao thức DDE, DCOM [13]

Do vậy, các ứng dụng lớp trên chỉ có thể liên lạc với nhau thông qua mạng intranet, nếu được mở rộng ra môi trường internet thì việc truyền thông này sẽ không thực hiện được với các ứng dụng có sử dụng Firewall Và đây là hạn chế của mô hình dùng DDE, DCOM

Tóm lại, mô hình truy xuất thông tin quá trình công nghệ theo cách truyền thống tồn tại các nhược điểm sau:

1 Cấu trúc phần mềm ứng dụng không linh hoạt, chi phí cho việc mở rộng, phát triển lớn

2 Truy xuất thông tin theo DDE, DCOM bị chặn bời FireWall

DCOM,DDE, netDDE

TCP, UDP

IP, IPX Ethernet, 1394

Cấu trúc truyền thông hiện tại trong mô hình mạng TCP/IP

Hình 1.3.5

Trang 17

3 Các máy tính muốn truy xuất thông tin của qúa trình công nghệ phải cài đặt chương trình dành riêng

1.3.2 Truy xuất thông tin dựa trên nền Web

Truy xuất thông tin dựa trên nền tảng web về cơ bản cũng giống như các

hệ truyền thống nhưng đặc điểm khác biệt ở đây là vấn truyền thông giữa các thiết

bị thông qua mạng intranet, internet được chuẩn hóa theo các chuẩn Web, các vấn đề về dữ liệu đều dựa trên nền tảng Web Hệ thống SCADA dựa trên nền tảng Web có thể được kết nối với nhau trên một mạng diện rộng (intranet), trên internet, các thiết bị có thể ở cách xa nhau, tận dụng các ưu điểm của công nghệ Web, môi trường truyền thông internet

Mô hình truy xuất thông tin hệ thống mở rộng (hình 1.3.6) mang lại nhiều

ưu điểm so với mô hình truyền thống Tuy nhiên, độ phức tạp của hệ thống cũng tăng lên Các ứng dụng khác nhau liên lạc với nhau qua các giao thức khác nhau, giao thức phổ biến hiện nay là HTTP, SNMP, POP3, FTP, DDE, HTTP/SOAP… Các ứng dụng dựa trên nền Web là các ứng dụng truyền thông theo giao thức HTTP, và gần đây là HTTP/SOAP với sự xuất hiện của XML

Công nghệ Web mới được phát triển trong thời gian gần đây Với sự xuất hiện đầu tiên của HTML cùng với những ưu điểm của nó, đã đưa đến việc phát triển các ứng dụng web Sau này là sự xuất hiện của DHTML, XML làm cho các ứng dụng Web phát triiển mạnh mẽ Đặc biệt là sự xuất hiện của XML đã mang lại một sự linh hoạt mạnh mẽ trong việc phát triển các ứng dụng

Trang 18

Truy xuất thông tin quá trình công nghệ dựa trên nền tảng web bao gồm hai phần Phần thứ nhất là truy xuất thông tin từ cấp độ nhà máy và phần thứ hai là đưa các thông tin này vào các ứng dụng web Truy xuất thông tin từ các thiết

bị trường theo phương thức cũ vẫn còn tồn tại khuyết điểm OPC Server là một khái niệm mới trong vấn đề truy xuất thông tin ở cấp độ trường (field) (hình 1.3.7)

Hình 1.3.6

Browser

(IE)

SCADA HMI

Client (OPC)

Intranet/internet

Server (OPC/Web)

Mobile Device

Server (OPC)

Remote RTU

Mô hình truy xuất thông tin hệ thống mở rộng

Database

Sensor Motor

physic protocol

Trang 19

OPC dựa trên chuẩn COM của Microsoft Nó mang lại nhiều ưu điểm hơn

so với phương thức cũ Truy xuất thông tin quá trình công nghệ theo chuẩn OPC mang tính mở cao Người sử dụng có thể truy xuất thông tin hệ thống một cách dễ dàng thông qua các interface Mô hình cấu trúc truyền thông trên nền tảng web trong mô hình TCP/IP (hình 1.3.8) và cấu trúc truyền thông HTTP/SOAP với sự xuất hiện của XML (hình 1.3.9) Khi sử dụng hai mô hình truyền thông này sẽ khắc phục nhược điểm của mô hình truyền thống, đồng thời phát triển ứng dụng trong phạm vi rộng Dùng giao thức HTTP, chúng ta có thể sử dụng giao thức HTTPs sẵn có để thực hiện các vấn đề về bảo mật hệ thống

OPC Server

Configuration and maintenance

Analog I/O, Discrete I/O

Control objects

OPC Server

Realtime DB

OPC Server

Field Management

Business Management

Trang 20

Các lợi ích khi thực hiện truy xuất thông tin dựa trên nền tảng Web và OPC

Thực hiện truy xuất thông tin hệ thống dựa trên nền tảng web và OPC mang lại rất nhiều lợi ích:

HTTP TCP, UDP

IP, IPX Ethernet, 1394

Cấu trúc truyền thông ứng dụng Web trong mô hình mạng TCP/IP

Hình 1.3.8

Trang 21

1 Hệ thống có tính linh hoạt cao, việc dựa trên các chuẩn Web mang lại một

sự tiết kiệm trong việc triển khai, mở rộng hệ thống, sử dụng các trình duyệt internet sẵn có để giám sát hệ thống, tận dụng các môi trường truyền thông sẵn có do vậy tiết kiệm chi phí cho hệ thống…

2 Với việc truy xuất thông tin trên nền tảng web, người sử dụng có thể thực hiện ở bất kỳ nơi nào, chỉ với chương trình đơn giản như các trình duyệt web…

3 Với cấu trúc mở của OPC, hệ thống mang tính mở rất cao Do vậy, dễ dàng mở rộng các ứng dụng, tích hợp hệ thống Đặc biệt, trong hoàn cảnh của Việt Nam hiện nay

4 Truy xuất thông tin trên nền tảng Web không bị chặn bởi càc Firewall, do vậy tăng khả năng bảo mật của hệ thống

5 Sử dụng giao thức HTTPs sẵn có để thực hiện các vấn đề bảo mật hệ thống

1.4 Các vấn đề cần giải quyết

So sánh hai mô hình truy xuất thông tin quá trình công nghệ trên, mô hình truy xuất thông tin quá trình công nghệ dựa trên nền tảng Web mang lại rất nhiều ưu điểm so với mô hình truyền thống Do vậy, đề tài có nhiệm vụ thể hiện quá trình truy xuất động thông tin quá trình công nghệ trên nền tảng Web với các nhiệm vụ cụ thể sau:

1 Thực hiện kết nối giữa OPC Server COM với thiết bị trường (PLC)

2 Giả lập quá trình và đối tượng động bằng Simulink của Matlab

3 Xây dựng OPC Client XML để truy xuất OPC Server DA COM thông qua

Trang 22

5 Thực hiện kết nối giữa OPC Client COM và OPC Server COM thông qua Webservice

6 Xây dựng Web server truy cập đến quá trình công nghệ thông qua OPC Server

7 Dùng trình duyệt IE để hiển thị thông tin quá trình công nghệ theo giao thức HTTP qua mạng internet

Trang 23

Chương 2

Phân tích các công nghệ và thiết kế hệ thống

2.1 COM (Component Object Model)

Một ứng dụng thông thường trên máy tính là một file nhị phân đơn lẻ Trình biên dịch biên dịch một ứng dụng và ứng dụng đó không thể thay đổi cho đến khi chúng được biên dịch lại và đưa ra thị trường Những thay đổi trong hệ điều hành, phần cứng, những yêu cầu mới của khách hàng đều phải đợi cho đến khi ứng dụng được biên dịch lại [7]

Với các khuyết điểm như vậy, công nghệ phần mềm đã phát triển theo hướng chia một ứng dụng thành nhiều phần khác nhau và lập trình viên có thể thay đổi, phát triển một cách linh hoạt và có tính kế thừa Khái niệm COM (Component Object Model) ra đời Sự khác nhau giữa ứng dụng truyền thống và ứng dụng theo COM (hình 2.1.1)

Với sự ra đời của khái niện COM, công việc phát triển ứng dụng đã có những bước phát triển mạnh mẽ Từ những thư viện COM, lập trình viên có thể phát triển ứng dụng một cánh nhanh chóng (hình 2.1.2) Đồng thời người sử dụng

FILE NHỊ PHÂN THÔNG

THƯỜNG Component A Component B

Component C Component D

Ứng dụng truyền thống Ứng dụng COM

Hình 2.1.1

Trang 24

cũng có thể tích hợp những component của mình vào những ứng dụng sẵn có [7]

Với sự gia tăng các yêu cầu tính toán, ứng dụng chạy trên nhiều máy tính khác nhau Microsoft đã đưa ra chuẩn DCOM để đáp ứng nhu cầu các ứng dụng phân tán - COM phân tán (Distributed COM: DCOM) - COM phân tán là những component mà có thể đươc truy xuất qua mạng [6] (hình 2.1.3)

COM là một đặc tả COM cung cấp cách thức để xây dựng các component mà chúng có thể liên kết với nhau COM đưa ra những chuẩn mà các component và client phải tuân theo để đảm bảo chúng có thể hoạt động được với nhau OLE

Component A

Componet B

Component C

Componet A Componet C

Remote Machine 2 Remote Machine 1

Hình 2.1.3

Trang 25

là đặc tả COM thế hệ đầu tiên và được sử dụng rộng rãi trong các ứng dụng Sử dụng những ưu điểm của đặc tả COM, lĩnh vực tự động hóa công nghiệp đã đưa

ra khái niệm OPC (OLE for process control) Các thành phần COM liên kết với nhau thông qua các interface

Ở đây ta phân biệt rõ khái niệm interface của thành phần COM Interface của một DLL là tập hợp các hàm do DLL trưng ra, interface của một lớp C++ là tập hợp các thành viên của lớp đó, một interface của thành phần COM cũng là tập hợp của các hàm mà COM hiện thực và client sử dụng

Đối với COM, interface là một cấu trúc vùng nhớ cụ thể chứa một dãy các con trỏ hàm (hình 2.1.5)

Thành phần COM Các interface

Mô hình thành phần COM Hình 2.1.4

Trang 26

Một thành phần COM có thể có rất nhiều interface, mỗi interface có thể có rất nhiều hàm

2.2 OPC

2.2.1 Tổng quan

OPC (OLE for Process Control) là một chuẩn mới do các hãng sản xuất thiết bị, các hãng tích hợp hệ thống hàng đầu thế giới cùng với hãng phần mềm Microsoft tạo ra nhằm đưa đến một chuẩn chung trong công nghiệp nhằm tiết kiệm chi phí lắp đặt, bảo trì, sửa chữa, mở rộng của hệ thống sản xuất công nghiệp Các yêu cầu đưa đến việc tạo ra một chuẩn chung OPC [14]

Mô hình thông thường không sử dụng OPC (hình 2.2.1) Mỗi một ứng dụng muốn truy xuất vào các thiết bị thì phải sử dụng các driver của từng thiết bị Điều này rất hạn chế trong việc mở rộng và phát triển ứng dụng Rõ ràng, một ứng dụng muốn liên kết với n thiết bị theo n giao thức khác nhau thì ứng dụng đó phải hình thành n thành phần để liên kết với n driver khác nhau đó Điều này là hạn chế rất lớn trong vấn đề truy xuất thông tin thiết bị Để khắc phục khuyết điểm này, khái niệm OPC ra xuất hiện

Fx1 Fx2 Fx3 Fxn

IX

Mô hình interface IX Hình 2.1.5

Trang 27

Mô hình có sử dụng OPC (hình 2.2.2) có nhiều ưu điểm hơn mô hình không có sử dụng OPC Các ứng dụng muốn truy xuất thông tin của các thiết bị, nó không cần quan tâm đến driver của các thiết bị, mà chỉ biết cách truy xuất qua một chuẩn chung đó là COM COM là chuẩn phần mềm của Microsoft Nhưng khuyết điểm của điều này là các hệ điều hành khác không chạy các thành phần COM được

OPC có nhiều đặc tả tương ứng với các mục đích khác nhau: OPC DA, OPC HDA, OPC A&E, OPC XML,…Trong phạm vi đề tài chỉ giới thiệu OPC DA, OPC XML OPC DA (Data Access) dùng truy xuất dữ liệu động với các thiết bị trường OPC XML là OPC dựa trên ngôn ngữ XML

OPC dựa trên các khái niệm components của Microsoft Do vậy nó mang đầy đủ các đặc tính của một thành phần COM Một OPC Client có thể kết nối với nhiều OPC Server của nhiều nhà cung cấp khác nhau thông qua các interface được chuẩn hóa (hình 2.2.3) Đây là ưu điểm của OPC

OPC phân biệt hai loại interface: custom interface và automation

interface Có hai cách truy xuất OPC server thông qua hai loại interface (hình 2.2.4) Automation Wrapper là một DLL dùng để chuyển đổi những triệu gọi hàm từ automation interface sang custom interface [14]

Trang 28

ABB AC800M

Télémécanique TSX

AC800M OPC server OPC server Schneider

Siemens OPC server

OperatorIT Historian

(Information Manager)

Siemens S7 Mô hình sử dụng OPC

driver

Profinet driver

history data base

Mô hình không sử dụng OPC

Hình 2.2.1

Trang 29

C++

Server

VB Appication Automation Wrapper

Custom Interface

Automation Interface

Custom Interface

Trang 30

2.2.2 Các đối tượng (Objects) và các giao tiếp (Interfaces)

Đối tượng OPCServer (hình 2.2.5) cung cấp cách thức để truy xuất (Read/Write) hoặc liên lạc với các nguồn dữ liệu OPC Client kết nối với OPC Server và liên lạc với OPC Server thông qua các giao tiếp (Interfaces) Đối tượng OPCServer cung cấp cho OPC Client các chức năng tạo và quản lý các đối tượng OPCGroup (hình 2.2.6) Các group này cho phép Client tổ chức dữ liệu mà chúng muốn truy xuất Một nhóm (group) có thể tích cực (active) hay không tích cực Một nhóm (group) cũng cung cấp cho Client cách thức “subscribe” danh sách các Items để chúng được cập nhật khi chúng thay đổi

Hình 2.2.5

Hình 2.2.6

Trang 31

Các custom interface của các object trong OPC Data Access (OPC DA) [20]

OPCServer (phụ lục, phụ lục 1)

IOPCServer IOPCServerPublicGroups (optional) IOPCBrowseServerAddressSpace (optional) IOPCItemProperties (new 2.0)

IConnectionPointContainer (new 2.0) IOPCCommon (new 2.0)

IPersistFile (optional) OPCGroup (phụ lục, phụ lục 1)

IOPCGroupStateMgt IOPCPublicGroupStateMgt (optional) IOPCASyncIO2 (new 2.0)

IOPCAsyncIO (obsolete - V1) IOPCItemMgt

IConnectionPointContainer (new 2.0) IOPCSyncIO

IDataObject (obsolete - V1) EnumOPCItemAttributes IEnumOPCItemAttributes

2.2.3 Đặc tả OPC Data Access (OPC DA)

OPC Data Access bao gồm Data Access Client và Data Access Server

Trang 32

truy xuất vào thanh ghi của PLC thông qua truyền thông nối tiếp Data Access Server có thể là một thành phần trong một chương trình lớn hơn (PC based control) [14]

Đặc tả Data Access định nghĩa hai khái niệm mà Data Access Server hiện thực và Data Access Client sử dụng – không gian tên (Namespace) và cấu trúc phân cấp các đối tượng OPC

Không gian tên (namespace) chứa toàn bộ nguồn dữ liệu và các liên kết dữ liệu của Server Không gian tên có hai dạng: dạng theo cấu trúc cây (hierarchical namespace) và dạng phẳng (flat namespace) Trong cấu trúc không gian tên có hai khái niệm đó là Node và lá (leaves) còn gọi là các items Các node và item tượng trưng cho nguồn dữ liệu và liên kết dữ liệu của server Bên cạnh đó node và item còn chứa đựng thuộc tính (propertis) của bản thân node và item OPC Client có thể truy xuất vào các item này để lấy dữ liệu (hình 2.2.7)

Mô hình liên kết với thành phần windows (hình 2.2.8) thể hiện rõ hơn khái niệm truy xuất truy xuất thông tin

Đối tượng OPC (OPC object) bao gồm OPCServer, OPCGroup, OPCItem Trong đó OPCServer, OPCGroup là các đối tượng COM thực sự, trong khi OPCItem không phải là đối tượng COM Đối tượng OPCItem tượng trưng cho lá (leave) hay là thuộc tính của lá và node trong không gian tên

Chuẩn dữ liệu trao đổi giữa OPC server và OPC client bao gồm 3 thành phần:

1 Dữ liệu thật sự (value data): trong việc trao đổi dữ liệu giữa server và client và ngược lại, tất cả các đặc tả OPC sử dụng kiểu dữ liệu DCOM gọi là VARIANT Việc ánh xạ kiểu dữ liệu từ ứng dụng đặc biệt sang kiểu dữ liệu VARIANT được thực hiện tại server hoặc client Thể hiện giá trị của tag

Trang 33

2 Nhãn thời gian (time stamp): time stamp là kiểu dữ liệu dài 8 byte thể hiện thông tin thời gian của bản thân tag

3 Thông tin trạng thái: thể hiện trạng thái của tag

Cấu trúc phân lớp của chương trình OPC Server (hình 2.2.9)

Client component

Server component Hình 2.2.7

Trang 34

OPC Client

OPCServer

OPCGroup OPCGroup

OPCItem OPCItem OPCItem OPCItem

Windows drivers Protocol FieldBus

Device Specific Protocol Logic Hardware Connection Management

CAÁU TRUÙC OPC SERVER

Hình 2.2.9

Trang 35

Cấu trúc cây của OPC server minh họa (hình 2.2.10) thể hiện các tag trong OPC server Các tag này được kết nối với các thiết bị vật lý thông qua các giao thức trường Mối quan hệ giữa các item và các tag (hình 2.2.11) khi Client truy xuất vào OPC Server để lấy thông tin

Mỗi client cấu trúc các items bởi các group, độc lập với

server

Khi khởi động, client truy tìm trong cấu trúc của server

có item mà nó cần hay không

Mỗi client đăng kí các group và item của nó tại server

và server lưu giữ cấu trúc các item của nó

Temperature Heat_On TAG TAG Server root

GroupX

Level TAG

Area 1

Oven_1

Tank_1

GroupZ Client1

Item1 Item2 Item3 Item1 Item2

server

clients

Client2

Một OPC server được cấu trúc dạng cây với root, branches và leaves (items)

Nhánh có thể chứa nhánh khác và items

Cấu trúc không gian tên có thể là dạng cây hoặc dạng flat

Controller 1

Machine 2

Controller 2

Controller_3.Prog_2 Controller_3.Prog_1

Cell 1

Level_1 Level_2 Ramp4

TA

G TA

G TA

G

An item được định nghĩa bởi

"fully qualified ItemID", của nó

OPC Server hiển thị các object

Hình 2.2.10

Trang 36

Quá trình truyền thông Write của mỗi group: đồng bộ (synchronous) và bất đồng bộ (Asynchronous) (hình 2.2.12)

Mô hình truyền thông đọc đồng bộ và bất đồng bộ của mỗi Group (hình 2.2.13)

Mô hình Subcribe và cập nhật dữ liệu(hình 2.2.13)

synchronous asynchronous

myGroup.SynchRead()

client

Call Reply

myGroup.AsyncRead()

myGroup_AsyncReadComplete()

server

Call Reply

Quá trình READ Hình 2.2.13

myGroup.SynchWrite()

client

Call Reply

y

Quá trình WRITE Hình 2.2.12

Trang 37

Mô hình truyền thông Subcribe, cập nhật dữ liệu và Refresh (hình 2.2.15) Mô hình truy xuất thông tin từ thiết bị trường đến ứng dụng (hình 2.2.16) với hai trường hợp là Cache và Device

server client

Subscribe

Notify

myGroup.IsSubscribed

myGroup_DataChange() myGroup_DataChange()

myGroup.IsSubscribed

myGroup_DataChange() myGroup_DataChange()

Server cập nhật Client khi dữ liệu thay đổi

- trong một group cụ thể (myGroup_DataChange) or

- trong bất kỳ group nào (myGroups_GlobalDataChange)

Trong trường hợp thứ hai, chỉ có những group nào có dữ liệu thay đổi mới được cập nhật

Trang 38

Như vậy khi nào dữ liệu đã đăng ký (subscribed data) được truyền đi? Một

Group có hai đặc tính điều khiển khi nào dữ liệu thay đổi được truyền đi

+ Refreshrate: là tỉ lệ mà server lấy mẫu giá trị – được tính bằng giây (1/rate) + Deadband: chỉ áp dụng cho các giá trị analog Deadband = % tầm (in Engineer Unit) Giá trị deadband được truyền đi nếu sai lệch với lần truyền trước đó vượt quá giá trị deadband Deadband áp dụng cho toàn bộ group, không xem xét đến các item cụ thể, và ít khi sử dụng

fieldbus

client application (OPC client) OPC server cache

fieldbus device

fieldbus device

fieldbus connection

server lấy mẫu các items

(at the RequestedUpdateRate)

và đặt chúng vào cache

synchronous call over the field bus to the end device (takes a while)

no need for “device access” when

fieldbus operates cyclically…

FB manager

proprietary protocol

"SynchRead" đọc dữ liệu từ cache (local to

the PC) hoặc đọc đồng bộ từ device (thiết

bị)

"Write" thì luôn luôn vào device

(DA 3.0 cho phép viết vào cache)

Trang 39

2.3 Webservice và OPC XML

2.3.1 Giới thiệu về Web Service

Web Service mở rộng khái niệm xử lý phân tán (distributed processing) và dùng xây dựng những cấu kiện (components) Theo đấy các hàm hành sự của cấu kiện có thể được triệu gọi thông qua Internet Các cấu kiện này (components) có thể được xây dựng từ bất kỳ ngôn ngữ nào tương thích với NET, và các cấu kiện này có thể liên lạc sử dụng những nghi thức (protocol) mở mang tính độc lập với platform (platform-independent) Một Web Service là một đoạn mã managed đơn vị (điển hình được cài đặt dưới IIS) mà ta có thể triệu gọi từ xa sử dụng HTTP [24]

Web Service bao gồm 3 công nghệ hỗ trợ: một ngôn ngữ mô tả được gọi là WSDL (Web Service Description Language), một nghi thức truyền tin (protocol, chẳng hạn HTTP GET, HTTP POST hoặc SOAP), một dịch vụ phát hiện (discovery service, được thể hiện bởi các tập tin *.vdisco)

2.3.2 Vai trò của Web Service

Trước kia, truy cập từ xa các đoạn mã nhị phân đòi hỏi những nghi thức thuộc sàn diễn đặc trưng (và thỉnh thoảng là ngôn ngữ đặc trưng) Ví dụ như DCOM, DCOM client truy cập các kiểu dữ liệu COM từ xa sử dụng các triệu gọi RPC (Remote Procedure Call) được gắn kết chặt chẽ CORBA cũng đòi hỏi các nghi thức được gắn kết chặt chẽ để hiện dịch những kiểu dữ liệu từ xa, EJB (Enterprise Java Beans) đòi hỏi một nghi thức đặc trưng và ngôn ngữ đặc trưng (Java)

Một trong các hạn chế của DCOM là không thể vượt qua tường lửa

Trang 40

HTTP là một nghi thức liên lạc đặc thù mà tất cả mọi sàn diễn đều chấp nhận hỗ trợ

Như vậy, sử dụng Web Service, người triển khai Web Service có thể sử dụng bất cứ ngôn ngữ nào mình muốn Người tiêu thụ Web Service có thể dùng HTTP chuẩn để triệu gọi các hàm hành sự trên những kiểu dữ liệu được định nghĩa trên Web Service (hình 2.3.1)

Người sử dụng Web Service không nhất thiết là client sử dụng Browse, có thể là ứng dụng console hoặc Windows Form Trong mỗi trường hợp, client tương tác gián tiếp với Web Service thông qua một proxy trung gian Proxy được xem như là một kiểu dữ liệu nằm ở xa Tuy nhiên, đoạn mã của proxy có nhiệm vụ chuyển những yêu cầu cho Web Service sử dụng HTTP chuẩn hoặc tuỳ chọn các thông điệp SOAP

Application Phương thức

Hình 2.3.1

Ngày đăng: 10/02/2021, 22:24

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w