Tải bản đầy đủ (.docx) (25 trang)

báo cáo môn học thiết kế hệ thống đo và điều khiển tốc độ động cơ điện một chiều dựa trên vi điều khiển mcs 51

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.9 MB, 25 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>ĐẠI HỌC BÁCH KHOA HÀ NỘI</b>

<b>Báo Cáo Môn Học</b>

<b>THIẾT KẾ HỆ THỐNG ĐO VÀ ĐIỀU KHIỂN TỐC ĐỘĐỘNG CƠ ĐIỆN MỘT CHIỀU DỰA TRÊN VI ĐIỀU</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>MỤC LỤC</b>

<b>CHƯƠNG 1. NHẬT KÍ HOẠT ĐỘNG...1</b>

<b>CHƯƠNG 2. TỔ CHỨC THỰC HIỆN...2</b>

2.1 Yêu cầu của dự án...2

<i>Bảng 1.1 Yêu cầu của dự án...2</i>

2.2 Giới thiệu thành viên của dự án...2

<i>Bảng 1.2 Giới thiệu thành viên...2</i>

2.3 Kế hoạch thực hiện chung của dự án...2

2.4 Kế hoạch và nội dung thực hiện của từng thành viên...3

<b>CHƯƠNG 3. NỘI DUNG THỰC HIỆN...5</b>

3.1 Phân tích các yêu cầu của dự án...5

3.2 Tìm hiểu các nghiên cứu, dự án liên quan...5

3.2.1 Vi điều khiển MSC-51...5

3.2.2 Đặc tính của động cơ điện một chiều...6

3.2.3 Phương pháp đo tốc độ động cơ...7

3.2.4 Phương pháp điều khiển tốc độ động cơ...7

3.2.5 Bài toán truyền tin UART...7

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>CHƯƠNG 1. NHẬT KÍ HOẠT ĐỘNG</b>

cứu bước đầu

thành file word

5 Báo cáo thiết kế chi tiết Thêm ảnh mô phỏng,hoàn thiện phần thiết kếchi tiết

khai thực tế, thay đổiphần cứng từ encoder334 xung thành encoder20 xung

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>CHƯƠNG 2. TỔ CHỨC THỰC HIỆN2.1 Yêu cầu của dự án</b>

Đo tốc độ động cơ và hiển

thị trên LCD <sup>Đưa ra tốc độ động cơ hiển thị lên LCD. 1</sup>

Điều khiển tốc độ động cơ

Điều khiển tốc độ động cơ theo giá trịdo người dùng cài đặt qua phím chứcnăng: bật, tắt, tăng, giảm. <sup>2</sup>Cài đặt giá trị tốc độ mong muốn qua

<i>Bảng 2.1 Yêu cầu của dự án</i>

<b>2.2 Giới thiệu thành viên của dự án</b>

Họ và tên: Chu Minh QuânMSSV: 20210703

Phụ trách công việc: thiết kế mô phỏng LCD, motor DC,đọc tốc độ động cơ về, PWM, triển khai phần cứng, hoànthiện báo cáo.

Họ và tên: Trần Thái DươngMSSV: 20210257

Phụ trách công việc: thiết kế thuật toán điều khiển PID,giao tiếp UART, bàn phím, triển khai phần cứng, hồnthiện báo cáo.

<i>Bảng 2.2 Giới thiệu thành viên</i>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

12 Mơ tả bài tốn Báo cáo mơ tả chi tiết từng chức năng13 <sup>Tìm hiểu về các</sup>bài toán liên

Báo cáo tổng quan các giải pháp, kỹthuật, công nghệ liên quan đến dự án,đánh giá

14, 15 <sup>Kế hoạch thực</sup>hiện, thiết kế sơbộ

- Sơ đồ khối đảm bảo các chức năngcủa bộ điều khiển

- Kế hoạch triển khai (theo tuần)- Báo cáo: sơ đồ khối, mô tả hoạtđộng của sơ đồ khối

16, 17 <sup>Thiết kế chi tiết,</sup><sub>mô phỏng</sub>

- Lựa chọn linh kiện

- Mô phỏng hoạt động các khối

- Tích hợp mơ phỏng đánh giá tồn bộhệ thống

18 <sup>Triển khai phần</sup><sub>cứng, đánh giá</sub>

- Mua linh kiện

- Triển khai phần cứng (PCB, cắm bomạch, …)

- Kiểm tra, đánh giá19 <sup>Hiệu chỉnh, báo</sup><sub>cáo, demo</sub>

<i>Bảng 2.3 Kế hoạch thực hiện chung của dự án</i>

