Bộ điều khiển logic khả trình (tiếng Anh: Programmable Logic Controller, viết tắt: PLC) hay còn gọi là bộ điều khiển lập trình, là thiết bị cho phép lập trình để thực hiện các thuật toán điều khiển logic linh hoạt thông qua một ngôn ngữ lập trình. Người dùng có thể lập trình để thực hiện các chuỗi sự kiện, được kích hoạt bởi các tín hiệu đầu vào hoặc các hoạt động có trễ như thời gian định kỳ hay đếm sự kiện. PLC thay thế các mạch relay trong thực tế, hoạt động bằng cách quét trạng thái đầu vào và đầu ra. Khi đầu vào thay đổi, đầu ra cũng sẽ thay đổi tương ứng. PLC có thể lập trình bằng ngôn ngữ Ladder hoặc State Logic. Nhiều hãng sản xuất PLC hiện nay như Siemens, Allen-Bradley, Mitsubishi Electric, General Electric, Omron, Honeywell...
Khi một sự kiện được kích hoạt, nó sẽ bật hoặc tắt thiết bị điều khiển bên ngoài, gọi là thiết bị vật lý. Bộ điều khiển lập trình sẽ liên tục 'quét' chương trình do 'người sử dụng thiết lập' để chờ tín hiệu đầu vào và xuất tín hiệu đầu ra theo thời gian đã được lập trình.
Để khắc phục các nhược điểm của bộ điều khiển sử dụng dây nối (như bộ điều khiển bằng Relay), bộ PLC đã được phát triển nhằm đáp ứng các yêu cầu sau:
- Ngôn ngữ lập trình dễ học, việc lập trình trở nên đơn giản.
- Kích thước nhỏ gọn, thuận tiện cho việc bảo trì và sửa chữa.
- Khả năng lưu trữ lớn, đủ sức chứa các chương trình phức tạp.
- Hoạt động đáng tin cậy trong môi trường công nghiệp khắc nghiệt.
- Có khả năng kết nối với các thiết bị thông minh khác như máy tính, mạng lưới và các module mở rộng.
- Giá thành cạnh tranh và hợp lý.
Các thiết kế ban đầu của PLC được phát triển để thay thế các hệ thống relay dây nối và các logic thời gian. Tuy nhiên, nhu cầu ngày càng tăng về dung lượng nhớ và tính dễ sử dụng của PLC, đồng thời vẫn phải đảm bảo hiệu suất và giá thành, đã thu hút sự chú ý lớn trong ngành công nghiệp. Các lệnh điều khiển từ cơ bản đến nâng cao như đếm, định thời, thanh ghi dịch, và các chức năng toán học đã nhanh chóng được phát triển. Sự tiến bộ của công nghệ máy tính đã dẫn đến các bộ PLC với dung lượng lớn và nhiều đầu vào/đầu ra hơn.
Trong PLC, phần cứng CPU và chương trình là hai thành phần cơ bản cho việc điều khiển hoặc xử lý hệ thống. Chức năng của bộ điều khiển được xác định bởi một chương trình đã được nạp sẵn vào bộ nhớ của PLC. PLC sẽ thực hiện nhiệm vụ điều khiển dựa trên chương trình này. Khi cần thay đổi hoặc mở rộng chức năng của quy trình, chỉ cần thay đổi chương trình trong bộ nhớ của PLC mà không cần phải can thiệp vật lý như khi sử dụng hệ thống dây nối hoặc relay.
Cấu trúc và nguyên lý hoạt động
Cấu trúc
Mỗi PLC đều bao gồm các thành phần chính như: Một bộ nhớ chương trình RAM bên trong (có thể được mở rộng với bộ nhớ ngoài EPROM) và một bộ vi xử lý với cổng giao tiếp để kết nối với PLC và các module I/O.
Ngoài ra, một bộ PLC hoàn chỉnh thường đi kèm với một thiết bị lập trình có thể là máy tính hoặc thiết bị cầm tay. Các thiết bị lập trình cơ bản đều có đủ RAM để lưu trữ chương trình đầy đủ hoặc bổ sung. Nếu thiết bị lập trình là loại cầm tay, RAM thường là CMOS với pin dự phòng, và chỉ khi chương trình được kiểm tra kỹ lưỡng và sẵn sàng thì mới được truyền sang bộ nhớ PLC. Đối với các PLC lớn, lập trình thường được thực hiện trên máy tính để hỗ trợ viết, đọc và kiểm tra chương trình. Các thiết bị lập trình kết nối với PLC qua các cổng RS232, RS422, RS485, và các cổng khác.
Nguyên lý hoạt động của PLC
CPU trong PLC điều khiển toàn bộ các hoạt động bên trong. Bộ xử lý đọc và kiểm tra chương trình trong bộ nhớ, sau đó thực hiện từng lệnh theo thứ tự, điều chỉnh các đầu ra. Các trạng thái đầu ra được gửi đến các thiết bị liên kết để thực hiện công việc. Toàn bộ các hoạt động này dựa vào chương trình điều khiển được lưu trữ trong bộ nhớ.
Hệ thống Bus là mạng lưới dùng để truyền tín hiệu, bao gồm nhiều đường tín hiệu song song.
- Address Bus: Đường bus địa chỉ dùng để truyền thông tin địa chỉ đến các module khác nhau.
- Data Bus: Đường bus dữ liệu dùng để truyền dữ liệu giữa các thành phần.
- Control Bus: Đường bus điều khiển dùng để truyền các tín hiệu đồng bộ và điều khiển hoạt động của PLC.
Trong PLC, dữ liệu được truyền giữa bộ vi xử lý và các module vào-ra qua Data Bus. Address Bus và Data Bus có 8 đường, cho phép truyền đồng thời 8 bit dữ liệu của 1 byte.
Khi một module đầu vào nhận địa chỉ của nó qua Address Bus, nó sẽ đưa toàn bộ trạng thái đầu vào vào Data Bus. Nếu một địa chỉ byte của 8 đầu ra xuất hiện trên Address Bus, module đầu ra tương ứng sẽ nhận dữ liệu từ Data Bus. Control Bus truyền các tín hiệu điều khiển để theo dõi chu trình hoạt động của PLC. Các địa chỉ và dữ liệu được truyền qua các Bus tương ứng trong thời gian ngắn hạn.
Hệ thống Bus có vai trò trao đổi thông tin giữa CPU, bộ nhớ và các I/O. CPU nhận một xung Clock với tần số 1,8 MHz, điều này xác định tốc độ hoạt động của PLC và cung cấp các yếu tố về định thời và đồng hồ hệ thống.
Bộ nhớ
PLC thường cần bộ nhớ cho các mục đích như: Định thời cho các kênh trạng thái I/O, lưu trữ trạng thái và thực hiện các chức năng như định thời, đếm, và ghi chép các Relay.
Mỗi lệnh trong chương trình được lưu trữ tại một vị trí cụ thể trong bộ nhớ, và tất cả các vị trí này đều có số hiệu riêng, gọi là địa chỉ bộ nhớ. Một bộ đếm địa chỉ trong bộ vi xử lý sẽ chỉ đến từng địa chỉ bộ nhớ, và giá trị của bộ đếm này sẽ được tăng lên sau mỗi lệnh được xử lý. Khi có một địa chỉ mới, nội dung của ô nhớ tương ứng sẽ được đọc ra, quá trình này gọi là đọc bộ nhớ.
Bộ nhớ bên trong PLC được cấu thành từ các vi mạch bán dẫn, mỗi vi mạch có khả năng chứa từ 2.000 đến 16.000 dòng lệnh, tùy thuộc vào loại vi mạch. PLC sử dụng các loại bộ nhớ như RAM và EPROM.
- RAM (Random Access Memory) cho phép nạp, thay đổi và xóa nội dung bất kỳ lúc nào. Nếu mất nguồn, dữ liệu trong RAM sẽ bị mất. Để khắc phục điều này, PLC được trang bị pin khô cung cấp năng lượng dự trữ cho RAM từ vài tháng đến vài năm. RAM chủ yếu được dùng để khởi tạo và kiểm tra chương trình, và CMOS-RAM được ưa chuộng vì tiêu thụ năng lượng thấp và độ bền cao.
- EPROM (Electrically Programmable Read Only Memory) là bộ nhớ chỉ đọc, không thể ghi mới hoặc sửa đổi. Nội dung của EPROM không bị mất khi mất nguồn và thường được cài sẵn trong máy với hệ điều hành từ nhà sản xuất. EPROM có thể được ghi và xóa bằng thiết bị lập trình (PG) nếu cần mở rộng bộ nhớ.
- EEPROM (Electrically Erasable Programmable Read Only Memory) kết hợp tính linh hoạt của RAM với độ ổn định. Nội dung của EEPROM có thể được xóa và lập trình lại, nhưng số lần thao tác bị giới hạn.
- Đĩa cứng hoặc đĩa mềm là phương tiện ghi dữ liệu bổ sung, thường được dùng trong máy lập trình để lưu trữ các chương trình lớn trong thời gian dài nhờ dung lượng lớn của chúng.
Kích thước bộ nhớ:
- PLC loại nhỏ có khả năng lưu trữ từ 300 đến 1.000 dòng lệnh, tùy thuộc vào công nghệ sản xuất.
- PLC loại lớn có dung lượng từ 1K đến 16K, có thể chứa từ 2.000 đến 16.000 dòng lệnh.
Ngoài ra, PLC còn hỗ trợ mở rộng bộ nhớ với các loại RAM và EPROM.
Các cổng vào ra I/O
Tín hiệu từ cảm biến được kết nối với các module đầu vào của PLC, trong khi các thiết bị chấp hành được kết nối với các module đầu ra. Hầu hết các PLC hoạt động với điện áp nội bộ 5V, còn tín hiệu xử lý là 12/24VDC hoặc 100/240VAC. Mỗi đơn vị I/O có địa chỉ riêng biệt, và trạng thái của các kênh I/O được hiển thị qua các đèn LED trên bảng điều khiển, giúp việc kiểm tra hoạt động đầu vào và đầu ra trở nên dễ dàng hơn.
Bộ xử lý nhận và xác định các trạng thái đầu vào (ON, OFF) để thực hiện việc điều khiển đóng hoặc ngắt mạch ở đầu ra.
Tài liệu tham khảo
- Nguyễn, Doãn Phước; Phan, Xuân Minh; Vũ, Vân Hà (2000). Tự động hóa với Simatic S7-300. Nhà xuất bản Khoa học và Kỹ thuật.
- Phạm, Xuân Khánh; Phạm, Công Dương; Bùi, Thị Thu Hà (2008). Thiết bị điều khiển khả trình - PLC. Nhà xuất bản Giáo dục.