TÊN ĐỀ TÀI: HỆ THỐNG ĐIỀU KHIỂN VÀ GIÁM SÁT CÁC THIẾT BỊ TRONG NHÀỆM Ụác ố ệu đầughi những thông số, tập tài liệu tín hiệu, hình ảnh,…ội dung thực hiện:Tìm hiều và lựa chọn nguồn dule kế
Trang 1Ộ GIÁO DỤC & ĐÀO TẠ
Trang 2Ộ GIÁO DỤC & ĐÀO TẠ
Trang 3TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Ồ Í ĐỘC LẬP TỰ DO HẠNH PHÚC KHOA ĐIỆN ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
ghi những thông số, tập tài liệu tín hiệu, hình ảnh,…
ội dung thực hiện:
Tìm hiều và lựa chọn nguồn dule kết nối Bluetooth, module Wifi và vi điều khiểnViết ứng dụng Android để SmartPhone nhận tín hiệu từ giọng nói con người, xử lý
và đưa tín hiệu đến vi điều khiển
Thiết kế và thi công các module khối điều khiển: Module Arduino Uno R3, Module
và Module Bluetooth HCKết nối các module lại với nhau
Chạy thử, kiểm tra và cân chỉnh mô hình
Viết sách luận văn tốt nghiệp
Báo cáo đồ án tốt nghiệp
III NGÀY GIAO NHIỆM VỤ
IV NGÀY HOÀN THÀNH NHIỆM VỤ:
V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN:
Nguyễn Việt HùngĐIỆN TỬ CÔNG NGHIỆP –
Trang 4TRƯỜNG ĐH SƯ PHẠM KỸ THUẬT CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TP HỒ CHÍ MINH ĐỘC LẬP TỰ DO HẠNH PHÚC ĐIỆN ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
Tuần 2 Nộp đề cương và phiếu lịch trình thực hiện
Tuần 3 Tìm tài liệu liên quan và nghiên cứu
Tuần 4 Tìm hiểu về Arduino và các Module liên quan
Tuần 5 Tìm hiểu về cách truyền nhận dữ liệu giữa các
Module và ArduinoTuần 6 Tìm hiểu về App Inventor
Tuần 7 Tìm hiểu về Firebase
Tuần 8 Lên sơ đồ khối và viết chương trình cho
Tuần 9 Lên sơ đồ khối và viết chương
Tuần 10 Thi công mạch và chạy thử chương trình
Tuần 11 Hoàn thiện App và kết nối điều khiển với
mạch, kiểm tra lỗi và khắc phục sự cốTuầ Thi công và kết nối mạch với mô hình
Tuầ Hoàn chỉnh mạch và viết luận văn
GV HƯỚNG DẪN(Ký và ghi rõ họ và tên)
Trang 5LỜI CAM ĐOAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
LỜI CAM ĐOAN
Đề tài này là do tôi tự thực hiện dựa vào một số tài liệu trước đó và không sao chép từ tài liệu hay công trình đã có trước đó
Các kế ả công bốtrong Đồ án tố ệ “HỆ THỐNG ĐIỀU KHIỂN VÀGIÁM SÁT CÁC THIẾT BỊ TRONG NHÀ” là trung thực và không sao chép từ công trình nào khác
Những người thực hiện đề tàiPhạm Văn Huy
Trang 6LỜI CẢM ƠN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
LỜI CẢM ƠN
xin gởi lời cảm ơn sâu sắc đến Thầy Nguyễn Việt Hùng Giảng viên bộ môn Điện
Tử Công Nghiệp đã nhiệt tình giúp đỡ và hướng dẫn bọn em trong việc thực hiện đề tài
in gởi lời chân thành cảm ơn các thầy cô Điện Điện Tử đã tạo những điều kiện tốt nhất cho em hoàn thành đề tài
cũng gửi lời đồng cảm ơn đến các bạn bè, các bạn có cùng đam mê đã chia sẻ trao đổi kiến thức cũng như những kinh nghiệm quý báu trong thời gian thực hiện đề tài.Xin chân thành cảm ơn!
Những gười thực hiện đề tàiPhạm Văn Huy
Trang 7CHƯƠNG 2 CƠ SỞ LÝ THUYẾT
1 Giới thiệu về Firebase
1.1 Khái niệm về Firebase
1.2 đặc điểm và tính năng
2 Công nghệ bluetooth
2.1 Khái niệm về bluetooth
2.2 Các đặc điểm của bluetooth
.3 Ưu nhược điểm của bluet
Giới thiệu về hệ điều hành Android
2.3.1 Android là gì
Lịch sử phát triển của Android
Các phiên bản của Android
2.3.4 Ưu nhược điểm của Android
Kiến trúc cơ bản của hệ điều hành AndroidMột số Module sử dụng trong mô hình
Vi điều khiển
Trang 8MỤC LỤC
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
CHƯƠNG 3 TÍNH TOÁN VÀ THIẾT KẾ
3.1 Giới thiệu
Sơ đồ khối hệ thống
Tính toán thiết kế
.3.1 Thiết kế App trên điện thoại
3.3.2 Thiết kế mô hình robot
Sơ đồ nguyên lý hệ thống
CHƯƠNG 4 THI CÔNG HỆ THỐNG
Giới thiệu
công hệ thống
Thi công App trên điện thoại
2.2 Thi công mô hình mạch
2.3 Thi công mô hình thiết bị
Trang 9LIỆT KÊ HÌNH VẼ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
LIỆT KÊ HÌNH VẼ
Hình Hình 2.1
Hình 2.2 Giao thức bảo mật
Hình 2.3 Bi u tư ng bluetooth
Hình 2.4 ng d ng Bluetooth đi u khi n c c thi t b ngo i vi.Hình 2.5 Ki n tr c ngăn x p c a h th ng Android
Hình 2.6 H th ng vi đi u khi n cơ bản
Hình 2.7 Sơ đồ và chức năng chân Ard
Hình 2.8 Giao ti p 2 h th ng dùng chuẩn UART
Hình 2.9 Nguyên lý ho t động chuẩn UART
Hình 2.10 C c chân giao ti p SPI trên Uno R3
Hình 2.11 K t n i giữa 2 thi t b dùng SPI
Hình 2.12 K t n i giữa nhi u thi t b dùng SPI
Hình 3.7 Sơ đồ nguyên lý đi u khi n động cơ
Hình 3.8 Sơ đồ nguyên lý kh i bluetooth
Hình 3.9 Module Bluetooth HC 06 thực t
Hình 3.10 Sự ti n d ng c a Node
Hình Sơ đồ chân c a Node MCU
Hình 3.12 Giao ti p giữa Node MCU và Uno R3
Hình 3.1 Sơ đồ n i dây vi đi u khi n trong Broad Arduino Uno R3Hình 3.14 Sơ đồ n i dây m ch n p trong Arduino Uno R3Hình 3.15 Sơ đồ nguyên lý mô hình
Hình 4.1 Công c App Inventor
Hình 4 Giao di n c a trang web đăng ký tài khoản google
Trang 10LIỆT KÊ HÌNH VẼ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Hình 4.3 Giao di n trang web MIT App InventorHình 4.4 Giao di n công c App Inventor 2
Trang 11LIỆT KÊ HÌNH VẼ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Hình 4.37 Sự ki n button đ đi u khi n đèn
Hình 4.38 Sự ki n button đ đi u khi n qu t
Hình 5.1 K t quả đ t đư c
Hình 5.1 K t quả đ t đư c
Trang 13hệ thống điện và loa trong nhà, chúng ta có thể dễ dàng ra lệnh mở đèn, mở nhạc, mở tivi, v.v Tuy công nghệ nghệ này không mới nhưng sắp tới sẽ là xu thế của một ngôi nhà thông mình nào cũng phải có.
Với ý tưởngtrênvà để khắc phục điểm yếu của hệ thống là : chi phí cao, không hỗ trợ Tiếng Việt Vì vậy, chúng em làm ra đề tài là để xây dựng lại mô hình trên và đặc biệt là
để ngừơi Việt dễ dàng sử dụng Bằng cách sử dụng và lập trình Arduino làm trung tâm
xử lý và các modul để tương tác với trung tâm điều khiển và thiết bị thông qua ứng dụng trên điện thoại
Nhóm thực hiện đề tàiPhạm Văn Huy
Trang 14CHƯƠNG 1 TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Chương 1 TỔNG QUAN
Trang 15BỊ TRONG NHÀ nhằm khai thác yếu tố giọng nói trong việc điều khiển thiết bị, vốn thường được thực hiện bằng tay Đồ án này giúp cho sinh viên hiểu rõ hơn về ứng dụng nhận dạng, xử lí giọng nói sẵn có của Google, được sử dụng trong việc điều khiển thiết bị của mình Qua quá trình tìm hiểu, nhận thấy Arduino thích hợp trong việc thực hiện đề tài này, nhóm đề tài đã khai thác sử dụng Arduino trong đồ án của mình Đề tài được ứng dụng để điều khiển nhà thông minh Điện thoại di động hiện nay đang được sử dụng rộng rãi, nên việc tận dụng thiết bị này trong việc điều khiển thiết bị cũng góp phần vào việc khai thác thêm giá trị sử dụng của điện thoại di động trong đời sống hàng ngày.
MỤC TIÊU
Mục tiêu của đề tài là thiết kế một mô hình thiết bị hoạt động bằng cách nhận lệnh từ giọng nói của con người thông qua điện thoại Smartphone Mô hình có thể ứng dụng trong việc điều khiển, giám sát những ngôi nhà hiện đại nào cũng phải có
Tìm hiều và lựa chọn nguồn dule kết nối Bluetooth, ifi và vi điều khiển
Viết ứng dụng Android để SmartPhone nhận tín hiệu từ giọng nói con người, xử
lý và đưa tín hiệu đến vi điều khiển
Trang 16CHƯƠNG 1 TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Thiết kế và thi công các module khối điều khiển:
và Module Bluetooth HCKết nối các module lại với nhau
Chạy thử, kiểm tra và cân chỉnh mô hình
Viết sách luận văn tốt nghiệp
Báo cáo đồ án tốt nghiệp
GIỚI HẠN
Không thể tích hợp AI hoặc Machine learning vào hệ thống
Ứng dụng chỉ tương thích với hệ điều hành Android
Việc nhận diện giọng nói đôi khi chưa chính xác do nói không chuẩn giọng
BỐ CỤC
Chương 1: Tổng quan
Chương này trình bày, đặt vấn đề dẫn nhập lý do chọn đề tài, mục êu, nộnghiên cứu, các giới hạn thông số và bố cục đồ án
Chương 2: Cơ Sở Lý Thuyết
Chương này trình bày khái quát về công nghệ Bluetooth, giới thiệu về Firebasecác thông số và ý nghĩa của các linh kiện chính sử dụng cho thiết kế bộ điều khiển (vi điều khiển
kiến thức cơ bản về hệ điều hành Android hỗ trợ cho lập trình phần mềm điều khiển trên điện thoại ở chương sau
Chương 3: Thiết Kế và Tính Toán
Chương này sẽ trình bày sơ đồ khối của bộ điều khiển, đưa ra các phương án thực hiện và lựa chọn phương án tối ưu nhất để thực hiện Chương này cũng trình bày các yêu cầu cần có đối với phần mềm điều khiển trên điện thoại từ đó làm cơ
sở để viế ứ ụ ên điện thoại Ngoài ra còn trình bày phần yêu cầu đối với phần mềm điều khiển của vi điều khiển và lưu đồ hoạt động của chương trình.Chương 4: Thi Công Hệ Thống
Chương này gồm có các nội dung sa Thi công App trên điện thoại, thi công mô hình, lưu đồ giải thuật phần mềm và quy trình thao tác
Trang 17CHƯƠNG 1 TỔNG QUAN
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Chương 5: Kết Quả, Nhận Xét và Đánh Giá
Chương này sẽ trình bày các kết quả đạt được sau thời gian thực hiện đề tài gồm
có hình ảnh về sản phẩm (bộ điều khiển và ứng dụng trên điện thoại), đánh giá sai số tính ổn định của hệ thống, thời gian đáp ứng của hệ thống tính dễ sử dụng, …
Chương 6: Kết Luận và Hướng Phát Triển
Chương này sẽ đư ững kết luận sau khi hoàn thành sản phẩm, các hướng phát triển của đề tài để có thể phát triển sản phẩm tốt hơn trong tương lai
Trang 18HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Chương 2 CƠ SỞ LÝ THUYẾT
Trang 19HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
2.1.1 Khái niệ ề
Hình 2.1 FirebaseFirebase là một dịch vụ cơ sở dữ liệu thời gian thực, hoạt động trên nền tảng đám mây được cung cấp bởi Google nhằm giúp các lập trình phát triển nhanh các ứng dụng bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu N u c n xây dựng một ứng dụng cho mobile ho c các thi t bị di động khác, mà bạn đang g p khó khăn vì không bi t ch n dịch vụ VPS nào, loại database gì thì Firebase s là dịch vụ dành cho bạn
2.1.2 Đặc điểm và tính năng:
Firebase lưu trữ dữ liệu database dưới dạng JSON và thực hiện đồng bộ database tới tất cả các client theo thời gian thực Cụ thể hơn là bạn có thể xây dựng được client đa nền tảng (cross platform client) và tất cả các client này s cùng sử dụng chung mộtdatabase đ n từ Firebase và có thể tự động cập nhật mỗi khi dữ liệu tro
được thêm mới ho c sửa đổi
Tự động tính toán quy mô ứng dụng của bạn, giúp bạn dễ dàng hơn rất nhiều mỗi khi
c n nâng cấp hay mở rộng dịch vụ Ngoài ra Firebase sử dụng NoSQL, giúp cho database của bạn s không bị bó buộc trong các bảng và các trường mà bạn có thể tùy
ý xây dựng database theo cấu trúc của riêng bạn
Cho phép bạn phân quyền một cách đơn giản bằng cú pháp tương tự như javascript.Khi ứng dụng của bạn muốn phát triển, bạn không c n lo lắng về việc nâng cấp máy chủ…Firebase s xử lý việc tự động cho bạn Các máy chủ của Firebase quản lý hàng triệu k t nối đồng thời và hàng tỉ lượt truy vấn mỗi tháng
Trang 20HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Các tính năng bả ậ
Firebase hoạt động dựa trên nền tảng cloud và thực hiện k t nối thông qua giao thức bảo mật SSL, chính vì vậy bạn s bớt lo lắng rất nhiều về việc bảo mật của dữ liệu cũng như đường truyền giữa client và server Không chỉ có vậy, việc cho phép phân quyền người dùng database bằng cú pháp javascipt cũng nâng cao hơn nhiều độ bảo mật cho ứng dụng của bạn, bởi chỉ những user mà bạn cho phép mới có thể có quyền chỉnh sửa cơ sở
dữ liệu
Hình 2.2 Giao thức bảo mật SSLLàm việ
Ứng dụng Firebase của bạn s duy trì tương tác bất chấp một số các vấn đề về internet xảy ra Trước khi bất kỳ dữ liệu được ghi đ n server thì tất cả dữ liệu lập tức s được
vi t vào một cơ sử dữ liệu Firebase ở local Ngay khi có thể k t nối lại, client đó s nhận bất kỳ thay đổi mà nó thi u và đồng bộ hoá nó với trạng thái hiện tại server.Xác thực người dùng
Với Firebase, bạn có thể dễ dàng xác thực người dùng từ ứng dụng của bạn trên Android, iOS và JavaScript SDKs chỉ với một vài đoạn mã Firebase đã xây dựng chức năng cho việc xác thực người dùng với Email, Facebook, Twitter, GitHub, Google, và xác thực
n c danh Các ứng dụng sử dụng chức năng xác thực của FireBase có thể giải quy t được vấn đề khi người dùng đăng nhập, nó s ti t kiện thời gian và rất nhiều các vấn đề phức tạp về ph n backend Hơn nữa bạn có thể tích hợp xác thực người dùng với các chức năng backend đã có sẵn dùng cus
Trang 21HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Các bạn có thể triển khai một ứng dụng nền web chỉ với vài giây với hệ thống Firebase
và các dữ liệu s được lưu trữ đám mây đồng thời được bảo mật thông qua giao thức truy cập SSL
Các ứng dụng s được cấp 1 tên miền dạng ho c bạn có thể trả tiền
để sử dụng tên miền của riêng mình
ểu khai siêu tố
Với Firebase bạn có thể giảm bớt rất nhiều thời gian cho việc vi t các dòng code để quản lý và đồng bộ cơ sở dữ liệu, m i việc s diễn ra hoàn toàn tự động với các API của Firebase Không chỉ có vậy Firebase còn hỗ trợ đã nền tảng nên bạn s càng đỡ mất thời gian rất nhiều khi ứng dụng bạn muốn xây dựng là ứng dụng đa nền tảng Không chỉ nhanh chóng trong việc xây dựng database, Google Firebase còn giúp ta đơn giản hóa quá trình đăng kí và đăng nhập vào ứng dụng bằng các sử dụng hệ thống xác thực do chính Firebase cung cấp
ự ổn đị
Firebase hoạt động dựa trên nền tảng Cloud đ n từ Google vì vậy h u như bạn không bao giờ phải lo lắng về việc sập server, tấn công mạng như DDOS, tốc độ k t nối lúc nhanh lúc chậm, … nữa
Giá thành
Google Firebase có rất nhiều gói dịch vụ với các mức dung lượng lưu trữ cũng như băng thông khác nhau với mức giá dao động từ Free đ n $1500 đủ để đáp ứng được nhu c u của tất cả các đối tượng Chính vì vậy bạn có thể lựa ch n gói dịch vụ phù hợp nhất với nhu c u của mình Điều này giúp bạn tới ưu hóa được vốn đ u tư và vận hành của mình tùy theo số lượng người sử dụng Ngoài ra bạn còn không mất chi phí để bảo trì, nâng cấp, khắc phục các sự cố
CÔNG NGHỆ BLUETOOTH
.1 Khái niệm về bluetooth
Bluetooth là công nghệ không dây cho phép các thi t bị điện, điện tử giao ti p vớitrong khoảng cách ngắn, bằng sóng vô tuy n qua băng t n chung ISM
trong dãy t ng 2.40 – 2.48 GHz và có khả năng truyền tải gi ng nói
và dữ liệu
Trang 22HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Bluetooth được thi t k nhằm mục đích thay th dây cable giữa máy tính và các thi t bị truyền thông cá nhân, k t nối vô tuy n giữa các thi t bị điện tử lại với nhau một cách thuận lợi với giá thành rẻ
Khi được kích hoạt Bluetooth có thể tự động định vị những thi t bị khác có chung công nghệ trong vùng xung quanh và bắt đ u k t nối với chúng Nó được định hướng sử dụng cho việc truyền dữ liệu lẫn ti ng nói
Hình 2.3 Biểu tượng bluetooth
Công nghệ không dây Bluetooth là một tiêu chuẩn trong thực t , dùng cho các thi t bị
cỡ nhỏ, chi phí thấp, sóng ngắn liên k t giữa PC di động, điện thoại di động và giữa các máy tính với nhau
Bluetooth ít tiêu hao năng lượng và có giá thành thấp nhưng tốc độ của nó chậm hơn khá nhiều so với mạng không dây Wi-Fi Các Smartphone và máy tính bảng đã trang bị
ức năng hỗ trợ Bluetooth vào hệ điều hành của chúng để kích hoạt khả năng hoạt độnvớiđồng bộ hoá dữ liệu với điện thoại di động (ĐTDĐ) và thi t bị hỗ trợ cá nhân PDA,
in ấn với các máy in hỗ trợ Bluetooth và k t nối đ n các thi t bị khác
Hình Ứng dụng Bluetooth điều khiển các thi t bị ngoại vi
Trang 23HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Các đặc điểm c a Bluetooth
iêu thụ năng lượng thấp, cho phép ứng dụng được trong nhiều loại thi t
bị, bao gồm cả các thi t bị c m tay và điện thoại di động
Bluetooth sử dụng băng t n đăng ký 2.4Ghz trên dãy băng t n ISM Tốc độ truyền
dữ liệu có thể đạt tới mức tối đa 1Mbps (do sử dụng t n số cao) mà các thi t bị không
c n phải lấy trực ti p 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 các chuẩn “Bluetooth profiles”, do đó có thể độc lập về ph n cứng cũng như hệ điều hành sử dụng.Bluetooth được dùng trong giao ti p dữ liệu ti ng nói: có 3 kênh để truyền ti ng nói
là 7 kênh để truyền dữ liệu trong một mạng cá nhân
Tính an toàn và bảo mật được tích hợp với sự xác nhận và mã hóa Nó có t h tương ínthích cao, được nhiều nhà sản xuất ph n cứng cũng như ph n mềm hỗ trợ
Ưu nhược điể
Ưu điểm:
Thay th hoàn toàn dây nối
Bảo mật an toàn với công nghệ mã hóa trong Một khi k t nối được thi t lập thì khó có một thi t bị nào có thể nghe trộm ho c lấy cắp dữ liệu
Các thi t bị có thể k t nối với nhau trong vòng 20m mà không c n trực diện (hiện nay có loại Bluetooth k t nối lên đ n 100m)
K t nối điện thoại và tai nghe Bluetooth khi n cho việc nghe máy khi lái xe ho c bận việc dễ dàng
Thời gian thi t lập lâu
GIỚI THIỆU VỀ HỆ ĐIỀU HÀNH ANDROID
.1 Android là gì?
Android là hệ điều hành trên điện thoại di động (và hiện nay là cả trên một số đ u phát
TV) phát triển bởi Google và dựa trên nền tảng Linux Trước đây, Android được phát triển bởi công ty liên hợp Android (sau đó được Google mua lại vào năm 2005)
Các nhà phát triển vi t ứng dụng cho Android dựa trên ngôn ngữ Java Sự ra mắt của Android vào ngày 5 tháng 11 năm 2007 gắn với sự thành lập của liên minh thi t bị c m
Trang 24HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
tay mã nguồn mở, bao gồm 78 công ty ph n cứng, ph n mềm và viễn thông nhằm mục đính tạo nên một chuẩn mở cho điện thoại di động trong tương lai
Lịch s phát triển c a Android
Tháng 10/2003, Android (inc) ra đời như một hãng ph n mềm, với mục tiêu tạo ra nhữthi t bị thông minh, đáp ứng nhu c u của người dùng
Tháng 8/2005, gã khổng lồ Google mua lại Android với toàn bộ nhân viên
Tháng – Liên minh thi t bị c m tay mở rộng ra đời với các thành viên Texas Instrum Tập đoàn
và T
Tháng 10/2008, hệ điều hành Android đã chính thức trở thành ph n mềm mã nguồn mở.Tháng 11/2008, Liên minh OHA ra mắt gói phát triển ph n mềm Android SDK cho nhà lập trình Theo đó, các công ty thứ ba được phép thêm những ứng dụng của riêng của
h vào Android và bán chúng mà không c n phải hỏi ý ki n Google
háng 12/2008, có thêm 14 thành viên mới gia nhập dự án Android được công bố, gồm
Android Cupcake 1.5, tháng 4/2009: Phiên bản này có một số tính năng đáng chú ý ư: khả năng ghi lại và xem video thông qua ch độ máy ghi hình, tải video lên YouTube và ảnh lên Picasa trực ti p từ điện thoại, tích hợp bàn phím ảo với khả năng đoán trước văn bản, tự động k t nối với một thi t bị Bluetooth trong một khoảng cách nhất định, các widget và thư mục mới có thể cài đ t linh động trên màn hình chủ.Android Donut 1.6, tháng 9/2009: Phiên bản này giúp nâng cao trải nghiệm trên kho ứng dụng Android Market, tích hợp giao diện tùy bi n cho phép người dùng xóa nhiều ảnh cùng lúc, nâng cấp Voice Search, nâng cấp khả năng tìm ki m bookmarks, history, contacts và web trên màn hình chủ, bước đ u hỗ trợ màn hình độ phân giải WVGA.Android Eclair 2.0 + 2.1, tháng 10/2009: Phiên bản này có sự cải thiện rõ rệt trong giao diện người dùng, tối ưu hóa tốc độ ph n cứng, hỗ trợ nhiều kích cỡ và độ phân giải màn hình hơn, thay đổi giao diện duyệt web và hỗ trợ chuẩn HTML5, Exchange ActiveSync 2.5, nâng cấp Google Maps 3.1.2, camera zoom kĩ thuật số tích hợp đèn flash, nâng cấp bàn phím ảo và k t nố
Trang 25HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Android Froyo 2.2, tháng 5/2010: Phiên bản này chú tr ng nâng cấp tốc độ xử lí, giới thiệu engine Chrome V8 JavaScript, hỗ trợ Adobe Flash10.1, thêm tính năng tạo điểm truy cập Wi Fi Một tính năng đáng chú ý khác hỗ trợ chuyển đổi nhanh chóng giữa các ngôn ngữ và từ điển trên bàn phím đồng thời cho phép cài đ t và cập nhật ứng dụng ở các thi t bị mở rộng bộ nhớ Một trong những smartphone đ u tiên chạy phiên bản Android 2.2 Froyo là LG Optimus One
Android Gingerbread 2.3, tháng 12/2010: Phiên bản này đã nâng cấp đáng kể giao diện người dùng, cải thiện bàn phím ảo, thêm tính năng copy/paste, hỗ trợ công nghệ giao ti p t m sóng ngắn NFC, hỗ trợ chuẩn video WebM và nâng cao tính năng copy–paste Cùng với phiên bản Gingerbread, Google cũng ra mắt điện thoại đ u tiên của hãng
sử dụng nền tảng này là Google Nexus S
Android Honeycomb 3.0, tháng 2/2011: Đây là phiên bản hệ điều hành dành riêng cho máy tính bảng tablet với giao diện mới tối ưu hóa cho tablet, từ các thao tác đều phụ thuộc màn hình cảm ứng (như lướt web, duyệt mail ) Honeycomb hỗ trợ bộ xử lí đa nhân và xử lý đồ h a đồng thời hỗ trợ nhiều màn hình home khác nhau, cho phép người dùng dễ dàng tùy bi n giao diện n u muốn
Android 4.0 Ice Cream Sandwich, cuối năm 2011: Đây cũng là l n đ u tiên Google hợp nhất hệ điều hành dành cho smartphone và cho máy tính bảng vào làm một Android 4.0 cũng nhắm đ n việc duyệt web nhanh hơn, tối ưu hóa hiệu suất hoạt động của thi t
bị, kéo dài thời gian dùng pin…
Android Jelly Bean 4.1 +4.2, năm 201 Quan tr ng hơn h t của Jelly Bean không phải là về giao diện hay ứng dụng mới mà về Project Butter giúp mang lại độ mượt chưa từng có cho Android Theo như giải thích của Google, độ mượt này có được là nhờ vào
dự án Butter
Đi kèm những tính năng mới như hỗ trợ k t nối Bluetooth Smart, bộ API OpenGL ES 3.0, bổ sung tính năng sử dụng Wi Fi để định
vị ngay cả khi người dùng tắt k t nối này đi cùng nhiều thay đổi lớn nhỏ khác
: Với các cải ti n mới ch độ toàn màn hình Immersive Mode, hiệu ứng chuyển cảnh màn hình –
Framework, Chromium WebView, NFC, Cổng hồng ngoại –
Với những cai ti n về chất lượng pin, giao diện thanh thoát nhẹ nhàng theo thi t k Material Design, Android Runtime (ART) đã được
sử dụng m c định Về thời lượng pin, Android L cũng bổ sung nhiều ch độ linh hoạt
để người dung có thể kiểm soát thời gian sử dụng pin dễ dàng hơn
Google đã giới thiệu đ n người dùng phiên bản Android k ti p với mã hiệu Marshmallow (kẹo dẻo) với những thay đổi đợt cập nhật
Trang 26HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
này tuy nhỏ nhưng thiên về xu hướng hoàn thiện tương tác người dùng, cho một trải nghiệm tuyệt vời hơn Ngoài ra Android 6 cũng mang lại cho người dùng một số tính năng mới như: sử dụng thẻ SD cắm ngoài như bộ nhớ trong hay chính thức hỗ trợ nhận diện vân tay và Google Pay
Android 7.0 hỗ trợ một số tính năng mới đáng kểnhư: Hỗ trợ Menu chuyển đổi nhanh giữa các cài đ t hệ thống Trả lời nhanh tin nhắn
từ thanh thông báo Ch độ chia đôi màn hình Trung tâm thông báo được làm mới Ngoài
ra còn một số tính năng đáng chú ý như: hỗ trợ ch độ thực t ảo với VR, tích hợp ch
độ ti t kiệm dữ liệu, ch độ ti t kiệm pin Doze được cải ti n
Một số tính năng mới của Android 8.0 Oreo như: Khởi động máy nhanh hơn Giảm bớt hoạt động chạy ng m của các app ít dùng, giúp máy ti t kiệm pin
và chạy nhanh hơn Autofill: tự động đăng nhập cực nhanh vào các app mà bạn đã đăng nhập trước đó Picture Picture: sử dụng hai app cùng lúc Notification Dots: có chấm tròn thông báo Noti trên icon của app và hiện được những nội dung mới ngay phía trên icon mà không c n mở app ndroid Instant Apps: chức năng dùng thử app thông qua trình duyệt web mà không c n cài đ t.Google Play Protect: tích hợp sẵn Tự động quét các app trong Play Store và app trong máy để bảo vệ bạn khỏi các hành vi xấu của virus, malware, hacker Emoji: Thi t k lại toàn bộ Emoji cho đẹp hơn, có thêm 60 Emoji mới.Adaptive Icons: cho phép các hãng điện thoại ch n các loại hình icon ví dụ như icon vuông, icon tròn, nền trong suốt In app Shortcut Pinning: Đánh dấu ("pin") một trang bất kỳ trong app
.4 Ưu nhược điểm c a Android
Ưu đi m c a android:
Tính linh ho t: Android k thừa tính mở từ Linux, hay nói cụ thể hơn là google và Android mang đ n một th giới hoàn toàn mở Với Apple, người dùng dường như bị cột
ch t với những gì hãng này cho phép, từ tính năng chuẩn đ n ứng dụng – chỉ những ứng dụng được Apple công nhận mới có thể hoạt động trên iPhone một cách hợp pháp Trong khi đó, với Android, người dùng được tự do với những gì h muốn, các nhà phát triển được tự do hơn để tạo và thương mại các ứng dụng, và các nhà sản xuất có thể tùy bi n lại những trải nghiệm Android cho khách hàng của riêng mình
Gia tăng về số lượng thi t bị: Một thực t là, chỉ có iPhone và các sản phẩm mang nhãn Apple mới sử dụng iOS Đó có thể là sản phẩm tốt nhất th giới, nhưng n u chỉ có duy nhất một thi t bị như th thì khách hàng s cảm thấy h có quá ít sự lựa ch n Với Android, sự lựa ch n có ph n thoải mái hơn
Nhiều công c dành cho người dùng hơn: Với App inventer, Google đã thậm chí đ t tay vào người dùng nhiều sức mạnh hơn Với rất nhiều bộ công cụ phát triển dạng tự tay thực hiện được google và các đối tác cung cấp, chưa bao giờ việc tạo ứng dụng lại dễ dàng đ n th với người dùng và cả lập trình viên
Trang 27HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Hiệu ng t thương hiệu Google: Rõ ràng là Android không hề đơn độc bởi hiện có vài HĐH trên nền Linux khác cũng đang làm mưa làm gió trên vùng đất di động, diển hình là Bada của Samsung hay MeeGo của liên doanh Nokia – Intel Điểm khác biệt nằm ở chỗ Android được google “chống lưng và tiền tố Google đi cùng Android là 1 ” thương hiệu đáng giá
Như c đi m c a Android:
Thời lượng s d ng pin th p: H u h t các thi t bị Android đều có thời lượng pin thấp
và đây là một trong những vấn đề quan tr ng mà Google và các nhà sản xuất thi t bị Android đang chú tr ng giải quy t
Anhdroid đa năng nhưng kh kích ho t: trải nghiệm Android l n đ u, bạn s thấy nhiều thứ đang hoạt động Có hàng loạt widget, ứng dụng và lựa ch n mà bạn chưa
hề bi t đ n
N i dung giải trí: google đang không ngừng cải ti n nội dung của Play Store, cung cấp ương trình giải trí truyền hình và thêm nhiều phim cho thuê trên thi t bị Android… Nhưng so sánh với iTunes, sự lựa ch n vẫn còn thua xa những gì bạn nhận được trên iOS Khi nhắc đ n lĩnh vực âm nhạc, Google play còn thi u vắng nội dung của Warner, một trong bốn hãng ghi âm lớn nhất hành tinh
Ph kiện cho thi t bị Android chưa thật sự tốt: Dễ nhận thấy, giới sản xuất phụ kiện dường như kém quan tâm đ n Android Trên thị trường có rất nhiều phụ kiện dành cho iphone mà không dành cho Android
D nhi m ph n mềm đ c h i và virus: Android hoạt động như hệ điều hành mở và xuất hiện những kho ứng dụng không chính thức Bởi vậy, thi t bị Android dễ nhiễm malware ho c ứng dụng giả mạo
trúc cơ ả ệ điề hành
Android gồm 5 t ng chính sau được chứa trong 4 lớp:
Trang 28HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Hình 2.5 Ki n trúc ngăn x p của hệ thống Android
T ng h t nhân Linux (Linux Kernel):
Hệ điều hành Android được phát triển dựa trên hạt nhân Linux, cụ thể là hạt nhân Linux phiên bản 2.6, điều đó được thể hiện ở lớp dưới cùng này Tất cả m i hoạt động của điện thoại muốn thi hành thì đều được thực hiện ở mức cấp thấp ở lớp này bao gồm quản lý
bộ nhớ (memory management), giao ti p với ph n cứng (driver model), thực hiện bảo mật (security), quản lý ti n trình (process)
Tuy được phát triển dựa vào nhân Linux nhưng thực ra nhân Linux đã được nâng cấp
và sửa đổi rất nhiều để phù hợp với tính chất của những thi t bị c m tay như hạn ch về
bộ vi xử lý, dung lượng của bộ nhớ, kích thước màn hình, nhu c u k t nối mạng không dây,…
T ng này có các thành ph n chủ y u:
river: Điều khiển việc hiển thị lên màn hình cũng như thu nhận những điều khiển của người sử dụng lên màn hình (di chuyển, cảm ứng
Camera Driver: Điều khiển hoạt động của camera, nhận dữ liệu từ camera trả về
th Driver: Điều khiển thi t bị phát và thu Bluetooth
USB driver: Quản lý hoạt động của các cổng giao ti p USB
Keypad driver: Điều khiển hoạt động của bàn phím cứng trên máy
Wifi Driver: Quan lý thu phát sóng wifi
Điều khiển các bộ thu phát âm thanh, giải mã các tín hiệu dạng audio thành tín hiệu số và ngược lại
Binder IPC Driver: Chịu trách nhiệm về việc k t nối và liên lạc với mạng vô tuy n như GSM, 3G, 4G để đảm bảo những chức năng truyền thông được thực hiện
Trang 29HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
M-System Driver: Quản lý việc đ c ghi… lên các thi t bị nhớ như thẻ SD, flash.Power management: Quản lý, giám sát việc tiêu thụ điện năng
T ng thư viện (Libraries):
Bao gồm các thư viện C/C++ được sử dụng bởi các thành ph n khác nhau trong hệ thống Android Một số các thư viện cơ bản:
System C library: Sử dụng hệ thống C chuẩn, được điều hưởng cho những thi t
bị nền tảng Linux nhúng
Media framework: Dựa trên nền tảng PacketVideo’s OpenCore, các thư viện hỗ trợ phát và ghi cho các định dạng âm thanh, hình ảnh thông dụng bao gồm MPEG4, H.264, MP3, ACC, MR, JPG, và PNG
Surface manager: Quản lý việc truy xuất vào hệ thống hiển thị
cấp k thuật duyệt wed hiện đại thông qua việc k t hợp sức mạnh giữa trình duyệt wed của Android với một trang wed nhúng
SGL: Cung cấp các công cụ đồ h a 2D
OpenGL/ES: Thi hành các hàm API dựa trên thư viện đồ h a OpenGL/ES 1.0, cung cấp công cụ đồ h a 3D đối với ph n cứng được hỗ trợ và ph n mềm
Free Type: Bộ tạo phông chữ dạng bitmap và vector
SQLite: Hệ quản lý cơ sở dữ liệu cho các ứng dụng với đ c điểm chạy nhẹ nhàng
và việc quản lý mạnh
Ph n này chứa các thư viện mà một chương trình vi t bằng ngôn ngữ Java có thể hoạt động Ph n này có hai bộ phận tương tự như mô hình chạy Jave trên máy tính thường Thứ nhất là các thư viện lõi (Core library), chứa các lớp như JAVA IO, Collections, File Access Thứ hai là một máy ảo java (Dalvik Virtual Machine)
M c dù cũng được vi t từ ngôn ngữ Java nhưng một ứng dụng Java của hệ điều hành Android không được chạy bằng JRE của Sun (nay là Oracle) mà chạy bằng máy ảo dalvik do Google phát triển Các VM Dalvik thực thi các tập tin thực thi Dalvik (dex) Định dạng được tối ưu hóa cho bộ nhớ tối thiểu VM là dựa trên nền tảng thanh ghi, và chạy các lớp đã được biên dịch bởi một trình biên dịch java để chuyển đổi thành các định dạng dex Các VM Dalvik dựa vào nhân Linux cho các chức năng cơ bản như luồng
và quản lý bộ nhớ thấp
Bằng việc phát triển trên nền tảng mã nguồn mở (Open source code), Android cung cấp cho các nhà phát triển ph n mềm khả năng xây dựng các ứng dụng cực kỳ phong phú, sinh động và sáng tạo H được tận dụng tự do các tài nguyên về thi t bị ph n cứng, thông tin địa điểm truy cập, các dịch vụ chạy, các thi t lập báo cáo, thông báo trạng
Trang 30HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
thái,… Nhà phát triển có thể truy cập vào các hàm API cùng một khuôn khổ được sử dụng bởi các ứng dụng lõi Các ki n trúc thi t k đơn giản hóa việc sử dụng lại các thành
ph n
T ng Applycations Framework bao gồm nhiều dịch vụ cho việc quản lý:
Activity manager: Quản lý vòng đời (lifecycle) của các ứng dụng điều hướng cho Window Manager: Cung cấp khả năng quản lý giao diện người dùng
View System: Tập hợp rất nhiều các view có khả năng k thừa lẫn nhau để thi t
k ph n giao diện ứng dụng như: TextView, EditText, GirdView, …
Cho phép các ứng dụng truy xuất dữ liệu từ các ứng khác (tính
có thể có nhiều chương trình cùng chạy một lúc, tuy nhiên, với mỗi ứng dụng thì có duy nhất một thực thể (instance) được phép chạy mà thôi
Các ứng dụng được gán số ID của người sử dụng nhằm phân định quyền hạn khi
sử dụng tài nguyên, cấu hình ph n cứng và hệ thống
Android là một hệ điều hành có tính mở, khác với nhiều hệ điều hành di động khác, android cho phép một ứng dụng bên thứ ba được phép chạy nền
Ứng dụng không có điểm vào cố định, không có phương thức main để bắt đ u
Trang 31HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Công cụ xấp xỉ đường cong (Curve fitting toolbox):
k thuật mô hình phi tham số như splines, nội suy (interpolation) và làm mượt MỘT SỐ MODULE SỬ DỤNG TRONG MÔ HÌNH:
Vi điều khiển
Giới thiệu về vi điều khiển:
Vi điều khiển là một máy tính được tích hợp trên một chíp, nó thường được sử dụng để điều khiển các thi t bị điện tử Vi điều khiển, thực chất, là một hệ thống bao gồm một
xử lý có hiệu suất đủ dùng và giá thành thấp (khác với các bộ vi xử lý đa năng dùng trong máy tính) k t hợp với các khối ngoại vi như bộ nhớ, các mô đun vào/ra, các mô đun bi n đổi số sang tương tự và tương tự sang số, Ở máy tính thì các mô đun thường được xây dựng bởi các chíp và mạch ngoài
Hình 2.6 Hệ thống vi điều khiển cơ bản
Có rất nhiều hãng sản xuất vi điều khiển, nổi ti ng là TI, Microchip, Atmel, Mỗi loại đều có ưu và nhược điểm khác nhau, vì giới hạn của đề tài này dùng chức năng vi điều khiển không quá phức tạp nên h u h t các vi điều khiển đều có thể dùng được, ở đây ta cân nhắc về vấn đề thông dụng, nhỏ g n và khả năng phát triển trong tương lai của vi điều khiển nên ta ch n dòng vi điều khiển AVR của hãng Atmel
Trang 32HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
vi điều khiển Arduino Uno R3
Arduino Uno được xây dựng với phân nhân là vi điều khiển ATmega328P sử dụng thạch anh có chu kì dao động là 16 MHz Với vi điều khiển này, ta có tổng cộng 14 pin (ngõ)
ra / vào được đánh số từ 0 tới 13 (trong đó có 6 pin PWM, được đánh dấu ~ trước mã số của pin) Song song đó, ta có thêm 6 pin nhận tín hiệu analog được đánh kí hiệu từ A0 A5, 6 pin này cũng có thể sử dụng được như các pin ra / vào bình thường (như pin 0 13) Ở các pin được đề cập, pin 13 là pin đ c biệt vì nối trực ti p với LED trạng thái trên
Hình 2.7 Sơ đồ và chức năng chân Arduino
ột vài thông số của Arduino Uno
sử dụng vi điều khiển Atmega328PĐiện áp hoạt động: 5V
T n số hoạt động: 16 MHz
Dòng điện áp: 3
Điện áp giới hạn: 7
Số chân Analog:
Trang 33HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Số chân Digital: 14 (6 chân PWM)
Giao ti p UART: 1 bộ UART
Giao ti p SPI : 1 bộ SPI
Giao ti p I2C : 2 bộ I2C
òng tối đa trên mỗi chân I/O: 2
Các chân năng lượng:
GND (Ground): cực âm của nguồn điện cấp cho Arduino
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
để cấp nguồn ngoài cho Arduino
Bộ nhớ của Arduino Uno R3
32KB bộ nhớ Flash: những đoạn lệnh bạn lập trình s được lưu trữ trong bộ nhớ Flash của vi điều khiển Thường thì s có khoảng vài KB trong số này
s được dùng cho bootloader nhưng đừng lo, bạn hi m khi nào c n quá 20KB bộ nhớ này đâu
KB cho SRAM (Static Random Access Memory): giá trị các bi n khai báo khi lập trình s lưu ở đây Khai báo càng nhiều bi n thì càng c n nhiều bộ nhớ Chú ý: khi mất điện, dữ liệu trên SRAM s bị mất
Memory): tương tự như một chi c ổ cứng mini – nơi có thể đ c và ghi dữ liệu vào đây mà không phải lo bị mất khi mất điện giống như dữ liệu trên SRAM.iao ti p UART trong Arduino Uno R3
Khái niệm giao ti p
UART là chuẩn truyền thông nối ti p bất đồng bộ (Universal Asynchronous Receiver – Transmitter) dùng để truyền nhận dữ liệu giữa 2 hệ thống và không có phân bi t chủ
tớ, giữa các hệ thống là ngang cấp nhau
Chuẩn UART gồm một đường phát dữ liệu và một đường nhận dữ liệu Để truyền
dữ liệu giữa 2 hệ thống với nhau thì cả hai hệ thống phải tự tạo xung clock (CK) có cùng
t n số (Tốc độ baud)
Trang 34HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Hình 2.8 Giao ti p 2 hệ thống dùng chuẩn Nguyên lý hoạt động:
Khi ở trạng thái chờ, mức điện áp của thi t bị truyền ở mức 1 (high) Khi bắt đ u truyền
dữ liệu, START bit s chuyển từ 1 xuống 0 để báo hiệu cho thi t bị nhận là quá trình truyền dữ liệu sắp xảy ra Sau START bit là đ n các bit dữ liệu D0 D7 Sau khi truyền
h t dữ liệu thì đ n Bit Parity để bộ nhận kiểm tra tính đúng đắn của dữ liệu truyền Cuối cùng là STOP bit là 1 báo cho thi t bị nhận rằng các bit đã được gửi xong Thi t bị nhận
s ti n hành kiểm tra khung truyền nhằm đảm báo tính đúng đắn của dữ liệu
Hình 2.9 Nguyên lý hoạt động chuẩn Giao ti p
Trên Arduino Uno có hổ trợmột chuẩn giao ti p UART đó là 1chân D0 (RX) dùng
để nhận dữ liệu chuẩn TTL và 1 chân D1(TX) dùng để truyền dữ liệu chuẩn TTL
d Giao ti p SPI trong Arduino Uno R3:
Khái niệm giao ti p
SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối ti p tốc độ cao do hãng Motorola đề xuất Đây là kiểu truyền thông Master Slave, trong đó có 1 chip Master điều phối quá trình tuyền thông và các chip Slaves được điều khiển bởi Master vì th truyền thông chỉ xảy ra giữa Master và Slave SPI là một cách truyền song công (full duplex) nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời SPI đôi khi được g i là chuẩn truyền thông “4 dây” vì có 4 đường giao ti p trong chuẩn
Trang 35HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
này đó là SCK (Serial Clock), MISO (Master Input Slave Output), MOSI (Master Ouput Slave Input) và SS (Slave Select)
Hình 2.10 Các chân giao ti p SPI trên Uno R3
Xung giữ nhịp cho giao ti p SPI, vì SPI là chuẩn truyền đồng bộ nên c n đường giữ nhịp, mỗi nhịp trên chân SCK báo 1 bit dữ liệu đ n ho c đi Đây là điểm khác biệt với truyền thông không đồng bộ mà chúng ta đã bi t trong chuẩn UART Sự tồn tại của chân SCK giúp quá trình tuyền ít bị lỗi và vì th tốc độ truyền của SPI có thể đạt rất cao Xung nhịp chỉ được tạo ra bởi chip Master
còn n u là chip Slave thì MISO lại là Output MISO của Master và các Slaves
chip Master thì đây là đường Output còn n u là chip Slave thì MOSI là Input MOSI của Master và các Slaves được nối trực ti p với nhau
đường SS s ở mức cao khi không làm việc N u chip Master kéo đường SS của một Slave nào đó xuống mức thấp thì việc giao ti p s xảy ra giữa Master và Slave đó Chỉ có 1 đường SS trên mỗi Slave nhưng có thể có nhiều đường điều khiển SS trên Master, tùy thuộc vào thi t k của người dùng
Trang 36HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Ta có thể kiểm soát 1 ho c nhiều thi t bị sử dụng SPI Ví dụ dưới đây là 1 thi t bị
Hình 2.11 K t nối giữa 2 thi t bị dùng SPI
Dữ liệu được truyền qua lại dữa 2 đường MISO và MOSI Điều này chỉ thực hiện được khi Dòng SS được thi t lập ở mức thấp LOW Nói cách khác, để giao ti p với một thi t
bị SPI chúng ta c n thi t lập các dòng SS với thi t bị ở mức thấp LOW, sau đó giao ti p với nó, sau đó thi t lập các dòng SS trở lại mức cao HIGH N u chúng ta có hai ho c nhiều thi t bị SPI trên cùng 1 bus, chúng s được k t nối như sau:
Hình 2.12 K t nối giữa nhiều thi t bị dùng SPI
Chú ý, ở đây có hai dòng SS với mỗi 1 thi t bị chỉ sử dụng 1 dòng SS Bạn có thể sử dụng bất kỳ chân digital nào trên Arduino của bạn cho dòng SS Chỉ c n nhớ là để tất
cả các dòng SS ở mức cao HIGH , "ngoại trừ" dòng SS mà bạn muốn k t nối với các thi t bị SPI vào thời điểm đó
Trang 37HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Trên thị trường hiện nay có khá nhiều module Bluetooth hỗ trợ vi điều khiểu giao ti pvớithi tbịkhác thông k t nối một số thường được sử dụng trong thực t như: module Bluetooth HC
Smart Module,… Tuy nhiên, module Bluetooth HC 06 là lựa ch n tối ưu cho đồ án này vì:
Giá thành rẻ hơn so với các Module khác
Tốc độ hoạt động phù hợp với truyền dữ liệu điều khiển thi t bị
Dễ dàng ở thị trường Việt
Được nhiều người sử dụng và đánh giá là rất ổn định
Gi i thi u module Bluetooth HC06
06 đượ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ứ trên module HC
Sơ đồ chân HC 06 gồm có:
: Chân này để ch n ch độ hoạt động AT Mode ho c
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
Nối với chân nguồn GND
Đây là hai chân UART để giao ti p module hoạt động ở mức logic 3.3V.Chân này chỉ c n thả nổi và không c n quan tâm đ n chân này
Sơ đ chân c a module HC06:
Hình 2.13
Đ c đi m c a module Bluetooth HC06
Trang 38HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Thi t lập m c định: Baud rate: 9600, N, 8, 1 Pairing code: 1234
odule này có 2 ch độ làm việc (có thể tùy chỉnh 2 ch độ đó thông qua chân key 34 của nó):
để cho chúng ta có thể chuyển đổi module hoạt động trong ch độ Data Mode :
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 9600 Ch độ này khá hữu ích khi 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ằng cách đư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 thi t lập l n cuối cùng
Vì th 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 độ Data Mode, HC 06 chỉ có thể cấu hình ở ch độ SLAVE : 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, ta s có 1 cổng serial từ xa hoạt động ở baud rate 9600
Trang 39HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
Hiện tại thì đã có tới 14 phiên bản của ESP8266, quá nhiều sự lựa ch n cho chúng ta Nhưng vì ở Việt Nam chỉ có 2 phiên bản ESP8266 phổ bi n hiện nay đó là ESP 01 và 12.Tuy nhiên, tôi ch n Module sử dụng là ESP 12 vì:
Phiên bản mới nhất
Có nhiều chân I/O
Hỗ trợ chuẩn truyền nhận dữ liệu cả SPI và UART
Gi i thi u module ESP
Mạch thu phát Wifi Soc ESP8266 ESP có nhân xử lý bên trong là IC Wifi SoC ESP8266, thường được sử dụng trong các ứng dụng k t nối wifi, IoT hiện nay
Sơ đồ chân và chức năng
Hình 2.14 Sơ đồ chân và chức năng
Đ c đi m c a
1 x User button khi khởi động module, nhấn phím này s đưa chip về
mode để upload firmware
1xRed LED có thể lập trình được ( nhấp nháy khi có tín hiệu ch ng hạn…),Tích hợp chuyển đổi điện áp tín hiệu từ 5V sang 3.3V cho UART và chân Reset,
lý do là esp8266 chỉ chạy ở điện áp 3.3V,
Tích hợp IC ổn áp 3.3V, 500mA
2 điot bảo vệ chống cấp ngược nguồn
Trang 40HƯƠNG 2 CƠ SỞ LÝ THUYẾT
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP –
ic), có thể sử dụng các giao ti p I2C h c SPI
Tính năng:
Sử dụng nguồn 3.3v
Tích hợp anten PCB trace trên module
Tiêu chuẩn wifi : 802.11b/g/n, với t n số 2.4GHz và hổ trợ bảo mật WPA/WPA2Khoảng cách giữa các chân 2mm
C c ch đ ho t đ ng:
ESP8266 có ba ch độ hoạt động là Station, Access Point và cả hai ch độ này Ở ch
độ Station hi t bị k t nối vào mạng WIFI được g i là station (trạm) Việc k t nối vào mạng Wifi được hỗ trợ bởi một access point (AP), một AP có chức năng như một hub nhưng dùng cho nhiều station Ch độ Access Point thì được hiểu là một điển truy cập cho các Station