1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thiết Kế Mạch Đếm Sản Phẩm Dùng Timer Của Pic16F877A.pdf

18 1 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 đề Mạch Đếm Sản Phẩm Dùng Timer Của PIC16F877A
Tác giả Nguyễn Tiến Đạt, Nguyễn Thị Huyền Trang, Lê Đức Anh
Người hướng dẫn Hoàng Anh Dũng
Trường học Viện Đại Học Mở Hà Nội
Chuyên ngành Tự động hóa
Thể loại Đồ án
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 18
Dung lượng 2,58 MB

Nội dung

Trên cơ sở đó, nhằm để có thể phát huy những kiến thức đã học cũng như tích luỹ thêm kinh nghiệm trong thiết kế mạch chúng em đã chọn đề tài: “ Mạch đếm sản phẩm sử dụng PIC”.. Đồ án đượ

Trang 1

VIỆN ĐẠI HỌC MỞ HÀ NỘI KHOA CN ĐIỆN TỬ- THÔNG TIN

Thiết kế : Mạch đếm sản phẩm dùng Timer của PIC16F877A

Sinh viên thực hiện : Nguyễn Tiến Đạt

Nguyễn Thị Huyền Trang

Lê Đức Anh

Lớp : K23C

Nghành: Tự động hóa

Giảng viên hướng dẫn: Hoàng Anh Dũng

Hà Nội, 2022

Trang 2

LỜI NÓI ĐẦU

Ngày nay khoa học kỹ thuật đã có những bước tiến rất nhanh chóng ở các quốc gia trên toàn thế giới nói chung và Việt Nam nói riêng Ngành tự động hóa đã, đang và sẽ tiếp tục có những đóng góp to lớn cho tình hình phát triển chung đó Một trong những thành tựu của ngành tự động hóa là việc cho ra đời các hệ thống sản xuất tự động thay thế con người Điều này đã giúp tăng hiệu suất lao động và tăng năng suất sản xuất cho các nhà máy, xí nghiệp Các hệ thống tự động được xây dựng nhằm mục đích phục vụ cho lĩnh vực sản xuất đặc biệt là sản xuất với số lượng lớn và ngay khi vừa mới đưa vào thử nghiệm thì nó đã chứng tỏ được ưu thế của mình thông qua các con số thống

kê về số lượng thành phẩm mà dây chuyền tự động thực hiện được so với số thành phẩm do nhân công tạo ra

Trên cơ sở đó, nhằm để có thể phát huy những kiến thức đã học cũng như tích luỹ thêm kinh nghiệm trong thiết kế mạch chúng em đã chọn đề tài: “ Mạch đếm sản phẩm sử dụng PIC” Mục đích chính của đồ án là thiết kế một hệ thống tự động có thể cho biết năng suất của dây chuyền sản xuất trong một nhà máy Đồ án được thực hiện Trên cơ

sở đó, nhằm để có thể phát huy những kiến thức đã học cũng như tích luỹ thêm kinh nghiệm trong thiết kế mạch chúng em đã chọn đề tài: “ Mạch đếm sản phẩm sử dụng PIC” Mục đích chính của đồ án là thiết kế một hệ thống tự động có thể cho biết năng suất của dây chuyền sản xuất trong một nhà máy Đồ án được thực hiện dựa trên 3 yêu cầu là mạch phải đơn giản, rẻ và có tính khả thi Từng công đoạn thực hiện cũng như giới thiệu về cơ sở lý thuyết để thiết kế nên mạch sẽ lần lượt được giới thiệu cụ thể trong những phần sau của đồ án

Việc làm đồ án đã giúp cho chúng em có thêm được nhiều kiến thức bổ ích về thực tế,

bổ sung những kiến thức đã được học ở nhà trường

Tuy nhiên, do còn hạn chế về kinh nghiệm thực tế, tài liệu tham khảo, thời gian thực hiện, nên đồ án không thể tránh khỏi những thiếu sót, kính mong giáo viên hướng dẫn góp ý xây dựng để đồ án được hoàn thiện hơn

