1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề tài thiết kế xe điều khiển bằng bluetooth và giọng nói trên điện thoại sử dụng arduino và hệ điều hành freertos

48 33 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 đề Đề tài thiết kế xe điều khiển bằng Bluetooth và Giọng nói trên Điện thoại sử dụng Arduino và hệ điều hành FreeRTOS
Tác giả Vương Thị Dung, Vũ Thị Giang, Nguyễn Tuấn Thành, Phạm Hải Toàn
Người hướng dẫn ThS. Lê Thị Hồng Vân
Trường học Học Viện Kỹ Thuật Mật Mã
Chuyên ngành Kỹ thuật Điện - Điện Tử
Thể loại Báo cáo môn học
Năm xuất bản 2022
Thành phố Hà Nội
Định dạng
Số trang 48
Dung lượng 8,16 MB

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

Nội dung

LỜI MỞ ĐẦUNgày nay, trong thời đại khoa học công nghệ đang phát triển mạnh mẽ, việcứng dụng các thiết bị điện tử vào đời sống càng trở nên phổ biến hơn, từnhững ứng dụng cá nhân như đồng

Trang 1

HỌC VIỆN KỸ THUẬT MẬT MÃ

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO MÔN HỌC

GV hướng dẫn: ThS Lê Thị Hồng Vân

Trang 2

MỤC LỤC

LỜI MỞ ĐẦU 3

CHƯƠNG I TỔNG QUAN ĐỀ TÀI 4

1.1 Đặt vấn đề 4

1.2 Tình hình nghiên cứu hiện nay 4

1.2.1 Tình hình nghiên cứu quốc tế 4

1.2.2 Tình hình nghiên cứu tại Việt Nam 5

1.3 Ứng dụng của hệ điều hành nhúng thời gian thực 6

1.3.1 Hệ điều hành nhúng thời gian thực (RTOS) 6

1.3.2 Hệ điều hành FreeRTOS 7

1.3 Xây dựng bài toán 8

1.3.1 Yêu cầu chung 8

1.3.2 Chức năng của hệ thống 8

1.3.3 Phương án thực hiện 8

CHƯƠNG II PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 9

2.1 Thiết kế phần cứng 9

2.1.1 Arduino UNO R3 9

2.1.2 Module động cơ DC L298N 12

2.1.3 Module bluetooth HC-05 15

2.2 Thiết kế phần mềm 16

2.2.1 Biểu đồ use case tổng quát 16

2.2.2 Biểu đồ use case chi tiết 16

2.2.3 Đặc tả use case 17

2.2.4 Phân tích use case 18

2.2.5 Sơ đồ khối 19

2.2.6 Lưu đồ thuật toán 20

2.2.7 Sơ đồ nguyên lý 22

2.2.8 Sơ đồ lắp đặt 22

2.3 Thiết kế phần mềm điều khiển 23

Trang 3

2.3.1 Giới thiệu về MIT App Inventor 23

2.3.2 Lưu đồ thuật toán 24

2.4 Ứng dụng hệ điều hành FreeRTOS 24

2.4.1 Tác vụ 24

2.4.2 Bộ định thời (Timer) 25

2.4.3 Sơ đồ Gantt 25

CHƯƠNG III XÂY DỰNG HỆ THỐNG 28

3.1 App điều khiển 28

3.2 Khối nguồn 29

3.3 Khối xử lý 29

3.4 Khối Driver động cơ 30

3.5 Mô hình hoàn chỉnh 30

PHỤ LỤC 31

KẾT LUẬN 41

TÀI LIỆU THAM KHẢO 42

Trang 4

DANH MỤC HÌ

Hình 2.1.1 Arduino UNO R3 9

YHình 2.1.2a Module động cơ L298N 12

Hình 2.1.2b Nguyên lý hoạt động L298N 14

YHình 2.1.3 Module Bluetooth HC-05 15Y Hình 2.2.1 Biểu đồ use case tổng quát 16

Hình 2.2.2 Biểu đồ use case chi tiết “Di chuyển” 16

Hình 2.2.4 Phân tích use case 18

Hình 2.2.5 Sơ đồ khối 19

Hình 2.2.6a Lưu đồ thuật toán điều khiển bằng nút bấm 20

Hình 2.2.6b Lưu đồ thuật toán điều khiển bằng giọng nói 21

Hình 2.2.7 Sơ đồ nguyên lý trên Proteus 22

