A. PHẦN LÝ THUYẾT:
1) Cấu trúc cửa sổ WinCC flexible Advanced:
Không gian cửa sổ WinCC flexible Advanced được chia ra thành các phần sau: - Thanh công cụ (Tools bar): chứa các công cụ thường dùng như save, cut, copy...
- Vùng làm việc: Mỗi đối tượng có 1 vùng soạn thảo của chính nó, được gọi là vùng làm việc.
Trang 70
- Cửa sổ project (chứa project tree): Đối tượng đơn có thể tìm thấy trong cửa sổ project, khi nhấp đôi vào 1 đối tượng trong cửa sổ project thì vùng soạn thảo của đối tượng được mở. Nếu ta mở nhiều đối tượng cùng lúc thì tên các đối tượng sẽ hiện trên thanh tab của vùng soạn thảo, nhấp vào tên này thì vùng soạn thảo của đối tượng sẽ hiện ra. Trong cửa sổ project ta có thể truy cập tất cả dữ liệu project và có thể nhìn thấy tất cả sự trợ giúp bởi thiết bị được lựa chọn. Một project trong WinCC flexible có thể chứa các thiết bị khác nhau, số liệu tiêu chuẩn thiết bị là tất cả tags, screen, logs, … tùy thuộc vào đặc trưng thiết bị.
- Cửa sổ công cụ: Vùng soạn thảo của đối tượng nào được hiển thị thì trong cửa sổ cơng cụ sẽ hiện lên các công cụ tương ứng của đối tượng đó. Cửa sổ cơng cụ chứa nhiều cơng cụ khác nhau của đối tượng:
+ Simple Objects: Ở đây bạn tìm thấy các đối tượng tĩnh thơng thường (đường thẳng hay hình trịn) và các đối tượng thơng thường cho các tương tác (các nút nhấn hay IO fields)
+ Enhanced Objects: Ở đây bạn tìm thấy các đối tượng phức tạp hơn có thểđược đặt trên màn hình, như thanh trượt, hiển thị báo động hay hiển thị công thức.
+ Library: Chứa các thư viện khác nhau được cài đặt sẵn cho đồ họa và các đối tượng. Vùng làm việc Project tree (Cây project) Cửa sổ ngỏ ra (Output window) Cửa sổ thuộc tính (Property window) Cửa sổ công cụ (Tools window)
Cửa sổ đối tượng (Object window)
Thanh công cụ
Trang 71
- Cửa sổ thuộc tính: Khi nhấp chọn 1 đối trên vùng soạn thảo thì cửa sổ thuộc tính sẽ biểu thuộc tính của đối tượng được chọn. Ở đây ta có thể thay đổi và định nghĩa chúng. Thuộc tính của 1 đối tượng chia ra thành 4 thông số khác nhau:
+ General: Ở đây ta có thể thiết lập thuộc tính trung tâm của 1 đối tượng giống như tag kết nối của 1 IO – field hay chế độ của nút nhấn.
+ Properties: Ở đây ta thiết lập tĩnh 1 đối tượng: font, vị trí của đối tượng, màu của đối tượng…
+ Animations: Ở đây ta có thể định nghĩa trạng thái của 1 đối tượng trong suốt quá trình runtime, tùy thuộc giá trị của tag.
+ Events: Định nghĩa nhiệm vụ 1 đối tượng (ví dụ nút nhấn) được biểu diễn khi tương tác với đối tượng.
Cửa sổ này có thể được mở bằng cách double click trên đối tượng hay qua menu “View -> Properties”
- Cửa sổ ngỏ ra (Output Window): chỉ ra các tin nhắn chẩn đốn, ví dụ lỗi khi biên dịch project.
Trong cửa sổ project ta có thể truy cập tất cả dữ liệu project. Bạn có thể nhìn thấy tất cả sự trợ giúp bởi thiết bịđược lựa chọn.
- Cửa sổ đối tượng (Object Window): Thường biểu diễn đối tượng, đó là thư mục được chọn trong khung chứa project . Với cửa sổ này, ta có thể biểu diễn kéo và thả các tác vụ làm cho thiết kế project dễ dàng hơn. Kéo và thả các tác vụ được chấp nhận như sau:
+ Kéo và thả tag trên màn hình:
+ Tạo 1 IO –field được kết nối đến tag. + Kéo và thả tag trên IO – field đã tồn tại: + Kết nối tag với IO – field.
+ Kéo và thả màn hình đến màn hình khác:
+ Tạo 1 nút nhấn với trường hợp màn hình thay đổi.
Tất cả các thành phần trên đều có thể được đóng mở bằng cách vào menu View.
2) Lập trình bằng PLC S7-300:
Để có thể kết nối PLC với màn hình cảm ứng và điều khiển PLC thơng qua màn hình cảm biến thì việc trước tiên ta phải lập trình cho PLC. Các bước lập trình cho PLC đã được hướng dẫn trong giáo trình PLC cơ bản, ở đây ta sẽ lấy 1 vài bài tập cụ thể làm thí dụ để đi vào phần thiết kế màn hình cảm ứng.
Thí dụ: Viết chương trình điều khiển ON/OFF cho một động cơ theo yêu cầu sau: nhấn ON thì động cơ chạy, nhấn OFF thì động cơ dừng.
- Nếu lập trình PLC để điều khiển bằng các nút nhấn thì các ngỏ vào phải được kết nối đến các module của PLC (module CPU hoặc các module ngỏ vào mở rộng) nên địa chỉ ngỏ vào phải được xác định tại vùng dữ liệu I (vùng bộ đệm cổng vào số) và các ngỏ ra thuộc vùng dữ liệu Q. Chương trình có thể được viết như sau:
Trang 72
- Trong trường hợp dùng màn hình cảm biến để điều khiển thì ngỏ ra vẫn xuất hiện trên các module của PLC nên ta vẫn xác định nó thuộc vùng dữ liệu Q, tuy nhiên các ngỏ vào thì nhận tín hiệu từ màn hình HMI (chứ khơng phải từ bất cứ ngỏ vào nào trên các module của PLC) nên ta không thể truy cập địa chỉ đến vùng dữ liệu I mà phải truy cập đến vùng nhớ nội M (miền nhớ các biến cờ). Do đó, chương trình được thay đổi như sau:
Các ngỏ vào ON, OFF được tác động từ màn hình HMI nên phải lấy địa chỉ là M0.0, M0.1. Các ngỏ vào này không được tác động bằng các nút nhấn cơ khí nên nó khơng tự nhả tiếp điểm sau khi nhấn mà nó tương tự như các SW chuyển mạch nên ta không cần dùng tiếp điểm duy trì.
- Nếu ta muốn lập trình để điều khiển trong cả 2 trường hợp: bằng các nút nhấn và màn hình HMI thì ta tích hợp 2 chương trình trên:
Đây chính là chương trình viết cho hệ thống điều khiển 2 nơi (trên PLC và trên màn hình HMI). Điểm khác biệt so với chương trình điều khiển 2 nơi trước đây ta
Trang 73
thường viết là ở chương trình này, các ngỏ vào vừa truy cập đến miền dữ liệu I, vừa truy cập đến miền các biến cờ M. Tiếp điểm duy trì chỉ có tác dụng khi ta điều khiển bằng các nút nhấn.
Sau khi lập trình trên phần mền S7-300, ta cho hệ thống mô phỏng để đảm bảo chương trình chạy đúng. Các bước mơ phỏng đã được hướng dẫn ở giáo trình "PLC cơ bản" nên khơng nhắc lại ở đây.
3) Thiết kế màn hình HMIbằng WinCC flexible:
Để thiết kế các ngỏ vào, ra trên màn hình HMI TP177A ta lần lượt thực hiện các bước sau:
* Bước 1: Viết chương trình trên PLC S7-300: bước này có thể được thực hiện sau khi thiết kế xong màn hình, tuy nhiên ở đây ta nên thực hiện trước để có sự thống nhất từ đầu đến cuối về tên, địa chỉ của các ngỏ vào ra.
* Bước 2: Mở chương trình, khởi tạo project. Quá trình này trãi qua 10 bước như đã hướng dẫn ở phần I, mục c. Sau khi khởi tạo project, ta lưu với tên "DIEU KHIEN ON OFF” và được giao diện như sau:
Các vùng không sử dụng như Object window, Output window đã được đóng lại để mở rộng vùng soạn thảo, đồng thời phần template cũng bỏ đi bằng cách nhấn vào vị trí "Use template”.
* Bước 3: Khởi tạo và cấu hình cho các tag:
- Bên trái màn hình, trong cửa sổ project, ta nhấp vào Device_1(TP 177A6")/Communication/Tags, vùng làm việc của Tags hiện ra như sau:
Trang 74
- Ta có thể hiểu Tag như một tên nhãn ta cần phải gán cho 1 đối tượng nào đó nhằm dễ dàng cho việc quản lý chương trình. Nhãn này thường được gán cho các địa chỉ vào, ra. Mỗi tag gồm có các thành phần sau:
+ Name: Tên của đối tượng được người lập trình đặt tùy ý, nhằm mục đích gợi nhớ nhưng khơng được trùng với các đối tượng khác. Cột này ta nên đặt tên trùng khớp với tên đã đặt khi lập trình với PLC S7-300. Thí dụ: với chương trình điều khiển ON/OFF như trên, ta đã lập trình trên S7-300 và đặt tên cho địa chỉ M0.0 là OFF thì ở đây ta cũng chọn tên là "OFF"cho địa chỉ này.
+ Connection: Thể hiện mối liên hệ với PLC. Đối với các tag bên ngoài, ta phải xác định cấu hình PLC mà màn hình kết nối đến vì các tag này tương ứng với các vùng nhớ trong PLC. Tùy theo cấu hình PLC mà ta có kiểu dữ liệu và địa chỉ tag phù hợp. Ngồi ra, ta cịn phải xác định tần xuất cập nhật cho tag. Tương ứng với phần lập trình bên trên, ta chọn cột này là "Connection_1" (tương ứng với PLC S7-300/400 mà ta đã chọn trong quá trình khởi tạo project)
+ Data type: Xác định kiểu dữ liệu của đối tượng, kiểu dữ liệu cho biết vị trí mà đối tương được lưu trong bộ nhớ và tầm giá trị của đối tượng. Với địa chỉ đã xác định trong phần lập trình trên, ta phải chọn kiểu dữ liệu tương ứng là "Bool" cho nút nhấn OFF như hình sau:
Trang 75
+ Address: Địa chỉ của đối tượng, địa chỉ này nhất thiết phải trùng khớp với địa chỉ mà ta đã xác định khi lập trình trên PLC. Do đó phải thiết lập là M0.0 cho nút nhấn OFF. Sau khi chọn vùng nhớ M và địa chỉ byte, địa chỉ bit đều là 0, ta nhấp vào dấu check (góc dưới, bên phải hộp thoại) để xác nhận thì việc thiết lập địa chỉ mới thực thi xong.
+ Array elements: Ta có thể tập hợp các tag cùng kiểu lại với nhau và chúng được lưu ở các vùng nhớ liền kề nhau. Việc này thường được thực hiện khi ta làm việc với số lượng lớn các dữ liệu cùng kiểu. Để đơn giản ta không định dạng cho cột này và chương trình mặc định cột này là 1.
+ Acquisition cycle: Đây là chu kỳ để 1 đối tượng được đọc giá trị từ PLC và cập nhật lên HMI. Ta có thể chọn lại chu kỳ này tương tự như cách xác định địa chỉ (thông thường ta chọn 100ms).
+ Comment: Ta có thể thêm vào mục này các chú thích nhằm cung cấp thêm thơng tin về đối tượng.
Sau khi tag xong cho 1 đối tượng, ta được giao diện như hình trên. Ở đây cửa sổ property lúc này trở thành OFF (Tag) và nó thể hiện đầy đủ các đặc tính mà ta đã gán
Chọn vùng nhớ Địa chỉ byte Địa chỉ bit Xác nhận địa chỉ
Trang 76
cho đối tượng. Ta cũng có thể thay đổi, hiệu chỉnh các đặt tính này trong vùng property.
Các đối tượng còn lại được tag tương tự như trên. * Bước 4: Thiết kế màn hình HMI:
Sau khi tag cho toàn bộ các đối tượng, ta trở lại vùng làm việc của màn hình HMI và bắt đầu thiết kế cho giao diện màn hình. Với các chương trình đơn giản thì trong cửa sổ cơng cụ (tools window) ta chọn thư viện simple object. Trong thư viện này có đường thẳng, hình vng, hình trịn…, tùy theo ứng dụng cụ thể mà ta chọn công cụ phù hợp. Việc chọn 1 công cụ lúc này đôi khi chưa quyết định được tính chất của 1 đối tượng mà cịn tùy thuộc vào việc cấu hình cho đối tượng sau đó. Việc thiết kế, bố trí 1 đối tượng được thực hiện như sau:
- Nhấp chọn đối tượng trong tools window.
- Rê chuộc sang màn hình HMI, nhấp chuộc nơi muốn bố trí đối tượng. * Bước 5: Hiệu chỉnh, cấu hình cho đối tượng:
Khi 1 đối tượng được chọn thì vùng property của nó hiện ra bên dưới và ta chỉ cấu hình cho từng đối tượng riêng lẻ. Các cơng cụ lấy từ tools window có một số đặt tính chung, tuy nhiên một số đối tượng cũng có thêm các tính chất khác mà các đối tượng khác khơng có. Ta sẽ lần lượt xem xét các tính chất trong vùng property:
- General: Phần này thể hiện các tính chất chung của 1 đối tượng. Có một số đối tượng khơng có tính chất general như các hình trịn, elip, hình vng.
- Properties chứa các tính chất sau:
+ Appearance: cho phép ta khai báo, chỉnh sửa các đặc tính liên quan đến hình dạng của đối tượng như: màu viền, màu nền, kích thước đường viền…
+ Layout: cho ta khai báo tọa độ, kich thước của đối tượng.
+ Text: Tính chất này chỉ có ở những cơng cụ có nhãn, ở đây ta được phép chọn font chữ, vị trí chữ.
- Animations: tính chất này cho ta cài đặt giá trị, màu nền ứng với giá trị, tọa độ…của đối tượng.
- Events: cài đặt các tác động mà ta sẽ thực hiện khi điều khiển hệ thống.
Việc cài đặt các tính chất cho 1 đối tượng sẽ được hướng dẫn khi vào thí dụ cụ thể.
* Bước 6: Mơ phỏng chương trình: - Lưu chương trình.
- Kiểm tra chương trình: Nhấp chuột vào chức năng kiểm tra tính nhất quán của project trước khi cho chương trình chạy mơ phỏng. Sau một khoảng thời gian chờ, nếu chương trình khơng có lỗi thì cửa sổ output sẽ hiện dịng thơng báo “chương trình xẽ hiện lên dịng “compiling finished”
Trang 77
- Chạy mơ phỏng chương trình:
+ Mở chương trình PLC S7-300 và chức năng mơ phỏng của nó.
+ Nhấp vào biểu tượng Start runtime system của phần mềm WinCC flexible để chạy mô phỏng chương trình:
B. PHẦN THỰC HÀNH:
Viết chương trình điều khiển ON/OFF cho một động cơ bằng màn hình TP 177A theo yêu cầu sau: nhấn ON thì động cơ chạy, nhấn OFF thì động cơ dừng.
* Các bước thực hiện:
- Bước 1: Lập trình bằng PLC S7-300: chương trình được viết trên phần mềm S7-300 được thể hiện trên hình, ở đây ta chỉ dùng chương trình được diều khiển bằng HMI mà không dùng đến các ngỏ vào trên PLC.
- Bước 2: Khởi tạo Project trong WinCC Flexible, đặt tên là "MACH ON OFF". - Bước 3: Khởi tạo và cấu hình cho các tag:
+ Chọn Device_1(TP 177A6")/Communication/Tags, vùng làm việc của tag hiện ra.
Trang 78
Trong cùng làm việc của Tags, ta cài đặt tên, kiểu dữ liệu và địa chỉ sao cho tương thích với chương trình PLC.
- Bước 4: Thiết kế màn hình HMI, trên thanh tab ta chọn Star screen để trở lại màn hình HMI:
+ Chọn cơng cụ Button trong tools window để thiết kế cho nút nhấn ON và OFF: Nhấp vào công cụ Button, kéo chuột qua màn hình HMI, nhấp chuột ở nơi muốn bố trí nút nhấn. Khi nhấp chọn nút nhấn nào thì vùng properties của nó hiện ra tương ứng bên dước, ta sẽ khai báo các tính chất cho từng nút nhấn.
+ Chọn hình trịn cho ngỏ ra (động cơ): Ta có thể chọn hình vng hoặc elip tùy ý, các cơng cụ này chỉ có tính chất Properties và Animation.
- Bước 5: Hiệu chỉnh, cấu hình cho đối tượng: - Cấu hình cho các nút nhấn:
+ Trong vùng property, ở tính chất general ta nhấp vào khung Text OFF để đặt tên cho nút nhấn.
+ Đối với nút nhấn OFF: ở tính chất Event, chọn "Press" (vì đây là tác động "nhấn"), bên phải hiện lên vùng "Function List". Trong "Function List", ta có thể xác định chức năng cho một đối tượng (đối tượng cụ thể trong trường hợp này là nút nhấn), mỗi đối tượng có thể mang nhiều chức năng khác nhau, mỗi chức năng được khai báo bằng 2 thông số: thông số thứ nhất (khai báo trên dòng đầu) thể hiện trạng thái logic khi bị tác động, thơng số thứ hai (khai báo ở dịng tiếp theo) xác định địa chỉ ô nhớ mà đối tượng tác động đến. Đối với nút OFF, ta chọn Edit bits/Setbit cho dịng thứ nhất như hình sau:
Nhấp vào để đặt
Trang 79
Ở dịng kế tiếp, ta cài đặt giá trị: chọn M0.0 cho nút nhấn OFF như hình sau:
Như vậy, khi tác động nút nhấn "OFF" thì bit M0.0 được set lên mức 1 nên tiếp điểm thường đóng được mở ra.
+ Đối với nút nhấn ON: ở tính chất Event, ta cũng thực hiện thao tác tương tự như trên: chọn Edit bits/Setbit cho dòng thứ nhất, chọn M0.1 cho dòng kế tiếp. Như