Tổng quan về đề tài
Giới thiệu về đề tài
Kể từ khi cách mạng công nghiệp 3.0 diễn ra, khoa học công nghệ đã trở thành yếu tố then chốt trong tất cả các lĩnh vực như công nghiệp, nông nghiệp và đời sống Việc sử dụng lao động con người làm nguồn sản xuất chính ngày càng kém hiệu quả, dẫn đến năng suất giảm và tình trạng cung vượt cầu, khiến sản lượng không đủ đáp ứng nhu cầu thị trường Do đó, các dây chuyền sản xuất đã được phát triển và ứng dụng rộng rãi trong mọi lĩnh vực sản xuất công nghiệp.
Dựa trên thực tiễn, tôi đã chọn đề tài phân loại sản phẩm theo màu sắc sử dụng PLC, kết hợp với việc thiết kế mô hình băng truyền và cảm biến màu sắc để thực hiện quá trình phân loại hiệu quả.
Mục đích nghiên cứu
Dựa vào kiến thức từ các môn học như PLC, điều khiển quá trình và mạng truyền thông công nghiệp, cùng với tài liệu tham khảo về cảm biến màu sắc, lập trình Arduino và giao tiếp Arduino với PLC S7-1200, em đã có đủ nền tảng để thực hiện đề tài nghiên cứu Niềm đam mê tìm hiểu nguyên lý hoạt động của dây chuyền phân loại sản phẩm theo màu sắc đã thúc đẩy em chọn đề tài này cho đồ án của mình.
Các đối tượng nghiên cứu
Các đối tượng nghiên cứu chính trong đồ án này bao gồm:
Cảm biến hồng ngoại E18-D80NK
Động cơ RC Servo SG90
Phạm vi nghiên cứu
Băng tải chỉ dài 60cm, được sử dụng trong phòng thí nghiệm cho mục đích nghiên cứu Cảm biến màu hoạt động trong phạm vi khoảng 2cm, trong khi cảm biến hồng ngoại có thể hoạt động tối đa đến 80cm Thiết bị có khả năng xử lý hai màu sắc: xanh dương và đỏ.
Dự kiến kết quả
Hệ thống phân loại sản phẩm có khả năng nhận diện hai màu sắc: đỏ và xanh lục Sau khi xử lý và nhận diện màu, sản phẩm sẽ được vận chuyển bằng băng tải và phân loại qua cần gạt động cơ Servo Việc sử dụng cảm biến vật cảm giúp nâng cao độ chính xác trong quá trình phân loại sản phẩm.
Thiết kế và thi công
Sơ đồ khối của hệ thống
Hình 2.1 sơ đồ khối của hệ thống.
Chức năng của hệ thống là điều khiển băng truyền bằng cách bật hoặc tắt thông qua các ngõ I/O Hệ thống nhận tín hiệu từ Arduino, với trạng thái tín hiệu là high hoặc low, sau đó tiến hành xử lý và trả tín hiệu về.
Adruino giúp Adruino điều khiển các thiết bị ở khối chấp hành dựa theo mức tín hiệu ngõ ra từ PLC.
Thiết bị chính: PLC S7-1200, CPU 1214C DC/DC/DC.
Hình 2.2: PLC S7-1200 CPU 1214C DC/DC/DC.
PLC (Bộ điều khiển lập trình) là thiết bị điều khiển được lập trình để thực hiện các thuật toán logic Được phát triển bởi Siemens AG, một trong những tập đoàn điện khí hàng đầu tại Đức, PLC sử dụng ngôn ngữ lập trình riêng biệt để điều khiển các quy trình tự động hóa.
S7-1200 được phát triền vào năm 2009, là phiên bản nâng cấp cho phiên bản S7-
So với phiên bản S7-200, PLC S7-1200 được cải tiến với tập lệnh mạnh mẽ hơn, tối ưu hóa quá trình điều khiển Thiết kế nhỏ gọn và chi phí tiết kiệm cũng là những ưu điểm nổi bật của S7-1200 Đặc biệt, thiết bị này còn tích hợp cổng Ethernet, hỗ trợ giao thức Ethernet và TCP/IP, mang lại khả năng kết nối linh hoạt.
Dòng PLC S7-1200 có 5 phiên bản CPU:
Trong đồ án này em đã chọn phiên bản S7-1200, CPU 1214C DC/DC/DC với các thành phần:
Module xử lý trung tâm CPU.
Module truyền thông mở rộng CM.
Module mở rộng tín hiệu ngõ I/O SM.
Module giao tiếp RS232/RS485
Cổng truyền thông Profinet (Ethernet) được tích hợp sẵn:
Kết nối với máy tính, truyền thông PLC với PLC hoặc màn hình HMI, các thiết bị ngoại vi hỗ trợ chuẩn Ethernet.
Chuẩn đầu nối RJ45 với tính năng chuyển đổi đầu chéo tự động.
Hỗ trợ 16 kết nối Ethernet, TCP/IP, ISO on TCP, S7 Protocol.
Tính năng điều khiển quá trình, vị trí, đo lường:
Ngõ ra điều rộng xung PWM, điều khiển tốc độ của động cơ, nhiệt độ.
16 bộ điều khiển PID với tính năng đi kèm auto-tune.
6 bộ HSC ứng dụng trong việc đo đạc và kiểm tra số lượng, với 3 bộ đếm 100kHz và 3 bộ đếm 30kHz.
2 ngõ ra PTO 10kHz điều khiển tốc độ và vị trí động cơ bước hoặc động cớ Servo drive.
Mở rộng module và bộ nhớ linh hoạt.
Kết nối tối đa thêm 8 module mở rộng I/O.
Ngõ vào Analog được tích hợp sẵn trên CPU: 0-10V.
Mở rộng bộ nhớ CPU thông qua thẻ nhớ Simatic.
Tên CPU CPU 1214C DC/DC/DC Nguồn cung cấp (PM) 115/230 VAC hoặc 24 VDC
Module truyền thông mở rộng (CM) 3
Module mở rộng tín hiệu vào ra (SM) 2
Module giao tiếp RS232/RS485 2
CPU -blocks DB, FC, FB, Counter, Timer Số lượng tối đa của phạm vi khối địa chỉ từ 1 đến 65535 Ngõ I/O trên board Digital 14 input/ 10 output
Bộ nhớ người dùng Word 75KB
Kích thước xử lý ảnh Input(I) 1024 bytes
Xung ngõ ra 100kHz Qa.0 đến Qa.3
Bộ đếm tốc độ cao HSC 100kHz Ia.0 đến Ia.5
Tốc độ sử lý phộp toỏn với số thực 2.3 às/lệnh
Tốc độ sử lý bit 0.08 às/lệnh
Bảng 2.1: Đặc tính kĩ thuật của CPU 1214C DC/DC/DC
Hình 2.3: phần mềm Tia Portal V13.
Tia Portal V13 (Totally Integrated Automation PORTAL) là phần mềm do Siemens Automation and Drives phát triển từ năm 1996, nổi bật trong lĩnh vực điều khiển tự động Phần mềm này rất quen thuộc với các kỹ sư tự động hóa, tích hợp đầy đủ các công cụ lập trình cho ngành tự động hóa và truyền động điện, bao gồm PLC, HMI và Inverter của Siemens.
Tia Portal được bao gồm những gói sản phẩm sau:
SIMATIC STEP 7 PLCSIM Professional/Advanced
Ngôn ngữ lập trình cho PLC S7-1200 trên SIMATIC STEP 7 bao gồm:
LAD (Ladder logic): là ngôn ngữ được sử dụng chính trong lập trình PLC, ngôn ngữ LAD hay còn được gọi là ngôn ngữ hình thang.
FBD (Function Block Diagram) là một ngôn ngữ lập trình đồ họa tương tự như LAD, nhưng cho phép thể hiện các hàm toán học một cách trực tiếp, kết hợp với các hộp logic.
Ngôn ngữ STL (Statement List) là một ngôn ngữ lập trình dạng liệt kê ký tự, cho phép tạo ra các chương trình mà các ngôn ngữ LAD và FBD khó thực hiện STL cấu trúc chương trình thành các mạng (network), trong đó mỗi mạng đảm nhận một nhiệm vụ cụ thể, giúp tối ưu hóa quy trình lập trình.
Arduino là một thiết bị quen thuộc trong lĩnh vực kỹ thuật điện, được phát triển lần đầu tại Ý Nó được xây dựng trên nền tảng AVR Atmel 8bit hoặc ARM Atmel 32bit, tích hợp cổng USB, chân I/O analog và chân I/O digital trên bo mạch Arduino có nhiều dòng sản phẩm khác nhau, đáp ứng nhu cầu đa dạng của người dùng.
Arduino là một lựa chọn phổ biến cho những người mới bắt đầu lập trình và thiết kế mạch điện nhờ vào sự đa dạng về loại sản phẩm, giá cả phải chăng và khả năng tích hợp nhiều chức năng trên một bo mạch nhỏ gọn Bên cạnh đó, Arduino cũng có thể được sử dụng làm bộ xử lý trung tâm cho các dự án lớn.
Nắm được ưu điểm của Adruino, em đã chọn Adruino Uno R3 là khối xử lý trong mô hình hệ thống này.
Chức năng của hệ thống là nhận tín hiệu analog từ khối thu thập dữ liệu, sau đó xử lý và truyền thông với khối PLC bằng tín hiệu digital qua rơle Điều này cho phép khối PLC xử lý và trả tín hiệu về để điều khiển khối chấp hành.
Linh kiện chính: Adruino Uno R3.
Thông số kĩ thuật của Adruino Uno R3. o Kích thước: 68.6mm X 53.4mm. o Trọng lượng: 25g. o Nguồn sử dụng: 5V
Điện áp giới hạn: 6-20V. o Dòng sử dụng
Chân 3.3V: điện áp ra 3.3V, dòng tối đa50mA. o Chân I/O Digital: 14 chân. o Chân điều rộng xung: 6 chân. o Chân ngõ vào Analog: 5 chân. o Các chân năng lượng:
5V: cấp điện áp ra 5V, dòng tối đa 500mA.
Vin (Voltage Input): cấp nguồn ngoài cho Adruino.
IOEF: điện áp hoạt động của vi điều khiển ATmega328P, không được sử dụng như một nguồn cấp.
Reset vi điều khiển trên board mạch Arduino Uno R3 sử dụng vi điều khiển ATmega328P, với bộ nhớ Flash 32KB (trong đó 0.5KB dành cho bootloader), SRAM 2KB và EEPROM 1KB Tần số xung clock của nó là 16MHz Arduino Uno R3 cũng có một số chân Digital với chức năng đặc biệt.
Chân PWM (chân 3,5,6,9,10,11): cho phép xuất xung với độ phân giải 8bits thông qua hàm analogWrite().
Chân giao tiếp SPI bao gồm chân 10 (SS), chân 11 (MOSI), chân 12 (MISO) và chân 13 (SCK), cho phép truyền thông hiệu quả với các thiết bị ngoại vi thông qua giao thức SPI.
Chân Serial bao gồm chân 0 (RX) để nhận dữ liệu và chân 1 (TX) để gửi dữ liệu TTL Serial Chức năng này cho phép giao tiếp với các thiết bị bên ngoài và kết nối Bluetooth.
Led 13: trên board có một led màu cam được nối với chân 13, Led sẽ sáng khi đang được sử dụng và nhấp nháy khi người dùng nhấn nút Reset.
Chân A4(SDA) và chân A5(SCL): hỗ trợ giao tiếp I2C/TWI với thiết bị ngoại vi.
Hình 2.12: phần mềm Adruino IED.
Arduino IDE là phần mềm lập trình chuyên dụng cho Arduino, lần đầu ra mắt vào tháng 3 năm 2015 Được phát triển bằng ngôn ngữ Java, Arduino IDE cung cấp môi trường tích hợp mã nguồn mở, giúp người dùng dễ dàng tải mã lên board mạch Với ngôn ngữ lập trình C, Arduino IDE trở thành lựa chọn phổ biến cho những người mới bắt đầu học lập trình điện tử.
Một số thư viện nền tảng có sẵn trên Adruino IED như: Brige, EEPROM, Esplora, Keyboard, Mouse, Firmata…
2.1.3 Khối thu thập dữ liệu 2.1.3.1 Cảm biến màu sắc TCS3200
Chức năng của hệ thống là đo độ biến thiên tần số của màu đỏ và xanh lá trên sản phẩm, giúp Arduino nhận diện từng màu Sau khi nhận diện, Arduino sẽ đưa ra các điều kiện và mệnh lệnh cho khối chấp hành, đồng thời xuất tín hiệu qua khối PLC.
Hình 2.13: Cảm biến màu sắc TCS3200.
Cảm biến màu sắc TCS3200 có khả năng phân biệt màu sắc bằng cách phân tích độ biến thiên ánh sáng của bốn màu cơ bản: xanh lá, đỏ, xanh dương và trắng Thiết bị sử dụng photodiode để chuyển đổi ánh sáng thành tần số hoặc dòng điện thành tần số, với tần số đầu ra của cảm biến TCS3200 được thể hiện dưới dạng xung vuông.
Hình 2.14: Sơ đồ nguyên lý cảm biến màu TCS3200.
Sơ đồ nguyên lý
Hình 2.29: sơ đồ nguyên lý hệ thống.
Thiết kế mô hình
Mô hình hệ thống phân loại sản phẩm theo màu sắc sẽ bao gồm các thành phần như sau:
1 PLC S7-1200 – CPU 1214C DC/DC/DC
1 Cảm biến màu sắc TCS3200
2 Cảm biến hồng ngoại E18-D80NK
2 Động cơ Servo RC SG90
3 Relay opto kích high/low 24VDC
4 Relay opto kích high/low 5VDC
Giá đựng động cơ Servo, cảm biến màu sắc, máng trượt
Hình 2.30: thi công mô hình
Giải thuật và điều khiển
Hoạt động của hệ thống
Khi hệ thống khởi động, băng tải di chuyển sản phẩm qua cảm biến màu, phân tích và gửi tần số đến Arduino Arduino kích hoạt chân tín hiệu PLC qua Relay opto 5V cho màu xanh dương hoặc đỏ Sản phẩm tiếp tục qua cảm biến hồng ngoại thứ nhất; nếu phát hiện màu đỏ, PLC gửi tín hiệu 5V qua Relay opto 24V để điều khiển Servo1 gạt sản phẩm xuống Đối với sản phẩm màu xanh dương, PLC kích mức low vào chân điều khiển Servo Khi sản phẩm đi qua cảm biến hồng ngoại thứ hai, PLC phát hiện và kích hoạt Servo 2 để gạt sản phẩm màu xanh dương xuống dưới máng.
Lưu đồ giải thuật
màu xanh dương %I0.2 màu đỏ %I0.1
Hình 3.2: Lưu đồ giải thuật PLC
Thực nghiệm
Tiến hành thực nghiệm
Bước 1: cấp nguồn cho Adruino 5VDC.
Bước 2: cấp nguồn cho PLC 220VAC, thu được nguồn ra DC 24V
Bước 3: Kết nối PLC S7-1200 với máy tính thông qua cổng truyền thông Ethernet
Bước 4: Tải chương trình đã lập trình sẵn trên phần mềm Tia Portal V13 lên PLC và tiến hành kết nối PLC với máy tính trên phần mềm.
Bước 5: Nạp Code chương trình trên phần mềm Adruino IED vào Adruino.
Bước 6: Nhấn nút nhấn I0.0 cho băng truyền chạy, giá trị 1 được lưu vào vùng nhớ
Bước 7: Đặt sản phẩm màu xanh dương hoặc đỏ lên băng truyền và kiểm tra độ chính xác của Servo Thực hiện các thử nghiệm với các trường hợp: xanh – xanh, đỏ – đỏ, xanh – đỏ, và các chuỗi kết hợp như xanh – xanh – đỏ, đỏ – đỏ – xanh.
Bước 8: Tắt băng truyền và hệ thống.
Kết quả thực nghiệm
Hình 4.1 Thực nghiệm mô hình.
Việc kết nối PLC với máy tính và PLC với Adruino thông qua Relay opto hoạt động một cách ổn định.
Không thấy dấu hiệu của sụt áp hay quá tải.
Hệ thống nhận diện màu và phân loại màu chính xác, động cơ Servo gạt đúng góc gạt.
Các trường hợp nhận diện màu được đề ra hệ thống đều đáp ứng và xử lý được.