1. Trang chủ
  2. » Tất cả

Thiết kế mạch điều khiển đèn LED bằng nút ấn sử dụng Arduino

29 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 29
Dung lượng 1,28 MB
File đính kèm bài đã hoàn thành.rar (4 MB)

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

PHẦN 1: GIỚI THIỆU YÊU CẦU – GIỚI HẠN 1.1 MỤC TIÊU Sau khi thực hiện xong đề tài này em sẽ hiểu rõ được nguyên lí làm việc của các thiêt bị mô hình ,cũng như điều khiển mạch đèn led bằng

Trang 1

ĐẠI HỌC THÁI NGUYÊN ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

KHOA CÔNG NGHỆ TỰ ĐỘNG HÓA

- BÁO CÁO THỰC TẬP CHUYÊN NGÀNH

Đề Tài: Thiết kế mạch điều khiển đèn LED bằng nút ấn sử dụng Arduino

Giảng viên hướng dẫn: Th.s Nguyễn Thị Hiền

Sinh viên thực hiện: Nguyễn Duy Hưng

Lớp : KTĐ-ĐT K14D

Hà Nội, 5 tháng 8 năm 2017

Trang 2

Lời Nói Đầu

Trong thời đại bùng nổthông tin hiện nay khả năng ứng dụng và tiềm lực phát triển của thông tin quảng cáo là rất lớn,việc áp dụng các kỹ thuật mới vào lĩnh vực trên là rất cần thiết Khi đi đến đâu ta cũng dễdàng bắt gặp những panô, áp phích, những bảng quảng các bằng điện tửchạy theo nhiều hướng khác nhau, với những chữ và hình ảnh cùng

nhiều màu sắc thật ấn tượng.kéo theo những sản phẩm điện tử ngày càng phổ biến Với

sự phát triển mạnh mẽ của vi điều khiển, chỉ cần một tác động nhẹ đủ làm cho các thiết

bị được điều khiển một cách nhanh chóng

Nhận thức được sự tiện lợi cùng những ưu điểm vượt trội từ việc sử dụng của các vi

điều khiển đem lại mà em đi đến quyết định chọn đề tài “THIẾT KẾ MACH ĐIỀU KHIỂN LED BẰNG NÚT ẤN SỬ DỤNG ARDUINO” để thực hiện đồ án cho môn

học này

Trong quá trình thực hiện đồ án, em tuy có nhiều thiếu sót nhưng nhờ được sự hướng

dẫn nhiệt tình cùng những góp ý quý giá mà cô giáo Nguyễn Thị Hiền mang lại,em

mới có thể hoàn thành tốt đồ án cho môn học này Vì đây là lần thực hiện đồ án đầu tiên cho môn chuyên nghành nên mặc dù đã rất cố gắng nhưng chắc chắn sẽ không thể tránh khỏi những thiếu sót Do đó em rất mong nhận được nhiều đóng góp ý kiến từ cô

Nguyễn Thị Hiền nói riêng và các thầy cô giáo bộ môn khoa Điện – Điện tử nói chung

để đồ án môn học này ngày càng được hoàn thiện hơn ,

em xin chân thành cảm ơn!

Nhận xét của GVHD :

Trang 3

PHẦN 2 TÌM HIỂU CÁC THIẾT BỊ-THIẾT KẾ MACH

2.1 Tìm hiểu tổng quan về arduino 4-5

2.2 tìm hiểu các thiết bị được sử dụng trong mạch: 5-14

2.3 cấu tạo và nguyên lí hoạt động của mach 14

Trang 4

PHẦN 1:

GIỚI THIỆU YÊU CẦU – GIỚI HẠN

1.1 MỤC TIÊU

Sau khi thực hiện xong đề tài này em sẽ hiểu rõ được nguyên lí làm việc của các thiêt bị

mô hình ,cũng như điều khiển mạch đèn led bằng nút ấn sử dụng arduino một các thành thạonhất,làm chủ được công nghệ này để có thể tự tay thiết kế sản xuất cho mình một mạch led

1.2 LÝ DO CHỌN ĐỀ TÀI

Trong thời đại bùng nổthông tin hiện nay khảnăng ứng dụng và tiềm lực phát triển của thôngtin quảng cáo là rất lớn,việc áp dụng các kỹthuật mới vào lĩnh vực trên là rất cần thiết Khi điđến đâu ta cũng dễdàng bắt gặp những panô, áp phích, những bảng quảng các bằng điện tửchạy theo nhiều hướng khác nhau, với những chữvà hình ảnh cùng nhiều màu sắc thật ấn

