Vùng nhớ, kiểu dữ liệu và địa chỉ trong PLC S7-1200

Một phần của tài liệu Thiết kế mô hình giám sát và điều khiển hệ thống chiết rót và đóng nắp sử dụng PLC s7 1200 (Trang 61)

4.4.1. Vùng nhớ chương trình PLC S7-1200

CPU hỗ trợ những vùng nhớ để lưu trữ chương trình người dùng, dữ liệu và cấu hình hệ thống như sau:

✓ Load memory: Không mất đi ( non – volatile ) và được sử dụng để lưu trữ chương trình người dùng, dữ liệu và cấu hình PLC. Khi một project được download xuống PLC, nó được lưu đầu tiên tại vùng nhớ Load memory. Vùng nhớ này nằm trong thể nhớ MMC (nếu có) hoặc nằm trên CPU. Người dùng có thể tăng dung lượng vùng nhớ bằng thẻ MMC.

✓ Work memory: Vùng nhớ sẽ bị mất dữ liệu khi CPU mất điện. Trong quá trình hoạt động, CPU có thể copy một số phần, chức năng của project từ vùng nhớ Load memory sang vùng nhớ Work memory để thực hiện.

✓ Retentive memory: là vùng nhớ được sử dụng để lưu trữ lại những dữ liệu cần thiết, mong muốn khi CPU mất điện hoàn toàn.

4.4.2. Thẻ nhớ MWC

Một lựa chọn khác để lưu trữ chương trình người dùng giống như những vùng nhớ được nói ở trên, đó là sử dụng Simatic MMC để lưu trữ chương trình người

dùng hoặc transfer chương trình người dùng. Nếu người dùng sử dụng thẻ nhớ MMC, CPU sẽ chạy chương trình từ thẻ nhớ chứ không phải trên vùng nhớ của CPU.

Thẻ nhớ Simatic MMC được sử dụng như một thẻ nhớ chương trình, một thẻ transfer, lưu trữ dữ liệu data log hoặc sử dụng để nâng cấp firmware cho CPU.

✓ Khi muốn download chương trình xuống nhiều CPU giống nhau và cùng một project. Việc sử dụng phần mềm làm tốn kém thời gian … thì việc sử dụng simatic MMC với chức năng là thẻ transfer giúp cho hiệu quả hơn rất nhiều. Người dùng chỉ cần cắm thẻ nhớ MMC và đợi transfer xong và lấy thẻ nhớ ra.

✓ Dùng thẻ nhớ với chức năng thẻ nhớ chương trình thì tất cả những chức năng CPU hoạt động sẽ được load từ thẻ nhớ.

✓ Mgoài ra, thẻ MMC cũng có thể sử dụng để lưu trữ thông tin về data log, mở rộng vùng nhớ lưu trữ cho Web server, hoặc có thể sử dụng để nâng cấp firmware cho CPU ( Ví dụ từ V1.0 lên V2.0, V2.0 lên V2.3 … ).

Chương IV: Tổng Quan Về PLC S7-1200 50

Bảng 4.3. Kiểu dữ liệu của PLC S7-1200

Ghi chú: (*) BCD không phải kiểu dữ liệu, tuy nhiên được đưa vào vì liên quan tới việc đến việc chuyển đổi dữ liệu sau này.

4.4.4. Vùng nhớ địa chỉ

Step 7 Basic V1x của Tia Portal hỗ trợ cho việc lập trình bằng tag nhớ (Symbolic). Người dùng có thể tạo tag nhớ hay Symbolic (tên gợi nhớ) cho các địa chỉ dữ liệu cần dùng, không phân biệt vùng nhớ toàn cục (global) hay vùng nhớ cục bộ (local).

Để truy xuất các Tag nhớ trong chương trình chỉ cần gọi tên của Tag cho các tham số của lệnh.

