Hiện nay, PLC (Programmable Logic Controller) không còn xa lạ đối với chúng ta, sự xuất hiện của PLC trong các nhà máy, xí nghiệp hay các công ty đã đem lại lợi ích rất lớn cho con người.
Tuy nhiên, đối với các bài toán xử lý tín hiệu analog thì PLC gặp một số hạn chế đó là có rất ít đầu vào tín hiệu analog tích hợp sẵn trên CPU.
Trên thực tế đã có các module chuyển đổi cho PLC nhưng giá thành cao, cần phải đồng bộ nguồn sử dụng, phức tạp trong quá trình lắp ráp đấu nối,chính vì vậy trong bài viết này chúng tôi sẽ trình bày giải pháp xây dựng bộ chuyển đổi tín hiệu đầu vào cho PLC có thể giao tiếp với các loại cảm biến bằng các chuẩn giao tiếp khác nhau như:
I2C, SPI, OneWire, Analog và tạo ra sản phẩm có giá thành thấp mà vẫn đảm bảo được các hệ thống hoạt động tốt, ổn định trong môi trường công nghiệp.
Module chuyển đổi tín hiệu đầu vào sử dụng Kit Arduino ghép nối với PLC theo chuẩn Ethernet (TCP/IP) trong đó Kit Arduino có nhiệm vụ thu thập tín hiệu từ các cảm biến có độ chính xác cao (3.3V, 5V) sau đó xử lý, tính toán rồi truyền dữ liệu lên PLC (24V).
Bằng phương pháp trên ta có thể thực hiện các bài toán cho PLC với các loại cảm biến như: cảm biến nhiệt độ (LM35, TMP36), độ ẩm (DHT11, DHT12), ánh sáng (BH1750), cảm biến bụi (Sharp GP2Y10), thẻ ứng dụng công nghệ RFID (RFID-RC 522) dùng kiểm soát ra vào , vv.
Bộ chuyển đổi tín hiệu là một thiết bị có chức năng chuyển đổi tín hiệu đầu ra của thiết bị 1 (các cảm biến) thành tín hiệu đầu vào của thiết bị 2 (PLC) mục đích giúp hệ thống xử lý được các yêu cầu bài toán đặt ra.
Các loại tín hiệu thường được chuyển đổi trong công nghiệp đó là tín hiệu Analog, tín hiệu Digital,tín hiệu truyền thông như RS232, RS485,Ethernet, vv.
Hiện nay một số hãng PLC phổ biến như Delta, Mitsubishi, Omron, Siemens,...
Trong đó phổ biến nhất và thông dụng nhất là hãng Siemens điển hình là các dòng PLC S7-200,S7-300, S7-400, S7-1200, S7-1500.
Tuy nhiên còn gặp khó khăn đó là trên CPU của PLC có rất ít các ngõ vào tín hiệu analog cho nên việc giải quyết các bài toán về vấn đề này gặp nhiều khó khăn.
Chính vì vậy chúng tôi đưa ra giải pháp xây dựng bộ chuyển đổi tín hiệu đầu vào cho PLC sử dụng chuẩn Ethernet (TCP/IP) để có thể giúp cho PLC dễ dàng giao tiếp được với nhiều loại cảm biến và theo các chuẩn giao tiếp khác nhau và phổ biến hiện nay như: I2C, SPI,OneWire, Analog.
Để giải quyết vấn đề truyền thông giữa module chuyển đổi tín hiệu đầu vào và PLC,chúng tôi sử dụng giao thức Modbus (TCP/IP)[5], đó là giao thức được truyền thông qua chuẩn Ethernet.
Các thiết bị slave và master sử dụng địa chỉ IP để nhận dạng và giao tiếp với nhau, trong chuẩn giao tiếp này dữ liệu được mã hóa trong một gói tin TCP/IP.
Chính vì vậy, một bộ chuyển đổi phải đáp ứng được các yêu cầu bài toán đặt ra là chuyển đổi các tín hiệu từ cảm biến rồi gửi về cho PLC kết nối với các thiết bị tạo nên một hệ thống SCADA như hình 1.
Trong thiết kế này, chúng tôi sử dụng Kit Arduino UNO kết nối với module Ethernet Shield để truyền thông dữ liệu giữa module chuyển đổi với PLC (S7-1200) thông qua chuẩn thernet sử dụng giao thức Modbus.
Kit Arduino là một nền tảng phát triển dựa trên vi điều khiển AVR, nó đang được sử dụng rất phổ biến trong nhiều ứng dụng hiện nay vì tính dễ dàng trong lập trình
cũng như kết nối với các loại cảm biến khác.
Hình 2 minh họa sơ đồ khối của module chuyển đổi.
Để giao tiếp được với các chuẩn giao tiếp khác nhau thì trong bài viết này chúng tôi sử dụng các cảm biến sau: LM35, DS18B20, BH1750, RFID-RC522 với các chuẩn giao tiếp khác nhau sử dụng điện áp thấp tuy nhiên lại có độ chính xác cao, hoạt động ổn định.
Ở thử nghiệm này chúng tôi sử dụng phần mềm Arduino IDE và phần mềm Tia Portal V13. Với phần mềm này người dùng có thể lập trình, cấu hình phần cứng bằng phần mềm một cách dễ dàng.
Ngoài ra, có thể kiểm tra truyền thông bằng giao diện có sẵn trong phần mềm, ta chỉ cần kết nối PLC (S7-1200), PC với module chuyển đổi qua router sau đó cấu hình địa chỉ IP phải trùng Network ID nhưng khác nhau Host ID (Ví dụ: IP của PLC là 192.168.0.10, IP của PC là 192.168.0.5, IP của module chuyển đổi là 192.168.0.20).
Hinh 3 minh họa cấu hình cứng địa chỉ IP trên Arduino Uno. Hình 4 minh họa sơ đồ đấu nối của hệ thống.
2.3.1. Phương thức lập trình
Có 2 phương thức lập trình cho PLC cơ bản:
Lập trình tuyến tính và lập trình có cấu trúc.Tuy nhiên để giải quyết bài toán này chúng tôi sử dụng lập trình có cấu trúc dựa trên ngôn ngữ lập trình LAD 2.3.2. Các khối lập trình chính
Trong bài toán này, khối lập trình được sử dụng là khối Main (OB1):
Là khối tổ chức chương trình có chức năng thực thi một cách tuần hoàn khi CPU ở chế độ RUN. Và khối DB (Global Data Block):
lưu trữ dữ liệu có thể được truy nhập bởi tất cả các khối trong chương trình. Tất cả các khối OB, FB, FC đều có thể đọc hoặc ghi dữ liệu vào Global DB.
Hình 5 minh họa các khối lập trình để truyền thông giữa PLC với module chuyển đổi. Hình 6 minh họa bảng cấu hình khối truyền thông trên PLC.
2.3.3. Lưu đồ thuật toán
Hình 7 minh họa thuật toán phần mềm nhúng cho module chuyển đổi. Hình 8 minh họa thuật toán phần mềm trên PLC.
Hình 9. Module bộ chuyển đổi hoàn thiện trong thực tế
Hình 9 minh họa module chuyển đổi trong thực tế.
Trong thí nghiệm này chúng tôi sử dụng cảm biến nhiệt độ LM35 ghép nối với module chuyển đổi truyền giá trị nhiệt độ lên PLC (S7-1200) được minh họa ở sơ đồ hình 10 và thử nghiệm hệ thống thực tế thể hiện ở hình 11.
Hình 12 minh họa giá trị nhiệt độ đo được là 28oC hiển thị trên khối MOVE của phần mềm Tia Portal V13.
Hình 13 minh họa đọc giá trị nhiệt độ đo được của module chuyển đổi sử dụng cảm biến LM35 với chu kỳ lấy mẫu 5 giây có sai số +/- 0.5 0C.
Thử nghiệm đọc tín hiệu chuẩn giao tiếp I2C từ module chuyển đổi vào PLC thông qua chuẩn Ethernet Thí nghiệm này chúng tôi sử dụng cảm biến ánh sáng BH1750 ghép nối với module chuyển đổi truyền giá trị sánh sáng lên PLC (S7-1200) được minh họa ở sơ đồ hình 14 và thử nghiệm hệ thống thực tế thể hiện ở hình 15.
Hình 16 minh họa giá trị ánh sáng đo được là 481 lux hiển thị trên khối MOVE của phần mềm Tia Portal V13.
Hình 17 minh họa đọc giá trị ánh sáng đo được của module chuyển đổi sử dụng cảm biến BH1750 với chu kỳ lấy mẫu 5 giây với sai số +/-5 Lux.
3.3. Thử nghiệm đọc tín hiệu chuẩn giao tiếp OneWire từ module chuyển đổi vào PLC thông qua chuẩn Ethernet
Trong thí nghiệm này chúng tôi sử dụng cảm biến nhiệt độ DS18B20 ghép nối với module chuyển đổi truyền giá trị nhiệt độ lên PLC (S7-1200) được minh họa ở sơ đồ hình 18 và thử nghiệm hệ thống thể hiện ở hình 19.
Hình 20 minh họa giá trị nhiệt độ là 28oC hiển thị trên khối MOVE của phần mềm Tia Portal V13.
Hình 21 minh họa đọc giá trị nhiệt độ đo được của module chuyển đổi sử dụng cảm biến DS18B20 với chu kỳ lấy mẫu 10 giây có sai số +/- 0.5 0C.
Thí nghiệm này chúng tôi sẽ sử dụng thẻ RFIDRC522 ghép nối với module chuyển đổi truyền giá trị UID lên PLC (S7-1200) được minh họa theo sơ đồ đấu nối hình 22 và thử nghiệm hệ
thống thực tế thể hiện ở hình 23.
Hình 24 minh họa giá trị UID là 166 (0xA6);50 (0x32); 97 (0x61); 26 (0x1A) hiển thị trên khối MOVE của phần mềm Tia Portal V13.
Hình 25 minh họa giá trị UID thu được của module chuyển đổi sử dụng cảm biến RFIDRC522 tại các lần đo khác nhau với sai số là 0%.
Hình 26 minh họa dải điện áp từ đầu ra của các cảm biến đưa vào module chuyển đổi. Ở dải điện áp này thì cảm biến ghép nối vào PLC sẽ cần một bộ chuyển đổi riêng biệt cho từng loại.
Tuy nhiên với module chuyển đổi trong nghiên cứu này thì người dùng có thể ghép nối với nhiều loại cảm biến theo các chuẩn khác nhau trên cùng một module.
Trong bài viết này chúng tôi đã xây dựng thành công bộ chuyển đổi đầu vào cho PLC sử dụng chuẩn Ethernet.
Đặc biệt có thể giao tiếp nhiều loại cảm biến sử dụng điện áp thấp (3V3 và 5V) với các chuẩn giao tiếp khác nhau như: I2C, OneWire, SPI và Analog
Trong phạm vi bài viết này, với việc loại bỏ sự tác động ảnh hưởng của nhiễu, bằng kết quả thực nghiệm , sai số hệ thống đo được từ các thử nghiệm của mỗi loại cảm biến là như sau: LM35 (+/-0.5oC), DS18B20 (+/-0.5oC),BH1750 (+/-5-10 Lux), RFID (0%).
Trong tương lai chúng tôi sẽ sử dụng kết quả của bài báo này để nghiên cứu mở rộng đi sâu vào phát triển module chuyển đổi có tính năng truyền thông không dây sử dụng chuẩn truyền thông không dây ZigBee. Từ đó xây dựng hệ thống SCADA ứng dụng mạng cảm biến không dây.
HỆ THỐNG NHẬN DẠNG KHUÔN MẶT LẦN ĐẦU TIÊN TẠI VIỆT NAM
=============================