Vi điều khiển đang dần dần thay thế con người trong các ứng dụng trong thực tiễn, và một số ứng dụng thực tiễn của Vi điều khiển như: Điều khiển tốc độ động cơ, thiết kế bảng led điện tử
Trang 1ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA ĐIỆN TỬ
- -Đồ án môn học : Vi điều khiển
Đề tài : Điều khiển và đo tốc
độ động cơ, hiển thị LCD.
Nhóm sinh viên thực hiện: Mai Văn Công
Cao Thị Thơm
Lớp: CNKT Điện Tử 2Khóa 4
Hà Nội 09-2012
Trang 2Nhận xét của giảng viên hướng dẫn
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Trang 3Lời nói đầu
Ngày nay, nhu cầu học tập và nghiên cứu các ứng dụng công nghệ Vi điều khiển ngày càng tăng trưởng mạnh mẽ Các công trình nghiên cứu và ứng dụng công nghệ này đều rất phong phú, đa dạng Vi điều khiển đang dần dần thay thế con người trong các ứng dụng trong thực tiễn, và một số ứng dụng thực tiễn của Vi điều khiển như: Điều khiển tốc độ động cơ, thiết kế bảng led điện tử, đếm sản phẩm, đo và khống chế nhiệt độ…
Với ưu điểm là điều khiển tốc độ động cơ dễ dàng, độ ổn định tốc độ cao nên động cơ một chiều đã được sử dụng khá phổ biến như: truyền động cho một số máy như máy nghiền ,máy nâng vận chuyển, điều khiển băng tải, điều khiển các robot…
Để điều khiển tốc độ của động cơ một chiều thì có rất nhiều phương pháp, trong đồ án của mình chúng em xin trình bày điều khiển động cơ dùng
họ vi điều khiển 8051 bằng phương pháp đếm xung (dùng động cơ có sử dụng encoder) Trong đồ án của mình chúng em sử dụng IC 89C52 để lập trình điều khiển động cơ một chiều DC nhỏ hơn 24V, sử dụng IC L298N để tăng công suất
Tuy chúng em đã có nhiều cố gắng song bản báo cáo Điều khiển và đo tốc độ động cơ, hiển thị LCD của chúng em không tránh được những khiếm
khuyết, thiếu sót Kính mong các thầy cô giáo thông cảm và có ý kiến đóng góp giúp chúng em rút kinh nghiệmvà để bài báo cáo hoàn thiện hơn
Cuối cùng, chúng em xin gửi lời cảm ơn chân thành đến cô Vũ Thị Thu Hương đã trực tiếp giảng dạy và hướng dẫn chúng em hoàn thành bài đồ án này
Hà Nội – 2011 Nhóm SV thực hiện
Trang 4Mục lục
Danh mục hình vẽ
Trang 5PHẦN 1 CỞ SỞ LÝ THUYẾT
SƠ LƯỢC VỀ 8051
Họ vi điều khiển này có 128 byte RAM, 4kbyte ROM, hai bộ định thời, một cổng nối tiếp và 4 cổng ra/vào song song và là 1 bộ vi xử lý 8 bit
Hình : Sơ đồ chân và chức năng của họ 8051
1.1 Port 0 ( P0.0- P0.7)
Port 0 gồm 8 chân, ngoài các chức năng xuất nhập, Port 0 còn là bus đa hợp dữ liệu và địa chỉ(AD0-AD7)
Trang 6Hình : Sơ đồ chân Port 0
1.2 Port 1 ( P1.0- P1.7)
Port 1 có chức năng xuất nhập theo bit và byte Ngoài ra, ba chân P1.5, P1.6, P1.7 được dùng để nạp ROM theo chuẩn ISP, hai chân P1.0 và P1.1 được dùng cho bộ Timer 2
Hình : Sơ đồ chân Port 1
Trang 71.4 Port 3 (P3.0- P3.7)
Mỗi chân trên Port 3 ngoai chớc năng xuất nhập còn có chớc năng riêng,
cụ thể như sau :
Bit Tên Chức năng
P3.0 RXD Dữ liệu nhận cho port nối tiếp
P3.1 TXD Dữ liệu truyền cho port nối tiếp
P3.2 INT0 Ngắt bên ngoài 0
P3.3 INT1 Ngắt bên ngoài 1
P3.4 T0 Ngõ vào của Timer/counter 0
P3.5 T1 Ngõ vào của Timer/ counter 1
P3.6 /WR Xung ghi bộ nhớ dữ liệu ngoài
P3.7 /RD Xung đọc bộ nhớ dữ liệu ngoài
1.5 Chân /PSEN ( Program store Enable)
/PSEN là chân điều khiển đọc chương trình ở bộ nhớ ngoài, nó được nối với chân /OE để cho phép đọc các byte mã lệnh trên ROM ngoài /PSEN sẽ ở mức thấp trong thời gian đọc mã lệnh Mã lệnh được đọc từ bộ nhớ ngoài qua bus dữ liệu (Port 0) thanh ghi lệnh để được giải mã Khi thực hiện chương trình trong ROM nội thì /PSEN ở mức cao
1.6 Chân ALE (Address Latch Enable)
ALE là tín hiệu điều chỉnh chốt địa chỉ có tần số bằng 1/6 tần số dao động của vi điều khiển Tín hiệu ALE được dùng để cho phép vi mạch chốt bên ngoài như 74373, 74573 chốt byte địa chỉ thấp ra khỏi bus đa hợp địa chỉ / dữ liệu (Port 0)
1.7 Chân /EA (External Access)
Tín hiệu /EA cho phép chọn bộ nhớ chương trình là bộ nhớ trong hay ngoài vi điều khiển Nếu EA ở mức cao (nối với vcc), thì vi điều khiển thi hành chương trình trong ROM nội Nếu /EA ở mức thấp (nối với GND), thì
vi điều khiển thi hành chương trình từ bộ nhớ ngoài
1.8 RST (Reset), VCC, GND
Ngõ vào RST trên chân 9 là ngõ Reset của 8051 Khi tín hiệu này được đưa lên mức cao, các thanh ghi trong bộ vi điều khiển được tải những giá trị thích hợp để khởi động hệ thống
8051 dùng nguồn điện áp một chiều có dải điện áp từ 4V đến 5,5V được cấp qua chân 20 và 40
Trang 81.9 XTAL1, XTAL2
8051 có một bộ dao động trên chíp, nó thường được nối với với bộ dao động bằng thạch anh có tần số lớn nhất là 33MHZ, thông thường là 12MHZ
4 RS I RS= 0 chọn thanh ghi lệnh.RS= 1 chọn thanh ghi dữ liệu
5 R/W I R/W= 1 đọc dữ liệu R/W = 0 ghi dữ liệu
7 DB0, 1, 2, 3, 4, 5, 6, 7, 8 I/O Các bit dữ liệu
Hình 1 :
Trang 9Chân RS được dùng để chọn các thanh ghi này như sau: Nếu RS = 0 thì thanh ghi mã lệnh được chọn để cho phép người dùng gửi đến một lệnh như xóa màn hình, con trỏ về đầu dòng… Nếu RS = 1 thì thanh ghi dữ liệu được chọn cho phép người dùng gửi dữ liệu cần hiển thị trên LCD.
Chân cho phép E được sử dụng bởi LCD để chốt thông tin hiện hữu trên chân dữ liệu của nó, khi dữ liệu được cấp đến chân đữ liệu thì một mức xung
từ cao xuống thấp phải được áp đến chân này để LCD chốt dữ liệu trên các chân chốt dữ liệu Xung này phải rộng tối thiểu 450ns
2.2. Led và Button
LED (viết tắt của : Light Emitting Diode) được cấu tạo từ một khối bán dẫn loại p ghép với một khối bán dẫn loại n, đèn LED tạo ra nhiều ánh sáng hơn, tỏa nhiệt ít hơn so với các thiết bị chiếu sáng khác vì vậy cũng tiêu thụ ít điện năng hơn
L298N là một drive chip tích hợp sẵn hai mạch cầu H bên trong với chuẩn điều khiển
TTL, không có diode nội bảo vệ Mosfet Chịu tải
tối đa trên mỗi cầu là 2A, điện áp 40VDC Logic
‘0’ ở ngõ vào lên tới 1.5V (khả năng khử nhiễu
cao).
Hình : L298N
Trang 10Hình : Sơ đồ chân của L298N
Trang 11Encoder mục đích dùng để quản lý vị
trí góc của một đĩa quay, đĩa quay có thể là
bánh xe, trục động cơ, hoặc bất kỳ thiết bị
Trang 12- Một led đơn : báo trạng thái có nguồn
- Tụ C1 và C2: nhiệm vụ lọc nguồn, chống nhiễu và san phẳng điện áp
Trang 13Hình : Khối LCD
- Khối LCD có nhiệm vụ hiển thị tốc độ động cơ
- Trong mạch Port0 sẽ truyền trực tiếp dữ liệu cho LCD
- Các chân điều khiển RS, RE, EN được ghép nối với 3 chân P2.5, P2.6, P2.7 của vi điều khiển
- Các chân số 2, 1 cung cấp nguồn hoạt động cho LCD, chân số 3 là chân điều chỉnh độ tương phản được nối thẳng xuống mát
- Chân 15, 16 có nhiệm vụ cung cấp điện áp cho đèn led trong LCD và được hạn dòng bằng 1 điện trở 1K
Hình : Khối led báo và reset
- Trong khối Reset chúng ta sử dụng điện trở 1K giúp treo áp cho chân reset của vi điều khiển luôn ở mức 0V Tụ điện C7 là 1 tụ gốm 104 có tác dụng giảm nhiễu cho nút bấm
- Các led D2, D3, D4, D5 được dùng để báo cho người sử dụng biết trạng thái hiện tại của động cơ
Trang 14Hình : Khối điều khiển động cơ
- Để khối điều khiển tốc độ động cơ hoạt động ổn định và đạt hiệu suất cao nhất thì trong mạch IC L298 được ghép nối với các linh kiện như sau:
+ 4 diode và tụ C6 được ghép nối với chân đầu ra điều khiển động cơ có tác dụng ngăn dòng ngược giảm xung nhiễu gây cháy chip vi điều khiển
+ Tụ C141 có trị số là 1000uF/16V được thiết kế rất gần chân số 4 của L298 nhằm ổn định nguồn cho động cơ
- Để cho phép động cơ hoạt động chúng ta cần sử dụng chân EN như trong hình vẽ Với mức 1 là cho phép và mức 0 là ngừng hoạt động Để điều khiển động cơ theo chiều thuận nghịch và tăng giảm tốc độ động cơ ta sử dụng 1 cách linh hoạt 2 chân IN1 và IN2 giống như trong hình vẽ 1 chân sẽ cấp xung PWM và chân còn lại điều khiển chiều thuận nghịch của động cơ
Trang 152.5. Khối vi xử lý và khối điều khiển
Hình : Khối vi xử lý và khối điều khiển
- Trong khối điều khiển sử dụng 6 nút bấm để điều khiển động cơ Các nút bấm này được treo áp bởi điện trở băng RN2 có trị số 10K
- Trong khối dao động chúng ta sử dụng 2 tụ C2, C3 cùng thạch anh 12Mhz
Trang 163. Mạch in
Hình : Lớp bottom
Trang 18dem1++; //Khi có 1 sườn sung tác động vào chân
INT1 thì biến tăng lên 1 đơn vị}
void timer0() interrupt 1
{
TH0=-1000/256; //Khoi tao cho bo dem timer 1voi he so
chia là 2000TL0=-1000%256;
while(phim_on==0); //Khi nhấn vào phím on
ledon=0; //Led báo động cơ hoạt động sáng lên
ledoff=1; //Led báo động cơ ngừng hoạt động tắt
tocdo=5; //Khởi động động cơ với tốc độ chạy 50%E=1; //Cho phép động cơ hoạt động
chieu=0; //Chiều động cơ là chiều thuận
Trang 20TMOD=0xd1; //Timer 0 chế độ 1, timer 2 chế độ 1IE=0xFF;
IP=0x04;
TR1=1;TR0=1;
IT1=1;TF0=1;
RCAP2H=0xFF; //Khởi tạo giá trị cho timer 2
dieu_khien(); //Gọi hàm điều khiển động cơ
u=t1*60/32; //Chia lấy tốc độ động cơ
Trang 21PHẦN 3: KẾT LUẬN
Tổn hao trên phần công suất nhỏ
Đây là phương pháp đơn giản và thực tế
Do điện áp tác động vào cuộn dây của động cơ là liên tục nên tuổi thọ của động cơ kéo lâu hơn so với phương pháp khác
Dải điều khiển hẹp
Phương pháp này không được sử dụng khi yêu cầu độ chính xác cao về tốc độ
Tính thực tế của sản phẩm: đo tốc độ động cơ được sử dụng rất rộng rãi trong rất nhiều các thiết bị điện tử: đầu đĩa, máy móc và các thiết bị công nghiệp cần đến độ chính xác cao
Hướng cải tiến, phát triển: sản phẩm có thể được cải tiến và được tích hợp trong các máy công nghiệp
Tài Liệu Tham Khảo