<b>2.4 Kế hoạch và nội dung thực hiện của từng thành viên</b>

1 Mơ tả bài tốn Báo cáo mơ tả chi tiết

2 Tìm hiểu về cácbài tốn liênquan

Tìm hiểu về động cơđiện 1 chiều (DC), cácđặc tính, đo tốc độđộng cơ.

T133 Thiết kế sơ bộ - Sơ đồ khối đảm bảo

các chức năng của hệthống đo và bộ điềukhiển

- Xây dựng sơ đồ khốichương trình đo, điềukhiển tốc độ động cơ.

T14, 15

4 Thiết kế chi tiết,mô phỏng hoạtđộng các khối,tích hợp môphỏng, đánh giá

- Mô phỏng hoạt độngcủa khối đo, hiển thịgiá trị lên LCD

- Tích hợp mô phỏnggiữa các khối

T16, 17

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

- Báo cáo đánh giá hệthống

5 Triển khai phầncứng, Demo,hiệu chỉnh, báocáo

- Mua linh kiện

- Lắp mạch và kiểm tra- Bản hiệu chỉnh

- Báo cáo môn học

T18, 19

<i>Bảng 2.4 Kế hoạch làm việc của thành viên Chu Minh Quân</i>

1 Tìm hiểu về cácbài tốn liênquan

Tìm hiểu về bài toántruyền tin UART, thuậttoán điều khiển tốc độđộng cơ

T132 Kế hoạch thực

4 Thiết kế chi tiết,mô phỏng hoạtđộng các khối

Mô phỏng hoạt độngcủa các khối truyền tinUART và khối điềukhiển.

T16, 175 Triển khai phần

cứng, Demo,hiệu chỉnh, báocáo

- Mua linh kiện

- Lắp mạch và kiểm tra- Bản hiệu chỉnh

- Báo cáo môn học

T18, 19

<i>Bảng 2.5 Kế hoạch làm việc của thành viên Trần Thái Dương</i>

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>CHƯƠNG 3. NỘI DUNG THỰC HIỆN3.1 Phân tích các yêu cầu của dự án</b>

- Hệ thống đo và điều khiển tốc độ động cơ điện một chiều dựa trên viđiều khiển MCS-51 được bố trí như hình vẽ dưới đây.

<i>Hình 3.1. Hệ thống đo và điều khiển tốc độ động cơ điện một chiều dựa trên vi điềukhiển MCS-51</i>

- Hệ điều khiển động cơ một chiều được thiết kế với các yêu cầu tăng tốc,giảm tốc để tốc độ động cơ đạt giá trị mong muốn của người dùng cài đặtqua phím chức năng và qua kết nối trên máy tính qua cổng UART.

- 4 button mục đích quay thuận, quay nghịch, start, stop.

- Tốc độ động cơ sẽ được đo bởi sensor. Ở đây, ta sử dụng encoder được gắn trên động cơ để đo số vịng quay của động cơ thơng qua sự liên lạc, mất liên lạc của led phát quang và bộ phận thu quang rồi chuyển thành các xung điện áp vuông gửi tới chân ngắt của vi điều khiển MCS-51.

- Hệ thống sử dụng giao tiếp UART thực hiện nhiệm vụ nhận tốc độ độngcơ tức thời từ vi điều khiển MCS-51 và truyền lên máy tính, hiển thị đồ thịtốc độ động cơ trên màn hình máy tính.

<b>3.2 Tìm hiểu các nghiên cứu, dự án liên quan3.2.1Vi điều khiển MSC-51</b>

- Ở đây nhóm sử dụng vi điều khiển AT89S52,một trong những bộ vi điều khiển phổ biến của họ Atmel, vi điều khiển AT89S52 là vi điều khiển cơng nghệ CMOS 8 bit có bộ nhớ Flash 8KB và bộ nhớ RAM 256 byte.

- Nó có thể hoạt động ở tần số tối đa là 33MHz bằng cách sử dụng bộ dao động bên ngoài. Giống như các bộ vi điều khiển khác, nó có các chân GPIO, ba bộ định thời 16 bit, một cổng giao tiếp UART song cơng (truyền tín hiệu theo cả 2 hướng), ba bộ định thời 16 bit, bộ tạo dao động trên chip.

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

- Để vi điều khiển hoạt động, ta cần kích hoạt 1 số chân như sau: Chân 40, 31 nối nguồn, chân 20 nối đất

 Chân 18, 19 nối với thạch anh 11.0592MHz qua 2 tụ 3.3pF songsong

 Chân 9 (RST) nối đất qua 1 trở và 1 tụ song song, đồng thời nối lênnguồn qua 1 button

