Tải bản đầy đủ (.pdf) (18 trang)

Đồ án kỹ thuật vi xử lí đề tài thiết kế và điều khiển mô hình đếm sản phẩm hiển thị ra led 7 đoạn

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.11 MB, 18 trang )

ĐẠI HỌC CẦN THƠ
TRƯỜNG BÁCH KHOA
BỘ MÔN ĐIỆN TỬ - VIỄN THƠNG



BÁO CÁO ĐỒ ÁN
KỸ THUẬT VI XỬ LÍ
ĐỀ TÀI: THIẾT KẾ VÀ ĐIỀU KHIỂN MƠ HÌNH ĐẾM
SẢN PHẨM. HIỂN THỊ RA LED 7 ĐOẠN.

GVHD:

SVTH:

ThS.TRẦN HỮU DANH

NGÔ MINH KHÔI
MSSV:B2013016

Học kỳ 1- Năm học: 2022-2023


I – GIỚI THIỆU ĐỀ TÀI
1.1 Yêu cầu và giới hạn đề tài
a) Yêu cầu
b) Giới hạn của đề tài
1.2 Mục tiêu của đề tài
II – GIẢI QUYẾT ĐỀ TÀI
2.1 Linh kiện sử dụng
a) Vi điều khiển MSP430G2553


b) Cảm biến vật cản hồng ngoại
c) Led 7 đoạn
2.2 Sơ đồ
a) Sơ đồ khối tổng quan của hệ thống
b) Lưu đồ chương điều khiển cho hệ thống thiết kế
III – THIẾT KẾ MẠCH
3.1 Mạch chính
a) Sơ đồ ngun lí mơ phỏng
b) Thiết kế PCB
c) Mạch thực tế
3.2 Cách hoạt động của mạch
a) Phương thức hoạt động của mạch
b) Cách sử dụng mạch
IV – KẾT LUẬN
5.1 Ưu điểm
5.2 Khuyến điểm
5.3 Hướng phát triển và các lĩnh vực ứng dụng
V - TÀI LIẸU THAM KHẢO

1


I – GIỚI THIỆU ĐỀ TÀI
1.1 Yêu cầu và giới hạn đề tài
a) Yêu cầu:
- Thiết kế và điều khiển mơ hình đếm sản phẩm. Hiển thị ra led 7 đoạn,
có điều chỉnh thơng số bằng phím ấn.
b) Giới hạn của đề tài:
- Dùng cảm biến hồng ngoại để phát hiện vật thể.
1.2 Mục tiêu của đề tài

-Một số mục tiêu cần đạt được khi thực hiện đề tài:
+ Hiểu được cấu tạo của vi điều khiển MSP430.
+ Tìm hiểu cấu tạo và hoạt động của cảm biến hồng ngoại.
+ Cách lập trình bằng ngơn ngữ C, sử dụng phần mềm IAR để lập trình
cho họ vi điều khiển MSP430.

II – GIẢI QUYẾT ĐỀ TÀI
2.1 Linh kiện sử dụng
a) Vi điều khiển MSP430G2553
*Những đặc điểm tổng quát của họ vi điều khiển MSP430:
• Điện áp nguồn: 1.8V – 3.6 V.
• Mức tiêu thụ năng lượng cực thấp:
- Chế độ hoạt động: 270 μA tại 1MHz, 2,2 V.
- Chế độ chờ: 0.7 μA.
- Chế độ tắt (RAM vẫn được duy trì): 0.1 μA.
• Cấu trúc RISC-16 bit, Thời gian một chu kỳ lệnh là 62.5 ns
• Cấu hình các module Clock cơ bản:
- Tần số nội lên tới 16 MHz với 4 hiệu chỉnh tần số +- 1%.
- Thạch anh 32 KHz.
- Tần số làm việc lên tới 16 MHz.
- Bộ cộng hưởng.
- Nguồn tạo xung nhịp bên ngồi.
• Timer_A 16 bit với 3 thanh ghi hình, 3 thanh ghi so sánh độ rộng 16
bit
2


• Timer_B 16 bit với 3 thanh ghi hình, 3 thanh ghi so sánh độ rộng 16
bit
• Giao diện truyền thông nối tiếp:

- Hỗ trợ truyền thông nối tiếp nâng cao UART, tự động dị tìm tốc độ
Baud.
- Bộ mã hóa và giải mã IrDA (Infrared Data Associatio).
- Bộ mã hóa và giải mã IrDA (Infrared Data Associatio).
- Chuẩn giao tiếp động bộ SPI
- Chuẩn giao tiếp I2C.
• Bộ chuyển đổi ADC 10 bit, 200 ksps với điện áp tham chiếu nội, Lấy
mẫu và chốt. Tự động quét kênh, điều khiển chuyển đổi dữ liệu.
• Bộ nạp chương trình.
• Module mô phỏng trên chip
- MSP430 được sử dụng và biết đến đặc biệt trong những ứng dụng về
thiết bị đo có sử dụng hoặc khơng sử dụng LCD với chế độ nguồn
nuôi rất thấp. Với chế độ nguồn nuôi từ khoảng 1,8 đến 3,6v và 5 chế
độ bảo vệ nguồn
- Với sự tiêu thụ dòng rất thấp trong chế độ tích cực thì dịng tiêu thụ
là 200uA, 1Mhz, 2.2v; với chế độ standby thì dịng tiêu thụ là 0.7uA.
Và chế độ tắt chỉ duy trì bộ nhớ Ram thì dịng tiêu thụ rất nhỏ 0.1uA.
- MSP430 có ưu thế về chế độ nguồn nuôi. Thời gian chuyển chế độ
từ chế độ standby sang chế độ tích cực rất nhỏ (< 6us). Và có tích hợp
96 kiểu hình cho hiển thị LCD. 16 bit thanh ghi, 16 bit RISC CPU.
- Có một đặc điểm của họ nhà MSP là khi MCU khơng có tín hiệu dao
động ngoại, thì MSP sẽ tự động chuyển sang hoạt động ở chế độ dao
động nội.
* Sơ đồ chân :Chip MSP430 có kích thước nhỏ gọn , chỉ với 20 chân
đối với kiểu chân DIP.
- Bao gồm 2 port I/O (hay GPIO general purprose input/ output : cổng
nhập xuất chung).

3



* Sơ đồ khối:

b) Cảm biến vật cản hồng ngoại
*Cảm biến vật cản hồng ngoại là gì?

4


Cảm biến vật cản hồng ngoại sử dụng một cặp truyền và nhận tia
hồng ngoại. Tia hồng ngoại phát một tần số nhất định khi gặp vật cản
sẽ phản xạ vào đèn thu hồng ngoại, sau khi qua IC so sánh đèn màu
xanh sẽ sáng lên, đồng thời cho tín hiệu số đầu ra

Mắt phát hồng ngoại là TX, mắt thu hồng ngoại là RX

Nguyên lý hoạt động của mắt thu phát hồng ngoại
Chúng ta có thể thấy rằng mắt phát hồng ngoại truyền trong một phạm
vi giới hạn và nó đi đến một khoảng cách nhất định vì khơng có đối tượng
phản xạ lại nên mắt thu hồng ngoại không thể phát hiện vật cản, ngược
lại khi gặp vật cản cản ánh sáng hồng ngoại được phản chiếu lại khi đó
mắt thu sẽ phát hiện được vật cản và xuất tín hiệu ra.

5


ảnh hưởng của đối tượng tới việc phát hiện của cảm biến
Ngồi ra độ nhạy của cảm biến cịn phụ thuộc vào về mặt vật cản gặp phải, ví
dụ như các vật có xu hướng màu trắng có khả năng phản xạ ánh sáng hồng
ngoại mạnh hơn các vật cản có màu tối, các vật cản màu tối hấp thụ ánh sáng

hồng ngoại nhiều hơn và phản xạ lại ít hơn số lượng khơng đủ để mắt thu có
thể phát hiện.
* Nguyên lý hoạt động của một mạch cảm biến vật cản hồng ngoại cơ bản

6


Sơ đồ nguyên lý cảm biến vật cản hồng ngoại
Led phát hồng ngoại ( IR LED ) luôn luôn phát ra sóng ánh sáng có bước song
hồng ngoại mắt người khơng thể nhìn thấy ánh sáng này, vì vậy người ta sử
dụng led thu hồng ngoại, led thu hồng ngoại bình thường nó có nội trở rất lớn
( vài trăm KΩ ), khi led thu được tia hồng ngoại chiếu vào đủ lớn thì nội trở
của nó giảm xuống (cỡ vài chục Ω).
Khi gặp vật cản, những chùm tia hồng ngoại gặp vật cản và phản xạ lại led thu
làm led thu thay đổi giá trị điện trở. Ở đây chúng ta thấy cầu chia áp ở điện trở
R2 và mắt thu hồng ngoại, sự thay đổi điện trở của mắt thu hồng ngoại dẫn đến
điện áp đầu vào chân 3 Op-Amp cũng thay đổi.

7


Khi khoảng cách càng gần, sự thay đổi càng lớn.
Khi đó, điện áp đầu vào chân 3 Op-Amp được so sánh với giá trị điện áp không
đổi gim trên biến trở R3, nếu điện áp chân 3 Op-Amp lớn hơn điện áp chân 2
Op-Amp thì Op-Amp xuất mức 1 ( bằng VCC) . Ngược lại nếu điện áp chân 3
Op-Amp nhỏ hơn điện áp chân 2 Op-Amp thì Op-Amp xuất mức 0 ( bằng
GND)
Điện trở như R1 (150Ω), R2 (10KΩ ), R4 (1 KΩ ) giúp các led hoạt động mà
không bị cháy.
Biến trở R3 dùng để chỉnh độ nhạy của biến trở.


*Thông số kỹ thuật.
Điện áp cung cấp cho mạch: 3.3V-5V.
Bộ so sánh dùng Op Amp LM358 hoặc LM393.
Đầu ra kỹ thuật số mức ( 1 và 0 ).
c) Led 7 đoạn
- Led 7 đoạn là linh kiện điện tử tích hợp 8 led đơn được bố trí có
thể hiển thị linh hoạt các số từ 0 -9 và các chữ cái từ a – f ( dùng
trong hệ thập lục phân ). Một led 7 đoạn có thể hiển thị dấu chấm
trong số thực.
- Led 7 đoạncó 2 loại chính là Anode chung và Cathode chung

Bố trí thực tế của Led 7 đoạn

8


Cấu tạo của 2 Led 7 đoạn

Sơ đồ chân của Led 7 đoạn 3 số Anode chung

2.2 Sơ đồ
a) Sơ đồ khối tổng quan của hệ thống

KHỐI CẢM BIẾN

KHỐI ĐIỀU KHIỂN

KHỐI HIỂN THỊ


PHÍM ẤN ĐIỀU KHIỂN

9


b) Lưu đồ chương điều khiển cho hệ thống thiết kế

Bắt đầu

Đặt và điều chỉnh
sản phẩm đếm

dem=0

Cảm biến phát hiện vật cản
Đ
dem= dem +1

Đ

Đ

Buzzer

dem >= san
pham set
S
Hiển thị ra led 7 đoạn

C. Code

#include "io430G2553.h"
#include "stdio.h"
//Khai bao 3 led 7SEG
#define L1 P2OUT_bit.P0
#define L2 P2OUT_bit.P1
10