Trang 3

CHƯƠNG 1 : GIỚI THIỆU VỀ ĐỀ TÀI

1 Tóm tắt đề tài môn học

1.1 : Giới thiệu

Đề tài đồ án môn học của nhóm em là : “ Đếm sản phẩm dùng Timer của PIC16F877A” Với yêu cầu của đề tài như trên , hướng thực hiện đề tài của

chúng em như sau :

*Tóm tắt hướng thực hiện đề tài

- Sử dụng vi điều khiển Pic 16F877 làm chíp điều khiển trung tâm

- Dùng chương trình PIC-C lập trình code

- Sử dùng phần mềm protues mô phỏng mạch

- Xây dựng các nút nhấn :

+ Nút nhấn RESET

+ Nút nhán BUTTON

- Sử dụng LED để làm tín hiệu cho các thiết bị điện

- Sử dụng LCD để làm màn hình hiển thị

- Đối tượng điều khiển là các thiết bị điện trong mạch

- Ngoài ra , trên mạch còn có các linh kiện khác để thực hiện truyền tín hiệu giữa vi điều khiển trung tâm với các thiết bị nói trên

Tất cả các module mạch trên sẽ được chúng em trình bày rõ trong ccs phần tiếp theo của đề tài

1.2 : Sơ đồ nguyên lý kết nối các module trong mạch

1.3 Cách vận hành mạch

Trang 4

CHƯƠNG 2 : GIỚI THIỆU LINH KIỆN

1 Giới thiệu về vi điều khiển PIC 16F877A

PIC là tên viết tắt của “Programmable Intelligent computer” do hãng General Instrument đặt tên cho con vi điều khiển đầu tiên của họ Hãng Micrchip tiếp tục phát triển sản phẩm này và cho đến hàng đã tạo ra gần 100 loại sản phẩm khác nhau PIC16F877A là dòng PIC khá phổ biến, khá đầy đủ tính năng phục vụ cho hầu hết tất

cả các ứng dụng thực tế Đây là dòng PIC khá dễ cho người mới làm quen với PIC có thể học tập và tạo nền tảng về họ vi điều khiển PIC của mình.Cấu trúc tổng quát của PIC16F877A

như sau:

- 8K Flash Rom

- 368 bytes Ram

- 256 bytes EFPROM

- 5 port vào ra với tín hiệu điều khiển độc lập 6

- 2 bộ định thời :

Timer0 : bộ nhớ 8 bit bộ chia tần số 8 bit

Timer2 : bộ đếm 8 bit với bộ chia tần số

- 1 bộ định thời Timer1 16 bit có thể hoạt động ở cả chế độ tiết kiệm năng lượng với nguồn xung clock ngồi

- 2 bộ Capture/Compare/ PWM

- 1 bộ biến đổi Analog -> Digital 10 bit, 8 ngõ vào

- 2 bộ so sánh tương đương

- 1 bộ định thời giám sát

- 1 cổng song song 8 bit với các tín hiệu điều khiển

-1 cổng nối tiếp

Trang 5

-15 nguồn ngắt

PIC là một họ vi điều khiển RISC của MICROCHIP

PIC: Programmable Intelligent Computer

Hình 1.1 : Sơ đồ cơ cấu của PIC16F877A

Hình 1.2 : Sơ đồ chân của PIC 16F877A

Trang 6

Hình 1.3 : Sơ đồ thực tế

* Chức năng của các ports:

RA0-5 : Cổng giao tiếp 2 chiều A RB1-7 : Cổng giao tiếp 2 chiều B

RBO/INT : Cổng giao tiếp 2 chiều Chân ngắt ngoài ( External Interrup Pin)

RC0-7 : Cổng giao tiếp 2 chiều C RD0-7 : Cổng giao tiếp 2 chiều D REO-2 : Cổng giao tiếp 2 chiều E AN0-7 : Cổng giao tiếp tương tự V : Chân mass