tượng.kéo theo những sản phẩm điện tử ngày càng phổ biến Với sự phát triển mạnh mẽ của

vi điều khiển, chỉ cần một tác động nhẹ đủ làm cho các thiết bị được điều khiển một cách nhanh chóng

Chính vì lí do đó đã thôi thúc tính tò mò và ham học hỏi trong em,phải nắm bắt được nguyên

lí hoạt động,quy trình thiết kế lắp đặt, cũng như nắm bắt công nghệ sản suất,

em đã quyết định chọn đề tài này

1.3 GIỚI HẠN ĐỀ TÀI

Bằng những kiến thức cơ bản đã được học mà em đã có khả năng thiết kế lắp

Ráp ,mô phỏng được hệ mạch điều khiển đèn led bằng nút ấn sử dụng arduino Mô hình hầuhết sử dụng các linh kiện phổ biến trên thị trường và có giá cả phù hợp với điều kiện tàichính của các bạn sinh viên

Trang 5

PHẦN 2 TÌM HIỂU CÁC THIẾT BỊ -THIẾT KẾ MẠCH

2.1 Tìm hiểu tổng quan về arduino

Arduino ra đời tại thị trấn Ivrea thuộc nước Ý và được đặt theo tên một vị vua vào thế

kỷ thứ 9 là King Arduin Arduino chính thức được đưa ra giới thiệu 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 trongnhững người phát triển Arduino, tại trường Interaction Design Instistute Ivrea (IDII) Mặc

dù hầu như không được tiếp thị gì cả, tin tức về Arduino vẫn lan truyền với tốc độ chóngmặt nhờ những lời truyền miệng tốt đẹp của những người dùng đầu tiên Hiện nayArduino nổi tiếng tới nỗi có người tìm đến thị trấn Ivrea chỉ để tham quan nơi đã sản sinh

ra Arduino

Hình :những thành viên khởi xướng ARDUNO

Arduino là một board mạch vi xử lý, 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 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 Những Model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầu vào analog,

14 chân I/O kỹ thuật số tương thích với nhiều board mở rộng khác nhau

Đượ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 Aduino bằng ngôn ngữ C hoặc C++

Trang 6

Giá của các board Arduino dao động xung quanh €20, hoặc $27 hoặc 574 468VNĐ, nếu được "làm giả" thì giá có thể giảm xuống thấp hơn $9 Các board Arduino có thể được đặt hàng ở dạng được lắp sẵn hoặc dưới dạng các kit tự-làm-lấy Thông tin thiết kế phần cứng được cung cấp công khai để những ai muốn tự làm một mạch Arduino bằng tay có thể tự mình thực hiện được (mã nguồn mở) Người ta ước tính khoảng giữa năm 2011 có trên 300 ngàn mạch Arduino chính thức đã được sản xuất thương mại, và vào năm 2013 có khoảng

700 ngàn mạch chính thức đã được đưa tới tay

người dùng

Hình 1: hình ảnh arduino

2.2 tìm hiểu các thiết bị được sử dụng trong mạch

Mạch Arduino Uno là dòng mạch Arduino phổ biến, khi mới bắt đầu làm quen, lập trình với

Arduino thì mạch Arduino thường nói tới chính là dòng Arduino UNO Hiện dòng mạch này

đã phát triển tới thế hệ thứ 3 (Mạch Arduino Uno R3).

Arduino Uno R3 là dòng cơ bản, linh hoạt, thường được sử dụng cho người mới bắt đầu.

Bạn có thể sử dụng các dòng Arduino khác như: Arduino Mega, Arduino Nano, Arduino Micro… Nhưng với những ứng dụng cơ bản thì mạch Arduino Uno là lựa chọn phù hợp nhất

Trang 7

Hình 2:ARDUINO UNO R3

Thông số cơ bản của Mạch Arduino UNO R3

Điện áp đầu vào (khuyên dùng) 7-12V

Điện áp đầu vào (giới hạn) 6-20V

Chân Digital I/O 14 (Với 6 chân PWM output)

Chân PWM Digital I/O 6

Chân đầu vào Analog 6

Dòng sử dụng I/O Pin 20 mA

Dòng sử dụng 3.3V Pin 50 mA

Trang 8

Bộ nhớ Flash 32 KB (ATmega328P) với 0.5KB dùng bởi bootloader

Arduino Uno Board sử dụng vi điều khiển

Arduino UNO có thể sử dụng 3 vi điều khiển họ 8bit AVR là: ATmega8 (Board

Arduino Uno r2), ATmega168, ATmega328 (Board Arduino Uno r3) Bộ não này có thể xử lí

