You are on page 1of 11

LỜI NÓI ĐẦU

Đất nước ta đang trong giai đoạn phát triển mạnh mẻ trên tất cả mọi lĩnh
vực kinh tế, xã hội,…Do đó vấn đề cấp bách đặt ra là cần phải phát triển các
ngành kỹ thuật. Trong đó phát triển ngành cơ điện tử cũng là một mục tiêu mà
nước ta đang đề ra.

Với nhận thức về tầm quan trọng của vấn đề trên, là sinh viên ngành kỹ
thuật cơ điện tử trường Đại Học Kỹ Thuật Công Nghệ Cần thơ trong những
năm qua với sự dạy dỗ tận tình của các thầy cô giáo trong khoa, chúng em luôn
cố gắng học hỏi và trau dồi kiến thức để phục vụ tốt cho công việc sau này.

Trong khuôn khổ đồ án môn vi điều khiển chúng em chọn đề tài cửa tự
động điều khiển bằng arduino, đã phần nào giúp chúng em làm quen với việc
thiết kế một mạch điện tử để sau này khi tốt nghiệp ra trường sẽ bớt đi những
bỡ ngỡ trong công việc. Mặt khác qua đó giúp chúng em củng cố được những
kiến thức đã học và kinh nghiệm cho công việc của mình trong tương lai.

Được sự hướng dẫn nhiệt tình của thầy: ĐƯỜNG KHÁNH SƠN đến nay
chúng em đã hoàn thành đồ án. Tuy nhiên do thời gian có hạn, kiến thức và kinh
nghiệm còn hạn chế và lần đầu tiên vận dụng kiến thức cơ bản để thực hiện một
đồ án nên chắc chắn không tránh khỏi những thiếu sót. Vậy kính mong quý
thầy cô thông cảm và chỉ dẫn thêm cho em.

Cuối cùng cho phép em được kính gửi lời cảm ơn chân thành đến thầy:
ĐƯỜNG KHÁNH SƠN đã tận tình hướng dẫn chúng em hoàn thành đồ án này.
1. Lý do chọn đề tài:

Ngày nay,những ứng dụng của vi điều khiển đã đi sâu vào đời sống sinh hoạt
và sản xuất của con người. Thực tế hiện nay là hầu hết các thiết bị điên dân
dụng hay công nghiệp đều có sự góp mặt của vi điều khiển và vi xử lí. Ứng
dụng vi điều khiển trong thiết kế hệ thống làm giảm chi phí thiết kế và hạ giá
thành sản phẩm đồng thười nâng cao tính ổn định của thiết bị và hệ thống.

Các bộ vi điều khiển chính trên thọ trường hiện nay: Vi điều khiển 8051 do hãng
Intel phát triển và sản xuất, vi điều khiển pic là một họ vi điều khiển RISC được
sản xuất bởi công ty Microchip Technology và vi điều khiển AVR là một họ vi
điều khiển do hãng Atmel sản xuất được giới thiệu lần đầu năm 1996.

Arduino là tảng vi mạch thiết kế phần cứng và phần mềm. Phần cứng bao gồm
một board mạch nguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8bit,
hoặc ARM Atmel 32-bit. Phần mềm cho phép người dùng viết các chương trình
cho mạch bằng ngôn ngữ Arduino, một ngôn ngữ riêng được phát triển dựa trên
C/C++
Trong xã hội văn minh hiện đại, cửa là một bộ phận không thể thiếu
được trong từng công trình kiến trúc. Nhưng hầu hết các loại cửa bình thường
mà chúng ta hay dung hiện nay cửa chỉ đóng mở được khi có tác động của con
người vào nó. Việc thiết kế ra một loại cửa tự động phục vụ tốt hơn cho đời
sống con người là tất yếu và vô cùng cần thiết.

2. Mục đích chọn đề tài:

- Thực hiện đề tài này giúp em có điều kiện nghiên cứu sâu hơn về vi điều
khiển và các vấn đề liên quan như thi công mạch nạp, các phần mềm hỗ trợ lập
trình

