MẠCH báo mức nước HIỂN THỊ LCD DÙNG PIC (có code và layout) MẠCH báo mức nước HIỂN THỊ LCD DÙNG PIC (có code và layout) MẠCH báo mức nước HIỂN THỊ LCD DÙNG PIC (có code và layout) MẠCH báo mức nước HIỂN THỊ LCD DÙNG PIC (có code và layout) MẠCH báo mức nước HIỂN THỊ LCD DÙNG PIC (có code và layout) MẠCH báo mức nước HIỂN THỊ LCD DÙNG PIC (có code và layout)
ĐỒ ÁN MẠCH BÁO MỨC NƯỚC HIỂN THỊ LCD DÙNG PIC MỤC LỤC DANH MỤC CÁC HÌNH VẼ III DANH MỤC CÁC BẢNG BIỂU .IV DANH MỤC CÁC TỪ VIẾT TẮT .V GIỚI THIỆU CHUNG VỀ ĐỀ TÀI .1 TỔNG QUAN VÀ NGUYÊN LÝ HOẠT ĐỘNG MẠCH KẾT QUẢ MÔ PHỎNG NHẬN XÉT 10 KẾT LUẬN 11 TÀI LIỆU THAM KHẢO 12 PHỤ LỤC A 14 DANH MỤC CÁC HÌNH VẼ HÌNH 2.1: SƠ ĐỒ CHÂN CỦA PIC 16F877A HÌNH 2.2: CÁC CHÂN NĂNG CƠ BẢN CỦA PIC 16F877A HÌNH 2.3: LCD VÀ SƠ ĐỒ CHÂN CỦA LCD HÌNH 2.4: CHỨC NĂNG CÁC CHÂN CỦA LCD HÌNH 2.5: CẢM BIẾN SIÊU ÂM SRF-05 VÀ VỊ TRÍ CÁC CHÂN .7 HÌNH 3.6: MẠCH NGUYÊN LÝ TRÊN PROTEUS .8 HÌNH 3.7: LAYOUT CỦA MẠCH IN MÔ PHỎNG BẰNG PROTEUS .8 DANH MỤC CÁC BẢNG BIỂU DANH MỤC CÁC TỪ VIẾT TẮT LCD Liquid Crystal Display PIC Programmable Intelligent Computer Peripheral Interface Controller ROM Read-Only Memory RAM Random Access Memory EEPROM Electrically Erasable Programmable Read-Only Memory AD Analog to Digital CMOS Complementary Metal-Oxide-Semiconductor ĐỒ ÁN Trang 1/20 GIỚI THIỆU CHUNG VỀ ĐỀ TÀI 1.1 Giới thiệu chung sản phẩm Ngày nay, phát triển không ngừng nghỉ khoa học kỹ thuật, việc đào sâu phát triển thành thành công nghiên cứu hướng nhằm phục vụ cho việc cải thiện đời sống xã hội gia tăng sản xuất việc làm cấp thiết Trong đề tài nghiên cứu này, em tìm hiểu mạch đo mực nước hiển thị LCD dùng PIC vi điều khiển, đề tài hay có nhiều ứng dụng thực tiễn xã hội Mạch dùng vi điều khiển hiển thị qua LCD cho ta kết xác nhanh có thể, giúp ta thay phương thức đo truyền thống khơng thực xác nhiều rủi ro nguy hiểm cho người thực phép đo Lịch sử Các tiểu mục luận văn trình bày đánh số nhóm chữ số, nhiều gồm 04 chữ số với số thứ số chương (Thí dụ: 4.1.2.1 tiểu mục 1, nhóm tiểu mục 2, mục 1, Chương 04) Tại nhóm tiểu mục phải có 02 tiểu mục, nghĩa khơng thể có tiểu mục 2.1.1 mà khơng có tiểu mục 2.1.2 1.1.1 Phương thức nghiên cứu Qua đề tài nghiên cứu này, em có hội vận dụng kiến thức mà em học đào sâu tìm hiểu linh kiện liên quan PIC, LCD Mô mạch qua proteus, có kinh nghiệm quý giá thơng qua q trình thực nghiệm hồn thiện sản phẩm đề tài 1.1.2 Kết nghiên cứu Việc xây dựng thực nghiệm giúp em hoàn thiện mạch đo mực nước hiển thị qua LCD dùng PIC vi điều khiển đo đọc kết cách xác nhanh chóng Đồng thời đảm bảo tiêu chí tiết kiệm chi phí kích thước nhỏ gọn yêu cầu đề tài Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 2/20 TỔNG QUAN VÀ NGUYÊN LÝ HOẠT ĐỘNG MẠCH 1.2 Tổng quan mạch 1.2.1 Sơ đồ khối Bộ nguồn Sóng thu Sóng phát chân echo chân trigger Bộ vi xử lý Bộ hiển thị LCD 1.2.2 Chức khối - Khối nguồn: cung cấp nguồn ổn định cho toàn mạch - Khối xử lý: xử lý thông tin thu nhận thông qua vi điều khiển để tính tốn đưa giá trị kết xác - Khối hiển thị: hiển thị giá trị kết qua hình LCD 1.3 Linh kiện chức 1.3.1 PIC 16F877A Nhà sản xuất: Microchip Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 3/20 Thuộc dòng PIC16 Port xuất nhập với 35 Pin I/O Tần số hoạt động tối đa 20Mhz Điện áp hoạt động từ 2.5V-5.5V Hỗ trợ 8KB flash, 256Byte Internal EEPROM Có đầy đủ chức cần thiết vi điều khiển: 14kênh ADC 10 Bit, CCP (Capture, Compare, PWM) ,MSSP (UART, SPI, I2C), … Bộ Timer: Timer 0, Timer 1, Timer Hình 2.1: Sơ đồ chân PIC 16F877A Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 4/20 Hình 2.2: Các chân PIC 16F877A Nguyên lý hoạt động PIC K flash ROM 368 bytes RAM 256 bytes EEPROM port (A, B, C, D, E) vào với tín hiệu điều khiển độc lập định thời bits (timer timer 2), định thời 16 bits (timer 1) hoạt động với chế độ tiết kiệm lượng( sleep mode) với xung clock CCP (Capture/Compare/PWM) biến đổi AD 10 bits, ngõ vào so sánh tương tự (Compartor) định thời giám sát (WatchDog timer) cổng song song bits với tín hiệu điều khiển cổng nối tiếp 12 nguồn ngắt Có chế độ tiết kiệm lượng Được nạp chương trình cổng ICSP (In-Circuit Serial Programing) Được chế tạo công nghệ CMOS 35 tập lệnh có độ dài 14 bits Tần số hoạt động tối đa 20MHz Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 5/20 1.4 LCD Thiết bị hiển thị LCD (Liquid Crystal Display) sử dụng rộng rãi phổ biến nhiều ứng dụng thực tế LCD có nhiều ưu điểm so với thiết bị hiển thị khác : Có thể hiển thị ký tự đa dạng, trực quan (chữ, số, ký tự đồ họa) Có đưa vào nhiều mạch ứng dụng khác dễ dàng Ít tốn tài nguyên hệ thống giá thành tương đối rẻ Hình 2.3: LCD sơ đồ chân LCD Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 6/20 Hình 2.4: Chức chân LCD 1.5 Cảm biến siêu âm SRF-05 Cảm biến siêu âm SRF-05 sử dụng sóng siêu âm (sona), loại sóng siêu âm cao tầng mà người nghe thấy Tuy nhiên, ta co thể thấy diện loại sóng siêu âm tự nhiên Nguyên tắc sử dụng sóng siêu âm để định vị đơn giản, tóm gọn ba bước sau: Vật chủ phát sóng âm Sóng âm va chạm với môi trường xung quanh phản xạ lại Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 7/20 Dựa vào thời gian thu phát , ta xác định khoảng cách vật chủ môi trường xung quanh Cảm biến SRF-05 hoạt động dựa nguyên lý trên, với chân để kết nối với vi điều khiển Hình 2.5: Cảm biến siêu âm SRF-05 vị trí chân Vcc: cấp nguồn cho cảm biến(5v) Trigger: kích hoạt q trình phát sóng âm Q trính kính hoạt chu kỳ điện cao/thấp diễn Echo: bình thường trạng thái 0v, kích hoạt lên 5v sau nhận tính hiệu trả về, sau lại trở tín hiệu 0v Gnd: nối đất Out: không sử dụng 1.6 Nguyên lý hoạt động mạch Ta kích xung clock cạnh lên vào chân Trigger để chân Trigger kích hoạt q trình phát sóng âm từ chân đến vật với vận tốc sóng âm 0.0344cm/us (344 m/s) nhận kết d1 Lúc chân Echo kích lên sau nhận dược tín hiệu trả về, ta nhận kết d2 Với khoảng cách 2d Mà d = vt Suy 2d = vt d= vt/2 d= t/2/v d= t/58 (với v sóng âm v=0,0344 cm/us) Thơng qua xử lý vi điều khiển, ta xuất kết sau tính tốn hiển thị LCD Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 8/20 KẾT QUẢ MƠ PHỎNG 1.7 Mơ hình mơ Hình 3.6: Mạch ngun lý Proteus Hình 3.7: Layout mạch in mô proteus Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 9/20 1.8 Kết mơ Hình 3.2: mạch thực tế Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 10/20 NHẬN XÉT 1.9 Nhận xét 1.9.1 Ưu điểm - Mạch có ổn định, tính xác cao Gọn nhẹ, đơn giản, dễ sử dụng Dễ khắc phục xảy cố Chi phí thấp Hiện thị kết thơng qua LCD giúp dễ đọc kết trình sử dụng 1.9.2 Nhược điểm - Do sử dụng sóng siêu âm để đo đạc nên xảy tình trạng khơng nhận sóng phát sóng truyền Những ảnh hưởng rung giật môi trường trình đo đạc gây ảnh hưởng lên kết Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 11/20 KẾT LUẬN 1.10 Kết luận Trong trình thực đề tài lần này, em rút kết luận: linh kiện PIC 16f877a, cảm biến SRF-05 , thiết bị hiển thị LCD,… Tương đối phổ biến đơn giản, dễ áp dụng việc học tập nghiên cứu nhằm làm quen với linh kiện Đây linh kiện dễ gặp nhiều ứng dụng thực tế đời sống ngày Qua việc tìm hiểu linh kiện PIC, cảm biến SRF-05, hay LCD giúp thực công việc xác định khoảng cách vật, điều khiển hiển thị ngày dễ dàng 1.11 Hướng phát triển Trong đề tài lần này, mang tính chất nghiên cứu thực nghiệm, nên mơ hình có phần thơ sơ so với mạch thực tế Mạch áp dụng thực tiễn việc đo đạc mực nước việc nghiên cứu việc lên xuống mực nước Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 12/20 TÀI LIỆU THAM KHẢO Tiếng Việt: Quách Ngọc Ân (1992), “Nhìn lại hai năm phát triển lúa lai”, Di tuyền học ứng dụng, 98(1), tr 10-16 Bộ nông nghiệp & PTNT (1996), Báo cáo tổng kết năm (1992-1996) phát triển lúa lai, Hà Nội Nguyễn Hữu Đống, Đào Thanh Bằng, Lâm Quang Dụ, Phan Đức Trực (1997), Đột biến – Cơ sở lý luận ứng dụng, Nhà xuất nông nghiệp, Viện khoa học kỹ thuật nông nghiệp Việt Nam, Hà Nội Nguyễn Thị Gấm (1996), Phát đánh giá số dòng bất dục đực cảm ứng nhiệt độ, Luận văn thạc sĩ khoa học nông nghiệp, Viện khoa học kỹ thuật nông nghiệp Việt Nam, Hà Nội ……… Võ Thị Kim Huệ (2000), Nghiên cứu chẩn đoán điều trị bệnh…, Luận án Tiến sĩ y khoa, Trường đại học y Hà Nội, Hà Nội Tiếng Anh: Anderson J.E (1985), The Relative Inefficiency of Quota, The Cheese Case, American Economic Review, 75(1), pp 178-90 Borkakati R P.,Virmani S S (1997), Genetics of thermosensitive genic male sterility in Rice, Euphytica 88, pp 1-7 Boulding K.E (1955), Economics Analysis, Hamish Hamilton, London Burton G W (1988), “Cytoplasmic male-sterility in pearl millet (penni-setum glaucum L.)”, Agronomic Journal 50, pp 230-231 Central Statistical Oraganisation (1995), Statistical Year Book, Beijing FAO (1971), Agricultural Commodity Projections (1970-1980), Vol II Rome Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 13/20 Institute of Economics (1988), Analysis of Expenditure Pattern of Urban Households in Vietnam, Departement pf Economics, Economic Research Report, Hanoi Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 14/20 PHỤ LỤC A #include #FUSES NOWDT //No Watch Dog Timer #FUSES NOBROWNOUT //No brownout reset #FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O #use delay(crystal=8000000) #include / * */ // Cach ket noi cac chan LCD voi cac chan vi dieu khien /*#define LCD_RS_PIN #define LCD_RW_PIN PIN_D1 PIN_D2 #define LCD_ENABLE_PIN PIN_D3 #define LCD_DATA4 PIN_D4 #define LCD_DATA5 PIN_D5 #define LCD_DATA6 PIN_D6 #define LCD_DATA7 PIN_D7 */ / ******************************************************************* ******************************************************************* ************ ******************************************************************* ******************************************************************* ************/ //Khai bao bien toan cuc #define trigger pin_B7 //Dinh nghia chân RB7 la chan phat Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 15/20 #define echo pin_B0 //Dinh nghia chân RB0 la chan thu #define button pin_C0 #define tang pin_C1 #define giam pin_C2 unsigned int tram,chuc,donvi; unsigned int tram1,chuc1,donvi1; unsigned int tram2,chuc2,donvi2; unsigned int time,Distance,mucNuoc; int16 menu=0, count=0; void khoiTao_lcd(); void tinhToan(); void clear_EEPROM(); void menu_Mode() { if(input(button)==0) { while(input(button)==0); menu++; if(menu==1) { lcd_gotoxy(1,1); printf(lcd_putc,"Do Muc Nuoc"); lcd_gotoxy(1,2); printf(lcd_putc,"Muc Nuoc: %d%d%d cm", tram2,chuc2,donvi2); } else if(menu==2) Mạch báo mức nước hiển thị LCD dùng PIC ĐỒ ÁN Trang 16/20 { menu=0; } } } void value_EEPROM() { if(input(tang)==0){ while(input(tang)==0); count++; write_eeprom(0x00,count); } if(input(giam)==0){ while(input(giam)==0); count=count-1; write_eeprom(0x00,count); } } void chieuCao() { while(0