TỔNG QUAN VỀ ĐỀ TÀI
Đặt vấn đề
CHƯƠNG 1 TỔNG QUAN VỀ ĐỀ TÀI
Chương này giới thi u t ng quan v ệ ổ ề Smart Battery, đưa ra các nhiệm v và yêu ụ cầu k ỹthuật đồng th i trình bày nguyên lý hoờ ạt động c a Smart Battery ủ 1.2 Đặ ấn đềt v
Pin thông minh (Smart Battery) là một module pin được thi t k v i công ngh ế ế ớ ệ cảm bi n và h ế ệthống quản lý năng lượng thông minh để cung cấp nhiều tính năng và lợi ích hơn so với pin truy n th ng ề ố
Các chức năng chính của Pin thông minh g m giám sát các thông s ồ ố điện, nhiệt độ ủ c a từng tế bào (cell), quản lý quá trình nạp/xả, điều khiển và vận hành tối ưu
M t s thông s ộ ố ố chính như trạng thái n p x (state of chargạ ả e - SOC), tình tr ng sạ ức kh e c a pin (state of health - SOH), nhiỏ ủ ệt độ trong t ế bào là thường không đo trực tiếp được Mặc dù các thông số này đóng vai trò quan trọng trong việc quản lý, v n hành h ậ ệthống ắc quy Do đó, các thông s này cố ần các phương pháp đo lường gián tiếp Phương pháp sạc/xả đóng vai trò quan trọng trong việc đảm b o an toàn ả v n ậ hành cũng như tuổi th cho họ ệ thống pin N u s c nhanh thì th i gian c quy ế ạ ờ ắ đầy dung lượng sẽ ngắn và qua đó tăng tính sẵn sàng cung cấp năng lượng của c ắ quy Tuy nhiên s c quá nhanh có th dạ ể ẫn đến các ảnh hưởng tiêu cực như tăng tổn thất và tăng già hóa ắc quy, thậm chí có thể dẫn đến quá nhiệt (overheating) hoặc quá l nh (supercooling) Khi nhiạ ệt độ tăng cao quá hoặc th p quá ấ đều dẫn đến giảm tuổi thọ cũng như gây nguy hi m cho h ể ệthống pin
1.2.2 Pin Lithium ion là gì?
Pin Lithium ion hay còn gọi là pin li-on, viết tắt là LIB Đây là công nghệ pin tiên tiến có ion lithium là thành phần chính, điều đặc biệt là loại pin này có thể sạc được
Hình 1 2 Pin lithium-ion là loại pin có thể sạc được
Pin Lithium thường dùng cho các thiết bị như: Điện thoại, máy tính, máy chụp hình… Hiện nay, pin lithium còn được chú trọng phát triển trên những ứng dụng phương tiện di chuyển chạy bằng điện như: Xe đạp điện, xe máy điện, ô tô điện hoặc kỹ thuật ở các ngành quân đội, hàng không
Cấu tạo pin lithium ion bao gồm: 1 cực dương, 1 cực âm, bộ phân tách, chất điện phân và hai bộ thu dòng điện
Hình 1 3 Cấu tạo của pin lithium-ion bao gồm 3 bộ phận
Vật liệu dùng làm điện cực dương là LicoO2 và LiMnO4 Cấu trúc phân tử bao gồm phân tử Oxide Coban liên kết với nguyên tử Lithium Khi có dòng điện chạy qua, nguyên tử Lithium nhanh chóng tách khỏi cấu trúc tạo thành ion dương Lithium, Li+
Cực âm được cấu tạo từ Than chì (graphene) và các vật liệu Cacbon khác có chức năng lưu giữ các ion Lithium L+ trong tinh thể
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 13
Bộ phân tách hay còn gọi là màng ngăn cách điện được làm bằng nhựa PE hoặc
PP Bộ phận này nằm giữa cực dương và cực âm, có nhiều l nhỏ, có chức năng ngăn cách giữa cực dương và cực âm Tuy nhiên, các ion Li+ vẫn được đi qua
Chất điện phân là chất lỏng lấp đầy hai cực và màng ngăn Dung dịch điện phân có chứa LiPF6 và dung môi hữu cơ Dung dịch có chức năng như vật dẫn các ion Li+ từ
Chất điện phân là môi trường truyền ion lithium giữa 2 điện cực trong quá trình sạc và xả pin Nguyên tắc cơ bản trong dung dịch điện ly cho pin li-on là có độ dẫn ion tốt Cụ thể độ dẫn ion liti ở mức 1 2 S/cm ở nhiệt độ phòng Tăng 3- 0-40% khi nhiệt độ lên 40 độ và giảm nhẹ khi nhiệt độ xuống 0 độ C
• Nguyên lý hoạt động của pin Lithium ion
Trong cơ chế hoạt động pin lithium ion, cực âm, cực dương đóng vai trò là nguyên liệu trong phản ứng điện hóa Dung dịch điện phân tạo môi trường dẫn cho ion liti di chuyển giữa 2 điện cực âm và dương Dòng điện chạy ở mạch ngoài khi pin di chuyển Quá trình này thể hiện ở quy trình sạc, xả Cụ thể như sau:
Hình 1 4 Nguyên lý hoạ ột đ ng c a pin Lithium ion th ủ ểhiện qua quy trình s c ạ
Ion-liti mang điện dương di chuyển từ cực âm (thường là graphite) qua dung dịch điện ly sang cực dương và dương cực sẽ có phản ứng với ion liti Mi ion Li dịch chuyển từ cực âm sang cực dương trong pin thì ở mạch ngoài, lại tiếp tục có 1 electron chuyển động từ cực âm sang cực dương, sinh ra dòng điện chạy từ cực dương sang cực âm Điều này tạo ra cân bằng điện tích giữa 2 cực
Quá trình sạc diễn ra ngược lại quá trình xả Dưới điện áp sạc, electron bị buộc chạy từ điện cực dương của pin (trở thành cực âm), ion Li tách khỏi cực dương di chuyển trở về điện cực âm của pin (ở quy trình này đóng vai trò cực dương) Trong quá trình sạc và xả pin sẽ đảo chiều
Trong một chu kỳ phóng điện, những nguyên tử liti ở cực dương bị ion hóa và tách khỏi các điện tử của chúng Các ion liti di chuyển từ cực dương và đi qua chất điện phân cho đến khi chúng đến được cực âm Tại đây chúng tái kết hợp với các điện tử và trung hòa về điện
1.2.3 T i sao nên s d ng Smart Battery? ạ ử ụ
Th i gian qua, trên th gi i và t i Viờ ế ớ ạ ệt Nam đã xảy ra nhi u v cháy do pin xe ề ụ điện, gây thiệt hại nghiêm tr ng về ọ người và tài s n Theo các chuyên gia, pin ả lithium dùng ph bi n cho cáổ ế c dòng xe đạp, xe máy điện hi n nay, n u cháy thì s ệ ế ẽ rất khó d p t t thậ ắ eo cách thông thường Thậm chí, nếu dùng nước để chữa cháy thì có thể gây n ổ
Hình 1 5 Pin lithium ion khi b cháyị
Các v ấn đề còn t n t ồ ại ở cell pin
Do pin Lithium-ion cũng có tính chấ ự phóng điệt t n khi không s d ng (self-ử ụ discharge) nên trong m t sộ ố trường hợp, để điền đầy pin, ngoài vi c s d ng quá ệ ử ụ trình ổn dòng, ổn áp, người ta thường kế ợp thêm k thut h ỹ ậ ạc xung ng n t s ắ Chẳng h n, khi áp ạ ắc quy đạt 4,2V/cell, quá trình s c s d ng ngay Lúc này, ạ ẽ ừ điện áp pin sẽ giảm dần; khi điện áp pin giảm còn 4,05V/cell hệ thống s c lại tiếp ạ tục đóng áp sạc 4,2V/cell vào để p t c quá trình stiế ụ ạc áp.
Việc đóng cắt như vậy sẽ được diễn ra liên tục Nhờ vậy, điện áp pin sẽ được gi ữ ổn định trong kho ng 4,05 ả – 4,2V/cell, do đó, làm pin được nạp sâu hơn, tránh được hiện tượng over-charging và kéo dài tuổi th pin ọ
Từ các thi t b tiêu dùng nhế ị ỏ đến xe điện, nhi u hề ệ thống đều dựa vào bộ pin sạc để cung cấp năng lượng Thông thường đây là những b pin Li-ion nhi u cell ộ ề phải được s c và x nhi u l n trong quá trình hoạ ả ề ầ ạt động Trong quá trình s c và x ạ ả pin, có thể chúng s tích t ẽ ụ không đều c a m i cell trong mủ ột bộ pin.
Thay vì c g ng lo i b m i khi m khuy t có th góp ph n t o ra số ắ ạ ỏ ọ ế ế ể ầ ạ ự thay đổi trong quá trình s c/x pin, các h ạ ả ệthống s d ng b pin nhi u cell có th ử ụ ộ ề ểtriển khai hệ thống qu n lý và cân b ng pin Các thi t b có công su t thả ằ ế ị ấ ấp hơn sử ụ d ng s ố lượng pin ít hơn thường không c n ph i có h ầ ả ệthống quản lý và cân b ng pin vì pin ằ thay th rế ẻ Nhưng đố ớ ệ thối v i h ng ch y b ng pin lạ ằ ớn hơn như xe điện, vi c cân ệ bằng pin là điều c n thiầ ế ểt đ ối đa hóa tuổ t i th hoọ ạt động của thiết b ị
Mục đích của vi c cân b ng pin là phân phệ ằ ối điện tíchv đồng đều gi a các ô ữ trong b pin sao cho tr ng thái s c (SOC) gi ng nhau trên t t c các pin trên các ộ ạ ạ ố ấ ả h ệthống lớn hơn như xe điện và thi t bế ị điện s dử ụng lượng lớn pin đểcung cấp điện áp, dòng phóng điện và t ng công su t kh d ng c n thiổ ấ ả ụ ầ ết Phương pháp cân b ng pin cằ ần được th c hi n dự ệ ựa trên s s p x p các cell trong b pin Các cell ự ắ ế ộ pin thường được sắp xếp theo c u hình n i tiấ ố ếp và song song để cung cấp điện áp cao hơn và tổng dòng xả tương ứng.
Khi m t bộ ộ pin được đưa vào hoạt động, các ô khác nhau trong hệ thống có thể phóng đ ệi n với tốc đ khác nhau Khi điềộ u này x y ra, SOC trong các ô khác ả nhau sẽ khác nhau Sau đó, khi bộ pin được s c lạ ại, các ô khác nhau cũng có thể được sạc lại v i tớ ốc độ khác nhau Mục đích của việc cân bằng là phân ph i lại ố điện tích t b pin sao cho nguừ ộ ồn điện được phân b u Cân b ng pin liên quan ố đề ằ đến việc phân ph i lố ại điện tích xung quanh các ô pin để chúng có SOC tương tự Điều gì nguy hi m khi cho phép một cell có SOC lớn hơn trong bộ pin? ể
• Kéo dài tổng th i gian hoờ ạt động giữa các lần sạ ạc li
• Ngăn chặn quá t i trong các t bào SOC caả ế o hơn
• Ngăn chặn hiện tượng nóng quá mức ở b t kỳ t ấ ếbào nào có dòng điện phóng điện vượt trội
• Kỹ thuật cân bằng pin được th c hiự ện b ng h ằ ệthống điều khi n yêu c u ể ầ cảm biến và nh tuyđị ến dòng sạc đến các ô khác nhau Hệ thống điều khiển cần cảm nhận điện tích trong từng ô và sau đó thực hiện thuật toán định tuyến dòng sạc giữa các ô khác nhau Các bộ ASIC (chip cảm biến pin và bộ điều khi n sể ạc h ệthống) hi n có sệ ẵn đểcung cấp khả năng này hoặc hệthống có thể được xây d ng t ự ừcác bộ ph n riêng biậ ệt sử ụng ADC và vi điề d u khi n ể
1.3.2 Over-charging c quy Lithium-ắ ion
Thông thường, pin Li-ion ch nên hoỉ ạt động (sạc/x ) ở vùng điện áp được thiết ả kế (dưới 4,2V/cell) Tuy nhiên, trong m t sộ ố trường hợp, khi pin đ đầy mà v n ẫ bơm dòng điện vào, điện áp pin sẽ dâng lên cao hơn 4,3V Lúc này, ắc quy gọi là b over-charging ị
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 21
Khi ở điện áp pin n m ngoài vùng làm vi c an toàn (trên 4,2V/cell hoằ ệ ặc dưới 2,5V/cell) hoạt động c a nó tr nên không ủ ở ổn định Các l p Lithium Metallic s ớ ẽ hình thành trên cực dương trong khi cực âm s b oxi hóa m nh làm gi m tính n ẽ ị ạ ả ổ định và sản sinh ra khí CO2 bên trong pin làm áp suất trên trong pin sẽ tăng lên Thông thường, để an toàn, bộ sạc cần phải ngừng sạc ngay khi áp suất trong cell đạt 200psi
Nếu b s c không có chộ ạ ức năng theo dõi và bảo v áp su t l n, do khí CO2 ệ ấ ớ không ng ng sinh ra, áp su t pin s ừ ấ ẽtiếp tục tăng, đồng th i nhiờ ệt độ pin cũng tăng nhanh Khi áp suất đạt kho ng 500psi, lúc này nhiả ệt độ pin đạt khoảng 130 độ- 150 độ, lớp màng an toàn ngăn cách các cell sẽ bị đánh thủng và pin sẽ bắt đầu bốc cháy thậm chí gây n ổ
Vì v y, trong quá trình s c, c n tuyậ ạ ầ ệt đối tuân th các yêu c u v nhiủ ầ ề ệt độ và điện áp trên các cell
Hình 1 10 Quá trình hoạt động c a pin ủ
1.3.3 Sự ảnh hưởng của nhiệt độ đế n quá trình sạc pin Lithium ion
Như đ nói ở mục trên, hoạt động nạp xả của pin phụ thuộc lớn vào nhiệt độ Nói chung, t t c các loấ ả ại pin đều có th hoể ạt động trong m t d i nhiộ ả ệt độ khá r ng ộ Đố ới v i ắc quy Li-ion, dải nhiệt độ này là từ 0C 45C trong chế sạc và 0C – độ – 60C trong chế độ ả x M t s pin dộ ố ựa trên Lithium đời mới hơn như Lithi-Ferro – Phophat (LiFePO4) ho c Li-Polimer cho phép m r ng vùng nhiặ ở ộ ệt độ làm việc hơn một chút Trong vùng này, tính chất của pin hầu như ổn định, hiệu suất sử dụng năng lượng cao Nhưng ngoài vùng nhiệt độ đó, ở nh ng nhiữ ệt độ ấ r t th p ấ ho c r t cao, hoặ ấ ạt động c a pin bủ ị ảnh hưởng m nh, các ph n ng hóa h c bên ạ ả ứ ọ trong pin di n ra ch m lễ ậ ại, đồng nghĩa với dòng điện do c quy sinh ra ho c hắ ặ ấp thu sẽ giảm đi so với khi hoạt động trong Đố ới v i pin Li-ion nói chung, người ta đ chứng minh đượ ằng dải nhic r ệt độ t 5C 45C là d i nhiừ – ả ệt độ hoạt động tối ưu Dưới 5C dòng s c c n phạ ầ ải được gi m xu ng và khi nhiả ố ệt độ ảm xuống dướ gi i 0C (nhiệt độ đóng băng) cần d ng ừ ngay quá trình sạc.
Ngược lại, ở nhiệt độ cao hơn 45C hoạt động của pin tr nên mạnh mẽ hơn, ở nghĩa là có có thể phóng hoặc nạp dòng điện lớn hơn dòng danh định (C) Tuy nhiên, c ả 2 trường h p (nhiợ ệt độ quá th p cấ ũng như nhiệt độ quá cao) đều làm tăng nội trở pin, do đó, nếu v n c g ng s c thì s làm giẫ ố ắ ạ ẽ ảm tuổi thọ pin
- Tắt t t c các thi t bấ ả ế ị nuôi b i ắc quy c n sở ầ ạc Khi đó, hệ ống đo dòng, áp th sạc s cho kết quảẽ chính xác, phản ánh đúng các thông ố s quá trình sạc.
- Không nên sạc khi nhiệt độ môi trường quá th p hoấ ặc quá cao
- Dừng s c ngay khi b nhiạ ộ ệt độ pin tăng cao bất thường
- Dừng sạc ngay khi dung lượng pin đạt kho ng 90 ả – 99% Như vậy s tẽ ốt cho pin hơn là sạc đến 100% hoặc hơn Thông thường, các bộ sạc có đèn báo dung lượng và tự cắt khi dung lượng đạt mức 90 – 99% Nếu không, người dùng cần theo dõi để cắt sạc Điều này sẽ làm tăng tuổi th pin ọ
- Trước khi lưu trữ pin không s d ng trong mử ụ ột thời gian dài, nên sạc trước cho nó đến khoảng 40-50% dung lượng để tránh hiện tượng over-discharge vì pin b self-dischage ị
THIẾT KẾ PHẦN CỨNG
Tính toán, thi ết kế m ạch điệ ử n t
CHƯƠNG 2 THIẾT KẾ PHẦN CỨNG
Chương 2 có nội dung v ềthiết k và hoàn thi n phế ệ ần điện t ử và cơ khí của thiết b ị
2.2 Tính toán, thiế ết k mạch điện tử
Hình 2 1 Nguyên lí m ch BMS ạ Ở chế độ xả, chân OD của IC DW01 giữ ở tr ng thái HIGH vạ ới điện áp là từ 2.8V đến 4.2V Do transistor là PNP nên lúc này không có dòng điện đi từ Emitter tới Collector Lúc này, Mosfet đang ở ng thái x trạ ảliên tục.
Khi có s c ( ng n mự ố ắ ạch, quá dòng) được phát hi n b i chân CS thì l p tệ ở ậ ức
OD s gi m c tín hi u LOW vẽ ữ ứ ệ ới điện áp 0V Do đó tạo sự ra điện áp âm giữa Emitter và Base của transistor PNP, transistor sẽ có dòng điện nh d n t pin qua ỏ ẫ ừ cực Emitter tới Collector
Hình 2 2 Đặc tính IC DW01 Năng lượng tiêu th của DW01 trong chế ụ độhoạt động:
Năng lượng tiêu th của DW01 trong chế ụ độhoạt động:
Dòng điện tới Q13, tạo điện áp dương VBE, transistor m T ở ừ đó mà dòng điện ở chân Gate c a Mosfet trung hoà vủ ới đất Mosfet đóng
Ngắt mạch do s c vự ố ề điện Ở chế độ sạc, khi dưới mức điện áp 4.3V thì pin s ẽtiếp tục được sạc Chân OC gi mữ ức HIGH, transistor không hoạt động Cho tới khi điện áp đạt ngưng 4.3V, chân OC gi mữ ức điện áp LOW, t o hiạ ệu điện th âm BE, transistor s ế ẽ đóng từ đó dẫn dòng điện t i Q17 Tớ ại đây, do dòng điệ mang áp dương BE nên transistor n mở, điện áp trên chân Gate c a Mosfet trung hoà vủ ới đất, do đó mà Mosfet sẽ đóng lại, pin sẽngừng ti p tế ục sạc. Đồng thời, IC HY2213 BB3A được dùng để cân bằng các cell pin, nếu pin – nào được sạc đầy trước thì sẽ được ngắt trước, các pin chưa đầy tiếp tục được sạc Khi chưa đầy, điện áp sạc sẽ đi vào pin, còn khi đầy, chân OUT xuất tín hiệu mở Mosfet nh m chuyằ ển hướng dòng điện áp Lúc đó, dòng điện này b tiêu th bị ụ ởi trở 470 Ohm
Hình 2 3 Đặc tính c a IC HY2213 ủ
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 25
Năng lượng tiêu th của HY2213 trong chế hoụ độ ạt động:
Năng lượng tiêu th của HY2213 trong chế ụ độchờ:
Công suất tiêu tán c a các IC trong ch ủ ế độ hoạt động:
Công suất tiêu tán c a các IC trong ch ủ ế độchờ:
Năng lượng tiêu th rất nh ụ ỏ
Dung lượng tối đa của accqui: 15A
Dòng xả tối đa của accqui: 10.000 mAh Điện áp tối đa của accqui: 12.6 V
Tính chọn Mosfet chị ải: Chọu t n Mosfet ch u tị ối thiểu 20 A, 30 V IRF1404S:
VGS = 12.6 V => Tho ả mn, đồng thời đưa mosfet đến tr ng thái m ạ ởhoàn toàn, khi y, Rấ DS(on) rất nhỏ = 4 mOhm
VDS = 40V => Thoả mãn v ề điện áp
Hình 2 5 Mối tương quan Vgs và Qg
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 27
Hình 2 6 Mối tương quan Vgs và Qg của IRF1404
Thời gian khởi động Mosfet:
𝑡= 1.46 × 10 −4 + 1.56 × 10 −4 + 3.15 × 10 −4 = 6.17 × 10 −4 (s) Thoả mãn vềthời gian khở ội đ ng
𝑇𝑗=𝑇𝑎+(𝑃×𝜃𝑗𝑎) = 25 (0.4 × 62) 49.8 ℃ + Thoả mãn nhiệt độ hoạt động
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 29
Hình 2 8 Sơ đồkhối c a m ch Monitor Systủ ạ em
Hình 2 9 Khối ngu n ồ Đầu nguồn được l p m t diode nh m ch ng cắ ộ ằ ố ắm ngược ngu n, có th gây h ng ồ ể ỏ linh ki n B ph n nguệ ộ ậ ồn được thiế ế ớt k v i 01 IC Buck converter XL1509 h áp ạ t 12.6V xu ng 5.0V; k t h p v i 01 IC LDO (Low Drop Out) h áp t 5.0V xu ng ừ ố ế ợ ớ ạ ừ ố 3.3V
M ch Buck là m t lo i m ch chuyạ ộ ạ ạ ển đổi điện áp (DC-DC converter) thường được sử dụng để giảm điện áp từ ngu n cung c p cao hồ ấ ơn xuống m t mộ ức điện áp mong mu n Mố ạch này thường được s d ng trong các ng dử ụ ứ ụng điện t , vi n ử ễ thông, và nhi u thi t bề ế ị di động để cung c p nguấ ồn điệ ổn địn nh và hi u qu t ệ ả ừ ngu n ồ điện
M ch LDO (Low Dropout) là m t lo i mạ ộ ạ ạch điều regullation linears (LDO) được sử dụng để cung cấp điện áp ổn định với mức rất thấp c a dropout voltage ủ
(điện áp m t mát) gi a ngu n cung cấ ữ ồ ấp và đầu ra Điểm đặc biệt của mạch LDO là khả năng duy trì điện áp đầu ra ổn định khi điện áp ngu n gi m, mà không gây ra ồ ả s giự ảm hiệu suất hoặc nâng cao nhiệt độ
Vi điều khiển ESP-Wroom-32D được thiết kế nhỏ gọn nhằm tiết kiệm diện tích so với module Đặc biệt là lược b ỏ đi khối UART phục vụ cho việc BOOT và giao ti p UART v i máế ớ y tính, thay vào đó các chắc chân chức năng để BOOT và giao ti p máy tính qua mế ạch nạp FT232r
Do phải đảm b o vả ề độ ph ng c a nguẳ ủ ồn đầu vào của vi điều khiển, phía đầu nguồn vào ESP được đặt 01 t g m 10uF và 01 t g m 100uF nh m l c nguụ ố ụ ố ằ ọ ồn đầu vào
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 31
INA199 của điện áp đầu ra, dòng điện shunt được theo dõi(còn g i là b khu ch ọ ộ ế đại cảm nhận dòng điện) là thường được sử dụng để ảo vệ quá dòng, đo dòng b điện chính xác để ối ưu hóa hệ t thống hoặc trong mạch phản hồi vòng kín Dòng thiết b này có th c m nhị ể ả ận được s s t giự ụ ảm trên các điện trở shunt ở điện áp ch ế độ chung t ừ –0,3 V đến 26 V, không ph ụthuộc vào điện áp cung c p Ba mấ ức tăng cố nh có sđị ẵn: 50V/V, 100V/V và 200V/V Độ ệ lch thấp c a ki n trúc không trôi ủ ế cho phép cảm nhận dòng điện v i mớ ức giảm tối đa trên shunt thấp t i 10 Mv toàn ớ di n ệ
Hình 2 12 Khối kiểm tra điện áp Để đọc được điện áp c a pin, sử d ng cầu chia áp để đưa về ủ ụ điện áp, mức tín hi u mà ESP có thệ ể đọc được (tối đa 3.3V) Đồng th i s d ng them TVS diode ờ ử ụ nhằm chống hiện tượng ESD gây v– ọt điện áp, s d ng t 104 nh m lử ụ ụ ằ ọc tín hiệu
S d ng 3 NTC(nhiử ụ ệt điện trở) để đọc giá trị điện áp, từ đó qui đổi sang nhiệt độ Bản chất nhiệt điện tr chính là mở ột điện trở có khả năng thay đổi điện trở dựa vào nhiệt độ ừ đó phố ợ, t i h p v i tr 10K t o thành m t c u phân áp, tớ ở ạ ộ ầ ừ đó ta có thể đọc được giá trị của điện áp Sau đó, code sẽ xử lí mềm đểchuyển đổi thành giá tr nhiị ệt độ tương ứng c1 = 1.009249522e-03; c2 = 2.378405444e-04; c3 = 2.019202697e-07;
Linh kiện điệ ử n t
ESP32-WROOM-32D là m t module v i nhiộ ớ ều tính năng cải tiến hơn các module dòng ESP8266 khi h trợ thêm các tính năng Bluetooth và Bluetooth Low Energy (BLE) bên cạnh tính năng WiFi
Module h trợ các chu n giao ti p SPI, UART, I2C và I2S và có kh ẩ ế ả năng kết nối với nhi u ngoề ại vi như các cảm biến, các b khuộ ếch đại, thẻ nh (SD card)ớ ,… Ở chế độ sleep dũng điện hoạt động là 5 àA nờn thớch hợp cho cỏc ứng dụng dùng pin như các thiết bị điện tử đeo tay Ngoài ra module còn h trợ cập nhật firmware từ xa (OTA) do đó người dùng v n có th có nh ng b n c p nh t mẫ ể ữ ả ậ ậ ới nhất của sản phẩm.
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 33
Hình 2 14 ESP-WROOM-32D Thông số kĩ thuật
• Kích thước: 18 mm x 20 mm x 3 mm
• CPU: Xtensa Dual-Core 32-bit LX6 v i t n s hoớ ầ ố ạt động lên đến 240 MHz
• 448 KBytes ROM cho booting và các tính năng của lõi chip
• 520 KBytes SRAM trên chip dùng cho dữ liệu và các l nh ệ instruction
• 8 KBytes SRAM trong RTC (gọi là RTC SLOW Memory) để truy xu t b i các bấ ở ộ -processor co
• 8 KBytes SRAM trong RTC (g i là RTC FAST Memory) ọ dùng cho l u dữ ữ liệu, truy xu t b i ấ ở CPU khi RTC đang boot từ chế độ Deep-sleep
• 1 Kbit EFUSE, v i 256 bit cho h ớ ệthống (địa chỉ MAC và cấu hình chip), 768 còn l i cho ng dạ ứ ụng người dùng, g m c mã hóa b ồ ả ộ nh ớ Flash và định ID cho chip
• Bluetooth: BR/EDR phiên b n v4.2 và BLE ả
• Ethernet MAC h trợ chu n: DMA và IEEE 1588 ẩ
• B ộchuyển đổi ADC 12 bit, 16 kênh
• B ộchuyển đổi 8-bits DAC: 2 kênh
• 10 chân để giao tiếp với cảm bi n chạm (touch sensor) ế
• Ngõ ra PWM cho điều khiển Motor
• Nhiệt độ hoat động ổn định: -40C đến 85C
• Dòng tiêu thụ ổn định: 80mA
• IEEE 802.11 h trợ các chu n b o m t: WFA, WPA/WPA2 và ẩ ả ậ WAPI
• 1024-bit OTP, 768-bit cho người dùng Ứng dụng ESP32-WROOM-32D
• Module được dùng nhi u trong các ề ứng d ng thu th p d ụ ậ ữliệu và điều khi n thi t b qua WiFi, Bluetooth ể ế ị
• S d ng cho các ng d ng ti t kiử ụ ứ ụ ế ệm năng lượng, điều khi n m ng ể ạ lưới cảm biến, mã hóa hoặc xử lí tiếng nói, xử lí Analog-Digital trong các ứng dụng phát nhạc, hoặc vói các file MP3…
• Module cũng có thể dùng cho các thiết bị điện tử đeo tay như đồng h ồ thông minh…
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 35
Ultra-Low Power: Đối v i vớ ấn đề năng lượng, ESP32 cũng cung cấp giải pháp tiết kiệm năng lượng như sau:
- Sleep mode: Đây là trạng thái tiết kiệm năng lượng của ESP32 Lúc này ESP ch cung cỉ ấp đủ năng lượng cho RAM để lưu trữ ữ d u liệ
- Modem Sleep: Đây là chế độ hoạt động c a t t c ủ ấ ả các tính năng Lúc này chip yêu cầu điện 240mA Khi có nhu c u s d ng c Bluetooth và wifi ầ ử ụ ả dòng điện cần thiết lên đế ối đa 790mA.n t
- Light Sleep: Đây là chế hođộ ạt động khi tắt h t CPU, Wifi, BLE và ế RAM chúng được định mức clock Dòng tiêu thụ kho ng 0.8mA ả
- Deep Sleep: Đây là chế độ ng sâu T t c CPU, RAM và các củ ấ ả ảm bi n ngo i ngoế ạ ại vi đều tắt M t s thành ph n c a chip vộ ố ầ ủ ẫn được b t: ngoậ ại vi RTC, bộ điều khi n RTC và RTC memories Dũng tiờu th 15àA ể ụ 0.15mA
- Hibernate: T t c m i th ấ ả ọ ứ khác đều bị t t Ngo i tr m t GPIO RTắ ạ ừ ộ C đang hoạt động và bộ đếm thời gian RTC Chúng có trách nhiệm phục hồi đánh thức chip ra khỏi chế độ Hibernate
Giới thiệu: XL1509 là bộ chuyển đổi DC/DC có t n s cầ ố ố định 150 KHz, có khả năng điều khi n t i 2A v i hi u suể ả ớ ệ ất cao, độ ợ g n sóng th p và khấ ả năng điều chỉnh đường truy n và tề ải tuyệt v i Yêu c u s ờ ầ ố lượng linh ki n bên ngoài t i thi u, ệ ố ể bộ điều ch nh s dỉ ử ụng đơn giản và bao g m bù t n s bên trong và bồ ầ ố ộ dao động t n s c nh ầ ố ố đị
Mạch điều khi nPWM có ể thể điều ch nh tuy n tính h s công su t tỉ ế ệ ố ấ ừ 0 đến 100% Chức năng kích hoạt, chức năng b o v ả ệ quá dòng được tích h p bên trong ợ Khi chức năng giới hạn dòng điện th hai x y ra, t n s hoứ ả ầ ố ạt động s gi m t ẽ ả ừ 150KHz xu ng 50KHz M t khố ộ ối bù bên trong được tích hợp để giảm thi u s ể ố lượng thành phần bên ngoài
Hình 2 15 XL1509 Thông số kĩ thuật
Dải điện áp đầu vào rộng 4,5V đến 40V
- Phiên b n 3.3V, 5V, 12V và có th ả ể điều ch nh ỉ
- Đầu ra có th ể điều ch nh t ỉ ừ 1,23V đến 37V
- Chu kỳ làm việc tối đa 100%
- Điện áp rơi tối thi u 1,5V ể
- Đ sửa li tần s chuyố ển đổi 150KHz
- Khả năng hiệ ại đầu ra không đổi 2An t
- Transistor công suất tối ưu hóa bên trong
- Điều ti t dòng và t i tuyế ả ệt vời
- Chân ON/OFF có chức năng trễ
- Tích hợp chức năng tắt nhiệt
- Tích hợp chức năng giới hạn dòng điện
- Tích hợp chức năng giới hạn dòng điện th hai ứ
- Có sẵn trong gói SOP8L Ứng dụng
Màn hình LCD và TV LCD
- Khung ảnh k thuỹ ật số
- Thiết bị ễ vi n thông/m ng ạ
Giới thi u: ệ Dòng INA199 gồm đầu ra điện áp, b theo dõi ộ dòng điện song song (còn g i là bọ ộ khuếch đạ ải c m nhận dòng điện) có th c m nh n s s t giể ả ậ ự ụ ảm trên các song song ở điện áp chế độ chung từ –0,3 V đến 26 V, không phụ thuộc vào điện áp nguồn Có ba mức tăng cố định: 50 V/V, 100 V/V và 200 V/V Độ l ch th p c a ki n trúc không trôi cho phép c m biệ ấ ủ ế ả ến dòng điện v i m c gi m tớ ứ ả ối đa trên shunt ở mức thấp tới 10 mV trên toàn thang đo.
Các thi t b này hoế ị ạt động t m t nguừ ộ ồn điện 2,7-V đến 26-V duy nh t, tiêu ấ thụ dòng điện tối đa 100 μA Tất cả các phiên bản được chỉ định từ –40°C đến 105°C và được cung cấp ở cả gói SC70-6 và gói UQFN-10 mỏng
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 37
- Phổ ế bi n r ng - ộ Phạm vi ch ế độ: –0,3 V đến 26 V
- Điện áp bù: ±150 μV (Tối đa) (Cho phép giảm shunt toàn thang 10 mV)
• Li tăng ±1,5% (Tối đa theo nhiệt độ)
• Độ lệch l ch 0,5-ệ μV/°C (Tối đa)
• Độ ệch tăng 10 trang/phút/°C (Tố l i đa)
- Đóng gói: SC70, UQFN-10 Ứng dụng:
- B phát s c không dây tuân th ộ ạ ủQi
Giới thi u: ệ IC b o v pin Dả ệ W01 Plus được thi t kế ế để ả b o v pin ệ lithium- ion/polymer khỏi bị hư hỏng ho c gi m tu i th do s c quá m c, x quá mặ ả ổ ọ ạ ứ ả ức và/hoặc quá dòng đố ới v i các hệ thống ch y b ng pin lithium-ion/polymer mạ ằ ột cell, ch ng hẳ ạn như điện thoại di động Gói siêu nh và ít thành ph n bên ngoài ỏ ầ cần thiết hơn khiến vi c tích h p DW01 Plus vào không gian h n ch c a b pin ệ ợ ạ ế ủ ộ trở nên lý tưởng Điện áp phát hi n quá tệ ải chính xác ±50mV đảm b o s c s d ng ả ạ ử ụ an toàn và đầy đủ Dòng điện dự phòng rất thấp tiêu hao ít dòng điện từ tế bào khi lưu trữ
- Giảm kích thước bảng do gói thu nhỏ SOT-23-6
- Dòng tĩnh cực thấ ởp mức 3μ A (Vcc=3,9V).
- Dòng điện tắt cực thấ ở ức 0,1μ A (Vcc=2,0V).p m
- Điện áp b o v quá tả ệ ải chính xác 4,3V ± 50mV cho DW01 Plus
- Chức năng phát hiện tải trong chế độ quá t ải.
- Hai cấp độ phát hiện để ả b o v quá dòng ệ
- Thời gian trễ được t o ra b i các m ch bên trong Không c n tạ ở ạ ầ ụ điện bên ngoài Ứng dụng:
- Protection IC for One-Cell Lithium-Ion / Lithium-Polymer Battery Pack
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 39
Giới thiệu: HY2213 đượ ạo ra cho các b pin nhic t ộ ều cell cho đến pin lithium-ion đơn cell Điều khiển cân bằng sạc, IC giám sát mức điện và nó cũng bao gồm m ch phát hiạ ện điện áp và mạch tr ễ có độ chính xác cao
Tính năng: Cân b ng pin ằ Ứng dụng: B pin s c Li-ộ ạ ion đa cell.
2.3.6 IC ổn áp ngu n AMS1117 ồ
Giới thiệu: Dòng AMS1117 c a bủ ộ điều chỉnh điện áp cố định và có thể điều chỉnh được thi t kế ế để cung cấp dòng điện đầu ra 800mA và hoạt động mức chênh lở ệch đầu vào-đầu ra 1V Điện áp rơi của thiết b ị được đảm bảo tối đa 1,3V ở dòng điện đầu ra tối đa, giảm dòng tải thở ấp hơn.
Cắt xén trên chip điều chỉnh điện áp tham chiếu đến 1% Gi i h n dòng ớ ạ điện cũng được cắt gi m, gi m thiả ả ểu căng thẳng trong điều kiện quá t i trên ả cả b ộ điều ch nh và mỉ ạch nguồn điện
Các thi t b AMS1117 có chân cế ị ắm tương thích với các bộ điều ch nh ỉ SCSI ba cực khác và được cung cấp dưới d ng gói SOT-223 g n trên b ạ ắ ề mặt cấu hình th p và trong gói nh a TO-252 (DPAK) ấ ự
- Ba điện áp c nh ho c có th ố đị ặ ể điều chỉnh đầu cu i* 1.5V, 1.8V, 2.5V, ố 2.85V, 3.3V và 5.0V
- Dòng điện đầu ra 800mA
- Hoạt động mở ức điện áp rơi xuống 1V
- Quy định dòng: Tối đa 0,2%.
- Có sẵn gói SOT-223 và TO-252 Ứng dụng:
- B ộ điều ch nh tuy n tính hi u suỉ ế ệ ất cao
- B ộ điều ch nh bài cho ngu n cung c p chuy n mỉ ồ ấ ể ạch
- B ộ điều ch nh tuyỉ ến tính 5V đến 3,3V
- Thiết bị đầ u cu i SCSI hoố ạt động
- Quản lý ngu n cho Notebook ồ
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 41
2.5 Thiết kế ỏ ộ v h p và lắp đặt hoàn chỉnh ph n cầ ứng
Thiết kế ỏ ộ v h p và l ắp đặt hoàn chỉ nh ph n c ng 41 ầ ứ CHƯƠNG 3 THIẾT KẾ PHẦN MỀM
Vỏ hộp Smart Battery được thi t k b ng ph n m m Solidwork, sau khi ế ế ằ ầ ề thiết k xong sế ẽ được gia công b ng công nghằ ệ in 3D đảm bảo tính chính xác, độ hoàn thiện và tính th m m cao cho s n ph m Sau khi in xong ph n v , ta ti n hành l p ẩ ỹ ả ẩ ầ ỏ ế ắ đặt các linh kiện để hoàn thiện sản phẩm
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 43
CHƯƠNG 3 THIẾT KẾ PHẦN MỀM
Giới thiệ u
Trong chương này, ta sẽ tìm hiểu một số công cụ sẽ sử dụng để ập trình điề l u khi n h ể ệthống, xây d ng thu t toán cho d ự ậ ựán.
Giới thiệ u ESP IDF
ESP-IDF (Espressif IoT Development Framework) là m t b công c phộ ộ ụ ần mềm (framework) được phát tri n bể ởi Espressif Systems để trợ ệ h vi c phát tri n ể ứng dụng IoT (Internet of Things) trên các vi điều khiển ESP32 và ESP32-Series ESP32 là một vi điều khi n không dây m nh m và linh hoể ạ ẽ ạt, được s d ng r ng ử ụ ộ rãi cho các ng dứ ụng IoT, như cảm bi n thông minh, thi t b k t n i và nhi u ng ế ế ị ế ố ề ứ d ng khác ụ
Dưới đây là mộ ốt s điểm chính về ESP-IDF:
ESP-IDF thường sử dụng ngôn ngữ lập trình C để phát triển ứng dụng cho ESP32, nhưng cũng h trợ ột số tính năng củ m a C++
H trợ n n tề ảng đa nhiệm và đa luồng
Cung cấp các driver và thư viện tích h p cho các chợ ức năng như Wi-Fi, Bluetooth, GPIO, SPI, I2C, UART, và nhiều tính năng khác.
H trợ giao ti p m ng v i các giao thế ạ ớ ức như MQTT, CoAP, HTTP, và nhiều giao thức khác.
S d ng trình biên d ch và các công c phát tri n t ử ụ ị ụ ể ừ Espressif như Xtensa GCC và ESP-IDF Eclipse Plugin
ESP-IDF h trợ các công cụ debugging như GDB (GNU Debugger) và OpenOCD (On-Chip Debugging)
Cung c p m t loấ ộ ạt các thư viện và ví d (examples) giúp nhà phát tri n d dàng ụ ể ễ bắ ầt đ u với việc xây d ng ng d ng IoT trên ESP32 ự ứ ụ
Cộng Đồng Phát tri n: ể Được sử d ng r ng rãi trong cụ ộ ộng đồng IoT và có sự h tr từ Espressif cũng ợ như từ ộng đồng ngườ c i phát triển
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 45
Giới thiệ u Android Stud 45 io
Android Studio là môi trường phát triển tích hợp (IDE) chính thức dành cho phát tri n n n t ng Android ể ề ả
Nó được ra mắt vào ngày 16 tháng 5 năm 2013 tại hội nghị Google I/O Android Studio được phát hành miễn phí theo giấy phép Apache Licence 2.0 Android Studio ở giai đoạn truy cập xem trước sớm bắt đầu từ phiên bản 0.1 vào tháng 5.2013, sau đó bước vào giai đoạn beta từ phiên bản 0.8 được phát hành vào tháng 6 năm 2014 Phiên bản ổn định đầu tiên được ra mắt vào tháng 12 năm
2014, bắt đầu từ phiên bản 1.0
Dựa trên phần mềm IntelliJ IDEA của JetBrains, Android Studio được thiết kế đặc biệt để phát triển ứng dụng Android Nó h trợ các hệ điều hành Windows, Mac OS X và Linux, và là IDE chính thức của Google để phát triển ứng dụng Android gốc để thay thế cho Android Development Tools (ADT) dựa trên Eclipse
3.3.2 Ưu nhược điểm củ- a Android Studio Ưu điểm:
- Đây là môi trường phát triển phần mềm chính thức của Google, đây cũng chính là chủ ở s hữu c a h ủ ệđiều hành Android
- Công c này cung c p m t lo t các công c phát triụ ấ ộ ạ ụ ển và tính năng h trợ cho quá trình phát tri n ng dể ứ ụng Android Điều này bao g m trình ồ biên d ch, trình g l i, trình qu n lý d án, thi t k giao di n và nhi u tính ị ả ự ế ế ệ ề năng khác để tăng năng suất và hiệu quả của nhà phát triển
- Giao diện người dùng thân thi n và d s dệ ễ ử ụng, giúp tăng hiệu suất và giảm thời gian c n thiầ ế ểt đ phát tri n ng d ng ể ứ ụ
- H trợ b i m t s tài li u tham khở ộ ố ệ ảo và hướng d n phong phú Có ẫ s n các tài li u chính th c tẵ ệ ứ ừ Google, cùng với các diễn đàn lập trình viên Android và các ngu n tài li u tr c tuyồ ệ ự ến khác để giúp nhà phát tri n tìm ể hi u và gi i quy t các vể ả ế ấn đề phát tri n ể
- Công c ụ này được h trợ thông qua các khóa học đào tạo v l p trình ề ậ Android cơ bản và nâng cao Các khóa học này giúp nhà phát tri n nắm ể v ng các khái ni m và kữ ệ ỹ năng cần thiết để phát tri n ng d ng Android ể ứ ụ chất lượng
- Đây là công cụ chiếm lượng lớn dữ liệu trong không gian b nh ộ ớ máy tính nếu được cài đặt
- Việc ki m tra hoể ạt động thông qua gi lả ập gây đơ,lag, giật máy và tiêu tốn pin
3.3.3 Các tính năng của Android Studio
S ở dĩ công cụ này được sử dụng phổ biến cũng là nhờ những tính năng ưu việt của nó Dưới đây là một số tính năng mà công cụ này mang t i cho nhà phát tri n: ớ ể
Hình 3 2 Các tính năng của Android Studio
- B cố ục ứng d ng tr c quan, giao di n thân thi n vụ ự ệ ệ ới người sử ụ d ng Các nhà phát tri n có th thao tác nhanh chóng b ng các thao tác kéo th , ể ể ằ ả điều này giúp việc phát triển ứng dụng đơn giản và toàn diện hơn
- Chạy ng d ng t c thì hứ ụ ứ trợ các thay đổi thực hi n trong quá trình ệ phát triển Người sử ụ d ng có th ểchạy th ngay l p t c mà không m t thêm ử ậ ứ ấ thời gian xây dựng APK và cài đặt
- Trình mô ph ng ng d ng nhanh chóng, hỏ ứ ụ trợ mô ph ng hi n th ỏ ể ị gi ng h t m t chiố ệ ộ ếc điện thoại Android để nhà phát tri n có th ki m tra ể ể ể ứng dụng trông như thế nào trong các thiết bị cài đặt
- Chỉnh s a mã code nhanh chóng nh các mã gử ờ ợi ý trong thư viện nhằm tăng tốc độviết m cũng như độ chính xác
- Instant Run giúp nhà phát triển thay đổi các ng dứ ụng đang chạy mà không c n thêm các thao tác xây d ng APK m i ầ ự ớ
Tổ ng quan v Firebase 47 ề
- H trợ k t n i Firebase giúp t o các b n c p nh t tr c ti p và cung ế ố ạ ả ậ ậ ự ế cấp kết nối cơ sở dữ liệu gốc được cập nhật liên t c ụ
- Có nhi u m u có s n giúp l p trình viên t o mề ẫ ẵ ậ ạ ới ứng dụng đơn giản dựa vào công cụ wizard
- Tích hợp tính năng dò và sửa li nhanh chóng
- H trợ tích h p Maven và s dợ ử ụng kho lưu trữ Maven để qu n lý các ả thư viện và phụ thuộc của dự án.
Có nhi u cách hi u về ể ề Firebase khi đứng trên các quan điểm khác nhau, sau đây là 2 khái niệ cơ bảm n
Firebase là m t nộ ền tảng di động giúp người dùng nhanh chóng phát tri n các ể ứng d ng chụ ất lượng cao, phát tri n ng dể ứ ụng cho người dùng quy mô l n và kiớ ếm được nhiều tiền hơn.
Firebase là m t d ch v h ộ ị ụ ệthống back-end được Google cung c p s n cho ấ ẵ ứng d ng Mobile, vụ ới Firebase người dùng có th rút ng n th i gian phát tri n, triể ắ ờ ể ển khai và th i gian m r ng quy mô cờ ở ộ ủa ứng dụng mobile mình đang phát triển H trợ cả 2 nền tảng Android và IOS, Firebase mạnh mẽ, đa năng, bảo mật và là d ch ị v c n thiụ ầ ết đâu tiên để xây d ng ng d ng vự ứ ụ ới hàng triệu người sử ụ d ng
3.4.2 L ch s phát triị ử ển của Firebase
Firebase có tiền thân là Envolve Đây là dịch vụ cung c p nhấ ững API để người dùng d dàng tích hễ ợp tính năng chat vào trang web Điều thú vị là người dùng Envolve sử d ng d ch vụ ị ụ để truyền dữ liệu chứ không đơn thu n cho ng d ng ầ ứ ụ chat H s dọ ử ụng Envolve để đồng b dộ ữ liệu c a nh ng ng dủ ữ ứ ụng như game online, danh b , lạ ịch… Nhận biết được điều này, CEO c a Envoủ lve đ tách bi t h ệ ệ thống chat và đồng bộ dữ liệu th i gian th c thành 2 m ng riêng biờ ự ả ệt Đến năm
2012, Firebase được thành lập như một công ty cung c p d ch v Backend- -a- ấ ị ụ asService theo th i gian th c Ng i th y mùi tiờ ự ử ấ ềm năng, năm 2014, Google lập tức mua l i Firebase vạ ới giá không được ti t l Và gi Google phát tri n Firebase ế ộ ờ ể thành một dịch vụ đồ ộ s
3.4.3 Ưu nhược điểm c a Firebase ủ Ưu điểm
Xây d ng nhanh chóng mà không t n th i gian, nhân lự ố ờ ực để qu n lý hả ệ thống và cơ sở hạ tầng phía sau: Firebase cung cấp cho người dùng chức năng như phân tích, cơ sở dữ liệu, báo cáo hoạt động và báo cáo các sự c li để dễ dàng phát triển, định hướng ứng dụng của mình vào người sử dụng nhằm đem lại các trải nghi m t t nh t cho h Uy tín chệ ố ấ ọ ất lượng đảm b o t Google: Fả ừ irebase được google h trợ và cung c p trên n n t ng ph n c ng v i quy mô r ng kh p th gi i, ấ ề ả ầ ứ ớ ộ ắ ế ớ được các tập đoàn lớn và các ng d ng v i triứ ụ ớ ệu lượt s d ng t ử ụ ừ người dùng Qu n ả lý c u hình và tr i nghi m các ấ ả ệ ứng d ng c a Firebase t p trung trong m t giao diụ ủ ậ ộ ện website đơn giản, các ng d ng này hoứ ụ ạt động độ ập nhưng liên kếc l t dữ liệu phân tích ch t chặ ẽ
Nhược đ ểi m Điểm duy nhất c a Firebase chính là phủ ần Realtime Database, mà đúng hơn chỉ là phần Database Cơ sở d ữliệu của Realtime Database được t ổchức theo ki u ể cây không ph i là ki u b ng nên nhả ể ả ững ai đang quen với SQL có th gể ặp khó khăn đôi chút bước đầu
Firebase cung cấp cho người dùng công c Firebase Analytics và 2 nhóm sụ ản ph m chính t p truẩ ậ ng vào 2 đối tượng là:
- Develop & test your app: phát tri n và ki m th ể ể ửcác ứng d ng ụ được thiết kế
- Grow & engage your audience: Phân tích dữ liệu và tối ưu hóa tr i nghiả ệm đố ới người dùng.i v
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 49
Là m t gi i pháp mi n phí và phân tích không gi h n Quộ ả ễ ới ạ ản lý hành vi người dùng và các bi n pháp t m t bệ ừ ộ ảng điều khi n duy nh t Phân tích thu c tính và ể ấ ộ hành vi của người dùng trong bảng điều khiển đơn để đưa ra các quyết định sáng suốt v l trình s n ph m Nh n thông tin chi ti t v ề ộ ả ẩ ậ ế ềthời gian th c t báo cáo hoự ừ ặc xu t dấ ữ liệu thô s ki n cự ệ ủa người dùng tới Google BigQuery để phân tích tùy chỉnh
3.4.6 Các dịch v phát triụ ển và kiểm th ng dử ứ ụng
Realtime Database: Lưu trữ và đồng b d ộ ữliệu người dùng th i gian th c, các ờ ự ứng dụng h trợ tính năng này có thể lưu trữ dữ dữ liệu máy chủ trong tích tắc Các dữ liệu được lưu trữ trong hệ thống cơ sở ữ liệ d u h trợ NoSQL và được đặt trên nền t ng máy chả ủ Cloud, dữliệu được ghi và đọc với thời gian th p nh t tình ấ ấ b ng mili giây N n t ng này h ằ ề ả trợ đồng bộ hóa dữ liệu của người dùng k c khi ể ả không có kết nối m ng, t o lên tr i nghi m xuyên suạ ạ ả ệ ốt bất ch p tình tr ng kấ ạ ết nối internet của người sử dụng Reatime Database của Firebase h trợ: Android, ios, web, C++, unity, và cả xamarin
Crashlytics: H ệthống theo dõi và lưu trữ thông tin l i c ủa ứng dụng đang chạy trên máy người dùng Các thông tin li này được thu thập toàn diện và ngay tức thời Cách trình bày hợp lý v i từng chu trình hoớ ạt động đến xảy ra l i, Các báo cáo tr c quan giự úp người phát tri n có th n m b t và x lý k p th i các l i chính ể ể ắ ắ ử ị ờ của ứng d ng ụ
Cloud Firestore: Lưu trữvà đồng b dộ ữ liệu giữa người dùng và thi t b quy ế ị ở bô toàn c u s dầ ử ụng cơ sở ữ liệu noSQL được lư d u tr trên h t ng cloud Cloud ữ ạ ầ Firestore cung cấp tính năng đồng b hóa tr c tuy n và ngo i tuy n cùng v i các ộ ự ế ạ ế ớ truy vấn d ữliệu hi u qu Tích h p v i các s n ph m ệ ả ợ ớ ả ẩ
Firebase khác cho phép xây d ng các ng d ng th c s ngay c khi k t nự ứ ụ ự ự ả ế ối internet bị gián đoạn
Authentication: Quản lý người dùng một cách đơn giản và an toàn Firebase Auth cung c p nhiấ ều phương pháp xác thực, bao g m email và m t kh u, các nhà ồ ậ ẩ cung c p bên thấ ứ ba như Google hay Facebook, và sử ụ d ng tr c ti p hự ế ệ thống tài kho n hi n t i c a ng i dùng Xây d ng giao di n riêng ho c t n d ng l i th cả ệ ạ ủ ườ ự ệ ặ ậ ụ ợ ế ủa mã nguồn m , giao diở ện người dùng tùy bi n hoàn toàn ế
Cloud Functions: M r ng ng d ng b ng mx ph ở ộ ứ ụ ằ ụtrợ tùy ch nh mà không cần ỉ qu n lý và quy mô các máy ch c a riêng b n Các chả ủ ủ ạ ức năng có thể được kích ho t b i các s ạ ở ựkiện, được phát sinh ra b i các s n ph m Firebase, d ch v Google ở ả ẩ ị ụ Cloud hoặc các bên th ba có s d ng webhooks ứ ử ụ và chia s n i dùng t
Cloud Storage: Lưu trữ ẻ ội dung do ngườ ạo ra như hình ảnh, âm thanh và video vớ ối b nh đối tượớ ng mạnh mẽ, đơn giản và tiết kiệm chi phí được xây d ng cho quy mô c a Google Các Firebase SDK cho Cloud Storage ự ủ thêm tính năng bảo mật của Google để tải lên và t i t p cho các ng d ng Firebase ả ệ ứ ụ của người dùng, bất kể chất lượng m ng ạ
Hosting: Đơn giản hóa lưu trữ web của người dùng v i các công c ớ ụ được thực hi n cệ ụ thể cho các ng d ng web hiứ ụ ện đại Khi t i lên n i dung web, hả ộ ệ thống s ẽ t ự động đẩy chúng đến CDN toàn c u c a h ầ ủ ệthống và cung c p cho h ấ ọchứng ch ỉ SSL miễn phí để người dùng có được trải nghiệm an toàn, đáng tin cậy, độ trễ thấp dù h ọ ở đâu.
Test Lab: ch y th nghi m t ạ ử ệ ự động và tùy ch nh cho ỉ ứng d ng trên các thi t b ụ ế ị ảo và vật lý do Google cung c p Sử dụng Firebase Test Lab trong suốt vòng đời ấ phát triển để khám phá l i và s d ng không nh ử ụ ất quán để có th cung c p m t trể ấ ộ ải nghi m tuyệ ệt vời trên nhi u thi t b ề ế ị
Các chuẩ n giao ti p 54 ế
- HTTP: HTTP là viết tắt của từ Hyper Text Transfer Protocol – giao thức truyền tải siêu văn bản sử dụng trong WWW HTTP bản chất là 1 giao thức cho phép nạp tài nguyên HTTP là nền tảng của sự trao đổi bất kỳ data nào trên website và cũng là một giao thức giữa client (thường là trình duyệt hoặc bất kỳ loại thiết bị hoặc chương trình nào đó) và server – máy chủ (thường là máy tính trên đám mây)
- HTTPS: HTTPS là viết tắt của chữ Hypertext Transfer Protocol
Secure nghĩa là giao thức truyền tải siêu văn bản an toàn Nguồn gốc xuất phát chính là giao thức HTTP, tuy nhiên nó được tích hợp thêm chứng chỉ bảo mật SSL mục đích nhằm m hóa các thông điệp giao tiếp để tăng cường tính bảo mật tối ưu Có thể hiểu theo nghĩa khác như, HTTPS chính là phiên bản khác của HTTP nhưng an toàn và bảo mật hơn
Hoạt động của HTTPS nhìn chung cũng tương tự như HTTP, nhưng mặt khác nó được bổ sung đầy đủ thêm chứng chỉ SSL (Secure Sockets Layer – tầng ổ bảo mật)
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 55 hoặc TLS (Transport Layer Security – bảo mật tầng truyền tải) Hiện tại, đây là những tiêu chuẩn bảo mật hàng đầu áp dụng cho hàng triệu website trên toàn thế giới
*Kết nối giữa Android studio và Firebase qua giao thức HTTPS
Android Studio thường s d nử ụ g Firebase SDK để k t nế ối và tương tác với d ch ị v Firebase Giao thụ ức chính được s d ng trong quá trình truy n nh n dử ụ ề ậ ữ liệu gi a Android Studio và Firebase là HTTPS ữ (HTTP over TLS/SSL) Điều này b o ả v dệ ữ liệu truy n t i gi a thi t bề ả ữ ế ị Android và các dịch vụ Firebase, đảm b o an ả toàn và bảo mật
Cụ thể, Firebase s d ng REST API qua giao thử ụ ức HTTPS để cung c p các ấ d ch v ị ụ như Realtime Database, Cloud Firestore, Authentication, Cloud Functions, và nhi u d ch về ị ụ khác REST API cho phép tương tác với Firebase thông qua các yêu cầu HTTP như GET, POST, PUT, DELETE, vv.
Ví d , khi b n thao tác v i Realtime Database ho c Cloud Firestore t Android ụ ạ ớ ặ ừ Studio, các yêu cầu c a b n s ủ ạ ẽ được gửi đến các URL c ụthể c a Firebase qua giao ủ thức HTTPS D ữliệu được tr v t ả ề ừFirebase cũng được truy n qua l i qua HTTPS ề ạ Điều quan trọng là khi tích h p Firebase vào dợ ự án Android, bạn s thêm các ẽ thư viện Firebase SDK vào mã nguồn của ứng dụng và cấu hình chúng trong tệp cấu hình (như google-services.json cho Android) Firebase SDK cung cấp các phương tiện và API để tương tác dễ dàng với các dịch vụ Firebase mà không cần quan tâm đến chi tiết của vi c gệ ửi và nhận dữ liệu qua HTTPS
Ngoài vi c s d ng giao thệ ử ụ ức HTTPS để truy n nh n dề ậ ữ liệu, Firebase SDK còn h trợ cơ chế ắng nghe s l ựkiện (event-driven) cho các thay đổi trong d ữliệu Điều này giúp ứng d ng c a bụ ủ ạn tự động c p nh t khi có sự thay đổi trên server ậ ậ Firebase
Ví d , khi b n s d ng Realtime Database, b n có thụ ạ ử ụ ạ ể đăng ký lắng nghe cho s ki n khi d ự ệ ữliệu thay đổi Khi có s ự thay đổi, Firebase s thông báo ngay l p tẽ ậ ức và cung c p d u mấ ữliệ ới, giúp ứng d ng cụ ủa bạn duy trì thông tin c p nh ậ ật.
*Ưu nhược điểm của giao thức HTTPS
Hình 3 8 HTTPS protocol Ưu Điểm c a HTTPS: ủ
- B o M t D ả ậ ữLiệu: HTTPS s d ng SSL/TLS (Secure Socket ử ụ
Layer/Transport Layer Security) để mã hóa dữ liệu truy n t i gi a máy ề ả ữ khách và máy chủ Điều này b o v d u khả ệ ữliệ ỏi sự đánh cắp ho c thay ặ đổi trung gian
- Xác Thực Máy Chủ: SSL/TLS cung cấp xác thực máy chủ, đảm b o r ng máy khách kả ằ ết nối đến máy ch chính xác, không b gi m o ủ ị ả ạ
- Tăng Tin Cậy: S xuự ất hiện c a biủ ểu tượng góc khóa hoặc biểu tượng "https://" trong thanh địa chỉ trình duyệt tạo ra sự tin cậy cho người dùng, cho biết rằng trang web đang sử ụ d ng kết nối an toàn
- SEO Tốt Hơn: Các công c tìm kiụ ếm, như Google, ưa chuộng các trang web sử d ng HTTPS, có thụ ể cung cấp ưu tiên trong kết quả tìm kiếm.
- Ngăn Chặn Tấn Công Man-In-The-Middle: Mã hóa dữ u giúp liệ ngăn chặn tấn công man-in the- -middle, trong đó kẻ tấn công cố gắng theo dõi hoặc thay đổi thông tin truy n t ề ải.
- Hiệu Suất: Mã hóa và giải mã dữliệu có th t o ra overhead và ể ạ làm tăng độ trong quá trình truy n t i Tuy nhiên, các phiên b n mtrễ ề ả ả ới của SSL/TLS đ cải thiện hiệu suất đáng kể
- Chi Phí: Việc triển khai và duy trì SSL/TLS có thể tăng chi phí cho các tổ chức, đặc biệt là đối với các chứng ch SSL chính thỉ ức
- Yêu Cầu Tài Nguyên: C n s dầ ử ụng tài nguyên máy ch thực ủ để hi n mã hóa và gi i mã d ệ ả ữliệu, đặc biệt là khi có nhiều k t nế ối đồng th ời.
- Khả Năng Tương Thích: Mặc dù ngày càng nhi u trình duy t và ề ệ dịch vụ web h trợ HTTPS, nhưng vẫn có một số ứ ng d ng và trình duyụ ệt cũ không tương thích tốt
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 57
- Quy Trình Cài Đặt: Việc tri n khai và c u hình SSL/TLS có th ể ấ ể phức tạp đối với người qu n tr hả ị ệ thống không có kinh nghiệm.
3.5.1.2 Hoạ ột đ ng c a giao ti p ủ ế
Hình 3 9 Hoạt động c a giao th củ ứ
Cấu trúc cơ bản của 1 ứng dụng web Nguồn: Tutorialspoint
Giới thiệ u
Trong chương này, ta sẽ trình bày kết quả đ đạt được và giới thiệu các tính năng cũng như hướng dẫn cách thức s dụng sản phẩm ử
4.2.1 Mô hình thự ếc t Smart Battery:
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 67
4.3 Ứng dụng IOT SMART BATTERY
Giao diện chính c a ủ ứng dụng:
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 69
- Giao Diện Đăng Ký Tài Khoản:
• Khởi động ứng d ng và chọn mụ ục "Đăng ký".
• Nhập tên người dùng và mật khẩu Đảm bảo rằng định dạng email đúng và mật khẩu có ít nhất 6 ký tự
• Nhấn nút "Đăng ký" Nếu thông tin không hợp lệ, bạn sẽ nhận được cảnh báo và được yêu cầu nhập lại
• Nhập thông tin đăng nhập (tên người dùng và mật kh u) hoặc chọn ẩ đăng nhập bằng tài khoản Google
• Nhấn nút "Đăng nhập" Nếu thông tin không chính xác, bạn sẽ được yêu cầu nhập lại
- Giao Diện Hiển Thị Thông SốPin:
• Sau khi đăng nhập thành công, bạn sẽ chuyển đến giao diện "Hiển thị thông s " ố
• Ở đây, thông số pin sẽ được hi n thị, đượể c đồng b tộ ừ Firebase
• Cung cấp nút "Log out" ở góc dưới cùng để người dùng có thể thoát khỏi tài kho n hi n tả ệ ại
- Thông Tin Pin T ự Động Cập Nhật:
• Dữ liệu pin sẽ được tự động c p nhậ ật từ Firebase, đảm bảo r ng ằ người dùng luôn nhận được thông tin pin m i nhất ớ
- Đăng Nhập Bằng Tài Khoản Google:
• Khi chọn đăng nhập bằng tài khoản Google, ứng dụng sẽ sử dụng phương thức xác thực Google
• Điều này giúp tăng tính bảo mật và tiện ích cho người dùng
- Kiểm Tra Kết Nối Internet:
• Để đả m bảo tải thông s pin từ ố Firebase, kiểm tra kết n i internet ố của thiết bị
Hướng dẫn trên giúp đảm bảo trải nghiệm người dùng mượt mà và hiệu quả khi s d ng ng dử ụ ứ ụng, đồng thời đảm b o tính b o mả ả ật và độ tin c y trong viậ ệc lưu trữ và hi n thể ị thông số pin
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 71
Mã QR tải ứng d ng: Sau khi hoàn thành xong d án, ta có th tụ ự ể ải ứng d ng ụ b ng mã QR ho c thông qua file Apk ằ ặ
Hình 4 5 Mã QR app IOT SMART BATTERY
Logo ứng dụng trên điện tho ại:
Hình 4 6 Logo ng dứ ụng trên điện tho i ạ
1 Tính năng sạc cân b ng ằ Mi viên pin lệch +- 0.15A
2 Tính năng chống chập BMS ngắt hoàn toàn
3 Tính năng chống sạc ngược
4 Tính năng kiểm tra nhi t ệ độ Ổn định
5 Tính năng kiểm tra dòng Tồn t i sai s ạ ốso với dùng ng h đồ ồ k thuật số kho ng 15% ả
6 Thông báo về App Gửi dữ liệu thành công
7 C nh báo v ả ềApp C nh báo thành công ả
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 73
CHƯƠNG 5 KẾT LU ẬN VÀ HƯỚ NG PHÁT
Hệ thống đ được định hướng và phát tri n v i nhể ớ ững tính năng nhất định Tuy nhiên độ chính xác còn chưa cao do hạn ch v trang thi t bế ề ế ị và trình độ hiện tại; chưa thể đáp ứng việc kiểm thử, nghiên cứu và phát triển hệ thống tới giới hạn tối ưu
5.2 Định hướng phát triển của đề tài
5.2.1 FOTA – Firmware Over The Air
Firmware Over-The-Air (FOTA) là m t công ngh ộ ệQuản lý Ph n mầ ềm Di động (MSM) trong đó phần mềm điều hành của thi t b ế ị di động được nhà sản xuất nâng cấp và c p nh t không dây ậ ậ
FOTA cho phép các nhà s n xu t sả ấ ửa ch a lữ i trong các đơn vị ớ m i, cho phép nhà s n xu t càả ấ i đặ ừt t xa các b n c p nh t ph n mả ậ ậ ầ ềm, tính năng và dịch v m - ụ ới ngay c ả sau khi đ mua thiết bị
Người tiêu dùng xác minh khả năng FOTA thông qua cài đặt thiết bị di động Các b n c p nhả ậ ật FOTA thường có th truy c p thông qua menu thi t b trong ph n ể ậ ế ị ầ quản lý điện tho i / thiạ ết bị hoặc cập nh t ph n mậ ầ ềm / chương trình cơ sở
Nguyên lý FOTA Internet Để có th n p firmware t xa cho ESP32 qua Internet Chúng ta c n 1 máy ch ể ạ ừ ầ ủ lưu giữ Khi cập nh t hệậ thống sẽtuân theo các bước sau:
− Nhà phát triển Upload firmware lên máy chủ
− ESP32 s gẽ ọi 1 API lên server đó, truy vấn xem có b n c p nh t mả ậ ậ ới không Vi c h i này sệ ỏ ẽ đượ ặ ạc l p l i liên t c có th 1 vài phút 1 l n ho c 1 ụ ể ầ ặ vài ngày, tùy người phát tri n ể
− Nếu nhận được thông tin thay đổi version, ESP32 s download ẽ firmware về thông qua internet
− Khởi động lại với firmware mới
Hình 5 1 Nguyên lý FOTA Internet Đánh giá tính khả thi của hướng phát triển
Hướng phát tri n này hoàn toàn kh thi và có th ể ả ểthực hiện được vì các nguyên nhân sau:
− Con chip ESP có h trợOTA bên trong
− Tài liệu và hướng dẫn chi tiết, cụ thể có thể tham khảo nhiều ngu n ồ
− Tính ti n dệ ụng và ưu điểm vượt trội so với vi c n p Firmware b ng ệ ạ ằ dây n p vạ ật lý thông thương
5.2.2 ESP32 Smartconfig thiết lập wifi qua app
Hiện nay, đề tài đang bị hạn chế vì ph i thi t lả ế ập config đăng nhập wifi và mật kh u c ẩ ố định trong Firmware điều này gây một cản tr l n n u muở ớ ế ốn thương mại, gây b t tiấ ện cho người dùng n u mu n s d ng m t m ng Wifi khác ế ố ử ụ ộ ạ Chúng ta cũng không thể cập nhật wifi thông qua FOTA được vì sẽ rất mất thời gian và không ti n l i Vì vệ ợ ậy em đề xuất hướng phát tri n thi t l p Smartconfig ể ế ậ tích hợp vào App c a khóa ủ
Smartconfig là một kĩ thuật c u hình wifi c a thi t b mà không c n n p lấ ủ ế ị ầ ạ ại code, s d ng k t n i gi a wifi c a thi t b vử ụ ế ố ữ ủ ế ị ới điện thoại để truyền thông tin ssid và pass
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 75 c TI t c áp d ng cho h u h t t t c các dòng
Kĩ thuật này đượ ạo ra và đang đượ ụ ầ ế ấ ả chip có s d ng wifi V i ESP32, ESP8266 và các dòng khác c a Espressif h ử ụ ớ ủ ọ cũng sử dụng kĩ thuật này và đóng gói thành ESP Touch
Vậy ưu điểm của SmartConfig là gì ?
− Dễ dàng c u hình wifi cho ESP8266,ESP32 thông qua smartphone ấ
− Không cần phải nạ ại code để ấp l c u hình
− Có thể dùng Smartconfig để ấ c u hình nhi u thiề ết bị ộ m t lúc
Nguyên lý hoạt động của Smartconfig:
Có 2 đặc điểm của dòng chip ESP để có th sử dể ụng được kĩ thuật này
− ESP có khả năng lắng nghe t t c các gói tin không dây WiFi xung ấ ả quanh nó, bao g m cồ ả các gói tin đ được mã hóa
− Các gói tin g i trong mử ạng WiFi được mã hóa và không th ể đọc được nội dung, tuy nhiên độ dài gói tin là m t h ng s ộ ằ ố
Tiến trình Smartconfig như sau:
− ESP ở chế lắng nghe gói tin UDP độ
− Smartphone app gửi các gói tin UDP được mã hóa
− ESP nh n b n tin, kiậ ả ểm tra độ dài c a m i dủ ữ liệu từ đó suy ra từng kí t , ghép n i chúng lự ố ại sẽ ạ t o ra 1 chu i SSID và PASS
− ESP chuyển sang STA mode đăng nhập vào m ng wifi v i thông tin ạ ớ như trên
− App nhận được thông tin ESP đăng nhập vào, lưu địa ch IP c a thiỉ ủ ết b ị đó lại để giao ti p ế Đánh giá tính khả thi của hướng phát triển:
Hướng phát tri n này hoàn toàn kh thi và có th ể ả ểthực hiện được vì các nguyên nhân sau:
− Phần c ng c a Esp có h ứ ủ trợ tính năng thiết lập smartconfig
− Tài liệu và hướng dẫn chi tiết, cụ thể có thể tham khảo nhiều ngu n ồ
− Tính tiện dụng và ưu điểm vượt trội so v i phiên b n hi n t i ớ ả ệ ạ
=> Hướng phát triển hoàn toàn có khả năng thực hiện được
5.2.3 Nâng cấp b o m t khi truy n nhả ậ ề ận dữ liệu Để nâng cao tính bảo mật và đảm bảo Khóa cửa hoạt động một cách an toàn , cần có them cơ chế về Security Access
Cơ chế Seed – Key tăng cường tính bảo mật: Để có thể tang cường tính bảo mật khi kết nối v i Internet, tránh sự xâm nhập ớ của các đối tượng khác, chúng ta c n ph i nâng c p l p b o m t khi ESP32 k t nầ ả ấ ớ ả ậ ế ối v i mớ ạng Internet Hướng phát triển đề tài nh m nâng cao tính b o mằ ả ật ở đây mà em nghiên cứu là cơ chế Seed Key: –
ESP32 sẽ được nạp vào 1 thuật toàn giải mã bao gồm các quá trình sau đây:
− Client yêu c u truy cầ ập đăng nhập đề ở khóa đế m n Esp32
− Thông qua thuật toán gi i mã, Esp32 sả ẽ gen ra 1 dy m được gọi là
“Seed” và gửi l i cho Client ạ
− Client và Esp32 cùng tính toán ra 1 dy m được gọi là “Key” dựa trên 1 thu t toán giậ ải mã
− Sau khi Client tính toán xong g i lử ại “Key” cho Esp để so sánh kết qu ,nả ếu “Key” giống nhau thì Client s ẽ được phép truy c p vào ậ
Hình 5 3 Cơ chế Seed - Key Các thuật toán gi i mã có th dùng ả ể
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 77
Hiện nay có r t nhi u thuấ ề ật toán như MD5, SHA-1 ho c SHA-256, v v các ặ thuật toán băm phải đáp ứng các yêu cầu sau như:
− Điều đầu tiên là thuật toán phải có tính một chiều Về cơ bản, điều đó có nghĩa là bạn không thể dịch ngược trở lại từ giá trị băm sang giá trị gốc ban đầu, b n không th khôi phạ ể ục ho c dặ ịch ngược dữ liệu d a trên giá tr ự ị băm đ cho Giống như dấu vân tay, nếu bạn có dấu vân tay, bạn không thể khôi phục lại diện m o cạ ủa ngư i đó, bạờ n không th biể ết họ có đôi mắt màu gì hoặc b t c ấ ứ điều gì khác v hề ọ Nhưng nếu bạn tìm được một người, bạn luôn có th ể lấy được dấu vân tay của họ
− Thứ hai là nó ph i có tính tả ất định, nghĩa là nếu đưa vào cùng một đối tượng dữ liệu, kết quả trả về phải là giống nhau
− Yêu cầu th ba là nó phứ ải thực hiện phép tính toán nhanh
Dưới đây là một vài đoạn code có sử d ng Thuật toán SHA-256: ụ
Và đây là kết quả nhận được khi mã hóa dãy ký tự: “ Hello SHA 256 from ESP32Learning”:
Hình 5 4 Thu t toán gi i mãậ ả Đánh giá tính kh thi cả ủa hướng phát triển:
Hướng phát tri n này kh thi và có th ể ả ểthực hiện được vì các nguyên nhân sau:
− Các IDE có s n library c a các thu t toán, vi c l p trình hoàn toàn ẵ ủ ậ ệ ậ có khả năng.
− Tài liệu và hướng dẫn có thể tham khảo nhiều nguồn
− Đảm b o kh ả ả năng bảo mật an toàn
=> Hướng phát triển có khả năng thực hiện được
5.2.4 Một số hướng phát triển khác
Ngoài các hướng phát triển đ nghiên cứu ở trên, chúng ta có th them vào mể ột vài hướng phát triển nữa ví dụ như:
− Thêm tính năng tự ng cđộ ảnh báo khi b ịngắt kết nối
− Thêm tính năng login bằng khuôn m t hay b ng gi ng nói ên app ặ ằ ọ tr
− Thêm tính năng sạc b o vả ệ pin, giới hạn phần trăm sạc pin.
Định hướ ng phát tri n c ể ủa đề 73 tài
CHƯƠNG 5 KẾT LU ẬN VÀ HƯỚ NG PHÁT
Hệ thống đ được định hướng và phát tri n v i nhể ớ ững tính năng nhất định Tuy nhiên độ chính xác còn chưa cao do hạn ch v trang thi t bế ề ế ị và trình độ hiện tại; chưa thể đáp ứng việc kiểm thử, nghiên cứu và phát triển hệ thống tới giới hạn tối ưu
5.2 Định hướng phát triển của đề tài
5.2.1 FOTA – Firmware Over The Air
Firmware Over-The-Air (FOTA) là m t công ngh ộ ệQuản lý Ph n mầ ềm Di động (MSM) trong đó phần mềm điều hành của thi t b ế ị di động được nhà sản xuất nâng cấp và c p nh t không dây ậ ậ
FOTA cho phép các nhà s n xu t sả ấ ửa ch a lữ i trong các đơn vị ớ m i, cho phép nhà s n xu t càả ấ i đặ ừt t xa các b n c p nh t ph n mả ậ ậ ầ ềm, tính năng và dịch v m - ụ ới ngay c ả sau khi đ mua thiết bị
Người tiêu dùng xác minh khả năng FOTA thông qua cài đặt thiết bị di động Các b n c p nhả ậ ật FOTA thường có th truy c p thông qua menu thi t b trong ph n ể ậ ế ị ầ quản lý điện tho i / thiạ ết bị hoặc cập nh t ph n mậ ầ ềm / chương trình cơ sở
Nguyên lý FOTA Internet Để có th n p firmware t xa cho ESP32 qua Internet Chúng ta c n 1 máy ch ể ạ ừ ầ ủ lưu giữ Khi cập nh t hệậ thống sẽtuân theo các bước sau:
− Nhà phát triển Upload firmware lên máy chủ
− ESP32 s gẽ ọi 1 API lên server đó, truy vấn xem có b n c p nh t mả ậ ậ ới không Vi c h i này sệ ỏ ẽ đượ ặ ạc l p l i liên t c có th 1 vài phút 1 l n ho c 1 ụ ể ầ ặ vài ngày, tùy người phát tri n ể
− Nếu nhận được thông tin thay đổi version, ESP32 s download ẽ firmware về thông qua internet
− Khởi động lại với firmware mới
Hình 5 1 Nguyên lý FOTA Internet Đánh giá tính khả thi của hướng phát triển
Hướng phát tri n này hoàn toàn kh thi và có th ể ả ểthực hiện được vì các nguyên nhân sau:
− Con chip ESP có h trợOTA bên trong
− Tài liệu và hướng dẫn chi tiết, cụ thể có thể tham khảo nhiều ngu n ồ
− Tính ti n dệ ụng và ưu điểm vượt trội so với vi c n p Firmware b ng ệ ạ ằ dây n p vạ ật lý thông thương
5.2.2 ESP32 Smartconfig thiết lập wifi qua app
Hiện nay, đề tài đang bị hạn chế vì ph i thi t lả ế ập config đăng nhập wifi và mật kh u c ẩ ố định trong Firmware điều này gây một cản tr l n n u muở ớ ế ốn thương mại, gây b t tiấ ện cho người dùng n u mu n s d ng m t m ng Wifi khác ế ố ử ụ ộ ạ Chúng ta cũng không thể cập nhật wifi thông qua FOTA được vì sẽ rất mất thời gian và không ti n l i Vì vệ ợ ậy em đề xuất hướng phát tri n thi t l p Smartconfig ể ế ậ tích hợp vào App c a khóa ủ
Smartconfig là một kĩ thuật c u hình wifi c a thi t b mà không c n n p lấ ủ ế ị ầ ạ ại code, s d ng k t n i gi a wifi c a thi t b vử ụ ế ố ữ ủ ế ị ới điện thoại để truyền thông tin ssid và pass
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 75 c TI t c áp d ng cho h u h t t t c các dòng
Kĩ thuật này đượ ạo ra và đang đượ ụ ầ ế ấ ả chip có s d ng wifi V i ESP32, ESP8266 và các dòng khác c a Espressif h ử ụ ớ ủ ọ cũng sử dụng kĩ thuật này và đóng gói thành ESP Touch
Vậy ưu điểm của SmartConfig là gì ?
− Dễ dàng c u hình wifi cho ESP8266,ESP32 thông qua smartphone ấ
− Không cần phải nạ ại code để ấp l c u hình
− Có thể dùng Smartconfig để ấ c u hình nhi u thiề ết bị ộ m t lúc
Nguyên lý hoạt động của Smartconfig:
Có 2 đặc điểm của dòng chip ESP để có th sử dể ụng được kĩ thuật này
− ESP có khả năng lắng nghe t t c các gói tin không dây WiFi xung ấ ả quanh nó, bao g m cồ ả các gói tin đ được mã hóa
− Các gói tin g i trong mử ạng WiFi được mã hóa và không th ể đọc được nội dung, tuy nhiên độ dài gói tin là m t h ng s ộ ằ ố
Tiến trình Smartconfig như sau:
− ESP ở chế lắng nghe gói tin UDP độ
− Smartphone app gửi các gói tin UDP được mã hóa
− ESP nh n b n tin, kiậ ả ểm tra độ dài c a m i dủ ữ liệu từ đó suy ra từng kí t , ghép n i chúng lự ố ại sẽ ạ t o ra 1 chu i SSID và PASS
− ESP chuyển sang STA mode đăng nhập vào m ng wifi v i thông tin ạ ớ như trên
− App nhận được thông tin ESP đăng nhập vào, lưu địa ch IP c a thiỉ ủ ết b ị đó lại để giao ti p ế Đánh giá tính khả thi của hướng phát triển:
Hướng phát tri n này hoàn toàn kh thi và có th ể ả ểthực hiện được vì các nguyên nhân sau:
− Phần c ng c a Esp có h ứ ủ trợ tính năng thiết lập smartconfig
− Tài liệu và hướng dẫn chi tiết, cụ thể có thể tham khảo nhiều ngu n ồ
− Tính tiện dụng và ưu điểm vượt trội so v i phiên b n hi n t i ớ ả ệ ạ
=> Hướng phát triển hoàn toàn có khả năng thực hiện được
5.2.3 Nâng cấp b o m t khi truy n nhả ậ ề ận dữ liệu Để nâng cao tính bảo mật và đảm bảo Khóa cửa hoạt động một cách an toàn , cần có them cơ chế về Security Access
Cơ chế Seed – Key tăng cường tính bảo mật: Để có thể tang cường tính bảo mật khi kết nối v i Internet, tránh sự xâm nhập ớ của các đối tượng khác, chúng ta c n ph i nâng c p l p b o m t khi ESP32 k t nầ ả ấ ớ ả ậ ế ối v i mớ ạng Internet Hướng phát triển đề tài nh m nâng cao tính b o mằ ả ật ở đây mà em nghiên cứu là cơ chế Seed Key: –
ESP32 sẽ được nạp vào 1 thuật toàn giải mã bao gồm các quá trình sau đây:
− Client yêu c u truy cầ ập đăng nhập đề ở khóa đế m n Esp32
− Thông qua thuật toán gi i mã, Esp32 sả ẽ gen ra 1 dy m được gọi là
“Seed” và gửi l i cho Client ạ
− Client và Esp32 cùng tính toán ra 1 dy m được gọi là “Key” dựa trên 1 thu t toán giậ ải mã
− Sau khi Client tính toán xong g i lử ại “Key” cho Esp để so sánh kết qu ,nả ếu “Key” giống nhau thì Client s ẽ được phép truy c p vào ậ
Hình 5 3 Cơ chế Seed - Key Các thuật toán gi i mã có th dùng ả ể
GV:TS Bùi ình Bá Đ SV: Tr n H o Nam- ầ ạ Phạm Đức Quang 77
Hiện nay có r t nhi u thuấ ề ật toán như MD5, SHA-1 ho c SHA-256, v v các ặ thuật toán băm phải đáp ứng các yêu cầu sau như:
− Điều đầu tiên là thuật toán phải có tính một chiều Về cơ bản, điều đó có nghĩa là bạn không thể dịch ngược trở lại từ giá trị băm sang giá trị gốc ban đầu, b n không th khôi phạ ể ục ho c dặ ịch ngược dữ liệu d a trên giá tr ự ị băm đ cho Giống như dấu vân tay, nếu bạn có dấu vân tay, bạn không thể khôi phục lại diện m o cạ ủa ngư i đó, bạờ n không th biể ết họ có đôi mắt màu gì hoặc b t c ấ ứ điều gì khác v hề ọ Nhưng nếu bạn tìm được một người, bạn luôn có th ể lấy được dấu vân tay của họ
− Thứ hai là nó ph i có tính tả ất định, nghĩa là nếu đưa vào cùng một đối tượng dữ liệu, kết quả trả về phải là giống nhau
− Yêu cầu th ba là nó phứ ải thực hiện phép tính toán nhanh
Dưới đây là một vài đoạn code có sử d ng Thuật toán SHA-256: ụ
Và đây là kết quả nhận được khi mã hóa dãy ký tự: “ Hello SHA 256 from ESP32Learning”:
Hình 5 4 Thu t toán gi i mãậ ả Đánh giá tính kh thi cả ủa hướng phát triển:
Hướng phát tri n này kh thi và có th ể ả ểthực hiện được vì các nguyên nhân sau:
− Các IDE có s n library c a các thu t toán, vi c l p trình hoàn toàn ẵ ủ ậ ệ ậ có khả năng.
− Tài liệu và hướng dẫn có thể tham khảo nhiều nguồn
− Đảm b o kh ả ả năng bảo mật an toàn
=> Hướng phát triển có khả năng thực hiện được
5.2.4 Một số hướng phát triển khác
Ngoài các hướng phát triển đ nghiên cứu ở trên, chúng ta có th them vào mể ột vài hướng phát triển nữa ví dụ như:
− Thêm tính năng tự ng cđộ ảnh báo khi b ịngắt kết nối
− Thêm tính năng login bằng khuôn m t hay b ng gi ng nói ên app ặ ằ ọ tr
− Thêm tính năng sạc b o vả ệ pin, giới hạn phần trăm sạc pin.