#define L3 P2OUT_bit.P2
#define DLED P1OUT
void delayms(int ms);
void hienthi();
void print(int num);
void bao();
void tang_set();
void giam_set();
unsigned char led7segA[10]=
{0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
char buff[3]={0,0,0};
int dem;
int giatri=0;
int set=0;
int sp_set=999;
void main(void)
{
//Stop watchdog time to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
__bis_SR_register(GIE);
dem=0;
P1DIR = 0xFF;

P1OUT = BIT7;
P2SEL &=~BIT6; // chon chuc nang xuat /nhap cho p2.6
P2SEL2 &=~BIT6; // _____________________
P2DIR = BIT5+BIT3;
P2IE = BIT6;
P2IES = BIT6;
P2IFG &=~ BIT6;
P2DIR = BIT4;
P2DIR = (BIT0+BIT1+BIT2);
while (1)
{
hienthi();
if ((P2IN & BIT4)!=giatri)
{
if ((P2IN & BIT4)==0) // co san pham di qua
{
dem++;
print(dem);
delayms(10);
}
11


giatri=(P2IN & BIT4);
}
if (dem>=sp_set)
{
dem=0;
}
tang_set();

giam_set();
bao();
}
}
// hien thi 7 SEG----------------------------------------------------void hienthi()
{
DLED = led7segA[buff[0]];
L1 = 1;
delayms(2);
L1 = 0; L2 = 0;L3=0;
DLED = led7segA[buff[1]];
L2 = 1;
delayms(2);
L1 = 0; L2 = 0;L3 = 0;
DLED = led7segA[buff[2]];
L3 = 1;
delayms(2);
L1 = 0; L2 = 0;L3 = 0;
}
// In 7SEG-------------------------------------------------------void print(int dem)
{
buff[0]=((dem%1000))/100;
buff[1]=((dem%1000)%100)/10;
buff[2]=dem%10;
}
// delay-----------------------void delayms (int ms)
{
for(int i=0;i__delay_cycles(1000);//delay 1s
}

// tang 1 dv-------------------------------------------------------------12


void tang_set(){
hienthi();
if(set==1)
{
print(sp_set);
if((P2IN & BIT3)==0)
{
sp_set++;
delayms(10);
while( P2IN & BIT3);
{
print(sp_set);
}
}
if (sp_set>999)
{
sp_set=0;
}
}
}
//giam 1 dv----------------------------------------------------------------------void giam_set(){
hienthi();
if(set==1){
print(sp_set);
if ((P2IN & BIT5)==0)
{
sp_set--;

delayms(10);
while(( P2IN & BIT5))
{
print(sp_set);
}
}
if (sp_set<0)
{
sp_set=999;
}
}
}
// bao--------------------------------------------------------------------void bao()
13


{
if ((P2IN & BIT4)==0)
{
P1OUT = BIT7;
delayms(30);
P1OUT &=~ BIT7;
delayms(30);
}
}
#pragma vector=PORT2_VECTOR
__interrupt void port2(void)
{
if(P2IFG&BIT6)
{

set++;
__delay_cycles(20000);
if(set==2)
set=0;
P2IFG &=~ BIT6;
}
}

III – THIẾT KẾ MẠCH
3.1 Mạch chính
a) Sơ đồ ngun lí mơ phỏng

14


b) Thiết kế PCB

c) Mạch thực tế

15


3.2 Cách hoạt động của mạch
a) Phương thức hoạt động của mạch
- Khi có vật cản trước cảm biến hồng ngoại thì cảm biến sẽ gửi tín hiệu về vi
điều khiển khi đó bộ đếm sẽ tăng lên 1 đơn vị và hiển thi ra led 7 đoạn.
- Khi mạch hoạt động mặc định mạch sẽ đếm tới 999 sản phẩm và quay về 1.
- Người sử dụng có thể tùy chỉnh số sản phẩm tối đa thơng qua phím ấn.
b) Cách sử dụng mạch
- Nếu để mặc định mạch sẽ đếm được tới 999.

- Sử dụng phím ấn: Mạch có 4 phím lần lượt là SET/TANG/GIAM/RS
+ phím SET để vào cài đặt số sản phẩm tối đa .
+ Phím TANG/GIAM : Tăng/ Giảm các thơng số.
+ Phím RS : Khởi động lại khi mạch có lỗi và đưa số sản phẩm về 0.

IV – KẾT LUẬN
5.1 Ưu điểm:
16


- Mạch hoạt động ổn định và đúng yêu cầu đề ra.
- Mạch đơn giản,tiết kiệm điện năng, giá thành khá rẻ.
5.2 Khuyết điểm:
- Trong q trình vẽ mạch cịn sơ suất nên bị thiếu 1 nút ấn.
- Code chưa được tối ưu.
5.3 Hướng phát triển và các lĩnh vực ứng dụng
- Mục đích của mạch đếm sản phẩm là giúp cho nhà máy đếm được số
lượng sản phẩm của máy tao ra một cách đơn giản,chính xác mà khơng
cần tốn sức của công nhân.
- Hướng phát triển là phân loại được sản phẩm.

V-TÀI LIỆU THAM KHẢO
- Giáo trình vi điều khiển MSP430
- Trang web: http: www.alldatasheet.com

17




×