1. Trang chủ
  2. » Giáo Dục - Đào Tạo

LẬP TRÌNH căn bản điện tử PROJECT CUỐI kì project điều khiển và đo tốc độ động cơ DC trong thời gian thực bằng encoder

16 12 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

Thông tin cơ bản

Tiêu đề Điều Khiển Và Đo Tốc Độ Động Cơ DC Trong Thời Gian Thực Bằng Encoder
Tác giả Nhóm Sinh Viên
Người hướng dẫn Lê Minh Huy, Giảng viên
Trường học Đại Học Phenikaa
Chuyên ngành Điện Tử
Thể loại Đồ án cuối kỳ
Năm xuất bản 2022-2023
Thành phố Hà Nội
Định dạng
Số trang 16
Dung lượng 2,96 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

KHOA CƠ ĐIỆN TỬ Ô TÔ VÀ NĂNG LƯỢNG ---o0o---LẬP TRÌNH CĂN BẢN ĐIỆN TỬ PROJECT CUỐI KÌ Project: Điều khiển và đo tốc độ động cơ DC trong thời gian thực bằng encoder Giảng viên: Lê Minh Hu

Trang 1

KHOA CƠ ĐIỆN TỬ Ô TÔ VÀ NĂNG LƯỢNG

-o0o -LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

PROJECT CUỐI KÌ

Project: Điều khiển và đo tốc độ động cơ DC trong thời gian

thực bằng encoder

Giảng viên: Lê Minh Huy

Trang 2

LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

PHÂN CÔNG VIỆC

chú

Phạm Xuân - Lập trình mô hình điều khiển và đo tốc độ

Trung động cơ DC

- Viết báo cáo

Lò Công - Lập trình giao diện

Minh - Làm Powerpoint

- Lắp đặt phần cứng

Duy Ngọc - Lập trình khối Encoder

- Lập trình giao diện

- Edit video

2 | P a g e

Trang 3

Mục Lục

Phần 1: Lời mở đầu 4

Phần 2: Tổng quan 4

Phần 3: Chi tiết đồ án 5

1 Giới thiệu tổng quan 5

1.1.Một vài link liên quan 5

1.2.Ý tưởng 5

1.3.Giao diện phần mềm 5

1.4.Phần cứng 6

2 Chi tiết về đồ án 6

2.1 Sơ đồ điều khiển vòng kín 6

2.1.1 Phần code mô hình điều khiển và đo tốc độ 7 2.1.2 Thiết kế và vận hành 11 2.2 Giao diện 13

Phần 4: Thảo luận 14

Phần 5: Tham khảo 15

Trang 4

LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

Phần 1: Lời mở đầu

Lời đầu tiên, chúng em xin trân thành cảm ơn Trường Đại học Phenikaa

đã đưa môn lập trình cơ bản Điện tử vào chương trình giảng dạy Môn học này cung cấp cho chúng em nhiều kiến thức về lập trình điều khiển, phần mềm cũng như phần cứng điều khiển Khóa học này còn giúp chúng em trau dồi nhiều kĩ năng mềm: kỹ năng thuyết trình, kỹ năng viết báo cáo, kỹ năng làm việc nhóm,

…Đây là những kiến thức vô cùng hữu ích cho sinh viên và công việc sau này của chúng em

Chúng em cũng xin gửi lời cảm ơn đến thầy Lê Minh Huy – Giảng viên bộ môn đã dạy và truyền đạt kiến thức cho chúng em trong suốt thời gian học tập vừa qua

Chúng em đã cố gắng để hoàn thành báo cáo này Tuy nhiên, do kiến thức chúng em còn hạn chế và khả năng tiếp thu thực tế còn lúng túng nên đồ án này của chúng em không thể tránh khỏi sai sót Bọn em mong nhận được góp ý thêm từ Thầy và Bạn đọc để cải thiện dự án của chúng em Xin chân thành cảm ơn!

Phần 2: Tổng quan

Trong đồ án này, chúng em thiết kế 1 bộ điều khiển tốc độ cho động cơ DC đơn giản Trước tiên, sử dụng bộ điều khiển PID, ứng dụng trên bo mạch vi điều khiển Arudino Uno là nhân điều khiển trung tâm, MATLAB/SIMULINK là

chương trình xử lý trung gian, phần công suất sử dụng Driver tích hợp L298 để điều chỉnh tốc độ động cơ đạt giá trị đặt (setpoint) nhập vào từ trước

Encoder sẽ đưa xung phản ánh tốc độ động cơ về vi điều khiển, sau đó vi điều khiển sẽ tính toán tốc độ hiện tại để hiển thị và thực hiện giải thuật để điều khiển PID để điều chế độ rộng xung (PWM – Pulse Width Modulation) điều khiển thông qua driver L298

4 | P a g e

Trang 5

Phần 3: Chi tiết đồ án

1 Giới thiệu tổng quan

1.1 Một vài link liên quan

Trình bày:

https://drive.google.com/drive/folders/1wi2iG05VW3tXJBbwD1KN7k3P dWtcL6NA?usp=share_link

Phần cứng:

https://drive.google.com/drive/folders/1wi2iG05VW3tXJBbwD1KN7k3Pd WtcL6NA?usp=share_link

1.2 Ý tưởng

Chúng em quyết định chọn đề tài này và phát triển nó theo hướng điều khiển tốc độ động cơ Chúng em muốn chọn một đề tài có liên quan đến ngành học là Cơ điện tử ô tô để chủ động tìm hiểu kiến thức, giúp chúng em nâng cao kiến thức liên quan đến ngành và hiểu hơn về ngành của mình

1.3 Giao diện phần mềm

Pic1 Giao diện

Trang 6

Pic1 Giao diện

Trang 7

1.4 Phần cứng