- Trong project này, nhóm tóm tắt lý thuyết tổng quan về các chế độ dùngđể gửi xung pwm, đo vận tốc, truyền giá trị vận tốc

 Bộ timer/counter: được dùng để đếm/ tạo khoảng thời gian, đếm sựkiện bên ngoài, hoặc tạo tốc độ baud cho port truyền tin nối tiếp Ở họ 8052 có 3 timer/counter: 0,1,2

 Các thanh ghi sử dụng trong chế độ timer/counter:

 Chế độ hoạt động của các bộ timer/counter được điều khiểnthông qua 2 thanh ghi 8-bit: TMOD (thanh ghi chế độ),TCON (thanh ghi điều khiển)

 Thanh ghi chứa giá trị đếm: 2 thanh ghi 8 bit TH0 TL0 chotimer 0, TH1 TL1 cho timer 1

<b>3.2.2Đặc tính của động cơ điện một chiều</b>

Khi đặt vào 2 đầu động cơ 1 điện áp 1 chiều, động cơ sẽ quay với vận tốc tăng vàgiảm đồng thuận với độ lớn điện áp, chiều động cơ phụ thuộc vào chiều điện áp

<b>3.2.3Phương pháp đo tốc độ động cơ</b>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

- Khi động cơ quay, cảm biến ánh sáng sẽ gửi xung đến 8051, trên động cơcó 20 vạch nên quay được 1 vịng sẽ gửi 20 xung, từ đó đếm các xungnhận được trong 1 giây và quy đổi ra đơn vị vịng/phút

(hình mơ tả kết nối giữa chân phát xung của encoder và chân P3.3 của 8051)

<b>3.2.4Phương pháp điều khiển tốc độ động cơ</b>

- Tốc độ quay của động cơ DC đồng biến với điện áp đặt vào nó. Do đó,cách

đơn giản nhất để điều khiển tốc độ quay của rotor là thay đổi mức điện áp đặt vàođộng cơ. PWM là một phương pháp rất hiệu quả trong việc cung cấp ngay lập tứcđiện áp giữa mức cao và mức thấp của nguồn điện giúp động cơ thay đổi tốc độmượt hơn so với phương pháp cổ điển.

- Nguyên tắc cơ bản của phương pháp điều khiển PWM là giữ nguyên giátrị

điện áp và thay đổi thời gian đặt điện áp vào động cơ. Điều này có nghĩa, với tầnsố đóng ngắt cơng tắc đủ lớn, thời gian cấp điện áp vào động cơ càng lâu thì điệnáp trung bình càng cao, ngược lại thời gian cấp điện vào động cơ ngắn điện áptrung bình giảm. Như vậy, PWM là một kỹ thuật so sánh tỷ lệ phần trăm điện ápnguồn bằng cách đóng ngắt nhanh nguồn điện cấp vào động cơ tạo ra một tínhiệu xung, với độ rộng xung (thời gian cấp điện áp) xác định sẽ tạo ra một điệnáp trung bình xác định (được minh họa như hình 1). Khi tần số đóng ngắt đủ lớn(thường từ 1 ÷20 kHz), động cơ sẽ chạy với một tốc độ ổn định nhờ momentquay.

- Đại lượng mô tả mối quan hệ giữa khoảng thời gian T-on và T-off đượcgọi là độ rộng xung (duty cycle).

<i>duty<sub>cycle</sub></i>= <i>T<sub>on</sub>T<small>on</small></i>+<i>T<small>off</small></i>

<i>x 100</i>

<b>3.2.5Bài toán truyền tin UART</b>

- Hiển thị vận tốc tức thời lên máy tính và vẽ đồ thị để đánh giá hiệu quả.

- Vai trò: Hiển thị lời dẫn, vận tốc đặt và vận tốc tức thời.

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

- Tổng quan về LCD 16x2:

 Được sử dụng để hiển thị trạng thái hoặc các thông số.

 Có 16 chân trong đó 8 chân dữ liệu (D0 – D7) và 3 chân điều khiển (RS, RW, EN).

 5 chân còn lại dùng để cấp nguồn và đèn nền cho LCD 16x2. Có thể sử dụng ở chế độ 4 bit hoặc 8 bit tùy theo ứng dụng ta

vi điều khiển qua đó điều khiển một thiết bị ngoại vi nào đó.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>3.3 Lựa chọn giải pháp và lên phương án thiết kế3.3.1Thiết kế sơ bộ </b>

