Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Năm 2009 ban tự động hóa công nghiệp, tập đoàn Siemens vừa giới thiệu ra thị trường bộ điều khiển PLC cỡ nhỏ S7 -1200, như là sự tiếp nối phát triển của S7-200, S7-300 bộ điều khiển đã quen thuộc với người sử dụng. Với thiết kế theo dạng modul, tính năng cao cấp, SIMATIC S7-1200 thích hợp với nhiều ứng dụng tự động hóa khác nhau, cấp độ từ nhỏ đến trung bình. Đặc điểm nổi bật là S7-1200 được tích hợp sẵn cổng truyền thông Profinet (Ethernet), sử dụng chung một phần mềm Simatic Step 7 Basic cho việc lập trình PLC và các màn hình HMI ( Human Machine Interface ). Step 7 Basic hỗ trợ ba ngôn ngữ lập trình là FBD, LAD và SCL. Phần mềm này được tích hợp trong TIA Portal 11 của Siemens. Bên cạnh CPU S7-1200 và phần mềm lập trình mới, một dải sản phẩm các màn hình HMI mới dung cho PLC S7 -1200 cũng được giới thiệu. Tất cả cùng tạo ra một giải pháp tích hợp, thống nhất cho thị trường tự động hóa cỡ nhỏ (Micro Automation). S7-1200 bao gồm các họ CPU 1211C, 1212C, 1214C. Mỗi loại CPU có đặc điểm và tính năng khác nhau, thích hợp cho từng ứng dụng của khách hàng. 1.2 Một số tính năng nổi bật Dưới đây là tóm tắt các tính năng nổi bật của SIMATIC S7-1200. Cổng truyền thông Profinet ( Ethernet ) được tích hợp sẵn: - Dùng để kết nối máy tính, với màn hình HMI hay truyền thông PLC – PLC. - Dùng kết nối với các thiết bị khác có hỗ trợ chuẩn Ethernet mở. - Đầu nối RJ45 với tính năng tự động chuyển đổi đấu chéo. - Tốc độ truyền 10/100 Mbits/s.CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PLC S7-1200 CỦA SIEMEN 3 3 - Hỗ trợ 16 kết nối Ethernet TCP/IP, ISO on TCP và S7 protocol. Các tính năng về đo lường, điều khiển vị trí điều khiển quá trình: - 6 bộ đếm tốc độ cao (High speed counter) dùng cho các ứng dụng đếm và đo lường, trong đó có 3 bộ đếm 100kHz và 3 bộ đếm 30kHz. - 2 ngõ ra PTO 100kHz để điều khiển tốc độ và vị trí động cơ bước hay bộ lái servo (servo drive) - Ngõ ra điều rộng xung PWM, điều khiển tốc độ động cơ, vị trí valve, hay điều khiển nhiệt độ … - 16 bộ điều khiển PID với tính năng tự động xác định thông số điều khiển (Auto-tune functionality) Thiết kế linh hoạt: - Mở rộng tín hiệu vào ra bằng board tín hiệu mở rộng (signal board ), gắn trực tiếp phía trước CPU, giúp mở rộng tín hiệu vào/ra mà không thay đổi kích thước hệ điều khiển. - Mỗi CPU có thể kết nối 8 modul mở rộng tín hiệu vào/ra. - Ngõ vào analog 0 – 10V được tích hợp trên CPU. - 3 modul truyền thông có thể kết nối vào CPU mở rộng khả năng truyền thông, ví dụ modul RS232 hay RS485. - 50KB work memory, 2 MB load memory. - Card nhớ SIMATIC, dùng khi cần mở rộng bộ nhớ cho CPU, copy chương trình ứng dụng hay khi cập nhật Firmware - Chẩn đoán lỗi online/offline Board tín hiệu của S7-1200CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PLC S7-1200 CỦA SIEMEN 4 4 Board tín hiệu là một dạng modul mở rộng tín hiệu vào/ra với số lượng tín hiệu ít, giúp tiết kiệm chi phí cho các ứng dụng yêu cầu mở rộng số lượng tín hiệu ít. Modul mở rộng tín hiệu vào,ra Các modul mở rộng tín hiệu vào/ra được gắn trực tiếp vào phía bên phải của CPU.Với dải rộng các loại modul tín hiệu vào/ra số và analog, giúp linh hoạt trong sử dụng S7-1200. Tính đa dạng của cá modul tín hiệu vào/ra sẽ được tiếp tục phát triển. Modul truyền thông Bên cạnh truyền thông Ethernet được tích hợp sẵn, CPU S7-1200 có thể mở rộng được 3 modul truyền thông khác nhau, giúp cho việc kết nối được linh hoạt hơn. Tại thời điểm giới thiệu S7-200 ra thị trường, có các modul RS232 và RS485, hỗ trợ các protocol truyền thông như modbus, USS…5 CHƯƠNG 2: GIỚI THIỆU TIA PORTAL, PC ACCESS VÀ NGÔN NGỮ C# 5 CHƯƠNG 2: GIỚI THIỆU TIA PORTAL, PC ACCESS VÀ NGÔN NGỮ C# 2.1 Phần mềm lập trình TIA PORTAL Phần mềm dùng để lập trình cho S7-1200 là Step7 Basic. Step7 Basic hỗ trợ ba ngôn ngữ lập trình là FBD, LAD và SCL. Phần mềm này được tích hợp trong TIA Portal 11 của Siemens. 2.2 Phần mềm PC Access PC Access là phần mềm của Siemens dùng để truy xuất dữ liệu từ một số PLC của hãng. PC Access hoạt động thông qua OPC Server, vốn được chuẩn hóa bởi OPC Foundation. PC Access cung cấp thư viện bổ sung cho Excel, Protool, VB nhằm kết nối PLC với PC từ các chương trình này. Hạn chế của PC Access trong việc tạo OPC sever cho S7-1200: PC Access được thiết kế chủ yếu dành cho dòng PLC S7-200, tuy nhiên có thể dùng được với PLC S7-1200, nhưng chỉ có các thẻ dữ liệu trong khối dữ liệu DB1 của S7- 1200 mới có thể được truy cập, nguyên nhân là do S7-200 chỉ có một khối dữ liệu. 2.3 Ngôn ngữ lập trình C# và ứng dụng C# là một ngôn ngữ lập trình ứng dụng, ngôn ngữ biên dịch, ngôn ngữ đa năng được phát triển bởi hãng Microsoft, là một phần khởi đầu cho kế hoạch .NET. Microsoft phát triển C# dựa trên C, C++ và Java. C# được miêu tả là ngôn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và Java… Ưu điểm nổi trội so với các ngôn ngữ khác: - C# là ngôn ngữ đơn giản, có ít từ khóa - C# là ngôn ngữ hiện đại - C# là ngôn ngữ hướng đối tượng, hướng module - C# là ngôn ngữ mạnh mẽ và mềm dẻo6 CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER 6 CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER 3.1 OPC Server - OPC dựa trên Microsoft Component Object Model (COM) - OPC được viết tắt từ “OLE for Process Control”. - OPC được điều hành bởi tổ chức độc lập: OPC Foundation (www.opcfoundation.org) - OPC chuẩn hóa cách liên kết giữa các phần mềm trong ngành tự động công nghiệp. - OPC Server là một ứng dụng hoạt động như một API (giao diện lập trình ứng dụng) hoặc là một bộ chuyển đổi giao thức. - Một OPC Server sẽ kết nối với các thiết bị như PLC (Programable Logic Controller - bộ điều khiển lập trình được), DCS (Distributed control system - hệ điều khiển phân tán), RTU (Remote Terminal Unit), cơ sở dữ liệu…rồi chuyển đổi dữ liệu sang định dạng OPC chuẩn. 3.2 OPC Client Những ứng dụng OPC (OPC Client) như HMI, bộ ghi dữ liệu, bảng biểu, vẽ đồ thị… có thể kết nối với OPC Server rồi đọc/ghi dữ liệu lên thiết bị.” Trong project này ta sẽ nghiên cứu cách kết nối C# với một OPC Server, như vậy C# sẽ là một OPC Client. OPC Server ở đây sẽ là Simatic S7-200 PC Access OPC Server. Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng Đồ án: Tìm hiểu kết nối PC với PLC S7-1200 qua OPC server trên giao diện C# và ứng dụng
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN - -
ĐỒ ÁN
CHUYÊN NGÀNH
Đề tài:
TÌM HIỂU KẾT NỐI PC VỚI PLC S7-1200 QUA OPC SEVER
TRÊN GIAO DIỆN C# VÀ ỨNG DỤNG
Hà Nội, 5-2014
Giáo viên hướng dẫn : Ths Đào Quý Thịnh
Sinh viên thực hiện : Vũ Duy Khánh
Mã số sinh viên : 20101718
Lớp và khóa : ĐK-TĐH 3 K55
Trang 2MỤC LỤC
LỜI NÓI ĐẦU 1
CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PLC S7-1200 CỦA SIEMEN 2
1.1 Giới thiệu chung 2
1.2 Một số tính năng nổi bật 2
CHƯƠNG 2: GIỚI THIỆU TIA PORTAL, PC ACCESS VÀ NGÔN NGỮ C# 5
2.1 Phần mềm lập trình TIA PORTAL 5
2.2 Phần mềm PC Access 5
2.3 Ngôn ngữ lập trình C# và ứng dụng 5
CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER 6
3.1 OPC Server 6
3.2 OPC Client 6
3.3 Một số thuật ngữ trong OPC 7
3.4 Tạo kết nối giữa C# và OPC 8
CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 10
4.1 Thiết lập cấu hình cho PLC trên TIA PORTAL 10
4.2 Tạo OPC Server trên PC Access 15
4.3 Tạo ứng dụng trên C# kết nối đến OPC Server 18
CHƯƠNG 5: ỨNG DỤNG BỘ CHUYỂN ĐỔI NGUỒN ĐIỆN TỰ ĐỘNG 22
5.1 Mô tả công nghệ 22
5.2 Phân cổng vào ra 22
5.3 Lưu đồ chương trình 23
Trang 35.4 Giao diện chương trình ứng dụng 24
5.5 Lựa chọn thiết bị 24
5.6 Sơ đồ nguyên lý 25
5.7 Sơ đồ đấu dây 26
KẾT LUẬN 27
PHỤ LỤC 28
TÀI LIỆU THAM KHẢO 27
Trang 4LỜI NÓI ĐẦU
Cùng với sự phát triển không ngừng của các ngành công nghệ thông tin, điện - điện
tử và tự động hóa, đang ngày càng giúp giảm bớt sức lao động của con người, nâng cao năng suất và tính tiện nghi trong quá trình sản xuất
Một trong những thành quả đó là các ứng dụng điều khiển, giám sát các quá trình
công nghệ và sản xuất từ xa trên máy tính “Tìm hiểu kết nối PC với PLC s7-1200 qua
OPC Sever trên giao diện C# và ứng dụng” là đề tài chúng em chọn để tìm hiểu trong
Đồ án chuyên ngành Trong khuôn khổ Đồ án này chúng em sẽ tìm hiểu các vấn đề cơ bản nhất về OPC sever, cách kết nối và các bước tạo một ứng dụng cơ bản nhất để hiểu
và làm bước đệm cho các ứng dụng lớn hơn sau này
Em xin gửi lời cảm ơn chân thành đến thầy Ths.Đào Quý Thịnh, với sự hướng dẫn
và chỉ bảo nhiệt tình của thầy cùng với sự cố gắng nỗ lực của các thành viên trong nhóm, chúng em đã hoàn thành đồ án này Tuy nhiên do kiến thức và sự hiểu biết còn hạn chế nên không thể tránh khỏi nhiều thiếu xót Vì vậy chúng em rất mong sẽ nhận được nhiều
ý kiến đánh giá, góp ý của thầy cô giáo và các bạn sinh viên để chúng em có thể phát triển và hoàn thiện thêm đề tài này
Em xin chân thành cảm ơn!
Sinh viên thực hiện
Vũ Duy Khánh
Trang 5CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PLC S7-1200 CỦA SIEMEN 2
CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PLC S7-1200 CỦA SIEMEN
1.1 Giới thiệu chung
Năm 2009 ban tự động hóa công nghiệp, tập đoàn Siemens vừa giới thiệu ra thị trường
bộ điều khiển PLC cỡ nhỏ S7 -1200, như là sự tiếp nối phát triển của S7-200, S7-300 bộ điều khiển đã quen thuộc với người sử dụng
Với thiết kế theo dạng modul, tính năng cao cấp, SIMATIC S7-1200 thích hợp với nhiều ứng dụng tự động hóa khác nhau, cấp độ từ nhỏ đến trung bình Đặc điểm nổi bật
là S7-1200 được tích hợp sẵn cổng truyền thông Profinet (Ethernet), sử dụng chung một phần mềm Simatic Step 7 Basic cho việc lập trình PLC và các màn hình HMI ( Human Machine Interface )
Step 7 Basic hỗ trợ ba ngôn ngữ lập trình là FBD, LAD và SCL Phần mềm này được tích hợp trong TIA Portal 11 của Siemens
Bên cạnh CPU S7-1200 và phần mềm lập trình mới, một dải sản phẩm các màn hình HMI mới dung cho PLC S7 -1200 cũng được giới thiệu Tất cả cùng tạo ra một giải pháp tích hợp, thống nhất cho thị trường tự động hóa cỡ nhỏ (Micro Automation)
S7-1200 bao gồm các họ CPU 1211C, 1212C, 1214C Mỗi loại CPU có đặc điểm và tính năng khác nhau, thích hợp cho từng ứng dụng của khách hàng
1.2 Một số tính năng nổi bật
Dưới đây là tóm tắt các tính năng nổi bật của SIMATIC S7-1200
Cổng truyền thông Profinet ( Ethernet ) được tích hợp sẵn:
- Dùng để kết nối máy tính, với màn hình HMI hay truyền thông PLC – PLC
- Dùng kết nối với các thiết bị khác có hỗ trợ chuẩn Ethernet mở
- Đầu nối RJ45 với tính năng tự động chuyển đổi đấu chéo
- Tốc độ truyền 10/100 Mbits/s
Trang 6CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PLC S7-1200 CỦA SIEMEN 3
- Hỗ trợ 16 kết nối Ethernet TCP/IP, ISO on TCP và S7 protocol
Các tính năng về đo lường, điều khiển vị trí điều khiển quá trình:
- 6 bộ đếm tốc độ cao (High speed counter) dùng cho các ứng dụng đếm và đo lường, trong đó có 3 bộ đếm 100kHz và 3 bộ đếm 30kHz
- 2 ngõ ra PTO 100kHz để điều khiển tốc độ và vị trí động cơ bước hay bộ lái servo (servo drive)
- Ngõ ra điều rộng xung PWM, điều khiển tốc độ động cơ, vị trí valve, hay điều khiển nhiệt độ …
- 16 bộ điều khiển PID với tính năng tự động xác định thông số điều khiển (Auto-tune functionality)
Thiết kế linh hoạt:
- Mở rộng tín hiệu vào ra bằng board tín hiệu mở rộng (signal board ), gắn trực tiếp phía trước CPU, giúp mở rộng tín hiệu vào/ra mà không thay đổi kích thước
hệ điều khiển
- Mỗi CPU có thể kết nối 8 modul mở rộng tín hiệu vào/ra
- Ngõ vào analog 0 – 10V được tích hợp trên CPU
- 3 modul truyền thông có thể kết nối vào CPU mở rộng khả năng truyền thông,
ví dụ modul RS232 hay RS485
- 50KB work memory, 2 MB load memory
- Card nhớ SIMATIC, dùng khi cần mở rộng bộ nhớ cho CPU, copy chương trình ứng dụng hay khi cập nhật Firmware
- Chẩn đoán lỗi online/offline
Board tín hiệu của S7-1200
Trang 7CHƯƠNG 1: GIỚI THIỆU CHUNG VỀ PLC S7-1200 CỦA SIEMEN 4
Board tín hiệu là một dạng modul mở rộng tín hiệu vào/ra với số lượng tín hiệu ít, giúp tiết kiệm chi phí cho các ứng dụng yêu cầu mở rộng số lượng tín hiệu
ít
Modul mở rộng tín hiệu vào,ra
Các modul mở rộng tín hiệu vào/ra được gắn trực tiếp vào phía bên phải của CPU.Với dải rộng các loại modul tín hiệu vào/ra số và analog, giúp linh hoạt trong
sử dụng S7-1200 Tính đa dạng của cá modul tín hiệu vào/ra sẽ được tiếp tục phát triển
Modul truyền thông
Bên cạnh truyền thông Ethernet được tích hợp sẵn, CPU S7-1200 có thể mở rộng được 3 modul truyền thông khác nhau, giúp cho việc kết nối được linh hoạt hơn Tại thời điểm giới thiệu S7-200 ra thị trường, có các modul RS232 và RS485,
hỗ trợ các protocol truyền thông như modbus, USS…
Trang 85
CHƯƠNG 2: GIỚI THIỆU TIA PORTAL, PC ACCESS VÀ NGÔN NGỮ C#
CHƯƠNG 2: GIỚI THIỆU TIA PORTAL, PC ACCESS VÀ NGÔN NGỮ C#
2.1 Phần mềm lập trình TIA PORTAL
Phần mềm dùng để lập trình cho S7-1200 là Step7 Basic Step7 Basic hỗ trợ ba ngôn ngữ lập trình là FBD, LAD và SCL Phần mềm này được tích hợp trong TIA Portal 11 của Siemens
2.2 Phần mềm PC Access
PC Access là phần mềm của Siemens dùng để truy xuất dữ liệu từ một số PLC của hãng PC Access hoạt động thông qua OPC Server, vốn được chuẩn hóa bởi OPC Foundation
PC Access cung cấp thư viện bổ sung cho Excel, Protool, VB nhằm kết nối PLC với
PC từ các chương trình này
Hạn chế của PC Access trong việc tạo OPC sever cho S7-1200:
PC Access được thiết kế chủ yếu dành cho dòng PLC S7-200, tuy nhiên có thể dùng được với PLC S7-1200, nhưng chỉ có các thẻ dữ liệu trong khối dữ liệu DB1 của S7-
1200 mới có thể được truy cập, nguyên nhân là do S7-200 chỉ có một khối dữ liệu
2.3 Ngôn ngữ lập trình C# và ứng dụng
C# là một ngôn ngữ lập trình ứng dụng, ngôn ngữ biên dịch, ngôn ngữ đa năng được phát triển bởi hãng Microsoft, là một phần khởi đầu cho kế hoạch NET Microsoft phát triển C# dựa trên C, C++ và Java C# được miêu tả là ngôn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và Java…
Ưu điểm nổi trội so với các ngôn ngữ khác:
- C# là ngôn ngữ đơn giản, có ít từ khóa
- C# là ngôn ngữ hiện đại
- C# là ngôn ngữ hướng đối tượng, hướng module
- C# là ngôn ngữ mạnh mẽ và mềm dẻo
Trang 96
CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER
CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER
3.1 OPC Server
- OPC dựa trên Microsoft Component Object Model (COM)
- OPC được viết tắt từ “OLE for Process Control”
- OPC được điều hành bởi tổ chức độc lập: OPC Foundation
(www.opcfoundation.org)
- OPC chuẩn hóa cách liên kết giữa các phần mềm trong ngành tự động công
nghiệp
- OPC Server là một ứng dụng hoạt động như một API (giao diện lập trình ứng
dụng) hoặc là một bộ chuyển đổi giao thức
- Một OPC Server sẽ kết nối với các thiết bị như PLC (Programable Logic
Controller - bộ điều khiển lập trình được), DCS (Distributed control system - hệ điều khiển phân tán), RTU (Remote Terminal Unit), cơ sở dữ liệu…rồi chuyển đổi dữ liệu sang định dạng OPC chuẩn
3.2 OPC Client
Những ứng dụng OPC (OPC Client) như HMI, bộ ghi dữ liệu, bảng biểu, vẽ đồ
thị… có thể kết nối với OPC Server rồi đọc/ghi dữ liệu lên thiết bị.”
Trong project này ta sẽ nghiên cứu cách kết nối C# với một OPC Server, như vậy C# sẽ là một OPC Client OPC Server ở đây sẽ là Simatic S7-200 PC Access OPC
Server
Trang 10CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER 7
Hình 3.1 Sơ đồ giao diện hệ thống sử dụng OPC Sever
3.3 Một số thuật ngữ trong OPC
OPC Object – một đối tượng được client tạo ra và dùng để kết nối đến OPC Server, đối tượng đã được định danh này – sau đó dùng để đọc và ghi dữ liệu đến PLC, DCS… thông qua OPC Server
OPC Item - một tag hay một biến dữ liệu được quản lý bởi OPC Server - tức là một biến dữ liệu trong một PLC
OPC Group - một nhóm OPC item được người dùng định nghĩa Được tạo ra bởi các OPC client như là một cách thức quản lý một nhóm dữ liệu – một nhóm biến điều khiển trên một thiết bị
Collection - một nhóm các đối tượng có kiểu dữ liệu giống nhau
Trang 11CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER 8
3.4 Tạo kết nối giữa C# và OPC
Hình 3.1 Các bước tạo kết nối giữa C# và OPC Sever
Bước 1: Khai báo
private OpcServer TheSvr;
private OpcGroup TheGrp;
Khởi tạo đối tượng OPCServer và OPCGroup, những đối tượng này xem như được mặc định với OPCServer cho một phiên làm việc mà client kết nối đến
private S7200 PLC = new S7200(); Khai báo tên của PLC sử dụng trong chương
trình
Bước 2: Kết nối OPC Sever
TheSvr = new OpcServer(); Tạo một đối tượng OPC Sever mới
Trang 12CHƯƠNG 3: TỔNG QUAN VỀ OPC SERVER 9
const string ServerProgID = "Program"; Khai báo tên máy chủ để kết nối đến
“SeverProgID”
TheSvr.Connect(ServerProgID); Kết nối sever với tên máy chủ đã khai
báo
Bước 3: Tạo OPC Group
TheGrp = TheSvr.AddGroup("abc", false, 187500); Thêm một Group mới vào
Group Collection
TheGrp.SetEnable(true);
TheGrp.Active = true;
Kích hoạt Group
Bước 4: Ghi/Đọc giá trị lên PLC
PLC.write_PLC(TheGrp, "A", "B", "C"); Ghi dữ liệu lên PLC
A – Địa chỉ/Biến PLC cần ghi dữ liệu
B – Giá trị cần ghi
C – Kiểu của biến/địa chỉ PLC
PLC.read_PLC_bool(TheGrp, "D"); Đọc dữ liệu từ PLC (kiểu bool)
D – Địa chỉ/ biến PLC cần đọc dữ liệu
Trang 13
10
CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS
CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC
ACCESS
4.1 Thiết lập cấu hình cho PLC trên TIA PORTAL
Bước 1: Tạo một Project mới
Khởi động phần mềm TIA PORTAL V11 → Chọn “Creat new project” → Đặt
tên và chọn nơi lưu trữ cho project → “Creat”
Bước 2: Thiết lập cấu hình cho PLC
Sau khi tạo được project mới ta có giao diện Portal view
Có thể chuyển giữa 2 chế độ xem “Project view” và “Portal view” bằng cách
ấn vào 1 trong 2 vùng khoanh tròn trong Hình 4.1
Chọn module và version của PLC hiện có, ví dụ ở trong project này “Configure
a device” → “Add new device” → “PLC” → “SIMATIC S7-1200” → “CPU”→
“CPU 1211C AC/DC/Rly” → “6ES7 211-1BD30-0XB0” → Version “v2.0”
Trang 14CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 11
Đặt lại tên cho PLC tại ô “Device name” chọn “Add” để thêm PLC vừa tạo vào
project
Bước 3: Thiết lập địa chỉ IP cho PLC
Sau khi thêm PLC mới vào project ta có giao diện
Trang 15CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 12
Để phần mềm TIA PORTAL có thể kết nối với PLC ta cần thay đổi địa chỉ IP trên PLC vừa tạo trùng với địa chỉ IP của PLC hiện có
Trên PLC vừa tạo ta chọn cổng Ethernet → Trong cửa sổ thuộc tính PLC được
khoanh đỏ trong Hình 1.4 ta chọn thẻ “Properties” → Trong thẻ “General” chọn theo đường dẫn “PROFINET interface” → “Ethernet addresses”
Trong mục “IP protocol” ta thay đổi “IP address” Ví dụ ở đây PLC thật có địa
chỉ IP : 192.168.0.1
Bước 4: Thay đổi địa chỉ IP của máy tính
Cần thay đổi địa chỉ IP của máy tính có dạng 192.168.0.xyz có dạng giống với
IP của PLC 192.168.0.1 trong đó “xyz” phải khác IP của PLC
Trang 16CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 13
Đối với Win 7 :
“Control Panel”
→“Network and Sharing
Center”
→“Change adapter settings”
→“Local Area Connection”
→“Internet Protocol Version 4
(TCP/IPv4)”
→“Properties”
→”Ok”
→”Ok”
Bước 5: Lập trình LAD cho PLC S7-1200
Trong cửa sổ “Project tree” chọn theo
đường dẫn đến mục “Program blocks”
Chọn “Main [OB1]” để mở giao diện lập
trình
Trang 17CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 14
Bước 6: Tải chương trình xuống PLC
Sau khi đã lập trình xong để nạp chương trình cho PLC:
“Online” → “Download to device”
Trong cửa sổ “Extended download to device” hiện ra, trong lựa chọn “PG/PC
interface” ta chọn cổng Ethernet của máy tính → Đợi phần mềm tìm đến PLC được
kết nối (tích vào “Show all accessible devices” nếu không tìm thấy PLC)
Sau khi đã kết nối được PLC → Chọn PLC và ấn nút “Load” → Tiếp tục làm theo hướng dẫn cho đến khi “Finish”
Trang 18CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 15
4.2 Tạo OPC Server trên PC Access
Bước 1: Tạo project mới
Bước 2: Thêm PLC mới
Chọn "Edit → New → PLC" một cửa sổ "PLC properties" hiện ra để thiết lập
thuộc tính
Name: "S7-1200_PLC" (Đặt tên PLC)
IP Address: "192.168.0.1" (Địa chỉ IP của PLC)
TSAP Local: "10.00." (TSAP của PC Access)
TSAP Remote: "03.01." (TSAP của S7-1200 PLC)
Trang 19CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 16
Bước 3: Thêm các Item
Chọn "Edit → New → Item" cửa sổ “Item properties” hiện ra cho phép nhập các
thông số:
Tên của Item "Name:" input field
Địa chỉ của thẻ "Address:" input field
Chọn kiểu dữ liệu "Data Type:" input field
Bước 4: Lưu project
“File → Save”
Trang 20CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 17
Bước 5: Giám sát và chạy thử
Chọn các Item cần giám sát → Chọn nút "Add current items to test client" trên thanh công cụ Các Item được chọn sẽ được chuyển xuống của sổ “Test Client”
Kết nối PLC S7-1200 với máy tính
Sau đó để bắt đầu chạy thử chọn nút "Start Test Client" trên thanh công cụ Nếu cột “Quality” trong khung “Test Client” có giá trị là “Good” tức là quá trình kết nối
tới PLC thành công
Trang 21CHƯƠNG 4: KẾT NỐI PLC S7-1200 VỚI C# QUA OPC SERVER TẠO BỞI PC ACCESS 18
4.3 Tạo ứng dụng trên C# kết nối đến OPC Server
Bước 1: Tạo project mới
“File” → “New” → “Project”
Trong cửa sổ “New project” chọn “Visual C#” → “Windows Froms
Application” → Đặt tên và chọn nơi lưu cho project trong “Name” và “Location”
→ “Ok”