Hình 2.2.8 S đồồ lắắp đ t Fritzing ơ ặ 2 Hình 2.3.1 Giao diện App MIT Inventor 23

Hình 2.3.2 Lưu đồ thuật toán phần mềm điều khiển 24

Hình 2.4.3a Sơ đồ Gantt CheckTask không tìm thấy tín hiệu 26

Hình 2.4.3b S đồồ Gant CheckTask tm thấắy tn hi u ơ ệ 2 Hình 3.1 App điều khiển 27

Hình 3.2 Khối nguồn 28

Hình 3.3 Khối xử lý 29

Hình 3.4 Khối Driver động cơ 29

Hình 3.5 Mô hình khi hoàn thiện 30

Trang 5

DANH MỤC BẢ

Bảng 2.1.1 Thông số kỹ thuật của Arduino UNO R3 11Bảng 2.1.2 Thông số kỹ thuật của module động cơ L298N 13 YBảng 2.2.3a Đặc tả use case “Kết nối Bluetooth” 17Bảng 2.2.3b Đặc tả use case “Điều khiển xe” 18

Trang 6

LỜI MỞ ĐẦU

Ngày nay, trong thời đại khoa học công nghệ đang phát triển mạnh mẽ, việcứng dụng các thiết bị điện tử vào đời sống càng trở nên phổ biến hơn, từnhững ứng dụng cá nhân như đồng hồ kỹ thuật số, máy chơi nhạc MP3,… đếnnhững ứng dụng xã hội như đèn giao thông, bộ kiểm soát trong nhà máy,….Trong đó, phải kể đến robot điều khiển từ xa

Robot điều khiển từ xa là một mảng quan trọng trong lĩnh vực robotic với rấtnhiều các công trình nghiên cứu trên thế giới Việc điều khiển từ xa thâmnhập vào tất cả lĩnh vực của cuộc sống và góp phần to lớn trong việc điềukhiển các thiết bị từ xa hay những thiết bị mà con người không thể trực tiếpchạm vào để điều khiển

Chính vì tầm quan trọng của lĩnh vực điều khiển từ xa, nhóm chúng em đã lựa

chọn đề tài: “Thiết kế xe điều khiển bằng Bluetooth và giọng nói trên điện thoại sử dụng Arduino và hệ điều hành FreeRTOS”.

Báo cáo gồm 3 chương:

Chương I Tổng quan đề tài.

Chương này nêu vấn đề, đưa ra khảo sát về tình hình nghiên cứu tạiViệt Nam và quốc tế, sau đó đưa ra yêu cầu với hệ thống mới

Chương II Phân tích và thiết kế hệ thống.

Chương này thực hiện thiết kế phần cứng, phần mềm cũng như phầnmềm điều khiển cho hệ thống

Chương III Xây dựng hệ thống.

Chương này xây dựng mô hình hệ thống

Chúng em xin gửi lời cảm ơn đến cô Lê Thị Hồng Vân đã nhiệt tình giúp đỡchúng em trong suốt thời gian môn học cũng như trong quá trình thực hiện đềtài Trong quá trình thực hiện báo cáo của mình, chúng em đã cố gắng hết sức

để hoàn thiện một cách tốt nhất Nhưng với kiến thức và sự hiểu biết có hạnnên sẽ không thể tránh khỏi những thiết sót, rất mong nhận được lời góp ý từthầy để đề tài của chúng em hoàn thiện hơn

Trang 7

CHƯƠNG I TỔNG QUAN ĐỀ TÀI 1.1 Đặt vấn đề

Trong thời đại công nghiệp hóa hiện đại hóa đất nước, việc chú trọng pháttriển các ngành công nghiệp cũng như các ngành dịch vụ rất được coi trọng.Như một nhu cầu thiết yếu, việc phát triển các hệ thống nhúng để đưa vào hỗtrợ trong công nghiệp, dịch vụ, giúp điều khiển các thiết bị từ xa mà khôngcần trực tiếp chạm vào để điều khiển là vô cùng cần thiết

Điều khiển từ xa là điều khiển mô hình ở một khoảng cách nào đó mà conngười không nhất thiết phải trực tiếp đến nơi để điều khiển hệ thống Khoảngcách này tùy thuộc vào độ phức tạp của từng hệ thống Chẳng hạn như để điềukhiển từ xa một du thuyền, ta cần có hệ thống phát và thu mạnh Ngược lại,

