1. Trang chủ
  2. » Luận Văn - Báo Cáo

báo cáo thực tập cơ sở đề tài 2 tìm hiểu cách sử dụng và cài đặt codes cơ bản vào mạch lập trình arduino

33 1 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Nội dung

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC NHA TRANGKHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO THỰC TẬP CƠ SỞ

Đề tài 2: TÌM HIỂU CÁCH SỬ DỤNG VÀ CÀI ĐẶT CODESCƠ BẢN VÀO MẠCH LẬP TRÌNH ARDUINO

Giảng viên hướng dẫn: Nguyễn Khắc CườngSinh viên thực hiện: Nguyễn Vũ Duy Hưng

Mã sinh viên: 62130699

Nha Trang – 2023

Trang 2

TRƯỜNG ĐẠI HỌC NHA TRANG

Khoa: Công nghệ Thông tin

PHIẾU THEO DÕI TIẾN ĐỘ VÀ ĐÁNH GIÁĐỒ ÁN/KHÓA LUẬN/CHUYÊN ĐỀ TỐT NGHIỆP(Dùng cho CBHD và nộp cùng báo cáo ĐA/KL/CĐTN của sinh viên)Tên chủ đề: TÌM HIỂU CÁCH SỬ DỤNG VÀ CÀI ĐẶT CODE CƠ BẢN VÀO MẠCH

LẬP TRÌNH ARDUINO

Giảng viên hướng dẫn: Nguy.n Kh/c Cư2ngSinh viên được hướng dẫn: Nguy.n Vũ Duy HưngKhóa: Ngành: Công nghệ Thông tin

Kiểm tra giữa tiến độ của Trưởng Bộ môn

Ngày kiểm tra:

……… ……… Đánh giá công việc hoàn thành:……%: Ký tênĐược tiếp tục: € Không tiếp tục: € ……….

Nhận xét chung (sau khi sinh viên hoàn thành ĐA/KL/CĐTN):

Điểm hình thức: ……/10 Điểm nội dung: /10 Điểm tổng kết: ….…/10

+ Đối với ĐA/KLTN:

Kết luận sinh viên: Được bảo vệ:

Không được bảo vệ:

Khánh Hòa, ngày tháng năm 2023

Cán bộ hướng dẫn

(Ký và ghi rõ họ tên)

TRƯỜNG ĐẠI HỌC NHA TRANG

Trang 3

Khoa/Viện: Công nghệ Thông tin

PHIẾU THEO DÕI TIẾN ĐỘ VÀ ĐÁNH GIÁ ĐỒ ÁN / KHÓA LUẬN TỐT NGHIỆP

(Dùng cho CBHD và nộp cùng báo cáo ĐA/KLTN của sinh viên)

Tên chủ đề: TÌM HIỂU CÁCH SỬ DỤNG VÀ CÀI ĐẶT CODE CƠ BẢN VÀO MẠCH

Mô tả mức chất lượng

cầuKhông đạt9 - 107 - 85 - 6< 5

Xây dựng đềcương nghiên cứu 10

Tinh thần và tháiđộ làm việc 10Kiến thức và kỹnăng làm việc 10Nội dung và kết

quả đạt được 40Kỹ năng viết vàtrình bày báo cáo 30

Khánh Hòa, ngày…….tháng … năm 2023

Cán bộ hướng dẫn

(Ký và ghi rõ họ tên)

Trang 4

TRƯỜNG ĐẠI HỌC NHA TRANGKhoa/Viện: Công nghệ Thông tin

PHIẾU CHẤM ĐIỂM ĐỒ ÁN / KHÓA LUẬN TỐT NGHIỆP

(Dành cho cán bộ chấm phản biện)

Tên chủ đề: TÌM HIỂU CÁCH SỬ DỤNG VÀ CÀI ĐẶT CODE CƠ BẢN VÀO MẠCH

LẬP TRÌNH ARDUINO

Chuyên ngành: Công nghệ Thông tin

Họ và tên sinh viên: Nguy.n Vũ Duy Hưng Mã sinh viên: 62130699

Người phản biện (học hàm, học vị, họ và tên):