Để hiểu rõ hơn về cấu trúc CPU và địa chỉ vùng nhớ, chúng ta sẽ đi tìm hiểu sâu hơn về địa chỉ trực tiếp (absolute) là nền tảng cho việc sử dụng các Tag nhớ của PLC.

✓ Vùng nhớ toàn cục – Global memory: CPU cung cấp những vùng nhớ toàn cục như: I (input), Q(output), vùng nhớ nội M (memory). Những vùng nhớ toàn cục có thể được truy xuất ở tất cả các khối.

✓ Khối dữ liệu DB: Cũng là vùng nhớ toàn cục. Ngoài ra vùng nhớ DB nếu được sử dụng với chức năng Instance DB để lưu trữ chỉ định cho FB và cấu trúc bởi các tham số của FB.

✓ Vùng nhớ tạm – Temp ( hay vùng nhớ Local): Vùng dữ liệu cục bộ được sử dụng trong các khối chương trình OB, FC, FB. Vùng nhớ L được sử dụng cho các biến tạm (temp) và trao đổi dữ liệu của biến hình thức với những khối chương trình gọi nó. Nội dung của mộ khối dữ liệu trong miền nhớ này sẽ bị xóa khi kết thúc chương trình.

Vùng nhớ I, Q của PLC S7-1200 có thể truy xuất dưới dạng process image. Để có thể truy xuất trực tiếp và ngay lập tức với ngõ vào/ra vật lý, có thể them “:P”. Ví dụ như: I0.0:P, Q0.0:P.

Chương IV: Tổng Quan Về PLC S7-1200 52

Bảng 4.4. Bảng phân loại vùng nhớ PLC S7-1200.

4.5. Chế độ bảo mật của PLC S7-1200

Một số tính năng bảo mật giúp bảo vệ truy cập vào CPU và chương trình điều khiển.

4.5.1. Chế độ bảo mật về quyền truy cập vào CPU và khối hàm

CPU cung cấp các cấp độ bảo mật để hạn chế truy cập vào các chức năng cụ thể. Khi người dùng cấu hình mức độ bảo mật và mật khẩu cho CPU, người dùng có thể giới hạn các chức năng và vùng nhớ truy cập mà không dùng tới mật khẩu.

Mỗi cấp độ cho phép những chức năng nhất định để có thể truy cập mà không cần mật khẩu. Chế độ mặc định của CPU là được toàn quyền truy cập và không có mật khẩu bảo vệ. Để hạn chế quyền truy cập vào CPU, người dùng cần cấu hình thuộc tính “Protection” và mật khẩu bảo mật.

Mật khẩu bảo vệ không áp dụng cho chương trình sử dụng các chức năng về chuyền thông. Truyền thông PLC – PLC (sử dụng những tập lệnh truyền thông với các khối hàm) không bị giới hạn bởi các chế độ bảo mật trong CPU.

Bảng 4.5. Mức độ bảo mật của CPU.

Để cấu hình cho chế độ bảo mật và đặt mật khẩu, người dùng có thể thực hiện theo các bước sau: Device configuration → Chọn CPU → Properties → Protection và lựa chế độ bảo mật muốn dùng và đánh mật khẩu (password) sử dụng vào.

4.5.1. Chế độ Know – How Protection

Chế độ Know – how protection cho phép người dùng ngăn chặn những truy cập trái phép vào các khối hàm, khối tổ chức OB, FB, FC, DB. Người dùng có thể tạo những password riêng lẻ để giới hạn truy cập tới các khối hàm. Nếu không có password thì người dùng chỉ có thể đọc những thông tin như sau:

✓ Tiêu đề khối, comment, và thuộc tính của khối hàm.

✓ Thông tin về các tham số vào/ra (IN, OUT, IN_OUT, Return)

✓ Cấu trúc của chương trình

✓ Tag toàn cục trong cross references, tuy nhiên các tag cục bộ sẽ bị ẩn không quan sát được