để điều khiển một trò chơi điện tử từ xa ta lại chỉ cần một hệ thống phát vàthu yếu hơn

Cùng với đó, điện thoại thông minh đang ngày càng phổ biến Nhu cầu điềukhiển từ xa bằng điện thoại ngày càng tăng cao Chính vì vậy, chúng em đã

lựa chọn đề tài “Thiết kế xe điều khiển bằng Bluetooth và giọng nói trên điện thoại”, với hệ điều hành sử dụng là FreeRTOS Theo đó, dự án gồm các

phần sau:

 Thực hiện nghiên cứu các cách giao tiếp, kết nối giữa vi điều khiểnArduino Uno R3 với module Bluetooth và module L298N

 Thiết kế điều khiển xe bằng giọng nói thông qua module Bluetooth

 Xây dựng chương trình điều khiển trên điện thoại Android

 Xây dựng chương trình lập trình với hệ điều hành FreeRTOS

1.2 Tình hình nghiên cứu hiện nay

1.2.1 Tình hình nghiên cứu quốc tế

Trên thế giới, điều khiển từ xa được sử dụng rộng rãi trong ngành điện tử giadụng và giải trí Phần lớn các thiết bị điện tử như TV, đầu đĩa, máy điều hòa,quạt đều có điều khiển từ xa đi kèm Gần đây, các tay cầm chơi điện tử cũngđược ứng dụng công nghệ không dây Chúng dùng sóng vô tuyến thay vì hồngngoại, vì việc luôn phải chĩa chúng vào thiết bị chính trong khi chơi là điềurất không thực tế Ngoài việc phải thay pin thường xuyên và đôi khi gây rahiện tượng trễ tín hiệu, tay cầm không dây đem lại một số ưu điểm và sự tiệndụng khác Sản phẩm của Sony PlayStation 3 Nintendo, Wii dùng sóngBluetooth, trong khi MicrosoftXbox 360 và Xbox One dùng giao thức truyền

Trang 8

Điều khiển từ xa nhà để xe và cổng rất phổ biến, đặc biệt là ở một số quốc gianhư Mỹ, Úc và Anh, nơi cửa nhà để xe, cổng và rào chắn được sử dụng rộngrãi Một điều khiển từ xa như vậy rất đơn giản bởi thiết kế, thường chỉ có mộtnút và một số có nhiều nút hơn để điều khiển một số cổng từ một điều khiển.Điều khiển từ xa như vậy có thể được chia thành hai loại theo loại bộ mã hóađược sử dụng: mã cố định và mã cuộn Nếu bạn tìm thấy công tắc nhúngtrong điều khiển từ xa, nó có khả năng là mã cố định, một công nghệ cũ hơnđược sử dụng rộng rãi Tuy nhiên, mã cố định đã bị chỉ trích vì bảo mật(thiếu), do đó mã cuộn ngày càng được sử dụng rộng rãi hơn trong các cài đặtsau này.

Trong quân sự đây cũng là một thiết bị rất quan trọng thường dùng để vô hiệuhóa hệ thống điện tử của đối phương Điều khiển từ xa còn được dùng để điềukhiển các phương tiện quân sự (máy bay, xe tăng, tàu ngầm, … ) không ngườilái hoặc các thiết bị nổ

Ngoài ra trong công nghệ điều khiển từ xa còn được ứng dụng cho không gian

vũ trụ Các nước công nghệ tiên tiến như Mỹ, Liên Xô, Trung Quốc dùng nócho mục đích điều khiển các tàu vũ trụ từ xa

1.2.2 Tình hình nghiên cứu tại Việt Nam

Chiều 4/12, tại Sở Khoa học và Công nghệ Hải Phòng diễn ra hội nghị đánhgiá kết quả thực hiện nhiệm vụ khoa học và công nghệ không sử dụng ngânsách Nhà nước “Nghiên cứu ứng dụng thiết bị vận hành cống điều khiển từ xa

sử dụng năng lượng mặt trời cho cống Bãi Vẹt (1 cửa) và cống Đông Cung (2cửa)” do thạc sĩ Phạm Thị Ngoan, Trưởng phòng Kế hoạch - Kỹ thuật, Công

ty TNHH MTV Khai thác công trình thủy lợi Đa Độ làm chủ nhiệm