Vp: Chân nguồn.( +2.0V > +5.5V)

OSC1/CLKIN : Chân nối với dao động thạch anh (Oscillator Crystal Input)

OSC2/CLKOUT : Chân nối với dao động thạch anh (Oscillator Crystal Output) MCLR : Chân reset mức thấp (Active low reset)

*Điều kiện hoạt động

VDD : 5VDC

RESET: Tích cực mức thấp

Thạch anh : 4/8/12/20MHz

Cổng ghi chương trình : JTAG

2 Giới thiệu về các linh kiện trong mạch

2.1 Led 7 đoạn

Có thể hiểu một cách vô cùng đơn giản về LED 7 đoạn như sau:

LED 7 đoạn hay LED 7 thanh (Seven Segment display) là 1 linh kiện rất phổ dụng, được dùng như là 1 công cụ hiển thị đơn giản nhất

Trang 7

- Trong LED 7 thanh bao gồm ít nhất là 7 con LED mắc lại với nhau, vì vậy mà có tên

là LED 7 đoạn là vậy ,7 LED đơn được mắc sao cho nó có thể hiển thị được các số từ 0

- 9, và 1 vài chữ cái thông dụng, để phân cách thì người ta còn dùng thêm 1 led đơn để hiển thị dấu chấm (dot) Các led đơn lần lượt được gọi tên theo chữ cái A-

B-C-D-E-F-G, và dấu chấm dot (DP)

- 8 led đơn trên led 7 thanh có Anode (cực +) hoặc Cathode (cực -) được nổi chung với nhau vào một điểm và được đưa chân ra ngoài để kết nối với mạch điện 7 cực còn lại trên mỗi led đơn của led 7 đoạn và 1 cực trên led đơn ở góc dưới, bên phải của led 7 đoạn được đưa thành 8 chân riêng để điều khiển cho led sáng tắt theo ý muốn Nếu led 7 đoạn có Anode (cực +) chung, đầu chung này được nối với +Vcc, các chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 0

Hình 2.1 Sơ đồ chân của Led 7 thanh

2.2 Điện trở:

Điện trở là linh kiện thụ động có tác dụng cản trở cả dòng và áp Điện trở được sử dụng rất nhiều trong các mạch điện tử

R=

Trong đó: p là điện trở suất của vật liệu , S là thiết diện của dây , l là chiều dài của dây Điện trở là đại lượng vật lí đặc trưng cho tính chất cản trở dòng điện của một vật thể dẫn điện Nó được định nghĩa là tỉ số của hiệu điện thế giữa hai đầu vật thể đó với cường độ dòng điện đi qua nó:

R=

Trong đó

U : là hiệu điện thế giữa hai đầu vật dẫn điện, đo bằng vôn (V)

Trang 8

I: là cường độ dòng điện đi qua vật dẫn điện, đo bằng ămpe (A).

R : là điện trở của vật dẫn điện, đo bằng Ohm (Ω)

a Thạch anh 8MHz

Tạo tần số hoạt động cho PIC 16F877

Đặc tính vật lý : độ bền cơ học ít , ít chịu ảnh hưởng của nhiệt độ và tác dụng hóa học

Hình 2.2: Hình và kí hiệu thạch anh Giá trị thạch anh thường dùng là 8MHz , 12MHz ,20MHz

b Tụ điện :

Tụ điện là một linh kiện thụ động cấu tạo của tụ điện là hai bản cực bằng kim loại ghép cách nhau một khoảng 1 ở giữa hai bản tụ là dung dịch hay chất điện mỗi cách điện có điện dung C Đặc điểm của tụ là cho dòng điện xoay chiều đi qua, ngăn cản dòng điện một chiều

Hình 2.3: kí hiệu tụ điện

Giá trị của tụ điện là điện dung

Trang 9

Đơn vị của đại lượng điện dung là Fara [F] Trong thực tế đơn vị Fara là trị số rất lớn,

do đó thường dùng các đơn vị đo nhỏ hơn như micro Fara (1uF=106F), nano Fara

