OPC Open Platfrom Communication/ OLE for Process Control: Chuዑi các thông sዎ kዣ thuኼ ¯c biዉ ¯ trao ¯ዐi dዟ liዉu trong tዠ ¯ዒng hóa công nghiዉp.. AR Augemented Reality: Thዠc tዅ £ ዛዕn
Trang 10ኈI HኞC QUአC GIA TP HCM
Trang 23 Phn biዉn 1: TS Nguyወn Trዌng Tài
5 ኬy viên: PGS.TS Nguyወዛዓ
Xác nhኼn cዚa Chዚ tዋch Hዒ¯ዏ¯ዛዖng Khoa qun lý
chuyên ngành sau khi luኼ£¯ ¯ዛዘc sዞa chዟa (nዅu có)
Trang 3basis of OPC UA Technology)
II NHIϼM VЌ VÀ NЅI DUNG:
- Tìm hiu và to ዜng dዙng Server dዠa trên công nghዉ OPC UA Cho phép thu thኼǡዛዟ dዟ liዉǡ¯u khin hዉ thዎng công nghiዉp thông qua internet
- Tìm hiu và to ዜng dዙ¯ kዅt nዎi vዔi OPC UA Server Cho phép hin thዋ và cኸ¿¯ዋa chዊ ዛዟ dዟ liዉu theo nhu cኹu cዚዛዕi dùng
- Tìm hiu và phát trin các ዜng dዙng client chy trên thiዅt bዋ Windown, Android, IOs: cዙ th ¯ tài là phát trin ዜng dዙng thዠc tዅ £ ዛዕng trong viዉc vኼn hành và giám sát hዉ thዎng
- Tìm hiu và phát trin hዉ thዎ¯u khin sዞ dዙng chuኺn OPC UA Client (Hዉ thዎng PLC, cm biዅǡǥȌ
Trang 4ii
Ј ϪІ
ዛዔc tiên, em xin chân thành cዓኸt c quý Thኹy Cô thuዒc Bዒ Môn Tዠ
0ዒng Hóa và 0ዉn Ȃ 0ዉn Tዞ, ዛዕ0i hዌc Bách Khoa TP Hዏ Chí Minh ¯
tኼn tình truy ¯t, trang bዋ kiዅn thዜc cho em trong suዎt quá trình hዌc tኼp ti
ዛዕng Em xin chân thành bày tው lòng biዅዓኽc nhኸ¯ዅn thኹy cô
0c biዉt, em xin chân thành cዓthኹy ዛዓ0¿¯ ኼn tình giúp
¯ góp ý, truy¯t cho em nhዟng kiዅn thዜc quý báu trong suዎt quá trình thዠc hiዉ¯ tài
ñ ዓ các anh lዔp cao hዌc Tዠ 0ዒng Hóa khóa
2018, các bn hዌc viên lዔp cao hዌc Tዠ 0ዒng Hóa khóa 2019, các b²¯i hዌc khóa 2017 ¯ ዉ¿ï¯, em trong hዌc tኼ ñዛዠc hiዉn luኼn
£Ǥ
ñ ዓ cዚa các tài liዉ¯ ዞ dዙng ¯ làm tài liዉu tham kho
Vì kiዅn thዜc bn thân còn hn chዅ, trong quá trình thዠc hiዉn luኼ£
em không tránh khውi nhዟng sai sót ¯×ǡKính mong nhኼ¯ዛዘc nhዟng ý kiዅn
¯××ዝ quý thኹy cô Em xin chân thành cዓ!
TP.Hዏ Chí Minh, ngày 13 Ͳ£ʹͲʹͳ
Hዌc viên
Lê Tùng Gia
Trang 5iii
Vϰϯ$
Mዙ ¯À ዚa luኼ£ to ra ዜng dዙng trung gian cho phép truy cኼp, thu thኼp dዟ liዉu tዝ hዉ thዎng máy móc trong công nghiዉǡ ±ዛዟ dዟ liዉu vào ዓዖ dዟ liዉu dዠ² زǤዛዕi dùng có cኸ¿¯ዋa chዊ ዛዟ
dዟ liዉîዓዔi nhu cኹu thông qua ዜng dዙng Web Tዝ ¯×ǡዛዕi dùng có th phân tích tình trng máy thông qua hዉ thዎng dዟ liዉu, hዑ trዘ dዠ ¯ዉn trng thiዅt bዋ và lên kዅ hoch bo trì thích hዘp Luኼ£ ño ra ዜng dዙng client, cho phép truy cኼ¯ ghi, lኸy dዟ liዉu Cዙ th, luኼ£ዄ nghiên cዜu ዜng dዙng thዠc tዅ £ ዛዕngǡ¯ ¯u khin ¯ዎዛዘዛ¯ዒ ዓǡcm biዅዛዓዠ Client sዄ kዅt nዎ¯ዅn Server và nhኼn dng các thiዅt bዋ thông qua mã
QR Gii pháp này sዄ giúp viዉc ¯u khin, giám sát, bo trì và bዛng hዉ thዎng thiዅt bዋ trዖ nên dወ dàng, nhanh chóng và chính xác ዓǤ
Luኼ£ዜng dዙng các kiዅn thዜc trong lኼ¿¯u khin cho PLC, kiዅn thዜc v mng công nghiዉp, công nghዉ OPC UA, lኼp trình C# và lኼp trình Nodejs
2019 (Version 16.7.7)
Lኼp trình cho ዜng dዙng thዠc tዅ £ ዛዕng
TIA Portal V16 Lኼ¿¯u khin cho PLC
S7-PLCSIM Advanced V3.0 Mô phውng phኹn cዜng PLC
WinCC Professional V16 Mô phውng HMI cho hዉ thዎng
MongoDB (NoSQL) Lኼ¿ ዓዖ dዟ liዉu
Trang 6iv
THESIS ABSTRACT
The purpose of the thesis is to create a server application that allows accessing and collecting data from industrial machine systems, allow store data in a database based on OPC UA technology Users can configure the data address to adapt their system through the Web application From there, users can analyze the machine's condition through the data system, which helps predict the equipment's condition and plan appropriate maintenance Besides, the thesis creates a client application, allow access to OPC UA Server to write and retrieve data Specifically, the thesis will study the application of augmented reality, to ǡ ǡǥ server and identify the device through the QR code This solution will make the control, monitoring and maintenance of the equipment system easier, faster and more accurate This thesis applies the knowledge in PLC control programming, industrial network knowledge, OPC UA technology, C# programming and Nodejs programming This project is built from the following software:
Node (Version v13.14.0-x64) Platform to build OPC UA Server
Visual Studio Code Javascript code for building Server Unity3D (Unity version 2019.3.15f1) Augmented reality application
programming Microsoft Visual Studio Professional
2019 (Version 16.7.7)
Augmented reality application programming
S7-PLCSIM Advanced V3.0 PLC Simulation
WinCC Professional V16 HMI Simulation
Trang 7v
Ј 0
Ø ¯¯ Ø¿² ዜu cዚ²Ø¯ዛዘ ዛዔng dኻn khoa hዌc cዚǤዛዓ0¿ǡ ዒi dung nghiên cዜu, kዅt qu trong
¯ tài này trung thዠcǡ¯ዛዘc phát trin bዖi chính tác gi Nhዟng sዎ liዉu trong các bng biu phዙc vዙ cho viዉc phân tích, nhኼ±ǡ¯khi thu thኼp tዝ mô phውng
và thዠc nghiዉm do chính bn thân thዠc hiዉn
Trong luኼ£ này, tác gi có tham kh¯ tài luኼ£ ዚa mዒt sዎ anh cao hዌc khóa 2019 và cዚa các b²¯i hዌc khóa 2016 Ngoài ra, tác gi còn tham kho các các tài liዉዛዔc, tኸt c ¯u có ghi chú cዙ th
Nዅu phát hiዉn có bኸt kü gian lኼn nào tôi xin chዋu hoàn toàn trách nhiዉm v
nዒi dung luኼn £ ዚa mình
ዛዕ 0i hዌc Bách khoa thành phዎ Hዏ Chí Minh Ø ² ¯ዅn nhዟng vi phm tác quyn, bn quyn do tôi gây ra và trong quá trình thዠc hiዉn (nዅu có)
TP Hዏ Chí Minh, ngày 13 tháng 06 £ʹͲʹͳ
Lê Tùng Gia
Trang 8vi
ЌЌC
NHIኛM Vካ LU$ኈC i
LኧI Cእ ii
TÓM TT LU$ iii
THESIS ABSTRACT iv
Lኧ 0 v
MካC LካC vi
MካC LካC HÌNH NH vii
DANH MካC BNG BIኙU viii
DANH MካC CÁC Tኯ VIኗT TT ix
GIኦI THIኛU 1
1.1 Lý do chዌ¯ tài 1
1.2 Nhiዉm vዙ cዚa luኼ£ 1
1.3 Cኸu trúc luኼn £ 2
LÝ THUYኗT 3
2.1 Công nghዉ OPC UA 3
2.1.1 Tዐng quan 3
2.1.2 ؿدዋa chዊ 4
2.2 Thዠc tዅ £ ዛዕng 8
2.3 0ዉ¯ 9
2.4 ዓዖ dዟ liዉu MongoDB 10
2.5 Phኹn mm 11
2.5.1 NodeJs 11
2.5.2 TIA Portal 12
2.5.3 Unity3D 13
2.5.4 Visual Studio IDE 14
THኲC HIኛ0ኘ TÀI 15
3.1 Tዐ¯ tài 15
3.2 Lên kዅ hoch 17
3.3 Thዠc hiዉ¯ tài và kዅt qu 19
3.3.1 Xây dዠng OPC UA Server 19
3.3.2 Lኼ¿ ዓዖ dዟ liዉu 25
3.3.3 Web API và Web UI 27
3.3.4 Xây dዠng ዜng dዙng thዠc tዅ £ ዛዕng 37
3.3.5 Lኼp trình PLC (OPC UA Client) và lኽp ráp mô hình thዠc tዅ 53
3.3.6 À ዓዉ thዎng 57
KኗT QU VÀ KኗT LUN 59
4.1 0ዅt qu 59
4.2 0ዋዛዔng phát trin 60
TÀI LIኛU THAM KHO 61
PHኋN LÝ LኝCH TRÍCH NGANG 63
Trang 9vii
ЌЌ@Ϫ
Hình 2.1 Các thông tin cዚa nút trong OPC UA 4
Hình 2.2: Cኸu trúc ID cዚa nút 5
Hình 2.3 Kiዅn trúc bo mኼt OPC UA Server/Client 7
Hình 2.4 Các chính sách bo mኼt cዚa OPC UA 8
Hình 2.5: ኮng dዙng thዠc tዅ £ ዛዕng trong vኼn hành, giám sát thiዅt bዋ 8
Hình 2.6 Thዠc tዅ £ ዛዕng kዅt hዘp vዔi mã QR trong vኼn hành 9
Hình 2.7 Giዔi thiዉu TIA Portal 12
Hình 2.8 Giao diዉn cዚa TIA Portal 12
Hình 2.9 Giao diዉn Unity Hub 2.4.3 13
Hình 2.10 Giao diዉn lኼp trình Unity3D 13
Hình 2.11 Giao diዉn lኼp trình Visual Studio 2019 14
Hình 3.1: Mô hình wirerarchy cዚa hዉ thዎng 15
Hình 3.2: SCADA cዚa bên thዜ 3 có th truy cኼp tዝ ¯ዅn các hዉ thዎng ¯u khin thông qua OPC UA Server 16
Hình 3.4 Các phኹn m¯ዛዘc xây dዠ¯ tài 17
Hình 3.5: Hዉ thዎng OPC UA Server 19
Hình 3.6: Thông tin cዚ¯ዎዛዘng 26
Hình 3.7: Thông tin phiên làm viዉc 26
Hình 3.8: Thông tin tài khon cዚa Server 26
Hình 3.9: Giá trዋ cዚa nút 26
Hình 3.10 Giao diዉ¯£ኼp cዚa OPC UA Server 30
Hình 3.11 Giao diዉ¯£ýn mዔi 30
Hình 3.12 Giao diዉn trang trng thái 31
Hình 3.13 Giao diዉn trang trng thái 32
Hình 3.14 Giao diዉn trang lዋch sዞ truy cኼp 33
Hình 3.15 Giao diዉn trang không gian dዟ liዉu 34
Hình 3.16 Kዅt qu khዖi chy Server 35
Hình 3.17 Khዖi to phiên làm viዉc 35
Hình 3.18Ǥدዋa chዊ Server hin thዋ trên Prosys 35
Hình 3.19 Các sዠ kiዉn thዠc thi trên Server 36
Hình 3.20 Ngኽt kዅt nዎi khi quá timeout 36
Hình 3.21 Giao diዉn kዅt nዎ¯ዅn OPC UA Server 38
Hình 3.22 Faceplate cho thiዅt bዋ ¯ዒ ዓ 42
Hình 3.23 Faceplate cho thiዅt bዋ tín hiዉዛዓዠ 45
Hình 3.24 Kዅt nዎ¯ዅn Server, chዅ ¯ዒ bኸt kü ai 51
Hình 3.25: Kዅt nዎ¯²ዞ dዙng tài khon 51
Hình 3.26: Nhኼز¯£ኼp và mኼt khኺu 52
Hình 3.27 Faceplate cm biዅዛዓዠ 52
Hình 3.28: Tዠ ¯ዒng kዅt nዎ¯ዛዕng truyn bዋ ¯n 52
Hình 3.29 Kích hot chዜ £ UA Client PLC S7-1500 (Firmware 2.6) 53
Hình 3.30 Lዠa chዌn Runtime Licenses cho PLC 53
Trang 10viii
Hình 3.31 Cኸu hình các biዅn cኹn lኸy dዟ liዉu cho PLC S7-1500 53
Hình 3.32 Cኸu hình các tham sዎ cho OPC UA Client 54
Hình 3.33 Thông tin các biዅn cኹn lኸy dዟ liዉu tዝ server 54
Hình 3.34 Các khዎi chዜ £ ዚa OPC UA Client PLC S7-1500 55
Hình 3.35Ǥዓ¯ዏ phኹn cዜ¯ኸu nዎi PLC 56
Hình 3.37 Cኸu hình hዉ thዎng thዠc tዅ 58
Bng 2.1 Các kiu nút trong OPC UA 5
Bng 2.2: Mô t chi tiዅt thuዒc tính nút 5
Bng 2.3: Các thuዒc tính cዚa nút 6
Bng 3.1 Danh sách dዟ liዉu cዚa lዋch sዞ truy cኼp 28
Bng 3.2 Ma trኼn phân quyn truy cኼp cዚa web 29
Trang 11ix
ЌА ϸϰ
OPC UA OPC Unified Architecture: Giao thዜc truyn thông công
nghiዉp
OPC Open Platfrom Communication/ OLE for Process
Control: Chuዑi các thông sዎ kዣ thuኼ ¯c biዉ ¯ trao
¯ዐi dዟ liዉu trong tዠ ¯ዒng hóa công nghiዉp
PLC Programmable Logic Controller: Mዒt thiዅt bዋ ¯ዛዘc sዞ
dዙng trong ngành công nghiዉp tዠ ¯ዒ×Ǥ0ዛዘc lኼp
¿¯ ¯u khin máy tዠ ¯ዒng
HMI Human Machine Interface: Mዒt phኹn cዚa máy xዞ lý sዠ
ዛዓ ዟ ዛዕi và máy móc
AR Augemented Reality: Thዠc tዅ £ ዛዕng
LAD Ladder: Ngôn ngዟ lኼp trình cho PLC cዚa Siemens
SCL Structed Control Language: Ngôn ngዟ lኼp trình cho PLC
cዚa Siemens
API Application Programming Interface: giao diዉn lኼp trình
ዜng dዙng SERVER Thuኼt ngዟ ¯ chዊ máy chዚ
OPC UA Server Thuኼt ngዟ ¯ chዊ máy chዚ ho¯ዒng dዠa trên công
nghዉ OPC UA CLIENT Thuኼt ngዟ ¯ chዊ máy khách
OPC UA Client Thuኼt ngዟ ¯ chዊ máy khách ho¯ዒng dዠa trên công
nghዉ OPC UA IoT Internet of Thing: Vn vኼt kዅt nዎi Internet
SQL Structure Query Language: Ngôn ngዟ truy vኸn mang
tính cኸu trúc JSON JavaScript Object Notation: Mዒt kiu dዟ liዉu mዖ trong
JavaScript
ID Identification: Là mዒt chዟ sዎ hay dãy sዎ ¯ nhኼn dng
ዛዕi dùng, thiዅt bዋ,
Trang 121
1.1 ý Э¯Ч
Cuዒc cách mng công nghiዉͶǤͲ¯ ዛዖng mnh mዄ ¯ዅn toàn thዅ giዔi Hiዉn nay, các tኼ¯ዔ¯ ¯ ዜng dዙng vn vኼt kዅt nዎi Internet, trí tuዉ nhân to, công nghê dዟ liዉu lዔn, công nghዉ ¯ዉ¯ǡǥኸt mnh mዄ Ti Viዉt Nam, viዉc áp dዙ¯ዉ¯ ዉ thዎ¯u khin máy móc trong công nghiዉ ዛ¯ዛዘc phát trin nhiu
¯×ǡዉc phát trin hዉ ¯¯ዉ¯¯ thu thኼp dዟ liዉu tዝ
hዉ thዎng, cm biዅǡ¯u khin hዉ thዎng thông qua dዟ liዉ¯¯¯ዛዘc nghiên cዜu và phát trin rኸt mnh mዄ Trong thዕi gian gኹ¯ǡ i pháp cho phép giao tiዅp máy vዔi máy, truyn dዟ liዉu thዕi gian thዠ ¯u khin hዉ thዎng
tዝ ǡ¯¯ዛዘc phát trin mnh mዄ dዠa trên các công nghዉ ዛ: OPC UA, MQTT Broker,
Dዠa vào nhu cኹu thዋ ዛዕng và nhዟዛኸn cዚa ging viên ዛዔng dኻn, em
quyዅ¯ዋnh chዌ¯ tài DzNghiên cнu và phát triШn nЧn tИ¯Ъ¯ǡ
² д з công nghЪ dz sዞ dዙng công nghዉ OPC UA ¯ phát trin gii
pháp thu thኼp dዟ liዉ¯u khin hዉ thዎ× Ø¯ዉ¯mây Gii pháp này cho phép thu thኼp dዟ liዉ¯u khin tዝ xa hዉ thዎng công nghiዉp theo thዕi gian thዠc
1.2 Ък лН£
Mዙc tiêu cዚ¯ tài là nghiên cዜu và phát trin hዉ thዎng phኹn mm (Server
và Client) dዠa trên nn tng công nghዉ OPC UA, ¯ዜng các công nghዉ cዚa cách mng công nghiዉp 4.0 (CMCN 4.0) bao gዏm: kዅt nዎi dዟ liዉu lዔǡ ¯ዉ ¯mây, trí tuዉ nhân to và thዠc tዅ £ ዛዕng
Hዉ thዎng phኹn mm ¯ዛዘc to ra nhኾm phዙc vዙ viዉc tዠ ¯ዒng hóa cho các hዉ thዎng sn xuኸt trong các nhà máy vዝa và lዔn ዖ Viዉt Nam Các mዙc tiêu cዙ th cዚa
¯ tài gዏm:
1 Xây dዠ¯ዛዘc mዒt bዒ phኹn mm nn tng cho phép tích hዘp hዉ thዎng trong nhà máy tዝ tኸt c các cኸp: kዅt nዎi thiዅt bዋ ¯u khin; server dዟ liዉu thዕi gian thዠc, xዞ lý dዟ liዉu, giao diዉ¯u khin, qun lý dዟ liዉu, sዎ hóa và vኼn hành thዠc tዅ £ ዛዕng
2 Trin khai ዜng dዙng tዎi thiu cho mዒt quá trình sn xuኸt thዠc tዅ
Trang 13¯ዛዘc sዞ dዙǤ ዛዓ¿Nodejs, Visual Studio, ǡ͵¯ዛዘc
sዞ dዙng trong dዠ ñ ¯ዛዘc giዔi thiዉu trong phኹn lý thuyዅ ñ ዛ thዜc OPC UA
Phኹn thዠc hiዉ¯ tài bao gዏm kዅ hoch thዠc hiዉn, quá trình thዠc hiዉn, chዌn lዠØ¿¯ thዠc hiዉn và kዅt qu
Phኹn kዅt luኼn bao gዏ¯ዅt qu ¯¯ዛዘc, các vኸ¯ ¯ i quyዅt, các vኸ¯ còn tዏn tዛዔng phát tri¯ tài
Trang 143
zϸ
2.1 Công Ъ OPC UA
2.1.1 б
ዛዔ ¯ǡዒt tኼp hዘp các phኹn mm giao tiዅp phዙc vዙ cho viዉc trao
¯ዐi dዟ liዉu giዟa ዜng dዙng trên máy tính và thiዅt bዋ Các phኹn mm giao tiዅp này
¯ዛዘ ¯ዋ¯ዋnh cዚa Microsoft COM (Component Object Model) Do
¯×ǡ× × dወ dàng tích hዘp vዔi hዉ thዎng cዚa Microsoft
OPC Server cung cኸp thông tin v quá trình trên giao diዉn cዚa nó OPC Client kዅt nዎ¯ዅn Server và có th truy cኼ¯ዛዘc Server cung cኸp dዟ liዉu
Công nghዉ COM hoc DCOM có mዒt sዎ ¯ ¯ዛǣ
- Chዊ cho phép Server và Client chy trên mዒt máy tính hoc mዒt mng nዒi
- Viዉc giao tiዅp chዊ có th ¯ዛዘc thዠc hiዉn thông qua các ዜng dዙng cዎ ¯ዋnh
ዛዕng hዘp cኹn thu thኼp dዟ liዉu thዕi gian thዠc, viዉc cኸu hình OPC trዖ nên phዜc tǤ 0 gii quyዅt nhዟng ዛዘ ¯m cዚa trên, hiዉp hዒ ¯ ¯ዋnh
²ዒt nn tng mዔi có tên gዌi là OPC Unified Architecture (OPC UA)
x £ ዖ ዒ ዉ ዎ ¯ ï ው ¯ዅ ዜ
ዙዝدዋ ዊ¯ዓ¯ዅ ዟØ¿
ዛዔ¯ዎዛዘዜ ǡ
Trang 154
2.1.2 Ø¿Ø¯Ь Ы
2.1.2.1 Йï ǣ
Hình 2.1 Các thông tin cዚa nút trong OPC UA
¯ዛዘ ¯ዋ Â Thuгc tính và Tham chiЦu Chúng sዄ
¯ዛዘc khዖi to khi mዒ¯ዛዘ ¯ዋÂدዋa chዊ
x Thuዒc tính là các phኹn tዞ dዟ liዉu mô t các nút Client có th truy cኼp các giá trዋ Thuዒc tính bኾng cách sዞ dዙng các dዋch vዙ 0ዌc, Ghi, Truy vኸǡ0£ký/Giám sát
x Tham chiዅu: ¯ዛዘc sዞ dዙ¯ liên kዅt các nút vዔi nhau Chúng có th ¯ዛዘc
truy cኼp bኾng trình duyዉt và dዋch vዙ truy vኸn
2.1.2.2 ШрЪ лïØ¯Ь Ыǣ
1 0ዎዛዘng (Objects) Mዒ ¯ዎ ዛዘ ¯ዛዘc sዞ dዙng làm vùng chዜa hoc
ዛዙ ¯ ¯ዋnh dng cho các thዃǡዛዓዜc và
sዠ kiዉn
2 Thዃ (Tag) Thዃ ¯i diዉn cho dዟ liዉu cዚ ¯ዎ ዛዘng hoc
thuዒc tính cዚa mዒïዛዔi dng các thuዒc tính
3 ዛዓዜc
(Method) ዛዓዜc là thành phኹn cዚ¯ዎዛዘng và có th có danh sách các tham sዎ ¯ኹu vào ho ¯ኹu ra Các
tham sዎ ¯ዛዘc mô t thông qua các thuዒc tính xác
Trang 165
6 Loi thዃ (Tag Type) Các loi thዃ ዛዕng mô t các thuዒc tính hoc kiu
dዟ liዉu nào có th ¯ዛዘc tìm thኸy trong mዒt phiên bn cዚa thዃ
7 Kiu tham chiዅu
(Reference Types) Các kiu tham chiዅ ¯ዋnh các kiu tham chiዅu có th có giዟa các nút
8 Loi dዟ liዉu (Data
Type) Kiu dዟ liዉu mô t nዒi dung cዚa giá trዋ trong thዃ
Bng 2.1 Các kiu nút trong OPC UA
1 Chዊ sዎ cዚa không gian tên
2 Loi ID cዚa nút (s= chuዑi (String); i= Sዎ (Numeric);
g=GUID)
Bng 2.2: Mô t chi tiዅt thuዒc tính nút
Trang 17Display Name Tኸt c Tên hin thዋ
Node Class Tኸt c Loïȋ¯ዎዛዘng, thዃ, loi dዟ liዉu)
Description Tኸt c Mô t ngኽn cho nút
Type
Definition Tኸt c Tham chiዅu cho kiu dዟ liዉu mô t thዃ
Write Mask Tኸt c Quyn chዊnh sዞa thuዒc tính nút (0= không,
1= có), không cኹn sዠ xem xét cዚa nhóm
ዛዕi dùng
User Write
Mask Tኸt c Quyn chዊnh sዞa thuዒc tính nút (0= không, 1= có), không cኹn sዠ xem xét cዚዛዕi dùng
hiዉn ti
Data Type Thዃ Kiu dዟ liዉu cዚa thዃ
Value Rank Thዃ Loi giá trዋ cዚa thዃ ȋØ ×¿ǡØዛዔng,
vector, mng) Array
Thዃ The smallest possible sampling interval of the
tag on the server side Khong thዕi gian lኸy mኻu nhው nhኸt cዚa thዃ ዖ phía server
Historizing Thዃ Thዕi gian cዚa thዃ có sዀn trên máy chዚ (có,
không) Bng 2.3: Các thuዒc tính cዚa nút
Trang 187
2.1.2.5 мдн ИН
¿ዛዔ¯Ø tዐng quan v các lዔp bo mኼt cዚa OPC UA
Hình 2.3 Kiዅn trúc bo mኼt OPC UA Server/Client
x Viዉc xác thዠ ዛዕî¯ዛዘc thዠc hiዉn thông qua Phiên làm viዉc Ví dዙ,
زዛዕi dùng và mኼt khኺu hoc thông qua chዜng chዊ
x Thông qua Kênh Bo mኼt, các ዜng dዙ¯ዛዘc xác thዠc lኻn nhau và bo mኼt thông tin liên l ¯ዛዘc thዠc hiዉn Mዑi tin nhኽ¯ዛዘ ý ׯ ¯m bo tính toàn vዂn và bí mኼt cዚa các tin nhኽn ዓዖ cዚ ዓ ዅ này là chዜng chዊ ȋͷͲͻȌ ¯ዋnh duy nhኸt các ዜng dዙng dዠa trên hዉ thዎዓዖ
h tኹng khóa công khai (PKI)
x ከ cኸ¯ዒ Socket, bo mኼዛዔng kዅt nዎi cዚa kዅt nዎi Socket thông qua Lዔp cዐng bo mኼt (SSL) hoc thông qua Mng riêng o (VPN) có th ¯ዛዘc sዞ
dዙng bዐ sung hoc thay thዅ cho kênh bo mኼt
2.1.2.6 î Э Й¿ ИН
¾ Xác thс мжi dùng:
x Bኸt kü ȋØ ² ¯£ ኼp, không mኼt khኺu) Ȃ Anonymous username, nonȂpassword): Client sዄ ¯ዛዘc phép truy cኼp vào Server mà không cኹn cኸp quyn tዝ phía Server
(non-x ² ¯£ ኼp/Mኼt khኺu (User name/password): Client sዄ ¯ዛዘc Server cኸ²¯£ኼዛዓዜ¯ truy cኼ¯ዛዘc vào Server
x Chዜng chዊ (Certifications): Có nhiu loi chዜng chዊ, OPC UA sዞ dዙng chዜng chዊ X509 Nዅu lዠa chዌn chዜ £ ǡ ዎn truy cኼp vào Server ho ዛዘc li, thì hai bên sዄ cung cኸp mዒt chዜng chዊ (.der hoc pem) cho nhau và tዉp này phi nኾዛዙ Dzdz ዚa c hai bên
¾ ChЦ ¯г bИo mНt:
x None Ȃ Không bo mኼt
x Sign Ȃ Sዞ dዙng chዟ ký
x Sign&Encrypt Ȃ Sዞ dዙng chዟ ký và mã hóa
Trang 198
¾ Chính sách bИo mНt:
x None-Không bo mኼt
x Basic128Rsa15-Sዞ dዙng thuኼt toán mã hóa
x Basic256-Sዞ dዙng các thuኼt toán mã hóa mዖ rዒng
Hình 2.4 Các chính sách bo mኼt cዚa OPC UA
2.2 с Ц£ мж
Thዠc tዅ £ ዛዕng AR (Augmented Reality) Nó là sዠ kዅt hዘp cዚa thዅ giዔi thኼt vዔi thông tin o, chዜ không h tách riêng biዉt giዟa thዅ giዔi o và thዠ ዛ (Virtual Reality)
Công nghዉ AR sዄ bዐ sung nhዟng chi tiዅt ¯ዛዘc to bዖi máy tính, ¯ዉn thoi thông minh, vào thዅ giዔi thዠ ¯ £ ዛዕng sዠ tri nghiዉm ዛዕi dùng có th thoዛዓ ዔi nhዟng nዒi dung ¯ዕi thዠ ǡዛ m vào, tóm lኸyǤ ዛዕi dùng có th tri nghiዉm thዠc tዅ À ² ¯ዉn thoi thông minh cዚa mình, mà không cኹn phî¯ዅn các thiዅt bዋ chuyên biዉt
Hình 2.5: ኮng dዙng thዠc tዅ £ ዛዕng trong vኼn hành, giám sát thiዅt bዋ
Trang 209
Hình 2.6 Thዠc tዅ £ ዛዕng kዅt hዘp vዔi mã QR trong vኼn hành
2.3 0Ъ¯
x Khái niЪm: 0ዉn toán máy chዚ o (Cloud Computing) Ø¿¯ዉn toán
sዞ dዙng các công nghዉ máy tính và phát trin dዠa vào mng Internet
x Nguዏ²¯× × là bኸt kì thዜ ¿²¯ዅ¯ዉn toán và máy tính, ví dዙ ዛ: phኹn mm, phኹn cዜng, h tኹng m ¯ዅn các máy chዚ
và mዛዔi máy chዚ c lዔn
x Cách thнc hoЗ ¯гng: Thay vì viዉc tiêu tዎn nhiu tài nguyên cho nhiu
máy tính, chúng ta chዊ cኹ ¯t mዒt ዜng dዙȀ ዛዓ¿ À
o ኮng dዙȀ ዛዓ¿ዄ ±ዛዕኼp vào hዉ thዎng trên nn tng web thông qua internetǡ¯× × ዜa tኸt c các tài nguyên ዛዕi dùng cኹn cho công viዉc cዚa mình Máy chዚ vኼn hành hዉ thዎng tዝ xa thuዒc sዖ hዟu cዚa mዒt công ty khác, × ±ዛዕi dùng có th thዠc hiዉn bኸt kü tác nào, k c các ዛዓ¿À ዟ liዉu phዜc
tp
x Phân loЗ¯Ъ¯ǣ
Hiዉn nay, các công ty cung cኸp dዋch vዙ ¯ዉ¯ ͵i Àዛǣ
- HЗ tК¯мйc cung cЙмгt dЬch vк: bn có th thuê mዒt "máy
chዚ trên mây" vዔi CPU, RAM, ዐ cዜng (SSD hoЦc HDD) tùy theo nhu cኹu
Ví dዙ: Microsoft Azure, Amazon Web Service, Google Cloud Platform,
- NЧn tИ¯мйc cung cЙмгt dЬch vк: bn chዊ cኹn tኼp trung vào
viዉc trin khai các phኹn mm cዚ¿²¯×ኽ¯ኹu chy mà không cኹ¯ዅn phኹn cዜng
dዙng có th ¯ዛዘc dùng ngay bዖዛዕi dùng cuዎi Ví du: Gmail, Outlook
Trang 21×ዛዟ dዟ liዉu dng tài liዉu chuዑi JSON Các bዒ ዛኼp sዄ có các kích c
và nዒ Ǥ¯×ǡዟ liዉu sዄ ¯ዛዘc truy vኸn rኸt nhanh
- ዎ ¯ዒኸዓǡዔዉዋ ዓዖዟዉ
ዉǡዟዉ ኸ¯ዛዘ ዛዒዔ¯ዛዘኸ
ወዓØ ኹ¯ዌ ዝዐ ዜǤ
- ዉኸኸ ዚ Ǥ
Trang 2211
x мй ¯Шǣ
- ዟ ዉ MongoDB Ø ዋ ዒ ǡ ¯× ወ ኸ ዟ ዉkhi thao tác sai
- ዝዟዉǡዎዒዔǡዟዉ¯ዛዘ ዛዛዔዋ ¿
×ǡ ዒዛኼ ዊ ዋዟዉ²ዄ ¿×ኻ¯ዅዝዟዉǤ
Trang 2312
2.5.2 TIA Portal
TIA Portal (Totally Integration Automatic) là phኹn m¯ lኼp trình PLC tዝ Siemens Nó tích hዘp bዒ ¯u khin, HMI, bዒ ¯u khin tዎ ¯ዒ ¯ዒ ዓǡዒ ¯u khin vዋ trí vào mዒØዛዕng kዣ thuኼt duy nhኸt
Ngoài ra, vዔዛ n phኺm phኹn mm quan trዌng nhኸt cዚa tዠ ¯ዒng hóa công nghiዉǡ ñ¯ ዅዓ²
¯ዛዕng tiዅn tዔ¯×Ǥ 0ዏng thዕi, nó cho phép tích hዘp các phኹn mዛǣPLCSIM, NX MCD, Process Simulate, SMIT, Plant Simulation, Amesim và các phኹn mm thiዅt kዅ mô phውng kዣ thuኼt sዎ khác
Hình 2.7 Giዔi thiዉu TIA Portal
Hình 2.8 Giao diዉn cዚa TIA Portal
Trang 24- Công cዙ vኼt lý (tính toán và phát trin va chm)
- Âm thanh, mã nguዏn, hình ¯ዒng, trí tuዉ nhân to, phân luዏng, to dòng dዟ liዉu xዞ lý, qun lý bዒ nhዔ, dዠng ¯ዏ thዋ và kዅt nዎi mng Unity3D hዑ trዘ gኹዛbዒ các nn tng tዝ: Windows, Linux, Android, thዅ mnh, giúp cho Unity trዖ thành phኹn mm lኼp trình game tዎt nhኸt hiዉn nay
Hình 2.9 Giao diዉn Unity Hub 2.4.3
Hình 2.10 Giao diዉn lኼp trình Unity3D
Trang 2514
2.5.4 Visual Studio IDE
Visual Studio là (IDE Ȃ Integrated Development Environment) mዒt bዒ công
cዙ phát trin phኹn mm do Microsoft phát triǤ ñዒt phኹn m¯ዛዘc sዞ dዙng bዖi các lኼ¿²¯ xây dዠng nêncác sn phኺm phኹn mm
x ዑዘኼ¿²Øዟዛ C/C++, C#, Visual Basic, HTML, CSS, JavaScriptǤ²Visual Studio 2019 ×ዐዘØዟ Python
x
x ዑ ዘ ዜ ዙ ² À ዛǣ MFC, Windows Form, Universal Appǡ ዜ ዙ ¯ዉ Windows Phone 8/8.1, Windows 10, Android(Xamarin), iOS website Web Form, ASP.NET MVC Microsoft Office
Trang 26Hình 3.1 th hiዉn cኸu trúc vኼt lý cዚa hዉ thዎng SCADA kዅt nዎi theo kiu wirearchy
Hình 3.1: Mô hình wirerarchy cዚa hዉ thዎng
Trang 27- Thành phኹn (6) là Web client hoc ዜng dዙng chy trên thiዅt bዋ ¯ዒ ñ
có th ¯ዐi dዟ liዉ¯ዛዘc vዔi các hዉ thዎ¯u khin (1) và hዉ thዎng SCADA (2), thông qua OPC UA Server (3)
- Ngoài ra, ኮng dዙng OPC UA Client chy trên thiዅt bዋ ¯ዒng, sዄ hዑ trዘ thዠc
tዅ £ ዛዕng (6) kዅt hዘp vዔ ዓዖ dዟ liዉu và OPC UA Server (3) chy trên VPS Nó cho phép kዣ ዛኼn hành kim soát các thông sዎ vኼn hành, chዊ sዎ cዚa các thiዅt bዋ trong nhà máy Khi có sዠ cዎ xy ra, kዣ ዛ ×th dዠ² ዓ
Hình 3.2: SCADA cዚa bên thዜ 3 có th truy cኼp tዝ ¯ዅn các hዉ thዎ¯u khin
thông qua OPC UA Server
Trang 2817
Chi tiዅt v các phኹn m¯ዛዘc xây dዠng trong luኼ£ዛ¿͵ǤͶǣ ኹn m¯ዛዘc xây dዠ¯ tài
Hình 3.3 Các phኹn m¯ዛዘc xây dዠ¯ tài
¾ Server: Bao gዏm OPC UA Server, API, Mongo DB cho phép các client (OPC
UA Client, Web) kዅt nዎi, truyn dዟ liዉ¯ዅǤ¯×ǡዄ ዛዟ data và Database (Mongo DB)
¾ Client: ኮng dዙng web sዄ liên kዅt vዔØ ǡî¯ hin
thዋ dዟ liዉu, qun lý server OPC UA Client (PLC, Thiዅt bዋ cm biዅn, Module IoT) kዅt nዎ¯ዅn s¯ truyn dዟ liዉu v máy chዚ
3.2 ²ЦЗ
0Яi vеi нng dкng OPC UA Server:
x Xây dዠng máy chዚ cho phép máy khách truy cኼp vào bኾ ¯ዋa chዊ opc.tcp
x Xây dዠng không gian dዟ liዉu, các chዅ ¯ዒ ¯£ኼp (bኸt kü ai ho ¯£nhኼp bኾng tài khon), công vዙ kim tra chዜng chዊ cዚa máy khách
x Lኼ¿ ዓዖ dዟ liዉǡ ±ዛዟ và truy xuኸt dዟ liዉu phዙc vዙ cho viዉ ǡ¯u khin
x Cኸ¿²¯ዉ¯Ǥ
Trang 2918
0Яi vеi нng dкng OPC UA Client:
x Xây dዠng ዜng dዙng web, hin thዋ thông tin cዚa máy chዚ, hin thዋ lዋch sዞ làm viዉc, chዜng chዊ cዚǡ ±ዛዕi dùng cኸu hình
دዋa chዊ ¯ ዛዟ liዉu theo nhu cኹu
x Xây dዠng ዜng dዙng thዠc tዅ £ ዛዕng, gዏm các giao diዉn cho OPC UA Client: có kh £ዅt nዎi vዔi OPC UA Server, vዔi các tùy chዌn v bo mኼዛǣኼt khኺu, chዜng chዊ, tùy chዌn mã hóa dዟ liዉu và tዠ kዅt nዎi li khi gp sዠ cዎ mng
x Lኼp trình nhኼn d ¯ዋnh chính xác tዌ¯ዒ cዚa QRCode trong thዅ giዔi thዠ ¯ hin thዋ ¯ï ¯ï ዋ trí cho tዝng thiዅt bዋ
x Thiዅt kዅ các faceplate cho tዝng thiዅt bዋ ȋ¯ዒng ዓǡ m biዅ ዛዓ ዠ)
ïዛዕi vኼn hành giám sát trዠc quan trên tዝng thiዅt bዋ
0Яi vеi lН¿¯Чu khiШn cho PLC:
x Tìm hiu v chዜ £²-1500 (Firmware V2.6 trዖ lên)
x Tìm hiዓ¯ዏ phኹn cዜng cዚa mô hình hዉ thዎዓዛዔc bao gዏm: các tín hiዉ ¯ኹu vào, tín hiዉ ¯ኹu ra, cኸu hình hai biዅn tኹn cho viዉ ¯u khi¯ዒ ዓ
x Tìm hiu v lኼ¿¯u khi ¯ዒ ዓ
Trang 30x Node-opcuaǣ 0ዛዘc phát trin dዠa trên tính chኸ Ø ¯ዏng bዒ cዚa
Nodejs Cho phép to ra các ዜng dዙng có tính phn hዏi cao
x Ip: Lኸ¯ዋa chዊ cዚa máy chዚ
x Path: ዛዉn cung cኸ¯ዛዕng dኻn khi làm viዉc vዔi tዉp tin ዛዙc
x Os: Cung cኸp thông tin và tiዉÀ ²¯ዅn hዉ ¯u hành
const opcua = require("node-opcua");
const ip = require("ip");
const os = require("os");
const path = require("path");
Xây dсng các hàm trong server
x Sп dкÀ£ : Khai báo hàm bኸ¯ዏng bዒ Nó cho phép:
- ዠ¯ዒዅ¯ዐዒØዛዕዒǤ
Trang 31x Hàm thêm biЦ ¯Ямйng, bao gаm:
- Namespace: Không gian chዜ¯ዎዛዘng
- Objectǣ0ዎዛዘng
- Variable: Biዅn
- OpcuaVariableNodes: Khዖi t¯m nút cho OPC UA
Chi tiዅ Dz dz î ¯ khዖi t ¯m nút cho Opcua Server Mዒ¯m nút trong OPC UA bao gዏm các thuዒ Àዛǣ²ïǡkiu dዟ liዉu, giá trዋ ±Ȁ¯ዌc hay không
try {
variable.id = 's=' + object.browseName.name + '.' + variable.name;
const opcuaVariable = namespace.addVariable({
Trang 32- Port: Cዐ¯ዐi dዟ liዉu
- AlternateHostname ǣ0ዋa chዊ server
opcuaServerOptions.maxConnectionsPerEndpoint = opcuaServerConfig.server.maxConnections PerEndpoint;
Khai báo thông tin cዚa server:
- ApplicationUri: mዒt chuዑi ký tዠ ¯ዛዘc sዞ dዙ¯ ¯ዋnh, nhኼn dng server
Trang 33x Hàm kiШm kiШ²¯£Нp, mНt khЛu:
Hàm này có nhiዉm vዙ kiد£ኼp cዚ ׯዛዘ ¯£
ký tØǤ¯× v giá trዋ Dzdz ዚa Opc
const isValidUser = async (email, password, callback) => {
log.info(`OPCUA Client login with username ${email}, password ${password}`);
let check = false;
const user = await getByUserEmail(email);
if (!user) return callback(null, check);
check = user.password === password ? true : false;
return callback(null, check);
}
x Hàm thêm nút cho OPC UA Server
- To danh sách các thuዒc tính cዚ¯ዎዛዘዛǣዎ thዜ tዠ, Sዎ thዜ
tዠ cዚa nút mዂ, tên, giá trዋ
Trang 3625
меc 2: Xây dсدЬa chЫ
Khзi tЗدЬa chЫ và namespace cлa Server
// Build address space
const port = opcuaServerInstance.opcuaServer.endpoints[0].port;
opcuaServerInstance.endpointUrl = "opc.tcp://" + ipAddress + ":" + port;
opcuaServerInstance.externalEndpointUrl = "opc.tcp://" + opcuaServerConfig.server.externalIp Address + ":" + port;
3.3.2 Н¿ дзрЪ
ዓዖ dዟ liዉu sዄ ዛtrዟ thông tin v:
- Lዋch sዞ phiên làm viዉc
- Thông tin cዚ¯ዎዛዘng
- Thông tin tài khon Server
- Thông tin v giá trዋ cዚa nút
Kዅt qu ዛዟ giá trዋ ¯ዛዘc th hiዉ¿ዛዔi
Trang 3726
Hình 3.5: Thông tin cዚ¯ዎዛዘng
Hình 3.6: Thông tin phiên làm viዉc
Hình 3.7: Thông tin tài khon cዚa Server
Hình 3.8: Giá trዋ cዚa nút