Bản báo cào này trình bày kết quả nghiên cứu công nghệ không dây Bluetooth của các thiết bị điện tử chạy trên nền hệ điều hành Android và ứng dụng vào thiết kế mô hình xe điều khiển từ c
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG CAO ĐẲNG CÔNG THƯƠNG TP.HCM
KHOA: ĐIỆN – ĐIỆN TỬ
BỘ MÔN: ĐIỆN TỬ VIỄN THÔNG
Tp Hồ Chí Minh, Tháng 05 Năm 2019
Trang 2LỜI MỞ ĐẦU
Trong những năm qua, khoa học máy tính và xử lý thông tin có những bước tiến vượt bậc và ngày càng có những đóng góp to lớn vào cuộc cách mạng khoa học kỹ thuật hiện đại Đặc biệt sự ra đời và phát triển nhanh chóng của kỹ thuật
số làm cho ngành điện tử trở nên phong phú và đa dạng hơn Nó góp phần rất lớn trong việc đưa kỹ thuật hiện đại thâm nhập rộng rãi vào mọi lĩnh vực của hoạt động sản xuất, kinh tế và đời sống xã hội Từ những hệ thống máy tính lớn đến những hệ thống máy tính cá nhân, từ những việc điều khiển các máy công nghiệp đến các thiết bị phục vụ đời sống hằng ngày của con người Trong các hệ thống
đó, việc trao đổi thông tin là vô cùng quan trọng Công nghệ truyền tin không dây ngày càng phát triển, đặc biệt công nghệ Bluetooth đã phổ biến hầu hết các thiết
bị điện tử di động Bản báo cào này trình bày kết quả nghiên cứu công nghệ không dây Bluetooth của các thiết bị điện tử chạy trên nền hệ điều hành Android và ứng dụng vào thiết kế mô hình xe điều khiển từ các thiết bị Android qua kết nối không dây Bluetooth
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
Trang 3LỜI CẢM ƠN
Trước hết chúng em xin gửi lời cảm ơn chân thành nhất đến toàn thể Quý
thầy cô Trường Cao Đẳng Công Thương TP Hồ Chí Minh, Quý thầy cô khoa
Điện – Điện tử dạy dỗ, truyền đạt những kiến thức quý báu cho chúng em trong
suốt thời gian nghiên cứu và thực hiện đồ án Em xin cảm ơn cô Nguyễn Thị Mai
Lan đã nhiệt tình hướng dẫn em để em có thể hoàn thành tốt học phần này
Trong quá trình làm đề tài đồ án này tôi gặp khá nhiều khó khăn, mặt khác
do trình độ còn hạn chế nên dù cố gắng song đề tài của tôi không tránh khỏi những
hạn chế, thiếu sót
Những ý kiến đóng góp đó sẽ giúp tôi nhận ra những hạn chế trong bài tiểu
luận, qua đó tôi có thể rút kinh nghiệm và có thêm những nguồn tài liệu mới trên
con đường học tập cũng như nghiên cứu sau này
Chúng em xin chân thành cảm ơn !
TP HCM, ngày 30 tháng 05 năm 2019
Trang 4NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Nhận xét chung:
…
…
…
…
…
…
…
…
…
…
…
…
…
Đánh giá: (Được phép bảo vệ hay không được phép bảo vệ) …
…
…
TP HCM, ngày … tháng … năm 20
Giáo viên hướng dẫn (Ký và ghi rõ họ tên)
Trang 5TIẾN ĐỘ THỰC HIỆN ĐỒ ÁN MÔN HỌC
Tên đề tài: Thiết kế và thi công mạch điều khiển xe qua Bluetooth
Ngày giao đề tài: 28 / 03 / 2019 ; Tuần thứ:
Ngày hoàn thành đề tài: 13 / 06 / 2019; Tuần thứ:
Sinh viên thực hiện:
Họ tên sinh viên 1: NGUYỄN MẪN KHANG MSSV: 2110230010
Họ tên sinh viên 2: NGUYỄN BÁ THỌ MSSV: 2116230025
Họ tên sinh viên 3: PHẠM QUANG HUY MSSV: 2116230034
28/3/2019 SV nhận nhóm, nhận đề tài
4/4/2019 SV trình bày tìm hiểu chung về đề tài
11/4/2019 SV trình bày sơ đồ nguyên lý
9/5/2019 SV test mạch
23/5/2019 SV hoàn thạch mạch và mô hình
6/6/2019 SV hoàn thành file word báo cáo
13/6/2019 SV hoàn thành mạch và cuốn báo cáo
Xác nhận của giáo viên hướng dẫn (Ký và ghi rõ họ và tên)
Trang 6LỜI CAM ĐOAN
Đề tài này là do nhóm của chúng em tự thực hiện dựa vào một số tài liệu tham khảo và chúng em xin cam đoan đề tài này không sao chép bất kỳ công trình đã
có trước đó Nếu có sao chép nhóm chúng em hoàn toàn chịu trách nhiệm
Trang 7DANH MỤC HÌNH
Hình 1.1: Arduino Nano 10
Hình 1.2:Giao thức ICSP 14
Hình 1.3: Khả năng kết nối các thiết bị qua Bluetooth 16
Hình 1.4: HC-05 và sơ đồ chân 18
Hình 2.1: Sơ đồ nguyên lý tổng quát của mạch 20
Hình 2.2: Module giảm áp LM-2596 21
Hình 2.3: IC PC-817 22
Hình 2.4: IC điều khiển L293D 22
Hình 2.5: IC cầu 2A 23
Hình 2.6: Sơ đồ nguyên lý trên proteus 25
Hình 2.7: Sơ đồ mạch in củng như phần thân xe 25
Hình 2.8: Hoàn thiện mạch in 26
Hình 2.9: Thi công lắp linh kiện 27
Hình 2.10: Sơ đồ kết nối của mạch 28
Hình 2.11: Phía trên thân xe 28
Hình 2.12 Màn hình phần mềm điều khiển 29
Trang 8DANH MỤC BẢNG
Bảng 1: Đặc điểm của arduino nano 9
Bảng 2: Chức năng các chân của arduino nano 11Bảng 3: Chức năng các chân ICSP 12
Trang 9MỤC LỤC
Lời mở đầu 1
Lời cảm ơn 2
Nhận xét của GVHD 3
Lịch trình thực hiện 4
Lời cam đoan 5
Danh mục hình 6
Danh mục bảng 7
Chương 1: CƠ SỞ LÝ THUYẾT 9
1 GIỚI THIỆU VỀ HỌ VĐK ARDUINO 11
2 GIỚI THIỆU VỀ BLUETOOTH VÀ MODULE BLUETOOTH HC05 17 Chương 2: THIẾT KẾ MẠCH 23
1 SƠ ĐỒ KHỐI MẠCH ĐIỀU KHIỂN TRÊN THÂN XE 23
2 SƠ ĐỒ NGUYÊN LÝ MÔ PHỎNG TRÊN PROTUES 25
3 TIẾN HÀNH THI CÔNG MẠCH 26
Chương 3: KẾT LUẬN 30
Tài liệu tham khảo 31
Trang 10CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1 GIỚI THIỆU VỀ HỌ VI ĐIỀU KHIỂN ARDUINO NANO
Arduino Nano là một bảng vi điều khiển thân thiện, nhỏ gọn, đầy đủ Arduino Nano nặng khoảng 7g với kích thước từ 1,8cm - 4,5cm Sau đây là một số đặc điểm về các thông số kỹ thuật quan trọng, nhất là sơ đồ chân và chức năng của mỗi chân trong bảng Arduino Nano
Arduino Nano khác thế nào?
Arduino Nano có chức năng tương tự như Arduino Duemilanove nhưng khác nhau về dạng mạch Nano được tích hợp vi điều khiển ATmega328P, giống như Arduino UNO Sự khác biệt chính giữa chúng là bảng UNO có dạng PDIP (Plastic Dual-In-line Package) với 30 chân còn Nano có sẵn trong TQFP (plastic quad flat pack) với 32 chân Trong khi UNO có 6 cổng ADC thì Nano có 8 cổng ADC Bảng Nano không có giắc nguồn DC như các bo mạch Arduino khác, mà thay vào đó có cổng mini-USB Cổng này được sử dụng cho cả việc lập trình và
bộ giám sát nối tiếp Tính năng hấp dẫn của arduino Nano là nó sẽ chọn công xuất lớn nhất với hiệu điện thế của nó
Trang 123 RESET Đầu vào Chân reset, hoạt động ở mức thấp
13 D10 I / O Ngõ vào/ra digital
14 D11 I / O Ngõ vào/ra digital
15 D12 I / O Ngõ vào/ra digital
16 D13 I / O Ngõ vào/ra digital
17 3V Đầu ra Đầu ra 3.3V (từ FTDI)
19 A0 Đầu vào Kênh đầu vào tương tự kênh 0
20 A1 Đầu vào Kênh đầu vào tương tự kênh 1
21 A2 Đầu vào Kênh đầu vào tương tự kênh 2
22 A3 Đầu vào Kênh đầu vào tương tự kênh 3
23 A4 Đầu vào Kênh đầu vào tương tự kênh 4
Trang 13Bảng 2: Chức năng các chân của arduino nano
Chân ICSP
Tên pin
MISO Đầu vào hoặc đầu ra Master In Slave Out
MOSI Đầu ra hoặc đầu vào Master Out Slave In RST Đầu vào Đặt lại, Hoạt động ở mức thấp
Bảng 3: Chức năng các chân ICSP
• Các chân: 1, 2, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 và 16
Như đã đề cập trước đó, Arduino Nano có 14 ngõ vào/ra digital Các chân làm việc với điện áp tối đa là 5V Mỗi chân có thể cung cấp hoặc nhận dòng điện 40mA và có điện trở kéo lên khoảng 20-50kΩ Các chân có thể được sử dụng làm đầu vào hoặc đầu ra, sử dụng các hàm pinMode(), digitalWrite() và digitalRead()
24 A5 Đầu vào Kênh đầu vào tương tự kênh 5
25 A6 Đầu vào Kênh đầu vào tương tự kênh 6
26 A7 Đầu vào Kênh đầu vào tương tự kênh 7
28 RESET Đầu vào Chân đặt lại, hoạt động ở mức thấp
30 VIN Nguồn Chân nối với nguồn vào
Trang 14Ngoài các chức năng đầu vào và đầu ra số, các chân này cũng có một số chức năng bổ sung.
• Chân 1, 2: Chân nối tiếp
Hai chân nhận RX và truyền TX này được sử dụng để truyền dữ liệu nối tiếp TTL Các chân RX và TX được kết nối với các chân tương ứng của chip nối tiếp USB tới TTL
• Chân 13, 14, 15 và 16: Giao tiếp SPI
Khi bạn không muốn dữ liệu được truyền đi không đồng bộ, bạn có thể sử dụng các chân ngoại vi nối tiếp này Các chân này hỗ trợ giao tiếp đồng bộ với SCK Mặc dù phần cứng có tính năng này nhưng phần mềm Arduino lại không có Vì vậy, bạn phải sử dụng thư viện SPI để sử dụng tính năng này
• Chân 16: Led
Khi bạn sử dụng chân 16, đèn led trên bo mạch sẽ sáng
• Chân 18, 19, 20, 21, 22, 23, 24, 25 và 26 : Ngõ vào/ra tương tự
Như đã đề cập trước đó UNO có 6 chân đầu vào tương tự nhưng Arduino Nano
có 8 đầu vào tương tự (19 đến 26), được đánh dấu A0 đến A7 Điều này có nghĩa
là bạn có thể kết nối 8 kênh đầu vào tương tự để xử lý Mỗi chân tương tự này có một ADC có độ phân giải 1024 bit (do đó nó sẽ cho giá trị 1024) Theo mặc định, các chân được đo từ mặt đất đến 5V Nếu bạn muốn điện áp tham chiếu là 0V đến 3.3V, có thể nối với nguồn 3.3V cho chân AREF (pin thứ 18) bằng cách sử dụng
Trang 15chức năng analogReference () Tương tự như các chân digital trong Nano, các chân analog cũng có một số chức năng khác.
• Chân 23, 24 như A4 và A5: chuẩn giao tiếp I2C
Khi giao tiếp SPI cũng có những nhược điểm của nó như cần 4 chân và giới hạn trong một thiết bị Đối với truyền thông đường dài, cần sử dụng giao thức I2C I2C hỗ trợ chỉ với hai dây Một cho xung (SCL) và một cho dữ liệu (SDA) Để sử dụng tính năng I2C này, chúng ta cần phải nhập một thư viện có tên là Thư viện Wire
Trang 16ICSP là viết tắt của In Circuit Serial Programming , đại diện cho một trong những phương pháp có sẵn để lập trình bảng Arduino Thông thường, một chương trình
bộ nạp khởi động Arduino được sử dụng để lập trình một bảng Arduino, nhưng nếu bộ nạp khởi động bị thiếu hoặc bị hỏng, ICSP có thể được sử dụng thay thế ICSP có thể được sử dụng để khôi phục bộ nạp khởi động bị thiếu hoặc bị hỏng
2 GIỚI THIỆU VỀ BLUETOOTH VÀ MODULE BLUETOOTH HC05
a Công nghệ không dây bluetooth
Bluetooth là một công nghệ cho phép truyền thông giữa các thiết bị với nhau mà không cần dây dẫn Nó là một chuẩn điện tử, điều đó có nghĩa là các hãng sản xuất muốn có đặc tính này trong sản phẩm thì họ phải tuân theo các yêu cầu của chuẩn này cho sản phẩm của mình Những tiêu chuẩn kỹ thuật này đảm bảo cho các thiết bị có thể nhận ra và tương tác với nhau khi sử dụng công nghệ Bluetooth Ngày nay phần lớn các nhà máy đều sản xuất các thiết bị có sử dụng công nghệ Bluetooth Các thiết bị này gồm có điện thoại di động, máy tính và thiết bị hỗ trợ cá nhân PDA (Prosonal Digital Assistant) Công nghệ Bluetooth là một công nghệ dựa trên tần số vô tuyến và bất cứ một thiết bị nào có tích hợp bên trong công nghệ này đều có thể truyền thông với các thiết bị khác với một khoảng cách nhất định về cự ly để đảm bảo công suất cho việc phát và nhận sóng Công nghệ này thường được sử dụng để truyền thông giữa hai loại thiết bị khác nhau
Ví dụ: Bạn có thể hoạt động trên máy tính với một bàn phím không dây, sử dụng
bộ tai nghe không dây để nói chuyện trên điện thoại di động của bạn hoặc bổ sung thêm một cuộc hẹn vào lịch biểu PDA của một người bạn từ PDA của bạn
i Ưu điểm
• Tiêu thụ năng lượng thấp
• Cho phép ứng dụng được nhiều loại thiết bị bao gồm các thiết bị cầm tay và điện thoại di động
• Giá thành ngày một giảm
• Khoảng cách giao tiếp cho phép giữa hai thiết bị kết nối có thể lên đến 100m
Trang 17• Bluetooth sử dụng băng tần 2.4GHz, tốc độ truyền dữ liệu có thể đạt tới mức tới đa 1Mbps mà các thiết bị không cần phải trực tiếp thấy nhau
• Dễ dàng trong việc phát triển ứng dụng: Bluetooth kết nối một ứng dụng này với một ứng dụng khác thông qua chuẩn Bluetooth, do đó có thể độc lập về phần cứng cũng như hệ điều hành sử dụng
• Tính tương thích cao, được nhiều nhà sản xuất phần cứng cũng như phần mềm hỗ trợ
ii Nhược điểm
• Khoảng cách kết nối còn ngắn so với công nghệ mạng không dây khác
• Chỉ kết nối được hai thiết bị với nhau, không kết nối thành mạng Hoạt động Bluetooth là chuẩn kết nối không dây tầm ngắn, thiết kế cho các kết nối thiết bị cá nhân hay mạng cục bộ nhỏ trong phạm vi băng tần từ 2.4GHz đến 2.485GHz Bluetooth được thiết kế hoạt động trên 79 tần
số đơn lẻ Khi kết nối , nó sẽ tự động tìm ra tần số tương thích để di chuyển đến thiết bị cần kết nối trong khu vực nhằm đảm bảo sự liên tục
Hình 1.3: Khả năng kết nối các thiết bị qua Bluetooth
Trang 18Lịch sử phát triển Bluetooth
• Blutooth 1.0 (7/1999): phiên bản đầu tiên được đưa ra thị trường với tốc độ kết nối ban đầu là 1Mbps Tuy nhiên, trên thực tế tốc độ kết nối của thế hệ này chưa bao giờ đạt quá mức 700Kbps
• Bluetooth 1.1 (2001): Đánh dấu bước phát triển mới của công nghệ Bluetooth trên nhiều lĩnh vực khác nhau với sự quan tâm của nhiều nhà sản xuất mới
• Bluetooth 1.2 (11/2003): Bắt đầu có nhiều tiến bộ đáng kể Chuẩn này hoạt động dựa trên băng tần 2.4GHz và tăng cường kết nối thoại
• Bluetooth 2.0+ERD (2004): Bắt đầu nâng cao tốc độ và giảm thiểu một nửa năng lượng tiêu thụ so với trước đây Tốc độ của chuẩn Bluetooth lên đến 2.1Mbps với chế độ cải thiện kết nối truyền tải–ERD (Enhanced data rate)
• Bluetooth 2.1+ERD (2004): đây chính là thế hệ nâng cấp củaBluetooth 2.0
có hiệu năng cao hơn và tiết kiệm năng lượng hơn
• Bluetooth 3.0+HS (2008): có tốc độ truyền dữ liệu đạt mức 24Mbps – bằng sóng Blutooth – High Speed, tương đương chuẩn Wifi thế hệ đầu tiên, phạm
vi hiệu quả nhất chỉ trong vòng 10m
• Bluetooth 4.0 (30/06/2010): chuẩn Bluetooth mới nhất hiện nay Bluetooth 4.0 là sự kết hợp của “classic Bluetooth” (Bluetooth 2.1 và 3.0), “Bluetooth high speed” ( Bluetooth 3.0 + HS) và “ Bluetooth low energy -Bluetooth năng lượng thấp (Bluetooth Smart Ready/ Bluetooth Smart) “Bluetooth low enegry” là một phần của Bluetooth 4.0 với một giao thức tiêu chuẩn của Bluetooth 1.0 vào 4.0 nhằm phục vụ cho những ứng dụng năng lượng cực thấp
Trang 19b Module Bluetooth 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 1.4: HC-05 và sơ đồ chân
Sơ đồ chân HC-05 gồm có:
• 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 ic nguồn chuyển về điện áp 3.3V và cấp cho IC BC417
• GND 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.3
• STATE các bạn chỉ cần thả nổi và không cần quan tâm đến chân này.
Trang 20Các 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ối cù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: nonePasskey: 1234; Device Name: HC-05
Ở chế độ Data Mode HC-05 có thể hoạt động như một master hoặc slave
tùy vào việc bạn cấu hình (riêng HC-06 bạn chỉ có thể cấu hình ở chế độ SLAVE)
Ở chế độ SLAVE: bạn cần thiết lập kết nối từ smartphone, laptop, usb
bluetooth để dò tìm module sau đó pair với mã PIN là 1234 Sau khi pair thành công, bạn đã có 1 cổng serial từ xa hoạt động ở baud rate 9600
Ở chế độ MASTER: module sẽ tự động dò tìm thiết bị bluetooth khác (1
module bluetooth HC-06, usb bluetooth, bluetooth của laptop ) 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