- Để đo tốc độ động cơ, ta lấy xung từ chân ra của encoder kết nối với chânngắt ngoài INT0 của 8051, sử dụng ngắt timer 2 để lấy vận tốc mỗi giây.- Để hiển thị lời dẫn, tốc độ đặt và tốc độ tức thời lên LCD, ta sử dụng cổng

P0 để kết nối với LCD, giao tiếp 4 bit.

- Để điều khiển tốc độ động cơ, ta sử dụng chân P3.3 để xuất xung PWMbằng ngắt timer 0, sau đó đưa vào cổng ENA của L298, đồng thời sử dụngcác nút bấm “thuận”, “nghịch”, “stop” , các cổng P3.4, P3.5 làm đầu vàoIN1 IN2 của L298 để set chế độ quay cho motor, đầu ra L298 đặt vào 2đầu của motor.

- Để nhập vận tốc mong muốn, sử dụng keypad 4x3 kết nối đầu ra các hàngvà cột với cổng P1 của 8051.

- Để truyền vận tốc lên máy tính, ta sử dụng chân TXD của vi điều khiểnkết nối với cổng com Matlab bằng giao tiếp UART, sử dụng ngắt timer 1,từ đó vẽ đồ thị.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b>3.3.2Thiết kế chi tiết và mơ phỏng</b>

- Đây là mơ hình mơ phỏng đầy đủ :

- Đo tốc độ động cơ

 Khi động cơ quay, cảm biến ánh sáng trên encoder gửi xung đến8051, trên động cơ có 20 vạch đen nên quay được 1 vịng sẽ gửi 20xung, từ đó đếm các xung nhận được trong 1 giây và quy đổi rađơn vị vịng/phút, ở đây nhóm sử dụng ngắt ngồi 0 để nhận xungtừ encoder và ngắt timer 2 để đọc và đổi tốc độ động cơ mỗi 1 giây.

(hình mơ tả kết nối chân phát xung của encoder và chân P3.3 của8051)

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

(code phục vụ việc đo tốc độ động cơ)- Nhập vận tốc mong muốn từ keypad:

theo cột để kiểm tra xem nút nào được bấm cụ thể như sau:

INPUT (giá trị ban đầu cho = 1), các cột Col 1 =>Col 3 là các chân OUTPUT.

như kỹ thuật quét Led trong bài Led ma trận) và đọc giá trị của các hàng. Hàng nào bị kéo xuống 0 chứng tỏ nút được bấm. Dựa vào vị trí cột = 0 và hàng = 0 ta xác định được giá trị nút bấm.