Hiện công ty TNHH MTV Khai thác công trình thủy lợi Đa Độ quản lý 212cống điều tiết nước trên toàn hệ thống phục vụ tưới - tiêu nước cho trên32.000ha đất sản xuất nông nghiệp, phòng chống lụt bão cho lưu vực, ngănxâm nhập mặn, cấp nước phục vụ sinh hoạt - sản xuất công nghiệp và cấpnước phục vụ chăn nuôi, nuôi trồng thủy, hải sản… Trong đó, 140/140 cốngdưới bờ Đa Độ được vận hành thủ công, chỉ có 20/72 cống dưới đê vận hàngbằng điện lưới Tuy nhiên, việc vận hành cống thủ công tốn nhiều công sức,không đảm bảo trữ lượng và chất lượng nước trong hệ thống cũng như khôngđảm bảo thời gian tiêu thoát nước phòng chống thiên tai, bão lũ

Kết quả ứng dụng thiết bị thể hiện các ưu điểm: Sử dụng 100% năng lượng táitạo; vận hành tự động hóa bằng hệ thống điều khiển từ xa, cập nhật số liệu24/7; dễ dàng chuyển đổi vận hành thủ công; chủ động, phù hợp với các điềukiện thời tiết không thuận lợi, không phụ thuộc vào nguồn điện lưới, an toàn

Trang 9

điện và phòng chống cháy nổ; giải phóng sức lao động của công nhân, nângcao hiệu quả, năng suất lao động; giám sát vận hành theo thời gian thực; giảmchi phí quản lý, vận hành từ 10- 20%; không tốn diện tích mặt đất.

1.3 Ứng dụng của hệ điều hành nhúng thời gian thực

1.3.1 Hệ điều hành nhúng thời gian thực (RTOS)

Thuật ngữ về hệ điều hành của những thiết bị đơn giản trước đây là "hệ điềuhành nhúng - embedded operating system" sẽ được thay thế bởi "hệ điều hànhthời gian thực - real-time operating system" (RTOS) vốn được dành cho thiết

bị thuộc kỷ nguyên IoT Tuy nhiên, trên thực tế, một hệ điều hành dành choIoT sẽ khó sử dụng cho nhiều mục đích hoặc ứng dụng hàng hoạt trên mọi sảnphẩm, bởi vậy cần có nhiều hệ điều hành khác nhau trong lĩnh vực IoT để đápứng nhu cầu thực tế

Real-Time Operating Systems (RTOS - Hê ž điều hành thời gian thực), là phầnmềm điều khiển chuyên dụng thường được dùng trong những ứng dụng điê žntoán nhúng có tài nguyên bô ž nhớ hạn chế và yêu cầu ngă žt nghèo về thời gianđáp ứng tức thời, tính sŸn sàng cao và khả năng tự kiểm soát mô žt cách chínhxác

Trên thực tế, RTOS dành cho thiết bị IoT đòi hỏi khả năng xử lý dữ liệu có độtrễ thấp nhất có thể Những lợi ích mà RTOS mang lại bao gồm khả năng đanhiệm, ưu tiên các nhiệm vụ và quản lý việc chia sẻ tài nguyên giữa các tác

Sau đây là tổng quát về những hệ điều hành có thể đáp ứng yêu cầu và mangđến sức mạnh mới nhằm thúc đẩy ngành công nghiệp IoT: RIOT OS;VxWorks; Google Brillo; Hệ điều hành nhúng của Apple; Nucleus RTOS.Ngoài danh sách này có thể có thêm rất nhiều lựa chọn khác, nhưng những cáitên ở đây có thể đại diện cho ngành IoT bởi khả năng phổ biến ứng dụngthương mại cũng như sự phát triển của chúng trong giới mã nguồn mở Và

Trang 10

vận hành, từ vệ tinh cho đến tủ lạnh, và giúp những thiết bị thông minh kếtnối với con người.

1.3.2 Hệ điều hành FreeRTOS

FreeRTOS là hệ điều hành nguồn mở thời gian thực dành cho các bộ vi điềukhiển, cho phép dễ dàng lập trình, triển khai, bảo mật, kết nối và quản lý cácthiết bị ngoại biên nhỏ, công suất thấp Được phân phối miễn phí theo giấyphép nguồn mở MIT, FreeRTOS bao gồm một nhân và một bộ thư viện phầnmềm đang phát triển phù hợp để sử dụng trong nhiều lĩnh vực và ứng dụngcông nghiệp Việc sử dụng bao gồm cả kết nối bảo mật thiết bị nhỏ, công suấtthấp của bạn với các dịch vụ Đám mây AWS như AWS IoT Core hoặc với cácthiết bị biên mạnh mẽ hơn chạy AWS IoT Greengrass FreeRTOS được xâydựng chú trọng vào độ tin cậy và khả năng sử dụng dễ dàng, đồng thời camkết các bản phát hành hỗ trợ lâu dài