Chương IV: Tổng Quan Về PLC S7-1200 54 Để cấu hình cho chế độ Know – how protection, người dùng có thể thực hiện theo các bước sau: Chọn block nào muốn bảo mật → Properties → Protection → Protection → Define và nhập password muốn đặt.

4.5.2. Chế độ Copy Protection

Thêm một tính năng về bảo mật cho phép người dùng ẩn (blind) các khối chương trình sử dụng vào thẻ nhớ hoặc CPU. Tính năng này đặc biệt hữu ích cho việc bảo vệ sở hữu trí tuệ của người lập trình. Chức năng Copy Protection có thể áp dụng cho các khối OB, FB và FC.

Để cấu hình cho chế độ Copy Protection, người dùng có thể thực hiện theo các bước sau: Chọn block nào muốn bảo mật → Properties → protection → Copy Protection. Chọn chế độ ẩn vào thẻ nhớ hoặc CPU.

Sau đó chọn chế độ Copy Protection và nhập số serial của thẻ nhớ và CPU khi download xuống CPU hoặc thẻ nhớ.

Chú ý: Chế độ bảo mật/password là chế độ nhạy cảm do đó người dùng cần chú ý khi sử dụng những chế độ này.

4.6. Ngôn ngữ lập trình

Với dòng sản phẩm PLC S7-1200 ứng dụng cho hệ thống nhỏ và vừa, Siemens phát triển và ưu tiên hỗ trợ cho 3 ngôn ngữ lập trình chính, đó là: LAD, FBD và SCL.

✓ LAD – Ladder: Đây là ngôn ngữ lập trình dựa theo sơ đồ mạch. Nó đơn giản, dễ hiểu, dễ chỉnh sửa và tiện lợi.

✓ FBD – Function Block Diagram: Đây là ngôn ngữ lập trình dựa theo đại số Bool.

✓ SCL – Structure Language Control: Đây là ngôn ngữ lập trình theo dạng text và là ngôn ngữ trình cấp cao sử dụng dựa trên nền Pascal phát triển. Ngôn ngữ lập trình SCL có thể coi là ngôn ngữ hướng tới đối tượng cho PLC, vì nó gần gũi với tư duy người dùng.

Khi viết code cho một khối hàm nào đó ( OB, FB, FC ) thì người dùng có thể sử dụng 1 trong 3 ngôn ngữ trên để có thể lập trình.

Chương IV: Tổng Quan Về PLC S7-1200 56

4.7. Cấu trúc lập trình

4.7.1. Khối tổ chức OB – Oganization Blocks

Organization blocks (OBs): là giao diện giữa hoạt động hệ thống và chương trình người dùng. Chúng được gọi ra bởi hệ thống hoạt động, và điều khiển theo quá trình:

✓ Xử lý chương trình theo quá trình.

✓ Báo động – kiểm soát xử lý chương trình.

✓ Xử lý lỗi.

Startup OB, Cycle OB, Timing Error OB và Diagnosis OB: có thể chèn và lập trình các khối này trong các project. Không cần phải gán các thông số cho chúng và cũng không cần gọi chúng trong chương trình chính.

Process Alarm OB và Time Interrupt OB: Các khối OB này phải được tham số hoá khi đưa vào chương trình. Ngoài ra, quá trình báo động OB có thể được gán cho

một sự kiện tại thời gian thực hiện bằng cách sử dụng các lệnh ATTACH, hoặc tách biệt với lệnh DETACH.

Time Delay Interrupt OB: OB ngắt thời gian trễ có thể được đưa vào dự án và lập trình. Ngoài ra, chúng phải được gọi trong chương trình với lệnh SRT_DINT, tham số là không cần thiết.

Start Information: Khi một số OB được bắt đầu, hệ điều hành đọc ra thông tin được thẩm định trong chương trình người dùng, điều này rất hữu ích cho việc chẩn đoán lỗi, cho dù thông tin được đọc ra được cung cấp trong các mô tả của các khối OB.

