CHƯƠNG 1 TỔNG QUAN TÓM LƯỢC ĐỀ TÀI CHƯƠNG 2 Giới thiệu Hiện này việc ứng dụng máy bay không người lái đang được ứng dụng rộng rãi trong và ngoài nước như dùng phun thuốc và bón phân phục vụ cho nông nghiệp, hỗ trợ truyền thông và báo chí, phòng cháy chữa cháy,. hay thậm chí xa hơn là ở lnhvực quân sự và nó được xem là một loại vũ khí cực kì nguy hiểm trong chiến tranh bất đối xứng hiện nay. Với mong muốn ứng dụng những thành tựu có được hiện nay về máy bay không người lái nên nhóm đã quyết định nghiên cứu và thực hiện để tài Sử dụng Quadcopter đo nhiệt độ - độ ẩm để phục vụ _ is xt đời sống và sản xuất. Hình ï-i Ứng dung pho biến của Quadcopter.
CHUONG 3 Đối tượng tìm hiểu ¢ Để có thể hoàn thành được dự án thì cần phải tìm hiểu về các nội dung sau đây: « _ Arduino bộ điều khiển chính của hệ thống « Xây dựng thuật toán cân bằng PID ¢ Cam biến nhiệt độ - độ ẩm Module phát song RF « Mạch cân bằng MPU6050 e Điều chỉnh băn xung PWM e« Nắm vững cách vận hành của tay cầm điều khiển Devo TX7 e« Nắm vững những kiến thức về lập trình vi điều khiển. CHƯƠNG 4 Phạm vi nghiên cứu s« Tìm hiểu kĩ về vi điều khiển Arduino và cảm biến nhiệt độ - độ ẩm. se Tìm hiểu và thiết kế sơ đồ hệ thống cho dự án. « _ Lập trình hoạt động cho hệ thống.
« _ Lắp ráp thử nghiệm từng phân của dự án + Can bang PID 1 trục. + Can bang PID 2 truc « _ Lắp ráp hoàn thiện mô hình và chạy thử nghiệm. CHƯƠNG 5 TỔNG QUAN VỀ LÍ THUYẾT VỀ LINH KIỆN CHƯƠNG 6 Tổng quan khái quát về Arduino Arduino là một bo mạch vi điều khiển xuất hiện ở nước Ý đầu tiên vào năm 2005 do một nhóm giáo sư phát triển, thiết kế. Mạch Arduino được sử dụng để điều khiển nhiều đối tượng và các ngoại vi khác nhau theo yêu cầu của người dùng.
Arduino hoàn toàn có thể làm nhiều nhiệm vụ lấy tín hiệu từ cảm biến, ngoai vi đến điều khiển các động cơ từ đơn giản đến phức tạp. Không những thế mạch còn có khả năng liên kết và giao tiếp với nhiều loại module khác nhau như ethernet shield, sim900A, module đọc thẻ từ,. để tăng tính đa dụng của mạch. Ngôn ngữ lập trình C&C++ cơ bản có thể sử dụng cho Arduino IDE, đây là ngôn ngữ rất phổ biến hiện nay, giúp người dùng tiếp cận dễ dàng hơn với việc làm quen và thiết kế các ứng dụng, IOT,.
trong đời sống. Phần cứng của Arduino bao gồm một board mạch nguồn mở được thiết kế trên nền tảng vi lý AVR Atmel 8bit, hoặc ARM, Atmel 32-bit,. Hiện nay có 6 phiên bản phần cứng Arduino được nhà sản xuất phát hành. Tuy nhiên không phải tất cả phiên bản đề phổ biến và được ưa chuộng như nhau, phiên bản thường được sử dụng nhiều 2.
Cổng nguồn R: nhất là Arduino Uno và Arduino Mega.[ CITATION Dat \I 1033 ] Hinh 2-2 Cau tao cua Arduino Uno R3 6.1 Dung lượng bộ nhớ Flash Memory: Bộ nhớ có thể ghi được lượng dữ liệu khá lớn và dữ liệu sẽ không bị mất ngay cả khi tắt điện hoặc nguồn cấp bị trục trặc. Về phan vai trò, có thể hình dung bộ nhớ này như ổ cứng của máy tính để chứa dữ liệu trên board mạch. Chương trình, ứng dụng được viết cho Arduino sẽ được lưu tại đây. Kích thước của vùng nhớ này thông thường dựa vào vi điều khiển được sử dụng, các loại vi điều khiển khác nhau sẽ có kích thước Flash Memory khác nhau, Arduino Uno R3 có dung lượng bộ nhớ Flash 32KB SRAM: tương tự như RAM của máy tính hay RAM laptop, dữ liệu sẽ bị mất ngay khi ngắt điện nhưng thay vào đó tốc độ đọc ghi xoá rất nhanh giúp xử lí câu lệnh tốt hơn trong thời gian ngắn.
Kích thước nhỏ hơn Flash Memory nhiều lần. Arduino Ủno R3 có dung lượng bộ nhớ SRAM 3 KB. EEPROM: đây là một dạng bộ nhớ tương tự như Flash Memory nhưng chu kì ghi / xoá lên đến khoảng 100,000 lần và có kích thước rất bé. Thư viện EEPROM của Arduino thường được dùng để đọc hoặc ghi dữ liệu.
Arduino Uno R3 có dung lượng bộ nhớ EEPROM 1 KB Flash Memory 32KB SRAM SRAM 3 KB EEPROM 1 KB Hình 2-3 Thông sô bộ nhớ.2 Thông số cơ bản của Arduino Uno R3 Cấp nguồn 5V cho Arduino UNO thông qua cổng USB hoặc cấp nguồn ngoài với điện áp khuyến cao là 7-12V DC và giới hạn là từ 6-20V. Thường thì cấp nguồn bằng pin vuông 9V là an toàn nhất. Nếu cấp nguồn vượt quá ngưỡng giới hạn cho phép thì sẽ làm hỏng hoặc gây hại Arduino UNO. GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO.
5V: cấp điện áp 5V đầu ra. Dòng cấp cực đại cho phép ở chân này là 500mA. Dòng cấp cực đại cho phép ở chân này là 50mA. Vin (Voltage Input): để cấp nguồn ngoài cho board mạch Arduino UNO, bạn nối cực dương của nguồn với chân Vin trên board mạch và cực âm của nguồn với chân GND.
RESET: người dùng có thể nhấn nút Reset trên board để reset vi điều khiển hoặc kết nối chân RESET được nối với GND qua 1 điện trở 10KO. Vi điều khiển Atmega 328 (ho 8 bit) 'Điện áp hoạt động 5V - DC (cấp qua cổng USB) Tân số hoạt động 16 MHz Dòng tiêu thụ 30mA Điện áp vào khuyên dùng 7-12V-DC Điện áp vào giới hạn 6-20V-DC Số chân Digital I/O 14 (6 chan PWM) $6 chan Analog 6 (độ phân giải 10 bit) Dòng tối đa trên mỗi chân I⁄O 30 mA Dòng ra tối đa (5V) 500 mA Dòng ra tối đa (3.3V) 50 mA Bộ nhớ flash 32 KB (Atmega328) voi 0.5KB ding bdi bootloader SRAM 2KB (Atmega328) EEPROM 1KB (Atmega328) Hinh 2-4 Théng sé co ban cau Arduio Uno R3 6.3 Sơ đồ và chức năng các chân của Arduino enw fie Le ae ? - DIGITAL (PwM~) É š Ifcpza(fBS) Oe) DTV) H1 0l) (äEJfsilfcorz(Gi8)G8) {I5)//81YPcnir1 G18) 1V1I910G —f#8\f88¡fcrur6(£089)27691 Dm Ga) {83)#9ÿPcir22l(Aise)'oc8A] WWMd - DRT DM _—££f8etrrz9(T6)08) - ED FTTH) {4 )#9i®ciwrasY tre) E8lSES8đĐ—| = amas a2— | — amma POO e TOO @—' | —@8 ———Ẩfff§BfE9Ñ)fcii3Xƒ6SY) Hinh 2-6 So a6 cac chan cia Arduino Uno R3 Arduino UNO có tất cả 14 chân digital dùng để xuất hoặc đọc tín hiệu. Nó chỉ có 2 mức điện áp đó là 0V và 5V với dòng vào và dòng ra tối đa là 40mA. Ở mỗi chân trong board mạch Arduino đều có các điện trở pull-up được cài đặt ngay trong vi điều khiển ATmega328.4 Một vài chân digital (kỹ thuật số) có các chức năng đặc biệt: 2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit - TX) và nhận (receive - RX) dữ liệu TTL Serial.
Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này. Nói một cách dễ hiểu thì chung ta có thể điều chỉnh được điện áp ra ở chân này từ 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác. Chân giao tiếp SPI: 10 (SS), 13 (SCK), 11 (MOSI), 12 (MISO). 4 chân này dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác.
Arduino UNO có tổng cộng 6 chân analog từ A0 đến A5 cung cấp độ phân giải tín hiệu 10bit (0 > 210-1) để đọc giá trị điện áp trong khoảng OV > 5V.5 Vi diéu khién tich hop trong Arduino See ea eae ea eee ee es - eee ee ee ụ 8 rm nh Hinh 2-7 Vi diéu khién ATmega328P Arduino UNO có thể sử dụng tất cả 3 vi điều khiển họ 8bit AVR bao gồm ATmega328, ATmega8, ATmegal68. Các vi điều khiển này có thể xử lí những tác vụ đơn giản như xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đo nhiệt độ - độ ẩm và hiển thị lên màn hình LCD, điều khiển đèn LED nhấp nháy,. Vi xử lý ATMega328P - Bộ nhớ CPU AVR lên đến 16 MHz 32KB Flash 2KB SRAM 1KB EEPROM Thiết bị ngoại vi 2x Bộ Timer / Counter 8-bit với bộ ghi thời gian và so sánh các kênh 1x Bộ Timer / Counter 16-bit với thanh ghi thời gian, thu nhận đầu vào và so sánh các kênh Sáu kênh PWM Vi xử lý ATMega16U2 Bộ vi điều khiển dựa trên AVR® RISC 8 bit - Bộ nhớ 16 KB ISP Flash 512B EEPROM 512B SRAM debugWIRE giao diện để gỡ lỗi trên chip va lap trình - Điện áp 2,7-5,5 V CHƯƠNG 7 Tổng quan về cảm biến DHT11 7.1 Giới thiệu Cảm biến nhiệt độ & độ ẩm DFRobot DHT11 có phức hợp cảm biến nhiệt độ & độ ẩm với đầu ra tín hiệu kỹ thuật số đã được hiệu chỉnh. Bằng cách sử dụng kỹ thuật thu tín hiệu kỹ thuật số và công nghệ cảm biến nhiệt độ và độ ẩm, nó đảm bảo độ tin cậy cao và độ ổn định lâu dài tuyệt vời.
Cảm biến này bao gồm thành phần đo độ ẩm kiểu điện trở và thành phân đo nhiệt độ NTC', đồng thời kết nối với bộ vi điều khiển 8 bit hiệu suất cao, mang lại DHT11 pins vec DATA NC GND chất lượng tốt, phản hồi nhanh, khả năng chống nhiễu và tiết kiém chi phi.[ CITATION Dat2 \I 1033 ] Hình 2-8 Cảm biên DHTII Hình 2-9 Sơ đồ kết nỗi 7.2 Thông số kỹ thuật của DHT11 Nguồn: 3 -> 5 VDC. Dòng sử dụng: 2. Khoảng đo độ ẩm: 20%-90% RH (sai số 5%RH) Khoảng đo nhiệt độ: 0-50°C (sai số 2°C) Tần số lấy mẫu tối đa: 1Hz (1 giây/ lần) Kích thước 15mm x 12mm x 5. 1 NTC là điện trở nhiệt nó cũng giống như cảm biến đo nhiệt độ tuy nhiên chi hoạt động có hiệu quả trong khoảng thời gian nhật định.
Điện trở nhiệt NTC sẽ giảm khi nhiệt độ tăng, do đó, nó có thê được dùng đê thê thay đổi trở kháng dudi tac dung cua nhiét.( NTC la gi? Ưng dụng của điện trở nhiệt NTC (labvietehem.vn)) CHƯƠNG 8 Mạch cân bằng MPU6050 8.1 Giới thiệu trục tích hợp đầu tiên trên thế giới (mở rộng tới 9) trục cảm biến tích hợp trong 1 chip duy nhất. Giúp loại bỏ con quay hồi chuyển pháp rời rạc. Linh kiện tích hợp con quay hồi chuyển 3 trục và cảm biến gia tốc 3 chiều. Thuật toán MotionFusion tích hợp 9 trục của MPU-6000 và MPU-6050 truy cập từ bên ngoài hoặc các cảm biến khác thông qua cổng giao tiếp I2C chính phụ, cho phép các thiết bị thu thập toàn bộ dữ liệu cảm biến mà không cần sự can thiệp của bộ xử lý hệ thống.
Có thể theo dõi chính xác cả chuyển động nhanh và chậm Internal Digital Motion Processing”" (DMP”") hỗ trợ các thuật toán nhận dạng cử chỉ và chuyển động 3D.