Bộ vi điều khiển chứa một bộ xử lý đơn giản, hạn chế về tài nguyên, có trongnhiều thiết bị, bao gồm đồ gia dụng, cảm biến, thiết bị theo dõi sức khỏe, thiết

bị tự động hóa công nghiệp và ô tô Khá nhiều trong số các thiết bị nhỏ này cóthể được lợi từ việc kết nối với đám mây hoặc kết nối cục bộ với thiết bị khác,nhưng có công suất điện toán và dung lượng bộ nhớ hạn chế, cũng nhưthường thực hiện các tác vụ chức năng đơn giản Bộ vi điều khiển thườngchạy các hệ điều hành có thể không được tích hợp sŸn tính năng kết nối vớicác mạng cục bộ hoặc đám mây, nên thường gặp khó khăn khi triển khai ứngdụng IoT FreeRTOS giúp giải quyết vấn đề này bằng cách cung cấp nhân đểchạy thiết bị công suất thấp và các thư viện phần mềm cho phép dễ dàng kếtnối bảo mật với đám mây hoặc các thiết bị biên khác để bạn thu thập dữ liệu

từ các cấu phần này cho các ứng dụng IoT và thực hiện hành động

FreeRTOS cung cấp mọi thứ bạn cần để dễ dàng lập trình các thiết bị chạy bộ

vi điều khiển đã kết nối và thu thập dữ liệu từ những thiết bị này cho các ứngdụng IoT Để bắt đầu, bạn có thể chọn một bộ vi điều khiển đáp ứng điều kiệncủa FreeRTOS từ AWS Partner Device Catalog Sau đó, bạn có thể sử dụngBảng điều khiển AWS hoặc GitHub để chọn và tải xuống các thư việnFreeRTOS phù hợp hoặc tích hợp tham chiếu IoT được xác thực trước Bạn có thể kết nối bảo mật thiết bị FreeRTOS với các dịch vụ đám mây nhưAWS IoT Core, với một thiết bị ngoại biên cục bộ hoặc thiết bị di động bằngcông nghệ Bluetooth tiết kiệm năng lượng và cập nhật thiết bị từ xa bằng tính

Trang 11

năng cập nhật OTA với AWS IoT Device Management Việc tích hợp vớiAWS IoT Device Defender giúp bạn dễ dàng báo cáo các số liệu về thiết bị đểphát hiện sự bất thường khi các số liệu này khác đi so với kỳ vọng.

1.3 Xây dựng bài toán

1.3.1 Yêu cầu chung

 Tính thực thi cao, có khả năng phát triển

 Đảm bảo về chất lượng, độ chính xác cao, làm việc lâu dài, bền bỉ

 Tiết kiệm chi phí, linh kiện dễ kiếm dễ sử dụng và dễ dàng thay thếkhi xảy ra sự cố

 Giảm thiểu chi phí, thời gian vận hành, bảo dưỡng và sửa chữa

1.3.2 Chức năng của hệ thống

 Xe có khả năng nhận tín hiệu Bluetooth từ phần mềm

 Xe có khả năng di chuyển tiến, lùi, rẽ trái, rẽ phải, dừng theo tín hiệutương ứng

1.3.3 Phương án thực hiện

 Tìm hiểu về các mảng lý thuyết liên quan

 Viết và thực hiện các chương trình nhỏ, các bài ví dụ trên vi điềukhiển Arduino Uno R3 để làm quen với kiến trúc tập lệnh của vi điềukhiển

 Viết các chương trình thực hiện các chức năng bằng Kit Arduino

 Viết các chương trình với hệ điều hành FreeRTOS

 Viết ứng dụng chạy trên hệ điều hành android thực hiện điều khiển.Ứng dụng sẽ được viết trên MIT App Inventor - một môi trường tíchhợp ứng dụng web được cung cấp bởi Google

Trang 12

CHƯƠNG II PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 2.1 Thiết kế phần cứng

2.1.1 Arduino UNO R3

Hình 2.1.1 Arduino UNO R3