Cơ quan công tác: Khoa Công nghệ Thông tin – Trư2ng Đại học Nha TrangI Phần đánh giá và cho điểm của người phản biện (tính theo thang điểm 10)

Tiêu chíđánh giá

Trọng số(%)

Mô tả mức chất lượng

ĐiểmGiỏiKháĐạt yêucầuKhông đạt9 - 107 - 85 - 6< 5

Hình thứcbản thuyết minh 30

Nội dung bảnthuyết minh 30

Kết quả

nghiên cứu 20Mức độ trích dẫn

và sao chép 20

ĐIỂM TỔNG

Ghi chú: Điểm tổng làm tròn đến 1 số lẻ.

Kết luận:

Đồng ý cho sinh viên: Được bảo vệ: € Không được bảo vệ: €

Khánh Hòa, ngày…….tháng …… năm 2023

Cán bộ chấm phản biện

(Ký và ghi rõ họ tên)

Trang 5

II Phần nhận xét cụ thể (dựa theo phiếu chấm điểm và khung tiêu chí đánh giá theoRubric)

II.1 Hình thức thuyết minh (tỉ trọng 30%)

* Trình bày (Rõ ràng, mạch lạc? Biểu bảng, hình vẽ trình bày rõ ràng, đúng quy cách?…)

* Bố cục và lập luận (Bố cục hợp lý? Tỉ trọng giữa các phần? Cơ sở lập luận? )

* Văn phong (Gọn gàng, súc tích hay rườm rà, khó hiểu? Lỗi văn phạm và chính tả?…)

II.2 Nội dung thuyết minh (tỉ trọng 30%)

* Mục tiêu nghiên cứu (Trình bày rõ ràng? Ý nghĩa khoa học và thực tiễn? Tính khả thi? )

* Tổng quan tài liệu (Phân tích và đánh giá? Độ tin cậy và chất lượng nguồn tài liệu?…)

* Phương pháp nghiên cứu (Hiện đại? Phù hợp với mục tiêu và nội dung nghiên cứu? Mô

tả? Đánh giá và so sánh với các phương pháp khác?…)

II.3 Kết quả nghiên cứu (tỉ trọng 20%)

* Kết quả đạt được (Độ tin cậy? Tính sáng tạo? Giá trị khoa học và thực tiễn? )

* Kết luận (Đáp ứng mục tiêu nghiên cứu? Quan điểm của cá nhân? )

………

Trang 6

LỜI CAM ĐOAN

Tôi xin được cam đoan: Những phần sử dụng tài liệu tham khảo trong đồán đã được trích dẫn đầy đủ.

Nếu phát hiện có sự sao chép kết quả nghiên cứu của đề tài khác, tôi xinchịu hoàn toàn trách nhiệm và chịu kỷ luật của Khoa và Nhà trư2ng đề ra.

Khánh Hòa, ngày … tháng … năm 2023

Sinh viên thực hiện

Trang 7

Mình cũng xin gửi l2i cảm ơn tới các bạn sinh viên Trư2ng Đại học NhaTrang đã nhiệt tình tham gia khảo sát thông tin về nhà trọ và tình hình thuê trọ,hỗ trợ đóng góp trong quá trình làm đề tài.

Trong quá trình nghiên cứu thực hiện chủ đề báo cáo, cũng như là trong quátrình làm bài báo cáo, khó tránh khỏi sai sót, rất mong các thầy, cô bỏ qua.Đồng th2i do kiến thức cũng như kinh nghiệm thực ti.n của bản thân còn hạnchế nên đề tài, bài báo cáo lần này khó thể không tránh khỏi những thiếu sót, emrất mong nhận được ý kiến đóng góp từ quý thầy, cô để em học hỏi thêm đượcnhiều kinh nghiệm, cũng như kỹ năng cần thiết.

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

Trang 8

MỤC LỤCChương 1: TỔNG QUAN VỀ ARDUINO

2.2.5 Các cổng vào/ra

Chương 2: TRÌNH BÀY CÁCH KẾT NỐI, CƠ CHẾ HOẠT ĐỘNG, CÁCH LẬP TRÌNH MẠCH ARDUINO

