Bộ điều khiển khả trình PLC 45

Một phần của tài liệu Xây dựng hệ thống điều kiển giám sát SCADA hệ nấu trong dây chuyền sản xuất bia chất lượng cao (Trang 49 - 70)

3.1.1 Giới thiệu về PLC

Thiết bị điều khiển logic khả trình PLC là loại thiết bị cho phép thực hiện linh hoạt các thuật toán điều khiển số thông qua một ngôn ngữ lập trình, thay cho việc thể hiện thuật toán đó bằng mạch sô. Nh− vậy với ch−ơng trình điều khiển trong mình, PLC trở thành bộ điều khiển nhỏ gọn , dễ thay đổi thuật toán và đặc biệt dễ trao đổi thông tin với môi tr−ờng xung quanh ( với các PLC khác hoặc với máy tính). Toàn bộ ch−ơng trình đ−ợc l−u trong bộ nhớ d−ới dạng các khối ch−ơng trình (OB, FC, FB…) và đ−ợc thực hiện với chu kỳ quét.

Để có thể thực hiện một ch−ơng trình điều khiển, PLC phải có tính năng nh− một máy tính, nghĩa là phải có một bộ xử lý trung tâm (CPU), một hệ điều hành, một bộ nhớ ch−ơng trình để l−u ch−ơng trình cũng nh− dữ liệu và tất nhiên phải có các cổng vào ra để giao tiếp với các thiết bị bên ngoài,… Bên cạnh đó, nhằm phục vụ bài toán điều khiển số, PLC còn có các khối hàm chức năng nh− Timer, Counter và các hàm chức năng đặc biệt khác.

Các Module của PLC: Thông th−ờng để tăng tính mềm dẻo trong ứng dụng thực tế mà ở đó phần lớn các đối t−ợng điều khiển có số tín hiệu đầu vào và đầu ra cũng nh− chủng loại tín hiệu vào ra khác nhau mà các bộ điều khiển PLC đ−ợc thiết kế không bị cứng hóa về cấu hình. Chúng đ−ợc chia nhỏ thành các module với module chính là Module CPU, và các module khác nh− Module nhận truyền tín hiệu đối t−ợng điều khiển , các Module chức năng chuyên dụng nh− PID, điều khiển động cơ… Chúng đ−ợc gọi chung là Module mở rộng.

a. Module CPU

Module CPU là module chứa bộ vi xử lý, hệ điều hành, bộ nhớ, các bộ định thì, bộ đếm, cổng truyền thông (RS 485) và có thể còn có một vài cổng vào/ra số. Các cổng vào/ra số có trên module CPU đ−ợc gọi là cổng vào/ra onboard nh− CPU 314IFM. Trong họ PLC S7-300 có nhiều loại module CPU khác nhau. Nói chung chúng đ−ợc đặt tên theo bộ vi xử lý có trong nó nh− module CPU312, module CPU314, module CPU315. Những module cùng sử dụng một loại bộ vi xử lý, nh−ng khác nhau về cổng vào/ra onboard cũng nh− các khối hàm đặc biệt đ−ợc tích hợp sẵn trong th− viện của hệ điều hành phục vụ việc sử dụng các cổng vào/ra onboard này sẽ phân biệt với nhau trong tên gọi bằng cách thêm cụm chữ cái IFM (Intergrated Function Module). Ví dụ module CPU313IFM, module CPU314IFM Ngoài ra, còn có các loại module CPU với hai cổng truyền thông, trong đó cổng truyền thông thứ hai có chức năng chính là phục vụ việc nối mạng phân tán nh− mạng PROFIBUS (PROcess FIeld BUS). Tất nhiên kèm theo cổng truyền thông thứ hai này la những phần mềm tiện dụng thích hợp cũng đã đ−ợc cài sẵn trong hệ điều hành. Các loại module CPU này đ−ợc phân biệt với các loại module CPU khác bằng cách thêm cụm t− DP (Distributed Port)

b. Các loại module mở rộng:

9 PS (Power Supply): Module nguồn nuôi, có 3 loại 2A, 5A và 10A.

9 SM (Signal Module): Module mở rộng cổng tín hiệu vào/ra, gồm có:

