Đã từ lâu con người luôn mơ ước chế tạo được những máy móc thông minh, có một số chức năng thay thế con người, như khả năng nhìn và nhận dạng được các vật thể, nghe và thực hiện theo lời nói của con người. Nhưng cho mãi đến những năm gần đây, khi có những lý thuyết mới về xử lý thông tin và công nghệ phát triển, thì mơ ước đó mới dần trở thành hiện thực. Tuy thế, cho đến nay, giao tiếp giữa người với máy đã được cải thiện rất nhiều nhưng vẫn còn mức độ như thông qua bàn phím hay các thiết bị xuất nhập khác. Giao tiếp giữa người với máy bằng giọng nói sẽ là phương thức giao tiếp hiện đại và có ý nghĩa quan trọng trong cuộc sống như xe lăn cho nguời tàn tật được điều khiển bằng giọng nói, hay con người sẽ không dùng bàn phím hoặc chuột để giao tiếp với máy tính, mà thay vào đó sẽ điều khiển máy tính theo mệnh lệnh bằng ngôn ngữ. Trên thế giới đã có nhiều hệ thống nhận dạng giọng nói (tiếng Anh) đã và đang được ứng dụng rất hiệu quả như: ViaVoice, Dragon Naturally Speaking, Spoken Toolket…nhưng do sự khác biệt về ngôn ngữ nên chúng ta không thể áp dụng chương trình trên để nhận dạng tiếng Việt. Do đó, một hệ thống nhận dạng giọng nói tiếng Việt cần phải được xây dựng. Đề tài này xin trình bày quá trình nghiên cứu thiết kế, chế tạo robot được điều khiển từ xa bằng giọng nói (tiếng Việt) với một bộ từ vựng nhỏ, thiết lập hệ thống điều khiển robot từ xa theo tập lệnh cố định.
Trang 1KHOA CN ĐIỆN – ĐIỆN TỬ
TP.HCM…Tháng 12 Năm 2020
Trang 2Nhận xét của giáo viên
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Ngày……Tháng……Năm 2020
Trang 4MỤC LỤC
LỜI NÓI ĐẦU vii
CHƯƠNG I: TỔNG QUAN VỀ ROBOT BLUETOOTH ĐIỀU KHIỂN BẰNG GIỌNG NÓI VÀ TAY 1
1.1 Đặt vấn đề 1
1.2 Nghiên cứu 1
1.3 Đối tượng nghiên cứu 2
1.4 Khái quát về Robot điều khiển bằng giọng nói kết hợp tay 2
1.5 Tìm hiểu sâu về đối tượng nghiên cứu 2
1.5.1 Robot điều khiển từ xa bằng tay và Robot điều khiển bằng giọng nói 2
1.5.2 Các loại robot điều khiển hiện nay: 3
CHƯƠNG II: CƠ SỞ NGUYÊN LÝ 8
2.1 Giới thiệu chung về Arduino: 8
2.1.1 Board mạch Arduino Uno: 8
2.1.2 Một vài thông số của Arduino uno: 11
2.1.3 Năng lượng cấp cho Arduino: 12
2.1.4 Các chân năng lượng 12
2.2 Module Bluetooth HC-05: 12
2.2.1 Giới thiệu chung 12
2.2.2 Module Bluetooth gồm những loại nào? 14
2.2.3 Sơ đồ chân của HC-05 15
2.2.4 Chế độ hoạt động 16
2.2.5 Giao tiếp với module bluetooth HC-05 17
2.3 Module điểu khiển động cơ L298 19
2.3.1 Thông số kỹ thuật: 19
Trang 52.4.3 Cách sử dụng LM2596 21
2.5 Giới thiệu chung về App inventor 22
2.5.1 App inventor là gi? 22
2.5.2 Xây dựng ứng dụng điều khiển xe bằng giọng nói và tay qua bluetooth 22
CHƯƠNG III: CƠ SỞ THỰC HIỆN 28
3.1 Kết nối linh kiện 28
3.1.1 Kết nối Arduino với L298 28
3.1.2 Kết nối bluetooth HC-05 với Arduino 29
3.1.3 Sơ đồ đấu dây 30
3.1.4 Sơ đồ khối 31
3.1.5 sơ đồ thuật toán và sơ đồ mạch 32
3.2 Nguyên Lý hoạt động của Robot 34
CHƯƠNG IV: TỔNG KẾT 35
4.1 Mô hình thực tế 35
4.2 Giao diện trên điện thoại 37
4.3 Thiết kế code 38
4.4 Kết luận đồ án 41
4.4.1 Ưu nhược điểm 41
4.4.2 Hướng phát triển đề tài 41
Tài liệu tham khảo: 42
Trang 6PHỤC LỤC
Hình 1.1: robot ASIMO 3
Hình 1.2: robot Kismet 4
Hình 1.3: robot Grace 5
Hình 1.4: robot Qrio 6
Hình 1.5: robot Xiaomi 7
Hình 2.1: boar mạch Arduino uno 10
Bảng 2.1: Thông số Arduino 11
Hình 2.2: Bluetooth HC-05 13
Hình 2.3: Bluetooth HC-05 và Bluetooth HC-06 14
Hình 2.4: Sơ đồ chân HC-05 15
Hình 2.5: Phần mềm Hercules Setup Untility 18
Hình 2.6: Module động cơ L298 19
Hình 2.7: Module LM2596 20
Hình 2.8: Cách sử dụng LM2596 21
Hình 2.9: App Inventor bước 1 23
Hình 2.10: App Inventor bước 2 24
Trang 7Hình 2.13: Code App Inventor 26
Hình 2.14: Code App Inventor 26
Hình 2.15: Code App Inventor 27
Hình 3.1: Kết nối Arduino với L298 28
Bảng 3.1: Kết nối Arduino, L298 và 2 bánh xe 29
Hình 3.2: Kết nối Arduino với Bluetooth HC-05 29
Bảng 3.2: Kết nối Arduino với HC-05 30
Hình 3.3: Sơ đồ đấu dây 30
Hình 3.4: Sơ đồ khối chức năng của mạch điều khiển robot 31
Hình 3.5: Sơ đồ thuật toán của Robot điều khiển 32
Hình 3.5: Sơ đồ mạch 33
Hình 4.1: Mô hình toàn diện 35
Hình 4.2: Mô hình thực tế 36
Hình 4.3: Giao diện điều khiển trên điện thoại 37
Trang 8DANH MỤC KÝ HIỆU VÀ CỤM TỪ VIẾT TẮT
UHF Dải tần số vô tuyến nằm trong khoảng
300 MHz tới 3 GHz (3,000 MHz)I/O Input/Output
IDE Intergrated Development EnvironmentISM International Safety ManagementGND Điểm nối đất
UART Universal Asynchronous Receiver
Transmitter
Trang 9LỜI NÓI ĐẦU
Đã từ lâu con người luôn mơ ước chế tạo được những máy móc thông minh, có một số chức năng thay thế con người, như khả năng nhìn và nhận dạng được các vậtthể, nghe và thực hiện theo lời nói của con người Nhưng cho mãi đến những năm gần đây, khi có những lý thuyết mới về xử lý thông tin và công nghệ phát triển, thì
mơ ước đó mới dần trở thành hiện thực Tuy thế, cho đến nay, giao tiếp giữa người với máy đã được cải thiện rất nhiều nhưng vẫn còn mức độ như thông qua bàn phímhay các thiết bị xuất nhập khác Giao tiếp giữa người với máy bằng giọng nói sẽ là phương thức giao tiếp hiện đại và có ý nghĩa quan trọng trong cuộc sống như xe lăn cho nguời tàn tật được điều khiển bằng giọng nói, hay con người sẽ không dùng bànphím hoặc chuột để giao tiếp với máy tính, mà thay vào đó sẽ điều khiển máy tính theo mệnh lệnh bằng ngôn ngữ Trên thế giới đã có nhiều hệ thống nhận dạng giọngnói (tiếng Anh) đã và đang được ứng dụng rất hiệu quả như: ViaVoice, Dragon
Naturally Speaking, Spoken Toolket…nhưng do sự khác biệt về ngôn ngữ nên
chúng ta không thể áp dụng chương trình trên để nhận dạng tiếng Việt Do đó, một
hệ thống nhận dạng giọng nói tiếng Việt cần phải được xây dựng Đề tài này xin trình bày quá trình nghiên cứu thiết kế, chế tạo robot được điều khiển từ xa bằng giọng nói (tiếng Việt) với một bộ từ vựng nhỏ, thiết lập hệ thống điều khiển robot từ
xa theo tập lệnh cố định
Trong quá trình thực hiện tôi được thầy Hoàng Đắc Huy giảng viên hướng dẫn đồ
án góp ý và hướng dẫn nhiệt tình
Trang 10CHƯƠNG I: TỔNG QUAN VỀ ROBOT BLUETOOTH ĐIỀU KHIỂN
BẰNG GIỌNG NÓI VÀ TAY1.1 Đặt vấn đề
Ngày nay cùng với cuộc sống hiện đại tiện nghi khái niệm robot đã không còn xa lạ với chúng ta Robot được sử dụng rộng rãi và phổ biến, không những xuất hiện trong sản xuất công nghiệp mà còn phục vụ trong gia đình, giải trí, gọi chung là robot dịch
vụ Bên cạnh đó nhịp sống ngày càng gấp rút và hối hả hơn, chính vì vậy xuất hiện các robot phục vụ tự động trong gia đình trở nên cấp thiết hơn Sự xuất hiện của
robot hút bụi hoặc cho ta sự giải trí bằng robot điều khiển từ xã, điều khiển bằng
giọng nói Nó mang lại cho chúng ta cuộc sống thêm tiện nghi và hiện đại hơn Đồng hành với đó ta cũng thấy ngày càng nhiều cải tiến trong cuộc sống Với Robot điều khiển bằng giọng nói và kết hợp cả bằng tay thì quả thật mang lại cho chúng ta sự giải trí cũng như phục vụ gia đình Sau một ngày làm việc mệt mỏi khi về đến nhà ra lệnh cho Robot mang một cốc nước thì quả là tuyệt vời Có thể nhắc đến Robot điều khiển bằng giọng nói kết hợp với tay chạy bằng pin 12V và được lập trình bằng
Arduino, loại khác thì có vi điều khiển.Trong xu thế cạnh tranh các hãng phát triển vimạch cố gắng tăng mật độ tích hợp trên vi mạch ngày càng cao, hạ giá thành đến
mức thấp nhất Người sử dụng có thể dễ dàng sỡ hữu một bộ vi điều khiển tốc độ caogiá rẽ, các công cụ phát triển
Nhiệm vụ của đề tài này là tìm hiểu và lắp ráp Robot điều khiển bằng giọng nói kết hợp bằng tay được lập trình bằng Arduino.
1.2 Nghiên cứu
Thiết kế hoàn chỉnh và đưa ra quy trình làm một con Robot điều khiển bằng giọng nói kết hợp bằng tay một cách hoàn chỉnh
Trang 111.3 Đối tượng nghiên cứu
Robot điều khiển từ xa
Robot điều khiển bằng giọng nói
1.4 Khái quát về Robot điều khiển bằng giọng nói kết hợp tay
Robot điều khiển bằng giọng nói kết hợp tay là robot có thể di chuyển và nhận dạnggiọng nói của người điều khiển, làm theo các lệnh của người điều khiển được lập
trình sẵn bên trong nó
1.5 Tìm hiểu sâu về đối tượng nghiên cứu
1.5.1 Robot điều khiển từ xa bằng tay và Robot điều khiển bằng giọng nói
Robot điều khiển từ xa bằng tay: thông qua Bluetooth, wifi, 3g để chúng ta liên kết với chúng và điều khiển chúng theo ý mình Đặc điểm của điều khiển bằng tay
là chưa đáp ứng hết được cho người điều khiển mong muốn và ở phần điều khiển taphải nhấn nút thì Robot mới hoạt động
Robot điều khiển bằng giọng nói: cũng như điều khiển bằng tay Robot điều khiểnbằng giọng nói cũng thông qua Bluetooth, wifi, 3g để kết nối với chúng Nhưng lại đáp ứng nhu cầu của người dung nhiều hơn so với Robot điều khiển bằng tay vì có nhiều câu lệnh hơn và thao tác ít hơn khi chúng ta chỉ cần nói cho chúng hiểu và thực hiện
Trang 121.5.2 Các loại robot điều khiển hiện nay:
Robot ASIMO: Là robot khá nổi tiếng trên thế giới Do Trung tâm Nghiên cứu Kỹ thuật Cơ bản Waco của tập đoàn Honda (Nhật Bản) chế tạo năm 2000 Người máy này cao 130 cm, nặng 54 kg, có khả năng di chuyển nhanh đến 6 km/giờ ASIMO hiện được trưng bày tạibảo tàng Miraikan tại thủ đô Tokyo, Nhật Bản Nó có kích thước nhưmột đứa trẻ, mặc quần áo phi hành gia và đeo balô ở phía sau lưng
ASIMO có thể chạy, leo cầu thang, giao tiếp với con người và có khảnăng nhận dạng giọng nói, gương mặt Các chuyển động của
ASIMO có thể bắt chước theo cách chuyển động của con người
Robot này sử dụng cảm biến siêu âm và hồng ngoại để tương tác với môi trường theo chế độ thời gian thực
Hình 1.1: Robot ASIMO
Trang 13Robot Kismet: Kismet của viện MIT (Mỹ) là một đầu robot được chế tạo vàocuối những năm 1990 tại Viện Công nghệ Massachusetts bởi Tiến sĩ CynthiaBreazeal như một thử nghiệm trong tính toán cảm xúc; một cỗ máy có thể nhận biết
và mô phỏng cảm xúc Cái tên Kismet xuất phát từ một từ tiếng Thổ Nhĩ Kỳ cónghĩa là "số phận" hoặc đôi khi là "may mắn" Là robot tương tác xã hội đầu tiên,
có thể giao tiếp trực tiếp với con người một cách xuất sắc Kismet được lập trìnhchủ động phản ứng với người nói chuyện, thậm chí còn hờn dỗi nếu yêu cầu của nó
bị từ chối
Gương mặt của robot Kismet với 15 bậc tự do có thể thực hiện nhiều biểu hiện khác nhau Nó có thể tự học và sử dụng những điều đã học để đưa ra hành động phù hợp Những đặc tính này sẽ là nền tảng cho các hệ thống máy thông minh hiện nay và sau này
Hình 1.2: robot Kismet.
Trang 14Robot Grace: Grace là một robot tự động thông minh và là sản phẩm hợp tác củacác nhà khoa học ĐH Carnegie Mellon và Phòng nghiên cứu hải quân Hoa Kỳ.Robot sử dụng hệ thống phân tích và nhận dạng tiếng nói để có thể tự tìm đường đitới một nơi nào đó bằng cách trao đổi với người qua đường hay những người mà nógặp.
Nó có một nền tảng lia trên đó màn hình hiển thị khuôn mặt biểu cảm đầy cảmxúc, cũng như các cảm biến để giúp nó di chuyển trong môi trường đông đúc, baogồm cảm biến cảm ứng và công cụ tìm phạm vi laser quét GRACE có giọng nóitổng hợp chất lượng cao và có thể hiểu người khác bằng phần mềm nhận dạnggiọng nói
Phía trên robot có một màn hình hiển thị gương mặt để thể hiện cảm xúc, ngoài
ra còn có các cảm biến laser và cảm biến va chạm giúp nó có thể di chuyển qua
đám đông
Hình 1.3: robot Grace.
Trang 15Robot Qrio: Các nguyên mẫu QRIO được phát triển và sản xuất bởi Sony
Intelligence Dynamics Laboratory, Inc Hiện chưa rõ số lượng các nguyên mẫu nàyđang tồn tại Có đến mười QRIO đã được nhìn thấy biểu diễn một điệu nhảy cùng nhau; điều này đã được xác nhận bởi một đại diện của Sony tại Bảo tàng Khoa học
ở Boston, MA vào ngày 22 tháng 1 năm 2006 Nhiều video về điều này có thể đượctìm thấy trên web
Với slogan “Làm cho cuộc sống vui tươi, làm cho bạn hạnh phúc hơn”, robot
QRIO của Sony nhỏ gọn hơn ASIMO Nó cao chỉ 60 cm, có thể thực hiện các điệu nhảy phức tạp, thậm chí còn có thể nhảy theo một bản rock QRIO có khả năng
nhận dạng giọng nói và khuôn mặt, giúp nó có thể nhớ mọi người cũng như những điều họ thích và không thích Một video trên trang web của QRIO cho thấy nó
đang nói chuyện với một số trẻ em QRIO có thể chạy với tốc độ 23 cm /s.Pin bên trong QRIO kéo dài khoảng 1 giờ
Hình 1.4: robot Qrio.
Trang 16Robot Xiaomi: Là robot hút bụi điểm nổi bật như thiết kế đẹp và sang trọng,
công suất hút mạnh mẽ lên tới 1800 Mpa Pin có dung lượng lớn, tích hợp đầy đủ các tính năng công nghệ hiện đại như quản lý từ xa bằng smartphone, tránh rơi cầu thang, tránh vật cản, tự động quay về trạm sạc khi hết pin, tự lập bản đồ các khu vực được làm sạch giúp tiết kiệm thời gian cho lần tiếp theo Với công nghệ mới robot có thể định vị dẫn đường bằng Laser và các thuật toán xác định những khu vực để làm sạch một cách tối ưu
Hình 1.5: robot Xiaomi.
Trang 17CHƯƠNG II: CƠ SỞ NGUYÊN LÝ2.1 Giới thiệu chung về Arduino:
2.1.1 Board mạch Arduino Uno:
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) Bạn sẽ bắt đầu đến với Arduino qua thứ này Bạn có thể dùng Arduino Nano cũng được nhưng mình khuyên bạn nên dùng cái này
Arduino là một board mạch vi xử lý, nhằm xây dựng 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 boardmạchnguồn mở được thiết kế trên nền tảng vi xử lý AVR Atmel 8bit, hoặc ARMAtmel 32-bit Những Model hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầuvà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 nhiết bị có khả năng tương tác với môitrườ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++
Arduino cơ bản là một nền tảng tạo mẫu mở về điện tử (open-sourceelectronics prototyping platform) được tạo thành từ phần cứng lẫn phần mềm Về mặt kĩ thuật
có thể coi Arduino là 1 bộ điều khiển logic có thể lập trình được Đơn giản hơn, Arduino là một thiết bị có thể tương tác với ngoại cảnh thông qua các cảm biến và hành vi được lập trình sẵn Với thiết bị này, việc lắp ráp và điều khiển các thiết bị điện tử sẽ dễ dàng hơn bao giờ hết Một điều không hề dễ dàng cho những ai đam
mê công nghệ và điều khiển học nhưng là người ngoại đạo và không có nhiều thời gian để tìm hiểu sâu hơn về về kĩ thuật lập trình và cơ điện tử
Trang 18Hiện tại có rất nhiều loại vi điều khiển và đa số được lập trình bằng ngôn ngữ C/C++ hoặc Assembly nên rất khó khăn cho những người có ít kiến thức sâu về điện
tử và lập trình Nó là trở ngại cho mọi người muốn tạo riêng cho mình một món đồmang tính công nghệ Do vậy đó là lí do Arduino được phát triển nhằm đơn giản hóa việc thiết kế, lắp ráp linh kiện điện tử cũng như lập trình trên vi xử lí và mọi người có thể tiếp cận dễ dàng hơn với thiết bị điện tử mà không cần nhiều về kiến thức điện tử và thời gian Sau đây là nhưng thế mạnh của Arduino so với các nền tảng vi điều khiển khác:
- Chạy trên đa nền tảng: Việc lập trình Arduino có thể thể thực hiện trên các hệ điều hành khác nhau như Windows, Mac Os, Linux trên Desktop, Android trên di động
- Ngôn ngữ lập trình đơn giản dễ hiểu
- Nền tảng mở: Arduino được phát triển dựa trên nguồn mở nên phần mềm chạy trên Arduino được chia sẻ dễ dàng và tích hợp vào các nền tảng khác nhau
- Mở rộng phần cứng: Arduino được thiết kế và sử dụng theo dạng module nên việc mở rộng phần cứng cũng dễ dàng hơn
- Đơn giản và nhanh: Rất dễ dàng lắp ráp, lập trình và sử dụng thiết bị
- Dễ dàng chia sẻ: Mọi người dễ dàng chia sẻ mã nguồn với nhau mà không lo lắng về ngôn ngữ hay hệ điều hành mình đang sử dụng
Arduino có rất nhiều module, mỗi module được phát triển cho một ứng dụng Vềmặt chức năng, các bo mạch Arduino được chia thành hai loại: loại board mạch chính có chip Atmega và loại mở rộng thêm chức năng cho bo mạch chính Các board mạch chính về cơ bản là giống nhau về chức năng, tuy nhiên về mặt cấu
hình như số lượng I/O, dung lượng bộ nhớ, hay kích thước có sự khác nhau Một
số board mạch có trang bị thêm các tính năng kết nối như Ethernet và Bluetooth
Trang 19chính về cơ bản là giống nhau về chức năng, tuy nhiên về mặt cấu hình như số
lượng I/O, dung lượng bộ nhớ, hay kích thước có sự khác nhau Một số bo có
trang bị thêm các tính năng kết nối như Ethernet và Bluetooth Các bo mở rộng chủ yếu mở rộng thêm một số tính năng cho bo mạch chính Ví dụ như tính năng kết nối Ethernet, Wireless, điều khiển động cơ
Arduino được chọn làm bộ não xử lý của rất nhiều thiết bị từ đơn giản đến phức tạp Trong số đó có một vài ứng dụng thực sự chứng tỏ khả năng vượt trội của
Arduino do chúng có khả năng thực hiện nhiều nhiệm vụ rất phức tạp Sau đây là danh sách một số ứng dụng nổi bật cảu Arduino như trong công nghệ in 3D, robot
dò đường theo hướng có nguồn nhiệt, tạo một thiết bị nhấp nháy theo âm thanh và đèn laser hay là một thiết bị báo cho khách hàng biết khi nào bánh mì ra lò
Arduino đã và đang sử dụng rất rộng rãi trên thế giới, và ngày càng chứng tỏ
được sức mạnh của chúng thông qua vô số ứng dụng độc đáo của người dùng
trong cộng đồng nguồn mở (open-source) Tuy nhiên tại Việt Nam Arduino vẫn còn chưa được biết đến nhiều
Hình 2.1: board mạch Arduino uno.
2.1.2 Một vài thông số của Arduino uno:
Vi điều khiển ATmega328 họ 8bitĐiện áp hoạt động 5V DC (chỉ được cấp qua cổng USB)
Trang 20Tần số hoạt động 16 MHzDòng tiêu thụ khoảng 30mAĐ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 (6 chân hardware PWM)
Số chân Analog 6 (độ phân giải 10bit)Dòng tối đa trên mỗi chân I/O 30 mA
Trang 212.1.3 Năng lượng cấp cho Arduino:
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ạn là 6-20V Thường thì cấp nguồn bằng pin 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
2.1.4 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 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ớinhau
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, 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 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Ω
2.2 Module Bluetooth HC-05:
2.2.1 Giới thiệu chung
Bluetooth là chuẩn truyền thông không dây để trao đổi dữ liệu ở khoảng cách
ngắn Chuẩn truyền thông này sử dụng sóng radio ngắn (UHF radio) trong dải tần
số ISM (2.4 tới 2.485 GHz) Khoảng cách truyền của module này vào khoảng
10m
Trang 22Hôm nay tôi muốn giới thiệu đến các bạn một module sử dụng chuẩn truyền
thông này là module HC-05 Module này được thiết kế dựa trên chip BC417 Con chip này khá phức tạp và sử dụng bộ nhớ flash ngoài 8Mbit Nhưng việc sử dụng module này hoàn toàn đơn giản bởi nhà sản xuất đã tích hợp mọi thứ cho bạn trên module HC-05
Hình 2.2: Bluetooth HC-05
Trang 232.2.2 Module Bluetooth gồm những loại nào?
Module Bluetooth HC-05 chuyên để kết hợp chung với các nền tảng arduino để tạo ra các ứng dụng trong đời sống cũng như trong học tập và thí nghiệm, tiêu biểu
có các module phổ biến như:
Module Bluetooth HC-05
Module Bluetooth HC-06
Hình 2.3: Bluetooth HC-05 và Bluetooth HC-06
Trang 242.2.3 Sơ đồ chân của HC-05
KEY: Chân này để chọn chế độ hoạt động AT Mode hoặc Data Mode
VCC: chân này có thể cấp nguồn từ 3.6V đến 6V bên trong module đã có một icnguồn chuyển về điện áp 3.3V và cấp cho IC BC417
GND (Mass): nối với chân nguồn GND
TXD, RND: đây là hai chân UART để giao tiếp module hoạt động ở mức logic 3.3V
STATE: không cần quan tâm đến chân này
Hình 2.4: Sơ đồ chân HC-05
Trang 252.2.4 Chế độ hoạt động.
HC-05 có hai chế độ hoạt động là Command Mode và Data Mode Ở chế độ
Command Mode ta có thể giao tiếp với module thông qua cổng serial trên module bằng tập lệnh AT quen thuộc Ở chế độ Data Mode module có thể truyền nhận dữ liệu tới module bluetooth khác Chân KEY dùng để chuyển đổi qua lại giữa hai chế
độ này Có hai cách để bạn có thể chuyển module hoạt động trong chế độ Data
Mode (đọc tài liệu Tiếng Việt trên một số Web thấy chỗ này thường bị viết sai)
Nếu đưa chân này lên mức logic cao trước khi cấp nguồn module sẽ đưa vào chế
độ Command Mode với baudrate mặc định 38400 Chế độ này khá hữu ích khi bạn không biết baudrate trong module được thiết lập ở tốc độ bao nhiêu Khi chuyển
sang chế độ này đèn led trên module sẽ nháy chậm (khoảng 2s) và ngược lại khi
chân KEY nối với mức logic thấp trước khi cấp nguồn module sẽ hoạt động chế độ Data Mode
Nếu module đang hoạt động ở chế Data Mode để có thể đưa module vào hoạt
động ở chế độ Command Mode bạn đưa chân KEY lên mức cao Lúc này module sẽvào chế độ Command Mode nhưng với tốc độ Baud Rate được bạn thiết lập lần cuốicùng Vì thế bạn phải biết baudrate hiện tại của thiết bị để có thể tương tác được với
nó Chú ý nếu module của bạn chưa thiết lập lại lần nào thì mặc định của nó như sau:
Baudrate 9600, data 8 bits, stop bits 1, parity: none, handshake: none
Passkey: 1234 hoặc 0000 (hoặc theo người lập trình can thiệp vào có thể thay đổi mật khẩu khác)
Device Name: HC-05