1 Cách kết nối2 Cơ chế hoạt động3 Ứng dụng

4 Cách lập trình mạch Arduino 4.1 Cấu trúc chương trình Arduino4.2 Phần mềm & ngôn ngữ được sử dụng

Chương 3: THIẾT KẾ VÀ LẬP TRÌNH NHÚNG THỰC HIỆN MỘT SỐ CÔNG VIỆC VI ĐIỀU KHIỂN ĐƠN GIẢN DÙNG MẠCH ARDUINO.

1 Chủ đề lựa chọn2 Xây dựng chủ đề3 Thiết bị sử dụng

3.1 Arduino Uno R3 SMD3.2 Driver L298N

3.3 Động cơ Motor DC 2 chiều3.4 Nút bấm

4 Chương trình

Trang 9

4.1 Code Chương trình4.2 Giải thích

5 Sơ đồ mạch

5.1 Hình ảnh5.2 Giải thích

Chương 4: TỔNG KẾT

1 Kết quả 2 Kết luận

3 Tài liệu tham khảo

Trang 10

DANH MỤC HÌNH VẼ

Hình 1.1 Arduino

Hình 1.2 Chi tiết bộ phận ArduinoHình 1.3 Mạch Arduino Uno R3Hình 2.1 Kết nối Arduino Uno R3Hình 2.2 Mở cửa số RunHình 2.3 Cửa sổ Device ManagerHình 2.4 Cổng kết nối (Port )Hình 2.5 Khởi động Arduino IDEHình 2.6 Chọn Board Arduino UnoHình 2.7 Chọn cổng COM3Hình 2.8 Xác nhận cổngHình 2.9 Chọn AVR

Hình 2.10 Nạp chương trình mẫuHình 2.11 Chương trình mẫuHình 2.12 Chương trình Blink

Hình 2.4.1 Cấu trúc chương trình ArduinoHình 2.4.2 Sơ đồ cấu trúc chương trình ArduinoHình 3.1.1 Arduino Uno R3 SMD

Trang 11

Chương 1: TỔNG QUAN VỀ ARDUINO1 Arduino là gì?

1.1 Các khái niệm cơ bản về Arduino

- Arduino là nền tảng tạo mẫu điện tử mã nguồn mở, được sử dụng

nhằm xây dựng các ứng dụng điện tử tương tác với nhau hoặc môitrư2ng được thuận tiện, d dàng.

- Nền tảng mẫy này giống như một máy tính thu nhỏ, giúp ngư2i dùng

lập trình và thực hiện các dự án điện tử mà không cần phải đến cáccông cụ chuyên dụng để phục vụ việc nạp code.

- Phần mềm này tương tác với thế giới bên ngoài thông qua các biến

điện tử, đèn và động cơ.

- Arduino là một bo mạch vi điều khiển do một nhóm giáo sư và sinh

viên nước Ý thiết kế và đưa ra đầu tiên vào năm 2005 Mạch Arduinođược sử dụng để cảm nhận và điều khiển nhiều đối tượng khác nhau.Ngoài ra mạch còn có khả năng liên kết với nhiều module khác nhaunhư module đọc thẻ từ, ethernet shield, sim900A, … để tăng khảnăng ứng dụng của mạch.

Trang 12

hoặc nguồn điện bên ngoài, cho phép cung cấp năng lượng cho cácphần cứng, cảm biếc khác.

- Là phần mềm nguồn mở tương tự như C++ Môi trư2ng phát triển

tích hợp Arduino (IDE – Integrated Development Enviroment ) chophép bạn soạn thảo, biên dịch code, nạp chương trình cho board.

 Tất cả những điều này nhằm hỗ trợ cho các nghệ sĩ, nhà sản xuấttự do phát triển ý tưởng của họ thành các đối tượng thực sự mộtcách d dàng.

1.3 Chi tiết phần cứng của Arduino

- Cổng USB (1): là chân c/m để tải mã lập trình từ PC lên chip điều

khiển Đồng th2i đây cũng là cổng giao tiếp serial giúp truyền dữ liệutừ chip điều khiển vào máy tính.

