Luận văn Thiết kế hệ thống giám sát điều khiển thiết bị điện ứng dụng công nghệ Zigbee 802.15.4 và Ethernet

 Đề xuất hướng phát triển của đề tài Đây là một đề tài liên quan đến nhiều lĩnh vực khác nhau, đòi hỏi người thiết kế phải có nhiều kinh nghiệm và thời gian, do đó rất mong rằng nhà trường sẽ bố trí học viên thực hiện phát triển tiếp đề tài để kết quả được tốt hơn và ứng dụng mạnh mẽ hơn cho đời sống.

pdf123 trang | Chia sẻ: builinh123 | Lượt xem: 1153 | Lượt tải: 4download
Bạn đang xem trước 20 trang tài liệu Luận văn Thiết kế hệ thống giám sát điều khiển thiết bị điện ứng dụng công nghệ Zigbee 802.15.4 và Ethernet, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
n yêu cầu kết cấu hệ thống phải đảm bảo tín hiệu đƣợc truyền đi chính xác nhanh chóng Hình 2.2. Hệ thống điều khiển thiết bị điện từ xa  Thiết bị phát: biến đổi lệnh điều khiển thành tin tức tín hiệu điện và phát đi.  Đƣờng truyền: đƣa tín hiệu tin tức từ thiết bị phát đến thiết bị thu.  Thiết bị thu: nhận tín hiệu điều khiển từ đƣờng truyền, biến đổi ngƣợc lại tin tức thành lệnh điều khiển và thực hiện chấp hành theo lệnh điều khiển. 2.4 Hệ thống chống trộm Hệ thống chống trộm gồm một bộ điều khiển trung tâm đƣợc liên kết với các cảm biến đặt trong khu vực cần quản lý. Các cảm biến có thể liên kết với hệ thống sử lý trung tâm qua hệ thống truyền dữ liệu hữu tuyến hoặc vô tuyến. Các cảm biến này thƣờng dùng: cảm biến quang, cảm biến hồng ngoại, cảm biến từ .Bộ điều khiển trung tâm sẽ nhận các thông tin đƣợc thu thập từ cảm biến để xử lý, tùy vào ngƣời lập trình mà bộ điều khiển trung tâm sẽ đƣa ra các phản ứng khác nhau để cảnh báo và thông báo đến ngƣời sử dụng. Thiết bị cảnh báo thƣờng là loa, còi, điện thoại Ngoài ra, hệ thống còn đƣợc tích hợp thêm các chức năng phụ nhƣ pin dự phòng khi mất điện, tắt bật hệ thống điện hay kết nối với các hệ thống thông minh khác. Thiết bị phát Đƣờng truyền Thiết bị thu 50 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 2.3. Hệ thống chống trộm tiêu biểu  Các loại cảm biến dùng trong hệ thống chống trộm: Cảm biến báo động đơn giản, phổ biến nhất là các bộ cảm biến báo động cửa. Cảm biến tƣơng tự có thể đƣợc lắp vào cửa sổ. Nó thƣờng dựa trên chuyển mạch cộng từ khi bạn mở và đóng cửa. Một mô-đun từ tính đƣợc gắn vào cánh cửa và các mô-đun chuyển đổi đƣợc gắn dọc vào khung cửa. Bảng điều khiển sẽ đƣợc thông báo nếu cửa bị mở, hay bị phá hủy để nó kích hoạt các hành động tiếp theo. Thƣờng là kích hoạt âm thanh báo động ngay lập tức hoặc trì hoãn báo động với một khoảng thời gian xác định. Sự trễ này là để cho phép ngƣời sử dụng vào nhà và tắt báo động nếu là báo động giả. 51 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 2.4. Cảm biến từ phát hiện mở cửa Cảm biến chuyển động PIR là một loại cảm biến thụ động, nguồn kích thích là tia hồng ngoại. PIR cảm biến phát hiện chuyển động bằng cách cảm nhận sự thay đổi nhiệt độ. Vì vậy, khi có ngƣời đi vào một căn phòng, cảm biến sẽ ngay lập tức phát hiện sự hiện diện của ngƣời đó. PIR cảm biến đƣợc thiết kế để kích hoạt với những thay đổi nhanh chóng của nhiệt - trong một vài giây. Chúng không đáp ứng với những thay đổi tinh tế dƣới ánh sáng mặt trời, chúng có thể cho kích hoạt báo động sai. 52 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 2.5. Cảm biến chuyển động PIR Cảm biến ánh sáng: là loại cảm biến thụ động nguồn kích thích là ánh sáng cảm biến đo cƣờng độ sáng và chuyển thành tín hiệu điện (dòng điện hoặc điện áp ) sau đó tín hiệu điện đƣợc khuếch đại và qua mạch so sánh mức ngƣỡng để xuất tín hiệu điều khiển. 2.5 Kết luận chƣơng , ị 53 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải CHƢƠNG 3 - NGHIÊN CỨU PHƢƠNG ÁN THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN GIÁM SÁT THIẾT BỊ ĐIỆN QUA WEB SERVER Trong chƣơng này, ta sẽ đƣa đề xuất cơ bản về mô hình hệ thống giám sát điều khiển thiết bị điện. Giới thiệu về trình biên dịch Arduino, tìm hiểu về chức năng, nguyên lý các bản mạch và linh kiện điện tử dùng để thiết kế mô hình thực nghiệm. 3.1 Mô hình hệ thống giám sát điều khiển thiết bị điện  Giới thiệu về mô hình Trong mô hình, bộ điều khiển đƣợc đặt trong một mạng LAN (và coi nhƣ một phần tử trong mạng) trong mạng gồm 1 SWITCH, 1 DHCP Server và bao gồm nhiều máy trạm (các máy PC) có cài chƣơng trình duyệt WEB, các phần mềm duyệt web phổ biến là IE (Internet Explorer), FireFox,... Khi kết nối cáp mạng vào switch, thì hệ thống địa chỉ IP . Hệ thống này đóng vai trò nhƣ một Mini Web Server, tất cả các máy trong mạng có yêu cầu Web đến địa chỉ IP của bộ điều khiển đều đƣợc trả về dƣới dạng 1 trang WEB. Hình 3.1. Mô hình của hệ thống điều khiển và giám sát từ xa 54 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải ệ thống sẽ đọc giá trị các cảm biến, đọc trạng thái các thiết bị điện tr và điều khiển trạng thái ON/OFF của thiết bị điện đến (tƣơng đƣơng với các khối ngoại vi), hiển thị thông điệp đăng nhập để điều khiển hệ thống lên màn hình GLCD. Nhƣ vậy, tất cả các máy trong mạng, dù bất kỳ ở đâu cũng đều nhận đƣợc thông tin và điều khiển đƣợc nhờ một trình duyệt web sẵn có. : H . : . 3.2 Giới thiệu về Arduino và trình biên dịch [ 10 ] 3.2.1 Giới thiệu chung về Arduino  Arduino đã thực sự gây sóng gió trên thị trƣờng ngƣời dùng DIY ( là những ngƣời chế ra sản phẩm của mình ) trên toàn thế giới trong vài năm gần đây. Số lƣợng ngƣời dùng cực lớn và đa dạng với trình độ trải rộng từ bậc phổ thông đến bậc đại học đã làm cho chính những ngƣời tạo ra chúng phải ngạc nhiên về mức độ phát triển và phổ biến.  Arduino là gì mà khiến cả những sinh viên và các nhà nghiên cứu tại các trƣờng đại học danh tiếng nhƣ MIT, Stanfor, Carnegie Mellon phải sử dụng. 55 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Ngay cả Google cũng hỗ trợ khi cho ra đời bộ kít Arduino Mega ADK dùng để phát triển các thiết bị Android tƣơng tác với cảm biến và thiết bị khác.  Arduino thực sự là một bo mạch vi xử lý đƣợc dùng để lập trình tƣơng tác các thiết bị phần cứng nhƣ cảm biến, động cơ, đèn và thiết bị khác. Điểm nổi trội của Arduino là môi trƣờng phát triển ứng dụng cực kì dễ sử dụng với ngôn ngữ lập trình dễ học ngay cả với ngƣời ít rành về điện tử và lập trình. Điều làm nên hiện tƣợng Arduino là mức giá rất thấp và mã nguồn mở từ phần cứng đến phần mềm. Chỉ với khoảng 30USD ngƣời dùng có thể sở hữu một bo Arduino với 20 ngõ In/Out có thể tƣơng tác điều khiển từng ấy thiết bị.  Arduino ra đời tại thị trấn Ivrea thuộc nƣớc Ý và đặt theo tên một vị vua vào thế kỷ thứ IX là King Arduin. Arduino đƣợc chính thức ra đời vào năm 2005 nhƣ là một công cụ khiêm tốn dành cho các sinh viên của giáo sƣ Massimo Banzi là một trong những ngƣời phát triển Arduino tại trƣờng Design Instistute Ivrea ( IDII ). 3.2.2 Giới thiệu về ngôn ngữ lập trình và trình biên dịch Arduino  Thiết kế bo mạch nhỏ gọn trang bị nhiều tính năng thông dụng mạng lại nhiều lợi thế cho Arduino, tuy nhiên sức mạnh thực sự ở Arduino nằm ở phần mềm . Môi trƣờng lập trình đơn giản dễ sử dụng, ngôn ngữ lập trình Writing dễ hiểu dựa trên nền tảng C/C++ rất quen thuộc với ngƣời làm kỹ thuật. Và quan trọng là số lƣợng thƣ viện code mẫu rất phong phú đƣợc viết và chia sẽ bởi cộng đồng mã nguồn mở chính ngƣời dùng. 56 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 3.2. Giao diện phần mềm Arduino IDE  Arduino IDE là phần mềm dùng để lập trình Arduino. Môi trƣờng lập trình Arduino có thể chạy trên ba nền tảng windown, MAC và Linux. Do có tính chất mã nguồn mở nên môi trƣờng lập trình này hoàn toàn miễn phí và có thể mở rộng thêm bởi ngƣời dùng.  Ngôn ngữ lập trình có thể mở rộng thông qua các thƣ viện C++ . Và do ngôn ngữ này dựa trên nền tảng ngôn ngữ C cho AVR nên ngƣời dùng hoàn toàn có thể nhúng thêm code viết cho AVR vào chƣơng trình. Hiện nay Arduino IDE có thể tải về từ trang chủ bao gồm các phiên bản :  Arduino 1.0.5  Arduino 1.5.5 BETA  Arduino IDE cho Intel Galileo 57 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 3.3 Giới thiệu về linh kiện và chức năng trong mô hình 3.3.1 Giới thiệu về IC ATMEGA 2560 [ 12 ] Vi điều khiển ATmega2560 của hãng ATMEL là một loại vi điều khiển AVR mới với kiến trúc rất phức tạp.  Đặc điểm ATmega2560 sử dụng kiến trúc RISC (Reduced Instruction Set Computer) AVR. ATmega2560 với kiến trúc RISC có chỉ tiêu chất lƣợng cao và tiêu thụ năng lƣợng ít: 130 lệnh hầu hết đƣợc thực hiện trong một chu kỳ xung nhịp. 32 thanh ghi làm việc đa năng. Tốc độ xử lý lệnh lên đến 16 triệu lệnh/giây ở tần số 16MHz. Bộ nhớ dữ liệu và bộ nhớ chƣơng trình không tự mất dữ liệu: 2560K byte bộ nhớ Flash lập trình đƣợc ngay trên hệ thống, có thể nạp xoá 10000 lần. 4K byte bộ nhớ EEFROM lập trình đƣợc ngay trên hệ thống, có thể ghi xóa 100000 lần. 8K byte bộ nhớ SRAM. Có thể giao tiếp với 64K byte bộ nhớ ngoài. Khóa bảo mật phần mềm lập trình đƣợc. Giao diện nối tiếp SPI để lập trình ngay trên hệ thống. Các tính năng ngoại vi: Hai bộ đếm/ bộ định thời 8 bit với chế độ so sánh và chia tần số tách biệt. Bốn bộ đếm/ bộ định thời 16 bit với chế độ so sánh, chia tần số tách biệt và chế độ bắt mẫu (Capture Mode). Bộ đếm thời gian thực (RTC) với bộ dao động tách biệt. 58 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Bộ điều chế độ rộng xung PWM 8 bit. Bộ biến đổi ADC bên trong 8 kênh 10 bit. 4 bộ USART nối tiếp lập trình đƣợc. Bộ định thời Watchdog lập trình đƣợc với bộ dao động trên chip. Một bộ so sánh Analog. Các tính năng vi điều khiển đặc biệt: Có mạch power - on reset và có thể reset bằng phần mềm. Các nguồn ngắt ngoài và trong. Có 6 chế độ ngủ: nghỉ (Idle). Tiết kiệm năng lƣợng (power save) và power down, ADC Noise Reduction, Standby and Extended Standby. Tần số làm việc có thể thay đổi đƣợc bằng phần mềm. Vào ra và các cách đóng vỏ 86 đƣờng vào ra lập trình đƣợc. 100 chân dán kiểu vỏ vuông (TQFP) Điện thế làm việc: VCC = 4,5V đến 5,5V đối với ATmega2560. Vùng tốc độ làm việc: 0 đến 16 MHz đối với ATmega2560.  Tổng quan về ATmega2560 ATmega2560 là bộ vi điều khiển RISC 8 bit tiêu thụ năng lƣợng nhƣng đạt hiệu suất rất cao, dựa trên kiến trúc RISC AVR. Bằng việc thực hiện các lệnh trong một chu kỳ xung nhịp, ATmega2560 đạt đƣợc tốc độ xử lý dữ liệu lên đến 1 triệu lệnh/giây ở tần số 1MHz. ATmega2560 còn cho phép ngƣời thiết kế hệ thống tối ƣu hoá mức độ tiêu thụ năng lƣợng mà vẫn đảm bảo tốc độ xử lý. 59 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 3. Sơ đồ khối của ATmega2560 Kiến trúc đặc biệt của ATmega2560 kết hợp tập lệnh phong phú về số lƣợng với 32 thanh ghi làm việc đa năng cho phép ngƣời lập trình khai thác nó một cách hiệu quả tối ƣu. Toàn bộ 32 thanh ghi đều đƣợc nối với ALU cho phép truy cập hai thanh ghi độc lập bằng 1lệnh đơn trong một chu kỳ xung nhịp. Kiến trúc RISC giúp ATmega2560 đạt tốc độ xử lý nhanh gấp 10 lần với vi điều khiển kiến trúc CISC thông thƣờng. ATmega2560 cung cấp 256K bytes bộ nhớ Flash lập trình đƣợc trong hệ thống và có khả năng đọc/xóa/viết, 4K bytes bộ nhớ EFPROM, 8K bytes SRAM, 86 đƣờng vào ra đa năng, 32 thanh ghi làm việc đa năng, bộ đếm thời gian thực (RTC), 4 bộ định thời/đếm linh hoạt với chế độ so sánh và điều chế độ rộng xung, 4 bộ USART, bộ ADC 8 kênh 10bit với sự lựa chọn ngõ vào có thể lập trình đƣợc bộ 60 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải khuếch đại, bộ định thời watchdog lập trình đƣợc với bộ dao động bên trong, một cổng nối tiếp SPI, 6 chế độ tiết kiệm năng lƣợng lựa chọn đƣợc bằng phần mềm. Đặc biệt chế độ Idle làm ngƣng hoạt động của CPU trong khi bộ nhớ SRAM, các bộ định thời/đếm, cổng SPI và hệ thống ngắt vẫn tiếp tục hoạt động. Chế độ Power Down lƣu trữ nội dung thanh ghi nhƣng giải phóng bộ dao động, cấm tất cả các chức năng khác trên chíp cho đến khi xuất hiện một ngắt kế tiếp hay tín hiệu Reset cứng. Chế độ Power Save cho phép bộ dao động định thời tiếp tục chạy để cho phép ngƣời dùng tiếp tục trong khoảng thời gian nào đấy (đặt trƣớc) trong khi những thiết bị khác ở trong chế độ ngủ. Chế độ ADC Noise Reduction tất cả các đƣờng I/0 và CPU đều ngƣng hoạt động ngoại trừ timer và ADC vẫn hoạt động, giảm mức tối thiểu nhiễu trong chuyển đổi ADC. Chế độ dự phòng Standby bộ dao động vẫn chạy trong khi những thiết bị ở trong chế độ ngủ ATmega2560 đƣợc công ty ATMEL chế tạo với công nghệ bộ nhớ không tự mất dữ liệu. Bộ nhớ Flash ISP trên chip cho phép bộ nhớ chƣơng trình có thể đƣợc lập trình lại ngay trên hệ thống, thông qua một giao diện nối tiếp SPI hoặc một bộ nạp chƣơng trình vào bộ nhớ không tự mất dữ liệu. Bằng cách kết hợp một CPU 8 bit có kiến trúc RISC với bộ nhớ Flash lập trình đƣợc trong hệ thống trên một chíp đơn lẻ, ATmega64 là loại vi điều khiển rất mạnh với tính linh hoạt cao trong sử dụng và chi phí hợp lý đối với nhiều ứng dụng điều khiên chúng trong thực tế. ATmega2560 đƣợc hỗ trợ bằng tất cả các công cụ lập trình và phát triển hệ thống hiện có: trình biên dịch C, trình biên dịch Macro Assembler, trình gỡ rối/mô phỏng và các kits thí nghiệm. 61 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 4. Sơ đồ chân ATmega2560 3.3.2 Giới thiệu về IC DS18B20 Những th gần đây đã có một số cảm biến một dây đƣợc giới thiệu với thị trƣờng, nhƣng về mặt cấu trúc và nguyên lý hoạt động đều có những điểm chung, cho nên để đơn giản ta tìm hiểu cảm biến một dây thông qua việc tìm hiểu chi tiết loại cảm biến nhiệt độ một dây DS18B20. DS18B20 là một sản phẩm của công ty Dallas (Hoa Kỳ), đây cũng là công ty đóng góp nhiều vào việc cho ra đời bus một dây và các cảm biến một dây. Hình dạng bên ngoài của cảm biến một dây DS18B20 đƣợc mô tả trên hình 2. Trong đó dạng vỏ TO-92 với 3 chân là dạng thƣờng gặp và đƣợc dùng trong nhiều ứng dụng, còn dạng vỏ SOIC với 8 chân đƣợc dùng để đo nhiệt độ bề mặt, kể cả da ngƣời. 62 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 3.5. Dạng đóng vỏ và bề ngoài của cảm biến DS18B20  Các đặc điểm kỹ thuật của cảm biến DS1820 có thể kể ra một cách tóm tắt nhƣ sau: Sử dụng giao diện một dây nên chỉ cần có một chân ra để truyền thông. Độ phân giải khi đo nhiệt độ là 9 bit. Dải đo nhiệt độ -55oC đến 125 oC, từng bậc 0,5oC, có thể đạt độ chính xác đến 0,1oC bằng việc hiệu chỉnh qua phần mềm. Rất thích hợp với các ứng dụng đo lƣờng đa điểm vì nhiều đầu đo có thể đƣợc nối trên một bus, bus này đƣợc gọi là bus một dây (1-wire bus) không cần thêm linh kiện bên ngoài. Điện áp nguồn nuôi có thể thay đổi trong khoảng rộng, từ 3,0 V đến 5,5 V một chiều và có thể đƣợc cấp thông qua đƣờng dẫn dữ liệu. Dòng tiêu thụ tại chế độ nghỉ cực nhỏ. Thời gian lấy mẫu và biến đổi thành số tƣơng đối nhanh, không quá 200 ms. Mỗi cảm biến có một mã định danh duy nhất 64 bit chứa trong bộ nhớ ROM trên chip (on chip), giá trị nhị phân đƣợc khắc bằng tia laze. Đầu đo nhiệt độ số DS18B20 đƣa ra số liệu để biểu thị nhiệt độ đo đƣợc 63 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải dƣới dạng mã nhị phân 9 bit. Các thông tin đƣợc gửi đến và nhận về từ DS1820 trên giao diện 1-wire, do đó chỉ cần hai đƣờng dẫn gồm một đƣờng cho tín hiệu và một đƣờng làm dây đất là đủ để kết nối vi điều khiển đến điểm đo. Nguồn nuôi cho các thao tác ghi/đọc/chuyển đổi có thể đƣợc trích từ đƣờng tín hiệu, không cần có thêm đƣờng dây riêng để cấp điện áp nguồn. Mỗi vi mạch đo nhiệt độ DS18B20 có một mã số định danh duy nhất, đƣợc khắc bằng laser trong quá trình chế tạo vi mạch nên nhiều vi mạch DS1820 có thể cùng kết nối vào một bus 1-wire mà không có sự nhầm lẫn. Đặc điểm này làm cho việc lắp đặt nhiều cảm biến nhiệt độ tại nhiều vị trí khác nhau trở nên dễ dàng và với chi phí thấp. Theo chuẩn 1-wire độ dài tối đa cho phép của bus là 300 m. Số lƣợng các cảm biến nối vào bus không hạn chế. Để nâng cao độ phân giả lên trên 9 bit ta phải tính toán thêm bằng phần mềm dựa trên các số liệu lƣu trữ trên các thanh ghi nhiệt độ, COUNT REMAIN và COUNT PER C trong nhóm các thanh ghi nháp (scratchpad), việc tính toán dựa theo phƣơng trình sau: _ _ _ _ 0.25 _ _ COUNT PER C COUNT REMAIN TEMPERATURE TEMP READ X COUNT PER C Khi sử dụng phƣơng trình này cảm biến một dây DS18B20 đƣợc nâng cấp trở thành một cảm biến nhiệt độ có độ phân giải cao. Bộ nhớ ROM 64–BIT Mỗi cảm biến nhiệt độ DS18B20 có một dãy mã 64 bit duy nhất đƣợc lƣu trữ trong bộ nhớ ROM từ khi sản xuất bằng kỹ thuật laze. Ý nghĩa của 64 bit mã đƣợc giải thích trên hình 3.6: Hình 3.6. Nội dung dãy mã 64-bit trên bộ nhớ ROM Nhƣ vậy dãy mã đƣợc chia ra thành 3 nhóm, trong đó: 8 bit đầu tiên là mã định danh họ một dây, mã của DS18B20 là 10h. 64 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 48 bit tiếp theo là mã số xuất xƣởng duy nhất, nghĩa là mỗi cảm biến DS18B20 chỉ có một số mã. 8 bit có ý nghĩa nhất là byte mã kiểm tra CRC (cyclic redundancy check), byte này đƣợc tính toán từ 56 bit đầu tiên của dãy mã trên ROM . Để truy cập lên cảm biến một dây DS18B20 ta phải sử dụng hai nhóm lệnh: các lệnh ROM và các lệnh chức năng (function commands) bộ nhớ, các lệnh này có thể đƣợc mô tả ngắn gọn nhƣ sau: Sau khi thiết bị chủ (thƣờng là một vi điều khiển) phát hiện ra một xung presence pulse, nó có thể xuất ra một lệnh ROM. Có 5 loại lệnh ROM, mỗi lệnh dài 8 bit. Thiết bị chủ phải đƣa ra lệnh ROM thích hợp trƣớc khi đƣa ra một lệnh chức năng để giao tiếp với cảm biến DS18B20. Lệnh ROM - READ ROM (33h) Cho phép đọc ra 8 byte mã đã khắc bằng laser trên ROM, bao gồm: 8 bit mã định tên linh kiện (10h), 48 bit số xuất xƣởng, 8 bit kiểm tra CRC. Lệnh này chỉ dùng khi trên bus có 1 cảm biến DS18B20, nếu không sẽ xảy ra xung đột trên bus do tất cả các thiết bị tớ cùng đáp ứng. - MATCH ROM (55h) Lệnh này đƣợc gửi đi cùng với 64 bit ROM tiếp theo, cho phép bộ điều khiển bus chọn ra chỉ một cảm biến DS1820 cụ thể khi trên bus có nhiều cảm biến DS18B20 cùng nối vào. Chỉ có DS18B20 nào có 64 bit trên ROM trung khớp với chuỗi 64 bit vừa đƣợc gửi tới mới đáp ứng lại các lệnh về bộ nhớ tiếp theo. Còn các cảm biến DS18B20 có 64 bit ROM không trùng khớp sẽ tiếp tục chờ một xung reset. Lệnh này đƣợc sử dụng cả trong trƣờng hợp có một cảm biến một dây, cả trong trƣờng hợp có nhiều cảm biến một dây. - SKIP ROM (CCh) Lệnh này cho phép thiết bị điều khiển truy nhập thẳng đến các lệnh bộ nhớ của DS18B20 mà không cần gửi chuỗi mã 64 bit ROM. Nhƣ vậy sẽ tiết kiệm đƣợc thời gian chờ đợi nhƣng chỉ mang hiệu quả khi trên bú chỉ có một cảm biến. 65 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải - SEARCH ROM (F0h) Lệnh này cho phép bộ điều khiển bus có thể dò tìm đƣợc số lƣợng thành viên tớ đang đƣợc đấu vào bus và các giá trị cụ thể trong 64 bit ROM của chúng bằng một chu trình dò tìm. - ALARM SEARCH (ECh) Tiến trình của lệnh này giống hệt nhƣ lệnh Search ROM, nhƣng cảm biến DS18B20 chỉ đáp ứng lệnh này khi xuất hiện điều kiện cảnh báo trong phép đo nhiệt độ cuối cùng. Điều kiện cảnh báo ở đây đƣợc định nghĩa là giá trị nhiệt độ đo đƣợc lớn hơn giá trị TH và nhỏ hơn giá trị TL là hai giá trị nhiệt độ cao nhất và nhiệt độ thấp nhất đã đƣợc đặt trên thanh ghi trong bộ nhớ của cảm biến. Lệnh chức năng bộ nhớ Sau khi thiết bị chủ (thƣờng là một vi điều khiển) sử dụng các lệnh ROM để định địa chỉ cho các cảm biến một dây đang đƣợc đấu vào bus, thiết bị chủ sẽ đƣa ra các lệnh chức năng DS1820. Bằng các lệnh chức năng thiết bị chủ có thể đọc ra và ghi vào bộ nhớ nháp (scratchpath) của cảm biến DS18B20 khởi tạo quá trình chuyển đổi giá trị nhiệt độ đo đƣợc và xác định chế độ cung cấp điện áp nguồn. Các lệnh chức năng có thể đƣợc mô tả ngắn gọn nhƣ sau: - WRITE SCRATCHPAD (4Eh) : Lệnh này cho phép ghi 2 byte dữ liệu vào bộ nhớ nháp của DS18B20. Byte đầu tiên đƣợc ghi vào thanh ghi TH (byte 2 của bộ nhớ nháp) còn byte thứ hai đƣợc ghi vào thanh ghi TL (byte 3 của bộ nhớ nháp). Dữ liệu truyền theo trình tự đầu tiên là bit có ý nghĩa nhất và kế tiếp là những bit có ý nghĩa giảm dần. Cả hai byte này phải đƣợc ghi trƣớc khi thiết bị chủ xuất ra một xung reset hoặc khi có dữ liệu khác xuất hiện. - READ SCRATCHPAD (BEh) : Lệnh này cho phép thiết bị chủ đọc nội dung bộ nhớ nháp. Quá trình đọc bắt đầu từ bit có ý nghĩa nhấy của byte 0 và tiếp tục cho đến byte rhứ 9 (byte 8 - CRC). Thiết bị chủ có thể xuất ra một xung reset để làm dừng quá trình đọc bất kỳ lúc nào nếu nhƣ chỉ có một phần của dữ liệu trên bộ nhớ nháp cần đƣợc đọc. 66 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải - COPYSCRATCHPAD (48h) : Lệnh này copy nội dung của hai thanh ghi TH và TL (byte 2 và byte 3) vào bộ nhớ EEPROM. Nếu cảm biến đƣợc sử dụng trong chế dộ cấp nguồn l bắt đầu việc đo. - CONVERT T (44h) : Lệnh này khởi động một quá trình đo và chuyển đổi giá trị nhiệt độ thành số (nhị phân). Sau khi chuyển đổi giá trị kết quả đo nhiệt độ đƣợc lƣu trữ trên thanh ghi nhiệt độ 2 byte trong bộ nhớ nháp. Thời gian chuyển đổi không quá 200ms, trong thời gian đang chuyển đổi nếu thực hiện lệnh đọc thì các giá trị đọc ra đều bằng 0. - READ POWER SUPPLY (B4h) : Một lệnh đọc tiếp sau lệnh này sẽ cho biết DS18B20 đang sử dụng chế độ cấp nguồn nhƣ thế nào, giá trị đọc đƣợc bằng 0 nếu cấp nguồn bằng chính đƣờng dẫn dữ liệu và bằng 1 nếu cấp nguồn qua một đƣờng dẫn riêng. Đến đây ta có thể thấy là việc sử dụng các lệnh vừa trình bày là một công việc không đơn giản, nhất là với những bạn đọc chƣa từng tìm hiểu về kỹ thuật vi xử lý. Cũng vì vậy mà trong khuôn khổ một bài viết ta chƣa thể hiểu hể cách làm chủ hoạt động của một cảm biến một dây. 3.3.3 Giới thiệu về IC ATMEGA 16 [ 12 ] Loại vi điều khiển họ AVR RISC là do công ty Atmel sản suất, với kiến trúc RISC (Reduce Instruction Set Computer). Với những ƣu điểm đƣợc nêu ra sau đây, loại chip này đang đƣợc dùng rộng dãi trong các hệ thống nhúng.  Các đặc điểm chính: - Kiến trúc RISC với hầu hết các lệnh có chiều dài cố định, truy nhập bộ nhớ nạp – lƣu trữ và 32 thanh nghi đa năng. - Có nhiều bộ phận ngoại vi ngay trên chip, bao gồm: cổng vào/ra số, bộ biến đổi ADC, bộ nhớ EEFROM, bộ định thời, bộ điều chế độ rộng xung (PWM), - Hầu hết các lệnh đều thực hiện trong một chu kỳ xung nhịp. 67 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải - Hoạt động với chu kỳ xung nhịp cao, có thể lên đến 16 MHz tuỳ thuộc từng loại chip cụ thể. - Bộ nhớ chƣơng trình va bộ nhớ dữ liệu đƣợc tích hợp ngay trên chip. - Khả năng lập trình đƣợc trong hệ thống, có thể lập trình đƣợc ngay khi đang đƣợc cấp nguồn trên bản mạch không cần phải nhấc chip ra khỏi bản mạch. - Hỗ trợ cho việc lập trình bằng ngôn ngữ bậc cao – ngôn ngữ C Sau đây là các đặc tính của loại vi điều khiển Atmega16.  : Hiệu năng cao, tiêu thụ năng lƣợng ít. Kiến trúc RISC 131 lệnh mạnh, hầu hết các lênh thực hiện trong một chu kỳ. 32 Thanh ghi 8-bit đa năng. Tốc độc thực hiện lên tới 16 triệu lệnh trong 1 giây với tần số 16MHz. Có 2 bộ nhân, mỗi bộ thực hiện trong thời gian 2 chu kỳ. Các bộ nhớ chƣơng trình và dữ liệu cố định 16 Kb bộ nhớ flash có khả năng tự lập trình trong hệ thống có thể thực hiện đƣợc 10.000 lần ghi/xoá. Vùng mã Boot tuỳ chọn với những bit khoá độc lập lập trình trên trong hệ thống bởi chƣơng trình on-chip Boot. Thao tác đọc trong khi nghi thực sự. 512 bytes EEFROM Có thể thực hiện 100.000 lần ghi /xoá 1Kb SRAM bên trong Lập trình Khoá an ninh phần mềm Ghép nối ngoại vi 2 bộ định thời/ bộ đếm 8 bit với các chế độ tỷ lệ định trƣớc và chế độ so sánh. 68 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 1 bộ định thời/ bộ đếm 16 bit với các chế độ tỷ lệ định trƣớc riêng biệt, chế độ so sánh và chế độ bắt giữ. Bộ thời gian thực với bộ tạo dao động riêng biệt 4 kênh PWM 8 kênh, ADC 10 bit Giao điện nối tiếp 2 dây hƣớng tới byte Bộ truyền tin nối tiếp USART khả trình Giao diện SPI chủ / tớ Watchdog Timer khả trình với bộ tạo dao động bên trong riêng biệt Máy so mẫu tƣơng tự bên trong Ngắt và đánh thức theo sự thay đổi của các chân. Các đặc điểm đặc biệt khác. Power-on Reset và dò Brown-out khả trình. Bộ tạo dao động đƣợc định cỡ bên trong. Các nguồn ngắt bên trong và bên ngoài. 5 chế độ ngủ: nhàn rỗi, giảm ồn ADC, tiết kiệm năng lƣợng, giảm năng lƣợng tiêu thụ, chờ. I/O và các loại. 32 đƣờng I/O khả trình. Điện áp hoạt động. 1.8 – 5.5 V Nhiệt độ hoạt động: -40oC-85oC Các tốc độ. 0-4 MHz khi điện áp 1.8-5.5V, 0-16 MHz khi điện áp 4.5-5.5V Tiêu thụ năng lƣợng tại 1 MHz, 3V, 25oC đối với ATmega16L. Hoạt động tích cực: 1MHz, 1.8V: 240 A 32 kHz, 1.8V: 15 A (bao gồm cả bộ dao động) 69 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Chế độ năng lƣợng thấp: 1 A khi điện áp 1.8V Hình 3.7. Sơ đồ khối vi điều khiển AVR Cốt lõi của AVR là sự kết hợp tập lệnh đầy đủ với các thanh ghi đa năng 32 bit. Tất cả các thanh ghi 32 bit này liên kết trực tiếp với khối xử lý số học và logic (ALU) cho phép 2 thanh ghi độc lập đƣợc truy cập trong một lệnh đơn trong 1 chu kỳ đồng hồ. Kết quả là tốc độ nhanh gấp 10 lần các bộ vi điều khiển CISC thƣờng. Với các tính năng đã nêu, chế độ nghỉ (Idle) CPU trong khi cho phép bộ truyền tin nối tiếp đồng bộ USART, giao tiếp 2 dây, chuyển đổi A/D, SRAM, bộ đếm bộ định thời, cổng SPI và hệ thống các ngắt vẫn hoạt động. Chế độ Power- down lƣu giữ nội dung của các thanh ghi nhƣng làm đông lạnh bộ tạo dao động, thoát khỏi các chức năng của chip cho đến khi có ngắt ngoài hoặc là reset phần 70 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải cứng. Chế độ Power-save đồng hồ đồng bộ tiếp tục chạy cho phép chƣơng trình sử dụng giữ đƣợc đồng bộ thời gian nhƣng các thiết bị còn lại là ngủ. Chế độ ADC Noise Reduction dừng CPU và tất cả các thiết bị còn lại ngoại trừ đồng hồ đồng bộ và ADC, tối thiểu hoá switching noise trong khi ADC đang hoạt động. Trong chế độ standby, bộ tạo dao động (thuỷ tinh thể/bộ cộng hƣởng) chạy trong khi các thiết bị còn lại ngủ. Các điều này cho phép bộ vi điều khiển khởi động rất nhanh trong chế độ tiêu thụ công suất thấp. Thiết bị đƣợc sản xuất sử dụng công nghệ bộ nhớ cố định mật độ cao của Atmel. Bộ nhớ On-chip ISP Flash cho phép lập trình lại vào hệ thống qua giao diện SPI bởi bộ lập trình bộ nhớ cố đinh truyền thống hoặc bởi chƣơng trình On-chip Boot chạy trên lõi AVR. Chƣơng trình boot có thể sử dụng bất cứ giao điện nào để download chƣơng trình ứng dụng trong bộ nhớ Flash ứng dụng. Phần mềm trong vùng Boot Flash sẽ tiếp tục chạy trong khi vùng Application Flash đƣợc cập nhật, cung cấp thao tác Read-While-Write thực sự. Bằng việc kết hợp 1 bộ 8-bit RISC CPU với In-System Self-Programmable Flash trong chỉ nguyên vẹn 1 chip Atmel Atmega16 là một bộ vi điều khiển mạnh có thể cung cấp giải pháp có tính linh động cao, giá thành rẻ cho nhiều ứng dụng điều khiển nhúng. Atmega16 AVR đƣợc hỗ trợ bởi bộ chƣơng trình đầy đủ và các tool để phát triển hệ thống, báo gồm: Bộ biên dịch C, macro assemblers, program debugger/simulators, in-circuit emulators và evaluation kits. 3.3.4 [ 11 ]   Hỗ    – 5,5V 71 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải  2 8. S 72 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 9. S 3.3.5 Giới thiệu về IR PIR ( Pasive InfraRed sensor ) là bộ cảm biến thụ động dùng nguồn n 73 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 3.10. H 3.10 - , ạy 74 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 1. N  Nguyên . Khi c ẽ ẽ 75 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 2. M 3.3.6 -2 - khi - - . 76 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 3.13. Sơ đồ cảm biến rò rỉ khí ga MQ2  Trong mạch có 2 chân đầu ra là Aout và Dout. Trong đó: Aout: điện áp ra tƣơng tự. Nó chạy từ 0.3à4.5V, phụ thuộc vào nồng độ khí xung quang MQ2. Dout: điện áp ra số, giá trị 0,1 phụ thuộc vào điện áp tham chiếu và nồng độ khí mà MQ2 đo đƣợc. Việc có chân ra số Dout rất tiện cho ta mắc các ứng dụng đơn giản, không cần đến vi điều khiển. Khi đó ta chỉ cần chỉnh giá trị biến trở tới giá trị nồng độ ta muốn cảnh báo. Khi nồng độ MQ2 đo đƣợc thấp hơn mức cho phép thì Dout = 1, đèn Led tắt. Khi nồng độ khí đo đƣợc lớn hơn nồng khí cho phép, Dout =0, đèn led sáng. Ta có thể ghép nối vào mạch Realy để điều khiển bật tắt đèn, còi, hoặc thiết bị cảnh báo khác. Một điều khó khăn khi làm việc với MQ-2 là chúng ta khó có thể quy từ điện áp Aout về giá trị nồng độ ppm. Rồi từ đó hiển thị và cảnh báo theo ppm. Do giá trị điện áp trả về từng loại khí khác nhau, lại bị ảnh hƣởng nhiệt độ, độ ẩm nữa. Trong thiết bị của mình, để xác định điểm cảnh báo mình làm khá thủ công. Đầu tiên đo trạng thái không khí sạch, giá trị thu đƣợc Vout1 Cho khí ga từ bật lửa rò rỉ ra, ta thấy giá trị Aout tăng lên. Khi đạt 77 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải khoảng cách khí ga từ bật lửa hợp lý rồi tƣơng ứng với nồng độ khí bắt đầu nguy hiểm, ta ghi lại giá trị Vout2. Ta chọn giá trị Vout2 là giá trị ngƣỡng cảnh báo, nếu giá trị đo đƣợc lớn hơn ta sẽ cảnh báo Chỉnh chân biến trở để điện áp đo tại chân 3 của L358 = Vout2. Bảng 3.1. T -2 3.3.7 . Model No. MQ-2 Sensor type Semiconductor Standard Encapsulation Bakelite(Black Bakelite) Detection Gas Combustible gas and smoke Concentration 300-10000 ppm Circuit Loop Voltage Vc ≤ 24VDC Heater Voltage VH 5.0 ± 0.2V AC or DC Load Resistance RL Adjustable Character Heater Resistance RH 31Ω ± 3Ω Room Tem Heater consumption PH ≤ 900 mW Sensing Resistance Rs 2KΩ - 20KΩ (in 2000ppm C3H8 Sensitivity S Rs in art/rs( Slope α ≤ 0.6(R5000ppm/R3000ppm CH4 Condition Tem. Humidity Enable Standard test circuit Vc 5.0 ±0.1 Preheart time Over 48 hours 78 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 3.14. B  5. C 3.3.8 Giới thiệu về IC W5100 [ 11 ]  p giao ( TCP, UDP, IPv4ARP, IGMP, PPPoE, Ethernet )    79 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải  S    - 5V    Miêu tả một số thanh ghi: MR (Mode Register) [R/W] [0x0000] [0x00]: là thanh ghi dùng để S/W reset, kiểm tra mode bộ nhớ, mode ngắt kết nối, mode PPPoE và bus I/F. GWR (Gateway IP Address Register) [R/W] [0x0001 – 0x0004] [0x00]: là thanh ghi để cài đặt địa chỉ Gateway. SUBR (Subnet Mask Register) [R/W] [0x0005 – 0x0008] [0x00]: là thanh ghi để cài đặt địa chỉ Subnet Mask. SHAR (Source Hardware Address Register) [R/W] [0x0009 – 0x000E] [0x00]: là thanh ghi để cài đặt địa chỉ Source Hardware . SIPR (Source IP Address Register) [R/W] [0x000F – 0x0012] [0x00]: là thanh ghi để cài đặt địa chỉ IP. IR (Interrupt Register) [R] [0x0015] [0x00]: là thanh ghi dùng để xử lý nhiều trƣờng hợp còn gọi là ngắt. IMR (Interrupt Mask Register) [R/W] [0x0016] [0x00]: thanh ghi mặt nạ ngắt. Miêu tả các chức năng a. Cài đặt thông tin ban đầu Để điều khiển đƣợc W5100 thì phải lựa chọn và sử dụng các thanh ghi thích hợp nhƣ sau: Thanh ghi cách thức (MR) Thanh ghi mặt nạ ngắt (IMR) Thanh ghi khởi tạo thời gian (RTR) 80 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Thanh ghi đếm(RCR) b. Cài đặt về thông tin mạng Thanh ghi dƣới đây là cấu hình của một mạng cơ bản và tùy thuộc vào môi trƣờng mạng. Thanh ghi địa chỉ Gateway (GAR) Thanh ghi địa chỉ phần cứng (SHAR) Thanh ghi Subnet Mask (SUBR) Thanh ghi địa chỉ IP (SIPR) Truyền thông dữ liệu Việc kết nối dữ liệu đƣợc thông qua TCP, UDP, IP-Raw và MAC-Raw. Đúng ra, việc lựa chọn kết nối là một dải các giao thức của các khe cắm kết nối.(W5100 cung cấp cho 4 khe cắm ). a. TCP TCP là một phƣơng pháp kết nối cơ bản trong đó nó cho phép thiết lập kết nối trong một yêu cầu nhất định và việc chuyển giao dữ liệu kết nối bằng địa chỉ IP và số cổng của hệ thống. Có 2 phƣơng pháp để thiết lập kết nối: Server đợi đến khi có yêu cầu kết nối Client gửi yêu cầu kết nối tới Server 81 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 3.16. Phƣơng pháp kết nối TCP b. UDP UDP (User Datagram Protocol) là một trong những giao thức cốt lõi của giao thức TCP/IP. Dùng UDP, chƣơng trình trên máy tính có thể gởi những dữ liệu ngắn đƣợc gọi là datagram tới máy khác. UDP không cung cấp sự tin cậy và thứ tự truyền nhận mà TCP làm, các gói dữ liệu có thể đến không đúng thứ tự hoặc bị mất mà không có thông báo. Tuy nhiên UDP nhanh và hiệu quả hơn đối với các mục tiêu nhƣ kích thƣớc nhỏ và yêu cầu khắt khe về thời gian. Do bản chất không trạng thái của nó nên nó hữu dụng đối với việc trả lời các truy vấn nhỏ với số lƣợng lớn ngƣời yêu cầu. Những ứng dụng phổ biến sử dụng UDP nhƣ DNS (Domain Name System), ứng dụng streaming media, Voice over IP, Trivial File Transfer Protocol (TFTP) và game trực tuyến. Thông tin ứng dụng Việc truyền thông giữa vi điều khiển với chíp ethernet W5100 cung cấp hƣớng kết nối sau: theo phƣơng pháp trực tiếp, phƣơng pháp gián tiếp và SPI phƣơng pháp. Truyền thông dùng Ethernet PHY(MAC). 82 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải a. Dùng các phương pháp kết nối trực tiếp Dùng 15bit địa chỉ và 8bit dữ liệu: /CS, /RD, /WR, /INT. Hình 3.17. Phƣơng pháp kết nối trực tiếp b. Dùng các phương pháp kết nối gián tiếp Dùng 2bit địa chỉ và 8bit dữ liệu: /CS, /RD, /WR, /INT. Hình 3.18. Phƣơng pháp kết nối gián tiếp c. Dùng phương pháp kết nối SPI (Serial Peripheral Interface) SPI chỉ dùng 4 chân để truyền dữ liệu: /SCLK, /SS, /MOSI, /MISO. Ở W5100, SPI_EN là chân dùng để điều khiển SPI. 83 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 3.19. Phƣơng pháp kết nối SPI Một số ứng dụng W5100 Thiết bị mạng gia đình: hộp nối, PVRs, chuyển đổi nguồn số. Bộ nối tiếp tới ethernet: bộ điều khiển truy cập, LED hiện thị, Rơle AT không giây Bộ song song tới ethernet: máy in, máy photocopy. USB ethernet: thiết bị lƣu trữ, máy in mạng. GPIO ethernet: các cảm biến mạng gia đình. Hệ thống bảo vệ: DVRs, camera giám sát thông qua mạng. Sản xuất và chế tạo tự động. Các thiết bị điều khiển ứng dụng trong y tế. Các hệ thống cố định. 3.3.9 [ 11 ]  Graphic LCD (gọi tắt là GLCD) loại chấm không màu là các loại màn hình tinh thể lỏng nhỏ dùng để hiển thị chữ, số hoặc hình ảnh. Khác với Text LCD, GLCD không đƣợc chia thành các ô để hiển thị các mã ASCII vì GLCD không có bộ nhớ CGRAM (Character Generation RAM). GLCD 128x64 có 128 cột và 64 hàng tƣơng ứng có 128x64=8192 chấm (dot). Mỗi chấm tƣơng ứng với 1 bit dữ liệu, và nhƣ thế cần 8192 bits hay 1024 bytes RAM để chứa dữ liệu hiển thị đầy mỗi 128x64 GLCD. Tùy theo loại chip điều khiển, nguyên lý hoạt động của GLCD có thể khác nhau, trong bài này tôi giới thiệu loại GLCD đƣợc điều khiển bởi chip 84 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải KS0108 của Samsung, có thể nói GLCD với KS0108 là phổ biến nhất trong các loại GLCD loại này (chấm, không màu). Hình 1 là hình ảnh thật của 1 GLCD 128x64 điều khiển bởi KS0108. Chip KS0108 chỉ có 512 bytes RAM (4096 bits = 64x64) và vì thế chỉ điều khiển hiển thị đƣợc 64 dòng x 64 cột. Để điều khiển GLCD 168x64 cần 2 chip KS0108, và thực thế trong các loại GLCD có 2 chip KS0108, GLCD 128x64 do đó tƣơng tự 2 GLCD 64x64 ghép lại 20. GLCD 128x64  Các GLCD 128x64 dùng KS0108 thƣờng có 20 chân trong đó chỉ có 18 chân là thực sự điều khiển trực tiếp GLCD, 2 chân (thƣờng là 2 chân cuối 19 và 20) là 2 chân Anode và Cathode của LED nền. Trong 18 chân còn lại, có 4 chân cung cấp nguồn và 14 chân điều khiển+dữ liệu. Khác với các Text LCD HD44780U, GLCD KS0108 không hỗ trợ chế độ giao tiếp 4 bit, do đó bạn cần dành ra 14 chân để điều khiển 1 GLCD 128x64. Sơ đồ chân phổ biến của GLCD 128x64 đƣợc mô tả trong hình 3.21 85 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Bảng 3.2. Chức năng các chân GLCD 64*128 Chân VSS : đƣợc nối trực tiếp với GND, chân VDD nối với nguồn +5V một biến trở khoảng 20K đƣợc dùng để chia điện áp giửa Vdd và Vee cho chân Vo, bằng cách thay đổi giá trị biến trở chúng ta có thể điều chỉnh độ tƣơng phản của GLCD. Các chân điều khiển RS, R/W, EN và các đƣờng dữ liệu đƣợc nối trực tiếp với vi điều khiển. Riêng chân Reset (RST) có thể nối trực tiếp với nguồn 5V. EN(Enable): cho phép một quá trình bắt đầu, bình thƣờng chân EN đƣợc giữ ở mức thấp, khi một thực hiện một quá trình nào đó (đọc hoặc ghi GLCD), các chân điều khiển khác sẽ đƣợc cài đặt sẵn sàng, sau đó kích chân EN lên mức cao. Khi EN đƣợc kéo lên cao, GLCD bắt đầu làm thực hiện quá trình đƣợc yêu cầu, chúng ta cần chờ một khoảng thời gian ngắn cho GLCD đọc hoặc gửi dữ liệu. Cuối cùng là kéo EN xuống mức thấp để kết thúc quá trình và cũng để chuẩn bị chân EN cho quá trình sau này. RS (Register Select): là chân lựa chọn giữa dữ liệu (Data) và lệnh (Instruction), vì thế mà trong một số tài liệu bạn có thể thấy chân RS đƣợc gọi là chân DI (Data/Instruction Select). Chân RS=1 báo rằng tín hiệu trên các đƣờng Pin Symbol Level Function 1 Vss 0V Ground/N/V 2 Vdd 5.0V Power Supply(0V) 3 Vee 0V~ -8V Power Supply for LCD Drive 4 RS H/L Register Select 5 R/W H/L Read/Write 6 E H/L Enable 7 DB0 H/L Data Bus Line 8 DB1 H/L Data Bus Line 9 DB2 H/L Data Bus Line 10 DB3 H/L Data Bus Line 11 DB4 H/L Data Bus Line 12 DB5 H/L Data Bus Line 13 DB6 H/L Data Bus Line 14 DB7 H/L Data Bus Line 15 CS1 H Chip Select 16 CS2 H Chip Select 17 RST L Reset 18 Vout -10V Voltage 19 LED+ +5V Power Supply for LED B/L (5V) 20 LED- 0V Power Supply for LED B/L (0V) 86 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải DATA (D0:7) là dữ liệu ghi hoặc đọc từ RAM của GLCD. Khi RS=0, tín hiệu trên đƣơng DATA là một mã lệnh (Instruction). RW (Read/Write Select): chọn lựa giữa việc đọc và ghi. Khi RW=1, chiều truy cập từ GLCD ra ngoài (GLCD->AVR). RW=0 cho phép ghi vào GLCD. Giao tiếp với GLCD chủ yếu là quá trình ghi (AVR ->GLCD), chỉ duy nhất trƣờng hợp đọc dữ liệu từ GLCD là đọc bit BUSY và đọc dữ liệu từ RAM. Đọc bit BUSY thì chúng ta đã khảo sát cho Text LCD, bit này báo GLCD có đang bận hay không, việc đọc này sẽ đƣợc dùng để viết hàm wait_GLCD. Đọc dữ liệu từ RAM của GLCD là một khả năng mới mà Text LCD không có, bằng việc đọc ngƣợc từ GLCD vào AVR, chúng ta có thể thực hiện nhiều phép logic hình (hay mặt nạ, mask) làm cho việc hiển thị GLCD thêm thú vị. CS2 và CS1 (Chip Select): nhƣ đã trình bày trong phần trên, mỗi chip KS0108 chỉ có khả năng điều khiển một GLCD có kích thƣớc 64x64, trên các GLCD 128x64 có 2 chip KS0108 làm việc cùng nhau, mỗi chip đảm nhiệm một nữa LCD, 2 chân CS2 và CS1 cho phép chọn một chip KS0108 để làm việc. Thông thƣờng nếu CS2=0, CS1=1 thì nửa trái đƣợc kích hoạt, ngƣợc lại khi CS2=1, CS1=0 thì nửa phải đƣợc chọn. 3.3.10 DRF1605H  – 3.3V -40oC – 80oC – 115200bps – 2480MHz -110dB 87 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải  3.21. 3.3.11 Giới thiệu IC cảm biến dòng ACS712-20 Là IC cảm biến dòng tuyến tính dựa vào hiệu ứng Hall của hãng Allegro đƣợc tích hợp với chất dẫn dòng điện trở thấp và độ cách điện 2,1 KV RMS ứng dụng rộng rãi trong các hệ thống dân dụng và công nghiệp.  Dạng đóng gói và sơ đồ khối: ACS712-20 đƣợc đóng gói theo dạng SOIC-8 Hình 3.22. Vỉ mạch ACS712-20 88 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 3.23. Sơ đồ nguyên lý hệ thống cảm biến ACS712-20 Từ sơ đồ hình 3.20 ta thấy bên trong cảm biến đã đƣợc tích hợp sẵn bộ bù điện thế offset và các bộ khuếch đại tín hiệu . Tụ lọc CF kết hợp với điện trở nội tạo thành bộ lọc thông thấp RC ngay trƣớc bộ đệm đầu ra giúp giảm suy hao do sụt áp trên bộ lọc . Đồng thời tụ CF cũng quyết định băng thông của cảm biến  Đặc điểm: Đƣờng tín hiệu tƣơng tự ngõ ra nhiễu thấp Băng thông cảm biến đƣợc thiết lập qua chân Filter Thời gian đáp ứng ngõ ra so với ngõ vào 5us Băng thông lớn nhất 80Khz Tổng lỗi ngõ ra tại nhiệt độ 25oC 1,5 % Điện trở dây dẫn nội 1.2 mΩ Điện áp cách điện tối thiểu 2,1 KV RMS Nguồn vận hành đơn cực 5V Độ nhạy ngõ ra 100mV/A Điện áp ngõ ra ứng với dòng AC hoặc DC 89 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 3.4 Kết luận chƣơng Chƣơng này ta đi vào mô hình thực tế của hệ thống và giới thiệu về các linh kiện trong mô hình. Chức năng của từng thành phần cùng nhƣ tóm lƣợc về nguyên lý làm việc và thông số cơ bản của các linh kiện này. Từ đó làm cơ sở để đi đến thiết kế sơ đồ nguyên lý, nguyên tắc vận hành và viết chƣơng trình điều khiển ở chƣơng IV. 90 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải CHƢƠNG 4 - THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN GIÁM SÁT THIẾT BỊ ĐIỆN QUA WEB SERVER AVR Trong chƣơng này, ta sẽ đi vào cụ thể sơ đồ nguyên lý, sơ đồ mạch in toàn bộ hệ thống, giới thiệu chức năng các mô hình, các lƣu đồ giải thuật xử lý và tính toán của hệ thống điều khiển giám sát thiết bị điện qua web server AVR. 4.1 Sơ đồ nguyên lý hệ thống 1. S 2. M 91 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 3. Sơ đ thernet 4. thernet 92 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 5. S 93 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 6. M in 4.2 Gới thiệu về chức năng trong mô hình 4.2.1 ( ATmega2560 )  94 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 4.2.2 LAN thông qua I thernet. 4.2.3 4.2.4 Router. 4.2.5 . ử 4.2.6 4.3 Giải thuật phần mềm 4.3.1 Trƣớc tiên vi điều khiển ATmega2560 sẽ đọc cấu hình từ bộ nhớ chƣơng trình để thực hiện các khai báo ban đầu. 95 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải a. . 96 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 4.7. L Kết thúc Kiểm tra Đọc và ghi các giá trị, các trạng thái Có yêu cầu BROWER? Trả về các giá trị dƣới dạng HTML Bắt đầu S Đ Đ Đ S S Đ 97 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 4.3.2 . Hình 4.8. L 4.3.3 Giải thuật truy cập web server Khi hệ thống khởi động và cấu hình hệ thống bộ xử lý trung tâm sẽ chờ khi có truy cập từ trình duyệt web hệ thống sẽ tải về trình duyệt web nội dung trang web đăng nhập để bảo mật hệ thống. Khi ngƣời dùng đăng nhập đúng tài khoản thì sẽ tải về trình duyệt nội dung trang web điều khiển. Khi đăng nhập sai sẽ lặp lại quá trình đăng nhập Kiểm tra Trả về các Bắt đầu Đ S 98 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 4.9. L truy cập web server Kết thúc Có yêu cầu BROWER( IP ) Trả về Brower trang web đăng nhập User va Pass Trả về Brower trang web điều khiển Bắt đầu S Đ Đ Đ S S Đ 99 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 4.3.4 Giải thuật đo dòng điện xoay chiều Điện áp ra của cảm biến dòng tuyến tính từ 0 đến 5V tƣơng ứng với -20A đến +20A ( dòng qua cảm biến =0 tƣơng đƣơng 2.5V ) Đầu ra của cảm biến đƣợc nối vào ADC của vi điều khiển nên điện áp ngõ vào đƣợc tính nhƣ sau : IRMS = 21 0 ( ) N N i I i Với Vref ADC là +5V độ phân giải 10 bít I(i) là giá trị dòng điện đo đƣợc tại thời điểm i N số mẫu trên một chu kỳ ( N càng lớn thì phép đo càng chính xác ) 100 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải Hình 4.10. Thuật toán đo dòng điện xoay chiều 50 Hz Kết thúc Delay 1 mS i ++ i=20 IRMS = 21 0 ( ) N N i I i i=0 S Đ Đ I(i)= ReadADC 101 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 4.3.5 Giải thuật báo trộm : Khi ở chế độ chống trộm ( báo trộm =1 ) hệ thống sẽ liên tục dò trạng thái của cảm biến ánh sáng và cảm biến PIR( có trộm đột nhập cảm biến ánh sáng sẽ tác động do mở cửa phòng, cảm biến PIR sẽ nhận dạng có chuyển động của ngƣời ). Khi một trong hai cảm biến tác động thì hệ thống sẽ cảnh báo ngƣời dùng bằng cách hú còi báo động và bật tất cả các đèn chiếu sáng. Sau khi giải quyết sự cố ngƣời dùng đăng nhập để tắt chế độ báo động. Hình 4.11. Thuật toán chế độ báo trộm Kết thúc Báo trộm = 1 PIR = 1 Hoặc Cảm biến ánh = 1 Bật còi báo động Bật đèn Cảm biến ánh =0 PIR = 0 S Đ Báo trộm = 0 Đ S 102 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 4.3.6 Giải thuật báo cháy: Khi ở chế độ bình thƣờng ( cảm biến nhiệt độ < 60 oC ) và cảm biến ga không tác động. Khi bật chế độ báo cháy thì nhiệt độ và cảm biến ga sẽ đƣợc giám sát liên tục một trong hai cảm biến tác động thì còi báo động sẽ cảnh báo liên tục để ngƣời sử dụng kiểm tra và đảm bảo an toàn bản thân. Khi đang ở chế độ cảnh báo ngƣời dùng có thể tắt cảnh báo khi đã xử lý sự cố. Hình 4.12. Thuật toán báo cháy Kết thúc Báo cháy = 1 Nhiệt độ > 60 oC hoặc Cảm biến ga = 1 Bật còi báo động Nhiệt độ < 60 oC Cảm biến ga = 0 S Đ Báo cháy = 0 Đ S 103 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 4.4 Kết luận chƣơng và k  Ethernet thông qua giao diện web server đƣợc nhúng trong vi điều khiển AVR, từ bộ xử lý trung tâm, từ bộ xử lý ngoại vi.  web.    13. Kết quả ping tới web server AVR 104 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 14. G 15. G 105 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải 6. Mô hình thực tế 106 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải KẾT LUẬN VÀ KIẾN NGHỊ  Kết luận Nắm rõ hiểu bộ giao thức TCP/IP Lập trình Ethernet ụng chíp W5100 của WIZnet. Nghiên cứ Lập trình điều khiển vi điều khiể Tmega16 bằng ngôn ngữ C Nghiên cứu cảm biến PIR Nghiên cứu cảm biế Nghiên cứu cảm biế -2 Nghiên cứu cảm biế DS18B20 Ngh Nghiên cứu ngôn ngữ HTML . Xây dựng thành công một hệ thống điều khiển giám sát đơn giản trên nền web nhúng. Đề tài là nền móng cho sự phát triển các ứng dụng trong mạng LAN, trên môi trƣờng Internet. Có thể ứng dụng cho nhiều mục đích khác nhƣ thiết bị cảnh báo, giám sát trong mạng nội bộ, mạng internet, 107 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải  Hạn chế Khi mạng không tốt, rất khó điều khiển hệ thống từ xa qua web server . Khi mạng bị đứt, hệ thống mất điều khiể Hệ thống này thích hợp với mạng LAN có đƣờng truyền ổn định nhƣng khả năng bảo mật kém r . Password . Cấu hình của mạch yếu ATmega 2560 thuộc dòng 8bit, tốc độ tối đa là 16Mhz. W5100 chạy với tốc độ tối đa là 100Mbps. Do đó, server chạy chậm, không thể phục vụ cùng lúc nhiều ngƣời. điện ,đo nhiệt độ ,báo cháy , báo trộm , đo rò khí ga đáp ứng đƣợc yêu cầu.  Đề xuất hƣớng phát triển của đề tài Đây là một đề tài liên quan đến nhiều lĩnh vực khác nhau, đòi hỏi ngƣời thiết kế phải có nhiều kinh nghiệm và thời gian, do đó rất mong rằng nhà trƣờng sẽ bố trí học viên thực hiện phát triển tiếp đề tài để kết quả đƣợc tốt hơn và ứng dụng mạnh mẽ hơn cho đời sống. thernet hơn nhƣ: n động hóavà mục tiêu kế tiếp phát triển đồ án này có thể lập trình giao tiếp theo dạng modbus TCP/IP theo chuẩn công nghiệp hoặc phát triển về lĩnh vực điều khiển robot qua dực án robot ROV ( Romote of vehicle ) with Camera ứng dụng vào tìm kiếm cứu mạng . Hƣớng phát triển của đề tài này còn xoay quanh việc khắc phục vấn đề bảo mật server , đáp ứng về tốc độ đƣờng truyền và thời gian xử lý. 108 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải LỜI CẢM ƠN Luận văn đƣợc hoàn thành dƣới sự chỉ bảo tận tình của GS.TS. Lê Hùng Lân. Nhân dịp này, tôi xin đƣợc bày tỏ lòng tri ân sâu sắc đến Thầy, ngƣời đã hết lòng giúp đỡ và hƣớng dẫn cho tôi trong suốt quá trình nghiên cứu. Tôi xin đƣợc gửi lời cảm ơn đến Quý Thầy Cô tham gia giảng dạy lớp Cao học kỹ thuật điện tử K20; Quý Thầy Cô trong Khoa Điện - Điện Tử và các Thầy trong bộ môn Kỹ Thuật Viễn Thông đã cung cấp những kiến thức nền tảng giúp tôi hoàn thành luận văn; các bạn lớp Cao học kỹ thuật điện tử K20.1 đã nhiệt tình giúp đỡ và tạo điều kiện thuận lợi về mọi mặt cho tôi trong suốt quá trình học tập, nghiên cứu và hoàn thành luận văn. Dù đã có nhiều cố gắng trong quá trình thực hiện, song chắc chắn rằng luận văn sẽ không tránh khỏi những hạn chế và thiếu sót, tôi rất mong nhận đƣợc sự góp ý của Quý Thầy Cô và các bạn! Một lần nữa, tôi xin chân thành cảm ơn! TP.HCM, ngày tháng năm 2014 Học viên thực hiện Võ Thanh Tùng 109 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải LỜI CAM ĐOAN Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi, số liệu và kết quả nghiên cứu trong luận văn này là trung thực không trùng lắp với các đề tài khác. Tôi xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện luận văn này đã đƣợc cảm ơn và các thông tin trích dẫn trong luận văn đã đƣợc chỉ rõ nguồn gốc. Tác giả Võ Thanh Tùng 110 Võ Thanh Tùng - Cao học KTĐT K20.1 Đại học Giao thông Vận tải TÀI LIỆU THAM KHẢO Tiếng Việt 1. Giáo trình thiết kế và xây dựng mạng LAN và WAN, Trung tâm khoa học tự nhiên và Công nghệ quốc Gia, Viện Công nghệ Thông tin, Tháng 01, 2004. 2. PGS.TS Hoàng Minh Sơn, Mạng truyền thông công nghiệp, NXB Khoa học kỹ thuật 2006. 3. Ths. Phạm Ngọc Đĩnh, Kỹ thuật truyền số liệu, Học viện Công nghệ Bƣu chính Viễn thông, 2007 4. TS. Phạm Thế Quế, Công nghệ mạng máy tính, NXB Thông tin và Truyền Thông, Tháng 09, 2010. Tiếng Anh 5. “IEEES tandards 802.15.4,IEEE2003,ISBN0-7381-3677-5SS95127”,2004 6. “ IEEE802.15.4 Standard Specification ” 7. ZigBeeAlliance, 8. Zigbee technical documents , www.zigbee.org 9. 10. 11. 12. 13. 14. 15. 16.

Các file đính kèm theo tài liệu này:

  • pdfthiet_ke_he_thong_giam_sat_dieu_khien_thiet_bi_dien_ung_dung_cong_nghe_zigbee_802_15_4_va_ethernet_4.pdf
Luận văn liên quan