- Biết được cách lập trình cho arduino và các ứng dụng của một số linh kiện
trong mạch.
- Biết được cách lập trình cho các thiết bị ngoại vi như ở đây là bàn phím,
màn hình lcd, động cơ dc và các thiết bị khác có trong mạch.
NỘI DUNG ĐỀ TÀI
1 giới thiệu về arduino
Arduino tảng vi mạch thiết kế mở phần cứng (Open-source hardware)
và phần mềm (Open-source software). Phần cứng Arduino là những bộ vi
điều khiển bo mạch đơn (Single-board microcontroller) được tạo ra tại thị
trấn Ivrea ở Ý, nhằm xây dựng các ứng dụng tương tác với nhau hoặc với
môi trường được thuận lợi hơn. Được giới thiệu vào năm 2005, những nhà
thiết kế của Arduino cố gắng mang đến một phương thức dễ dàng, không tốn
kém cho những người yêu thích, sinh viên và giới chuyên nghiệp để tạo ra
những thiết bị có khả năng tương tác với môi trường thông qua các cảm
biến và các cơ cấu chấp hành. Những ví dụ phổ biến cho những người yêu
thích mới bắt đầu bao gồm các robot đơn giản, điều khiển nhiệt độ và phát
hiện chuyển động. Đi cùng với nó là một môi trường phát triển tích hợp
(IDE) chạy trên các máy tính cá nhân thông thường và cho phép người dùng
viết các chương trình cho mạch bằng ngôn ngữ Arduino, một ngôn ngữ riêng
được phát triển dựa trên C/C++.

Một mạch Arduino bao gồm một vi điều khiển AVR với nhiều linh kiện bổ
sung giúp dễ dàng lập trình và có thể mở rộng với các mạch khác. Một khía
cạnh quan trọng của Arduino là các kết nối tiêu chuẩn của nó, cho phép
người dùng kết nối với CPU của board với các module thêm vào có thể dễ
dàng chuyển đổi, được gọi là shield. Vài shield truyền thông với board
Arduino trực tiếp thông qua các chân khác nhau, nhưng nhiều shield được
định địa chỉ thông qua serial bus I²C-nhiều shield có thể được xếp chồng và
sử dụng dưới dạng song song. Arduino chính thức thường sử dụng các dòng
chip megaAVR, đặc biệt là ATmega8, ATmega168, ATmega328,
ATmega1280, và ATmega2560. Một vài các bộ vi xử lý khác cũng được sử
dụng bởi các mạch Aquino tương thích. Hầu hết các mạch gồm một bộ điều
chỉnh tuyến tính 5V và một thạch anh dao động 16 MHz (hoặc bộ cộng
hưởng ceramic trong một vài biến thể), mặc dù một vài thiết kế như LilyPad
chạy tại 8 MHz và bỏ qua bộ điều chỉnh điện áp onboard do hạn chế về kích
cỡ thiết bị. Một vi điều khiển Arduino cũng có thể được lập trình sẵn với
một boot loader cho phép đơn giản là upload chương trình vào bộ nhớ
flash on-chip, so với các thiết bị khác thường phải cần một bộ nạp bên
ngoài. Điều này giúp cho việc sử dụng Arduino được trực tiếp hơn bằng
cách cho phép sử dụng 1 máy tính gốc như là một bộ nạp chương trình.
2 sơ lược make uno
Maker UNO là một bo mạch tương thích với Arduino UNO được thiết để đơn giản hóa
việc xây dựng các dự án điện tử. Bạn hoàn toàn có thể thay thế bo mạch Arduino UNO
với Maker UNO mà không cần chỉnh sửa code. Lập trình và xây dựng mạch điện đơn
giản hơn với: { 12x LEDs; 1x kèn; 1x nút nhấn}, Sửa lỗi dễ dàng hơn với đèn báo
LED.

Với những bo mạch Arduino thông thường, các nhà chế tạo sẽ gặp phải vấn đề phổ biến
này trong quá trình gỡ lỗ - chúng ta không xác định được lỗi ở code hay lỗi ở phần đi dây
/ linh kiện. Với Maker UNO, vấn đề này đã được giải quyết. Đèn LED vừa có thể dùng
làm thiết bị hiển thị (ouput), nó còn có thể báo cho bạn tín hiệu trên Pin. Điều này sẽ giúp
bạn xác định vị trí xảy ra lỗi và khắc phục nhanh hơn.
Maker UNO hoàn toàn tương thích và có thể thay thế cho Arduino, đều sử dụng chung 1 bộ thư
viện và code, sử dụng cáp USB Micro B dễ dành tìm thấy ở mọi nơi, Ngoài ra, chip
ATmega16u2 đã được thay bằng CH340 để giảm thiểu chi phí.
Sơ đồ chân của vi điều khiển ATmega328P:

Hình 2.1 : Sơ đồ chân của Atmega328

♦ Digital: Các chân I/O digital (chân số 2 – 13 ) được sử dụng làm chân nhập,
xuất tín hiệu số thông qua các hàm chính : pinMode(), digitalWrite(),
digitalRead(). Điện áp hoạt động là 5V, dòng điện qua các chân này ở chế độ
bình thường là 20mA, cấp dòng quá 40mA sẽ phá hỏng vi điều khiển.