những tác vụ đơn giản như điều khiển đèn LED nhấp nháy, xử lí tín hiệu cho xe điều khiển từ

xa, điều khiển động cơ bước, điều khiển động cơ serve, làm một trạm đo nhiệt độ – độ ẩm và hiển thị lên màn hình LCD,… hay những ứng dụng khác

Mạch Arduino UNO R3 với thiết kế tiêu chuẩn sử dụng vi điều khiển ATmega328

Tuy nhiên nếu yêu cầu phần cứng của bạn không cao hoặc túi tiền không cho phép, bạn có thể

sử dụng các loại vi điều khiển khác có chức năng tương đương nhưng rẻ hơn như ATmega8 (bộ nhớ flash 8KB) hoặc ATmega168 (bộ nhớ flash 16KB)

Trang 9

Nguồn sử dụng

Arduino UNO R3 có thể được cấp nguồn 5V thông qua cổng USB hoặc cấp nguồn ngoài với điện áp khuyên dùng là 7-12V DC hoặc điện áp giới hạn là 6-20V Thường thì cấp nguồn bằngpin 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

Các chân năng lượng

GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO Khi bạn dùng các thiết

bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau

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, bạn nối cực dương của

nguồn với chân này và cực âm của nguồn với chân GND

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 Và dĩ nhiên nó luôn là 5V Mặc dù vậy bạn không được lấy nguồn 5V 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Ω

Lưu ý:

 Arduino UNO không có bảo vệ cắm ngược nguồn vào Do đó bạn phải hết sức cẩn thận,kiểm tra các cực âm – dương của nguồn trước khi cấp cho Arduino UNO Việc làm chập mạch nguồn vào của Arduino UNO sẽ biến nó thành một miếng nhựa chặn giấy mình khuyên bạn nên dùng nguồn từ cổng USB nếu có thể

 Các chân 3.3V và 5V trên Arduino là các chân dùng để cấp nguồn ra cho các thiết bị khác, không phải là các chân cấp nguồn vào Việc cấp nguồn sai vị trí có thể làm hỏng board Điều này không được nhà sản xuất khuyến khích

 Cấp nguồn ngoài không qua cổng USB cho Arduino UNO với điện áp dưới 6V có thể làm hỏng board

 Cấp điện áp trên 13V vào chân RESET trên board có thể làm hỏng vi điều khiển

ATmega328

Trang 10

 Cường độ dòng điện vào/ra ở tất cả các chân Digital và Analog của Arduino UNO nếu vượt quá 200mA sẽ làm hỏng vi điều khiển.

 Cấp điệp áp trên 5.5V vào các chân Digital hoặc Analog của Arduino UNO sẽ làm hỏng

vi điều khiển

 Cường độ dòng điện qua một chân Digital hoặc Analog bất kì của Arduino UNO vượt quá 40mA sẽ làm hỏng vi điều khiển Do đó nếu không dùng để truyền nhận dữ liệu, bạn phải mắc một điện trở hạn dòng

Khi các bạn sử dụng mạch Arduino, đặc biệt một số bạn mới bắt đầu tiếp xúc, làm quen thì việc cấp nguồn nên thận trọng Theo mình thì nên sử dụng nguồn 5V chuẩn qua USB, hoặc sử dụng nguồn 9v cấp cho cổng đầu vào mạch Arduino Trách trường hợp hỏng mạch Arduino

Bộ nhớ sử dụng

Vi điều khiển Atmega328 tiêu chuẩn sử dụng trên Arduino uno r3 có:

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 cho bootloader 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ận tâm Khi mất điện, dữ liệu trên SRAM sẽ bị mất

1KB cho EEPROM (Electrically Eraseble Programmable Read Only Memory): đây

giống như một chiếc ổ cứng mini – nơi bạn có thể đọc và ghi dữ liệu của mình vào đây

mà không phải lo bị mất khi cúp điện giống như dữ liệu trên SRAM

Trang 11

Các cổng vào/ra trên Arduino Board

Mạch Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu Chúng chỉ có 2

mức điện áp là 0V và 5V 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 từ được cài đặt ngay trong 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 Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này Kết nối bluetooth thường thấy nói nôm na chính là kết nối Serial không dây Nếu không cần giao tiếp Serial, bạn không nên sử dụng 2 chân này nếu không cần thiết

Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với độ phân

giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite() Nói

Trang 12

một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5Vthay vì chỉ cố định ở mức 0V và 5V như những chân khác.

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ác thiết bị khác

LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L) Khi bấm nút Reset,

