mà một hệ thống điều khiển thông thường không thể đảm nhận hếtđược.Hiện nay trên thị trường có khá nhiều phần mềm SCADA, phần lớn có chứcnăng giống nhau nhưng trong luận văn này chúng em
Trang 1TRƯỜNG ĐẠI HỌC CẦN THƠ KHOA CÔNG NGHỆ - -
LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC
LẬP TRÌNH NHÚNG VISUAL
BASIC VÀO WIN CC
CÁN BỘ HƯỚNG DẪN SINH VIÊN THỰC HIỆN
Th.s Nguyễn Hoàng Dũng Võ Duy Thanh 1063905
Nguyễn Huỳnh Phúc Thiện 1063912
Ngành: Cơ Điện Tử - Khóa: 32
Trang 2Chúng em xin gởi lời cám ơn đến tất cả các thầy cô giáo bộ môn TựĐộng Hóa, cũng như các thầy cô khoa Công Nghệ thời gian qua đã truyền đạt
và trang bị cho chúng em rất nhiều kiến thức quan trọng từ đại cương đếnchuyên ngành để chuẩn bị cho luận văn tốt nghiệp
Tuy đã cố gắng nhiều nhưng do thời gian có hạn, tập luận văn này sẽkhông tránh khỏi nhiều sai sót, chúng em xin quý thầy cô và độc giả thông cảm
bỏ qua Chúng em xin chân thành tiếp nhận mọi ý kiến
Cần Thơ, tháng 05 năm 2010
Nhóm sinh viên thực hiện:
Võ Duy Thanh Nguyễn Huỳnh Phúc Thiện
Trang 3SCADA (Supervisory Control And Data Acquistion, tạm dịch là điều khiểngiám sát và thu thập dữ liệu) được sử dụng rất rộng rãi trên thế giới vì nó có nhiềuchức năng như: điều khiển, giám sát, thu thập dữ liệu, cảnh báo, lập báo cáo, hỗ trợmạng LAN, mà một hệ thống điều khiển thông thường không thể đảm nhận hếtđược.
Hiện nay trên thị trường có khá nhiều phần mềm SCADA, phần lớn có chứcnăng giống nhau nhưng trong luận văn này chúng em sử dụng phần mềm WinCC7.0 của hãng Siemen do có giao diện đơn giản dễ sử dụng cũng như hoạt động tốttrên hệ điều hành Windows Ngoài ra phần mềm còn hổ trợ ngôn ngữ lập trìnhVBScript làm tăng tính mềm dẻo, cơ động và linh hoạt của chương trình
Bên cạnh đó, trong một hệ thống mạng SCADA, ngoài các máy vi tính (hoặcmáy tính mini, main frame) thì không thể không nói đến PLC Các PLC được sửdụng như một phần cứng quá trình (Proccess hardware) dùng để điều khiển trực tiếpcác thiết bị và tham gia truyền thông trên mạng
Đề tài Lập trình nhúng Visual Basic vào WinCC nhằm nghiên cứu các vấn
đề được trình bày trên với các mục tiêu và giới hạn sau:
- Nghiên cứu phần mềm WinCC và cách lập trình ngôn ngữ Visual Basictrong WinCC để tạo giao diện điều khiển cho chương trình
- Nghiên cứu về PLC S7- 200 của hãng Siemen và phần mềm PC Access
để tạo kết nối với WinCC
- Ứng dụng để thiết kế và chạy thử mô hình chiết chai di động
Nhóm sinh viên thực hiện
VÕ DUY THANHNGUYỄN HUỲNH PHÚC THIỆN
Trang 4SCADA is used popularly in the world, because of it’s various funtions, suchas: controlling, supervision, collecting datas, warning, reporting and LANsupporting that other normal controlling programs cannot do.
In the market now there are many SCADA softwares Most of them have thesame functions with programs’ used in our thesis We decided to choose winCC 7.0from Siemens, because of it’s simple themes, easy usage and effective operation inWindows In addition, it supports programming language VBScript making itflexible Moreover, in SCADA network beside computers ( minicomputer, mainframe) PLC must be mentioned As a process hardware it can control units directlyand commicate in internet
The topic of this thesis Embedded Visual Basic into WinCC aims at the
contents above and the following objectives:
- Researching Win CC and Visual Basic of Win CC to create controllingtheme for the program
- Studying the PLC S7- 200 of Siemens and PC Access to make a link toWinCC
- Application for designing and trail run on water supply line for bottles
Trang 5LỜI CẢM ƠN.
LỜI NÓI ĐẦU
ABSTRACT
MỤC LỤC
TỔNG QUAN VỀ ĐỀ TÀI 1
1 Giới thiệu đề tài 1
2 Phạm vi của đề tài 1
3 Mục tiêu của đề tài 2
4 Phương pháp thực hiện 2
CHƯƠNG I: CƠ SỞ LÝ THUYẾT 3
I.1 Đại cương về PLC S7 - 200 3
I.1.1 Giới thiệu 3
I.1.2 Các loại PLC Siemens S7 - 200 4
I.1.2.1 Loại cấp điện áp 220 VAC 4
I.1.3.1 Loại cấp điện áp 24 VDC 4
I.1.3 Cấu trúc bên ngoài 5
I.1.3.1 Các đèn báo trên CPU 5
I.1.3.2 Công tắc chọn chế độ làm việc của CPU 5
I.1.3.3 Nguồn cung cấp 6
I.1.3.4 Cổng truyền thông 6
I.1.3.5 Kết nối PLC với máy tính 7
I.1.3.6 Các Module mở rộng cổng vào ra 11
I.1.4 Cấu trúc bên trong 12
I.1.4.1 Bộ xử lý trung tâm 12
I.1.4.2 Cấu trúc bộ nhớ của PLC S7 - 200 14
I.1.5 Giới thiệu tập lệnh S7- 200 17
I.1.5.1 Một số tập lệnh thường dùng 18
I.1.5.2 Sử dụng hàm phát xung tốc độ cao 20
I.1.5.3 Sử dụng bộ đếm tốc độ cao 27
I.2 Đại cương về WinCC 29
I.2.1 Giới thiệu về WinCC 29
I.2.2 Nội dung của Control Center 30
I.2.2.1 Chức năng của Control Center 30
I.2.2.2 Cấu trúc của Control Center 30
I.2.2.3 Các thành phần soạn thảo 31
I.2.2.4 Các thành phần của project trong Control Center 32
I.2.2.4.1 Máy tính 32
I.2.2.4.2 Quản lý Tag 33
I.2.2.4.3 Các kiểu dữ liệu 34
I.2.3 Graphic Designer 36
I.2.2.1 Chức năng của Graphic Designer 36
Trang 6I.1.5.2.1 Tab “Properties” 41
I.1.5.2.1 Tab “Events” 42
I.2.4 Alarm Logging 44
I.2.2.1 Chức năng của Alarm Logging 44
I.2.2.2 Khái quát về Alarm Logging 45
I.2.4.2.1 Thông báo 45
I.2.4.2.2 Thủ tục một thông báo 46
I.2.4.2.3 Cấu trúc một thông báo 46
I.2.4.2.4 Tổ chức các thông báo 47
I.2.4.2.5 Hiển thị các thông báo trong chế độ Run time 47
I.2.5 Tag Logging 49
I.2.5.1 Chức năng của Tag Logging 49
I.2.5.1.1 Nhiệm vụ của Tag Logging CS 49
I.2.5.1.2 Nhiệm vụ của Tag Logging RT 49
I.2.5.1.3 Thực hiện Tag Logging 49
I.2.5.1.4 Các kiểu dữ liệu 49
I.2.5.1.5 Các phương pháp lưu trữ dữ liệu quá trình 50
I.2.2.2 Cấu trúc của Tag Logging CS 55
I.2.5.2.1 Timers 55
I.2.5.2.2 Archives 56
I.2.5.2.3 Trends 56
I.2.5.2.4 Tables 56
I.3 Giới Thiệu Phần Mềm Step 7 Micro/Win 57
I.4 Giới Thiệu Phần Mềm PC Access 62
CHƯƠNG II: GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH VB TRONG WINCC 66
II.1 Giới thiệu VB Script trong WinCC 66
II.2 VBS trong Global Script 66
II.3 VBS trong Graphic Designer 66
II.3.2 Procedures (thủ tục) 66
II.3.2 Modules 67
II.3.3 Actions (hành động) 67
II.4 Các thành phần của VB Script trong WinCC 69
II.4.1 Trong Global Script 69
II.4.2 Trong Graphic Designer 70
II.5 Cấu trúc của một file Script 72
II.6 Mô hình đối tượng của VBS 73
II.6.1 Đối tượng (Objects) 74
Trang 7II.6.2 Thuộc tính (Properties) 83
II.6.3 Phương pháp (Methods) 83
II.6.3.1 Activate Methods 84
II.6.3.2 Add Methods 84
II.6.3.3 GetTrend Methods 85
II.6.3.4 Item Methods 85
II.6.3.5 Read Methods 86
II.6.3.6 Stop Methods 88
II.6.3.7 Trace Methods 89
II.6.3.8 Write Methods 89
CHƯƠNG III: GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH VB TRONG WINCC 92 III.1 Giới thiệu tổng quát 92
III.2 Giải pháp thiết kế 92
III.2.1 Phần cứng 92
III.2.2 Phần mềm 92
III.3 Thiết kế phần cứng 93
III.3.1 Thiết kế mô hình 93
III.3.2 Các mạch điện tử 93
III.3.2.1.Mạch đảo chiều động cơ 93
III.3.2.2.Mạch giao tiếp ngõ vào PLC 94
III.3.2.1.Mạch thu phát hồng ngoại 94
III.3.3 Thiết kế bộ điều khiển 96
III.3.3.1.Sơ đồ khối hệ thống 96
III.3.3.2.Sơ đồ nối dây chi tiết 96
III.4 Thiết kế phần mềm 97
III.4.1 Lưu đồ giải thuật 97
III.4.2 Chương trình điều khiển dạng Ladder 98
III.4.3 Chương trình điều khiển và giám sát trên WinCC 107
III.4.3.1.Tạo các Tag liên kết trên PC Access 107
III.4.3.2.Các Tag điều khiển sau khi kết nối với WinCC 108
III.4.3.3.Các màn hình giao diện trên WinCC 109
III.4.3.3.1 Màn hình chính 109
III.4.3.3.2 Màn hình điều khiển 110
III.4.3.3.3 Màn hình thu thập 111
III.4.3.3.4 Màn hình thông báo 112
III.4.3.3.5 Màn hình Demo 112
III.5 Kết quả thực hiện 113
KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN 115
PHỤ LỤC 116
TÀI LIỆU THAM KHẢO 138
Trang 8TỔNG QUAN VỀ ĐỀ TÀI
1 Giới thiệu đề tài.
WinCC là phần mềm điều khiển giám sát và thu thập dữ liệu rất hữu ích trong công nghiệp Phần mềm này cho phép nhúng VB và C để điều khiển Nếu thực hiện
được điều này, các ứng dụng trên WinCC sẽ trở nên phong phú và đa dạng rất nhiều.
Kết hợp với thiết bị điều khiển PLC S7-200 của hãng Siemen – một thiết bị được sử dụng rộng rãi trong môi trường công nghiệp do tính chắc chắn, an toàn và hiệu quả cao
– để điều khiển giám sát và thu thập dữ liệu từ mô hình hệ thống chiết chai tự động.
Hệ thống này đang được sử dụng rộng rãi trong các nhà máy chế biến đồ uống
như nhà máy bia, nhà máy chế biến nước ngọt, Hệ thống này còn là một khâu khá
quan trọng trong một dây chuyền sản xuất vì nó đòi hỏi sự chính xác cao và an toàn trong công nghiệp nên càng ngày càng phải được cải tiến, nâng cao năng suất.
2 Mục tiêu của đề tài.
Nghiên cứu ngôn ngữ lập trình VBScript trong WinCC
Tạo giao diện điều khiển, giám sát bằng phần mềm WinCC.
Thiết kế được mô hình chiết chai tự động dùng PLC S7-200 và phần
Trang 9Lập trình cho PLC bằng phần mềm Step 7 MicroWin để điều khiển mô hình (2
động cơ và van chiết) và giao tiếp giữa WinCC và PLC.
Phần cứng:
Thiết kế mô hình chiết chai tự động với băng chuyền tải chai vào hệ thống không dừng mà luôn chạy liên tục với một tốc độ ổn định mà ta có thể điều chỉnh được trong một phạm vi cho phép Nhiệm vụ của hệ thống valve chiết sản phẩm là phải chạy theo, đồng thời đồng bộ với tốc độ của băng chuyền và chiết sản phẩm vào chai trong khi chạy Sau đó, quay về chuẩn bị thực hiện chu trình kế tiếp.
4 Phương pháp thực hiện.
Tham khảo các tài liệu về PLC S7- 200 của hãng Siemens.
Tìm hiểu cách sử dụng phần mềm STEP -7 MicroWin và cách lập trình.
Tìm hiểu cách lập trình nhúng Visual Basic vào WinCC.
Tìm hiểu cách sử dụng phần mềm WinCC và cách kết nối giữa phần mềm WinCC với phần mềm STEP-7 MicroWin để tạo giao diện điều khiển cho chương trình.
Trang 10CHƯƠNG I
CƠ SỞ LÝ THUYẾT
I.1 Đại cương về PLC S7 200
I.1.1 Giới thiệu
PLC (Programmable Logic Controller) là thiết bị có thể lập trình được,được thiết kế chuyên dùng trong công nghiệp để điều khiển các tiến trình xử lí từđơn giản đến phức tạp, tuỳ thuộc vào người điều khiển mà nó có thể thực hiện mộtloạt các chương trình hoặc sự kiện, sự kiện này được kích hoạt bởi các tác nhân kíchthích (hay còn gọi là ngõ vào) tác động vào PLC hoặc qua các bộ định thì(Timer) hay các sự kiện được đếm qua bộ đếm Khi một sự kiện được kíchhoạt nó sẽ bật ON, OFF hoặc phát một chuỗi xung ra các thiết bị bên ngoàiđược gắn vào ngõ ra của PLC Như vậy nếu ta thay đổi các chương trình được càiđặt trong PLC là ta có thể thực hiện các chức năng khác nhau, trong các môi trườngđiều khiển khác nhau Hiện nay PLC đã được nhiều hãng khác nhau sản xuấtnhư: Siemens, Omron, Mitsubishi, Festo, Alan Bradley, Schneider, Hitachi vv.Mặt khác ngoài PLC cũng đã bổ sung thêm các thiết bị mở rộng khác như: các cổng
mở rộng AI (Analog Input), DI (Digital Input), các thiết bị hiển thị, các bộ nhớCartridge thêm vào
Trang 11I.1.2 Các loại PLC Siemens S7-200
PLC S7-200 là một họ gồm nhiều loại CPU như CPU 212, 214, 215, 216, 221,
222, 224, 226 Các họ này khác nhau ở dung lượng bộ nhớ, module I/O, tập lệnh, sốcổng giao tiếp,… Tuy nhiên về đại thể là giống nhau
Thông thường S7 200 được phân ra 2 loại chính:
I.1.2.1 Loại cấp điện áp 220VAC
Tuy nhiên, nhược điểm của nó: do ngõ ra Transistor nên ngõ ra chỉ có một cấp điện
áp duy nhất là +24 VDC, do vậy sẽ gặp rắc rối trong những ứng dụng có cấp điện
áp ra là 0 VDC, trong trường hợp này buộc ta phải thông qua 1 rơle 24V DC đệm
Trang 12I.1.3 Cấu trúc bên ngoài
Hình I.1 Hình dáng bên ngoài của PLC S7 200
I.1.3.1 Các đèn báo trên CPU
Các đèn báo trên mặt cho phép xác định trạng thái làm việc hiện hành của PLC:
SF (đèn đỏ): khi sáng sẽ thông báo hệ thống PLC bị hỏng
RUN (đèn xanh): khi sáng sẽ thông báo PLC đang làm việc và thực hiện chươngtrình được nạp vào máy
STOP (đèn vàng): khi sáng thông báo PLC đang ở chế độ dừng Dừng chương trìnhđang thực hiện lại
Ix.x (đèn xanh): Thông báo trạng thái tức thời của cổng vào PLC: Ix.x Đèn này báohiệu trạng thái của tín hiệu theo giá trị logic của cổng
Qy.y (đèn xanh): Thông báo trạng thái tức thời của cổng ra PLC: Qy.y Đèn này báo
hiệu trạng thái của tín hiệu theo giá trị logic của cổng.
I.1.3.2 Công tắc chọn chế độ làm việc của CPU
Công tắc này có 3 vị trí : RUN – TERM - STOP, cho phép xác lập chế độ làm việc
của PLC
Trang 13- STOP: Cưỡng bức CPU dừng chương trình đang chạy và chuyển sang chế độ
STOP Ở chế độ STOP, PLC cho phép hiệu chỉnh lại chương trình hoặc nạp chươngtrình mới
- TERM : Cho phép máy lập trình tự quyết định chế độ làm việc của CPU hoặc ở
chế độ RUN hoặc STOP
I.1.3.3 Nguồn cung cấp
- Điện áp cấp nguồn: 12 đến 28,8 VDC hoặc 85 đến 265 VAC Đúng chuẩn
là 24 VDC hoặc 100 đến 230 VAC
- Cách ly ngõ vào: không có
- Sơ đồ cách nối nguồn cấp cho PLC S7 200 như hình
Hình I.2 Sơ đồ nguồn cung cấp cho PLC S7- 2XX
I.1.3.4 Cổng tryền thông
S7 – 200 được kết hợp một cổng truyền thông RS 485 Với đầu nối gồm 9chân RS 485 dùng để phục vụ cho việc ghép nối S7 200 với thiết bị lập trình hoặcvới các PLC khác
Hình I.2 Cổng truyền thông RS 485
Trang 14Chân Chuẩn PROFIBUS Port 0 và Port 1
3 RS 485 – tín hiệu B RS 485 – tín hiệu B
8 RS 485 – tín hiệu A RS 485 – tín hiệu A
9 Không sử dụng Chế độ Protocol 10 – bit (ngõ vào)
Bảng I.1 Tính năng các chân RS 485
I.1.3.5 Kết nối PLC với máy tính
Hình I.3 Kết nối PC với S7 -200
Để có thể giao tiếp giữa máy tính và PLC cho thực hiện việc Download hoặcUpload cho PLC thông qua cáp PC/PPI, ta phải thực hiện các bước sau:
- Mở chương trình Step 7 Micro Win
- Chọn cổng giao tiếp là cổng COM máy tính
- Để có thể chọn cổng giao tiếp, vào mục Communication, chọn Set PG/PC
Trang 15Hình I.4 Giao diện cửa sổ Set PG/PC Interface
Sau đó chọn Properties của PC/PPI cable (PPI)
Hình I.5 Giao diện cửa sổ PC/PPI cable (PPI)
Trong Tab PPI: chọn đúng tốc độ Bauds ở phần Transmission Rate:
Tốc độ để mặc định là 9600, tốc độ Baud mặc định ở cáp cũng là 9600 (tốc độ Baudnày chỉ áp dụng đối cáp cổng COM), trên cáp COM, cho phép ta chọn nhiều mứctốc độ Baud khác nhau
Trong phần Local Conection cho phép ta chọn cổng COM
Trang 16Hình I.6 Chọn cổng COM1
Sau khi chọn cổng COM, bước kế tiếp là phải chọn địa chỉ PLC, thôngthường địa chỉ mặc định của PLC là 2, nếu địa chỉ PLC khác 2 thì ta phải chọn địachỉ đúng trước khi thực hiện việc Communication
Trường hợp nếu không biết địa chỉ PLC ta có thể thực hiện như sau:
Hình I.7 Cửa sổ Communications
Vào phần Communication, chọn Search all baud rate sau đó double click vào
Trang 17Hình I.8 Download chương trình xuống PLC
Chọn mũi tên xuống cho việc Download, mũi tên lên cho việc upload
Ngoài ra việc Communication còn có thể thực hiện bằng cách:
Hình I.9 Upload chương trình xuống PLC
Vào CPU click chuột phải,chọn Type
Chọn Read PLC, nếu liên thông được thì chương trình có thể đọc được loại PLC,còn không thì nó sẽ báo,ta phải chọn lại cổng COM cũng như địa chỉ PLC trongphần Communications
Hình I.10 Chọn loại CPU 224
Trang 18I.1.3.6 Các Module mở rộng cổng vào ra
Chúng ta có thể mở rộng các cổng vào/ra của PLC bằng cách ghép nối thêmvào nó các Module mở rộng về phía bên phải của CPU, làm thành một móc xích.Địa chỉ của các vị trí của các module được xác định bằng kiểu vào/ra và vị trí củacác module trong móc xích bao gồm các module cùng kiểu Ví dụ như một modulecổng ra không thể gắn với đại chỉ của một module cổng vào, cũng như một moduletương tự không thể có địa chỉ như một module số và ngược lại Các module mởrộng số hay rời rạc đều chiếm chổ trong bộ đệm tương ứng với số đầu vào/ra củamodule
Module CPU S7 – 200 Bus kết nối Module mở rộng
Hình I.11 S7 – 200 kết nối với module mở rộng
Trang 19I.1.4 Cấu trúc bên trong
Hình I.12 Sơ dồ cấu trúc bên trong của hệ thốngPLC
I.1.4.1 Bộ xử lý trung tâm
Một hệ thống lập trình cơ bản phải gồm có hai phần: khối xử lý trung tâm(CPU: Central Processing Unit) và hệ thống giao tiếp vào/ra (I/O)
Trong đó :
• Thiết bị đầu vào gồm các thiết bị tạo ra tín hiệu điều khiển như nútnhấn, cảm biến, công tắc hành trình
Trang 20• Input, Output các cổng nối phía đầu vào ra của PLC hay các của cácModule mở rộng.
• Cơ cấu chấp hành: gồm các thiết bị được điều khiển như: chuông, đèn,contactor, động cơ, van khí nén, heater, máy bơm, LED hiển thị vv.Chương trình điều khiển: định ra quy luật thay đổi tín hiệu Output đầu ratheo tín hiệu Input đầu vào như mong muốn Các chương trình điều khiển được tạo
ra bằng cách sử dụng bộ lập trình chuyên dụng cầm tay (Hand-hold programmerPG) hoặc chạy bằng phần mềm điều khiển trên máy vi tính sau đó được nạp vàoPLC thông qua cáp nối giữa PLC với máy tính (hay PG)
Khối điều khiển trung tâm (CPU: Central Processing Unit) gồm ba phần: bộ
- Loại khối SBR (Khối chương trình con): Khối chương trình với nhữngchức năng riêng giống như một chương trình con hoặc một hàm (chương trình con
có biến hình thức) Một chương trình ứng dụng có thể có nhiều khối chương trìnhcon và các khối chương trình con này được phân biệt với nhau bằng tên của chươngtrình con đó
- Loại khối INT ( Khối chương trình ngắt): Là loại khối chương trình đặcbiệt có khả năng trao đổi một lượng dữ liệu lớn với các khối chương trìnhkhác.Chương trình này sẽ được thực thi mỗi khi có sự kiện ngắt xảy ra
Trang 21I.1.4.2 Cấu trúc bộ nhớ của PLC S7- 200
Bộ nhớ gồm ba loại ROM, EEPROM và RAM và chia làm nhiều vùng: V, I,
Q, AI, AQ, M, SM, T, HC, AC Các ô nhớ có thể truy cập theo bit, byte (B), từ (W),
từ kép (DW)
Trang 22Vùng nhớ AI, AQ chỉ truy cập theo từ (16 bit): AIW0, AQW10
Các vùng nhớ V, I, Q, M, SM có thể truy cập theo bit, byte, word hay doubleword: I0.1, QB2, VW150,…
T, C truy cập theo bit: T1, C15 hay từ
AC truy cập theo byte, word hay double word
HC truy cập theo double word
Bộ nhớ của S7 – 200 có tính năng động cao, có thể đọc và ghi được trongtoàn vùng, ngoại trừ phần các bit nhớ đặc biệt được ký hiệu SM (Special Memory)chỉ có thể truy cập để đọc Bộ nhớ có một tụ nhớ để giữ thế nuôi, duy trì dữ liệutrong một khoảng thời gian khi mất điện
Bộ nhớ của S7 – 200 được chia thành 4 vùng :
Vùng nhớ chương trình: Là vùng lưu giữ các lệnh chương trình Vùng này thuộc
kiểu không bị mất dữ liệu (non – volatile), đọc/ghi được
Vùng nhớ tham số: Là vùng lưu giữ các thông số như: từ khóa, địa chỉ trạm Cũng
như vùng chương trình vùng tham số thuộc kiểu đọc ghi/được
Vùng nhớ dữ liệu: Được sử dụng để trữ các dữ liệu của chương trình Vùng dữ liệu
là một miền nhớ động Nó có thể được truy cập theo từng bit, từng byte, từng từ đơn(word), hoặc theo từng từ kép (Double word) và được dùng để lưu trữ dữ liệu chocác thuật toán, các hàm truyền thông, lập bảng, các hàm dịch chuyển, xoay vòngthanh ghi, con trỏ địa chỉ …
Vùng dữ liệu được chia thành những vùng nhớ nhỏ với các công dụng khácnhau Chúng được ký hiệu bằng chữ cái đầu tiếng Anh, đặc trưng cho công dụngriêng của chúng :
V Variable memory
I Input image resister
O Ouput image resister
M Internal memory bits
Trang 23Vùng nhớ đối tượng: Vùng đối tượng được sử dụng để giữ dữ liệu cho các đối
tượng lập trình như các giá trị tức thời, giá trị đặt trước của bộ đếm hay Timer Dữliệu kiểu đối tượng bao gồm các thanh ghi của Timer, bộ đếm, các bộ đếm tốc độcao, bộ đệm vào/ra Analog và các thanh ghi Accumulator (AC) Kiểu dữ liệu đốitượng bị hạn chế rất nhiều vì các dữ liệu đối tượng chỉ được ghi theo mục đích cần
sử dụng đối tượng đó
Trang 24I.1.5 Giới thiệu tập lệnh S7 - 200
Để lập trình cho S7 - 200 ta dùng phần mềm Step 7 MicroWin V4.0 Sau khicài đặt phần mềm vào máy ta mở bằng cách double click vào biểu tượng Step 7Micro Win V4.0 hoặc vào Start Simatic V4.0 Step 7 MicroWin Hình trìnhbày của sổ project của chương trình Step 7 MicroWin cung cấp một không gian làmviệc tiện dụng cho việc tạo chương trình điều khiển
Mở, tạo mới, lưu
chương trình
Công cụ kết nốicác lệnh
Nút kiểm tratrạng thái
Nút trạng tháicủa PLC
Vùng soạn thảochương trình
Các khối hàm, lệnh
Các khối chức năng
Trang 25I.1.5.1 Một số tập lệnh thường dùng
Lệnh về BIT
: Tiếp điểm thường hở
: Tiếp điểm thường đóng
: Tiếp điểm ngõ ra (solenoid coil)
:Đảo trạng thái Bit
Là bộ tạo thời gian trễ giữa tín hiệu điều khiển và tín hiệu tác động
Có 3 loại Timer: TON, TOF và TONR Mỗi loại Timer chia làm 3 nhóm có
độ phân giải 1ms, 10ms, 100ms
IN: Ngõ vào tín hiệu điều khiển
PT: Ngõ vào đặt thời gian (VW, IW, QW, MW, SW, SMW, LW, AIW, T, C,
AC, Constant, *VD, *LD, *AC)
Trang 26Hình I.15 Timer TON, TOF, TONR
Trong S7 - 200 có 256 Timer, ký hiệu từ T0-T255
Các số hiệu Timer trong S7 – 200 và độ phân giải :
Lệnh về COUNTER
Counter là bộ đếm có chức năng đếm số cạnh lên của xung tác động
Gồm 3 loại: CTU, CTD và CTUD
Cxxx: số hiệu counter (0-255)
CU, CD: ngõ vào xungLD: ngõ vào nạpR: Ngõ vào xóaPV: Ngõ vào đặt trước
Trang 27Hình I.16 Counter CTD, CTU, CTUD
I.1.5.2 Sử dụng hàm phát xung tốc độ cao
CPU S7 - 200 sử dụng hai cổng Q0.0 và Q0.1 để phát dãy xung tần số cao(theo tỉ lệ 50 %) hoặc tín hiệu điều xung theo độ rộng
PTO (Pulse Train Output): là một dãy xung vuông tuần hoàn có chu kỳ là
một số nguyên trong khoảng 250µs÷65.535µs hoặc từ 2µs÷65.535µs Độ rộngmỗi xung bằng ½ chu kỳ của mỗi dãy Số xung phát cho phép nhiều nhất của dãyphát xung là 4.294.967.295 xung
Hình I.17 Giản đồ xung của PTO
PWM (Pulse Width Modulation): là một dãy xung tuần hoàn có chu kỳ là
một số nguyên trong khoảng 250µs ÷ 65.535µs hoặc từ 2µs ÷ 65.535µs Khácvới PTO, độ rộng của mỗi xung có thể quy định được là một số nguyên nằmtrong khoảng 0µs ÷ 65.535µs hoặc 0ms ÷ 65.535ms Nếu độ rộng xung được quyđịnh lớn hơn chu kỳ của PWM thì một tín hiệu có giá trị logic bằng 1, ngược lại sẽ
có một tín hiệu logic 0
Trang 28Hình I.18 Giản đồ xung PWM
PTO và PWM được hệ thống phát ra theo cổng Q0.0 hoặc Q0.1 Các nguồnphát PTO và PWM sử dụng:
- Một byte điều khiển 8 bit
- Một từ đơn ghi chu kỳ xung
- Một từ kép ghi số xung của dãy
Địa chỉ những ô nhớ này như sau:
Cổng ra Byte điều khiển Chu kỳ Độ rộng xung Số xung
Các ô nhớ này phải được nạp những giá trị thích hợp trước khi thực hiện lệnhtạo xung Lệnh PLS sẽ tạo ra một dãy xung có kiểu được quy định trong byte điềukhiển với chu kỳ, độ rộng xung và số xung đã được đặt trước
Lệnh PLS lệnh phát xung tại cổng Q0.0 hoặc Q0.1 theo cấu trúc được địnhnghĩa trong byte điều khiển và các ô nhớ về chu kỳ độ rộng Cổng xung phát rađược chỉ định trong toán hạng x (0 cho Q0.0 và 1 cho Q0.1) của lệnh
Cú pháp sử dụng lệnh PLS như sau:
Trang 29Lệnh PLS sử dụng các byte điều khiển SMB67 (cho cổng Q0.0) và SMB77(cho cổng Q0.1) theo cấu trúc như sau:
Q0.0 Q0.1 Mục đích
SM67.0 SM77.0 Đổi chu kỳ: 1 – cho phép, 0 – không cho phép
SM67.1 SM77.1 Đổi độ rộng xung: 1 – cho phép, 0 – không cho phép
SM67.2 SM77.2 Đổi số đếm cho xung PTO: 1 – cho phép, 0 – không cho phépSM67.3 SM77.3 Đơn vị thời gian: 1 – ms, 0 -s
SM67.4 SM77.4 Không sử dụng
SM67.5 SM77.5 Không sử dụng
SM67.6 SM77.6 Chọn kiểu xung: 0 – PTO, 1 – PWM
SM67.7 SM77.7 Khai báo: 1 – kích, 0 – hủy
Bảng I.2 Các byte điều khiển của SM67
Nếu như các chế độ ngắt kiểu 19 hoặc 20 được khai báo cùng với việc tạoxung thì đối với dãy xung PTO, tín hiệu báo ngắt PLS0 hoặc PLS1 sẽ xuất hiện tạithời điểm sườn xuống của xung cuối cùng (trong nửa sau của chu kỳ cuối), còn đốivới dãy xung PWM tín hiệu báo ngắt xuất hiện tại thời điểm sườn lên của xung cuốicùng
Muốn tạo những xung có nhiều dạng khác nhau thì sử dụng chương trìnhngắt tương ứng để khai báo dạng xung mới
Thủ tục khai báo sử dụng hàm phát xung tốc độ cao tốt nhất là nên được thựchiện trong vòng quét đầu và bao gồm các bước sau:
- Ghi giá trị cho byte điều khiển
Trang 30- Nạp các giá trị về chu kỳ (độ rộng xung) và số xung của dãy vào những ônhớ tương ứng
- Khai báo sử dụng chế độ ngắt (nếu cần sử dụng)
Hình I.20 Giản đồ xung kiểu PTO
Ta thực hiện chương trình như sau:
Reset Q0.0 ở chu kì quét đầu
Gọi chương trình con SBR_0
Trang 31Định dạng SMB67 = 16#8D : Địnhdạng xung tốc độ cao ở ngõ ra Q0.0.
Thời gian cơ sở là 1ms/cycle,chophép Load số xung và chu kì thời gianNạp chu kì thời gian là 500 x 1ms =500ms
Trang 32Khi số xung phát ra bằng 4, chương trìnhngắt INT_0 được thực thi.
Nếu thời gian cơ sở =500ms,thì chuyểnsang 1000ms rồi cho phát xung trở lại
Quay trở lại chương trình chính
Nếu thời gian cơ sở là 1000 ms thìchuyển sang 500 ms
Cho phép xuất xung trở lại ra Q0.0
Hình I.21 Chương trình điều rộng xung nhanh kiểu PTO
Ví dụ 1: Thực hiện việc điều rộng xung nhanh kiểu PWM theo giản đồ tại
ngõ ra Q0.0:
Trang 33Ta thực hiện chương trình như sau:
Reset Q0.1 ở đầu chương trình
Gọi chương trình con SBR_0
Khi có M0.0 gọi chương trìnhcon SBR_1 để thay đổi độ rộngxung
SMB77 = 16#DB : Định dạng ngõ raxung Q0.1, thời gian cơ sở 1ms/cyclecho phép Load độ rộng xung cũng nhưchu kì thời gian
SMW10000: chu kỳ thời gian là
10000 x 1ms = 10000 ms
SMW80 = 1000 Độ rộng xung là 1000ms
Phát xung tốc độ cao ở ngõ ra Q0.1
SMB77 =16#DA: Thời gian cơ bản 1ms,chỉ cho phép Load độ rộng xung on
Trang 34Load lại xung 500 ms khi có tín hiệu M0.0
Cho phép xuất xung nhanh ngõ ra Q0.1
Hình I.23 Chương trình điều rộng xung nhanh kiểu PWM
I.1.5.3 Sử dụng bộ đếm tốc độ cao
Bộ đếm tốc độ cao được sử dụng để theo dõi và điều khiển các quá trình cótốc độ cao mà PLC không thể khống chế được đo bị hạn chế về thời gian của vòngquét
Nguyên tắc họat động của các bộ đếm tốc độ cao cũng tương tự như bộ đếmthông thường khác của PLC tức là cũng đếm theo cạnh sườn lên của xung Số đếmđược được lưu trong một ô nhớ đặc biệt kiểu Double Word (DW) với ký hiệu là CV(Current Value) Khi giá trị của bộ đếm tức thời bằng với giá trị đặt trước thì bộđếm phát ra một tín hiệu ngắt Giá trị đặt trước là một số nguyên 32 bits cũng đượclưu trong 1 ô nhớ kiểu DW
Nếu chế độ ngắt vào/ra với bộ đếm tốc độ cao được khai báo sử dụng, các tínhiệu ngắt sau đây sẽ được phát
- Ngắt khi PC = CV (đối với HSC0, HSC1, HSC2)
- Ngắt khi có tín hiệu báo thay đổi hướng đếm từ cổng vào (đối với HSC1 và
Trang 35Mỗi bộ đếm có nhiều chế độ làm việc khác nhau Chọn chế độ làm việc chomột bộ đếm hoạt động bằng lệnh HDEF Từng chế độ làm việc lại có kiểu hoạtđộng khác nhau Kiểu hoạt động của mỗi bộ đếm được xác định bằng nội dung củamột byte điều khiển trong vùng nhớ đặc biệt sau đó được khai báo bằng lệnh HSC.
Chỉ có thể kích bộ đếm sau khi đã khai báo chế độ làm việc và định nghĩakiểu hoạt động cho từng chế độ trong byte điều khiển
Trang 36I.2 Đại cương về WinCC
I.2.1 Giới thiệu WinCC
WinCC (Windows Control Center) là phần mềm tích hợp giao diện ngườimáy IHMI (Integrated Human Machine Interface) đầu tiên cho phép kết hợp phầnmềm điều khiển với quá trình tự động hoá Những thành phần dễ sữ dụng củaWinCC giúp tích hợp những ứng dụng mới hoặc có sẵn mà không gặp bất kì trởngại nào
Đặc biệt, với WinCC, người sử dụng có thể tạo ra một giao diện điều khiểngiúp quan sát mọi hoạt động của quá trình tự động hoá một cách dễ dàng Phầnmềm này có thể trao đổi dữ liệu trực tiếp với nhiều loại PLC của các hãng khácnhau như Siemens, Mitsubishi, Allen Bradley, v.v , nhưng nó đặc biệt truyềnthông rất tốt với PLC của hãng Siemens Nó được cài đặt trên máy tính và giao tiếpvới PLC thông qua cổng COM1 hoặc COM2 (chuẩn RS-232) của máy tính Do đó,cần phải có một bộ chuyển đổi từ chuẩn RS-232 sang chuẩn RS 485 của PLC
WinCC là hệ thống trung tâm về công nghệ và kỹ thuật được dùng để điềuhành các nhiệm vụ của màn hình hiển thị và hệ thống điều khiển trong tự động hóasản xuất và quá trình Hệ thống này cung cấp các module chức năng thích ứng trongcông nghiệp về: hiển thị hình ảnh, thông điệp, lưu trữ và báo cáo Giao diện điềukhiển mạnh, việc truy cập hình ảnh nhanh chóng, và chức năng lưu trữ an toàn của
nó đảm bảo tính hữu dụng cao
Ngoài khả năng thích ứng cho việc xây dựng các hệ thống có qui mô lớn nhỏkhác nhau, WinCC còn có thể dễ dàng tích hợp với những ứng dụng có qui mô toàncông ty như việc tích hợp với những hệ thống cấp cao như MES (ManufacturingExcution System – Hệ thống quản lý việc thực hiện sản xuất) và ERP (EnterpriseResource Planning) WinCC cũng có thể sử dụng trên cơ sở qui mô toàn cầu nhờ hệthống trợ giúp của Siemens có mặt trên khắp thế giới
Trang 37I.2.2 Nội dung của Control Center (Bộ điều khiển trung tâm)
I.2.2.1 Chức năng của Control Center
Control Center đặc trưng cho lớp cao nhất trong hệ thống WinCC Tất cả cácmodule của toàn bộ hệ thống WinCC đều được bắt đầu từ đây
Control Center chứa tất cả các chức năng quản lý cho toàn hệ thống WinCC.Trong Control Center, ta có thể đặt cấu hình và khởi động module run-time
I.2.2.2 Cấu trúc của Control Center
Bao gồm 3 module chức năng chính sau:
Computer (Máy tính): Tên và kiểu máy tính (Server hay Client).
Tag management (Quản lý dữ liệu): Cung cấp ảnh quá trình với các giá trị
của tag Truyền dữ liệu mà quản lý dữ liệu đã nhận từ các hệ thống tự động Baogồm: tên tag, kiểu dữ liệu, kết nối, kênh, …
Editor (Soạn thảo): dùng để soạn thảo và điều khiển một project hoàn
chỉnh Các bộ soạn thảo chính trong Control Center như sau
Graphics Designer (Thiết kế đồ họa): Cung cấp các màn hình hiển thị và kết
nối đến các quá trình
Alarm Logging (Báo động): Nhận các thông báo từ các quá trình để chuẩn
bị, hiển thị, hồi đáp, và lưu trữ các thông báo này
Tag Logging: Xử lý các giá trị đo lường và lưu trữ chúng trong thời gian dài Report Designer (Báo cáo): Cung cấp hệ thống báo cáo được tích hợp mà ta
có thể sử dụng để báo cáo dữ liệu, các giá trị quá trình hiện hành và đã lưu trữ, cácthông báo hiện hành và đã lưu trữ, hệ thống tài liệu của chính người sử dụng
Global Scripts (Viết chương trình): Cho phép ta tạo các dự án động tùy
thuộc vào từng yêu cầu đặc biệt Bộ soạn thảo này cho phép ta tạo các hàm C,VBScript và các thao tác có thể được sử dụng trong một hay nhiều project tùy theokiểu của chúng
Trang 38I.2.2.3 Các thành phần soạn thảo
Editor dùng để soạn thảo và điều khiển một project hoàn chỉnh Các bộ soạnthảo trong Control Center gồm
Chương trình soạn thảo Giải thích
đã lưu trữ, hệ thống tài liệu của chính người sử dụng
Global Scripts
(Viết chương trình)
Cho phép ta tạo các dự án động tùy thuộc vào từngyêu cầu đặc biệt Bộ soạn thảo này cho phép ta tạocác hàm C và các thao tác có thể được sử dụng trongmột hay nhiều projects tùy theo kiểu của chúng
Tag Logging Xử lý các giá trị đo lường và lưu trữ chúng trong thời
Trang 39Hình I.24 Giao diện của WinCC Explorer
I.2.2.4 Các thành phần của project trong Control Center.
Client: Cũng được định nghĩa như một workstation Control
Center được tải cục bộ trong từng máy tính loại này
Trang 40I.2.2.4.2 Quản lý tag
Thành phần này có nhiều mục con như: các bộ điều khiển truyền thông đểquản lý các tag quá trình, các tag nội, các kết nối logic và các nhóm tag
Hình I.25 Quản lý Tag trong WinCC
Các bộ điều khiển truyền thông:
Bộ điều khiển truyền thông là giao diện giữa một hệ thống PLC và WinCC
Hệ thống WinCC chứa các bộ điều khiển truyền thông trong Kênh DLL và Bộ điềukhiển truyền thông
Các kiểu điều khiển truyền thông như: Modbus Protocol Suite.chn,Mitsubishi FX.CHN, Profibus DP.CHN, Modbus serial.CHN, SIMATIC S7Protocol Suite.CHN, SIMATIC S5 ETHERNET TF.CHN…