♦ Analog :Uno có 6 chân Input analog (A0 – A5), độ phân giải mỗi chân là 10
bit (0 – 1023 ). Các chân này dùng để đọc tín hiệu điện áp 0 – 5V (mặc định)
tương ứng với 1024 giá trị, sử dụng hàm analogRead().

♦ PWM : các chân được đánh số 3, 5, 6, 9, 10, 11; có chức năng cấp xung
PWM (8 bit) thông qua hàm analogWrite().

♦ UART: Atmega328P cho phép truyền dữ liệu thông qua hai chân 0 (RX) và
chân 1 (TX).
LINH KIỆN TRONG MẠCH
1 lcd 1602
Là một thiết bị thông dụng dùng để hiển thị thông tin đặc biệt là hiển thị các
chữ cái. Lcd 1602 có 16 kí tự và hai hàng, nó có thể hiển thị tối đa 32 kí tự
cùng lúc (16 ở hàng trên và 16 ở hàng dưới).

2 modun thu phát hồng ngoại


Module Thu Phát Hồng Ngoại V1 là một loại cảm biến thông dụng được dùng rất nhiều
trong các hệ thống cửa tự động thông minh, cảm biến an toàn của cổng tự động cũng như
barrie tự động, cổng co giãn inox tự động đó là cảm biến phát hiện vật cản hồng ngoại
hay cảm biến IR ( IR detector ).
- Ứng dụng: Cửa tự động thông minh, bộ chống trộm, phát hiện vật cản, đếm sản phẩm,
đếm số lượng người,...

3 Module chuyển đổi giao tiếp I2C cho LCD 1602


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) để 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.

4 dong cơ servo SG90


Servo là một dạng động cơ điện đặc biệt. Không giống như động cơ thông thường cứ cắm
điện vào là quay liên tục, servo chỉ quay khi được điều khiển (bằng xung PPM) với góc
quay nằm trong khoảng bất kì từ 0o - 180o. Mỗi loại servo có kích thước, khối lượng và
cấu tạo khác nhau. Có loại thì nặng chỉ 9g (chủ yếu dùng trên máy bay mô mình), có loại
thì sở hữu một momen lực bá đạo (vài chục Newton/m), hoặc có loại thì khỏe và nhông
sắc chắc chắn,...
5 arduno: make uno
Maker UNO là một bo mạch tương thích với Arduino UNO được thiết để đơn giản hóa
việc xây dựng các dự án điện tử. Bạn hoàn toàn có thể thay thế bo mạch Arduino UNO
với Maker UNO mà không cần chỉnh sửa code.

KẾT LUẬN
Sau thời gian thiết kế và thi công với nhiều cố gắng và nỗ lực của chúng em. Cùng với
sự chỉ bảo tận tình của giảng viên hướng dẫn, em đã thực hiện hoàn thành nhiệm vụ đó là
đề tài điều khiển cửa tự động qua cảm biến. Qua đồ án này em đã đi sâu tìm hiểu được
các hoạt động đặc trưng về phần cứng cũng như phần mềm của Arduino, đồng thời nắm
bắt được các tính năng ưu việt của các linh kiện được ứng dụng trong đề tài
Với nhiệm vụ của đồ án đặt ra, em đã lần lượt thiết kế và thi công mạch. Mặt khác trên
cơ sở của tập lệnh Arduino, em đã xây dựng chương trình điều khiển của hệ thống
Để thực hiện nhiệm vụ của đề tài này, có nhiều phương án trong xây dựng kiến trúc thiết
kế phần cứng cũng như phần mềm. Tuy nhiên, trong điều kiện cho phép cùng với nâng
lực của chúng em nên chỉ thực hiện thiết kế hệ thống như em đã trình bày trong tập đồ án
này. Và được sử chỉ bảo tận tình của giảng viên hướng dẫn cùng với sự nổ lực của chúng
em đã hoàn thành đồ án trong thời gian quy định. Tuy nhiên, do thời gian và kinh nghiệm
thực tiễn còn hạn chế nên có thể đồ án vẫn còn nhiều thiếu sót.
Em rất mong được sự chỉ bảo thêm của thầy cô cùng các bạn để đề tài được hoàn thiện
thêm
Nguyên lý hoạt động
Khi cảm biến phát hiện vật cản, tín hiệu sẽ được đưa về Arduino. Arduino sẽ cắp xung
cho động cơ Servo làm cho động cơ quay mở cửa. Đồng thời Arduino cũng đưa tín hiệu
đến LCD làm thay đổi trạng thái hiển thị trên màn hình. Ngược lại khi hết tín hiệu từ cảm
biến, Arduino sẽ ngắt xung làm động cơ đóng cửa và thay đổi trạng thái từ mở cửa sang
đóng cửa.

You might also like