Khi thời tiết mưa, âm u luôn là nỗi ám ảnh của nhiều người và nhất là các bà nội trợ khi mà quần áo phơi mãi mà không khô, thậm chí là phơi đến hàng tuần mà quần áo vẫn bị ẩm còn kèm theo mùi hôi khó chịu. Vậy phải làm sao để đối phó với tiết trời như thế này, làm sao để quần áo nhanh khô nhất. Lúc này giàn phơi thông minh chính là biện pháp nhanh nhất giải quyết mối lo quần áo, giúp quần áo mau khô, thơm tho ngay cả khi trời mưa, trời âm u.
Trang 1TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
KHOA ĐIỆN- ĐIỆN TỬ
NGHIÊN CỨU KHOA HỌC SINH VIÊN
Đề tài: GIÀN PHƠI ĐỒ THÔNG MINH DÙNG ARDUINO
NGUYỄN CHÍ CƯỜNG TRẦN NGỌC HỮU ÁI
Bình Dương, tháng 04 năm 2016
Trang 3Mục lục TRANG
Trang bìa
MỤC LỤC
DANH MỤC HÌNH
LỜI CẢM ƠN
CHƯƠNG I: GIỚI THIỆU VỀ ĐỀ TÀI 1
1.1 Đặt vấn đề 1 1 1.2 Tầm quan trọng của đề tài 1
1.3 Mục đích nghiên cứu 1
1.4 Dàn ý nghiên cứu 2
1.5 Đối tượng nghiên cứu 2
1.6 Phương pháp và phương tiện nghiên cứu 2
Phương pháp 2
Phương tiện 2
CHƯƠNG II : TỔNG QUAN VỀ ARDUINO R3 3
2.1 Tổng quan về Arduino: 3
2.2 Một vài ứng dụng của Arduino 3
2.3 Tổng quan về Arduino UNO R3: 4
Một vài thông số của Arduino UNO R3 4
2.3.1 Bộ vi điều khiển của Arduino R3 6
2.3.2 Nguồn cho vi mạch: 6
2.3.3 Các chân năng lượng: 6
2.3.4 Bộ nhớ 6
2.3.5 Các cổng vào/ra 7
CHƯƠNG III: THIẾT KẾ ĐỀ TÀI 9
3.1 Ý tưởng thiết kế 9
3.2 Sơ đồ khối của giàn phơi đồ dùng Arduino 9
3.2.1 Sơ đồ khối 9
3.2.2 Sơ đồ kết nối thực tế 10
Hình 3.3 – Sơ đồ kết nối thực tế 10
3.2.3 Chức năng của từng khối 10
Hình 3.4 – Sơ đồ vận hành bằng tay 11
CHƯƠNG IV: KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 14
4.1 Kết quả đề tài 14
4.1.1 Thi công cơ khí 14
4.1.2 Kết nối sản phẩm 15
4.2 Đánh giá đề tài 15
PHỤ LỤC 1: CÁC LOẠI RELAY 17
1.1 Relay điện tử 5V, 5 chân 17
Trang 41.2 Relay trung gian 12V ,14 chân 18
PHỤ LỤC 2: CÁC LOẠI CẢM BIẾN 20
2.1 Mạch cảm biến mưa: 20
Mạch cảm biến mưa gồm 2 bộ phận: 20
2.2 Cảm biến độ ẩm, nhiệt độ DHT11: 21
TÀI LIỆU THAM KHẢO 25
Trang 5DANH MỤC HÌNH
Hình 2.1 – Các dòng Arduino 3
Hình 2.2 : Mạch Arduino R3 thực tế 4
Hình 2.3 – Sơ đồ khối của Arduino R3 4
Hình 2.4 – Vi xử lý ATmega328 của Arduino R3 6
Hình 2.5 - Các cổng vào ra của Arduino 7
Hình 3.1 – Mô hình giàn phơi đồ 9
Hình 3.2 – Sơ đồ kết nối thực tế 9
Hình 3.3 – Sơ đồ kết nối thực tế 10
Hình 3.4 – Sơ đồ vận hành bằng tay 11
Hình 3.5 - Lưu đồ giải thuật cho bài toán 12
Hình 3.6 – Sơ đồ động lực 12
Hình 4.1 – Thi công phần cứng 14
Hình 4.2 – Mạch động lực điều khiển 14
Hình 4.3 – Sản phẩm đề tài 15 .
Trang 6LỜI CẢM ƠN
Được sự phân công của khoa Điện – Điện tử trường đại hoc Thủ Dầu Một
và sự đồng ý của thầy hướng dẫn Văn Hoàng Phương chúng em đã thực hiện đề tài nghiên cứu khoa học sinh viên “ Giàn phơi đồ thông minh dùng Arduino” Xin chân thành cám ơn thầy Văn Hoàng Phương đã tận tình, chu đáo
hướng dẫn chỉ bảo chúng em trong suốt thời gian qua.
Mặt dù đã có nhiều cố gắng để thực hiện đề tài một các hoàn chỉnh nhất Tuy nhiên do lần đầu thực hiện nghiên cứu khoa học khó tránh khỏi những sai sót nhất định mà bản thân chưa nhận thấy được Chúng em rất mong được sự góp ý của quý thầy, cô để đề tài của chúng em được hoàn thiện hơn.
Sau cùng, chúng em xin kính chúc quý thầy cô thật dồi dào sức khoẻ và thành công trên con đường sự nghiệp giảng dạy.
Chúng em xin chân thành cảm ơn !!!
Trang 7CHƯƠNG I: GIỚI THIỆU VỀ ĐỀ TÀI
1.1 Đặt vấn đề
Trong sự phát triển ngày càng nhanh chóng và hiện đại của khoa học kỹ thuật,ngành điện tử tự động đã tạo nên một dấu ấn quan trọng trong lĩnh vực sản xuất và chếtạo, chúng luôn thay đổi và phát triển từng giờ, không dừng lại ở đó trong những nămgần đây ngành điện tử tự động đã ngảy càng gần gũi hơn với đời sống con người, hỗtrợ con người trong cuộc sống hằng ngày
Khi thời tiết mưa, âm u luôn là nỗi ám ảnh của nhiều người và nhất là các bànội trợ khi mà quần áo phơi mãi mà không khô, thậm chí là phơi đến hàng tuần màquần áo vẫn bị ẩm còn kèm theo mùi hôi khó chịu Vậy phải làm sao để đối phó vớitiết trời như thế này, làm sao để quần áo nhanh khô nhất
Lúc này giàn phơi thông minh chính là biện pháp nhanh nhất giải quyết mối loquần áo, giúp quần áo mau khô, thơm tho ngay cả khi trời mưa, trời âm u
1.2 Tầm quan trọng của đề tài
Ưu điểm của máy phơi đồ thông minh là dùng các loại cảm biến để nhận biết cáctrạng thái của môi trường bên ngoài từ đó cho ra các chế độ làm việc phù hợp giúp giảiquyết các vấn đề khó khăn khi phơi quần áo
Vì vậy đề tài này là một vấn đề không những là một thực tại khách quan mà còn
có tầm quan trọng thực sự trong hiện tại cũng như trong tương lai
1.3 Mục đích nghiên cứu
Do thực tiễn hiện nay trong đời sống sinh hoạt của con người, việc phơi quần áotrong những ngày thời tiết xấu là rất bất tiện đặt biệt đối với những gia đình không cóđiều kiện ở nhà thường xuyên, từ những bất tiện của vấn đề trên nhóm sinh viên thựchiện nghiên cứu về vấn đề này nhằm đưa ra ý tưởng chế tạo ra môt thiết bị phơi đồthông minh giúp xóa bỏ mọi bất tiện và hạn chế trong việc phơi quần áo cũng như phùhợp với xu thế mới trong ngành điều khiển tự động
Là một sinh viên ngành Điện – Điện tử muốn được thử thách bản thân, tìm hiểu
về những kiến thức chuyên ngành để có thêm kinh nghiệm trước khi ra trường phục vụcho công việc sau này
7
Trang 81.4 Dàn ý nghiên cứu
1 Thiết kế cấu trúc sơ đồ khối
2 Thi công phần cứng – phần mềm
3 Hướng dẫn sử dụng phần cứng
1.5 Đối tượng nghiên cứu
Đối tượng nghiên cứu là: nguồn mở của vi điều khiển arduino còn mới mẻ đốivới một số trường, bên cạnh đó dùng ứng dụng đó để nghiên cứu ra một giàn phơi đồthông minh
1.6 Phương pháp và phương tiện nghiên cứu
Phương pháp
- Tham khảo tài liệu: chủ yếu là kham khảo chi tiết các module, cảm biến, khí cụ điện
- Thực nghiệm: kết nối phần cứng, thiết kế mạch ổn áp, mạch động lực, cơ cấu chuyển động
Phương tiện
- Các dụng cụ trong ngành cơ khí và điện – điên tử như máy hàn máy khoan , máy tính,đồng hồ VOM… để thực hiện đề tài này còn phải thiết kế một số mạch phụ hay dùngtestboard để thử nghiệm và mô phỏng 3D
Trang 9CHƯƠNG II : TỔNG QUAN VỀ ARDUINO R3 2.1 Tổng quan về Arduino:
Hình 2.1 – Các dòng Arduino
- Arduino là một nền tảng mà mọi thiết bị phần cứng đều được làm sẵn và chuẩn hóa,
người dùng chỉ việc chọn những thứ mình cần, ráp lại là có thể chạy được Arduinocung cấp cho bạn module điều khiển động cơ có sẵn, mạch điều khiển có sẵn, mạchthu phát sóng không dây có sẵn, …
- Arduino không phải lập trình từ A đến Z Mỗi thứ phần cứng gắn mác “Arduino” đều
có những đoạn lệnh đã được viết sẵn (thư viện) do cộng đồng người dùng Arduino
cùng phát triển
2.2 Một vài ứng dụng của Arduino
- Hệ thống cảm biến đa dạng về chủng loại (đo đạc nhiệt độ, độ ẩm, gia tốc, vận tốc,cường độ ánh sáng, màu sắc vật thể, lưu lượng nước, phát hiện chuyển động, phát hiệnkim loại, khí độc,…),…
- Các thiết bị hiển thị (màn hình LCD, đèn LED,…)
- Các module chức năng (shield) hỗ trợ kêt nối có dây với các thiết bị khác hoặc các kếtnối không dây thông dụng (3G, GPRS, Wifi, Bluetooth, 315/433Mhz, 2.4Ghz,…), …
- Định vị GPS, nhắn tin SMS,…
Trang 102.3 Tổng quan về Arduino UNO R3:
Hình 2.2 : Mạch Arduino R3 thực tế
Đây là vi mạch tích hợp nên sử dụng khi mới tìm hiểu về Arduino Hiện dòngmạch này đã phát triển tới thế hệ thứ 3 (R3), cũng có thể dùng vi mạch nano nhưng nókhá nhỏ chỉ nên sử dụng cho người đã biết lập trình và thích hợp cho các đề án nhỏhoặc mô hình nhỏ
Nó khá đơn giản, các port có thể đủ phục vụ cho nhu cầu của người mới nghiêncứu mãng lập trình cho các ngoại vi, chức năng chẳng thua kém các board khác, tíchhợp sẵn board nạp và hợp túi tiền so với các board cao cấp hơn
Hình 2.3 – Sơ đồ khối của Arduino R3
Một vài thông số của Arduino UNO R3
Trang 11Vi điều khiển ATmega328 họ 8bit
Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)
Đ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 chân hardware PWM)
Số chân Analog 6 (độ phân giải 10bit)
Dòng tối đa trên mỗi chân I/O 30 mA
Trang 122.3.1 Bộ vi điều khiển của Arduino R3
Hình 2.4 – Vi xử lý ATmega328 của Arduino R3
- Arduino UNO có thể sử dụng 3 vi điều khiển họ 8bit AVR là ATmega8,ATmega168, ATmega328 Bộ não này có thể xử lí những tác vụ đơn giản như điềukhiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ xa, làm một trạm đonhiệt độ - độ ẩm và hiển thị lên màn hình LCD,… hay những ứng dụng khác mà bạn
có thể tra cứu trên mạng
2.3.2 Nguồn cho vi mạch:
Arduino UNO có thể được cấp nguồn 5V thông qua cổng USB hoặc cấp nguồnngoài với điện áp khuyên dùng là 7-12V DC và giới hạn là 6-20V Thường thì cấpnguồn bằng pin vuông 9V là hợp lí nhất nếu bạn không có sẵn nguồn từ cổng USB.Nếu cấp nguồn vượt quá ngưỡng giới hạn trên, bạn sẽ làm hỏng Arduino UNO
2.3.3 Các chân năng lượng:
- 5V: cấp điện áp 5V đầu ra Dòng tối đa cho phép ở chân này là 500mA.
- 3.3V: cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là 50mA.
- Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO.
- IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được đo ở chân
này Nhưng không được lấy nguồn từ chân này để sử dụng bởi chức năng của nókhông phải là cấp nguồn
- RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với việc
chân RESET được nối với GND qua 1 điện trở 10KΩ
2.3.4 Bộ nhớ
Trang 13Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho người dùng:
- 32KB bộ nhớ Flash: những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ nhớ Flash
của vi điều khiển Thường thì sẽ có khoảng vài KB trong số này sẽ được dùng chobootloader nhưng đừng lo, bạn hiếm khi nào cần quá 20KB bộ nhớ này đâu
- 2KB cho SRAM (Static Random Access Memory): giá trị các biến bạn khai báo khi
lập trình sẽ lưu ở đây Bạn khai báo càng nhiều biến thì càng cần nhiều bộ nhớ RAM.Tuy vậy, thực sự thì cũng hiếm khi nào bộ nhớ RAM lại trở thành thứ mà bạn phải bậntâm Khi mất điện, dữ liệu trên SRAM sẽ bị mất
2.3.5 Các cổng vào/ra
Hình 2.5 - Các cổng vào ra của Arduino
Arduino UNO có 14 chân digital Với dòng vào/ra tối đa trên mỗi chân là
40mA Ở mỗi chân đều có các điện trở pull-up (treo áp lên 5V) từ được cài đặt ngaytrong vi điều khiển ATmega328 (mặc định thì các điện trở này không được kết nối)
Một số chân digital có các chức năng đặc biệt như sau:
- 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
- Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM Bạn có thể
điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức0V và 5V như những chân khác
Trang 14- Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) Ngoài các chức năng
thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với cácthiết bị khác
- Arduino UNO có 6 chân analog (A0 → A5) để đọc giá trị điện áp trong khoảng 0V →
5V Với chân AREF trên board, bạn có thể để đưa vào điện áp tham chiếu khi sử dụng
các chân analog
Đặc biệt, Arduino UNO có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp
I2C/TWI với các thiết bị khác
2.3.6 Các tập lệnh của Arduino
Arduino có thể dùng vào rất nhiều ứng dụng thú vị khác nhau.Rất đơn giản, chỉcần phần mềm IDE, một dây kết nối USB loại A-B, và một bo mạch Arduino là có thểbắt đầu
Ngôn ngữ lập trình của Arduino chính là C/C++, nhưng so với lập trình lập trình trực tiếp với vi điều khiển, lập trình với Arduino đơn giản hơn nhiều vì chỉ phảigiao tiếp với phần cứng thông qua các thư viện, có khá nhiều các library viết sẵn để điều khiển ngoại vi: LCD, sensor, motor nên việc bạn cần làm chỉ là kết hợp chúngvới nhau để tạo ứng dụng cho riêng bạn
Phân tích chương trình: có 2 method quan trọng nhất là setup() và loop()
setup() làm nhiệm vụ khởi tạo mode cho các ngoại vi của Arduino Hàm này sẽ được
chạy một lần khi bo mạch Arduino được reset Ở chương trình này, setup() chỉ làmnhiệm vụ đặt các chân 4,5,6,7 của Arduino sang mode output
loop() là chương trình chính của Arduino Đoạn code trong loop() sẽ được Arduino
chạy vô hạn Trong chương trình này, có hàm digitalWrite() để đặt các chân (pin) ởmức điện áp cao (HIGH) hay thấp (LOW) Hàm tiếp theo là delay(), nhận đối số làmột số nguyên, thẻ hiện số mili giây ta muốn chương trình tạm ngưng
Nhưng đầu tiên phải khai báo thư viện giao tiếp với module, các chân giao tiếp.Trong hàm void setup phải khai báo chân đó là nhận hay xuất tín hiệu từ bo Arduino.Đối với các lệnh điều kiện trong đó có nhiều câu lệnh ta không cần chấm phẩy phíasau như các ngôn ngữ khác
Trang 15Khối điều khiển động cơ Khối vận hành
Khối hiển thị
Nguồn
CHƯƠNG III: THIẾT KẾ ĐỀ TÀI
3.1 Ý tưởng thiết kế
- Khi thời tiết mưa, âm u luôn là nỗi ám ảnh của nhiều người và nhất là các bà nội trợ khi
mà quần áo phơi mãi mà không khô, thậm chí là phơi đến hàng tuần mà quần áo vẫn bị
ẩm còn kèm theo mùi hôi khó chịu Vậy phải làm sao để đối phó với tiết trời như thếnày, làm sao để quần áo nhanh khô nhất
- Lúc này giàn phơi thông minh chính là biện pháp nhanh nhất giải quyết mối lo quần áo,giúp quần áo mau khô, thơm tho ngay cả khi trời mưa, trời âm u
Hình 3.1 – Mô hình giàn phơi đồ
3.2. Sơ đồ khối của giàn phơi đồ dùng Arduino
Hình 3.2 – Sơ đồ khối của giàn phơi đồ
Trang 16KHỐIIỀU KHIỂN ĐỘNG CƠ KHỐI HIỂN THỊ
KHỐI VẬN HÀNH KHỐI NGUỒN
Hình 3.3 – Sơ đồ kết nối thực tế
Khối nguồn: cung cấp nguồn cho các hệ thống hoạt động Nguồn được sử dụng là
nguồn 12V/5A Khi muốn cung cấp nguồn cho Arduino, cảm biến và các relay ta sửdụng IC 7805 để biến đổi nguồn thành 5V Sơ đồ mạch như sau:
Khối vận hành: dùng Relay.
Có 2 chế độ vận hành: chế độ bằng tay và tự động
Đ
Trang 18Lưu đồ giải thuật cho bài toán
Hình 3.5 - Lưu đồ giải thuật cho bài toán
Khối điều khiển động cơ
Hình 3.6 – Sơ đồ động lực
Trang 19 Relay trung gian 1: động cơ mở cửa
Relay trung gian 2: động cơ đóng cửa
Relay trung gian 3: động cơ đưa giàn ra
Relay trung gian 4: động cơ kéo giàn vào
Relay trung gian 5: máy sấy 220V
- Trường hợp 1: Khi có tín hiệu vào relay 1, cửa giàn phơi đồ sẽ mở ra cho đến khi gặpcông tắc hành trình 1 tác động này ngắt tiếp điềm thường đóng (relay 1 ngưng kích)động cơ đẩy cửa ra dừng lại, đồng thời cửa cũng đóng tiếp điểm thường hở (relay 3kích) giàn phơi được kéo ra ngoài chạy đến điểm cuối tác động công tắc hành trình 2( relay 3 ngưng kích) động cơ kéo giàn ra ngừng
- Trường hợp 2: Khi có tín hiệu vào relay 4 giàn phơi sẽ được kéo vào sau đó đến tácđộng công tắt hành trình 3 làm ngắt tiếp điểm thường đóng (relay 4 ngưng kích) động
cơ kéo cửa vào dừng, đồng thời đóng tiếp điểm thường hở (relay 2 kích) động cơ cửađược đẩy vào và chạy đến điểm cuối tác động công tắt hành trình 4 (relay 2 ngưngkích) động cơ đẩy cửa vào dừng
- Khi có tín hiệu vào relay thứ 5, relay kích hoạt máy sấy để sấy đồ
Các tín hiệu cung cấp cho relay được lấy từ các cảm biến (nếu máy hoạt động tự động) hay cung cấp trực tiếp (nếu máy hoạt động bằng tay)