bạn sẽ thấy đèn này nhấp nháy để báo hiệu Nó được nối với chân số 13 Khi chân này được người dùng sử dụng, LED sẽ sáng

Arduino UNO Broad có 6 chân analog (A0 → 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 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 Tức là nếu bạn cấp điện áp 2.5V vào chân này thì bạn có thể dùng các chân analog để đo điện áp trong khoảng từ 0V → 2.5V với độ phân giải vẫn là 10bit

Đặ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

Lập trình cho Arduino

Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngôn riêng Ngôn ngữ này dựa trên ngôn ngữ Wiring được viết cho phần cứng nói chung Và Wiring lại là một biến thể của C/C++ Một số người gọi nó là Wiring, một số khác thì gọi là C hay C/C++ Riêng mình

thì gọi nó là “ngôn ngữ Arduino”, và đội ngũ phát triển Arduino cũng gọi như vậy Ngôn ngữ

Arduino bắt nguồn từ C/C++ phổ biến hiện nay do đó rất dễ học, dễ hiểu Nếu học tốt chương trình Tin học 11 thì việc lập trình Arduino sẽ rất dễ thở đối với bạn

Để lập trình cho Mạch Arduino, nhà phát triển cung cấp một môi trường lập trình

Arduino được gọi là Arduino IDE (Intergrated Development Environment) như hình dưới

đây

Trang 13

Button (nuts bấm)

Đây là loại button rất phổ biến, cũng như đèn LED, loại button này cũng có các kính thướccạnh 6mm hoặc 12m Loại 6mm hay được dùng trong các dự án nhỏ và loại còn lại dùng chocác dự án bự hơn và cần nút to để ngầu hơn Mình thì cực thích loại 12mm vì nó to, dễ hàn

và bấm sướng tay, không đau tay như loại 6mm Và giá thành thì khá rẻ, loại 6mm có giákhoảng 1500 dồng và 2500 đồng cho loại 12mm

Nút nhấn 6mm

Trang 14

Trong thiết bị điện tử điện trở là một linh kiện quan trọng, chúng được làm từ hợp chất

cacbon và kim loại tuỳ theo tỷ lệ pha trộn mà người ta tạo ra được các loại điện trở có trị số khác nhau

Hình dạng của điện trở trong thiết bị điện tử.

Trang 15

 Mạch được thiết kế trên phần mềm proteus

 Gồm các thiết bị :arduno uno,điện trở,nút bấm ,điện trở,led

Nguyên lí hoạt động

 Để thiết kế được mạch này, sau khi thảo luận và tham khảo ý kiến của thầygiáo , cô giáo hướng dẫn, em đã thống nhất sử dụng phương pháp điều khiển leddùng nút bấm để điều khiển các chế độ của mach led Ở phương pháp này, tín hiệuđược truyền từ nút bấm vào Arduino và được tính toán ra tín hiệu, rồi tín hiệu nàylại được truyền từ Arduino ra led, tín hiệu truyền ra không liên tục mà theo từngxung nhịp một Mỗi xung nhịp sẽ cách nhau 1ms Làm cho mạch led thay đổi cácchế độ khi ta xử dụng và tác động hết 4 nút bấm được mô phỏng trên mạch

Trang 18

int KEY1 = digitalRead(key1);

int KEY2 = digitalRead(key2);

int KEY3 = digitalRead(key3);

int KEY4 = digitalRead(key4);

Trang 24

3.3 mô phỏng trên proteus

Giới thiệu chung về phần mềm mô phỏng Proteus

Phần mềm Proteus là phần mềm cho phép mô phỏng hoạt động của mạch điện tử bao gồm phần thiết kế mạch và viết chương trìn điều khiển cho các họ vi điều khiển như MCS-51, PIC, AVR, … Proteus là phần mềm mô phỏng mạch điện tử của Lancenter Electronics, thông dụng, đặn biệt hỗ trợ cho các MCU như PIC, 8051, AVR, Motorola

mô phỏng cho hầu hết các linh kiên điện tử Phần mềm bao gồm 2 chương trình: ISIS cho phép mô phỏng mạch và ARES dùng để vẽ mạch in Proteus là công cụ mô phỏng cho

các loại vi điều khiển khá tốt, nó hỗ trợ các dòng vi điều khiển PIC, 8051, PIC, dsPIC,AVR, HC11,…các giao tiếp I2C, SPI, CAN, USB, Ethenet…ngoài ra còn mô phỏng cácmạch số, mạch tương tự một cách hiệu quả

Hình 1.9 Giao diện khởi động phần mềm Proteus

Ngày đăng: 19/09/2017, 14:49

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w