(InF-10 °F), picoFara (1pF=(InF-10-12F)

Công thức tính điện dung của tụ : =ℰ

Trong đó : là hằng số điện môi ℰ

S là điện tích mựt tụ m2

d là bề dày chất điện môi

2.3 Nút nhấn BUTTON

Button là nút nhấn

Nút nhấn có 2 trạng thái :

Dẫn điện ( thường dùng để tạo mức LOW cho vi điều khiển )

Không dẫn ( thường dùng để tạp múc HIGHT cho vi điều khiển )

2.4 Ic 7805

IC điều chỉnh điện áp dương đầu ra 5V Nó là IC của dòng ổn áp dương LM78xx, được sản xuất trong gói TO-220 và các gói khác IC này được sử dụng rộng rãi trong các thiết bị thương mại và giáo dục Nó cũng được sử dụng bởi nhiều người đam mê điện tử và thợ mày mò do giá rẻ, dễ sử dụng và không cần nhiều linh kiê “n bên ngoài

IC có nhiều tính năng tích hợp lý tưởng để sử dụng trong nhiều ứng dụng điện tử như dòng điện đầu ra 1.5A, chức năng bảo vệ quá tải, bảo vệ quá nhiệt, dòng điện tĩnh thấp, v.v

Trang 10

Hình 2.5 : ic 7805

Bảng thông số kĩ thuật :

Ứng dụng cho IC7805

IC 7805 được sử dụng trong nhiều loại mạch Những điều chính là:

Bộ điều chỉnh đầu ra cố định

Bộ điều chỉnh điện áp dương trong cấu hình điện áp âm

Bộ điều chỉnh đầu ra có thể điều chỉnh

Điều chỉnh dòng điện

Bộ điều chỉnh điện áp một chiều có thể điều chỉnh

Nguồn cung cấp kép được điều chỉnh

Mạch bảo vệ đảo cực-đảo chiều đầu ra

Mạch chiếu phân cực ngược

Trang 11

Bộ điều chỉnh điện áp 7805 cũng được sử dụng trong các mạch xây dựng cho đồng hồ

đo điện cảm, bộ sạc điện thoại , đầu đĩa CD di động, phần mở rộng điều khiển từ xa hồng ngoại và các mạch cung cấp điện của UPS

2.5 Diode

Diode là một linh kiện điện tử bán dẫn chỉ cho phép dòng điện đi qua nó theo một chiều duy nhất mà không chạy ngược lại Điốt bán dẫn thường đều có nguyên lý cấu tạo chung là 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 và được nối với

2 chân ra là anode và cathode

Mối tiếp xúc P – N => Cấu tạo của Diode

* Ở hình trên là mối tiếp xúc P – N và cũng chính là cấu tạo của Diode bán dẫn

Ký hiệu và hình dáng của Diode bán dẫn 2.6 Giới thiệu về lập trình PIC CCS

Cài đặt chương trình biên dịch C dùng phần mềm CCS

Cửa số CCS

Trang 12

Tạo mới một source file : File -> source file

Biên chương trình :

Kiểu biên Giá trị • Ý nghĩa

Intl True hay False (0 hay 1) số 1 bit

int8 0 đến 255 Số nguyên 1 byte ( 8 bit) int16 0 đến 65,535 Số nguyên 2 byte int32 0 đến 4,294,967,295 Số nguyên 4 byte Char -128 đến 127 Ký tự 8 bit

Float 3,4-38 đến 3,438 Số thực 32 bit

short Mặc định như kiểu int Byte Mặc định như kiểu int 8 Int Mặc định như kiểu int8 Long Mặc định như kiểu int 16 Lưu ý: có thể sử dụng signed hoặc unsigned trước các kiểu để chỉ cho trường hợp có dấu và không có dấu

Trang 13

CHƯƠNG 3 : TÍNH TOÁN THIẾT KẾ

3.1 : Sơ đồ khối của hệ thống

Khối nguồn : Nhiệm vụ cung cấp nguồn điện 1 chiều cho mạch

Khối xử lý : IC xử lý tin hiệu theo code chương trình nạp sẵn

Khối hiển thị : LED 7 đọan hiển thị theo mã code được lập trình trong khối xử

3.2 : Sơ đồ nguyên lý

Trang 14

3.3 : Lưu đồ thuật toán

3.4 : Code vi điều khiển

#include <Dem san pham 2 LED 7 doan.h>

void main() // chuong trinh chinh

{

so_dem=read_eeprom(0); // doc so dem cu duoc luu trong eeprom tai dia chi 0

Trang 15

setup_adc_ports(AN0); // thiêt lap kenh ADC AN0 lam ngo vao ADC dung de doc tin hieu tu mat thu hong ngoai

setup_adc(ADC_CLOCK_INTERNAL); // thiet lap xung cap cho ADC là xung noi

set_adc_channel(0); // dat kenh cho ADC là kenh 0 (AN0) while(TRUE) // vong lap vo han

{

output_b(ma7doan[so_dem/10%10]&cham); // xuât ma LED 7 doan hang chuc ra port B

output_c(ma7doan[so_dem%10]); // xuât ma LED 7 doan hang don vi ra port

C

delay_us(25); // tao thoi gian tre us

ty_le_cb=read_adc()*0.39; // doc ty lê % tín hieu tu mat thu hông ngoai (0-100); gia tri adc max=255; 0,39=100/255;

if(ty_le_cb>70) // khi ty le dan cua mat thu lon hon nguong (70) th¡ do là muc

1, tuc khong co vat can

{

muc=1; // xac dinh muc 1;

cham=0xff; // tat LED bao co vat can

}

if(ty_le_cb<30) // khi ty le dan cua mat thu nho hon nguong (30) th¡ do là muc

0, tuc co vat can

{

muc=0; // xac dinh muc 0;

cham=0x7f; // bat led bao co vat can

co_vat=1; // bao co vat can

}

if(muc==1&&co_vat==1) // neu muc = 1 và co vat can // tuc vat can da di qua cam bien

{

co_vat=0; // bao khong co vat

Trang 16

so_dem++; // tang so dem

if(so_dem>99) // gioi han so dem den 99

{

so_dem=0; // dat lai so dem = 0 khi so dem > 99

}

write_eeprom(0, so_dem); // ghi so dem vao EEPROM tai dia chi 0 }

// -

if(input(pin_d2)==0) // khi nút reset so dem duoc nhan

{

while(input(pin_d2)==0); // tao vong lap chowf nut duoc nha

so_dem=0; // dat so dem ve 0;

write_eeprom(0, so_dem); // ghi so dem vao EEPROM tai dia chi 0 }

if(input(pin_d0)==0) // khi nut giam duoc nhan

{

while(input(pin_d0)==0); // tao vong lap chowf nut duoc nha

so_dem ; // giam gia tri so dem

if(so_dem>99) // neu so dem > 99

{

so_dem=99; // nap lai so dem = 99

}

write_eeprom(0, so_dem); // ghi so dem vao EEPROM tai dia chi 0 }

if(input(pin_d1)==0)

{

while(input(pin_d1)==0); // tao vong lap chowf nut duoc nha

so_dem++; // tang gia tri so dem

Trang 17

if(so_dem>99) // neu so dem > 99

{

so_dem=0; // nap lai so dem = 0

}

write_eeprom(0, so_dem); // ghi so dem vao EEPROM tai dia chi 0 }

}

}

CHƯƠNG 4 : THI CÔNG MÔ PHỎNG

4.1 : Mô phỏng bàng protues

4.2 Mạch in

Trang 18

4.3 : Ảnh 3d boad mạch

4.4 : Thực hiện

Thi công in mạch , rửa mạch và hàn linh kiện

4.5 : Nạp code

Ngày đăng: 08/04/2024, 09:28

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

TÀI LIỆU LIÊN QUAN