keypad[4][3]={‘1′,’2′,’3′,’4′,’5′,’6′,’7′,’8′,’9′,’*’,’0′,’#’};

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

(code phục vụ việc quét phím)

- Điều khiển tốc độ động cơ: Gửi xung PWM qua L298N, từ đó đặt ra hiệuđiện thế trung bình lên động cơ.

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

 Thuật toán điều khiển PID: đo sự sai lệch giữa vận tốc tức thời và vậntốc đặt, từ đó tìm ra hiệu điện thế dặt vào 2 đầu động cơ theo biểu thức:

duty_cycle = k<small>p</small> * e + k<small>i</small> *

<i>edt</i> + k<small>d</small> * <i><sup>de</sup><sub>dt</sub></i> (e=v_ref-v)

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

(code phục vụ điều khiển tốc độ động cơ sử dụng thuật toán PID)

- UART: Đọc dữ liệu là tốc độ tức thời của motor dc từ MCS-51 về máytính.

Nhóm dùng phần mềm Virtual Serial Port Driver Pro để kết nối giữa cổngcom ảo của proteus (com2) với cổng com ảo trên matlab (com1) để lấy giátrị vận tốc và vẽ đồ thị.

(hình mơ tả đồ thị của vận tốc thực khi vận tốc đặt là 100 vịng/phút) Ở đây, nhóm viết riêng hàm UART bằng assembly, sau đó nhúng

vào chương trình chính:

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

(code phục vụ việc xuất giá trị vận tốc)

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

(code matlab phục vụ việc nhận vận tốc và vẽ đồ thị)

- Hiển thị giá trị vận tốc đặt và giá trị vận tốc tức thời trên LCD 16x2: nhóm

sử dụng giao tiếp 4 bit

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

(code phục vụ việc hiển thị vận tốc lên LCD)- Chọn chế độ quay thuận, nghịch, reset, stop từ button

(code phục vụ việc chọn chế độ quay)

<b>3.4 Thử nghiệm và đánh giá</b>

- Nhóm đã thực hiện mô phỏng và kết quả tương đối như mong đợi, vẫncòn 1 vấn đề là việc vận tốc cuối cùng không hội tụ tuyệt đối đến vận tốcđặt, nhưng sai số cuối cùng đã nhỏ hơn 1%.

<b>3.5 Hoàn thiện sản phẩm</b>

<b>3.5.1Triển khai phần cứng</b>

Các linh kiện cần thiết:

 Nguồn 12VDC: cấp điện cho L298, từ L298 xuất nguồn 5V nuôicác linh kiện còn lại

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

 Vi điều khiển AT89S52: vi điều khiển thuộc họ 8052, điều khiểntoàn bộ chương trình: đo vận tốc và hiển thị lên LCD, truyền lênmáy tính bằng UART, điều khiển vận tốc qua L298, kết nối keypadđể set vận tốc đặt

 DC Motor:

 Module encoder: phát xung cho vi điều khiển, mỗi vòng động cơquay encoder phát được 20 xung

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

 LCD 16x2: màn hình hiển thị vận tốc đặt và vận tốc tức thời

 Module điều khiển động cơ L298N: đặt điện áp vào 2 đầu động cơđể chạy, điện áp trung bình dựa trên duty-cycle của PWM đi vàoL298N, lớn nhất là 12V

 Keypad 4x3: đặt vận tốc mong muốn vào vi điều khiển

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

 Mạch nạp ISP: nạp code từ máy tính vào AT89S52

 Cáp chuyển đổi USB to TTL: truyền giá trị vận tốc lên máy tính đểvẽ đồ thị

 Các linh kiện phụ : nút bấm, dây nối, test board, điện trở, biến trở

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

- Chạy và đánh giá: nhóm đã cho chạy thử và kết quả tương đối như mongmuốn, tuy vận tốc chưa hội tụ tuyệt đối đến giá trị mong muốn nhưng saisố đủ nhỏ có thể chấp nhận được.

- Hình ảnh dưới đây là đồ thị vận tốc thu được khi chạy thực tế, với vận tốcđặt là 250 vòng/phút:

<b>CHƯƠNG 4. KẾT LUẬN4.1 Kết quả thực hiện</b>

<b>STT Nội dungKết quả cần đạt<sup>Thời gian</sup>thực hiện(dự kiến)</b>

<b>Thờigian thựchiện(thực tế)</b>

1 Mơ tả bài tốn Báo cáo mô tả chitiết từng chức năng <sup>T12</sup>

Đúng kếhoạch

Hoànthành2 Tìm hiểu về

các bài tốnliên quan

Tìm hiểu về động cơđiện 1 chiều (DC),các đặc tính, đo tốcđộ động cơ.

Đúng kếhoạch

Hoànthành3 Thiết kế sơ bộ - Sơ đồ khối đảm

bảo các chức năngcủa hệ thống đo vàbộ điều khiển

- Xây dựng sơ đồkhối chương trìnhđo, điều khiển tốc độđộng cơ.

T14, 15

Đúng kếhoạch

4 Thiết kế chi - Mô phỏng hoạt T16, 17 Đúng kế Hoàn

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

tiết, mô phỏnghoạt động cáckhối, tích hợpmơ phỏng,đánh giá

động của khối đo,hiển thị giá trị lênLCD, PWM.

- Tích hợp mơ phỏnggiữa các khối

- Báo cáo đánh giáhệ thống

5 Triển khai phầncứng, Demo,hiệu chỉnh, báocáo

- Mua linh kiện- Lắp mạch và kiểmtra

- Bản hiệu chỉnh- Báo cáo môn học

T18, 19

Đúng kếhoạch

<i>Bảng 4.6 Kế hoạch làm việc thực tế của thành viên Chu Minh Quân</i>

<b>Thời gianthực hiện(dự kiến)</b>

<b>Thờigian thựchiện(thực tế)</b>

1 Tìm hiểu vềcác bài tốnliên quan

Tìm hiểu về bài tốntruyền tin UART,thuật toán điều khiểntốc độ động cơ

Đúng kế

hoạch <sup>Hoàn</sup>thành

4 Thiết kế chitiết, mô phỏnghoạt động cáckhối

Mô phỏng hoạt độngcủa các khối truyềntin UART và khốiđiều khiển.

T16, 17

Đúng kếhoạch

Hoànthành5 Triển khai

phần cứng,Demo, hiệuchỉnh, báo cáo

- Mua linh kiện- Lắp mạch và kiểmtra

- Bản hiệu chỉnh- Báo cáo môn học

T18, 19

Đúng kếhoạch

<i>Bảng 4.7 Kế hoạch làm việc thực tế của thành viên Trần Thái Dương</i>

</div>

×