- Jack nguồn (2): để chạy Arduino, bạn hoàn toàn có thể nạp nguồn từ

cổng USB ở trên Tuy nhiên không phải lúc nào cũng kết nối với máytính được Có những dự án cần thực hiện ngoài tr2i sẽ cần một nguồnđiện khác với điện áp từ 9V – 12V.

- Hàng Header (3): những chân đánh số từ 0 – 12 là hàng digital pin.

Đây là nơi truyền nhận các tín hiệu số Bên cạch đó sẽ là một pin đất(GND) và pin điện áp tham chiếu (AREF).

- Hàng Header thứ 2 (4): chủ yếu liên quan tới điện áp đất, nguồn.- Hàng Header thứ 3 (5): đây là các chân để nhập – xuất các tín hiệu

analog (độc thông tin của các thiết bị cảm biến ).

- Chip điều khiển AVR (6): bộ phận xử lý trung tâm của toàn bo

mạch Với mỗi mẫu Arduino khác nhau, con chip này sẽ khác nhau.Ví dụ trên Arduino Uno thì sẽ sử dụng ATMega328.

Hình 1.2 - Chi tiết bộ phận Arduino

1.4 Các loại Arduino.- Arduino Uno

Trang 13

Đây chính là loại board đơn giản nhất nên rất phù hợp với nhữngngư2i mới b/t đầu tìm hiểu về lĩnh vực này Dữ liệu số bao gồm 14chân, đầu vào gồm 6 chân 5V, khả năng phân giải là 1024 mức, tốcđộ 16MHz, điện áp từ 7V đến 12V Kích thước của Board này là5,5x7cm.

-Arduino Pro

Đây là một thiết kế mới mẻ khi chân số không có sẵn, tùy vào sốchân bạn sử dụng để g/n trực tiếp và giúp tiết kiệm được khoảngkhông lớn, ta thư2ng thấy hai loại có nguồn 3.3V và 5V.

- Arduino LilyPad

Board mạch Lily Pad Arduino là một công nghệ dệt điện tử có thểđeo được được mở rộng bởi Leah Sang Buechley, và được thiết kếmột cách cẩn thận bởi dòng Lea Leah và SparkFun Mỗi board đượcthiết kế một cách tưởng tượng với các miếng kết nối khổng lồ & mộtmặt sau mịn màng để cho chúng được khâu vào quần áo bằng chỉ Arduino này cũng bao gồm I / O, nguồn và cả board cảm biến đượcchế tạo đặc biệt cho hàng dệt may điện tử.

- Arduino RedBoard

Board mạch RedBoard Arduino có thể được lập trình bằng cáp USBMini-B bằng Arduino IDE Nó sẽ hoạt động trên Windows 8 màkhông phải sửa đổi cài đặt bảo mật của bạn Nó không đổi do chipUSB hoặc FTDI chúng tôi sử dụng và nó hoàn toàn phẳng ở mặt sau.Tạo nó rất đơn giản để sử dụng trong thiết kế dự án Chỉ cần c/mboard, chọn tùy chọn menu để chọn Arduino UNO và bạn đã sẵn

Trang 14

sàng để tải lên chương trình Bạn có thể điều khiển RedBoard quacáp USB bằng gi/c c/m thùng.

2 Arduino Uno R3?

2.1 Tổng quan về Arduino Uno R3.

- Đâ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 chocác loại bộ nhớ như ROM, RAM và Flash, các ngõ vào/ ra digitalI/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).

- Arduino Uno R3 được sử dụng vi điều khiển ATmega328, tương

thích với hầu hết các loại Arduino Shield trên thị trư2ng, có thể g/nthêm các module mở rộng để thực hiện thêm các chức năng như điềukhiển motor, kết nối wifi hay các chức năng khác.

Hình 1.3 - Mạch Arduino Uno R3

2.2 Thông số

Vi điều khiển ATMega328 họ 8 bit

Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)Tần số hoạt động 16 MHz

Dòng tiêu thụ Khoảng 30mAĐiện áp vào khuyên

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 30 mA

Trang 15

chân I/O

Dòng ra tối đa (5V) 500 mADòng ra tối đa (3.3V) 50 mA