• DI (Digital Input): Module mở rộng các cổng vào số với số l−ợng cổng có thể là 8, 16 hoặc 32 tùy theo từng loại module. Gồm 24VDC và 120/230V AC.

• DO (Digital Output): Module mở rộng các cổng ra số với số l−ợng cổng có thể là 8, 16 hoặc 32 tùy theo từng loại module. Gồm 24VDC và ngắt điện từ. • DI/DO (Digital Input/Digital Out): Module mở rộng các cổng vào/ra số với số

l−ợng cổng có thể là 8 vào/8 ra hoặc 16 vào/16 ra tùy theo từng loại module. • AI (Anolog Input): Module mở rộng các cổng vào t−ơng tự. Về bản chất chúng

là những bộ chuyển đổi t−ơng tự số 12 bits (AD), tức là mỗi tín hiệu t−ơng tự đ−ợc chuyển đổi thành một tín hiệu số (nguyên) có độ dài 12 bits. Số các cổng vào t−ơng tự có thể là 2, 4 hoặc 8 tùy theo loại module. Tín hiệu vào có thể là áp, dòng, điện trở.

• AO (Anolog Output): Module mở rộng các cổng ra t−ơng tự. Chúng là những bộ chuyển đổi số t−ơng tự 12 bits (DA). Số các cổng ra t−ơng tự có thể là 2, 4 hoặc 8 tùy theo loại module. Tín hiệu ra có thể là áp hoặc dòng.

AI/AO (Analog Input/Analog Output): Module mở rộng các cổng vào/ra

t−ơng tự. Số các cổng t−ơng tự có thể là 4 vào/2 ra hoặc 4 vào/4 ra tùy theo từng loại module.

9 IM (Interface Module): Module ghép nối. Đây là loại module chuyên dụng có

nhiệm vụ nối từng nhóm các module mở rộng lại với nhau thành một khối và đ−ợc quản lý chung bởi một module CPU. Thông th−ờng các module mở rộng đ−ợc gá liền với nhau trên một thanh đỡ gọi là rack (hình 2.3). Trên mỗi thanh rack chỉ có thể gá tối đa 8 module mở rộng (không kể module CPU, nguồn nuôi). Một module CPU S7-300 có thể làm việc trực tiếp với nhiều nhất 4 racks và các racks này phải đ−ợc nối với nhau bằng module IM

9 FM (Function Module): Module có chức năng điều khiển riêng, ví dụ nh− module điều khiển động cơ servo, module điều khiển động cơ b−ớc, module PID, module điều khiển vòng kín, Module đếm, định vị, điều khiển hồi tiếp …

9 CP (Communication Module): Module phục vụ truyền thông trong mạng (MPI,

PROFIBUS, Industrial Ethernet) giữa các PLC với nhau hoặc giữa PLC với máy tính.

Các module đ−ợc gắn trên thanh rack, và mỗi thanh rack có thể gắn tối đa 8 modul SM/FM/CP ở bên phải CPU. Chúng kết nối với nhau qua bus connector ở mặt sau

của module. Mỗi module đ−ợc gán một số slot tính từ trái sang phải, module nguồn là slot 1, module CPU là slot 2, module kế tiếp mang số 4…

Hình 3.2. Cấu hình một thanh rack của PLC S7-300

Nếu có nhiều module thì bố trí thành nhiều rack, CPU ở rack 0, slot 2, kế đó là module phát IM360, slot 3 có nhiệm vụ kết nối rack với các rack 1, 2, 3… Trên mỗi rack này có module kết nối thu IM 361, bên phải mỗi module IM là các module SM/FM/CP. Cáp nối hai module IM dài tối đa 10m. Các module đ−ợc đánh số theo slot và dùng làm cơ sở để đặt địa chỉ đầu cho các module ngõ vào ra tín hiệu. Đối với các CPU 315-2DP, 316-2DP, 318-2 có thể gán địa chỉ tùy ý cho các module.

Hình 3.3. Sơ đồ kết nối các rack

Bộ nhớ PLC: Gồm 3 vùng chính

a. Vùng chứa ch−ơng trình ứng dụng: Vùng chứa ch−ơng trình đ−ợc chia

