Professional Documents
Culture Documents
BÀI GIẢNG
Ngoài ra, có rất nhiều mạng công nghiệp của các tập đoàn trên thế giới như: Mạng
PlantScape(Honeywell), DeltaV(Fisher-Rosermount), ProcessLogix(Allen-Bradley)…
1.1.2 Trúc cơ bản một hệ thống điều khiển và giám sát (HTĐK&GS)
Hình 3: Mô hình mạng truyền thống và mạng truyền thông công nghiệp
- Ranh giới giữa các cấp không phải bao giờ cũng rõ ràng.
- Càng ở những cấp dưới thì các chức năng càng mang tính chất cơ bản hơn và đòi hỏi
yêu cầu cao hơn về độ nhanh nhạy, thời gian phản ứng.
- Càng ở cấp trên quyết định càng quan trọng hơn, lượng thông tin cần trao đổi và xử lý
càng lớn hơn.
- Phân cấp tiện lợi cho công việc thiết kế hệ thống.
1.2.2 Phân loại mạng công nghiệp
- Mạng công nghiệp vào/ra tập trung (central I/O):
Đặc điểm: Mạng công nghiệp tập trung có số lượng nđi dây nhiều, hệ thống điều khiển tập
trung 1 vị trí nên độ tin cậy chưa cao. Kích thước mạng là một trở ngại cho hệ thống tập
trung bởi đường truyền tư các thiết bị về trung tâm
Trên Hình 7: là sơ đồ đấu nối thiết bị cảm biến với bus trường và dây nối thường. Với
những tính năng ưu điểm vượt trội của phương pháp nối mạng là: Cấu trúc đơn giản, dễ
thiết kế và lắp đặt. giảm chi phí cáp truyền, các khối vào/ra và các phụ kiện khác, khả năng
chẩn đoán các thiết bị trường qua mạng một cách dễ dàng, khả năng tích hợp các chức năng
điều khiển tự động xuống các thiết bị trường => trí tuệ phân tán (distributed intelligence).
1.3 Các kiến trúc giao thức
1.3.1 Kiến trúc Master/Slave
Một trạm chủ phối hợp hoạt động của nhiều trạm tớ, các trạm tớ có vai trò, nhiệm vụ
tương tự như nhau, các trạm tớ có thể giao tiếp trực tiếp, hoặc không trực tiếp. Vai trò chủ
động thuộc về Master.
Hình 9: Vào ra phân tán thiết bị trường theo kiến trúc Clien/Server
1.4 Cài đặt phần mềm Win CC, Step 7 và tự học lập trình ở nhà
Chương 2 KỸ THUẬT MẠNG CÔNG NGHIỆP
2.1 Cơ sở kỹ thuật mạng
Chế độ truyền tải - điều chế tín hiệu là chế độ thông dụng nhất trong hệ thống truyền
thông công nghiệp
Truyền tải dải cơ sở: Tín hiệu mang một nguồn thông tin duy nhất trên dải tần cơ sở
Truyền tải dải mang: Tín hiệu mang một nguồn thông tin duy nhất trên dải sóng mang.
Truyền tải dải rộng: Tín hiệu mang nhiều nguồn thông tin cùng một lúc trên một dải tần
rộng.
Hình 11: Sơ cấu trúc bus liên kết mạng truyền thông công nghiệp
Hình 16: Truy nhập bus theo Phương pháp kiển soát phân tán Token Passing
Tuần tự các bước kiểm soát truy nhập bus theo phương pháp Token Passing
Giám sát token: Nếu do một lỗi nào đó mà token bị mất hoặc gia bội, cần phải thông báo
xóa các token cũ và tạo một token mới.
Khởi tạo token: Sau khi khởi động một trạm được chỉ định có trách nhiệm tạo một token
mới.
Tách trạm ra khỏi mạch vòng logic: Một trạm có sự cố phải được phát hiện và tách ra
khỏi trình tự được nhận token.
Bổ sung trạm mới: Một trạm mới được kết nối mạng, một trạm cũ được thay thế hoặc đưa
trở lại sử dụng phải được bổ sung vào mạch vòng logic để có quyền nhận token.
Ưu điểm:
— Tiền định
— Độ tin cậy cao hơn nhờ vai trò bình đẳng
— Phù hợp cho nhiều cơ chế giao tiếp khác nhau
Nhược điểm:
— Phức tạp
Ứng dụng: chủ yếu ở cấp phía trên (bus điều khiển, bus hệ thống)
2.3.4 Kết hợp Token với Master/Slave (Multimaster)
Ưu điểm:
— Tiền định, phù hợp với trao đổi dữ liệu tuần hoàn
— Có thể đáp ứng yêu cầu rất ngặt nghèo về tính năng thời gian thực
— Không cần kiểm soát tập trung
Nhược điểm:
— Hiệu suất sử dụng đường truyền có thể không cao
— Đồng bộ hóa thời gian phức tạp
Ứng dụng: Thường là kết hợp với Master/Slave (ví dụ Profibus-DP V2.0, Interbus) hoặc
Token Passing (Foundation Fieldbus H1). Chủ yếu ở cấp trường
Hình 17: Truy nhập bus kết hợp 2 phương pháp chủ tớ với Token
2.3.5 Truy nhập nhận biết xung đột CSMA/CD (Carrier Sense Multiple Access with
Collision Detection)
Đây một phương pháp truy nhập bus ngẫu nhiên, nổi tiếng cùng mạng Ethernet (IEEE
802.3). Trình tự các bước cho phương pháp CSMA/CD được chỉ ra trên hình
Carrier Sense: Cảm nhận, nghe ngóng đường truyền
Multiple Access: Đa truy nhập (đương nhiên!)
Collision Detection: Nhận biết xung đột
Ưu điểm:
— Rất linh hoạt, không cần đặt cấu hình mạng trước
— Được sử dụng rộng rãi
Nhược điểm:
— Thiếu tính tiền định
— Thuật toán phức tạp
Ứng dụng: Chủ yếu ở mạng cấp cao (Ethernet), gần đây được sử dụng ở cấp thấp: Sử
dụng công nghệ chuyển mạch (switch) nhằm giảm xung đột tín hiệu.
Hình 18: Sơ đồ giả định xảy ra xung đột đường truyền
Dãy bit nguyên bản: 1001101 sử dụng phương pháp bit chẵn lẽ
Dãy bit gửi đi: 10011010=> dữ liệu 01 byte
Giả sử nhận được: 10111010 => Lỗi phát hiện được
Giả sử nhận được: 11111010 => Lỗi không phát hiện được
Bit chẵn lẻ hai chiều (bảo toàn khối)
Câu hỏi kiểm tra: Cho một mảng dữ liệu hai chiều nhận được là AxB = 4x4 là như sau: sử
dụng phương pháp bít chẳn 2 chiều xác định vị trí lỗi Ai (hàng) Bj (cột) và sửa lỗi chúng cho
đúng với nguyên bản bân đầu.
A/B 0 1 2 3 p
0 1 0 0 1 0
1 0 1 0 0 0
2 0 0 1 1 1
3 1 0 1 0 1
p 1 1 1 1 0
2.4.3 Bảo toàn kiểu mã vòng (CRC)
- CRC (Cyclic Redundancy Check ): Thông tin kiểm lỗi (ở đây được gọi là checksum)
phải được tính bằng một thuật toán thích hợp, trong đó giá trị mỗi bit của thông tin nguồn
đều được tham gia nhiều lần vào quá trình tính toán. CRC được sử dụng rộng rãi trong đa số
các hệ thống truyền thông công nghiệp. CRC còn được gọi là phương pháp đa thức, bởi nó
sử dụng phép chia đa thức (nhị phân):
- Đa thức nhị phân: các hệ số là 0 hoặc 1, ví dụ: G = x7 + x6 + x5 + x2 + 1
G = x7 + x6 + x5 + 0x4 + 0x3 + x2 + 0x1 + 1 vậy mã G = {11100101}
- Phép chia đa thức nhị phân được qui về các phép so sánh, sao chép và XOR
Nguyên tắc thực hiện
- Hai bên qui ước một “đa thức phát” G bậc n, ví dụ x3+x+1 tương ứng với dãy bit {1011}.
- Dãy bit mang thông tin nguồn I được thêm vào n bit 0 và coi như một đa thức nhị phân P.
- Ví dụ thông tin nguồn là {110101} => P ={110101000}
- Lấy P chia cho G ta được kết quả và phần dư R (bậc P > bậc G)
- Phần dư R của phép chia được thay thế vào chỗ của n chữ 0 bổ sung trong P, tức là ta có
giá tri mới D = P (sau khi bổ sung phần dư vào P).
+ R được gọi là checksum và D chính là dãy bit được gửi đi thay cho I.
Giả sử dãy bit nhận được là D' không chia hết cho G => bức điện chắc chắn bị lỗi. Nếu
D' chia hết cho G, thì xác suất rất cao là bức điện nhận được không có lỗi.
Ví dụ minh họa:
Thông tin cần truyền I = 110101, đa thức G = 1011 (tức x3 + x + 1)
Thêm 3(n=3) bit 0 vào thông tin nguồn I, ta có P = 110101000
Chia đa thức P : G
110101000 : 1011 = 111101 dư 111
Dãy bit được chuyển đi: D = P + R = 110101 111
Giả sử dữ liệu nhận được là D' = 110101 111
Chia đa thức D' : G 110101111 : 1011 = 111101
Phần dư 0 -> Kết luận không có lỗi, ngược lại nếu một bít nhận được mà chia không hết
thì dữ liệu này bị lỗi.
Câu hỏi kiểm tra: Cho một đa thức phát G trong mạng ATM là x8 + x2 + x + 1. Hãy xác
định đa thức D = P+R cần chuyển đi trong hệ thống, biết rằng thông tin cần truyền I = x10 +
x8 + x 6 + x5 + x3 + 1
2.4.4 Bảo toàn kiểu nhồi bit (Bit stuffing)
Bên gửi: Nếu trong dữ liệu có n bits 1 đứng liền nhau thì thêm một bit 0 vào ngay sau đó.
Như vậy trong dãy bit được chuyển đi không thể xuất hiện n+1 bit 1 đi liền nhau.
Bên nhận: Nếu phát hiện thấy n bits 1 liền nhau mà bit tiếp theo là 0 thì được tách ra, còn
nếu là bit 1 thì dữ liệu chắc chắn bị lỗi.
2.5 Mã hóa và giải mã
2.5.1 Đặt vấn đề
Một hệ thống mã hóa bao gồm các thành phần:
Thông tin trước khi mã hóa, kí hiệu là P
Thông tin sau khi mã hóa, kí hiệu là C
Chìa khóa, kí hiệu là K
Phương pháp mã hóa/giải mã, kí hiệu là E/D
Mã hóa đường truyền (Line encoding, signal encoding: Biểu diễn nguồn thông tin cần
truyền bằng một tín hiệu thích hợp cho truyền dẫn, có thể bao gồm:
+ Mã hóa bit (biểu diễn một dãy bit thành một tín hiệu)
+ Các biện pháp dồn kênh
Mã hóa bit (Bit encoding): trường hợp đặc biệt của mã hóa đường truyền (không có
dồn kênh, phân kênh)
+ Trong truyền thông công nghiệp ta chỉ cần đề cập tới mã hóa bit
+ Mã hóa bit còn được gọi là điều chế tín hiệu (signal modulation)
- Giải mã bit: Khôi phục dãy bit từ một tín hiệu nhận được
Các yếu tố kỹ thuật chú ý khi mã hóa và giải mã
- Tần số, dải tần tín hiệu:
- Tính bền vững với nhiễu, khả năng phát hiện lỗi
- Triệt tiêu dòng một chiều/khả năng đồng tải nguồn
- Thông tin đồng bộ nhịp trong tín hiệu:
2.5.2 Các phương pháp mã hóa/ giải mã trong truyền tin công nghiệp
* Phương pháp NRZ và RZ
Hình 19: Mã hóa bít bằng NRZ và RZ
Hình 23: Phương thức truyền dẫn dữ liệu không đối xứng
3.3 Interbus
3.3.1 Giới thiệu chung
INTERBUS là một phát triển riêng của hãng Phoenix Contact. Chuẩn hóa quốc tế IEC
61158-2, khả năng kết nối nhiều loại thiết bị khác nhau được sử dụng xuyên suốt trong hệ
thống (bus trường, bus điều khiển, bus chấp hành-cảm biến). Ứng dụng chủ yếu trong ngành
công nghiệp chế tạo, lắp ráp và sản xuất vật liệu xây dựng. Số lượng thiết bị ghép nối: #1
trên thế giới. Được sử dụng trong nhiều nhà máy gạch, sứ - thủy tinh ở VN.
3.3.2 Kiến trúc giao thức
Ba lớp theo mô hình OSI:
— Lớp vật lý qui định phương pháp mã hóa bit, kỹ thuật truyền dẫn tín hiệu và giao diện
giữa một thiết bị mạng với môi trường truyền,...
— Lớp liên kết dữ liệu có vai trò đảm bảo việc truyền dữ liệu tin cậy, chính xác, hỗ trợ cả
dữ liệu quá trình (tuần hoàn) và các dữ liệu tham số (không tuần hoàn).
— Lớp ứng dụng: PMS (Peripheral Message Specification) là một tập con của MMS, về
cơ bản tương thích với các dịch vụ của PROFIBUS-FMS.
Hỗ trợ tối đa việc trao đổi dữ liệu giữa một bộ điều khiển trung tâm với các vào/ra phân
tán, các thiết bị cảm biến và cơ cấu chấp hành.
3.3.3 Cấu trúc mạng
Nổi tiếng với cấu trúc mạch vòng tích cực
Có thể sử dụng mạch vòng phân cấp
Phương pháp truy nhập bus kết hợp giữa Master/Slave và TDMA
Ưu điểm:
Phạm vi phủ mạng rất lớn, dễ dàng sử dụng cáp quang, được thiết kế để dễ lắp đặt, dễ
chẩn đoán, truyền hai chiều đồng thời, định địa chỉ tự động dựa theo vị trí vật lý của một
trạm trên mạch vòng. Việc bảo dưỡng, sửa chữa, mở rộng hệ thống đơn giản hơn.
3.3.4 Kỹ thuật truyền dẫn
Cho phép sử dụng nhiều loại đường truyền khác nhau, ví dụ cáp đôi dây xoắn, cáp quang,
hồng ngoại, v.v... Đôi dây xoắn + RS-485 được sử dụng rộng rãi nhất (5 dây giữa hai thiết
bị). Tốc độ truyền là 500 kbit/s => khoảng cách tối đa giữa hai thiết bị là 400 m. Chiều dài
tổng cộng max. 13 km. Tổng số trạm max. 256. Mã hóa bit NRZ, Interbus-Loop sử dụng
mã Manchester cho môi trường dễ cháy nổ.
3.3.5 Cơ chế giao tiếp
Truy nhập bus: Chủ-tớ kết hợp TDMA
Cơ chế giao tiếp theo kiểu xe đẩy xoay vòng (bức điện tổng) => rất hiệu quả
Tính năng thời gian thực rất tốt
Chu kỳ bus: Đảm bảo vài milligiây
Có cơ chế đồng bộ hóa dữ liệu
Lớp 1
3.4 CAN
3.4.1 Giới thiệu chung
CAN (Controller Area Network) xuất phát là một phát triển chung của hai hãng Bosch và
Intel. Lúc đầu được sử dụng trong công nghiệp ôtô, công nghệ này cũng đã thâm nhập được
vào một số lĩnh vực tự động hóa quá trình công nghiệp. Chuẩn hóa quốc tế trong ISO 11898
3.4.2 Kiến trúc giao thức
Phần chính của lớp vật lý:
— Truyền tín hiệu, phương thức định thời, tạo nhịp bit (bit timing), phương pháp mã hóa
bit và đồng bộ hóa.
— Không qui định các đặc tính của các bộ thu phát, với mục đích cho phép lựa chọn môi
trường truyền cũng như mức tín hiệu thích hợp cho từng lĩnh vực ứng dụng.
Lớp liên kết dữ liệu:
— Lớp điều khiển truy nhập môi trường (MAC) là phần cốt lõi trong kiến trúc giao thức
CAN. Lớp MAC có trách nhiệm tạo khung thông báo, điều khiển truy nhập môi trường, xác
nhận thông báo và kiểm soát lỗi.
— Lớp điều khiển liên kết logic (LLC) đề cập tới các dịch vụ gửi dữ liệu và yêu cầu dữ
liệu từ xa, thanh lọc thông báo, báo cáo tình trạng quá tải và hồi phục trạng thái
Hình 38: Sơ đồ kiến trúc liên kết của cấu trúc dữ liệu
Đối với tín hiệu chỉ thị nấc MBA, sử dụng bộ biến đổi để biến R (Ω) thành tín hiệu dòng
điện tỷ lệ tương ứng. Sơ đồ nguyên lý như hình 43.
Hình 44: Sơ đồ nguyên lý ghép nối tín hiệu chỉ thị chuyển nấc MBA
Hình 46: Sơ đồ nguyên lý ghép nối tín hiệu Điều khiển tương tự
c. Trends:
Ta có thể vẽ đồ thị các đường cong từ các giá trị thu được từ quá trình. Với chức năng
này, WinCC giúp ta có thể theo dõi sự thay đổi các giá trị đo lường theo thời gian một cách
tổng quát và rõ ràng.
Có thể vẽ được nhiều đường cong trên cùng một đồ thị bằng cách chọn nhiều tags tương
ứng với các thông số mà ta cần hiển thị.
d. Tables:
Table cũng có chức năng giống như Trend nhưng không hiển thị các thông số bằng
đường cong mà bằng giá trị cụ thể tại một thời điểm cụ thể. Với tính năng này của Table,
khi cần thiết ta có thể hiệu chỉnh các thông số đầu vào để đạt được các giá trị ngõ ra tối ưu
như mong muốn.
5.1.3 Graphics Designer.
Graphics Designer dùng để tạo các hình vẽ từ quá trình. Nó có các đặc tính sau:
Dễ sử dụng, giao diện đơn giản với các mẫu đồ họa và công cụ.
Hợp lý hóa cấu hình với các thư viện đối tượng và biểu tượng tích hợp.
Mở ra các giao diện để đưa vào các hình đồ họa và hỗ trợ giao diện OLE 2.0.
Liên kết các chức năng bổ sung bằng cơ cấu viết chương trình rất hiệu quả.
Liên kết các đối tượng đồ họa mà ta tự tạo.
Graphics Designer chứa các mục sau:
Các palettes để tạo và biên tập các đối tượng đồ họa.
Palette màu sắc.
Palette đối tượng.
Palette về kiểu.
Palette thu phóng.
Palette font chữ.
Các palettes và các thanh (bar) thao tác trên Graphics Designer.
Thanh menu.
Palette chuẩn.
Thanh trạng thái.
Thanh layer.
Cửa sổ hội thoại để thiết lập và thay đổi đặc tính của đối tượng.
Đặc tính đối tượng.
Palette đối tượng:
Các đối tượng có sẵn được xếp vào các vùng dưới đây:
Standard Objects: gồm các hình đa giác, elip, hình chữ nhật.
Smart Objects: gồm có OLE control, OLE object, bar, I/O field.
Window Objects: bao gồm Button và Chech Box.
Standard Objects:
Chọn dữ liệu lưu trữ để xuất báo cáo trong Graphics Designer.
Chọn dữ liệu lưu trữ để xuất báo cáo trong Tag Logging CS.
+ Cần phân biệt hai loại Internal Tag (biến nội) và External (Process) Tag(biến ngoại)
5.2.3 Tạo External Tag (biến ngoài)
Gõ tên và nhấp OK từ hộp thoại New Connection Properties: biến này đại diện PLC ngoài
Chọn New Tag từ Connection vừa tạo
Gõ tên Tag và chọn kiểu dữ liệu của Tag
Click chuột phải vào Internal Tag và chọn New Tag để tạo
5.2.4 Internal Tag: (biến ngoại)
Biến này đại diện phần mềm thực thi trên Win CC theo thiết bị thực
Gõ tên và chọn kiểu dữ liệu cho Internal Tag /Chọn OK để lưu Internal Tag
Thực hành: Tạo Internal tag có tên là tank level, kiểu dữ liệu là Unsigned 16 bits
Hình 55: Chọn kiểu dữ liệu Unsigned 16 bit
Thực hành: Tạo hai trang màn hình có tên là Start.pdl/và Sample.pdl
Các công cụ trên Graphics Designer
Trên trang màn hình tên Start.pdl ,tạo giao diện sau:
Gõ vào mục Text và chọn trang màn hình muốn chỉ tới, thực hiện một nút nhấn tương tự
như trên trang màn hình Sample.pdl.
Tạo hình ảnh động cho đối tượng Nhấp chuột phải vào đối tượng, chọn Properties chọn
biến nội từ của sổ
Tạo I/O Field để quan sát hay cài đặt dữ liệu cho đối tượng
Kéo I/O Field có trong mục Smart Object bên của sổ Object
Palette vào màn hình soạn thảo.
+ Chọn Tag và thời gian cập nhật từ của sổ I/O Field.
+ Chọn Save để lưu lại trang màn hình trước khi chạy Runtime
- Navigation Windows: Cửa sổ để lựa chọn Function hay Action để soạn thảo.
- Editing Windows: Cửa sổ soạn thảo chương trình.
- Output Windows: Cửa sổ hiển thị kết của biên dịch của hàm và Action hoặc Search
Files
5.3.2 Khả năng lập trình và ứng dụng:
Action: Được tạo mới hay sửa đổi trong Global Script. Chỉ dùng được trong Project mà
nó được tạo ra.
Project Function: Chỉ được dùng trong Project hiện tại. Có thể tạo mới hay sửa những
hàm có sẵn.
Standard Function: Dùng được trong tất cả Project. Có thể tạo mới hay sửa những hàm
có sẵn
.Internal Function: Dùng được trong tất cả Project. Không thể tạo mới hay sửa những
hàm có sẵn.
Lập trình tạo Action
Từ màn hình Graphics Designer, click phải vào đối tượng (object) cần thiết lập Action,
chọn Properties.
Click phải vào mục Dynamics hay Action của Properties hay
Events và chọn C-Action từ menu hiện ra
Hình 65: Tạo nút nhấn
+ Lập trình C-Action cho Properties của đối tượng thì cần phải có Trigger, còn Events thì
không(vì bản thân event là trigger rồi).
+ Sau khi lập trình cho Action xong thì biên dịch bằng nút . Nếu có lỗi hiển thị trong
Output Window thì Double click vào ngay lỗi để biết vị trí lỗi trong chương trình và sửa lỗi,
nếu không có lỗi thì chọn OK để thoát.
5.4 Cấu trúc chương trình của một C-Action cho một Property của đối tượng:
#include ‘apdefap.h’
Long_main(char* lpszPictureName, Char* lpszObjectName, Char* lpszProlertyName)
{
/*1*/ long 1ReturnValue;
/*2*/ 1ReturnValue = GetTagSDvoid(“S32i_course_test_1”);
/*3*/ ReturnVlue 1ReturnValue;
Câu lệnh # include”apdefap.h” là khai báo thư viện các Function
và Action mà WinCC hỗ trợ sẵn.
Header(màu xám): Đây là dòng mã lệnh tự động phát sinh giống nhau cho các Properties
và không được thay đổi. Bao gồm :
+ Picture Name (lpszPictureName)
+ Object Name (lpszObjectName)
+ Property Name (lpszPropertyName)
(1) Khai báo biến
(2) Tính toán các giá trị cho Property
(3) Trả về giá trị cho Property.
Sau khi lập trình xong Action cho một Property của đối tượng thì phải chọn Trigger cho nó
Cấu trúc chương trình của một C-Action cho một Event của đối tượng:
#include *apdefap.h*
Void onClick(char* lpszPictureName, Char* lpszObjectName, Char*
lpszProlertyName)
{
/*1*/ long lReturnValue;
/*2*/ 1ReturnValue = GetTagSDvoid(“S32i_course_test_1”);
SstLet(lpszPictureName, lpszobjectName, lValue);
}
5.5 Bài tập lớn
F1. Xây dưng một chương trình nút bấm, thanh trượt trên Win CC mô phỏng các hiệu ứng
nhờ ngôn ngữ lập trình C?
F2. Xây dưng một chương trình option tích trên Win CC mô phỏng các hiệu ứng nhờ ngôn
ngữ lập trình C?
Chương 6 GIAO TIẾP PLC ỨNG DỤNG
6.1 Kết nối Wincc và s7-200:
6.1.1 Giới thiệu về S7-200 và PC Access:
Như chúng ta điều biết, WinCC phiên bản 5.0, 6.0, 6.2 và 7.0 không hỗ trợ Driver kết
nối trực tiếp riêng với PLC S7-200. Do đó, chúng ta không thể kết nối WinCC với S7-200
theo các cách thông thường vốn rất dễ dàng đối với PLC S7-300, S7-400.
Tuy nhiên, chúng ta có một giải pháp để kết nối S7-200 và WinCC với nhau. Đó là dùng
PC-Access OPC-Server (S7-200) và kênh giao tiếp WinCC OPC (có sẵn trong WinCC).
Theo phương thức này, WinCC không giao tiếp trực tiếp với PLC mà thông qua S7-200 PC
Access.
Như vậy để giao tiếp giữa WinCC và PLC S7-200, chúng ta cần các công cụ sau:
Phần mềm S7-200 PC Access V1.1.4.10
Cáp kết nối PC/PPI hoặc USB/PPI.
Một cách kết nối khác đó là kết nối S7-200 với WinCC qua MODBUS. Với cách này, ta
cần phải thiết lập S7-200 về Modbus Slave. Thư viện trong Step 7-Micro/Win hỗ trợ
Modbus Slave. Chỉ việc thêm (Add) vào và lập trình trong Step 7-Micro/Win theo hướng
dẫn trong phần Help của Step 7-Micro/Win.
Trong WinCC phiên bản 6.0 thì vào Tag Mangement, nhập số serial vào và sử dụng như
các Driver khác. Với cách này có ưu điểm không cần dùng phần mềm nào khác (OPC)
nhưng nhược điểm là phải viết lệnh trong Step 7-Micro/Win và tốc độ kết nối thấp (với số
Tag nhiều thì tốc độ giảm đáng kể).
Với ưu điểm là tốc độ kết nối cao, dễ tiếp cận và có thể ứng dụng để giao tiếp WinCC
với các loại PLC khác như Allen Bradley, Ze… Hơn nữa OPC PC Access còn cho phép
Add vào Microsoft Office Excel để liên kết dữ liệu một cách đơn giản và hiệu quả.
S7-200 PC Access V1.1.4.10 được cài đặt khá đơn giản, chỉ cần theo các chỉ dẫn cài đặt
của chương trình ta sẽ hoàn tất quá trình cài đặt.
6.1.2 Thiết lập OPC-Server với S7-200 PC Access:
Khởi động S7-200 PC Access trong hệ điều hành Microsoft Windows XP SP3: nhấp
chọn Start > All Programs > SIMATIC > S7-200 PC Access V1.1.4.10 > S7-200 PC
Access.
Biểu tượng hoạt động của OPC Server S7-200 PC Access sẽ xuất hiện trên thanh
Taskbar. Giao diện làm việc S7-200 PC Access xuất hiện.
Để đọc bảng Symbols từ Project của Step 7-Micro/Win, từ thanh menu chọn File >
Import Symbols.
Hộp thoại Import xuất hiện, chọn Project cần thiết lập liên kết (ở đây chọn
MoHinhSCADADayChuyenPhanLoaiSanPham.mwp file lập trình trên plc s7-200), sau đó
nhấn Open.
Lúc này, ta đã có các biến được tạo nhờ Symbol Table trong chương trình của PLC S7-
200 viết trên phần mềm Step 7-Micro/Win.
Hình 70: Các Item đọc từ bảng Symbols
Tiếp theo, ta chọn tất cả các Item vừa đọc được từ bảng Symbols của Project
MoHinhSCADADayChuyenPhanLoaiSanPham.mwp, sau đó nhấn vào công cụ Add Current
Items To Test Client để chèn tất cả các Item vào vùng Test Client.
Để chạy thử và kiểm tra các Item vừa chèn vào vùng Test Client. Ta vào menu Status >
Start Test Client.
Nếu thấy ở cột Qualty trong vùng Test Client chuyển từ Bad sang Good thì việc kết nối
đã thành công.
Hình 73: Kết nối thành công
Lưu lại Project và có thể đóng cửa sổ S7-200 PC Access vì theo mặc định, OPC Server
luôn dùng dữ liệu từ Project được lưu cuối cùng của S7-200 PC Access.
6.2 Thiết kế mô hình giám sát điều khiển trên Wincc
6.2.1 Tạo dự án mới
Khởi động WinCC trong hệ điều hành Microsoft Windows XP SP3: nhấp chọn Start >
All Programs > SIMATIC > WINCC > Window Control Center 6.0.
Trên thanh menu, chọn File > New để tạo dự án mới.
Hộp thoại WinCC Explorer xuất hiện, nhấp tùy chọn mục Single–User Project rồi nhấp
OK. Hộp thoại Create a new project xuất hiện, nhập tên BangTai vào mục Project Name.
Sau đó, nhấp vào dấu mũi tên khung Drive chọn ổ đĩa, chọn thư mục lưu dự án trong khung
Folder, nhấp Create để tạo dự án. Lúc này, khung bên trái giao diện WinCCExplorer xuất
hiện dự án BangTai. Hoàn tất việc tạo dự án mới.
6.2.2 Cài đặt Driver kết nối PLC
Để cài đặt Driver kết nối PLC, nhấp phải vào Tag Management > Add New Driver.
Hình 76: Tạo External Tag và Hộp thoại OPC Item Manager
Sau khi hộp thoại OPC Item Manager hiện ra, chờ vài giây ta được hộp thoại OPC Item
Manager. Chọn Browse Server, hiện ra hộp thoại Filter Criteria. Nhấp Next. Hộp thoại
Filter Criteria. Hộp thoại bên dưới sẽ xuất hiện. Ta lần lượt nhấp đôi vào S7200.OPCServer,
MicroWin, PLC S7-200. Chọn tất cả các Item ở cột Items (Các Item được ta tạo ở PC
Access).
Hình 77: Hộp thoại S7200.OPCServer
Tiếp theo, nhấp vào nút Add Items trong cửa sổ. Tiếp tục chọn Yes và chọn Finish.
Đóng cửa sổ S7200.OPCServer và đóng OPC Item Manager hoàn tất việc tạo External Tag.
6.2.4 Tạo và soạn thảo giao diện người dùng:
Sau đây là các bước tạo giao diện chính điều khiển toàn bộ dây chuyền. Trên
WinCCExplorer, nhấp phải vào Graphics Designer chọn New picture.
Hình 78: Tạo một giao diện người dùng mới và Mở GiaoDienChinh.pdl
Một giao diện người dùng (picture) với tên mặc định là NewPdl.pdl được tạo ra. Ta đổi
tên tại thành GiaoDienChinh.pdl bằng cách nhấp phải vào tên mặc định NewPdl.pdl, chọn
Rename picture.
Để tiến hành thiết kế giao diện cho GiaoDienChinh.pdl, ta nhấp phải vào
GiaoDienChinh.pdl chọn Open picture.
Giao diện Graphics Designer mở ra. Dùng các công cụ của ,
và các đối tượng có sẵn của Library , Em thiết kế được giao diện điều
khiển giám sát dây chuyền như hình dưới.
Hình 79: Thiết kế giao diện chính
6.3 Thiết lập các thuộc tính cho các đối tượng:
6.3.1 Thiết lập sự kiện của các nút nhấn:
Để thiết lập sự kiện (Event) cho nút nhấn START trên giao diện Graphics Designer -
[GiaoDienChinh.pdl], ta nhấp phải vào nút nhấn START, chọn Properties.
Tạo sự kiện Press Left: Hộp thoại Object Properties xuất hiện. Ta chọn tab Events > Mouse
> Press Left, sau đó nhấp phải vào mũi tên chọn C-Action.
Hình 81: Tạo sự kiện Press Left của nút START bằng C-Action
Hộp thoại Edit Action xuất hiện. Để viết hàm cho sự kiện, ta chọn Internal Functions >
Tag > Set. Sau đó, nhấp đúp vào SetTagBit. Hộp thoại Assigning Parameters xuất hiện.
Hình 82: Hộp thoại Edit Action và Chọn hàm cho sự kiện Press Left nút START
Ta nhấp vào nút vuông trong cột Value của hàng Tag_Name, chọn Tag selection.
Hộp thoại Tags - Project xuất hiện. Chọn tag Bien_Start nằm trong S7200_OPCServer.
Sau đó nhấp OK
Hình 83: Chọn Tag selection và Chọn tag Bien_Start trong hộp thoại Tags - Project
Ở đây, tag Bien_Start chính là một biến M0.7 (Phụ lục A) được sử dụng trong chương
trình viết cho PLC S7-200. Biến này đã được kết nối với WinCC nhờ S7-200 PC Access và
driver OPC đã trình bày trên.
Trở lại hộp thoại Assigning Parameters, Bien_Start đã được chọn. Ở hàng value, ta đặt
giá trị là 1 ở cột Value. Sau đó nhấp OK chấp nhận như hình 7.18.
Hình 7.18: Tag Bien_Start được chọn và Kiểm tra lỗi chương trình C-Action
Lúc này, trong phần soạn thảo của hộp thoại Edit Action ta thấy xuất hiện dòng lệnh
SetTagBit(“Bien_Start”,1). Dòng lệnh này sẽ được thực hiện khi có sự kiện Press Left
chuột trên nút nhấn START. Khi đó tag Bien_Start sẽ được set lên 1. Để kiểm tra lỗi dòng
lệnh vừa viết, ta nhấp vào công cụ Create action trên thanh công cụ của Edit Action. Nếu
không có lỗi thì trên thanh Status của hộp thoại sẽ xuất hiện thông báo 0 Error(s), 0
Warning(s). Khi đó, nhấp OK chấp nhận như hình 7.18.
Tạo sự kiện Release Left:
Trở lại hộp thoại Object Properties (tab Events), trong hàng Release Left, ta nhấp phải
vào mũi tên chọn C- Action như hình 7.19.
Hộp thoại Edit Action xuất hiện. Ta viết hàm SetTagBit(“Bien_Start”,0) vào phần soạn
thảo của hộp thoại Edit Action và kiểm tra lỗi chương trình tương tự mục trên. Sau đó nhấp
OK chấp nhận.
Hình 84: Tạo sự kiện Release Left nút START bằng C-Action và Viết hàm cho sự kiện
Release Left nút START bằng C-Action
Trở lại hộp thoại Object Properties, ta sẽ thấy hai sự kiện Press Left và Release Left đã
được thiết lập. Ta đóng hộp thoại Object Properties, hoàn thành việc thiết lập sự kiện của
nút nhấn START.
Hình 85: Hoàn thành việc thiết lập sự kiện của nút nhấn START
Việc thiết lập sự kiện của các nút nhấn khác trên giao diện cũng tương tự như việc thiết
lập sự kiện của nút nhấn START, chỉ khác ở chỗ là việc chọn biến phải phù hợp với nút
nhấn được thiết lập sự kiện.
6.3.2 Thiết lập thuộc tính cho các đèn báo
Để thiết lập thuộc tính (Properties) cho đèn báo START trên giao diện Graphics
Designer - [GiaoDienChinh.pdl], ta nhấp phải vào đèn báo START chọn Properties.
Hình 86: Thiết lập thuộc tính cho đèn báo START và Flashing Background Active
Hộp thoại Object Properties xuất hiện. Tab Properties được chọn mặc định. Ta chọn
thuộc tính Circle > Flashing. Trong bảng thuộc tính Flashing, ở hàng Flashing Background
Actice, nhấp phải vào static No chọn Edit. Khi đó, static No của thuộc tính Flashing
Background Actice sẽ chuyển thành Yes như hình.
Tiếp tục, ta nhấp phải chuột vào biểu tượng (ở hàng Flashing Background
Actice), chọn Tag hình …
Hộp thoại Tags - Project hiện ra. Chọn tag Den_StartStop nằm trong
S7200_OPCServer. Sau đó nhấp OK.
Hình 87: Liên kết biến cho thuộc tính Flashing Background Active Chọn tag
Den_StartStop trong hộp thoại Tags - Project
Ở đây, tag Den_StartStop chính là đầu ra Q0.4 được sử dụng trong chương trình viết cho
PLC S7-200. Biến này đã được kết nối với WinCC nhờ S7-200 PC Access (mục trên) và
driver OPC hình 7.23.
Hình 88: Hộp thoại Object Properties sau khi chọn tag Den_StartStop và Thay đổi tốc
độ cập nhật tag Den_StartStop
Trở lại hộp thoại Object Properties. Ở cột Current của thuộc tính Flashing Background
Active có giá trị là 2s, ta nhấp phải vào nó chọn tốc độ cập nhật là Upon change.
Lúc này, trong hộp thoại Object Properties, ta sẽ thấy thuộc tính Flashing Background
Active đã được thiết lập tương đối hoàn thiện. Ta tiếp tục thiếp lập hai thuộc tính Flashing
Background Color Off và Flashing Background Color On.
Ta nhấp phải vào màu của thuộc tính Flashing Background Color Off chọn Edit. Sau đó,
một bảng màu sẽ hiện ra, ta chọn màu xanh lam.
Hình 89: Chọn màu cho thuộc tính Flashing Background Color Off
Cũng tương tự, ta chọn màu xanh lam cho thuộc tính Flashing Background Color On.
Hình 90: Hoàn thành việc thiết lập thuộc tính cho đèn START
Bây giờ trong hộp thoại Object Properties, ta sẽ thấy thuộc tính Flashing của đèn báo
START đã được thiết lập tương đối hoàn thiện. Ta đóng hộp thoại Object Properties, hoàn
thành việc thiết lập thuộc tính cho đèn báo START.
Việc thiết lập thuộc tính cho đèn báo START trên giao diện Graphics Designer -
[GiaoDienChinh.pdl] như trên nhằm mục đích làm cho đèn báo START trên giao diện sẽ
chuyển nền sang màu xanh lam khi tag Den_StartStop có mức logic là 1 (Q0.4 = 1).
Thiết lập thuộc tính cho các đèn báo khác trên giao diện cũng tương tự như việc thiết lập
thuộc tính cho đèn báo START, chỉ khác ở chỗ là việc chọn tag và màu Flashing
Background phải phù hợp với đèn báo được thiết lập thuộc tính.
6.3.3 Tạo hiệu ứng ảnh động bằng C-Action
Trên giao diện Graphics Designer - [GiaoDienChinh.pdl], ta nhấp phải chuột vào một
sản phẩm trên băng tải 1, chọn Properties hình
Hộp thoại Object Properties mở ra, tab Properties được chọn mặc định. Nhấp chọn
Group, tiếp tục nhấp đúp vào Group1 (ở cột Attribute). Hộp thoại Text Input hiện ra, nhập
tên BangTai1_SanPham1, sau đó nhấp OK hình .
Hình 91: Thiết lập thuộc tính cho sản phẩm của băng tải 1 và Đổi tên cho Group1
(đối tượng sản phẩm)
Trở lại hộp thoại Object Properties, ta thấy Group1 đã được đổi thành
BangTai1_SanPham1. Tiếp theo ta đóng hộp thoại Object Properties để hoàn thiện việc đổi
tên cho đối tượng sản phẩm của băng tải 1.
Hình 92: Hoàn thành việc đổi tên cho Group1 và Mở giao diện Global Script C
Quay lại giao diện WinCCExplorer, ta chọn Global Scirpt > C-Edition. Tiếp tục nhấp
phải vào C-Edition, chọn Open hình .
Giao diện Global Scrip C mở ra. Để tạo một C-Action mới, ta vào menu File > New
Action hình.
Lúc này, một Action mới sẽ được mở ra. Để tạo hiệu ứng ảnh động cho đối tượng
BangTai1_SanPham1, ta viết đoạn chương trình sau vào vùng soạn thảo của Global Scirpt.
Chương trình C-Action cho đối tượng BangTai1_SanPham1:
#include "apdefap.h"
int gscAction( void )
{
int BangTai1_ViTriSanPhamDau, BangTai1_ViTriSanPhamCuoi,
BangTai1_DenTaSanPham = 10;
int BangTai1_ViTriSanPham1;
BangTai1_ViTriSanPhamDau = 975;
BangTai1_ViTriSanPhamCuoi = 795;
if (GetTagBit("BangTai1") == 1)
{
BangTai1_ViTriSanPham1 =
GetLeft("GiaoDienChinh.pdl","BangTai1_SanPham1");
BangTai1_ViTriSanPham1 = BangTai1_ViTriSanPham1 -
BangTai1_DenTaSanPham;
SetLeft("GiaoDienChinh.pdl","BangTai1_SanPham1",BangTai1_ViTriSanPham1);
}
if (BangTai1_ViTriSanPham1 == BangTai1_ViTriSanPhamCuoi)
{
SetLeft("GiaoDienChinh.pdl","BangTai1_SanPham1",BangTai1_ViTriSanPhamDau);
}
return 0;
}
Hình 93: Soạn thảo chương trình trong Global Script C
Để kiểm tra lỗi của chương trình vừa viết, ta nhấn tổ hợp phím Shift + F8. Nếu thấy
thông báo 0 Error(s), 0 Warning(s) thì chương trình không bị lỗi. Tiếp theo, ta chọn menu
File > Save để lưu chương trình C-Action lại với tên SanPham_BangTai1.pas. Sau khi lưu
xong, ta sẽ thấy tên chương trình nằm trong mục Global actions trên giao diện Global Script
C.
Để tạo thời gian Trigger cho chương trình vừa viết, ta vào menu Edit > Info hình 7.29
Hộp thoại Properties mở ra, tab Info được chọn mặc định. Ta chọn tab Trigger, rồi vào
Timer > Cyclic.
Tiếp tục, ta nhấp vào nút Add. Hộp thoại Add trigger hiện ra. Ở mục Cycle, giá trị 2s
được chọn mặc định, ta chọn lại giá trị 250ms (tức là thời gian Trigger của chương trình là
250ms). Nhấp Apply, OK để chấp nhận hình . Trở lại hôp thoại Properties, ta thấy trong
mục Cyclic xuất hiện giá trị 250ms. Nhấp Apply, OK để hoàn thành việc tạo thời gian
Trigger cho chương trình SanPham_BangTai1.pas.
Hình 95: Chọn thời gian Trigger cho chương trình Hoàn thành việc tạo thời gian
Trigger
Cuối cùng, ta chọn menu File > Save để lưu các thiết lập vừa thực hiện. Đến đây, ta đã
hoàn thiện việc tạo hiệu ứng ảnh động cho đối tượng là một sản phẩm trên băng tải 1.
6.4 Thiết lập mạng plc s7 – 300/400
6.4.1 Thiết lập cấu hình hardware
Sau khi cài đặt Step7 Micro Win version 5.0 trở lên phục vụ cho PLC S7-300, S7-400 ta
có giao diện sau:
Nửa cửa sổ bên trái sắp xếp dạng thư mục, kích chuôt vào đó để mở ra các mục con.
Bấm vào dòng SIMATIC 300 STATION bên trái rồi bấm tiếp vào Hardware bên phải để đặt
cấu hình phần cứng của PLC (công việc này cũng có thể thực hiện sau)
Hình 96: Thiết lập cấu hình hardware S7-300
Giả sử cấu hình đơn giản gồm các module DI/DO, AI/AO, ta kích chuột vào dòng
SIMATIC 300, SM- 300 , chọn các module phù hợp, dùng chuột kéo vào các slot của
Station từ số 4 trở đi, (slot 3 dùng cho module IM), sau đó vào menu Station – Save rồi
Close. Ta sẽ trở lại vấn đề cấu hình ở mục.
Hình 97: Mô hình cài đặt và kết nối PLC vào mạng công nghiệp
cấu hình mạng là NetPro - Configuring Networks được mở theo hai cách:
1. StartAll ProgramsSIMATICSTEP7
2. Khởi động theo hình sau:
Nháy kép chuột trái
Dựa vào những phân tích thiết kế trên ta đi vào cấu hình cho các modul phân tán trên
Subnet Profibus-DP.
Theo hình trên ta có giao diện DP của PLC S7-300 được quy định trước là DP
master. Khi đó các DP slave là các modul phân tán ET200 hay các thiết bị trường khác có
giao diện DP.
Trước hết ta tạo hệ thống DP master như sau:
Là nơi để các DP slave
kết nối vào hệ thống DP
master
Hình 101: Cách thiết lập một DP master trong Hardware Config
Ta vẫn có thể tạo đường Bus bằng cách đưa trực tiếp, kéo biểu tượng PROFIBUS ở
phần Subnets bên phải vào màn hình truyền thông bên trái như sau:
Theo bài toán thiết kế thì các DP slave là các S7-300. Do đó các DP slave ở đây
chính là các I Slave (slave thông minh) được tích hợp giao diện DP.
Thực hiện cấu hình cho các Slave và kết nối ta có giao diện truyền thông các modul
như sau:
Hình 103: Mạng truyền thông cho nhà máy nhựa sản xuất đồ chơi trẻ em
Có hai cách vận hành hệ thống: điều khiển bằng các công tắc vật lý (giả lập làm nút
nhấn) hoặc điều khiển trên máy tính nhờ phần mềm WinCC.
6.4.4 Tạo các giao diện kết nối bằng wincc.
Các tags và nhóm tag đã tạo trong chương trình:
Các nhóm tag gồm có: nhóm tag “điều khiển”, nhóm tag “thời gian thực thi” và
nhóm tag “thể tích”.
Các tag độc lập: tag “giá trị đặt”, tag “số thùng”.
Hình 104: Khai báo đặt các biến (Tag)
Tương tự cho các tags trong nhóm tag “thời gian thực thi” và “thể tích”:
Giao diện cho chương trình.