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

(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh

93 9 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

Tiêu đề Thiết Kế Hệ Thống Thông Tin Và Quản Lý Xe Cân Bằng Thông Qua Điện Thoại Thông Minh
Tác giả Lê Văn Hoạt, Võ Công Quân
Người hướng dẫn ThS. Vũ Đình Huấn
Trường học Trường Đại Học Sư Phạm Kỹ Thuật TP HCM
Chuyên ngành Công nghệ kỹ thuật ô tô
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2017
Thành phố TP Hồ Chí Minh
Định dạng
Số trang 93
Dung lượng 5,06 MB

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

Nội dung

(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh(Đồ án tốt nghiệp) Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh

Trang 1

GVHD : ThS VŨ ĐÌNH HUẤN

Tp Hồ Chí Minh, tháng 7 năm 2017

Trang 2

LỜI CẢM ƠN

Để hoàn thành đố án này nhóm đã làm việc một cách tích cực liên tục và nỗ nực không ngừng trong công việc nghiên cứu và tìm kiếm tài liệu liên quan đến nội dung của đề tài Tuy nhiên bên cạnh những cố gắng của bản thân, nhóm cũng đã gặp không ít những khó khăn, vướng mắc và người đã giúp chúng em tìm ra hướng đi đúng đó là giáo viên hướng

dẫn, thầy Vũ Đình Huấn

Với lượng kiến thức còn hạn hẹp, thêm vào đó đây là lần đầu chúng em thực hiện đồ

án nên chắc chắn không tránh khỏi những thiếu sót , hạn chế vì thế chúng em rất mong có được sự góp ý và nhắc nhờ từ thầy giáo để có thể hoàn thiện đề tài của mình

Chúng em xin chân thành cảm ơn thầy cô trường sư phạm kĩ thuậy đã tận tình dạy dỗ chúng em trong những năm qua, đặc biệt là các thầy cô trong khoa cơ khí động lực đã giúp chúng em rất nhiều trong vấn đề học tập để chúng em vượt qua những khó khăn của thời sinh viên

Chúng em xin chân thành cảm ơn sự hướng dẫn tận tình của giáo viên hướng dẫn, thấy Vũ Đình Huấn đã cung cấp cho chúng em những kiến thức chuyên môn cũng như những ý kiến đóng góp hết sức quý giá trong quá trình làm đề tài

Cuối cùng, xin cảm ơn chân thành Ba Mẹ, Anh Chị, Bạn Bè cùng những người thân

đã nuôi nấng, giúp đỡ chúng em nên người và trở thành người có ích cho xã hội

Sinh viên thực hiện

Trang 3

Mục đích chính của chúng em là mang công nghệ truyền dữ liệu không dây tới người

dữ dụng, đặc biệt trong ngành nghề công nghệ kỹ thuật ô tô, một phương pháp sữa chữa và kiểm tra tình trạng xe ngay trên smartphonr, đối với người sử dụng xe, công nghệ này sẽ làm mới lại chiếc xe, làm chiếc xe gọn gàng và tiện lời hơn với hệ điều hành thông minh Android

Để có một đề tài hoàn chỉnh, chúng em phải chia ra các bài toán nhỏ, xử lí các khó khăn nhỏ, sau đó kết hợp và chỉnh sửa lại cả phần cứng và phần mềm sao cho kết quả đạt được và tốt nhất và chính xác nhất Khó khăn chúng em gặp phải là phương pháp truyền đa

dữ liệu từ android mà vẫn không làm nhiễu sóng của các dữ liệu Đây cũng là trở ngại lớn nhất trong công nghệ truyền không dây, các tín hiệu có thể đè lên nhau, kết qur nhận được sau cũng có thể không được chính xác

Kết thúc đề tài, chúng em đã viết riêng một ứng dụng với hệ điều hành android, một hộp điều khiển được kết nối với xe, mô hình này rất hợp lí để có thể thương mại hóa, đây là một đề tài mới và rất mới vì đối với ngành công nghệ kỹ thuật ô tô, chúng em rất ít được tiếp xúc với ngôn ngữ lập trình, ít có cơ hội để giao lưa và học hỏi kinh nghiệm về lập trình

Trang 4

MỤC LỤC LỜI CẢM ƠN 2

TÓM TẮT 3

DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU 6

Chương 1 TỔNG QUAN 1

1.2 Lý do chọn đề tài 2

1.3 Mục tiêu đề tài 2

1.4 Đối tượng và phạm vi nghiên cứu 3

Chương 2 CƠ SỞ LÝ THUYẾT 4

2.1 Tổng quan về arduino 4

2.1.1 Lý thuyết về board Arduino Uno R3 6

2.1.2 Lý thuyết về arduino IDE và ngôn ngữ lập trình 9

2 2 Lý thuyết các cảm biến được sử dụng trong đề tài 10

2.2.1 Cảm biến nhiệt độ LM35 10

2.2.2 Cảm biến ánh sáng quang trở 12

2.2.3 Module blutooth HC-05 13

2.2.4 Cảm biến dòng điện ACS712 14

2.2.5 Cảm biến hall 15

Chương 3 THIẾT LẬP PHẦN CỨNG VÀ LẬP TRÌNH VỚI ARDUINO 17

3.1 Lập trình,lắp đặt cho mạch đo nhiệt độ với arduino 17

3.2 Lập trình,lắp đặt cho mạch đo cường độ sáng với arduino 19

3.3 Lắp đặt mạch kết nối bluetooth HC05 với arduino 20

3.4 Lắp đặc đo điện áp accu 21

3.5 Lập trình,lắp đặt cho mạch hall với aruidno 23

3.6 Lập trình,lắp đặt cho mạch đo cường độ dòng điện với arduino 25

Chương 4 LẬP TRÌNH ANDROID MIT APP INVENTOR 2 28

4.1 Giới thiệu về Mit App Inventor 28

4.2.1 Chế Độ Designer: chế độ dành cho thiết kế, tạo giao diện bên ngoài 30

4.2.2 Chế Độ Blocks: chế độ làm việc với các khối lệnh 42

Trang 5

Chương 5 ỨNG DỤNG MIT APP INVENTOR 2 VÀO HIỂN THỊ THÔNG TIN VÀ QUẢN LÍ NĂNG LƯỢNG XE 48

5.1 Thiết lập màn hình đăng nhập 48

5.1.2 Chế độ Block 49

5.2 Thiết lập màn hình hiển thị thống số xe 55

5.2.1 Chế độ designer 55

5.2.2 Chế độ block 57

5.3 Thiết lập màn hình điều khiển và hiển thị công suất tiêu thụ 60

5.3.1 Chế độ desinger 60

5.3.2 Chế độ Block 61

Chương 6 KẾT QUẢ NGHIÊN CỨU VÀ ỨNG DỤNG TRÊN XE CÂN BẰNG 62

6.1 Thiết kế phần cứng cho hệ thống thông tin 62

6.2 kết quả hiển thị 63

6.3 Code lập trình tham khảo 65

Chương 7 KẾT LUẬNVÀ ĐỀ NGHỊ 70

DANH MỤC TÀI LIỆUTHAM KHẢO 72

PHỤ LỤC 73

 Hướng dẫn sử dụng Arduino 73

 Hướng dẫn lập trình androi mit app inventor 2 77

Trang 6

DANH MỤC CÁC CHỮ VIẾT TẮT VÀ KÝ HIỆU

IDE Intergrated Development Environment Môi trường phát triển tích hợp

DIY Do It by Yourself là những người tự chế ra sản

phẩm của mình WYSIWYG What you see is what you get những gì bạn thấy là những gì

bạn có

USB Universal Serial Bus Một chuẩn kết nối tuần tự đa

dụng trong máy tính SRAM Static Random Access Memory Bộ nhớ truy cập ngẫu nhiên tĩnh EEPROM Electrically Erasable Programmable

Read-Only Memory

Bộ nhớ không mất dữ liệu khi ngừng cung cấp điện

SPI Serial Peripheral Interface Giao diện ngoại vi nối tiếp

IDII Interaction Design Instistute Ivrea Trường Interaction Design

Instistute Ivrea

Trang 7

DANH MỤC CÁC HÌNH Hình 1.1 Multi Media Interfacexe trên xe AUDI 1

Hình 1.2 Sử dụng màn LCD để hiển thị và điều khiển trên xa VOLVO 2

Hình 2.1 Các thành viên khởi xướng arduino 4

Hình 2.2 Boad mạch arduino Uno R3 6

Hình 2.3 Các cổng ra vào trên arduino Uno R3 8

Hình 2.4 Giao diện màn hinh arduino IDE 10

Hình 2.5 Cảm biến nhiệt độ 11

Hình 2.6 Cảm biến ánh sang quang trở 12

Hình 2.7 Module blutooth HC-05 13

Hình 2.8 Cảm biến dòng điện ACS712 14

Hình 2.8 Nguyên lý cảm biến Hall 16

Hình 3.1 Mạch đo cảm nhiệt độ với arduino 17

Hình 3.2 Kết quả hiển thị đo nhiệt độ từ arduino 18

Hình 3.3 Mạch đo cường độ sáng với arduino 19

Hinh 3.4 Kết quả Hiển thị đo cường độ sang từ arduino 20

Hình 3.5 Mạch kết nối bluetooth HC05 với arduino 20

Hình 3.6 Mạch kết nối đo điện áp accu với arduino 21

Hình 3.7 Kết quả hiển thị điện áp accu 22

Hình 3.8 Mạch kết đo tín hiệu xung của hall với arduino 23

Hình 3.9 Kết quả hiển thị số quay quay động cơ cân bằng (rpm) 25

Hình 3.10 Lắp đặt cho mạch đo cường độ dòng điện với arduino 26

Hinh 3.11 Kết quả Hiển thị đo cường độ dòng điện từ arduino 27

Hình 4.1 Sơ đồ nguyên truyền phiên bản mới nhất hiện nay là

MIT App Inventor 2……… 28

Hình 4.2 Giao diện quản lý Project 29

Hình 4.3 Giao diện Start New Project 30

Hình 4.4 Giao diện các thành phần chính của chế độ designer 30

Hình 4.5 Giao diện User inteface (Giao diện người dùng) 31

Hình 4.6 Giao diện Layout (Bố cục) 32

Hình 4.7 Giao diện Media (Phương tiện truyền thông) 33

Trang 8

Hình 4.8 Giao diện Drawing and Animation (Vẽ và chuyển động) 35

Hình 4.10 Giao diện Social (Giao tiếp - Xã hội) 36

Hình 4.11 Giao diện Storage (Lưu trữ) 37

Hình 4.12 Giao diện Connectivity (Kết nối) 38

Hình 4.13 Giao diện LEGO® MINDSTORMS® 39

Hình 4.14 Giao diện Thành phần - thuộc tính 40

Hình 4.15 Giao diện Lệnh tích hợp sẵn 42

Hình 4.16 Giao diện Lệnh Creen 43

Hình 4.17 Giao diện Lệnh Any component 43

Hình 4.18 Giao diện vùng làm việc 44

Hình 4.19 Giao diện hộp cảnh báo 47

Hình 5.1 Giao diện của ứng dụng 48

Hình 5.2 Giao diện cửa sổ components 49

Hình 5.3 khối code thiết lập kết nối bluetooth 50

Hình 5.4 khối code thiết lập kết nối Bluetooth khi phát hiện lỗi 51

Hình 5.5 khối code thiết lập mở screen2 51

Hình 5.6 khối code thiết lập Reset password cho ứng dụng 52

Hình 5.7 khối code thiết lập thay đổi password cho ứng dụng 52

Hình 5.8 khối code thiết lập Tự định vị xe 53

Hình 5.9 khối code thiết lập Tìm xe bằng nút bấm 54

Hình 5.10 khối lệnh call bluetooth 54

Hình 5.10 Màn hình hiển thị tốc độ động cơ và tích hợp tính năng điều khiển đèn57 Hình 5.11 khối code thiết lập điều khiển hiển thị thông số 58

Hình 5.12 khối code thiết lập điều khiển hiển điều khiển đèn cơ bản 59

Hình 5.13 khối code thiết lập điều kiện để hoạt động là click vào button 59

Hình 5.14 Màn hình hiển thị creen 3 60

Hình 5.15 khối code thiết lập truyền dữ liệu số từ arduino đến android 61

Hình 6.1:Sơ đồ nguyên lý hệ thống quản lý thông tin và điều khiển 62

Hình 6.2:Sơ đồ mạch điện thực tế 62

Hình 6.3 Sơ đồ mạch điện 63

Hình 6.4 Kết quả hiển thị khi xe hoạt động theo dạng đồng hồ kim 63

Hình 6.5 Hiển thị kết quả theo đồng hồ số 64

Trang 9

Hình 6.6 kết quả điều khiển đèn chiếu sáng 64

Trang 10

DANH MỤC CÁC BẢNG

Bảng 2.1 Một vài thông số của Arduino UNO R3 6 Bảng 2.2 Thông số kỹ thuật cảm biến dòng điện ACS712 15 Bảng 4.1 Nhóm những đối tượng dùng để thiết kế giao diện cho screen mà người dùng nhìn thấy được 31 Bảng 4.2 Nhóm lệnh sắp xếp các đối tượng theo một bố cục 33 Bảng 4.3:Nhóm lệnh liên quan đến đa phương tiện như âm thanh, video, máy ảnh,

ghi âm 34

Bảng 4.4: Nhóm lệnh tạo ra những chuyển động hay tương tác 35 Bảng 4.6 Nhóm Các đối tượng này giúp bạn thao tác về liên lạc, giao tiếp và mạng xã hội 37 Bảng 4.7 Nhóm chức năng này giúp bạn lưu trữ thông tin, dữ liệu, theo nhiều cách khác nhau 38 Bảng 4.8 Nhóm giúp bạn hoàn toàn có thể dùng chúng để kết nối bluetooth, giao thức web, 39 Bảng 4.9 Nhóm giúp cho bạn những đối tượng có thể làm việc với Lego Mindstorm 40

Trang 11

Chương 1 TỔNG QUAN 1.1 Tình hình hiện nay

Ngày nay khoa học công nghệ ngày càng phát triển, vi điều khiển AVR và vi điều khiển PIC ngày càng thông dụng và hoàn thiện hơn, nhưng có thể nói sự xuất hiện của Arduino vào năm 2005 tại Italia đã mở ra một hướng đi mới cho vi điều khiển Sự xuất hiện của Arduino đã hỗ trợ cho con người rất nhiều trong lập trình và thiết kế, nhất là đối với những người bắt đầu tìm tòi về vi điều khiển mà không có quá nhiều kiến thức, hiểu biết sâu sắc về vật lý và điện tử Phần cứng của thiết bị đã được tích hợp nhiều chức năng cơ bản và

là mã nguồn mở Ngôn ngữ lập trình trên nền Java lại vô cùng dễ sử dụng tương thích với ngôn ngữ C và hệ thư viện rất phong phú và được chia sẻ miễn phí Chính vì những lý do như vậy nên Arduino hiện đang dần phổ biến và được phát triển ngày càng mạnh mẽ trên toàn thế giới

Công nghệ hiển thị được tùy biến nhiều hơn trên màn hình LED, chiếc xe trở nên hiện đại, sang trọng nên đã thu hút rất nhiều người tiêu dùng lựa chọn chiếc xe có màn hình hiển thị thông số và màn hình điều khiển các option, từ đó xu hướng thiết kế các xe hiện đại hiện nay không thế thiếu được 2 màn hình quan trọng này

Hình 1.1 Multi Media Interfacexe trên xe AUDI

Trang 12

1.2 Lý do chọn đề tài

Trên cơ sở kiến thức đã học trong môn học: lập trình Visual basic, hệ thống điều

khiển động cơ và các thiết bị điện tử, chúng em đã quyết định thực hiện đề tài Thiết kế hệ thống thông tin và quản lý xe cân bằng thông qua điện thoại thông minh với mục đích

để tìm hiểu thêm về Arduino, làm quen với các thiết bị điện tử, thực hành lại với các kiến thức về cảm biến và nâng cao hiểu biết cho bản thân

Dựa vào những lợi ích thực tế và khả năng phát triển trong tương lai, truyền dữ liệu không dây đang là xu thế phát triển trong ngành kỹ thuật ô tô nói riêngvà các ngành kỹ thuật điều khiển nói chung, các công ty ô tô lớn đã tích hợp rất nhiều tính năng điều khiển lên màn hình cảm ứng LCD và sử dụng màn hình thứ 2 để hiển thị đa nhiệm các thông số của xe

Trang 13

phần mềm di động mở Android kết hợp với sự xử lí tín hiệu và điều khiển mạnh mẽ của Arduino Đây là hướng phát triển trong tương lai của nền công nghệ nói chung và ngành công nghệ ô tô nói chung, thay vì sử dụng mạng LAN, CAN, tại sao chúng ta không sử dụng truyền dữ liệu không dây với những ưu điểm vượt trội về mặt không gian và thẫm mỹ

1.4 Đối tượng và phạm vi nghiên cứu

Đối tượng nghiên cứu:

vi mạch điện tử và điện thoại thông minh… Do đó, để tạo ra một sản phẩm hoàn thiện như mục đích đặt ra thì nhóm cần phải tập trung nghiên cứu chủ yếu đến các đối tượng:

 Vi mạch điện tử bao gồm 1 boad mạch arduino,1 moduel Bluetooth và các cảm biến

 Phần mềm tạo ứng dụng trên Android.Mọi tín hiệu từ arduino sẽ truyền đến điện thoại nhờ vào Bluetooth

Phạm vi nghiên cứu:

 Tập trung nghiên cứu cách xử lí tín hiệu truyền từ Arduino đến Android

 Giải quyết các vướng bận về mặt sóng tín hiệu, giảm nhiễu

Trang 14

Chương 2 CƠ SỞ LÝ THUYẾT 2.1 Tổng quan về arduino

Arduino thực sự đã gây sóng gió trên thị trường người dùng DIY (là những người tự chế

ra sản phẩm của mình) trên toàn thế giới trong vài năm gần đây.Số lượng người dùng cực lớn và đa dạng với trình độ trải rộng từ bậc phổ thông lên đến đại học đã làm cho ngay cả những người tạo ra chúng phải ngạc nhiên về mức độ phổ biến

Hình 2.1 Các thành viên khởi xướng arduino

Arduino là gì mà có thể khiến ngay cả những sinh viên và nhà nghiên cứu tại các trường đại học danh tiếng như MIT, Stanford, Carnegie Mellon phải sử dụng; hoặc ngay cả Google cũng muốn hỗ trợ khi cho ra đời bộ kit Arduino Mega ADK dùng để phát triển các ứng dụng Android tương tác với cảm biến và các thiết bị khác?

Arduino thật ra là một bo mạch vi xử lý được dùng để lập trình tương tác với các thiết

bị phần cứng như cảm biến, động cơ, đèn hoặc các thiết bị khác Đặc điểm nổi bật của Arduino là môi trường phát triển ứng dụng cực kỳ dễ sử dụng, với một ngôn ngữ lập trình

có thể học một cách nhanh chóng ngay cả với người ít am hiểu về điện tử và lập trình Và

Trang 15

điều làm nên hiện tượng Arduino chính là mức giá rất thấp và tính chất nguồn mở từ phần cứng tới phần mềm.

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ách 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

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 trong nhữ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óng mặ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 nay Arduino 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

Trang 16

2.1.1 Lý thuyết về board Arduino Uno R3

Nhắc tới dòng mạch Arduino dùng để lập trình, cái đầu tiên mà người ta 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 (R3).là một bo mạch thiết kế bộ xử lý trung tâm điều khiển AVR Atmega328

Hình 2.2 Boad mạch arduino Uno R3

Bảng 2.1 Một vài thông số của Arduino UNO R3

Đ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 (trong đó 6 chân pin có khả năng điều khiển

xung PWM)

Số chân Analog 6 (độ phân giải 10bit)

Trang 17

Dòng tối đa trên mỗi chân I/O 30 mA

-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Ω

Trang 18

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

Hình 2.3 Các cổng ra vào trên arduino Uno R3

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 8 bit (giá trị từ 0 → 28

-1 tương ứng với 0V → 5V) bằng hàm analogWrite() Nói một

Trang 19

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 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ườ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

2.1.2 Lý thuyết về arduino IDE và ngôn ngữ lập trình

Thiết kế bo mạch nhỏ gọn, trang bị tính năng thông dụng mang lại nhiều lợi thế cho arduino,tuy nhiên sức mạnh tính năng thực sự nằm ở phần mềm Môi trường lập trình đơn giản dễ sử dụng, ngôn ngữ lập trình Wiring dễ hiểu và dựa trên nền tảng C/C++ rất quen thuộc với người làm kỹ thuật Và quan trọng là số lượng thư viện code được viết sẵn và chia

sẻ bởi cộng đồng nguồn mở là cực kỳ lớn

Môi trường lập trình Arduino IDE có thể chạy trên ba nền tảng phổ biến nhất hiện nay là Windows, Macintosh OSX và Linux Do có tính chất nguồn mở nên môi trường lập trình này hoàn toàn miễn phí và có thể mở rộng thêm bởi người dùng có kinh nghiệm

Ngôn ngữ lập trình có thể được mở rộng thông qua các thư viện C++ Và do ngôn ngữ lập trình này dựa trên nền tảng ngôn ngữ C của AVR nên người dùng hoàn toàn có thể nhúng thêm code viết bằng AVR, C vào chương trình nếu muốn

Trang 20

Hình 2.4 Giao diện màn hinh arduino IDE

2 2 Lý thuyết các cảm biến đƣợc sử dụng trong đề tài

2.2.1 Cảm biến nhiệt độ LM35

Cảm biến nhiệt LM35 là một bộ cảm biến nhiệt mang tích hợp chính xác cao mà điện

áp của nó tỷ lệ với nhiệt độ thang Celsius.chúng không yêu cầu cân chỉnh ngoài vì chúng đã đƣợc cân chỉnh

Cảm biến LM35 có 3 chân:

+ Chân nguồnVCC

+Chân đầu ra Vout

+Chân nối đất GND

Trang 21

Hình 2.5 Cảm biến nhiệt độ

 Đặc điểm chính của LM35

- Điện áp đầu vào từ 4V đến 30V

- Điện áp ra: -1V đến 6V

- Công suất tiêu thụ là 60uA

- Độ phân giải điện áp đầu ra là 10mV/oC

- Độ chính xác cao ở 25 C là 0.5 C

- Trở kháng đầu ra thấp 0.1 cho 1mA tải

- Độ chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng -55°C tới 150°C

Trang 22

2.2.2 Cảm biến ánh sáng quang trở

Cảm Biến Ánh Sáng Quang Trở nhạy cảm nhất với cường độ ánh sáng môi trường thường được sử dụng để phát hiện độ sáng môi trường xung quanh và cường độ ánh sáng Khi cường độ ánh sáng môi trường xung quanh bên ngoài vượt quá một ngưỡng quy định, ngõ ra của module D0 là mức logic thấp

Hình 2.6 Cảm biến ánh sang quang trở

Đặc tính nổi bậc:

- Nhỏ gọn

- Độ chính xác cao

- Các thành phần phụ như điện trở, tụ điện cần thiết cho mạch đã được gắn đầy đủ

- Sử dụng điện áp chuẩn 5V tương thích với nền tảng Arduino

Xuất tín hiệu ra cả hai dạng là Digital (có biến trở chỉnh mức và led báo hiệu) và Analog

Trang 23

Module này có 6 chân : VCC, GND, RX, TX, STATE, EN Trong đó, VCC và GND

là 2 chân cấp nguồn, đất cho module RX, TX dùng để nhận gửi dữ liệu với Arduino Chân

Trang 24

STATE là chân trạng thái ( chân này ko cần kết nối) EN là chân để chọn 1 trong 2 chế độ hoạt động của con HC05, gồm chế độ AT Mode và Data Mode

2.2.4 Cảm biến dòng điện ACS712

Cảm biến dòng điện ACS712 là một IC cảm biến dòng tuyến tính dựa trên hiệu ứng Hall ACS xuất ra 1 tín hiệu analog, Vout biến đổi tuyến tính theo sự thay đổi của dòng điện đƣợc lấy mẫu thứ cấp DC (hoặc AC), trong phạm vi đã cho Tụ (Cf theo sơ đồ) đƣợc dùng với mục đích chống nhiễu và có giá trị tùy thuộc vào từng mục đích sử dụng

Hình 2.8 Cảm biến dòng điện ACS712 Đặc điểm kỹ thuật

 Thời gian tăng của đầu ra để đáp ứng với đầu vào là 5µs

 Điện trở dây dẫn trong là 1.2mΩ

 Nguồn vận hành đơn là 5V

 Độ nhạy đầu ra từ 63-190mV/A

 Điện áp ra cực kỳ ổn định

Trang 25

Bảng 2.2 Thông số kỹ thuật cảm biến dòng điện ACS712

Đường tín hiệu analog có độ nhiễu thấp

Độ nhạy đối với các loại module

 ACS 712-05B (5Ampe): 180 – 190 mV/A

 ACS 712-20A (20Ampe): 96 – 104 mV/A

 ACS 712-30A (30Ampe): 64 – 68 mV/A

2.2.5 Cảm biến hall

Cảm biến Hall là loại cảm biến để phát hiện từ tính của nam châm Hữu ích cho các ứng dụng phát hiện vật mà không tiếp xúc, cảm biến vị trí, vòng quay

Ví dụ như khi bạn đưa một cục nam châm lại gần cảm biến Hall thì cảm biến sẽ phát

ra một tìn hiệu và từ tín hiệu đó bạn có thể thực hiện một hành động mà mình đã đặt trước

Trang 26

Hình 2.8 Nguyên lý cảm biến Hall

Cảm biến Hall hoạt động dựa trên nguyên tắc hiệu ứng Hall Hiệu ứng Hall là một hiệu ứng vật lý được thực hiện khi áp dụng một từ trường vuông góc lên một thanh Hall đang có dòng điện chạy qua

Cảm biến Hall có rất nhiều ứng dụng trong thực tế như bạn có thể ứng dụng loại cảm biến này để đếm sản phẩm, lắp vào cánh cửa để phát hiện kẻ trộm mở cửa đột nhập vào nhà hay bạn có thể gắn cảm biến Hall vào khung xe sau đó gắn một nam châm vào bánh

xe để đo tốc độ di chuyển

Trang 27

Chương 3 THIẾT LẬP PHẦN CỨNG VÀ LẬP TRÌNH CÁC CẢM BIẾN VỚI

ARDUINO 3.1 Lập trình,lắp đặt cho mạch đo nhiệt độ với arduino

Cảm biến LM35 hoạt động bằng cách cho ra một giá trị điện thế nhất định tại chân Voul (chân giữa) ứng với mỗi mức nhiệt độ

Như vậy,băng cách đưa vào chân bên trái của cảm biến LM35 hiệu điện thế 5V,chân phải nối đất, đo hiệu điện thế ở chân giữa bằng các pin A0 trên arduino(giống như đọc giá trị biến trở),ta sẽ được nhiệt độ (0-1000) bằng công thức:

Trang 28

void loop() {

//đọc giá trị từ cảm biến LM35

int reading = analogRead(sensorPin);

//tính ra giá trị hiệu điện thế (đơn vị Volt) từ giá trị cảm biến

float voltage = reading * 5.0 1023.0;

// ở trên mình đã giới thiệu, cứ mỗi 10mV = 1 độ C

// Vì vậy nếu biến voltage là biến lưu hiệu điện thế (đơn vị Volt)

// thì ta chỉ việc nhân voltage cho 100 là ra được nhiệt độ!

float temp = voltage * 100.0;

Trang 29

3.2 Lập trình,lắp đặt cho mạch đo cường độ sáng với arduino

Khi moduel cảm biến rung được kích hoạt,khi đó sẽ có sự thay đổi điện áp đầu vào của Ic393.Ic này nhận biết có sự thay đổi nó sẽ đưa ra một tín hiệu thấp để báo hiệu sự rung động

Hình 3.3 Mạch đo cường độ sáng với arduino

*code lập trình

int OutPin = A0; // Lưu chân ra của cảm biến

void setup()

{

//Đối với một chân analog bạn không cần pinMode

Serial.begin(9600);//Mở cổng Serial ở mức 9600

int value = analogRead(OutPin); // Ta sẽ đọc giá trị hiệu điện thế của cảm biến

// Giá trị được số hóa thành 1 số nguyên có giá trị

// trong khoảng từ 0 đến 1023

Serial.println(value);//Xuất ra serial Monitor

delay(10);

Trang 30

Hinh 3.4 Kết quả Hiển thị đo cường độ sáng từ arduino 3.3 Lắp đặt mạch kết nối bluetooth HC05 với arduino

Moduel HC-05 sử dụng tập lệnh AT để thực hiện giao tiếp với các thiết bị khác.Ta thực hiện phương tiện giao tiếp với arduino thông qua 2 chân Tx Và Rx,chỉ đơn giản như thế Chỉ kết nối chân Tx với chân Rx và chân Rx với Tx của arudino là có thể giao tiếp được

giữa arduino và moduel bluetooth HC-05

Hình 3.5 Mạch kết nối bluetooth HC05 với arduino

Trang 31

Sau khi kết nối thành công với thiết bị bluetooth khác, thì đèn trên moduel bluetooth HC05 sẽ nhấp nháy chậm cho thấy kết nối Serial đã được thiết lập

3.4 Lắp đặc đo điện áp accu

Để đo được điện áp accu thì ta sử dụng cầu phân áp.Mục đích lấy được điện áp đầu vào kết nối với chân analog input của arduino với điện áp quy định DC 0-5V

Trong các khối nguồn thường dùng cầu phân áp 2 điệt trở nên viêc tính áp sẽ nhanh hơn :

Hình 3.6 Mạch kết nối đo điện áp accu với arduino

Trang 32

// Đọc tín hiệu analog từ chân A0:

int sensorValue = analogRead(A0);

// Chuyển đổi tín hiệu đọc được:

phân áp vào arduino

// Xuất ra ngoài màn hình:

Kết quả hiển thị :

Hình 3.7 Kết quả hiển thị điện áp accu

Vì đây là điện áp nạp cho accu, số liệu đo đƣợc lớn hơn điện áp định mức của accu

Trang 33

3.5 Lập trình,lắp đặt cho mạch hall với aruidno

Hình 3.8 Mạch kết đo tín hiệu xung của hall với arduino

Trên thực tế cảm biến hall có tới 5 chân, trong đó có 2 chân có thể xuất tín hiệu xung

để chúng ta tính toán chiều quay thuận và ngược của động cơ, và một chân xuât tín hiệu I/O dưới đây là động cơ xe điện đã được tích hợp sẵn cảm biến Hall

Hình 3.9 Đầu kết nối với cảm biến Hall

Trang 35

Kết quả đo tốc độ động cơ cân bằng khi động cơ hoạt động ở chế độ thông thường

Hình 3.9 Kết quả hiển thị số quay quay động cơ cân bằng (rpm)

3.6 Lập trình,lắp đặt cho mạch đo cường độ dòng điện với arduino

*Đo dòng điện DC

Khi đo DC phải mắc tải nối tiếp Ip+ và Ip- đúng chiều, dòng điện đi từ Ip+ đến Ip- để Vout ra mức điện thế 2.5 - 5V tương ứng dòng 0 - 5A, nếu mắc ngược Vout sẽ ra điện thế 2.5V đến 0V tương ứng với 0A đến -5A

Cấp nguồn 5v cho module khi chưa có dòng Ip (chưa có tải mắc nối tiếp với domino), thì Vout=2.5v Khi dòng Ip( dòng của tải) bằng 5A thì Vout=5v, Vout sẽ tuyến tính với dòng Ip , trong khoản 2.5V đến 5V tương ứng với dòng 0 đến 5A

Để kiểm tra dùng đồng hồ VOM thang đo DC đo Vout

Trang 36

với dòng điện AC , 0 đến 5V(thế xoay chiều xoay chiều) tương ứng với -5A đến 5A (dòng xoay chiều)

Để kiểm tra dùng đồng hồ VOM thang đo AC đo Vout

Hình 3.10 Lắp đặt cho mạch đo cường độ dòng điện với arduino

Code lập trình

const int analogIn = A2;

int mVperAmp = 100; // use 100 for 20A Module and 66 for 30A Module

int RawValue = analogRead(analogIn);

float Voltage = (RawValue / 1024.0) * 5000; // Gets you mV

float Amps = ((Voltage - ACSoffset) / mVperAmp);

Serial.print("Raw Value = " ); // shows pre-scaled value

Serial.print(RawValue);

Trang 37

Serial.print("\t mV = "); // shows the voltage measured

Serial.print(Voltage,3); // the '3' after voltage allows you to display 3 digits after decimal point

Serial.print("\t Amps = "); // shows the voltage measured

Serial.println(Amps,0); // the '3' after voltage allows you to display 3 digits after decimal point

delay(2500);

Hiển thị kết quả đo dòng:

Hinh 3.11 Kết quả Hiển thị đo cường độ dòng điện từ arduino

Trang 38

Chương 4 LẬP TRÌNH ANDROID MIT APP INVENTOR 2 4.1 Giới thiệu về Mit App Inventor

MIT App Inventor là một chương trình của trường MIT (Massachusetts Institute of Technology) cho phép bạn tạo ứng dụng Android chỉ với công việc kéo thả Do đó bạn không cần biết gì về kiến thức lập trình Phiên bản mới nhất hiện nay là MIT App Inventor 2

Hình 4.1 Sơ đồ nguyên truyền phiên bản mới nhất hiện nay là MIT App Inventor 2

Dựa trên ý tưởng “những gì bạn thấy là những gì bạn có” (WYSIWYG - What you see is what you get), App Inventor giúp dễ dàng tiếp cận và xây dựng ứng dụng Android Với giao diện trực quan, dễ hiểu, cho phép truy cập đến các chức năng của điện thoại kể cả GPS, đây là công cụ giúp cho bộ sưu tập ứng dụng của Android ngày càng dồi dào và phong phú

Ưu điểm:

+ Không cần biết nhiều về code

+ Chỉ có động tác kéo thả đơn giản

+ Trực quan, dễ hiểu

Trang 39

+ Hỗ trợ đủ các tập lệnh cảm biến (sensor), cơ sở dữ liệu (database), kết nối (bluetooth) – dành cho những bạn theo IoT, nghĩa là bạn có thể điều khiển như các thiết bị điện trong nhà chỉ với điện thoại Android

+ Hỗ trợ các kết nối mạng xã hội, google maps…

Nhược điểm:

+ Nặng, chạy chậm nếu như có quá nhiều code do chương trình phát sinh thêm nhiều code thừa không cần thiết trong quá trình build sang file cài APK

+ Không tối ưu hoá code được

+ Mỗi screen (Activity) hoạt động độc lập với nhau, chỉ có thể truyền 1 biến duy nhất sang screen kế tiếp Nghĩa là không có biến toàn cục cho toàn bộ screen

4.2 Giới thiệu lập trình khối

Để sử dụng được App inventor, ta phải truy cập vào địa chỉ ai2.appinventor.mit.edu

sau đó tiến hành đăng nhập tài khoản Google của bạn để mở rộng trang quản lý

Hình 4.2 Giao diện quản lý Project

Trang 40

Để tạo một Project mới ta chọn Start New Project và đặt tên cho project đó

Hình 4.3 Giao diện Start New Project Giao diện thiết kế Project hiện ra rất đơn giản Bên trái là các control bao

gồm: User Interface, Media, Sensor, Social,… để sử dụng các bạn chỉ cần click chuột và

kéo thả vào Screen Ở giữa là Screen mô phỏng màn hình ứng dụng của chúng ta, bên phải

là cửa sổ quản lí các Component, Media, và Property cho từng Control.Trong App Inventor có hai chế độ làm việc: designer và block

4.2.1 Chế Độ Designer: chế độ dành cho thiết kế, tạo giao diện bên ngoài

Hình 4.4 Giao diện các thành phần chính của chế độ designer

Ngày đăng: 28/12/2022, 14:51

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

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

w