thành 3 miền:

OB (organisation block): miền chứa ch−ơng trình tổ chức

FC (Function) : Miền chứa ch−ơng trình con, đ−ợc tổ chức thành hàm và có biến hình thức để trao đổi dữ liệu.

FB (Function block): Miền chứa ch−ơng trình con, đ−ợc tổ chức thành hàm và có khả năng trao đổi dữ liệu với bất cứ 1 khối ch−ơng trình nào khác. Các dữ liệu này phải đ−ợc xây dựng thành mội khối dữ liệu riêng (Data block khối DB)

b. Vùng chứa tham số của hệ điều hành: Chia thành 7 miền khác nhau

I (Process image input): Miền dữ liệu các cổng vào số, tr−ớc khi bắt đầu thực hiện ch−ơng trình, PLC sẽ đọc giá trị logic của tất cả các cổng đầu vào và cất giữ chúng trong vùng nhớ I. Thông th−ờng ch−ơng trình ứng dụng không đọc trực tiếp trạng thái logic của cổng vào số mà chỉ lấy dữ liệu của cổng vào từ bộ đệm I.

Q (Process Image Output): Miền bộ đệm các dữ liệu cổng ra số. Kết thúc giai đoạn thực hiện ch−ơng trình, PLC sẽ chuyển giá trị logic của bộ đêm Q tới các cổng ra số. Thông th−ờng ch−ơng trình không trực tiếp gán giá trị tới tận cổng ra mà chỉ chuyển chúng tới bộ đệm Q.

M (miền các biến cờ): ch−ơng trình ứng dụng sử dụng những biến này để l−u giữ các tham số cần thiết và có thể truy nhập nó theo bit (M), byte (MB), từ (MW) hay từ kép (MD).

T (Timer): miền nhớ phục vụ bộ thời gian (Timer) bao gồm việc l−u giữ giá trị thời gian đặt tr−ớc (PV – Preset Value), giá trị đếm thời gian tức thời (CV – Curent Vlue) cũng nh− giá trị logic đầu ra của bộ thời gian.

C (counter): Miền nhớ phục vụ bộ đếm bao gồm việc l−u trữ giá trị đặt tr−ớc (PV – Preset Value), giá trị đếm tức thời (CV – Current Value) và giá trị logic đầu ra của bộ đệm.

PI: miền địa chỉ cổng vào của các Module t−ơng tự (I/O External input). Các giá trị t−ơng tự tại cổng vào của module t−ơng tự sẽ đ−ợc module đọc và chuyển tự động theo địa chỉ. Ch−ơng trình ứng dụng có thể truy cập miền nhớ PI theo từng Byte (PQB), từng từ (PQW) hoặc theo từng từ kép (PQD).

c. Vùng chứa khối dữ liệu: Chia thành 2 loại:

DB (Data block): Miền chứa dữ liệu đ−ợc tổ chức thành khối. Kích th−ớc cũng nh− số l−ợng khối do ng−ời sử dụng quy định, phù hợp với t−ng loại bài toán điều khiển. Ch−ơng trình có thể truy nhập miền này theo t−ng bit(DBX), Byte (DBB), từ (DBW) hoặc từ kép (DBD).

L (Local data block) : Miền dữ liệu địa ph−ơng, đ−ợc các khối ch−ơng trình OB, FC, FB tổ chức và sử dụng cho các biến nháp tức thời 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ột khối dữ liệu trong miền nhớ này sẽ bị xóa khi kết thúc ch−ơng trình t−ơng ứng trong OB, FC, FB. Miền này có thể đ−ợc truy nhập từ ch−ơng trình theo bit (L), byte (LB), từ (LW) hoặc từ kép (LD).

Vòng quét ch−ơng trình : PLC thực hiện ch−ơng trình theo chu kì lặp. Mỗi

