Đặt vấn đề Ngày nay với sự phát triÅn nhanh chóng cÿa công nghá, công viác giám sát và điÃu khiÅn thiÁt bá t¿i nhà t¿i bất cā nơi nào ngày càng quan trọng hơn hÁt đÅ giúp chúng ta tránh những rÿi ro và lãng phí đián năng tiêu thụ. Vì thÁ mà em đã thực hián đà tài: <THIÀT KÀ HàP ĐIÂU KHIÄN GIÁM SÁT THIÀT Bà THÔNG MINH= nhằm mục đích kiÅm soát được sự ho¿t đáng cÿa các thiÁt bá đián đang tiêu thụ t¿i nhà. Tính cấp thiết của đề tài Theo tính toán, māc lãng phí đián năng cÿa Viát Nam cao gấp 1,5 - 6 lần so với thÁ giới, còn táng hợp cÿa Bá Công Thương cho thấy māc lãng phí cÿa đián cÿa ta rất cao, từ 10 - 50%. Hián tượng lãng phí trong sử dụng đián có thÅ bắt gặp á bất cā đâu, từ há gia đình cho đÁn các cơ quan và doanh nghiáp.
NhiÃu ngưßi cā nghĩ tắt đi mát bóng đèn, mát tấm biÅn quÁng cáo hay chiÁc qu¿t cũng chẳng tiÁt kiám được đián năng là bao nhiêu. Tuy nhiên, theo các tính toán, chß cần tắt mát bóng đèn, rút các thiÁt bá đián khi không sử dụng, hay dùng các thiÁt bá trong gia đình đúng cách có thÅ tiÁt kiám đián từ 10-15% hàng tháng. Chính vì vậy há thống này có các mục hẹn cài đặt tắt giß hoặc là giám sát, điÃu khiÅn sự ho¿t đáng các thiÁt bá dß dàng trên màn hình LCD hoặc āng dụng trên đián tho¿i Android. Mÿc tiêu đề tài Mục tiêu đà tài lần này cÿa em là: Thực hián mát thiÁt bá giám sát sự ho¿t đáng, điÃu khiÅn những đß dùng đián trong nhà, đọc được nhiát đá t¿i phòng tự đáng bật qu¿t hay điÃu hòa trong phòng.
Hê thống còn có thÅ cài đặt được các giá trá hẹn bật/tắt thiÁt bá trong nhà qua mát màn hình cÁm āng. Ngoài ra hê thống còn có thÅ kiÅm soát á bất cā nơi nào thông qua m¿ng bằng āng dụng trên đián tho¿i 1. Giới h¿n đề tài Đà tài lần này cÿa em là mát đà tài không quá mới, tuy nhiên bước đầu làm quen với vi điÃu khiÅn ARM đÅ giao tiÁp với các module thiÁt bá và tài liáu h¿n chÁ rất nhiÃu đa phần là bằng tiÁng Anh. Vì vậy sai sót là vẫn còn, kính mong thầy/cô bỏ qua những sai sót lần này.
1 Chư¢ng 2: C¡ SÞ LÝ THUY¾T LIÊN QUAN 2. Giới thißu về phần mềm lập trình Keil uVison5 Phần mÃm lập trình cho vi điÃu khiÅn ARM có nhiÃu chương trình khác nhau, sau đây em s¿ sử dụng mát chương trình thông dụng và dß dàng tiÁp cận là Keil uVision5. ĐÅ sử dụng thì đầu tiên phÁi cài đặt chương trình Keil uVision5, nên làm theo hướng dẫn cÿa phần mÃm. BiÅu tượng Keil uVision5 sau khi cài xong xuất hián trên desktop như hình sau: Hình 2.1 Biểu tượng phần mềm Keil uVision5.
- Hướng dẫn sử dụng phần mÃm Keil uVision5: + Biên so¿n chư¢ng trình c¢ bÁn Bước 1: Nên t¿o mát thư mục đÅ lưu và quÁn lý các chương trình lập trình cho vi điÃu khiÅn. Bước 2: Khái t¿o chương trình Keil uVision5, giao dián xuất hián như hình 2.2 Thông thưßng thì phần mÃm s¿ khái t¿o và má mát chương trình so¿n thÁo sau cùng hoặc má mát āng dụng có trong phần mÃm.2 Giao diện phần mềm Keil uVision5 2 Bước 3: TÁi thư vián cho dòng chip ARM đang sử dụng, dòng chip em đang sử dụng là STM32F407VET6, tiÁn hành tÁi thư vián theo thā tự 1,2,3 trong hình 2.3, trong thā tự 4 thì nÁu chưa có thì bấm Install, nÁu có rßi thì bấm Update kiÅm tra cập nhật.3: TÁi thư viện cho phần mềm Bước 4: TiÁn hành chọn biÅu tượng open, rßi mục <Project= và chọn <New uVision Project= theo thā tự 1,2 trong hình 2.3 T¿o project mới 3 Chọn thư chāa file ngußn và đặt tên Project theo ý muốn như hình 2.4 làm theo thā tự 1 và 2.4 Đặt tên thư mục mới 4 Bước 5: Chọn dòng chip sử dụng, làm theo thā tự 1,2,3,4,5 trong hình 2.5: Chọn chip sử dụng Giao dián sau xuất hián như hình 2.6 và trong file chưa có gì.6: Màn hình so¿n thÁo 5 Bước 6: T¿o file main.c cho chương trình chính cÿa vi điÃu khiÅn bằng tá hợp phím <Ctrl+N=, nhấn tiÁp tá hợp phím <Ctrl+S= đÅ lưu file. Nhớ lưu chung đáa chß cÿa Project và đặt đúng tên là main. Ngôn ngữ KeilC uVision có phân biát chữ hoa hay chữ thưßng.
Tuy nhiên phần mÃm này có hß trợ gợi ý khi viÁt câu lánh. Sau đó tiÁn hành viÁt code và biên dách bằng cách nhấn phím F9. NÁu không sai cú pháp thì chương trình s¿ hián thông báo biên dách thành công như hình 2.7 Thông báo biên dịch thành công Bước 7: TiÁn hành n¿p code bằng cách nhấn F8 hoặc Load như hình đÅ n¿p code vào chip. Sau đó tiÁn hành kiÅm tra trên Board.8 N¿p code vào board L°u ý: Phần cứng và phần mềm nên đồng bộ với nhau, nếu phần cứng kết nối với Port nào thì phần mềm phải khởi tạo chính Port đó.
Nếu không thì mạch sẽ không hoạt động nh° mong muốn. Giới thißu phần mềm lập trình Arduino IDE Trong há thống thiÁt kÁ này, đÅ có thÅ giao tiÁp qua Wifi thì nhóm em sử dụng Module ESP8266. ĐÅ viÁt code cho Module này nhóm em sử dụng phần mÃm lập trình là Arduino IDE. ĐÅ sử dụng phần mÃm này thì chúng ta nên làm theo các hướng dẫn cÿa phần mÃm.
BiÅu tượng Arduino IDE sau khi cài xong xuất hián trên desktop như hình sau: Hình 2. Phần mềm lập trình Arduino IDE 6 Bước 1: Nên t¿o mát thư mục đÅ lưu và quÁn lý các chương trình lập trình cho vi điÃu khiÅn. Bước 2: Khái t¿o chương trình Keil uVision5, giao dián xuất hián như hình 2.10 Thông thưßng thì phần mÃm s¿ khái t¿o và má mát chương trình so¿n thÁo sau cùng hoặc má mát āng dụng có trong phần mÃm.10 Giao diện phần mềm Arduino IDE Bước 3: TÁi thư vián cho dòng chip ESP đang sử dụng, dòng chip em đang sử dụng là ESP8266, tiÁn hành tÁi thư vián bằng cách nhấn tá hợp phím <Ctrl+Shift+I= và làm theo các thā tự như hình 2.11 đÅ tiÁn hành cài đặt thư vián cho ESP8266. + à thā tự thā 1: ta nhập <ESP8266= vào textbox đÅ tìm kiÁm thư vián và ESP8266.
+ à thā tự thā 2: ta tiÁn hành <Install= cài đặt thư vián á hình 2.11 do em đã cài trước nên không hián.11 Cài đặt thư viện cho ESP8266 Bước 4: TiÁn hành nhấn tá hợp phím <Ctrl+N= đÅ t¿o mát Project mới.12 Hình Ánh sau khi t¿o Project mới 8 Bước 5: Chọn dòng chip sử dụng, làm theo thā tự 1,2 như trong hình 2.13 Chọn Board cần sử dụng Bước 6: Sau khi viÁt code xong tiÁn hành n¿p code bằng cách nhấn vào phím Upload như trong hình 2.14 N¿p và kiểm tra lỗi 2. Giới thißu phần mềm lập trình Android Studio Đây là phần mÃm lập trình āng dụng cho các đián tho¿i ch¿y há điÃu hành Android. Trong phần thiÁt kÁ lần này, nhóm em có sử dụng đián tho¿i đÅ giao tiÁp chung với há thống. Vì thÁ đÅ sử dụng phần mÃm này thì ta nên làm theo các bước như bên dưới.
BiÅu tượng Arduino IDE sau khi cài xong xuất hián trên desktop như hình sau: Hình 2.15 Phần mềm lập trình Android Studio 9 Bước 1: TiÁn hành má và t¿o mát Project mới theo thā tự 1, 2, 3 như trong hình 2.16 Tiến hành t¿o Project mới Sau khi ta làm xong các bước trên, màn hình s¿ hián ra mát cửa sá mới như hình 2.17 ta tiÁn hành nhấn vào <Empty Activity= và ấn <Next= 10 Hình 2.17 Chọn kiểu Project Cửa sá mới tiÁp tục hián ra, á cửa sá này ta đặt tên cho Project mới và chọn đưßng dẫn cho Project. Bên c¿nh đó, phần mÃm s¿ hỏi ta Minimum SDK tāc là giá trá nhỏ nhất cho phiên bÁn Version Android mà Project này hß trợ. Ta nên chọn SDK 15 cho phù hợp với đ¿i đa số đián tho¿i ngày nay.18 Đặt tên cho Project, chọn đường dẫn, SDK MINIMUM TiÁn hành liên kÁt với Google Firebase, đÅ hiÅu rõ hơn và Google Firebase em s¿ trình bày chi tiÁt á Chương 3. Mục này chß trình bày và cách liên kÁt với Google Firebase với phần mÃm Android Studio.
Sau khi làm xong theo hình 2.18, cửa sá lập trình Project mới s¿ hián ra. T¿i đây đÅ liên kÁt với Google Firebase ta làm theo các bước sau: + Đầu tiên ta vào mục Tools\ Firebase từ cửa sá lập trình Project mới cÿa ta đang má 12 Hình 2.19 Cách liên kết với Google Firebase Cửa sá Firebase má ra bên phÁi āng dụng cÿa ta. Từ đây ta có thÅ làm theo các hướng dẫn cÿa Google. Các hàm mẫu và chß dẫn cũng khá chi tiÁt.
NÁu muốn dùng Firebase t¿o cơ sá dữ liáu thßi gian thực, ta nhấn vào mục Realtime Database Hình 2.20 Cài đặt các yêu cầu liên kết 13 Sau đó ta nhấn tiÁp vào mục Save and retrieve data. Ta lần lượt thực hián các bước tiÁp theo Hình 2.21 Lưu dữ liệu liên kết Sau khi thực hián xong viác liên kÁ āng dụng với Firebase thì b¿n s¿ thấy thông báo như sau t¿i cửa sá Firebase trong āng dụng.22 Thông báo liên kết thành công 14 2. Lý thuy¿t về vi điều khiển STM32 2. Táng quan về vi điều khiển ARM Giới thißu Cấu trúc ARM (viÁt tắt cÿa Acorn RISC Machine) là mát cấu trúc vi xử lý 32 bit kiÅu RISC (thuác kiÁn trúc Hardvard, có tập lánh rút gọn) được sử dụng ráng rãi trong các thiÁt kÁ nhúng.
Do có đặc điÅm tiÁt kiám năng lượng, các bá CPU ARM chiÁm ưu thÁ trong các sÁn phẩm đián tử di đáng, mà với các sÁn phẩm này viác tiêu tán công suất thấp là mát mục tiêu thiÁt kÁ quang trọng hang đầu. Ngày nay ARM được āng dụng ráng rãi trên mọi lĩnh vực cÿa đßi sống: Robot, máy tính, đián tho¿i, xe hơi, máy giặt& Hình 2.23 Một số ứng dụng của ARM 15 Lịch sÿ phát triển ARM Viác thiÁt kÁ ARM được bắt đầu tử năm 1983 trong mát dự án phát triÅn cÿa công ty máy tính Acorn. Nhóm thiÁt kÁ hoàn thành viác phát triÅn mẫu gọi là ARM1 năm 1985, và vào năm sau, nhóm hoàn thành sÁn phẩm gọi là ARM2 với thiÁt kÁ đơn giÁn chß gßm 30. ARM2 có tuyÁn dữ liáu 32 bit, không gian đáa chß 26 bit tāc cho phép quÁn lý đÁn 64 Mbyte đáa chß và 16 thanh ghi 32 bit.
ThÁ há sau, ARM3 được t¿o ra với 4KB cache và có chāc năng được cÁi thián nhiÃu lần hơn. Vào những năm cuối thập niên 80, hang máy tính Apple Computer và hang VLSI Technology bắt đầu hợp tác với Acorn đÅ phát triÅn các thÁ há lõi ARM mới. KÁt quÁ sự hợp tác này là ARM6.