Arduino UNO R3 là một bảng mạch vi điều khiển nguồn dựa trên vi điềukhiển Microchip ATmega328 được phát triển bởi Arduino.cc Bảng mạchArduino được trang bị các bộ phận chân đầu vào, đầu ra Digital và Analog cóthể giao tiếp với các bảng mạch mở rộng khác nhau Do đó, ta có thể sử dụngchúng để dễ dàng xây dựng một dự án nhanh nhất và có tính ứng dụng thực tếcao

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 điện 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 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 sau:

 2 chân Serial: 0 (RX), 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ớicác thiết bị khác thông qua 2 chân này Kết nối bluetooth thường thấynói nôm na chính là kết nối Serial không dây Nếu không cần giao tiếpSerial, bạn không nên sử dụng 2 chân này nếu không cần thiết

Trang 13

 Chân PWM (~): 3, 5, 6, 9, 10, 11: cho phép xuất ra xung PWM với độphân giải 8 bit ( giá trị từ 0 → 2^8 - 1 tương ứng với 0V→ 5V) bằnghàm analogWrite() Nói một cách đơn giản, bạn có thể điều chỉnh đượcđiện áp ra ở châ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àicá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) Khibấm nút Reset, đèn này sẽ nhấp nháy để báo hiệu Nó được nối vớichân số 13 Khi chân này được người dùng sử dụng, LED sẽ sáng.Ngoài các chân Digital, Arduino Uno còn có 6 chân Analog (A0 → A5) cungcấp độ phân giải tín hiệu 10 bit (0 →2^10-1) để đọc giá trị điện áp trongkhoảng từ 0V → 5V Với chân AREF trên board, ta có thể đưa vào điện áptham chiếu khi sử dụng các chân Analog Tức là nếu cấp điện áp 2.5V vàochân này thì 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à 10 bit Đặc biệt, Arduino Uno có 2 chân A4(SDA), A5 (SCL) hỗ trợ giao tiếp 12C/TWI với các thiết bị khác

Trang 14

Thông số kỹ thuật

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 16MHz

Điện áp ổn định 7 – 12V (DC)

Điện áp 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 10 bit)

Bộ nhớ Flash 32 KB (ATMega328) với 0.5KB dùng

Trang 15

2.1.2 Module động cơ DC L298N

Hình 2.1.2a Module động cơ L298N

L298N là module điều khiển động cơ trong các xe DC và động cơ bước Module có một IC điều khiển động cơ L298 và một bộ điều chỉnh điện áp 5V 78M05 Module L298N có thể điều khiển tối đa 4 động cơ DC hoặc 2 động

cơ DC với khả năng điều khiển hướng và tốc độ

DC L298N gồm các chân:

 12V power, 5V power: đây là 2 chân cấp nguồn trực tiếp đến động

cơ Ta có thể cấp nguồn từ 9V → 12V ở 12V Chân 5V cấp nguồn cho mạch logic bên trong L298N

 Power GND: chân nối đất

 ENA : kích hoạt tín hiệu PWM cho động cơ A

 ENB: kích hoạt tín hiệu PWM cho động cơ B

 IN1 & IN2: các chân đầu vào điều khiển hướng động cơ A

 IN3 & IN4: các chân đầu vào điều khiển hướng động cơ B

 OUT1 & OUT2: chân đầu ra cho động cơ A

 OUT3 & OUT4: chân đầu ra cho động cơ B

Trang 16

Thông số kỹ thuật

Điện áp của tín hiệu điều khiển +5V → +7VDòng của tín hiệu điều khiển 0 ~ 36 Ma

Bảng 2.1.2 Thông số kỹ thuật của module động cơ L298N

Trang 17

 OUT1 và OUT2 là 2 chân đầu ra động cơ OUT1 > OUT2 thì động

cơ chạy thuận, ngược lại động cơ sẽ chạy nghịch

 Động cơ chỉ hoạt động khi IN1 và IN2 trái mức logic và ENA ở mứclogic cao

Trang 18

HC-05 có thể hoạt động ở 2 chế độ đó là MASTER và SLAVE

 Ở chế độ MASTER: module sẽ tự động dò tìm thiết bị bluetooth khác và tiến hành pair chủ động mà không cần thiết lập gì từ máy tính hoặc smartphone

 Ở chế độ SLAVE: chúng ta cần thiết lập kết nối từ smartphone, laptop, usb bluetooth để dò tìm module sau đó sẽ pair với mã PIN là