Pic2 Phần cứng

2 Chi tiết về đồ án

2.1 Sơ đồ điều khiển vòng kín

Nhánh phản hồi

Trang 8

LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

2.1.1 Phần code mô hình điều khiển và đo tốc độ

Dưới đây là sơ đồ khối chính mô hình điều khiển và đo tốc độ

Pic3 Sơ đồ khối chính

Chúng ta sẽ đặt một giá trị (setpoint), quy ước giá trị là rpm, tức là

vòng/phút Sau đó, bộ điều khiển PID sẽ tiến hành tính toán để có được giá trị đầu ra Gía trị đầu ra sẽ điều khiển động cơ Encoder sẽ được sử dụng để đọc

tốc độ của động cơ, trả về hệ thống để tính toán ra sai số Từ sai số này, chúng

ta sẽ tính toán ra tín hiều điều khiển để điều khiển động cơ Nó sẽ lặp đi lặp lại đến khi nào sai số nhỏ nhất để đáp ứng hệ thống hoạt động chính xác

Pic4a Thiết lập chân tín hiệu phản hồi từ Encoder

Sử dụng khối Matlab System để tạo ra khối Encoder (code Encoder ở

Pic4b) Chúng ta sẽ thiết lập kết nối kênh A với chân số 2 và kênh B với chân

số 3 Encoder này có 30 xung ở mỗi kênh A và B, đối với khối Encoder này

nó sẽ đọc xung về khi tín hiệu thay đổi, tức là từ 0 đến 1 và từ 1 về 0 nên số xung khi quay hết 1 vòng là 120 xung

7 | P a g e

Trang 9

Dưới đây là phần code của encoder

Pic4b Phần code của Encoder

Pic5 Khối tính toán tốc độ động cơ

Trang 10

LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

phần tính toán như Pic5, Sử dụng các khối như là Delay, constant,

Product, Gain Sau khi nhận tín hiệu trả về từ encoder, khối sẽ thực hiện tính

toán và đưa về tốc độ đã quy ước chung là rpm Ta thiết lập độ dài trễ là 10.

Pic6 Hàm lọc nhiễu tín hiệu

Nhiễu nguồn xung là một vấn đề thường hay xảy ra, vì vậy, để lọc nhiều, Sử

dụng một khối hàm truyền (Transfer Function) với các thông số có sẵn như

Pic6.

Pic7 Thiết lập giá trị tốc độ ban đầu

điều khiển tốc độ

Pic8 Bộ điều khiển PID

9 | P a g e

Trang 11

Về bộ điều khiển PID, nó sẽ giúp sai số xảy ra sẽ được giảm đến mức tối

thiểu nhất bởi ảnh hưởng của tác động tỉ lệ, ảnh hưởng của tác động tích

phân và được làm rõ bởi một tốc độ đạt được với tác động vi phân số liệu trước

đó ta có 3 thông số: kp, Ki, Kd tương ứng là tỉ lệ, tích phân và đạo hàm.

Kp: Độ lợi tỉ lệ

Ki: Độ lợi tích phân

Kd: Độ lợi vi phân

Để chọn ra thông số này, ta áp dụng phương pháp Ziegler-Nichols thứ 2, ban đầu để kp = 2, ta tiếp tục tăng cho đến khi tín hiệu bắt đầu dao động điều hòa

thì giá trị đạt kp = 10 như Pic8a bên dưới

Pic8a

Với Kp = 10 tín hiệu bắt đầu giao động điều hòa, với Tth = 0.1s Xác

định thông số Kth = 10, Tth = 0.1(s)

Trang 12

LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

-PID 0.6Kth = 6 0.5Tth = 0.05 0.125Tth = 0.0125 Với: = /( ): Thời gian khâu vi phân

Td = Thời gian khâu tích phân

Áp dụng công thức tính bộ điều khiển theo:

R(s) = Kp(1 + 1 + )

2.1.2 Thiết kế và vận hành

Các thành phần để hoàn thiện phần cứng:

Động Cơ Encoder 30 Xung E130-30AB 1

11 | P a g e

Trang 13

Các linh kiện điện tử được sử dụng:

Pic9 Linh kiện

Trang 14

LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

Hoàn thành phần cứng:

Pic10 Phần cứng

2.2 Giao diện

Giao diện giúp người dùng có thể dễ dàng điều khiển động cơ

Pic11 Giao diện

13 | P a g e

Trang 15

Phần code cho giao diện:

Pic12 Code giao diện

Phần 4: Thảo Luận

Về mô hình điều khiển tốc độ động cơ này, bộ PID giúp sai số đạt đến mức thấp nhất Nhưng trên thực tế, sai số do tác động bên ngoài và nhiễu xung cũng khiến kết quả không như mong muốn Thông số của của PID và của hàm lọc xung cũng mang tính tương đối Dự án này bắt đầu từ nhũng kiến thức cơ bản về Matlab/Simulink, trong quá trình tìm hiểu kiến thức, cũng có những sai sót dẫn đến sản phẩm chưa được tốt nhất Do đó, để làm cho nó tốt hơn trong tương lai, bọn em sẽ tiếp tục nghiên cứu sâu thêm và áp dụng được trong những hoàn cảnh khác nhau khiến sản phẩm trở nên tốt nhất

Trang 16

LẬP TRÌNH CĂN BẢN ĐIỆN TỬ

Phần 5: Tham khảo

[1] MATLAB_Stephen J Chapman - MATLAB programming for engineers-Thomson (2008)

[2] https://ctms.engin.umich.edu/CTMS/index.php?aux=Activities_DCmotorB

[3] https://ctms.engin.umich.edu/CTMS/index.php?aux=Activities_DCmotorA

15 | P a g e

Ngày đăng: 19/12/2022, 12:07

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w