4.7.2. Hàm chức năng – Function

Funtions (FCs) là các khối mã không cần bộ nhớ. Dữ liệu của các biến tạm thời bị mất sau khi FC được xử lý. Các khối dữ liệu toàn cầu có thể được sử dụng để lưu trữ dữ liệu FC.

Functions có thể được sử dụng với mục đích

✓ Trả lại giá trị cho hàm chức năng được gọi.

✓ Thực hiện công nghệ chức năng, ví dụ: điều khiển riêng với các hoạt động nhị phân.

✓ Ngoài ra, FC có thể được gọi nhiều lần tại các thời điểm khác nhau trong một chương trình. Điều này tạo điều kiện cho lập trình chức năng lập đi lặp lại phức tạp.

FB (function block): đối với mỗi lần gọi, FB cần một khu vực nhớ. Khi một FB được gọi, một Data Block (DB) được gán với instance DB. Dữ liệu trong Instance DB sau đó truy cập vào các biến của FB. Các khu vực bộ nhớ khác nhau đã được gán cho một FB nếu nó đưược gọi ra nhiều lần.

DB (data block): DB thường để cung cấp bộ nhớ cho các biến dữ liệu. Có hai loại của khối dữ liệu DB: Global DBs nơi mà tất cả các OB, FB và FC có thể đọc được

Chương IV: Tổng Quan Về PLC S7-1200 58 dữ liệu lưu trữ, hoặc có thể tự mình ghi dữ liệu vào DB, và instance DB được gán cho một FB nhất định.

4.7.3. Lệnh CTRL_HSC (High Speed Counter)

Lệnh CTRL_HSC điều khiển các bộ đếm tốc độ cao được sử dụng để đếm các sự kiện xuất hiện nhanh hơn tốc độ thực thi OB. Tốc độ đếm của các lệnh bộ đếm CTU, CTD và CTUD bị giới hạn bởi tốc độ thực thi của OB mà chúng được chứa trong đó.

Một ứng dụng thông dụng của các bộ đếm tốc độ cao là đếm các xung được sinh ra bởi một máy phát xung có trục điều khiển chuyển động.

Các chi tiết thông số CTRL_HSC:

Nếu một cập nhật của một giá trị thông số không được yêu cầu, các giá trị ngõ vào tương ứng sẽ bị bỏ qua.

Thông số DIR chỉ có hợp lệ nếu mệnh lệnh đếm đã cấu hình được đặt về “User program (internal direction control)”. Ta xác định sử dụng thông số này trên cấu hình thiết bị HSC như thế nào.

Đối với một HSC S7 – 1200 trên CPU hay trên Signal Board, thông số BUSY luôn luôn mang giá trị là 0.

Các mã điều kiện: trong trường hợp có lỗi, ENO được đặt về 0 và ngõ ra STATUS chứa một mã điều kiện

Bảng 4.6. Giá trị trạng thái

CPU cho phép bạn cấu hình lên đến 6 bộ đếm tốc độ cao

Chương IV: Tổng Quan Về PLC S7-1200 60

4.7.4. Thông số Step motor

4.7.5. Giao tiếp

Giao tiếp PROFINET với:

- Các thiết bị lập trình. - Thiết bị HMI.

- Các bộ điều khiển SIMATIC khác.

Hỗ trợ giao thức kết nối:

- TCP/IP. - SIO-on-TCP.

- Giao tiếp với S7-1200.

4.7.6. Tổng quan về phần mềm

TIA portal V13 và Wincc

TIA portal V13

TIA Portal – phần mềm cơ sở tích hợp tất cả các phần mềm lập trình cho các hệ thống

