1. Trang chủ
  2. » Luận Văn - Báo Cáo

Đồ án: Điều khiển tốc độ servo bằng encoder từ tính

38 75 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Đồ án môn : Đồ án đo lường và cảm biến Đề tài: Thiết kế và điều khiển tốc độ động cơ servo bằng encoder từ tính Đã có mạch lắp ráp và code sẵn trong tài liệu, Hệ thống điều khiển tốc độ Servo qua encoder từ tính và điều khiển ổn định bằng PID liên tục và bộ lọc Low-pass -Có trình bày cách hoạt động của encoder từ tính

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CƠ KHÍ ĐỒ ÁN MƠN HỌC ĐO LƯỜNG VÀ ĐIỀU KHIỂN Xây dựng hệ thống đo điều khiển tốc độ động sử dụng cảm biến encoder Giáo viên hướng dẫn: Sinh viên thực hiện: Hà Nội - 2021 PHIẾU HỌC TẬP CÁ NHÂN/NHĨM I Thơng tin chung Tên lớp: Khóa: Tên nhóm : Họ tên thành viên: II Nội dung học tập Tên chủ đề: Điều khiển ổn định tốc độ động qua encoder Hoạt động sinh viên - Nội dung 1: Tổng quan hệ thống (L4.2) - Nội dung 2: Cơ sở lý thuyết hệ thống (L4.2) - Nội dung 3: Tính tốn, thiết kế mơ hình hệ thống (L4.1, L4.3) - Nội dung 4: Viết báo cáo Sản phẩm nghiên cứu: Báo cáo thu hoạch mơ hình sản phẩm (nếu có) III Nhiệm vụ học tập Hồn thành đồ án theo thời gian quy định (từ ngày 13/9/ đến ngày 2/12/) Báo cáo nội dung nghiên cứu theo chủ đề giao trước hội đồng đánh giá IV Học liệu thực tiểu luận, tập lớn, đồ án/dự án Tài liệu học tập: [1] Tài liệu hướng dẫn đồ án môn học Cơ Điện tử, Bộ môn Cơ điện tử [2] Nguyễn Văn Khang, Nguyễn Phong Điền, Cơ điện tử, NXB KH&KT Phương tiện, nguyên liệu thực tiểu luận, tập lớn, đồ án/dự án (nếu có): Máy tính, linh kiện dụng cụ điện tử theo nhu cầu sử dụng KHOA CƠ KHÍ GIÁO VIÊN HƯỚNG DẪN LỜI NĨI ĐẦU Trong trình sản xuất đại, đo tốc độ động việc làm khơng thể thiếu, giúp cho trình giám sát sản xuất nhanh hơn, tốt hơn, cho sản phẩm ý, xác Nếu ta không đo tốc độ động khơng thể điều khiển tốc độ xác Với máy móc đại ngày nay, q trình sản xuất ln chạy với nhiều tốc độ khác nhau, tùy theo giai đoạn làm việc nó, mà tacần phải biết tốc độ động để điều chỉnh cho phù hợp Từ lâu người nghiên cứu chế tạo máy đo tốc độ sử dụng rộng rãi Trong hệ truyền động kinh điển người ta dùng máy phát tốc đo tốc độ động cơ, máy phát tốc chiều hay xoay chiều thực chất máy phát điện cơng suất nhỏ, có suất điện động tỷ lệ với tốc độ cần đo Về sau sản xuất công nghiệp ngày phát triển đại người ta bắt đầu nghiên cứu cho đời máy đo tốc độ có độ xác cao máy đo góc tuyệt đối, máy đo sử dụng cảm biến quang tốc độ với đĩa giải mã … Hiểu biết tầm quan trọng đó, nhóm chúng em làm đề tài: Xây dựng hệ thống đo điều khiển tốc độ động sử dụng cảm biến encoder Do thời gian trình độ hạn chế, thiếu kinh nghiệm thực tế nên khơng tránh khỏi sai sót Để báo cáo hồn thiện hơn, nhóm chúng em hi vọng nhận góp ý từ phía thầy LỜI CẢM ƠN Nhóm thực xin gửi lời chân thành cảm ơn đến thầy- cương vị giảng viên hướng dẫn đề tài tận tình bảo, hướng dẫn, giảng giải tận tình vấn đề vướng mắc suốt q trình nhóm chúng em thực đề tài Chúng em xin gửi lời cảm ơn đến thầy cô khoa Cơ khí nói chung thầy mơn Cơ điện tử nói riêng nhiệt tình giúp đỡ chúng em Xin chân thành cảm ơn! Hà Nội, ngày 17 tháng 11 năm Nhóm thực đồ án MỤC LỤC PHIẾU HỌC TẬP CÁ NHÂN/NHÓM LỜI NÓI ĐẦU LỜI CẢM ƠN MỤC LỤC DANH MỤC BẢNG DANH MỤC HÌNH ẢNH CHƯƠNG Tổng quan hệ thống 1.1 Giới thiệu chung 1.2 Các yêu cầu 1.3 Phương pháp, phạm vi giới hạn nghiên cứu 1.4 Ý nghĩa thực tiễn CHƯƠNG Xây dựng mơ hình hệ thống 2.1 Thiết kế sơ đồ khối 2.2 Phân tích lựa chọn cảm biến động 10 2.3 Phân tích lựa chọn Vi xử lý 16 2.4 Thiết kế điều khiển 18 CHƯƠNG Chế tạo thử nghiệm hệ thống 21 3.1 Một số linh kiện khác sử dụng đồ án 21 3.2 Lưu đồ thuật toán hệ thống 22 3.3 Sơ đồ dây nối 22 3.4 Mô hệ thống phần mềm Proteus: 23 3.5 Chế tạo mơ hình thực tế 26 3.6 Thử nghiệm động mơ hình thực tế 27 CHƯƠNG KẾT QUẢ 30 Tài liệu tham khảo 31 Phụ lục 32 DANH MỤC BẢNG Bảng 2.1 Thông số động encoder 16 Bảng 2.2 Thông số kĩ thuật broad Arduino UNO R3 17 Bảng 2.3 Tác động thông số độc lập 19 Bảng 3.1 Các linh kiện đồ án - 21 DANH MỤC HÌNH ẢNH Hình 2.1 Sơ đồ khối hệ thống Hình 2.2 Cấu tạo encoder từ tính 11 Hình 2.3 Đặc tính đầu cảm biến Hall - 12 Hình 2.4 Encoder từ tính cấu hình Shaft-End 13 Hình 2.5 Cường độ từ trường phát cảm biến Hall - 13 Hình 2.6 Giản đồ xung encoder 15 Hình 2.7 Động DC Servo GM25-370 DC Geared Motor - 15 Hình 2.8 Broad Arduino UNO R3 - 16 Hình 2.9 Sơ đồ khối điều khiển tốc độ động PID rời rạc - 19 Hình 3.1 Lưu đồ thuật tốn - 22 Hình 3.2 Sơ đồ dây nối - 23 Hình 3.3 Sơ đồ mạch mô Proteus 23 Hình 3.4 Chạy mơ hệ thống Proteus - 25 Hình 3.5 Chạy mơ sau thêm lọc low-pass - 26 Hình 3.6 Chế tạo mơ hình thực tế - 27 Hình 1.7 Chạy thử mơ hình với thống số mơ -30 Hình 1.8 Chạy thử mơ hình - thay đổi tốc độ 31 CHƯƠNG TỔNG QUAN VỀ HỆ THỐNG 1.1 Giới thiệu chung Việc đo tốc độ động đóng vai trị quan trọng kĩ thuật Để đo tốc độ động thường sử dụng số phương pháp sau đây: + Sử dụng tốc độ kế kiểu điện từ: nguyên lý hoạt động dựa tượng cảm ứng điện từ Cảm biến gồm hai phần: phần cảm (nguồn từ thông) phần cứng (phần có từ thơng qua) Khi có chuyển động tương đối phần cảm phần ứng, từ thông qua phần ứng biến thiên, xuất suất điện động cảm ứng + Sử dụng tốc độ kế vòng loại xung: làm việc theo nguyên tắc đo tần số phần tử chuyển động tuần hồn, ví dụ: chuyển động quay Cảm biến loiạ thường có đĩa mã hóa gắn với trục quay Chẳng hạn gồm phần tử suốt xen kẽ với phần tử không suốt Cho trùm sáng chiếu qua đĩa đến đầu thu quang, xung điện lấy từ đầu thu quang có tần số tỷ lệ với vận tốc cần đo Nội dung đồ án chủ yếu tập trung vào nghiên cứu xây dựng hệ thống đo tốc độ động điều khiển ổn định tốc độ đặt Hệ thống gồm thành phần chính: + Phần khí: Một giá đỡ linh kiện động + Phần điện: Nguồn 12V cho động broad Arduino + Phần điện tử: Gồm động cơ, cảm biến encoder, modun điều khiển động cơ, mạch điều khiển chính, hình hiển thị tốc độ, bàn phím 1.2 Các yêu cầu Mục tiêu chung + Thiết kế hệ thống đo tốc độ động encoder + Điều khiển tốc độ động với tốc độ đặt vào với sai số cho phép Mục tiêu cụ thể: + Thiết kế mơ hình + Đưa giá trị mong muốn vào từ bàn phím hiển thị hình + Điều khiển động tốc độ (0 -175 vịng/phút) + Đọc tín hiệu từ encoder trả thực điều khiển động với sai số < 2% 1.3 Phương pháp, phạm vi giới hạn nghiên cứu 1.3.1 Phương pháp nghiên cứu: + Phương pháp nghiên cứu lý thuyết: dựa kiến thức học lớp nguồn thông tin phương tiện thơng tin để tìm hiểu thành phần nguyên lý hoạt động hệ thống cần xây dựng + Phương pháp dựa thực nghiệm: thử nghiệm thực hành phần mềm giả lập, mơ mơ hình hệ thống để tìm hiểu sửa đổi tham số giá trị hệ thống + Phương pháp thiết kế điện tử 1.3.2 Phạm vi nghiên cứu: + Nghiên cứu tìm hiểu chế làm việc encoder từ tính + Nghiên cứu chế tạo mơ hình động servo tốc độ hoạt động từ -175 vòng/phút + Hiển thị tốc độ động lên hình LCD + Nhập tốc độ cho động từ bàn phím 1.4 Ý nghĩa thực tiễn Sử dụng encoder từ tính để đo tốc độ động sở để ứng dụng đo lường điều khiển thiết bị Sử dụng máy CNC, băng truyền, loại máy móc có sử dụng encoder để đo điều khiển CHƯƠNG XÂY DỰNG MƠ HÌNH HỆ THỐNG 2.1 Thiết kế sơ đồ khối Dựa theo mục tiêu đồ án xác định, nhóm chúng em nghiên cứu xây dựng thiết kế hệ thống theo sơ đồ khối sau: Hình 2.1 Sơ đồ khối hệ thống - Mô tả hệ thống: + Nguồn 12V cấp cho mạch Arduino Driver L298 + Arduino cấp nguồn 5V cho LCD, bàn phím encoder + Dữ liệu nhập từ bàn phím truyền Arduino để xử lý cấp sang Driver L298 để băm xung điều khiển động Đồng thời Arduino hiển thị tốc độ đặt phím vừa nhấn lên hình LCD + Động cấp nguồn xung từ L298 hoạt động tốc độ đo encoder + Encoder truyền lại liệu tốc độ đo Arduino để xử lý điều khiển trở lại động qua Driver 23 Hình 3.2 Sơ đồ dây nối 3.4 Mô hệ thống phần mềm Proteus: 3.4.1 Thiết kế mạch mô Mạch mơ proteus giúp ta quan sát kết tương quan hệ thống điều khiển trước bắt đầu tiến hành thiết kế mơ hình thực Hình 3.3 Sơ đồ mạch mơ Proteus 24 3.4.2 Chạy mô lựa chọn thông số điều khiển Quá trình xây dựng code, chọn Kp, Ki, Kd nạp vào mạch mô proteus: - Nhóm lựa chọn phương pháp kiểm sốt thơng số tay: Bước 1: Đặt Ki = Kd = Sau đó, tăng giá trị Kp tăng dần đến đầu sát với giá trị đặt (tức sai số xác lập nhỏ ) chắn có vọt lố ta chấp nhận điều Bước 2: Nếu tăng Kp đến ngưỡng vọt lỗ cao mà sai số xác lập ta tăng Ki Thơng số Ki làm cho đầu tăng dần đến ngưỡng giá trị đặt Bước 3: Tiếp theo, kiểm soát độ vọt lố độ ổn định thơng số Kd Bước 4: Kiểm sốt lại giá trị Kp, Ki vừa khớp với giá trị đầu Sau thay thông số theo bước nhóm lựa chọn tham số đáp ứng ổn sau: Kp = , Ki = 0,3, Kd = Quá trình chạy thử: Tốc độ đặt setv = 30 Kp = Ki = 0,3, Kd = 25 Hình 3.4 Chạy mô hệ thống Proteus Kết quả: - Thời gian đáp ứng nhanh 2s - Sai số xác lập lớn khoảng 12 vòng/phút - Độ vọt lố nhỏ ➢ Kết cho thấy giá trị sai số lớn so với đầu Sự điều chỉnh Kp, Ki, Kd khả quan không giảm sai số xác lập Đặt vấn đề: vấn đề gặp phải độ nhiễu tín hiệu hồi tiếp từ đầu hệ thống Có nhiều tín hiệu có tần số cao gây dao động lớn làm tăng giá trị sai số Cách khắc phục: thêm low-pass filter (bộ lọc tần số thấp) Mục đích giữ lại tín hiệu tần số thấp so với tần số cắt làm suy giảm tín hiệu tần số cao Tiến hành: Tham khảo cách xây dựng code hàm lọc 26 Hình 3.5 Chạy mơ sau thêm lọc low-pass Kết quả: - Thời gian đáp ứng nhanh - Sai số xác lập giảm: sai số khoảng vòng/phút - Độ vọt lố nhỏ ➢ Như lọc tần số thấp có hiệu với hệ thống làm giảm bớt sai số 3.5 Chế tạo mơ hình thực tế Vì số điều kiện khách quan nhóm khơng hỗ trợ trực tiếp cho nên nhóm em thống làm đơn giản hóa chế tạo mơ hình Sau mua đủ linh kiện nhóm bắt tay vào thiết kế, phác thảo sơ Và kết thực nhóm em: 27 Hình 3.6 Chế tạo mơ hình thực tế 3.6 Thử nghiệm động mơ hình thực tế Sau chế tạo lắp đặt hệ thống, tiến hành trình chạy thử Code PID nhúng vào board Arduino So sánh mô hệ thống chạy thật: Tiến hành: với đầu vào thông số Kp, Ki, Kd giống phần mô proteus Ta thu kết sau: - Độ vọt lố thấp khoảng 2% - Thời gian đáp ứng nhanh - Sai số 1 vịng/phút 28 Hình 3.7 Chạy thử mơ hình với thống số mô Ghi chú: - Blue line: tốc độ đặt - Green line : tốc độ không qua low-pass filter - Red line: tốc độ qua low-pass filter 29 Thay đổi tốc độ từ 30v/p lên 90v/p: Hình 3.8 Chạy thử mơ hình - thay đổi tốc độ Kết quả: Trong trường hợp trên, thay đổi tốc độ thời gian đáp ứng nhanh khơng có vọt lố Vấn đề gặp phải: Khi thay đổi tốc độ khoảng từ đến 175v/p khác - Từ - 60v/p: Độ vọt lố cao khoảng 20% - Từ 60v/p – 175v/p: Độ vọt lố khoảng 2-5% Nguyên nhân: Do tăng đột ngột tốc độ đặt mà động có mang hộp số nên gây vấp từ bánh 30 CHƯƠNG KẾT QUẢ ❖ Kết + Xây dựng mơ hình thực tế hệ thống với sai số cho phép để nhập tốc độ cho động if (key == '1'||key == '2'||key == '3'|| key == '4'||key == '5'||key == '6'|| key == '7'||key == '8'||key == '9'|| key == '0'||key == '.') { num1 = num1 + key; tocdo_tg = num1.toFloat(); // chiểu kí tự nhập vào từ kiểu String ==> Float Serial.println(tocdo_tg); int numLength = num1.length(); // đếm độ dài kí tự chuỗi lcd.setCursor(15 - numLength, 0); // dịch vị chí xuất kí tự sau lần nhập lcd.print(num1); // hiển thị kí tự lên LCD } // nhấn D reset tốc độ đặt vào if (key == 'D') { num1=' '; // reset chuỗi nhập lcd.clear(); // xóa hình } // nhấn # để nạp tốc độ cho động if ( key == '#' ) { if ((tocdo_tg > 175 || tocdo_tg < 0) ) // tốc độ nhập lớn 175 nhỏ vòng/ phút hiển thị LCD thông báo nhập lại { 35 tocdo_tg=0; // reset lại tốc độ trung gian để vịng lặp if lcd.clear(); lcd.setCursor(0, 0); lcd.println(" Nhap toc khoang 40-170 vong/phut "); for(int i = ; i < 24 ; i++ ) // chạy 25 kí tự sang trái { lcd.scrollDisplayLeft(); delay(150); } num1=' '; } else // nhập thay đổi tốc độ đặt { setv = tocdo_tg; // gán tốc độ đặt cho động } } // Nhấn A để dừng động if(key == 'A') { setv=0; lcd.clear(); lcd.setCursor(0, 0); lcd.print("Cho dong co dung !!!"); num1= ' '; lcd.clear(); } // nhập q kí tự thơng báo nhập lại if (num1.length() > ) { lcd.clear(); lcd.setCursor(0, 0); lcd.println(" Nhap toc khoang 0-175 vong/phut "); for(int i = ; i < 24 ; i++ ){ lcd.scrollDisplayLeft(); // chạy chữ sang trái delay(150); } 36 num1=' '; } Serial.print(setv); Serial.print(" "); Serial.print(v); Serial.println(); hienthi(); hien_thi_v(); // hiển thị tốc độ động quay } //=================================================== // Hiển thị tốc độ dộng đo void hien_thi_v(){ if (millis() - lastmillis >= 500){ // cập nhật tốc độ động 0.5s lcd.setCursor(11, 1); lcd.print(vfilt ,DEC ); // hiển thị tốc độ kiểu flaot định dạng thập phân (DEC) lastmillis = millis(); // đặt lại thời điểm cập nhật cuối } } // // Hiển thị LCD void hienthi() { lcd.setCursor(0, 0); // tạo vị trí xuất LCD - hàng 0, cột lcd.print("Toc dat:"); //lcd.cursor(); // tạo hiệu ứng nháy gạch vị trí nhập lcd.setCursor(0, 1); lcd.print("Dang quay:"); } // // đếm xung động void demxung() { if(digitalRead(phase_b) == LOW) xung++; else xung ; 37 } // // điều khiển PID void PID() { v = (xung/374)*(1/T)*60;// toc rpm xung=0; vfilt = 0.854 * vfilt + 0.0728*v + 0.0728*vpre; vpre = v; E = setv-vfilt;// tinh sai so alpha += Ki*E*10; beta = (vfilt - lastv)/10; output = Kp * E + alpha + Kd * beta; if(output>255) output = 255; else if ( output0) { analogWrite(PWM,output); digitalWrite(int1,HIGH); digitalWrite(int2,LOW); } else { analogWrite(PWM,0); digitalWrite(int1,LOW); digitalWrite(int2,LOW); } } ... tìm hiểu chế làm việc encoder từ tính + Nghiên cứu chế tạo mơ hình động servo tốc độ hoạt động từ -175 vòng/phút + Hiển thị tốc độ động lên hình LCD + Nhập tốc độ cho động từ bàn phím 1.4 Ý nghĩa... tốc độ động encoder + Điều khiển tốc độ động với tốc độ đặt vào với sai số cho phép Mục tiêu cụ thể: + Thiết kế mơ hình 8 + Đưa giá trị mong muốn vào từ bàn phím hiển thị hình + Điều khiển động... số tốc độ quay động liệu nhập từ bàn phím + Driver: hỗ trợ băm xung cấp nguồn cho động + Động servo: nhận tín hiệu điện từ Driver để hoạt động theo điều khiển + Encoder đo xử lý liệu tốc độ quay

Ngày đăng: 02/04/2022, 00:15

TỪ KHÓA LIÊN QUAN

w