vòng lặp đ−ợc gọi là vòng quét (Scan). Mỗi vòng quét đ−ợc bắt đầu bằng giai đoạn chuyển dữ liệu từ các cổng vào số tới vùng bộ đệm ảo, tiếp theo là giai đoạn thực hiện ch−ơng trình. Trong từng vòng quét ch−ơng trình thực hiện từ lệnh đầu tiên đến lệnh kết thúc của khối OB ( Block End). Sau giai đoạn thực hiện ch−ơng trình là giai đoạn chuyển các nội dung của bộ đệm ảo Qtới các cổng ra số. Vòng quét đ−ợc kết thúc bằng giai đoạn truyền thông nội bộvà kiểm tra lỗi. Chú ý rằng bộ đệm I và Q không liên quan tới các cổng vào ra t−ơng tự nên các lệng truy nhập cổng t−ơng tự đ−ợc thực hiện trực tiếp với cổng vật lí chứ không thông qua bộ đệm. Thời gian cần thiết để PLC thực hiện 1 vòng quét gọi là thời gian vòng quét (Scan Time). Thời gian vòng quét không cố định ,tức là không phải vòng quét nào cũng đ−ợc thực hiện trong một khoảng thời gian nh− nhau. Có vòng quét đ−ợc thực hiện lâu, có vòng quét đ−ợc thực hiện nhanh tuỳ thuộc vào số lệnh trong ch−ơng trình đ−ợc thực hiện và khối dữ liệu truyền thông trong vòng quét đó. Nh− vậy giữa việc đọc dữ liệu từ đối t−ợng để xử lí , tính toán và việc gởi tín hiệu điều khiển đến đối t−ợng có một khoảng thời gian trễ đúng bằng thời gian vòng quét. Nói cách khác, thời gian vòng quét quyết định tính thời gian thực của ch−ơng trình điều khiển trong PLC . Thời gian vòng quét càng ngắn ,tính thời gian thực của ch−ơng trình càng cao. Nếu sử dụng các khối ch−ơng trình đặc biệt có chế độ ngắt, ví dụ nh− khối OB40,OB80 … , ch−ơng trình của các khối đó sẽ đ−ợc thực hiện trong vòng quét khi xuất hiện tín hiệu báo ngắt cùng chủng loại. Các khối ch−ơng trình này có thể đ−ợc thực hiện tại mọi điểm trong vòng quét chứ không bị gò ép là phải ở trong giai đoạn thực hiện ch−ơng trình. Chẳng hạn nếu 1 tín hiệu báo ngắt xuất hiện khi PLC đang ở giai đoạn truyền thông và kiểm tra nội bộ, PLC sẽ ngừng công việc truyền thông, kiểm tra để thực hiện khối ch−ơng trình t−ơng ứng với tín hiệu báo ngắt đó. Với hình thức xử lí tín hiệu ngắt nh− vậy, thời gian vòng quét sẽ càng lớn khi càng có nhiều tín hiệu

ngắt xuất hiện trong vòng quét. Do đó để nâng cao tính thời gian thực cho ch−ơng trình điều khiển, tuyệt đối không nên viết ch−ơng trình xử lí ngắt quá dài hoặc quá lạm dụng việc sử dụng chế độ ngắt trong ch−ơng trình điều khiển. Tại thời điểm thực hiện lệnh vào ra, thông th−ờng lệnh không làm việc trực tiếp với cổng vào ra mà chỉ thông qua bộ đệm ảo của cổng trong vùng nhớ tham số. Việc truyền thông giữa bộ đệm ảo với ngoại vi trong các giai đoạn 1 và 3 do hệ điều hành CPU quản lí . ở 1 số module CPU , khi gặp lệnh vào ra ngay lập tức, hệ thống sẽ cho dừng mọi công việc khác, ngay cả ch−ơng trình xử lí ngắt, để thực hiện lệnh trực tiếp với cổng vào ra.

Cấu trúc ch−ơng trình:

Ta phải luôn luôn lập trình khối OB1 để cho PLC quét tuần hoàn ch−ơng trình để thực thi. Có hai kiểu lập trình: Lập trình tuyến tính và lập trình có cấu trúc.

a. Lập trình tuyến tính (liner)

