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

báo cáo tin học vật lý đề tài thiết kế nhà thông minh

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 (4.92 MB, 43 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>ĐẠI HỌC QUỐC GIA HÀ NỘITRƯỜNG ĐẠI HỌC CÔNG NGHỆ</b>

<b>---BÁO CÁO TIN HỌC VẬT LÝĐỀ TÀI: THIẾT KẾ NHÀ THÔNG MINH</b>

<b>Th.s Nguyễn Đăng Cơ</b>

<b>Trần Văn Hợp 20020794Đinh Gia Huy 20020796Nguyễn Văn Khánh 20020807</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>LỜI CẢM ƠN</b>

Lời nói đầu tiên, em xin phép bài tỏ lòng biết ơn chân thành và lời cảm ơn sâu sắc nhất tới hai thầy hướng dẫn bộ môn Tin học vật lý là TS. Bùi Đình Tú và ThS. Nguyễn Đăng Cơ thuộc khoa Vật lý kỹ thuật và công nghệ Nano, trường Đại học Công nghệ - Đại học Quốc gia Hà Nội đã tận tình hướng dẫn, giúp đỡ em trong thời gian học học phần Tin học vật lý và hoàn thành bản báo cáo này.

Ngoài ra, em xin cảm ơn các thành viên trong nhóm của mình đã cố gắng cùng nhau nỗ lực để hoàn thành bài báo cáo này. Em xin cảm ơn tới các thành viên của lớp học đã có những góp ý, nhận xét bổ ích cho đề tài báo cáo của chúng em. Do đề tài này liên quan đến nhiều kiến thức chuyên sâu nên trong q trình làm báo cáo khơng tránh khỏi những thiếu sót, vì vậy, chúng em rất mong nhận được thêm ý kiến đóng góp từ thầy giáo và các bạn trong lớp để bài báo cáo của nhóm em được hồn thiện hơn.

Một lần nữa, em xin chân thành cảm ơn!

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b><small>2.Đối tượng và phạm vi nghiên cứu...8</small></b>

<b><small>3.Thời gian nghiên cứu:...8</small></b>

<b><small>4.Nội dung nghiên cứu...8</small></b>

<b><small>5.Phương pháp nghiên cứu...8</small></b>

<b><small>NỘI DUNG ĐỀ TÀI...9</small></b>

<b><small>1.2.1.Giới thiệu về Arduino IDE...10</small></b>

<b><small>1.2.2.Proteus cho Arduino IDE...11</small></b>

<b><small>CHƯƠNG 2: CÁC THIẾT BỊ SỬ DỤNG VÀ THÔNG SỐ KỸ THUẬT...12</small></b>

<b><small>2.1. Mạch Arduino Uno...12</small></b>

<b><small>2.2. Mạch RFID (dùng để quét thẻ từ)...13</small></b>

<b><small>2.3. Động cơ Servo SG90 (dùng thiết kế cửa chính)...14</small></b>

<b><small>2.4. Động Cơ Bước 28BYJ-48 (dùng thiết kế cửa cuốn)...15</small></b>

<b><small>2.5. Mạch điều khiển động cơ bước ULN2003 và động cơ bước 5V...16</small></b>

<b><small>2.6. Màn hình LCD1602 (hiển thị nhiệt độ và độ ẩm)...17</small></b>

<b><small>2.7. Cảm biến nhiệt độ độ ẩm DHT11...19</small></b>

<b><small>2.8. Mắt thu hồng ngoại VS1838B (nhận tín hiệu từ điều khiển)...20</small></b>

<b><small>2.9. Đèn led (4 cái mô phỏng đèn sinh hoạt và 1 cái để thơng báo tín hiệu nhận từ remote)...21</small></b>

<b><small>2.10. Mạch chuyển đổi I2C cho LCD (giao tiếp giữa mạch arduino và màn LCD)...22</small></b>

<b><small>2.11. Cịi chíp khơng ic 16R...23</small></b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b><small>2.14. Dây cắm test board 20cm...26</small></b>

<b><small>2.15. Remote điều khiển...27</small></b>

<b><small>CHƯƠNG 3: SƠ ĐỒ MÔ PHỎNG PROTEUS VÀ CODE ARDUINO IDE...28</small></b>

<b><small>3.1. Sơ đồ môn phỏng trên Proteus...28</small></b>

<b><small>3.2. Code trên Arduino IDE...30</small></b>

<b><small>3.2.1. Code Arduino chạy thẻ từ, động cơ đóng mở cửa và hiển thị nhiệt độ, độ ẩm nhà:...30</small></b>

<b><small>3.2.2. Code Arduino để nhận tín hiệu điều khiển chạy cửa cuốn và điện sinh hoạt trong nhà:. 35CHƯƠNG 4: KẾT QUẢ, THẢO LUẬN VÀ KẾT LUẬN...40</small></b>

<b><small>4.1. Kết quả chạy mơ hình thực tế...40</small></b>

<b><small>4.2. Thảo luận về hạn chế và giải pháp...40</small></b>

<b><small>4.3. Kết luận...42</small></b>

<b><small>TÀI LIỆU THAM KHẢO...43</small></b>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<small>Hình 5: Động cơ bước 12V 28BYJ-48...16</small>

<small>Hình 6: Mạch điều khiển động cơ bước...17</small>

<small>Hình 17: Sơ đồ mơ phỏng mạch Arduino số 1...28</small>

<small>Hình 18: Sơ đồ mơ phỏng mạch Arduino số 2...29</small>

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>LỜI MỞ ĐẦU</b>

Ngày nay với sự phát triển của công nghệ, nhà thông minh đang dần bước trở thành tiêu chuẩn của nhà ở hiện đại với sự tiện ích và an tồn của nó. Nhà thơng minh có thể hiểu đơn giản là một ngơi nhà có các thiết bị gia dụng có khả năng tự động hóa và “giao tiếp” với nhau theo một lịch trình đặt sẵn, chúng ta có có thể điều khiển chúng ở bất cứ đâu thông qua điện thoại hoặc internet cá nhân. Sự manh nha phát triển của các thiết bị điện gia dụng bắt đầu từ năm 1915, để rồi ý tưởng tự động hóa các thiết bị trong nhà xuất hiện vào những năm 1930. Đến tận năm 1984, thuật ngữ "Smarthome" mới xuất hiện. Cùng với sự phát triển đến chóng mặt của cơng nghệ, nhà thơng minh cũng từ đó được để ý đến và nhận được sự đầu tư nhiều hơn.

Ưu điểm mà hệ thống điện thông minh mang lại, đầu tiên đó là sự tiện nghi. Bạn có thể điều khiển các bóng đèn, rèm cửa, hay máy lạnh bằng điện thoại tại bất kỳ nơi đâu có kết nối internet. Bên cạnh đó, nhà thơng minh có thể tích hợp hệ thống camera tốc độ và độ nét cao, hệ thống cảm biến cửa, cảm biến chuyền động, cảnh báo xâm nhập trái phép.... Nhà thơng minh tích hợp được cả đủ 5 yếu tố: tiện nghi hơn, tiết kiệm hơn, an tồn hơn, kiểm sốt tốt hơn và đẳng cấp hơn. Tuy nhiên, bên cạnh những ưu điểm thì nhà thơng minh cịn một số nhược điểm đáng nói như: chi phí lắp đặt cịn khá cao, sự ổn định không cao, tuổi thọ của các thiết bị, tính khơng đồng nhất của các thiết bị và có nhiều vấn đề về bảo mật hệ thống. Hiện nay, nhà thông mình cịn đang là một khái niệm khá mơ hồ ở nước ta, đặc biệt là những vùng thôn quê. Tuy nhiên, đây là một “mảnh đất” rất “màu mỡ”, các tập đồn và cơng ty cơng nghệ hiện nay đã, đang và sẽ đầu tư vào nhà thông minh rất nhiều. Đây sẽ là một sân chơi đầy thách thức và rất đáng để chúng ta học hỏi và đầu tư vào nó.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

Nhà thông minh đang và sẽ là một xu hướng công nghệ tất yếu trên thế giới, trở thành tiêu chuẩn của nhà ở hiện đại trong kỷ nguyên Internet of Things. Bên cạnh đó, sự tiện nghi và tiết kiệm năng lượng cũng dần trở thành một tiêu chuẩn cần thiết nhằm nâng cao chất lượng sống của chúng ta.

Chính vì những lý do trên, nhóm em quyết định chọn đề tài thiết kế ngơi nhà thông minh để làm đề tài báo cáo học phần Tin học vật lý phục vụ bài thi kết thúc học phần và để thể hiện niềm đam mê, tìm hiểu của nhóm em với nhà thơng minh.

<i><small>Hnh 1: nhà thơng minh</small></i>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<b>MỤC ĐÍCH NGHIÊN CỨU</b>

<b>1. Mục đích nghiên cứu</b>

Tạo ra một sản phẩm nhà thơng mình ở cấp độ mơ hình thử nghiệm mang tính tiện lợi, an tồn trong các tịa nhà, khách sạn, hộ gia đình…. Sản phẩm có sự tiện nghi và bảo mật phù hợp lắp đặt cho mọi không gian.

<b>2. Đối tượng và phạm vi nghiên cứu</b>

- Đối tượng: thiết kế nhà thơng mình dựa trên 2 mạch Arduino với 1 số tính năng cơ bản: 1 mạch Arduino để chạy thẻ từ, động cơ đóng mở cửa và hiển thị nhiệt độ, độ ẩm của nhà, 1 mạch Arduino để nhận tín hiệu từ điều khiển chạy cửa cuốn và điện sinh hoạt trong nhà.

- Phạm vi sử dụng: Cho các hộ gia đình, tòa nhà, khách sạn…

<b>3. Thời gian nghiên cứu: </b>

- 10 ngày kể từ khi làm đề tài.

<b>4. Nội dung nghiên cứu</b>

Nghiên cứu nguyên lý, cách hoạt động, cách lắp đặt của các hệ thống trong một ngôi nhà thông minh để tạo ra một mơ hình đơn giản về nhà thông minh.

<b>5. Phương pháp nghiên cứu</b>

Đề tài được nghiên cứu bằng phương pháp tìm hiểu lý thuyết kết hợp thực nghiệm làm mơ hình nhà thơng minh với mục đích tạo ra một sản phẩm mơ hình ứng dụng vào đời sống thực tế giúp đảm bảo tính an tồn, thuận tiện và dễ dàng sử dụng.

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>NỘI DUNG ĐỀ TÀI</b>

<b>CHƯƠNG 1: PHẦN MỀM SỬ DỤNG</b>

<b>1.1. Phần mềm Proteus</b>

<b>1.1.1. Lịch sử hình thành</b>

Proteus là ứng dụng của hãng Labcenter Electronics, nó được mơ phỏng cho đông đảo những trang thiết bị điện tử thông dụng, nổi trội có thể trợ giúp cho cả những MCU như PIC, 8051, AVR, Motorola. Proteus đã được áp dụng rộng rãi trên 35 quốc gia. Proteus đã tự cam kết thế mạnh của nó về mơ phỏng những mạch nguyên tắc sát với thực tiễn, trên 12 năm hình thành và phát triển nó càng được hồn thiện và phát triển mạnh mẽ hơn. Proteus cung ứng cho người sử dụng phần nhiều tất cả những trang thiết bị điện tử để người dùng có thể tạo nên được những mạch nguyên tắc và sau cùng là cho chạy thử và so sánh với kết quả thực tiễn. Chính vì proteus có thể tạo và chạy thử được những sơ đồ mạch có thể chjay thử ngay trên máy tính nên phù hợp để sử dụng trong giảng dạy, trong những phịng thí nghiệm điện tử hệt như trong thực hành vi xử lý…

Dễ dàng tạo nên một sơ đồ đơn giản từ những mạch điện cơ bản và linh kiện có sẵn, đến những mạch có bộ lập trình chun sâu. Dễ dàng biên tập những đặc tính của trang thiết bị trên sơ đồ thử nghiệm: biên tập số bước của động cơ bước, biên tập nguồn nuôi cho mạch, cân chỉnh tần số vận động căn bản của vi xử lý…Công cụ trợ giúp kiểm tra lỗi thiết kế trên sơ đồ thử nghiệm. Xem và đánh dấu lỗi. Chạy mơ phỏng và phân tích những đặc điểm của mạch điện căn bản. Công cụ trợ giúp cho việc chạy và mô phỏng rất mạnh và đúng

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

đồng đo Vôn, Ampe, đến những máy đo dao động, máy tạo sóng dao động… Ngồi ra Proteus cịn cung cấp cho người dùng những công cụ và những ứng dụng mà các phần mềm khác khơng có. Chẳng hạn như thư viện led với những màu sắc khác nhau bao gồm led 7 đoạn. Những thiết bị mô phỏng mà Proteus cung ứng là LCD, nó có thể mô phỏng cho rất nhiều LCD từ dễ đến phức tạp. Một điểm vượt trội nữa của Proteus là có thể mơ phỏng cơng cụ phát và thu tín hiệu từ những mạch tiếp xúc với máy. Một ưu thế khác của Proteus là cung ứng cho người sử dụng công cụ biên dịch cho những họ vi xử lý như MSC51, AVR, HC11… Qua đó tạo nên những tập tin HEX sử dụng để nạp cho vi xử lý và tập tin DSI sử dụng để xem và chạy kiểm tra từng bước trong chương trình mơ phỏng. So với những mạch vi xử lý Proteus không những cung cấp hình ảnh thực tiễn của những linh kiện xuất mà cịn cung cấp cho người lập trình rất nhiều những cửa sổ thông báo những nội dung của bộ nhớ, con trỏ, thanh ghi… Proteus chứa một thư viện khá to hơn 6000 trang thiết bị các loại và ngày càng được bổ sung cập nhật. Ngồi ra cịn có keypad (Ma trận phím dễ dùng cho người thiết kế khi cần thao tác trên những ma trận phím).

<b>1.2. Phần mềm Arduino IDE1.2.1. Giới thiệu về Arduino IDE</b>

Arduino IDE là một phần mềm mã nguồn mở chủ yếu được sử dụng để viết và biên dịch mã vào module Arduino. Đây là phần mềm Arduino chính thức, giúp cho việc biên dịch mã trở nên dễ dàng mà ngay cả một người bình thường khơng có kiến thức kỹ thuật cũng có thể làm được. Nó có các phiên bản cho các hệ điều hành như MAC, Windows, Linux và chạy trên nền tảng Java đi kèm với các chức năng và lệnh có sẵn đóng vai trị quan trọng để gỡ lỗi, chỉnh sửa và biên dịch mã trong mơi trường. Có rất nhiều các module Arduino như Arduino Uno, Arduino Mega, Arduino Leonardo, Arduino Micro và nhiều

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

module khác. Mỗi module chứa một bộ vi điều khiển trên bo mạch được lập trình và chấp nhận thơng tin dưới dạng mã. Mã chính, cịn được gọi là sketch, được tạo trên nền tảng IDE sẽ tạo ra một file Hex, sau đó được chuyển và tải lên trong bộ điều khiển trên bo. Môi trường IDE chủ yếu chứa hai phần cơ bản: Trình chỉnh sửa và Trình biên dịch, phần đầu sử dụng để viết mã được yêu cầu và phần sau được sử dụng để biên dịch và tải mã lên module Arduino. Môi trường này hỗ trợ cả ngôn ngữ C và C .<small>++</small>

Khi người dùng viết mã và biên dịch, IDE sẽ tạo file Hex cho mã. File Hex là các file thập phân Hexa được Arduino hiểu và sau đó được gửi đến bo mạch bằng cáp USB. Mỗi bo Arduino đều được tích hợp một bộ vi điều khiển, bộ vi điều khiển sẽ nhận file hex và chạy theo mã được viết.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b>CHƯƠNG 2: CÁC THIẾT BỊ SỬ DỤNG VÀ THÔNG SỐKỸ THUẬT</b>

<b>2.1. Mạch Arduino Uno</b>

<i><small>Hnh 2: Mạch Arduino UNO R3</small></i>

Đây là kit của Arduino Uno thế hệ thứ 3, có khả năng lập trình cho các ứng dụng điều khiển phức tạp. Được trang bị cấu hình mạnh cho các loại bộ nhớ như ROM, RAM và Flash, các ngõ vào/ ra digital I/O. Trong đó nhiều ngõ có khả năng xuất tín hiệu PWM, các ngõ đọc tín hiệu analog và chuẩn giao tiếp đa dạng như: UART, SPI, TWI (I2C)

Thông số kỹ thuật:

Điện áp hoạt động 5V(cấp qua cổng usb)

Số chân digital I/O 14 chân( 6 chân PWM)

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

Số chân analog <sub>6 chân</sub> Dòng ra tối đa trên mỗi chân

Mạch RFID NFC 13.56MHZ RC522 sử dụng IC MFRC522 của NXP được sử dụng để đọc và ghi dữ liệu cho thẻ RFID NFC tần số 13.56Mhz, mạch có thiết kế nhỏ gọn được sử dụng rất phổ biến hiện nay với Arduino hoặc các loại Vi điều khiển khác trong các ứng dụng cần ghi, đọc thẻ RFID NFC.

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

Khoảng cách hoạt động 0-60mm (mifare 1 card)

Tốc độ truyền dữ liệu Tối đa 10Mbit/s

Các loại card RFID hỗ trợ Mifare1 S50, Mifare1 S70, Mifare Ultralight, Mifare Pro, Mifare Desfire

<b>2.3. Động cơ Servo SG90 (dùng thiết kế cửa chính)</b>

Động cơ Sero SG90 có kích thước nhỏ gọn nên tải trọng của nó cũng nhỏ hơn các loại động cơ servo có kích thước lơn như MG995, MG996, phù hợp cho các ứng dụng mơ hình điều khiển loại vừa và nhỏ.

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>2.4. Động Cơ Bước 28BYJ-48 (dùng thiết kế cửa cuốn)</b>

Động cơ bước 12V 28BYJ-48 4 pha 4 dây có thể được điều khiển bởi mạch đệm uln2003 thơng thường hoặc có thể được kết nối với 2 pha. Nó có thể được sử dụng với bảng phát triển và có thể cắm trực tiếp.

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<i><small>Hnh 5: Động cơ bước 12V 28BYJ-48</small></i> Cường độ điện môi 600VAC/1mA/1s Tần số khi tải kéo > 600Hz

<b>2.5. Mạch điều khiển động cơ bước ULN2003</b>

Mạch điều khiển động cơ bước ULN2003 và động cơ bước 5V với ưu điểm nhỏ gọn, có sẵn mạch đệm cho động cơ, thích hợp dùng cho những ai mới làm quen với động cơ bước, từ đây sẽ hiễu rõ hơn về cấu tạo cũng như phương thức điều khiển

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

của động cơ. Mạch sử dụng IC ULN2003A để khuyếch đại các tín hiệu điều khiển từ mạch điều khiển và điện áp sử dụng cấp cho động cơ có thể lên đến 15V.

<i><small>Hnh 6: Mạch điều khiển động cơ bước</small></i>

Thông số kỹ thuật:

Tín hiệu ngõ vào 4 chân in1, in2, in3, in4

Hiển thị hoạt động 4 led hiển thị trạng thái hoạt động

<b>2.6. Màn hình LCD1602a (hiển thị nhiệt độ và độ ẩm)</b>

Màn hình text LCD1602a xanh dương sử dụng driver HD44780, có khả năng hiển thị 2 dòng với mỗi dòng 16 ký tự, màn hình có độ bền cao, rất phổ biến, nhiều code mẫu và dễ sử dụng thích hợp cho những người mới học và làm dự án.

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

Thông số kỹ thuật:

Điện áp Led xanh lá: 3V - 3.2V. Led đỏ: 2V - 2.2V IV của led phủ màu phi 5 Led xanh lá: 4000 - 5000 mcd. Led: đỏ:

600 - 800mcd

Kích thước bóng Đường kính 5 mm

<b>2.10. Mạch chuyển đổi I2C cho LCD (giao tiếp giữa mạch arduino và màn LCD)</b>

LCD có quá nhiều chân gây khó khăn trong quá trình kết nối và chiếm dụng nhiều chân của vi điều khiển? Module chuyển đổi I2C cho LCD sẽ giải quyết vấn đề này cho bạn, thay vì sử dụng tối thiểu 6 chân của vi điều khiển để kết nối với LCD (RS, EN, D7, D6, D5 và D4) thì với module chuyển đổi bạn chỉ cần sử dụng 2 chân (SCL, SDA) và 2 chân nguồn để kết nối . Module chuyển đổi I2C hỗ trợ các loại LCD sử dụng driver HD44780(LCD 1602, LCD 2004, …), kết nối với vi điều khiển thơng qua giao tiếp I2C, tương thích với hầu hết các vi điều khiển hiện nay. Ưu điểm:

- Tiết kiệm chân cho vi điều khiển - Dễ dàng kết nối với LCD

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<i><small>Hnh 11: Mạch chuyển đổi I2C</small></i>

Thông số kỹ thuật:

Điện áp hoạt động 2.5-6VDC

Hỗ trợ màn hình LCD1602,1604,2004 (driver HD44780)

Địa chỉ mặc định 0X27 (có thể điều chỉnh bằng ngắn mạch chân A0/A1/A2)

Tích hợp Jump chốt để cung cấp đèn cho LCD hoặc ngắt Tích hợp biến trở xoay điều chỉnh độ tương phản cho LCD

<b>2.11. Cịi chíp khơng ic 16R</b>

Cịi chíp khơng ic 3V 16R 12x6.5mm (12065) sử dụng cho các mạch điện tử và mơ hình.

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

Điện trở công suất là cách gọi khác của điện trở sứ . Khi hoạt động điện trở này tỏa nhiệt nên điện trở phải được bọc trong vỏ sứ. Điện trở cơng suất thường có kích thước lớn hơn so với điện trở thường. Điện trở là một linh kiện điện tử thụ dộng có tác dụng ngăn cản dịng điện trong mạch. Điện trở cơng suất có thể hoạt động tốt dưới công suất nhỏ hơn 1W. Điện trở là linh kiện cơ bản nhất, có hầu hết trong các mạch điện tử.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<i><small>Hnh 13: Điện trở</small></i>

Thông số kỹ thuật:

<b>2.13. Test board</b>

Breadboard giúp bạn dễ dàng thực hiện các mạch điện thực tế trước khi hàn trực tiếp linh kiện lên board mạch đồng. Các hàng cắm trên board có đánh số giúp bạn dễ theo dõi vị trí cắm linh kiện. Board chia thành 200 lỗ cho việc cắm nguồn và 630 lỗ cho việc cắm linh kiện. Dọc theo 2 bên đường rãnh ở giữa board, các chân nằm trên cùng 1 hàng thì nối với nhau. Các chân khác hàng không nối với nhau. đây là quy tắc sử dụng board test nói chung. Ngồi ra, với các Breadboard cùng kích thước như nhau, bạn có thể dùng nhiều Breadboard gắn lại để có được Breadboard lớn hơn, với nhiều lỗ cắm hơn.

</div>

×