Chương IV: Tổng Quan Về PLC S7-1200 62 phát triển, tích hợp các hệ thông tự động hóa một cách nhanh chóng, do giảm nhiều thời gian trong việc tích hợp, xây dựng tất cả các bộ điều khiển PLC, màn hình HMI, các bộ truyền động của Siemens đều được lập trình, cấu hình trên TIA portal. Việc này giúp giảm thời gian, công sưc trong việc thiết lập truyền thông giữa các thiết bị này. Ví dụ người sử dụng có thể sử dụng tính năng “kéo và thả” một biến trong chương trình điều khiển PLC và một màn hình của chương trình HMI. Biến này sẽ được gán vào chương trình HMI và sự kế nối giữa PLC – HMI đã được tự động thiết lập, không cần bất cứ sự cấu hình nào thêm.

Phần mềm mới Simatic Step 7 V13 tích hợp trên TIA Portal, để lập trình cho S7-1500, S7-1200, S7-300 và hệ thống tự động PC-based Simatic WinAC. Simatic Step 7 V13 được chia thành các module khác nhau, tùy theo nhu cầu của người sử dụng. Simatic Step 7 V13 cũng hỗ trợ tính năng chuyển đổi chương trình PLC, HMI đang sử dụng sang phương trình mới trên TIA Portal

Phần mềm mới Simatic WinCC V13, cũng được tích hợp trên TIA Portal, dung để làm cấu hình cho các màn hình TP và MP hiện tại, màn hình mới Comfort, cũng như để giám sát điều khiển hệ thống trên máy tính (SCADA)

WinCC professional

Phần mềm WinCC của Siemens là một phần mềm chuyên dụng để xây dựng giao diện điều khiển HMI (Human Machine Interface) cũng như phục vụ việc xử lý và lưu dữ liệu trong một hệ thống SCADA (Supervisory Control And Data Aquisition) thuộc chuyên ngành tự động hóa.

WinCC là chữ viết tắt của Windowns Control Center (Trung tâm điều khiển chạy trên nền Windows), nói cách khác nó cung cấp các công cụ phần mềm để thiết lập một giao diện điều khiển chạy trên các hệ điều hành của Microsoft như Windowns NT hay Windowns 2000, XP, Vista 32bit (Not SP1).

Phần mềm giao diện người máy với Simatic WinCC V13 bao gồm các phiên bản khác nhau:

✓ WinCC Basic lập trình cho Basic Panels.

✓ WinCC Comfort lập trình cho tất cả các dòng Simatic Panels.

✓ WinCC Advanced kết hợp WinCC Runtime Advanced hỗ trợ giám sát các hệ thống chạy trên nền máy tính cấp thiết bị như các Panel PC.

✓ WinCC Professional là phần mềm bao gồm tất cả các tính năng trên và sử dụng để lập trình SCADA.

Chương IV: Tổng Quan Về PLC S7-1200 64

Visual Studio 2017

Microsoft Visual Studio là một môi trường phát triển tích hợp (IDE) từ Microsoft. Nó được sử dụng để phát triển chương trình máy tính cho Microsoft Windows, cũng như các trang web, các ứng dụng web và các dịch vụ web. Visual Studio sử dụng nền tảng phát triển phần mềm của Microsoft như Windows API, Windows Forms, Windows Presentation Foundation, Windows Store và Microsoft Silverlight. Nó có thể sản xuất cả hai ngôn ngữ máy và mã số quản lý.

Visual Studio bao gồm một trình soạn thảo mã hỗ trợ IntelliSense cũng như cải tiến mã nguồn. Nó chấp nhận các plug-in nâng cao các chức năng ở hầu hết các cấp bao gồm thêm hỗ trợ cho các hệ thống quản lý phiên bản (như Subversion) và bổ sung thêm bộ công cụ mới như biên tập và thiết kế trực quan cho các miền ngôn ngữ cụ thể hoặc bộ công cụ dành cho các khía cạnh khác trong quy trình phát triển phần mềm.

Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau và cho phép trình biên tập

Một phần của tài liệu Thiết kế mô hình giám sát và điều khiển hệ thống chiết rót và đóng nắp sử dụng PLC s7 1200 (Trang 61)