Toàn bộ ch−ơng trình điều khiển nằm trong một khối trong bộ nhớ. Loại hình cấu trúc tuyến tính này phù hợp với những bài toán tự động nhỏ, không phức tạp. Khối đ−ợc chọn phải là khối OB1, là khối mà CPU luôn quét và thực hiện các lệnh trong nó th−ờng xuyên, từ lệnh đầu tiên đến lệnh cuối cùng và quay lại từ lệnh đầu tiên. Vòng quét Hình 3.4. Nguyên lý lập trình tuyến tính Lệnh 1 Lệnh 2 Lệnh … Lệnh cuối cùng Khối OB1

b. Lập trình có cấu trúc (structured)

Trong PLC Siemens S7 tổ chức theo các khối mà có thể lập trình đ−ợc với từng nhiệm vụ riêng. Loại hình cấu trúc này phù hợp với những bài toán điều khiển nhiều nhiệm vụ và phức tạp. PLC S7-300 có 4 loại khối cơ bản:

Khối tổ chức OB (Organization Block): Khối tổ chức và quản lý ch−ơng trình điều

khiển.

Khối hàm chức năng FB (Function Block): Là loại khối FC đặc biệt có khả năng

trao đổi một l−ợng dữ liệu với các khối ch−ơng trình khác. Các dữ liệu này phải đ−ợc tổ chức thành khối dữ liệu riêng có tên gọi là Data Block.

Khối hàm (Function) : Khối ch−ơng trình với những chức năng riêng giống nh− một

ch−ơng trình con hoặc một hàm.

Khối dữ liệu (Data Block): Khối chứa các dữ liệu cần thiết để thực hiện ch−ơng

trình. Các tham số khối do ta tự đặt.

Ngoài ra còn có các khối hệ thống nh−: SFB, SFC, SDB.

Toàn bộ các khối ch−ơng trình con đ−ợc quản lý một cách thống nhất bởi khối OB1. Ch−ơng trình trong các khối đ−ợc liên kết với nhau bằng các lệnh gọi khối, chuyển khối. Từng nhiệm vụ điều khiển con có thể đ−ợc chia thành những nhiệm vụ nhỏ và cụ thể hơn nữa, do đó một khối ch−ơng trình con cũng có thể đ−ợc gọi từ một khối ch−ơng trình con khác. Nh−ng tránh không bao giờ một khối ch−ơng trình con lại gọi đến chính nó.

Khi thực hiện lệnh gọi một khối con, hệ điều hành sẽ :

• Chuyển khối con đ−ợc gọi từ vùng Load memory vào vùng Word memory

• Cấp phát cho khối con một phần bộ nhớ trong Word memory để làm local block. Cấu trúc local block đ−ợc quy định khi soạn thảo các khối

• Truyền các tham trị từ khối mẹ cho biến hình thức IN, IN-OUT của local block

• Sau khi khối con thực hiện xong nhiệm vụ và ghi kết quả d−ới dạng tham trị đầu ra cho biến OUT, IN-OUT của local block, hệ điều hành sẽ chuyển các

tham trị này cho khối mẹ và giải phóng khối con cùng local block ra khỏi word memory

Hình 3.5. Nguyên lý lập trình có cấu trúc

• Số các lệnh gọi lồng nhau phụ thuộc vào từng chủng loại module CPU mà ta sử dụng. Nếu số lần gọi khối lồng nhau mà v−ợt quá con số giới hạn cho phép, PLC sẽ tự chuyển sang chế độ STOP và set cờ báo lỗi.

3.1.2. So sánh PLC với các hệ thống khác

PLC có −u điểm v−ợt trội so với các hệ thống điều khiển cổ điển nh− rơle, mạch tổ hợp điện tử, IC số.

• Thiết bị cho phép thực hiện linh hoạt các thuật toán điều khiển số thông qua ngôn ngữ lập trình.

• Bộ điều khiển số nhỏ gọn.

• Dễ dàng trao đổi thông tin với môi tr−ờng xung quanh nh−: TD (text display), OP (operation), PC, PG hay mạng truyền thông công nghiệp, kể cả mạng internet.

Một phần của tài liệu Xây dựng hệ thống điều kiển giám sát SCADA hệ nấu trong dây chuyền sản xuất bia chất lượng cao (Trang 49 - 70)

Tải bản đầy đủ (PDF)

(143 trang)