thiết kế quạt thông minh dùng pic 16f877a

32 1.8K 13
thiết kế quạt thông minh dùng pic 16f877a

Đ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

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ VIỄN THÔNG BÁO CÁO BÀI TẬP LỚN MÔN KỸ THUẬT VI XỬ LÝ Đề tài: Thiết kế Quạt thông minh dùng PIC16F877A Giảng viên hướng dẫn: TS. Phạm Ngọc Nam Nhóm sinh viên: TC201-Group10 Họ và tên Lớp SHSV 1. Cao Văn Huy ĐT1-K54 20091217 2. Nguyễn Thanh Tùng ĐT4-K54 20093132 3. Khuất Minh Phúc ĐT4-K54 20092028 4. Lương Văn Huấn ĐT8-K54 20091211 5. Phạm Tuấn Anh ĐT8-K54 20090144 Hà Nội, 04 - 2012 Nhận xét của giảng viên hướng dẫnN …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… ……………………………………………………………………………… Hà Nội, Ngày Tháng Năm 2012 Giảng Viên hướng dẫn (Ký ghi rõ họ tên) Nhận xét của giảng viên chấm …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… ……………………………………………………………………………… Hà Nội, Ngày Tháng Năm 2012 Giảng Viên chấm (Ký ghi rõ họ tên) Mục Lục Lời mở đầu Trong thập niên cuối thế kỷ 20, kỹ thuật điện tử đã liên tục có những tiến bộ vượt bậc, đặc biệt là trong kỹ thuật chế tạo vi mạch điện tử. Sự ra đời và phát triển nhanh chóng của kỹ thuật điện tử mà đặc trưng là kỹ thuật vi xử lý đã tạo một bước ngoặt quan trọng trong sự phát triển khoa học ngày nay, nó ảnh hưởng quyết định đến con đường “ tin học hóa”. Năm 1970, công ty Intel cho ra đời bộ vi xử lý đầu tiên có tên là Intel-4004, nhằm đáp ứng nhu cầu cần thiết của một công ty kinh doanh là hãng truyền thông BUSICOM. Intel-4004 là kết quả của một ý tưởng quan trọng trong sự phát triển kỹ thuật vi xử lý. Do khả năng mềm dẻo hóa trong các thao tác của mình, năm 1970 Intel-4004 đã trở thành vi xử lý đầu tiên trên thế giới. Năm 1972, hãng Intel cho ra đời bộ vi xử lý 8088. Vẫn chế tạo theo công nghệ PMOS nhưng là loại 8 bits. Đến đây hàng loạt các hãng điện tử nổi tiếng hàng đầu thế giới như National, Rockwell,… đã nhanh chóng đi vào sản xuất và chế tạo các bộ vi xử lý. Năm 1974, Hàng Intel cho ra đời bộ vi xử lý 8080 - 8 bít song song được chế tạp theo công nghệ NMOS đã đánh dấu một bước tiến lớn trên con đường làm chủ tốc độ xử lý tin của kỹ thuật điện tử hiện đại. Các hãng khác cũng cho ra đời bộ vi xử lý tương ứng như 6800( Motorola), 8080( Texas Intrusment),… Ngày nay, những ứng dụng của vi điều khiển đã đi sâu vào đời sống sinh hoạt và sản xuất của con người, là một phần tất yếu không thể thiếu trong đời sống hiện đại. Thế kỷ 21 được xem là thế kỷ của khoa học công nghệ, là thế kỷ mà máy móc được thiết kế và lập trình một cách tự động để thay thế hoạt động của con người trong sản xuất, cũng như để phục vụ các công việc trong sinh hoạt. Trong cuộc sống mang tính tự động hóa cao thì các vi xử lý như là một công cụ đắc lực hỗ trợ cho con người thực hiện nhu cầu ngày càng cao và càng hoàn thiện của mình. Đang là sinh viên ngồi trên ghế nhà trường, cơ hội tiếp cận, học tập những công nghệ tiên tiến, hiện đại chưa nhiều, nên trong quá trình tự học và nghiên cứu, chúng em đã cố gắng tìm hiểu về bộ vi xử lý, cũng như các ứng dụng của nó, đặc biệt là vi xử lý PIC16F877A. Với những gì nghiên cứu được nhóm chúng em đã làm thực hành ứng dụng thông qua việc thiết kế quạt thông minh. Đây là cơ hội rất lớn cho chúng em trau dồi kiến thức thực tế, áp dụng lý thuyết đã học và rèn luyện bản thân trong môi trường làm việc nhóm. Do thời gian thực hiện và kiến thức còn hạn chế nên còn nhiều sai sót trong quá trình thực hiện đề tài, rất mong được sự bổ sung đóng góp của các thầy cô và các bạn. Chúng em xin chân trọng cảm ơn thầy TS. Phạm Ngọc Nam và anh Vũ Hữu Tiệp đã nhiệt tình hướng dẫn chúng em suốt quá trình học tập. Chương 1. ĐẶT VẤN ĐỀ VÀ KHẢO SÁT HỆ THỐNG 1.1. Khảo sát và phân tích hệ thống Ứng dụng đề tài: Ngày nay, khi công nghệ phát triển, con người đòi hỏi them nhiều thiết bị thông minh hơn nhằm phục vụ tối đa cho cuộc sống. Nơi đâu cũng sẽ xuất hiện những nhà máy, khu công nghiệp, công nghệ thông tin và kỹ thuật hiện đại cũng giúp cuộc sống con người trở nên tốt đẹp và thoải mái hơn. Với sự bùng nổ của kỹ thuật hiện nay, thì thiết bị thông minh đối với chúng ta không còn xa lạ nữa. Đề tài hôm nay chúng tôi muốn giới thiệu đó là: “Quạt thông minh”. Sẽ không còn phải quạt nan hay quạt tay khi mà có điện, sẽ không phải bật túp năng hay nút bấm để quạt to hay nhỏ, sẽ không phải thức giấc khi cảm thấy lạnh. Tất cả các vấn đề trên sẽ được đưa ra và giải quyết bởi một thiết bị thông minh mà chúng tôi hy vọng nó sẽ mang lại rất nhiều lợi ích cho cuộc sống con người: “Quạt thông minh” Quạt thông minh (Smart Fan) có ứng dụng làm mát cho hệ thống mạch điện tử, mở rộng ra nó có thể ứng dụng để làm mát cho các văn phòng, công ty, các xưởng sản xuất. Sơ đồ tổng quát hệ thống: Khối thời gian thực (DS1307) Khối đo nhiệt độ (LM35) Khối hiển thị (LCD, LED) Vi xử lý Pic16f877a Khối nguồn Động cơ Các thông số hệ thống và các phím bấm 1.2. Giải thích sơ đồ khối: - Vi xử lý pic16f877a điều khiển toàn bộ hệ thống, thu nhận dữ liệu từ khối thời gian thực, khối đo nhiệt độ, các tín hiệu từ phím bấm rồi xử lý và đưa ra tín hiệu điều khiển cho các khối hiển thị và động cơ, hoặc thiết lập lại giá trị cho khối thời gian thực - Khối thời gian thực: dùng IC thời gian thực DS1307, lưu trữ và cập nhật thời gian thực, để vi xử lý đối chiếu với thời gian được thiết lập sẵn để đưa ra các tín hiệu điều khiển. - Khối đo nhiệt độ: mạch sử dụng sensor LM35, khối có chức năng lấy tín hiệu nhiệt độ từ môi trường rồi đưa tín hiệu đó vào vi điều khiển để chuyển đổi thành nhiệt độ. - Khối hiển thị: gồm có: LCD ,LED 7 thanh, và 1 đèn led. LCD dùng để hiển thị ngày giờ thực, các thông số trong quá trình cài đặt. 2 LED 7 thanh dùng để hiển thị nhiệt độ môi trường hiện tại. Đèn led báo hiệu tình trạng hoạt động của mạch: sáng: đang hoạt động, không sáng : mạch không hoạt động hoặc đang trong chế độ nghỉ. - Khối động cơ: là một chiếc quạt điện dùng để làm mát hệ thống. - Khối bàn phím: gồm có 5 nút bấm : menu, up,down, set, reset. Chức năng chung của khối là gửi đến vi điều khiển các tín hiệu nhằm thiết lập các thông số cần thiết cho hệ thống.  Menu: Bật chế độ điều chỉnh , chuyển đổi điều chỉnh các thông số và thoát khỏi chế độ điều chỉnh. Các chế độ cần điều chỉnh: giờ, phút hệ thống => nhiệt độ cho phép hoạt động thấp nhất, cao nhất => nhiệt độ lý tưởng => giờ phút bảo dưỡng => thời gian cao nhất quạt quay liên tục => thời gian chờ cho lần chạy tiếp theo. Khi ấn menu thì lần lượt đi qua các chế độ và dùng phím up ( down) để tăng ( giảm) thông số, khi điều chỉnh xong cần ấn nút set để lưu lại. khi hết các chế độ, ấn menu một lần nữa thì về chế độ chờ ban đầu.  Up, down: dùng để tăng hoặc giảm giá trị của các thông số ở chế độ điều chỉnh. Và các thông số được điều chỉnh kiểu quay vòng.  Set: sau khi điều chỉnh các thông số cần ấn nút này để lưu lại.  Reset: đưa các thông số của mạch về chế độ mặc định. - Khối nguồn: có nhiệm vụ cung cấp năng lượng hoạt động cho toàn mạch. 1.3. Mô tả hoạt động của hệ thống: - Khi cấp nguồn cho toàn hệ thống: khối cảm biến thu tín hiệu cho vi điều khiển xử lý và hiển thị lên 2 led 7 thanh. Vi xử lý lấy thời gian thực được lưu trong DS1307 và thực hiện hiển thị lên LCD - Các thông số được vi xử lý kiểm tra và nếu thỏa mãn hết thì vi điều khiển đưa ra tín hiệu cho quạt hoạt động. - Nếu nhiệt độ quá giới hạn cho phép là 60 độ, thì vi xử lý thực hiện cho quạt hoạt động. Và điều chỉnh tốc độ theo tham số nhiệt độ của môi trường. Khi nhiệt độ hệ thống giảm xuống 50 độ trở xuống, thì quạt sẽ được điều khiển tắt. nếu nhiệt độ sau 45m mà vẫn trong khoảng 45->70 thì hệ thống tự động bảo dưỡng. sau 10m lại tiếp tục hoạt động. - Ở chế độ chờ , LCD hiển thị ngày giờ thực. khi ấn menu thì nó hiển thị lần lượt các thông số mặc định của từng chế độ để thực hiện cài đặt. Các thông số hiển thị lần lượt trên LCD: - Khi ấn up down, các thông số sẽ thay đổi trực tiếp trên LCD. Khi ấn set thì LCD hiển thị chữ : “Setup done!”. Và các thông số được lưu thay đổi vào vi xử lý. Khi ấn nút reset thì toàn bộ các thông số của hệ thống sẽ về giá trị mặc định và LCD hiển thị dòng chữ : “Reset done!” - Nếu có điện cung cấp cho hệ thống thì đèn led sẽ sáng. CHƯƠNG 2: PHÂN TÍCH YÊU CẦU 2.1. Yêu cầu về chức năng - Mạch thực hiện đúng yêu cầu mong muốn - Hiển thị giờ, phút, ngày, tháng, năm, trên LCD - Hiển thị nhiệt độ lên LED 7 thanh - Sử dụng nút bấm để cài đặt thời gian - Tự động điểu chỉnh tốc độ quạt khi nhiệt độ thay đổi 2.2. Yêu cầu phi chức năng - Sử dụng vi điều khiển PIC16F877A - Thiết kế mạch nhỏ hơn 1dm2 - Thời gian thực hiện đề tài 13 tuần 2.3. Mục tiêu thiết kế - Sử dụng IC cảm biến nhiệt LM35 để đo nhiệt độ phòng [...]... sự lựa chọn chính xác Đó là lý do em chọn dùng PIC1 6F877A cho đề tài này 3.1.5 Tìm hiểu về PIC1 6F877A: 3.1.5.1 Cấu trúc phần cứng của PIC1 6F877A: PIC1 6F877A là dòng PIC khá phổ biến, khá đầy đủ những tính năng phục vụ cho hầu hết tất cả các ứng dụng thự 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: - 8K Flash... ghi W(work) và tập lệnh của PIC1 6F877A 3.1.5.3.1 Thanh ghi W: Đây là thanh ghi rất đặc biệt trong PIC1 6F877A Nó có vai trò tương tự như thanh ghi Accummulator 8051, tuy nhiên tầm ảnh hưởng cua nó rộng hơn nhiều Tập lệnh của PIC1 6F877A có tất cả 35 lệnh thì sự góp mặt của thanh ghi W là 23 lệnh Hầu hết các lệnh của PIC1 6F877A đều lien quan đến thanh ghi W Ví dụ như: trong PIC chúng ta không được phép... một hằng số k Hầu hết các lệnh của PIC1 6F877A đều phải lien quan đến thanh ghi W cũng vì lý do đó Khi thực hiện một dòng lệnh nào đó, thì PIC sẽ không phải tốn 8 bit để lưu địa chỉ của thanh ghi W trong mã lệnh ( vì được hiểu ngầm ) Có thể xem thanh ghi W là thanh ghi trung gian trong qua trình viết chương trình cho PIC1 6F877A 3.1.5.4 Tập lệnh của PIC1 6F877A: PIC1 6F877A có tất cả 35 lệnh và được trình... trung tâm PIC1 6F877A - Khối nguồn - Khối mạch nạp - Khối led 7 thanh - Khối cảm biến nhiệt độ - Khối hiển thị LCD - Khối giao tiếp DS1307 - 3.1 Khối nút bấm Vi xử lý trung tâm PIC1 6F877A: 3.1.1 Sơ đồ chân và sơ đồ nguyên lý của PIC1 6F877A: 3.1.1.1 Sơ đồ chân: 3.1.1.2 Sơ đồ nguyên lý: 3.1.2 Nhận xét: Từ sơ đồ chân và sơ đồ nguyên lý như trên, chúng ta có thể rút ra các nhận xét như sau: - PIC1 6F877A có... dữ liệu: Bộ nhớ dữ liệu của PIC1 6F877A được chia thành 4 bank, mỗi bank có dung lượng 128 byte Mỗi bank của bộ nhớ dữ liệu PIC1 6F877A bao gồm cả các thanh ghi có chức năng đặc biệt SFR nằm ở các ô nhớ địa chỉ thấp và các thanh ghi mục đích dùng cung GPR năm ở vùng địa chỉ còn lại của mỗi bank thanh ghi Vùng ô nhớ các thanh ghi mục đích dùng chung này chính là nơi người dùng sẽ lưu dữ liệu trong quá... vi điều khiển Việc xuất nhập dữ liệu ở PIC1 6F877A khác với ở họ 8051, tất cả các port của PIC1 6F877A, mỗi thời điểm chỉ thực hiện một chức năng xuất hoặc nhập Để chuyển từ chức năng này sang chức năng xuất hay nhập ngược lại, ta phải xử lý bằng phần mềm, không như 8051 tự hiểu lúc nào là chức năng nhập, lúc nào là chức năng xuất Trong kiến trúc phần cứng của PIC1 6F877A, người ta sử dụng thanh ghi TRISA... vi điều khiển mới thỏa mãn yêu cầu như em đã trình bày trên Em thấy PIC1 6F877A là một lựa chọn lý tưởng Chỉ cần xem xét qua các port và chức năng của port mà em đã trình bày ở trên, ta cũng dễ nhận ra những ưu điểm vượt trội so với vi điều khiển 8051 Giá của PIC1 6F877A trên thị trường cũng đắt gấp 2 lần một chip họ 8051 Sử dụng PIC1 6F877A trong đề tài này có thể là lãng phí, nhưng với mục đích nâng... miễn phí 3.1.5.4.1 Các vấn đền về Timer: PIC1 6F877A có tất cả 3 Timer: Timer0 (8 bit), Timer1 (16bit) và Timer2 (8bit) Timer0: Timer0 của PIC1 6F877A cũng có 2 chức năng: định thời và đếm xung Hai chức năng trên có thể được lựa chọn thông qua bit số 5 TOCS của thanh ghi OPTION Ngoài ra, ta cũng có thể lựa chọn cạnh tích cực của xung clock, cạnh tác động ngắt thông qua thanh ghi trên Timer0 được tích... đến thanh ghi W Ví dụ như: trong PIC chúng ta không được phép chuyển trực tiếp giá trị của một thanh ghi khác mà phải chuyển thông qua thanh ghi W Thanh ghi W có 8 bit và không xuất hiện trong bất kỳ bank thanh ghi nào của bộ nhớ dữ liệu của PIC1 6F877A Mỗi dòng lệnh trong PIC1 6F877A được mô tả trong 14 bit Khi ta thực hiện một lệnh nào đó, nó phải lưu địa chỉ của thanh ghi bị tác động ( chiếm 8 bit)... trên sơ đồ 4 bank bộ nhớ dữ liệu PIC1 6F877A t rút ra các nhận xét sau: - Bank0 gồm các ô nhớ có địa chỉ từ 00h đến 77h, trong đó các thanh ghi dùng chung để dữ liệu của người dùng địa chỉ từ 20h đến 7Fh Các thanh ghi PORTA, PORTB, PORTC, PORTD, PORTE đều chứa ở bank0, do đó để truy xuất dữ liệu các thanh ghi này ta phải chuyển đên bank0 Ngoài ra một vài các thanh ghi thông dụng khác cũng chứa ở bank0 . chính xác. Đó là lý do em chọn dùng PIC1 6F877A cho đề tài này. 3.1.5. Tìm hiểu về PIC1 6F877A: 3.1.5.1. Cấu trúc phần cứng của PIC1 6F877A: PIC1 6F877A là dòng PIC khá phổ biến, khá đầy đủ những. TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ VIỄN THÔNG BÁO CÁO BÀI TẬP LỚN MÔN KỸ THUẬT VI XỬ LÝ Đề tài: Thiết kế Quạt thông minh dùng PIC1 6F877A Giảng viên hướng dẫn: TS. Phạm Ngọc Nam Nhóm. thuật hiện nay, thì thiết bị thông minh đối với chúng ta không còn xa lạ nữa. Đề tài hôm nay chúng tôi muốn giới thiệu đó là: Quạt thông minh . Sẽ không còn phải quạt nan hay quạt tay khi mà có

Ngày đăng: 10/05/2014, 12:22

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan