Professional Documents
Culture Documents
HỒ CHÍ MINH
LÊ THÀNH LONG
Lê Thành Long-1811047
2. Về nộ i dung luậ n vă n:
3. Về tính ứ ng dụ ng:
Đánh giá chung: Luậ n văn đạ t/khô ng đạ t yêu cầ u củ a mộ t luậ n văn tố t nghiệp kỹ sư, xếp
loạ i Giỏ i/ Khá / Trung bình
Điểm từng sinh viên:
Lê Thà nh Long: ....../10
7. Về tính ứ ng dụ ng:
Đánh giá chung: Luậ n văn đạ t/khô ng đạ t yêu cầ u củ a mộ t luậ n văn tố t nghiệp kỹ sư, xếp
loạ i Giỏ i/ Khá / Trung bình
Điểm từng sinh viên:
Lê Thà nh Long: ……/10
Mục tiêu: Xây dựng hệ thống giám sát bằng thiết bị SIMATIC RTU3031C và cảm biến,
phát triển các ứng dụng OPC UA Client kết nối hệ thống.
Đối tượng: SIMATIC RTU3031C, Web Client, App Client, Cloud VPS, Tele Control Server
Basic.
Thực hiện cấu hình thiết bị SIMATIC RTU3031C và kết nối thiết bị với các cảm
biến.
Xây dựng công cụ OPC UA Client thông qua web và app để kết nối và giám sát
dữ liệu từ xa.
Tích hợp điện toán đám mây cho hệ thống, đưa dữ liệu lên TeleControl Server
Basic (phần mềm được cài đặt trên VPS) và kết nối toàn hệ thống
Kết quả mong đợi: Cấu hình thành công thiết bị SIMATIC RTU3031C, các ứng dụng
app và web kết nối và giám sát dữ liệu ổn định.
Nghiên cứu tìm hiểu mô hình, cách thức kết nối của chuẩn giao thức OPC UA
Tìm hiểu cách cấu hình và vận hành thiết bị SIMATIC RTU3031C, sau đó kết nối
với TeleControl Server Basic trên điện toán đám mây.
Tìm hiểu về cảm biến áp suất thủy tĩnh dạng chìm đo mức LH300.
Xây dựng ứng dụng chạy trên web và app(android) để kết nối và giám sát dữ
liệu.
Chạy thực nghiệm kiểm tra kết nối và trao đổi dữ liệu.
Nghiệm thu kết quả và viết báo cáo.
Xác nhận của Cán bộ hướng dẫn TP. HCM, ngà y….thá ng …..nă m…..
MỞ ĐẦU...............................................................................................................................2
Chương 2: CƠ SỞ LÝ THUYẾT...............................................................................................5
4.2.2. Cấ u hình.....................................................................................................................25
6.1. Mụ c tiêu..............................................................................................................................67
6.3. Ứ ng dụ ng........................................................................................................................... 68
DA – Data Access
DI – Digital Inputs
DO – Digital Outputs
AI – Analog Inputs
SD – Standard Definition
1
MỞ ĐẦU
Trong suố t quã ng thờ i gian là sinh viên tạ i trườ ng Đạ i họ c Bá ch khoa Thà nh
phố Hồ Chí Minh, em đã có nhữ ng cơ hộ i giao lưu, họ c hỏ i, sáng tạ o và tiếp thu
nhữ ng kiến thứ c mớ i mẻ, bổ ích để chuẩ n bị mộ t hà nh trang hướ ng đến tương
lai. Đó sẽ là khoả ng thờ i gian tươi đẹp nhấ t mà em sẽ luô n khắ c cố t ghi tâ m.
Cuố i cù ng, em xin đượ c châ n thà nh cả m ơn gia đình, anh chị em đã tạ o điều
kiện, giú p đỡ , quan tâ m, độ ng viên em trong suố t thờ i gian họ c tậ p và hoà n
thà nh luậ n vă n tố t nghiệp.
Sau cù ng, em xin kính chú c thầ y cô thậ t dồ i dà o sứ c khỏ e, luô n giữ u lử a nhiệt
huyết để tiếp tụ c truyền đạ t kiến thứ c cho cá c thế hệ sinh viên mai sau.
2
Chương 1: TỔNG QUAN ĐỀ TÀI
3
Về cá c ứ ng dụ ng client như app, web, đố i tượ ng nghiên cứ u là cá ch thứ c kết nố i
vớ i server, truy cậ p dữ liệu, hiển thị dữ liệu.
1.4. Nhiệm vụ
4
Chương 2: CƠ SỞ LÝ THUYẾT
OPC đượ c viết tắ t từ OLE for Process Control, OLE là Object Linking and
Embedding là cô ng nghệ mộ t thờ i nổ i đình đá m củ a Microsoft- Cô ng nghệ
COM/DCOM (Component Object Model, D- Distributed). Như vậ y OPC chính là
COM/DCOM for Process Control, đượ c hiểu là kiến trú c liên kết cá c đố i tượ ng
phâ n tá n (phầ n mềm) trong tự độ ng hó a cô ng nghiệp.
5
o Bao gồ m tấ t cả cá c tính nă ng trướ c đó như là DA và A&E.
o Server và Client sử dụ ng OPC UA có thể lậ p trình và chạ y trên nhiều hệ
điều hà nh khá c nhau.
o Cá c cơ chế kiểm soá t truy cậ p và bả o mậ t tích hợ p trên giao thứ c đượ c
nâng cao; sử dụ ng nhiều lớ p bả o mậ t.
o Có thể mở rộ ng cho cá đố i tượ ng và kiểu dữ liệu phứ c tạ p.
o Hỗ trợ kỹ thuậ t Heartbeat 2 chiều giữ a Server và Client để kiểm tra tình
trạ ng hoạ t độ ng vớ i nhau.
o Hỗ trợ lưu đồ trạ ng thá i (State-machine).
o Có thể chạ y trên cá c thiết bị trườ ng như cả m biến hay thiết bị chấ p hà nh.
Từ đó có thể đưa dữ liệu lên thẳ ng lên Cloud.
o Dữ liệu trao đổ i giữ a Server và Client khá đa dạ ng: biến cơ bả n
(Elementary variable); hà m (Method); sự kiện (Event); Mả ng (Array) và
đố i tượ ng (Object).
o Hỗ trợ chứ c năng automatic backfilling dữ liệu. Khi kết nố i giữ a Client và
Server bị giá n đoạ n thì dữ liệu trong thờ i gian nà y đượ c buffer trên
Server. Ngay sau khi kết nố i đượ c khô i phụ c thì dữ liệu buffer nà y đượ c
gử i ngay cho Client.
2.1.3. Cấu trúc chuẩn OPC UA
Cá c thô ng số kỹ thuậ t củ a OPC UA đượ c chia thà nh cá c phầ n khá c nhau theo
tiêu chuẩ n quố c tế IEC 62541. Cấ u trú c tổ ng quan củ a OPC UA bao gồ m cá c
phầ n dướ i đâ y:
6
Hình 2. 1: Mô hình tổ ng quan cấ u trú c OPC UA
Tiêu chuẩ n OPC UA bao gồ m cá c thô ng số kĩ thuậ t riêng biệt, đượ c gọ i là cá c
đặ c tả . Mỗ i thô ng số mô tả mộ t phầ n chứ c nă ng và chỉ định giao thứ c giữ a
Server và Client nà o đượ c phép triển khai cho chứ c nă ng nà y và hỗ trợ nó . OPC
UA Client và Server khô ng hỗ trợ tấ t cả cá c đặ c tả trên. Tù y thuộ c và o ứ ng dụ ng
cụ thể, chỉ sử dụ ng mộ t số đặ c tả riêng biệt. Khi sử dụ ng OPC UA Server và
Client cầ n xem xét đặ c tả nà o đượ c yêu cầ u và sẽ đượ c triển khai bở i Server và
Client.
1. Concepts
2. Security Model
4. Services
5. Information Model
6. Service Mappings
7. Profiles
8. Data Access
7
9. Alarm & Conditions
10. Programs
12. Discovery
13. Aggregates
14. PubSub
1. Data Access
OPC UA Data Access cho phép đọ c, viết và giá m sá t nhữ ng biến dữ liệu
củ a quá trình hiện hành.
3. Information Model
4. Security
Xá c định cá c yêu cầ u bả o mậ t cơ bả n
OPC UA Server đó ng vai trò là nơi kết nố i cá c thiết bị client khá c nhau, có
nhiệm vụ :
Tạ o cá c mứ c độ bả o mậ t tương ứ ng.
Quả n lý khô ng gian biến, dữ liệu, cấ p quyền truy cậ p dữ liệu.
Quả n lý danh sá ch cá c client kết nố i đến.
8
Quả n lý danh sá ch cá c biến đượ c client đă ng ký.
Trả lờ i yêu cầ u cá c client gử i lên.
Lưu trữ lịch sử thay đổ i dữ liệu.
Quả n lý cá c chứ ng nhậ n định danh thiết bị.
OPC UA Client đó ng vai trò kết nố i, lấ y dữ liệu từ server và thự c hiện cá c thao
tá c vớ i dữ liệu, có nhiệm vụ :
Thiết bị SIMATIC RTU3031C bao gồ m 8DI, 8DQ, 4AI. Thiết bị nà y hỗ trợ kết nố i
vớ i trung tâ m điều khiển vớ i cá c giao thứ c telecontrol (IEC60870, DNP3, Sinaut
ST7, Tele Control Server Basic) để là m bộ ghi dữ liệu. Ngoà i ra, tấ t cả cá c giá trị
quy tình đo đượ c có thể lưu trữ trong bộ nhớ trong hoặ c trên thẻ SD.
RTU3031C cò n có thể gử i email và tin nhắ n khi có cả nh bá o về lưu lượ ng, á p
suấ t, nhiệt độ hay vị trí hiện tạ i củ a thiết bị.
9
nướ c, nhà má y hó a chấ t hoặ c cá c trạ m hú t dầ u ngoà i khơi…) hoặ c theo dõ i cá c
xe chở bồ n, tà u biển chở dầ u…
10
Hình 2. 3: Cả m biến á p suấ t thủ y tĩnh dạ ng chìm đo mứ c LH300
Ưu điểm:
11
Chương 3: MÔ HÌNH OPC UA SERVER
3.1. Tìm hiểu về không gian địa chỉ của OPC UA Server
12
khô ng phâ n cấ p (ví dụ Node đó đượ c định danh là loạ i gì so vớ i mộ t đố i
tượ ng nà o đó ).
Cá c loạ i Node đượ c liệt kê tạ i bả ng 3.1 sau:
View Kiểu Node thể hiện cho mộ t phầ n củ a khô ng gian địa chỉ.
Thể hiện cho điểm truy cậ p.
Object Type Kiểu Node cung cấ p thô ng tin về cấ u trú c hay thà nh phầ n
củ a mộ t Object.
Variable Type Mô tả thuộ c tính củ a biến hoặ c kiểu dữ liệu đượ c tìm thấ y
trong cá c Node kiểu Variable
Namespaces và NodeID
Mỗ i Node trong OPC UA Address Space đều đượ c định danh bở i NodeID;
NodeID đượ c tạ o thà nh tự mộ t NameSpace để phâ n biệt NodeID vớ i cá c hệ
thố ng khá c nhau. NodeID có thể là mộ t số , chuỗ i tên.
13
Hình bên dướ i giả i thích cấ u trú c củ a mộ t NodeID:
1. Namespace index
3. ID
Bả ng 3. 2: Mô tả cấ u trú c củ a mộ t NodeID
Node Attributes là mộ t danh sá ch cá c thuộ c tính củ a mộ t Node. Từ đó có thể
biết đượ c cụ thể cá c thà nh phầ n tạ o ra Node đó .
Hình 3.3 cho thấ y cá c đố i tượ ng khá c nhau có thể đượ c tạ o ra trong quá
trình trao đổ i dữ liệu giữ a má y khá ch và má y chủ OPC. Cá c đố i tượ ng đượ c mô
tả ở bả ng 3.3
14
Hình 3. 3: Cá c đố i tượ ng đượ c tạ o ra khi trao đổ i dữ liệu
Đố i tượ ng Mô tả
Secure Kênh giao tiếp an toà n đượ c thự c hiện trong ngă n xếp
Channel OPC UA. Cá c đố i tượ ng ở cấ p độ ứ ng dụ ng có thể tồ n tạ i
độ c lậ p. Tuy nhiên, chú ng có thể đượ c tạ o, sử dụ ng hoặ c
thay đổ i trong ngữ cả nh củ a mộ t kênh an toà n. Nếu kênh
an toà n mớ i đượ c thiết lậ p sau khi kết nố i bị giá n đoạ n
nó phả i đượ c chỉ định cho phiên ở câ p độ ứ ng dụ ng.
15
Để thà nh lậ p kết nố i giữ a Client và Server, OPC UA sử dụ ng cá c phương thứ c
sau:
Phương thứ c Mô tả
Phương thứ c Mô tả
16
phương thứ c này để ghi.
Phương thứ c Mô tả
17
Publish Phương thứ c chuyển cá c gó i dữ liệu cho đă ng ký
vớ i cá c thay đổ i giá trị và thô ng bá o sự kiện
trong khoả ng xuấ t bả n. Phương phá p nà y khô ng
thể nhìn thấ y trong Client API. Chứ c nă ng ở đó
đượ c thự c hiện là gọ i lạ i cho ứ ng dụ ng má y
khá ch.
Bả ng 3. 6: Cá c phương phá p quan trọ ng nhấ t củ a giao diện OPC UA liên quan
đến đă ng ký
3.3. Giao thức và phương thức bảo mật
18
Hình 3. 5: Giao thứ c đồ ng bộ và khô ng đồ ng bộ giao tiếp bằ ng OPC DA
Lớp bảo mật
Hình 3. 6: Lớ p bả o mậ t
Lớ p Mô tả
19
Session Trên cấ p độ Session, xá c thự c ngườ i dù ng đượ c thự c
hiện.
Bả ng 3. 7: Mô tả cá c lớ p bả o mậ t
Cơ chế bảo mật và trao đổi chứng chỉ
Security Desscription
Options
và mậ t khẩ u
Bả ng 3. 8: Nhữ ng cơ chế bả o mậ t
20
Trao đổi chứng chỉ giữa server và client
4. Do đó , chứ ng chỉ má y khá ch phả i đượ c quả n trị viên chấ p nhậ n thủ
cô ng trên má y chủ . Trong hầ u hết cá c trườ ng hợ p, điều nà y đượ c
thự c hiện bở i mộ t quả n trị viên sao chép chứ ng chỉ má y khá ch từ
thư mụ c từ chố i và o mộ t thư mụ c đá ng tin cậ y.
21
Chương 4: XÂY DỰNG HỆ THỐNG GIÁM SÁT VỚI THIẾT BỊ SIMATIC
RTU3031C VÀ CÁC CẢM BIẾN
22
Hệ thố ng củ a luậ n văn chủ yếu gồ m 3 phầ n: OPC UA Server (Cloud), OPC UA
Client (App, Web), thiết bị RTU3031C SIMATIC.
OPC UA Server đó ng vai trò phá t cá c địa chỉ, là nơi trung gian để cá c client khá c
giao tiếp vớ i nhau cũ ng như việc cung cấ p dịch vụ truy cậ p, trao đổ i dữ liệu và o
server cho cá c client.
OPC UA Client (App, Web) đó ng vai trò là client để kết nố i lên server và có chứ c
năng giá m sá t dữ liệu hệ thố ng và giao tiếp vớ i cá c thiết bị client khá c.
Chuẩ n OPC UA đó ng vai trò là chuẩ n giao tiếp cho tấ t cả cá c thiết bị nó i trên,
vừ a có vai trò gử i dữ liệu lên server, vừ a gử i thô ng tin xuố ng cho client.
- Kết nố i cả m biến á p suấ t thủ y tĩnh dạ ng chìm LH300 và o X40 và X41 (như
hình)
23
Hình 4. 2: Sơ đồ kết nố i cả m biến LH300 và nguồ n điện vớ i thiết bị RTU3031C
24
4.2.2. Cấu hình
Hình 4. 5: Đă ng nhậ p
5. Đă ng nhậ p bằ ng username “admin” và password “admin”
6. Sau đó đổ i password mớ i.
25
Hình 4. 6: Thay đổ i mậ t khẩ u
7. Và o mụ c “System” để cà i đặ t vị trí hiện tạ i cho thiết bị RTU3031C
o Latitude là vĩ độ
o Longitude là kinh độ
26
Hình 4. 8: Cà i đặ t thờ i gian
9. Chuyển đến thư mụ c “WAN” và mở cử a sổ “Mobile wireless setting” để kích
hoạ t chứ c năng di độ ng, nhậ p châ n thẻ SIM, kích hoạ t dịch vụ dữ liệu di độ ng,
27
Hình 4. 9: Kích hoạ t chế độ di độ ng cho thiết bị
4.2.2.2. Cấu hình gửi/nhận SMS/email
1. Mở mụ c “Users/groups”, thêm cá c thô ng tin như tên, số điện thoạ i, địa chỉ.
28
2. Chuyển sang cử a sổ “Recipient groups”, thêm mộ t nhó m mớ i và cá c thô ng tin
cầ n thiết.
29
Hình 4. 13: Nhậ p mail RTU3031C dù ng để gử i email
4.2.2.3. Cấu hình chế độ vận hành
30
Hình 4. 14: Cấ u hình chế độ vậ n hà nh
4.2.2.4. Cấu hình chức năng GPS cho RTU3031C
31
Hình 4. 15: Bậ t chế độ GPS cho thiết bị
2. Để có thể gử i vị trí hiện tạ i củ a thiết bị RTU3031C lên TeleControl Server
Basic, ta và o mụ c “Tags” để tạ o ra cá c tag cho GPS như Latitude, Longitude,
Time of last position.
Ta chọ n “Active”, sau đó ta chọ n “Latitude” tag, đặ t tên cho tag, và nhấ n “Apply”
32
Là m tương tự cho cá c tag Longitude, Time of the last position, visible Satellites
Hình 4. 18: Tạ o DI
33
2. Ta chuyển sang cử a sổ “Digital Outputs”, ta tạ o 2 DO có tên “Level_Light” và
“GPS_Light”. 2DO là 2 ngõ ra điều khiển đền cả nh bá o cho lưu lượ ng và vị trí.
Hình 4. 19: Tạ o DO
3. Tiếp theo ta chuyển sang cử a sổ “Digital memory bits”, ở đâ y ta tạ o 2 DM
o “Enable_Read_M”: giả lậ p tín hiệu cả m biến để cho phép RTU đọ c tín hiệu
analog từ châ n AI0.
o “Level_90”: tín hiệu kích khi mự c nướ c ra ngoà i vù ng an toà n.
Hình 4. 20: Tạ o DM
34
4. Ta chuyển sang cử a sổ “Analog inputs”, ta tạ o 1 AI có tên là “Level”: thô ng số
đượ c trả về từ cả m biến LH300.
Hình 4. 21: Tạ o AI
35
5. Chuyển sang cử a sổ “Analog memory bits”, ta tạ o 4 AM có tên là “Level_Max”,
“Level_Percent”, “Distance”, “Temperature”.
Ta chọ n và o ô “Active”, nhậ p tên cho tag chọ n type, sau đó nhấ n “Apply”.
o Ở đâ y, ta nhậ p Level_Max giá trị khở i tạ o là 0.3 (m): lưu lượ ng tố i đacủ a
bồ n chứ a
o “Distance”: khoả ng cá ch từ vị trí hiện tạ i củ a thiết bị vớ i điểm đặ t ban
đầ u.
o “Level_Percent”: tỉ lệ củ a lưu lượ ng khi chia thô ng số trả về từ LH300
cho “Level_Max”.
o “Temperature”: tín hiệu giả lậ p nhiệt độ .
Hình 4. 22: Tạ o AM
4.2.2.6. Cấu hình cho văn bản SMS/email
o Tên: Level_Text
36
o Nộ i dung:
o Ngà y: gắ n tag [DATE]
o Thờ i gian: gắ n tag [TIME]"
37
Hình 4. 24: Tạ o tiêu đề cho vă n bả n
4. Thêm mộ t vă n bả n để gử i SMS/email khi thiết bị ra khỏ i vị trí cho phép.
o Tên: Level_Text
o Nộ i dung:
o Ngà y: gắ n tag [DATE]
o Thờ i gian: gắ n tag [TIME]
5. Tương như trên, ta cũ ng tạ o mộ t tiêu đề cho cả nh bá o này.
38
Hình 4. 25: Thư mụ c Program
2. Đặ t tên “Level” cho network nà y
39
o Quotient: Level_Percent (AM1)
Khi ta có giá trị củ a Level, ta đem chia cho Level_Max, ta sẽ có đầ u ra là giá trị
Level_Percent
40
Hình 4. 28: Viết chương trình cho Program
* Limit Value Switch
Mộ t dã y tín hiệu analog đượ c giớ i hạ n từ “Limit Value 1” đến “Limit Value 2” sẽ
đượ c giá m sá t
41
o Output: Level_Light (DQ0)
42
2. Thêm mộ t function block mớ i (FB1), chọ n chứ c nă ng nă ng “Send e-mail”,
phầ n “Comment” như mộ t lờ i giả i thích cho function block (thêm và o nếu cầ n)
43
Hình 4. 33: Viết chương trình cho Program
2. Thêm mộ t function block mớ i (FB1), chọ n chứ c nă ng nă ng “Send SMS”,
44
Hình 4. 35: Viết chương trình cho Program
Chương trình GPS
45
o Radius (m): 1000
46
4. Thêm 1 function block mớ i (FB3), chọ n chứ c nă ng “Send email” cho FB3
47
4.2.2.8. Cấu hình kết nối đến TeleControl Server
Ta tích chọ n “Active”, nhậ p địa chỉ IP tĩnh củ a Telecontrol Server, chọ n
interface là WAN
48
Chương 5: THIẾT KẾ CÁC ỨNG DỤNG OPC UA CLIENT
OPC UA Client là mộ t đố i tượ ng logic kết nố i đến OPC UA Server. OPC UA Server
có thể kết nố i tớ i OPC UA Client và đọ c dữ liệu cung cấ p từ Server. Khi OPC UA
Server kết nố i vớ i giao thứ c theo chuẩ n OPC, mỗ i client có thể truy cậ p đến OPC
UA Server và trao đổ i dữ liệu vớ i server cũ ng mộ t đườ ng truyền.
49
o User name/password: Client đượ c Server cấ p user name và password
tương ứ ng để truy cậ p đượ c và o Server.
o Certifications: có nhiều kiểu certification, đố i vớ i OPC UA sử dụ ng kiểu
X50. Như vậ y Client muố n truy cậ p và o Server thì Server sẽ cung cấ p 1
file Certificate (.der) và file nà y phả i nằ m trong folder Trusted củ a Client
và về phía Server cũ ng cầ n đưa Certificate củ a Client và o folder Trusted.
Khi dữ liệu đượ c truyền đi từ Server về Client hay chiều ngượ c lạ i, dữ liệu đượ c
mã hó a theo mộ t số phương thứ c sau:
o Browse
o Read/Write
o Methods
o Registered Read/Write
o Subscribe
5.2. Giới thiệu bộ thư viện OPCUA.NET Standard
Nă m 2018, tổ chứ c OPC Foundation đã phá t triển và phá t hà nh bộ thư viện OPC
UA.NET Standard. Bộ thư viện này sử dụ ng ngô n ngữ C# và nền tả ng .NET để
50
lậ p trình. Bộ thư viện nà y vẫ n đượ c tiếp tụ c phá t triển cho đến ngà y nay vớ i
liên tụ c nhiều cậ p nhậ t, thay đổ i trong giao thứ c. Bộ thư viện nà y cho phép
ngườ i dù ng lậ p trình tạ o OPC UA Client chạ y trên nhiều ứ ng dụ ng khá c nhau.
51
phầ n trong web hoặ c ứ ng dụ ng, phâ n chia cá c đoạ n vă n, heading, titles,
blockquotes… và HTML khô ng phả i là ngô n ngữ lậ p trình.
HTML bao gồ m mộ t loạ t cá c mã ngắ n đượ c quả n trị viên trang web nhậ p và o
mộ t tệp vă n bả n, gọ i là cá c tag. Mộ t HTML document khi hoà n thiện sẽ đượ c
lưu dướ i dạ ng đuô i .html hay .htm. Cá c files nà y sau đó sẽ đượ c cá c trình duyệt
web như Google Chrome, Microsoft Edge đọ c hiểu nộ i dung và chuyển chú ng
sang dạ ng văn bả n hiển thị để ngườ i dung có thể xem đượ c nó .
Cá c ưu điểm củ a HTML:
o Cá ch sử dụ ng dễ dà ng.
o Dễ dà ng tích hợ p vớ i nhiều loạ i ngô n ngữ như PHP, Nodejs, …
o Mã nguồ n mở , miễn phí.
o Cá c markup trong HTML ngắ n gọ n, tính đồ ng nhấ t cao.
o Hoạ t độ ng mượ t mà trên phầ n lớ n cá c trình duyệt phổ biến hiện nay.
CSS
Javascript
52
Javascript là mộ t ngô n ngữ lậ p trình kịch bả n dự a và o đố i tượ ng phá t triển có
sẵ n hoặ c tự định nghĩa. Nhiệm vụ củ a Javascript là xử lý nhữ ng đố i tượ ng
HTML trên trình duyệt. Nó có thể can thiệp vớ i cá c hà nh độ ng như thêm, xó a,
sử a cá c thuộ c tính CSS và cá c thẻ HTML mộ t cá ch dễ dà ng. Hay nó i cá ch khá c,
Javascript là mộ t ngô n ngữ lậ p trình nên trình duyệt ở phía client. Nếu việc xâ y
dự ng mộ t trang web giố ng như thiết kế mộ t robot, thì HTML chính là khung
sườ n củ a robot, CSS là trang trí hình dạ ng củ a robot và Javascript giú p tạ o nên
cá c chuyển độ ng, cá c hiệu ứ ng cho robot. Hiện nay, Javascript đang ngà y cà ng
trở nên phổ biến trong thế giớ i lậ p trình.
53
o Mộ t bộ phong phú Server Control cho common tasks (chứ c nă ng phổ
biến, nhiệm vụ ) bao gồ m cả truy cậ p dữ liệu (data access).
5.3.1.3. Lưu trữ dữ liệu SQL Database
Trong luậ n vă n nà y, SQL Server đượ c tạ o trự c tiếp trên Visual Studio vớ i mụ c
đích:
54
o Giá m sá t hệ thố ng đượ c xâ y dự ng bằ ng thiết bị SIMATIC RTU3031C và
cá c cả m biến.
o Vẽ biểu đồ lưu lượ ng và nhiệt độ .
o Theo dõ i vị trí hiệu tạ i củ a thiết bị thô ng qua bả n đồ .
5.3.2.2. Chức năng Connect
Để kết nố i đến đượ c vớ i Server, đầ u tiên chú ng ta cầ n nhậ p địa chỉ Url củ a
server OPC UA, sau đó ta nhấn nú t “Connect”. Nếu server có user/password thì
ta phả i nhậ p đầ y đủ và o. Sau khi nhấ n nú t “Connect”, client sẽ tạ o mộ t
certificate gử i lên server để server xá c thự c, nếu server chấ p nhậ n, client sẽ tạ o
mộ t session để giữ đườ ng truyền kết nố i đến server cho việc trao đổ i dữ liệu.
Code
protected void Connect_Click(object sender, EventArgs e)
{
// Hook up to the KeepAlive event
myClientHelperAPI.KeepAliveNotification += new
KeepAliveEventHandler(Notification_KeepAlive);
string endpointUrl = discoveryTextBox.Text;
// Connect to the server
try
{
ClientScript.RegisterStartupScript(this.GetType(), "Success",
"messtimer('success','Connect Successful')", true);
// Connect with URL from Server URL text box
myClientHelperAPI.Connect(endpointUrl, SecurityPolicies.None,
MessageSecurityMode.None, false, "", "").Wait();
toggleButtons(true);
mySession= myClientHelperAPI.Session;
}
catch (Exception ex)
{
//ném lỗ i
ClientScript.RegisterStartupScript(this.GetType(), "Alert", "mess('error','Oops...'," +
ex.ToString() + ")", true);
return;
}
}
Khi kết nố i thà nh cô ng, cá c thô ng tin kết nố i đến server như thờ i gian, Url, … sẽ
đượ c hiểu thị ở bả ng Status.
55
Hình 5. 3: Biểu đồ tuầ n tự Connect
STT Mô tả
Bả ng 5. 2: Mô tả cá c bướ c Connect
56
5.3.2.3. Chức năng Browse
Code
Chứ c năng nà y giú p client có thể giá m sá t sự thay đổ i giá trị củ a Node theo thờ i
gian thự c. Khi ta cung cấ p cho client tên NodeID, hà m Monitor dù ng để tạ o mộ t
session theo dõ i Node dự a và o chu kỳ lấ y mẫ u, chu kỳ là m mớ i.
57
Code
Đoạ n code dướ i đâ y cho client biết khi có sự thay đổ i giá trị mớ i từ server, hà m
thô ng bá o sẽ thu nhậ p giá trị mớ i củ a Node trong biến notification. Sau khi có
đượ c giá trị mớ i, giá trị nà y sẽ đượ c cậ p nhậ t và o database SQL Server củ a
ASP.NET để có thể truy xuấ t ra cá c định dạ ng khá c nhau nhưng bả ng dữ liệu,
biểu đồ .
Code
58
Hình 5. 4: Biểu đồ tuầ n tự Subscribe
ST Mô tả
T
59
5.4. App OPC UA Client
60
là ngườ i dù ng khô ng có đầ y đủ quyền điều khiển trên code sẽ chạ y trên thiết bị,
code phả i phù hợ p trên mọ i nền tả ng.
61
Hình 5. 7: Thư viện OPC UA Nuget
62
Hình 5. 8: Giả i thuậ t App OPC UA Client
63
Code
string currentFolder =
DependencyService.Get<IPathService>().PublicExternalFolder.ToString();
}
// check the application certificate.
haveAppCertificate = await application.CheckApplicationInstanceCertificate(false, 0);
config.ApplicationName = "OPC UA Sample Client";
if (haveAppCertificate)
{
config.ApplicationUri =
Utils.GetApplicationUriFromCertificate(config.SecurityConfiguration.ApplicationCertificate.Cert
ificate);
config.CertificateValidator.CertificateValidation += new
CertificateValidationEventHandler(CertificateValidator_CertificateValidation);
Hà m tạ o List endpoints sau khi client gử i url lên server và đượ c chấ p nhậ n.
64
Code
endpoints = discoveryC.GetEndpoints(null);
65
Code
{
session = null;
Console.WriteLine("SESSION CLOSED SEND!");
MessagingCenter.Send<ClientOPC>(this, "SessionClose");
}
}
66
Code
Code
Luậ n vă n nhằ m nghiên cứ u cá c ứ ng dụ ng đơn giả n, vừ a hiệu quả cho việc kết
hợ p phầ n cứ ng, phầ n mềm và chạ y trên nền Cloud (Má y tính ả o-VPS) cho phép
ngườ i dù ng có thể:
67
- Truy cậ p bằ ng bấ t kì thiết bị nà o.
Cloud VPS (Cloud Virtual Private Server) hay cò n gọ i là má y chủ riêng ả o trên
nền điện toá n đá m mâ y. Theo cá ch hiểu thô ng thườ ng nó là mộ t dạ ng server ả o
đượ c xâ y dự ng trên nền tả ng điện toá n má y tính, đượ c cấ p riêng cho từ ng
ngườ i dù ng. Điều này cho phép bạ n có thể truy cậ p nhanh chó ng trên cá c má y
chủ mà khô ng cầ n mấ t nhiều thao tá c. Mỗ i Cloud VPS là mộ t hệ thố ng biệt lậ p,
ngườ i dù ng có thể restart lạ i bấ t cứ lú c nà o.
Có thể nó i rằ ng Cloud VPS chính là mộ t giả i phá p hữ u hiệu, giú p bạ n thự c hiện
cô ng việc nhanh, dễ dà ng hơn mà qua đó lạ i tiết kiệm chi phí hơn so vớ i VPS
thô ng thườ ng. Có thể nó i rằ ng, đâ y là mộ t trong nhữ ng bướ c tiến quan trọ ng
trong quá trình phá t triển củ a khoa họ c cô ng nghệ ngà y nay, Cloud VPS đã khắ c
phụ c đượ c nhữ ng hạ n chế mà cá c loạ i má y chủ trướ c kia khô ng là m đượ c qua
đó giú p bạ n có thể thự c hiện cá c thao tá c nhanh hơn.
68
client có thể truy cậ p để sử dụ ng cá c NodeID và cá c thô ng tin đượ c cung cấ p từ
server.
69
Qua việc cấ u hình thiết bị SIMATIC RTU3031C để xây dự ng hệ thố ng giá m sá t,
ta thấ y hệ thố ng hoạ t độ ng ổ n định, sá t vớ i thự c tế. Bên cạ nh đó , khi có nhữ ng
cả nh bá o về vị trí hay lưu lượ ng, ngườ i quả n lý sẽ nhậ n đượ c SMS/email.
70
Hình 7. 2: SMS từ thiết bị SIMATIC RTU3031C khi có cả nh bá o
7.1.2. Ứng dụng OPC UA Client
71
Hình 7. 3: Giao diện Connect
72
Hình 7. 5: Giao diện giá m sá t hệ thố ng
73
Hình 7. 7: Giao diện đồ thị lưu lượ ng
74
Hình 7. 9: Giao diện bả n đồ giá m sá t hệ thố ng
75
7.1.2.2. App OPC UA Client
76
Hình 7. 13: Giao diện trang tạ o List endpoints
77
Hình 7. 15: Giao diện trang vẽ đồ thị
78
Hình 7. 17: Giao diện giá m sá t hệ thố ng trên bả n đồ
79
7.2. Đánh giá
80
TÀI LIỆU THAM KHẢO
[1] Trương Đình Châ u, “OPC UA- Giao thứ c nền tả ng cho Industrial 4.0”, TP. Hồ
Chí Minh, 2020.
[2] OPCFoundation, OPC UA Part 3: Address Space Model, release 1.04, 2017.
[3] OPCFoundation, OPC UA Part 1: Overview and Concepts, release 1.04, 2017.
[5] Official OPC UA.NET Standard Stack from the OPC Foundation,
https://opcfoundation.github.io/UA-.NETStandard/.
81