Bộ nhớ flash 32 KB (ATMega328) với 0.5KB dùngbởi bootloader

2.2.1 Năng lượng

- Arduino UNO 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 và giới hạnlà 6-20V Thư2ng thì cấp nguồn bằng pin vuông 9V là hợp lí nhấtnế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.2.2 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ữngchâ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à

-3.3V: cấp điện áp 3.3V đầu ra Dòng tối đa cho phép ở chân này là

-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ânGND.

-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ạnkhông được lấy nguồn 5V từ chân này để sử dụng bởi chức năng củanó 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.2.3 Bộ nhớ

Vi điều khiển Atmega328 tiêu chuẩn cung cấp cho ngư2i 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ư2ng thì sẽ có khoảng vàiKB trong số này sẽ được dùng cho bootloader nhưng đừng lo, bạnhiếm khi nào cần quá 20KB bộ nhớ này đâu.

Trang 16

-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ếnthì càng cần nhiều bộ nhớ RAM Tuy vậy, thực sự thì cũng hiếm khinà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: EEPROM đâ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ôngphải lo bị mất khi cúp điện giống như dữ liệu trên SRAM.

2.2.4 Các cổng Vào/Ra

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ể giaotiếp với thiết bị khác thông qua 2 chân này Kết nối bluetooth thư2ngthấy nói nôm na chính là kết nối Serial không dây Nếu không cầngiao tiếp Serial, bạn không nên sử dụng 2 chân này nếu không cầnthiế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 → 2 -1 tương ứng với 0V →85V) bằng hàm analogWrite() Nói một cách đơn giản, bạn có thể điềuchỉnh được điện áp ra ở chân này từ mức 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), 11 (MOSI), 12 (MISO), 13 (SCK).

Ngoài các chức năng thông thư2ng, 4 chân này còn dùng để truyềnphá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ư2i dùng sử dụng,LED sẽ sáng.

Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giảitín hiệu 10bit (0 → 2 -1) để đọc giá trị điện áp trong khoảng 0V →105V Với chân AREF trên board, bạn có thể để đưa vào điện áptham 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.

Trang 17

Chương 2: TRÌNH BÀY CÁCH KẾT NỐI, CƠ CHẾ HOẠT ĐỘNG,CÁCH LẬP TRÌNH MẠCH ARDUINO

1.Cách kết nối

- Bước 1: Kết nối Arduino Uno R3 vào máy tính thông qua cổng USB

Hình 2.1 - Kết nối Arduino Uno R3

- Bước 2: Tìm cổng kết nối của Arduino Uno R3 với máy tính

Khi Arduino Uno R3 kết nối với máy tính, nó sẽ sử dụng một cổngCOM (Communication port - cổng dữ liệu ảo) để máy tính và bomạch có thể truyền tải dữ liệu qua lại thông qua cổng này Windowscó thể quản lí đến 256 cổng COM Để tìm được cổng COM đangđược sử dụng để máy tính và mạch Arduino UNO R3 giao tiếp vớinhau, bạn phải mở chức năng Device Manager của Windows.+ Bạn mở cửa sổ Run và gõ lệnh “mmc devmgmt.msc”.

Hình 2.2 - Mở cửa sổ Run

+ Sau đó bấm Enter, cửa sổ Device Manager sẽ hiện lên.

Trang 18

Hình 2.3 - Cửa sổ Device Manager

+ Mở mục Ports (COM & LPT), bạn sẽ thấy cổng COM ArduinoUno R3 đang kết nối.

Hình 2.4 - Cổng kết nối (Port)

+ Cổng kết nối ở đây là COM3

+ Thông thư2ng, trong những lần kết nối tiếp theo, Windows sẽ sửdụng lại cổng COM3 để kết nối nên bạn không cần thực hiện thêmthao tác tìm cổng COM này nữa.

- Bước 3: Khởi động Arduino IDE

Hình 2.5 - Khởi động Arduino IDE

- Bước 4: Cấu hình phiên bản làm việc cho Arduino IDE

+ Vào menu Tools -> Board -> chọn Arduino Uno

Ngày đăng: 01/08/2024, 16:06

w