trình bày về tổng quan về PLC S7-300
ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 PHẦN III. TỔNG QUAN VỀ PLC S7-300 1. Lịch sử phát triển PLC -Bộ điều khiển lập trình PLC (Programmable Logic Controller) được sáng tạo ra từ ý tưởng ban đầu của một nhóm kỹ sư thuộc hãng General Motors vào năm 1968 nhằm thay thế những mạch điều khiển bằng Rơle và thiết bị điều khiển rời rạc cồng kềnh. -Đến giữa thập niên 70, công nghệ PLC nổi bật nhất là điều khiển tuần tự theo chu kỳ và theo bít trên nền tảng của CPU. Thiết bị AMD 2901 và AMD 2903 trở nên ngày càng phổ biến. Lúc này phần cứng cũng phát triển: bộ nhớ lớn hơn, số lượng ngõ vào/ra nhiều hơn, nhiều loại module chuyên dụng hơn. Vào năm 1976, PLC có khả năng điều khiển các ngõ vào/ra ở xa bằng kỹ thuật truyền thông, khoảng 200 mét. -Đến thập niên 80, bằng sự nỗ lực chuẩn hoá hệ giao tiếp với giao diện tự động hoá, hãng General Motors cho ra đời loại PLC có kích thước giảm, có thể lập trình bằng biểu tượng trên máy tính cá nhân thay vì thiết bị lập trình đầu cuối chuyên dụng hay lập trình bằng tay. -Đến thập niên 90, những giao diện phần mềm mới có cấu trúc lệnh giảm và cấu trúc của những giao diện được cung cấp từ thập niên 80 đã được đổi mới. -Cho đến nay những loại PLC có thể lập trình bằng ngôn ngữ cấu trúc lệnh (STL), sơ đồ hình thang (LAD), sơ đồ khối (FBD). -Hiện nay có rất nhiều hãng sản xuất PLC như: Siemens, Allen-Bradley, General Motors, Omron, Mitsubishi, Festo, LG, GE Fanuc, Modicon… -PLC của Siemens gồm có các họ: Simatic S5, Simatic S7, Simatic S500/505. Mỗi họ PLC có nhiều phiên bản khác nhau, chẳng hạn như: Simatic S7 có S7-200, S7-300, S7-400… Trong đó mỗi loại S7 có nhiều loại CPU khác nhau như S7-300 có CPU 312, CPU 314, CPU 316, CPU 315-2DP, CPU 614… 2. Vai trò của PLC -Trong hệ thống điều khiển tự động hoá PLC được xem như một trái tim, với chương trình ứng dụng được lưu trong bộ nhớ của PLC. Nó điều khiển trạng thái của hệ thống thông qua tín hiệu phản hồi ở đầu vào, dựa trên nền tảng của chương trình logic để quyết định quá trình hoạt động và xuất tín hiệu đến các thiết bị đầu ra. PLC có thể hoạt động độc lập hoặc có thể kết nối với nhau và với máy tính chủ thông qua mạng truyền thông để điều khiển một quá trình phức tạp. 3. Ưu thế của việc dùng PLC trong tự động hoá Thời gian lắp đặt ngắn. Dễ dàng thay đổi chương trình điều khiển mà không gây tổn thất. Thời gian huấn luyện sử dụng ngắn, bảo trì dễ dàng. GVHD : NGUYỄN MẠNH HÀ Trang 30 ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 Độ tin cậy cao, chuẩn hoá được phần cứng điều khiển.Thích ứng trong các môi trường khắc nghiệt như: nhiệt độ, áp suất, độ ẩm, điện áp thay đổi,… -Rõ ràng so với hệ thống điều khiển dùng Rơle thì hệ thống điều khiển dùng PLC có ưu thế tuyệt đối về khả năng linh động, mềm dẻo, và hiệu quả giải quyết bài toán cao. 4. Phần cứng của PLC S7-300 -PLC S7-300 được thiết kế theo kiểu module. Các module này sử dụng cho nhiều ứng dụng khác nhau. Việc xây dựng PLC theo cấu trúc module rất thuận tiện cho việc thiết kế các hệ thống gọn nhẹ và dễ dàng cho việc mở rộng hệ thống. Số các module được sử dụng nhiều hay ít tuỳ theo từng ứng dụng, song tối thiểu bao giờ cũng có một module chính là module CPU. Các module còn lại là những module truyền và nhận tín hiệu với đối tượng điều khiển bên ngoài, các module chức năng chuyên dụng… Chúng được gọi chung là các module mở rộng. Các module mở rộng gồm có: Module nguồn (PS). Module mở rộng cổng tín hiệu vào/ra (SM), gồm có: DI, DO, DI/DO, AI, AO, AI/AO. Module ghép nối (IM). Module chức năng điều khiển riêng (FM). Module phục vụ truyền thông (CP). M COIL VALE PS CPU SM: DI SM: DO FM SM: AI SM: AO IM CP GVHD : NGUYỄN MẠNH HÀ Trang 31 Hình IV.1: Cấu trúc của PLC S7-300 ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 4.1. Module nguồn PS307 của S7-300 -Module PS307 có nhiệm vụ chuyển đổi nguồn xoay chiều 120/230V thành nguồn một chiều 24V để cung cấp cho các module khác của PLC. Ngoài ra còn có nhiệm vụ cung cấp nguồn cho các cảm biến và các cơ cấu tác động có công suất nhỏ. -Module nguồn thường được lắp đặt bên trái hoặc phía dưới của CPU tuỳ theo cách lắp đặt theo bề ngang hoặc theo chiều dọc. -Module nguồn PS307 có 3 loại: 2 A, 5A và 10 A. -Mặt trước của module nguồn gồm có: Một đèn Led báo hiệu trạng thái điện áp ra 24 V. Một công tắc dùng để bật / tắt điện áp ra. Một nút dùng để chọn điện áp đầu vào là 120 VAC hoặc 230VAC. -Mặt sau của module gồm có các lỗ dùng để nhận điện áp vào và ra. 4.2. Khối xử lý trung tâm (CPU) -Module CPU là loại module có chứa bộ vi xử lý, hệ điều hành, bộ nhớ, các bộ định thời, bộ đếm và cổng truyền thông (RS485)… và có thể có một vài cổng vào/ra số. Các cổng vào ra số này được gọi là cổng vào ra onboard. -Trong họ PLC S7-300 các module CPU được đặt tên theo bộ vi xử lí có trong nó, như : module CPU312, module CPU314, module CPU315,… -Ngoài ra còn có các module được tích hợp sẵn cũng như các khối hàm đặt trong thư viện của hệ điều hành phục vụ cho việc sử dụng các cổng vào /ra onboard, được phân biệt bằng cụm chữ cái IFM (Intergrated Function Module). Ví dụ module CPU312 IFM, module CPU314 IFM… Bên cạnh đó còn có loại CPU với hai cổng truyền thông, trong đó cổng thứ hai có chức năng chính là phục vụ nối mạng phân tán và kèm theo phần mềm tiện dụng tích hợp sẵn trong hệ điều hành. Các loại module CPU này được phân biệt bằng cách thêm cụm từ DP (Distributed port) trong tên gọi. Ví dụ: module CPU315-2DP, module CPU316-2DP. 4.3. Module mở rộng cổng tín hiệu: -Digital Input Module: Module mở rộng các cổng vào số, có nhiệm vụ nhận các tín hiệu số từ các thiết bị ngoại vi vào vùng đệm để xử lý, gồm có các module sau: SM 321 DI16xAC120 V SM 321 DI16xDC24 V SM 321 DI16x24VDC, interrupt SM 321 DI8xAC120/230V SM 321 DI32xDC24V,… GVHD : NGUYỄN MẠNH HÀ Trang 32 ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 -Digital Output Module: Module mở rộng các cổng ra số, có nhiệm vụ xuất các tín hiệu từ vùng đệm xử lý ra thiết bị ngoại vi, một số loại module ra số: SM 322 DO16xAC120V/0.5A SM 322 DO16xDC24V/0.5A SM 322 DO 8xAC120/230V/1A, … -Digital Input/ Output Module: module mở rộng các cổng vào/ra số. Tích hợp nhiệm vụ của hai loại module trên. Gồm có các loại sau: SM 323 DI16/DO16x24V/0.5A SM 323 DI8/DO8x24V/0.5A SM 323 DI8/DO8xDC24V/0.5A… -Analog Input Module: Module mở rộng các cổng vào tương tự, có nhiệm vụ chuyển các tín hiệu tương tự từ bên ngoài thành các tín hiệu số để xử lý bên trong S7-300. Gồm các loại module sau: SM 331 AI2x12bit SM 331 AI8x12bit SM 331 AI8x16bit… -Analog Output Module: Module mở rộng các cổng ra tương tự, có nhiệm vụ chuyển các tín hiệu số bên trong S7-300 thành các tín hiệu tương tự để phục vụ cho quá trình hoạt động của các thiết bị bên ngoài. Gồm các loại module sau: SM 332 AO2x12bit SM 332 AO4x12bit SM 332 AO4x16bit… -Analog Input/Output Module: là module tích hợp nhiệm vụ của hai loại trên. Gồm có: SM 334 AI4/AO2 SM 334 AI4/AO2x12bit SM 334 AI4/AO4x14/12bit… 4.4. Module ghép nối (Interface module-IM): -Là loại module chuyên dụng có nhiệm vụ ghép nối từng nhóm 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. 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. Module IM gồm có các loại: IM 360 IM 361 IM 365 GVHD : NGUYỄN MẠNH HÀ Trang 33 ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 5. Tổ chức bộ nhớ CPU của PLC S7-300 -Bộ nhớ của CPU bao gồm các vùng nhớ sau: Vùng nhớ chứa các thanh ghi. Vùng System Memory. Vùng Load Memory. Vùng Work Memory. -Kích thước của các vùng nhớ này tuỳ thuộc vào chủng loại của từng module CPU. -System Memory: là vùng nhớ chứa các bộ đệm vào ra số (I, Q), các biến cờ (M), thanh ghi T-Word, PV, T- bít của Timer và thanh ghi C-Word, PV, C- bít của Counter. -Load Memory: là vùng nhớ chứa chương trình ứng dụng do người sử dụng viết, bao gồm tất cả các khối chương trình ứng dụng OB, FC, FB, các khối chương trình trong thư viện hệ thống được sử dụng (SFC, SFB), các khối dữ liệu DB. Vùng nhớ này được tạo bởi một phần bộ nhớ RAM của CPU và EEPROM. -Work Memory: là vùng nhớ chứa các khối DB đang được mở, khối chương trình (OB, FC, FB, SFC, SFB) đang được CPU thực hiện và phần bộ nhớ cấp phát cho những tham số hình thức để các khối chương trình này trao đổi tham trị với hệ điều hành và với các khối chương trình khác (local block). GVHD : NGUYỄN MẠNH HÀ Systerm memory Bộ đệm ra số Q Bộ đệm vào số I Vùng nhớ cờ M Timer T Counter C Work memory • Logic block • Data block • Local block, Stack Load memory • User program (EEPROM) • User program (RAM) ACCU1 ACCU2 Accumulator AR1 AR2 Address register DB (share) DI (instance) Data block register Status Status word Hình IV.2: Tổ chức bộ nhớ trong CPU Trang 34 ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 6. Vòng quét chương trình -PLC thực hiện chương trình theo chu trình 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ổng vào số tới vùng đệm ảo I, 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 được thực hiện từ lệnh đầu tiên đến lệnh kết thúc của khối OB1 (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 Q tớ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. -Thời gian cần thiết để PLC thực hiện một 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 mà tuỳ thuộc vào số lệnh trong chương trình được thực hiện và khối lượng dữ liệu được truyền thông trong vòng quét đó. -Đối với các cổng vào ra tương tự không liên quan tới bộ đệm I và Q nên các lệnh 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. 7. Trao đổi dữ liệu giữa CPU và các module mở rộng -Trong trạm PLC luôn có sự trao đổi dữ liệu giữa CPU với các module mở rộng thông qua bus nội bộ. Ngay tại đầu vòng quét, các dữ liệu tại cổng vào của các module số (DI) sẽ được CPU chuyển tới bộ đệm vào số (process image input table-I). Cuối mỗi vòng quét, nội dung của bộ đệm ra (process image output table-Q) lại được CPU chuyển tới cổng ra của các module ra số (DO). Việc thay đổi nội dung hai bộ đệm này được thực hiện bởi chương trình ứng dụng. Nếu trong chương trình ứng dụng có nhiều lệnh đọc cổng vào số thì cho dù giá trị logic thực có của các cổng vào này có thể bị thay đổi trong quá trình thực hiện vòng quét, chương trình sẽ vẫn luôn đọc được cùng một giá trị từ I và giá trị đó chính là giá trị của cổng vào có tại thời điểm đầu vòng quét. Cũng như vậy, nếu chương trình ứng dụng nhiều lần thay đổi giá trị cho một cổng ra số thì do nó chỉ thay đối nội dung bít nhớ tương ứng trong GVHD : NGUYỄN MẠNH HÀ Truyền thông và kiểm tra nội bộ chuyển dữ liệu từ cổng vào tới I Thực hiện chương trình Chuyển dữ liệu từ Q tới cổng ra Vòng quét Hình IV.3: Vòng quét chương trình Trang 35 ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 Q nên chỉ có giá trị thay đổi cuối cùng mới thực sự đưa tới cổng ra vật lý của module DO. -Khác hẳn với việc đọc/ghi cổng số, việc truy nhập cổng vào/ra tương tự lại được CPU thực hiện trực tiếp với module mở rộng (AI/AO). Như vậy mỗi lệnh đọc giá trị từ địa chỉ thuộc vùng PI (peripheral input) sẽ thu được một giá trị đúng bằng giá trị thực có ở cổng tại thời điểm thực hiện lệnh. -Tương tự khi thực hiện lệnh gửi một giá trị (số ngun 16 bits ) tới địa chỉ của vùng PQ (peripheral output), giá trị đó sẽ đượcü gửi ngay tới cổng ra tương tự của module. Hình IV.3: Ngun lý trao đổi dữ liệu giữa CPU và các module mở rộng -Tuy nhiên miền địa chỉ PI và PQ lại được cung cấp nhiều hơn là số các cổng vào/ra tương tự có thể có của một trạm. Điều này tạo khả năng kết nối các cổng vào/ra số với những địa chỉ dơi ra đó trong PI/PQ giúp chương trình ứng dụng có thể truy nhập trực tiếp các module DI/DO mở rộng để có được giá trị tức thời tại cổng mà khơng cần thơng qua bộ đệm I và Q. 8. Cấu trúc chương trình -PLC S7-300 có thể được lập trình theo hai dạng cấu trúc sau: 8.1. Lập trình lập tuyến -Lập trình lập tuyến là phương pháp lập trình mà trong đó tồn bộ chương trình ứng dụng sẽ chỉ nằm trong một khối OB1. Cấu trúc này có ưu điểm là gọn, rất phù hợp với những bài tốn điều khiển đơn giản, ít nhiệm vụ. GVHD : NGUYỄN MẠNH HÀ Trang 36 Chỉång trçnh ỉïng dủng (user program) Module AI Module DI Process image input table (I) Module DO Module AO Âc/ghi giạn tiãúp Âc trỉûc tiãúp 0 : 127 256 : 767 Peripheral input PI (64K) Peripheral output PQ (64K) Process imag output table (Q) : : 0 : 127 256 : 767 : : Ghi trỉûc tiãúp ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 8.2. Lập trình cấu trúc -Lập trình cấu trúc là phương pháp lập trình mà trong đó chương trình được chia thành những phần nhỏ với từng nhiệm vụ riêng và các phần này nằm trong những khối chương trình khác nhau, tương tự như việc thực hiện chương trình con. 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ụ, phức tạp và thường sử dụng các khối cơ bản sau: -Khối OB (Orgnization block): là khối tổ chức và quản lý chương trình điều khiển. Có nhiều loại khối OB với những chức năng khác nhau. Chúng được phân biệt với nhau bằng một số nguyên đi sau nhóm ký tự OB. Ví dụ: OB1, OB3, OB40,… -Khối FC (Program block): 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. Một chương trình ứng dụng có thể có nhiều khối FC và các khối FC này được phân biệt với nhau bằng một số nguyên theo sau nhóm ký tự FC. Ví dụ: FC1, FC2, -Khối 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 lớn 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. Trong một chương trình ứng dụng có thể có nhiều khối FB và các khối FB này cũng được phân biệt với nhau bằng một số nguyên theo sau nhóm ký tự FB. Ví dụ: FB1, FB2, -Khối DB (Data block): là 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ố của khối do người sử dụng tự đặt. Trong một chương trình ứng dụng có thể có nhiều khối DB và các khối DB này cũng được phân biệt với nhau bằng một số nguyên theo sau nhóm ký tự DB. Ví dụ: DB1, DB2, GVHD : NGUYỄN MẠNH HÀ Trang 37 Lệnh 2 Lệnh 1 Lệnh cuối cùng Vòng quét OB1 Hình IV.4 :Lập trình tuyến tính ĐỒ ÁN TỐT NGHIỆP PHẦN III : GIƠÍ THIỆU PLC S7-300 -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. Xem những phần chương trình trong các khối như là những chương trình con thì S7-300 cho phép gọi chương trình con lồng nhau. Số các lệnh gọi lồng nhau tuỳ thuộc vào từng chủng loại module CPU. GVHD : NGUYỄN MẠNH HÀ Số các lệnh gọi lồng nhau nhiều nhất cho phép tuỳ từng loại CPU FC1 FB2 FC7 FB5 FC3 FB9 Hệ điều hành OB1 Hình IV.5: Lập trình cấu trúcùc Trang 38 . SM 33 2 AO4x16bit… -Analog Input/Output Module: là module tích hợp nhiệm vụ của hai loại trên. Gồm có: SM 33 4 AI4/AO2 SM 33 4 AI4/AO2x12bit SM 33 4. các tín hiệu số để xử lý bên trong S7 -30 0. Gồm các loại module sau: SM 33 1 AI2x12bit SM 33 1 AI8x12bit SM 33 1 AI8x16bit… -Analog Output Module: Module