Professional Documents
Culture Documents
Báo_cáo_BTL_Vi_xử_lí
Báo_cáo_BTL_Vi_xử_lí
Báo_cáo_BTL_Vi_xử_lí
Hà Nội, 07/2024
MỤC LỤC
LỜI MỞ ĐẦU..........................................................................................................3
PHẦN 1: THIẾT KẾ HỆ THỐNG........................................................................5
1.1.THIẾT KẾ PHẦN CỨNG................................................................................5
1.Động cơ DC GA25-370 tích hợp Encoder.............................................................5
2.Encoder tích hợp.....................................................................................................5
3.Màn hình LCD 1602...............................................................................................6
4.Nguồn điện.............................................................................................................7
1.2.THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN..........................................................7
1.Vi điều khiển ATmega8 AVR................................................................................7
2.Module giao tiếp I2C cho LCD..............................................................................9
3.Module điều khiển động cơ L298N......................................................................10
3.Giao tiếp với máy tính thông qua USB ISP..........................................................10
PHẦN 2: CHẾ TẠO VÀ LẮP ĐẶT.....................................................................13
2.1.SƠ ĐỒ LẮP ĐẶT VÀ THIẾT LẬP CODE..................................................13
1.Sơ đồ mạch của hệ thống......................................................................................13
2.Lưu đồ thuật toán..................................................................................................13
2.Thiết lập code.......................................................................................................18
2.2.LẮP ĐẶT VÀ HOÀN THIỆN SẢN PHẨM..................................................25
PHẦN 3: TỔNG KẾT...........................................................................................28
3.1.KẾT QUẢ.........................................................................................................28
3.2.NHẬN XÉT......................................................................................................28
TÀI LIỆU THAM KHẢO.....................................................................................30
2
LỜI MỞ ĐẦU
Lý do chọn đề tài:
- Lựa chọn đề tài Mạch điều chỉnh tốc độ, chiều quay của động cơ DC
thông qua encoder, dùng chip ATmega8 AVR với mục tiêu muốn ứng dụng
những kiến thức về tạo xung PWM, Timer, Interupt, giao tiếp I2C,.. của vi
điều khiển AVR đã được học trong môn học Vi xử lý - ME4169 vào việc
hoàn thiện 1 sản phẩm thực tế với đầy đủ các chức năng mong muốn : đảo
chiều quay, thay đổi tốc độ động cơ DC thông qua Encoder và hiển thị trạng
thái lên màn hình LCD.
- Đây là những bước đệm đầu tiên của sinh viên Cơ điện tử chúng em trên
con đường học tập, tìm hiểu và nghiên cứu về lập trình nhúng, biến những
kiến thức đã được học trên trường trở thành 1 phần của hành trang cho công
việc tương lai sau này.
3
HỌ TÊN MSSV NHIỆM VỤ CHÍNH
PHẦN 1
THIẾT KẾ HỆ THỐNG
4
- Động cơ DC Servo GA25-370 DC Geared Motor được tích hợp thêm Encoder hai
kênh AB giúp đọc và điều kiển chính xác vị trí, chiều quay của động cơ trong các ứng
dụng cần độ có chính xác cao: điều khiển PID, Robot tự hành,....
- Điện áp sử dụng: 12VDC
- Dòng điện không tải: 36mA
- Tốc độ không tải: 72RPM
- Đường kính: 25mm
- Trọng lượng: 135gram
2. Encoder tích hợp
5
- Cảm biến từ trường Hall, có 2 kênh AB lệch nhau giúp xác định chiều quay và vận
tốc của động cơ, đĩa Encoder trả ra 11 xung/1 kênh/ 1 vòng (nếu đo tín hiệu đồng thời
của cả hai kênh sẽ thu được tổng 22 xung / 1 vòng quay của Encoder)
- Sơ đồ chân của động cơ:
1. Đỏ - Red - M1 : Dây cấp nguồn cho động cơ.
2. Trắng - White - GND : Dây cấp nguồn cho Encoder, 0VDC.
3. Vàng - Yellow - C1/A: Kênh trả xung A
4. Xanh lá - Green - C2/B: Kênh trả xung B
5. Xanh dương - Blue - VCC: Dây cấp nguồn cho Encoder 3.3~5VDC
6. Đen- Black - M2: Dây cấp nguồn cho động cơ
3. Màn hình LCD 1602
6
- Sử dụng 3 pin 18650 3.7VDC mắc nối tiếp cấp nguồn ~ 11,1VDC cho hệ thống
1.2. THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN
1. Vi điều khiển ATmega8 AVR
7
- Module timer : Hai bộ đếm 8 bit (Timer0, Timer2), Một bộ đếm 16 bit (Timer1)
- Module DAC : Không
- Kênh PWM : 3
- Bộ tạo dao động bên ngoài(XTAL) : 0-16MHz (Chân 9,10)
- Bộ dao động bên trong : Bộ dao động bên trong được hiệu chỉnh từ 0-8MHz
- Loại bộ nhớ chương trình : Flash - 8Kbyte [10000 chu kỳ ghi / xóa]
- Tốc độ CPU (MIPS) : 16 MIPS
- RAM : 1KBytes
- EEPROM : 512Byte
- Timer Watchdog : Có thể lập trình với bộ dao động trên chip riêng biệt
- Chế độ tiết kiệm điện : 6 chế độ [Chế độ chờ (Idle), giảm nhiễu tín hiệu ADC, tiết
kiệm năng lượng (Power-save), tắt nguồn (Power-down), Chế độ ngủ (Standby) và Chế
độ ngủ kéo dài (Extended Standby)]
- Nhiệt độ hoạt động : Từ -55 ° C đến + 125 ° C
8
- Kết cấu đơn giản, chỉ cần 2 chân (SDA và SCL) của MCU kết nối với 2 chân (SDA
và SCL) của module là đã có thể hiển thị thông tin lên LCD. Ngoài ra có thể điều chỉnh
được độ tương phản bởi biến trở gắn trên module.
- Kích thước: 41.5mm(L)X19mm(W)X15.3MM(H)
- Trọng lượng: 5g
- Điện áp hoạt động: 2.5v-6v
3.Module điều khiển động cơ L298N
9
- Kích thước: 43x43x27mm
4. Giao tiếp với máy tính thông qua USB ISP
- Mạch nạp usb asp chuyên nạp cho dòng Vi điều khiển AVR.
- Giao tiếp và cấp nguồn qua cổng USB 5VDC.
- Cổng nạp chuẩn ISP 10 pins.
- Hỗ trợ set Fuse bit.
- Sơ đồ chân của mạch nạp:
- Chương trình nạp : Progisp 1.72 ( tương thích với Windows 7 trở lên):
10
11
PHẦN 2:
12
+ Hàng 1: hiển thị tiêu đề mode, tăng, giảm
+ Hàng 2: thông số thay đổi: số thay đổi.
b. Phần lưu đồ
- Luồng chính:
13
- Đọc Buttons:
14
+ Đọc tín hiệu B2:
15
- Phần thao tác nút bấm:
16
3. Thiết lập code
- Khởi tạo các thư viện:
17
- Khởi tạo Timer0 và Micros()
18
- Khởi tạo các Buttons, có kéo trở trong, kết nối với chân PD5,6,7 của ATmega8:
19
- Hàm reset các giá trị PID ( mode thay đổi Kd, Ki, Kp):
20
- Khởi tạo LCD, chuyển các giá trị long, double → string:
21
- Hiển thị kí tự trên LCD theo các mode:
22
- Hàm main():
23
- Các hàm Interupts:
24
Hình ảnh bố trí mạch + các linh kiện khác
25
Mặt bên sản phẩm
26
PHẦN 3.
TỔNG KẾT
27
TÀI LIỆU THAM KHẢO
28
- Các hình ảnh : tìm kiếm tại google.com với các từ khóa: động cơ DC encoder,
ATmega8,…..
Và nhiều những tài liệu tham khảo khác…
29