1234 Sau khi pair thành công, ta sẽ có 1 cổng serial hoạt động ở baud rate 9600

Chức năng các chân của HC-05:

 Chân STATE: báo trạng thái kết nối của bluetooth

 Chân TxD & RxD: truyền & nhận dữ liệu trong giao tiếp UART

 Chân GND: chân nối đất

 Chân VCC: cấp nguồn điện từ bên ngoài

Trang 19

 Chân EN: thay đổi chế độ giữa chế độ dữ liệu và chế độ dòng lệnh bằng cách cấp tín hiệu ngoài Cấp logic cao sẽ chuyển sang chế độ dòng lệnh và trạng thái logic thấp sẽ chuyển sang chế độ dữ liệu Chế độ mặc định của thiết bị là chế độ dữ liệu

Trang 20

2.2 Thiết kế phần mềm

2.2.1 Biểu đồ use case tổng quát

Hình 2.2.1 Biểu đồ use case tổng quát

2.2.2 Biểu đồ use case chi tiết

Hình 2.2.2 Biểu đồ use case chi tiết “Di chuyển”

Trang 21

Trường hợp khác 2.2 Nếu không có kết nối Bluetooth thì xe sẽ ở chế

Trang 22

Tên use case Điều khiển xe

Tác nhân Người dùng

Tiền điều kiện Xe đã được khởi động và kết nối thiết bị điều khiển thông qua Bluetooth

Cách xử lý

1 Người điều khiển xe thông qua app Control Car

2 Module HC-05 nhận tín hiệu điều khiển và chuyển tín hiệu điều khiển cho arduino

3 Arduino gửi tín hiệu đến L298N điều khiển xe

di chuyển

Trường hợp khác

Đang điều khiển thì bị mất kết nối Bluetooth:

1 Xe ngừng hoạt động, quay lại chế độ khởi động

Bảng 2.2.3b Đặc tả use case “Điều khiển xe”

2.2.4 Phân tích use case

Hình 2.2.4 Phân tích use case

Trang 23

2.2.5 Sơ đồ khối

Hình 2.2.5 Sơ đồ khối

Chức năng các khối:

 Khối nguồn: cung cấp nguồn cho động cơ và các module

 Module Bluetooth: nhận tín hiệu điều khiển và chuyển cho bộ xử lý

 Bộ xử lý: nhận thông tin từ module bluetooth tiến hành xử lý và gửithông tin điều khiển cho Driver động cơ

 Driver động cơ: nhận tín hiệu điều khiển từ bộ xử lý và phân nhiệm vụcho động cơ

 Động cơ: nhận tín hiệu từ Driver động cơ và hoạt động giúp xe chuyểnđộng

Nguyên lý hoạt động: Ban đầu module bluetooth sẽ nhận tín hiệu từ app điềukhiển sau đó giao tiếp với khối xử lý điều khiển bằng phương thức UART vàtruyền tín hiệu cho khối xử lý Khối xử lý sử dụng bo mạch Arduino Uno R3

sẽ xử lý và xuất xung tín hiệu PWM cho module driver động cơ L298N đểđiều khiển motor trái và motor phải

Trang 24

2.2.6 Lưu đồ thuật toán

Hình 2.2.6a Lưu đồ thuật toán điều khiển bằng nút bấm

Ngày đăng: 30/05/2023, 20:32

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[2]. Brian Amos, Hands-On RTOS with Microcontrollers Sách, tạp chí
Tiêu đề: Hands-On RTOS with Microcontrollers
Tác giả: Brian Amos
[7]. Steve Health, Embedded Systems Design Sách, tạp chí
Tiêu đề: Embedded Systems Design
Tác giả: Steve Health
[8]. The FreeRTOS Reference Manual Sách, tạp chí
Tiêu đề: The FreeRTOS Reference Manual
[1]. ThS. Lê Thị Hồng Vân, Slide bài giảng học phần Hệ điều hành nhúng thời gian thực Khác
[3]. Xiaocong Fan, Real-Time Embedded Systems Khác
[4]. Jim Cooling, Real-Time Operating Systems – Book 1+2 Khác
[5]. Jonathan Valvano, Real-Time Operatomg Systems for ARM Cortex-M Microcontrollers Khác
[6]. Richard Barry, Mastering the FreeRTOS Real Time Kernel – A Hands-On Tutorial Guide Khác

TỪ KHÓA LIÊN QUAN

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