Điều Khiển Thiết Bị Qua Wifi Arduino

Hiện nay, nhà thông minh đang càng ngày trở đề xuất phổ biến. Việc tạo nên các thứ IoT là cách cực tốt để giúp cho căn nhà của chúng ta được tiện nghi hơn. Nó mang đến phép họ điều khiển các thiết bị gia dụng, khóa cửa, đồ đạc bằng smartphone thông minh hoặc máy chủ web. Ở bài viết này, tôi đã hướng dẫn các bạn tạo ra một ứng dụng nhỏ dại để điều khiển và tinh chỉnh thiết bị điện qua wifi bằng cách sử dụng một ứng dụng android được tạo nên từ MIT phầm mềm Inventor.

Bạn đang xem: Điều khiển thiết bị qua wifi arduino


Nội dung bài viết


MIT tiện ích Inventor là gì?

MIT tiện ích Inventor là một trang website mã nguồn mở dành riêng cho Android. Thuở đầu nó được tạo ra bởi Google nhưng hiện nay được bảo trì hoạt động bởi Học viện công nghệ Massachusetts MIT (Massachusetts Institute of Technology). Trong cả một tín đồ mới bước đầu sử dụng MIT phầm mềm Inventor cũng rất có thể dễ dàng tạo nên cho mình các ứng dụng cho Android. MIT phầm mềm Inventor thực hiện giao diện hình ảnh GUI (Graphical User Interface) có thể chấp nhận được người dùng có thể kéo với thả các đối tượng người tiêu dùng trực quan để tạo những ứng dụng hoàn toàn có thể dễ dàng chạy trên các thiết bị Android.


*

Module relay bao gồm các linh kiện điện tử (transistor, điện trở, diode, …) được kết nối với nhau trên một board mạch và triển khai một tác dụng nhất định như hình mặt dưới. Transistor được áp dụng để khuếch đại loại điện, năng lượng điện trở được áp dụng để phân cực mang đến transistor, và nếu transistor tắt, diode được thực hiện để đảm bảo transistor lúc cuộn dây của relay xả năng lượng.

*

ESP8266 NodeMCURelay
VCCVCC
GNDGND
D4Input

Bây giờ họ phải tạo nên một vận dụng Android bằng cách sử dụng MIT phầm mềm Inventor để điều khiển và tinh chỉnh các sản phẩm gia dụng.

Tạo ứng dụng app android dùng MIT phầm mềm Inventor

Bây giờ chúng ta sẽ tạo thành một ứng dụng game android bằng MIT tiện ích Inventor để tinh chỉnh và điều khiển các thiết bị điện qua wifi theo các bước sau.

Đầu tiên các bạn hãy truy vấn vào website của MIT Application Inventor: http://ai2.appinventor.mit.edu/.

Sau khi nhấp vào “Create Apps!“ ở góc cạnh trên cùng mặt trái, bạn tiến hành đăng nhập với thông tin tài khoản gmail của chính mình nhé.


*

Tiếp theo, các bạn hãy đặt tên cho dự án.

*

Các các bạn lưu ý, cột Components cho thấy thêm các đối tượng người tiêu dùng được sử dụng để xây dựng giao diện cho áp dụng này. Bạn cũng có thể thay thay đổi thuộc tính của các đối tượng người dùng trong cột Properties.


Sau khi thi công giao diện cho ứng dụng xong, các bạn nhấp vào “Blocks” ở góc cạnh trên bên phải đặt lập trình cho vận dụng của bạn.


*

Sau khi kiến thiết giao diện và lập trình cho ứng dụng xong, chúng ta sẽ đóng gói ứng dụng ra tệp tin apk và cài vào điện thoại của mình. Để xuất ra được file apk các bạn chọn “Build” trên thực đơn rồi chọn “App“. Bao gồm 2 phương pháp để biên dịch và setup ứng dụng vào năng lượng điện thoại.

Cách 2: Biên dịch ra file game android và mua đặt. Đầu tiên, các bạn sẽ download file android về máy tính (chọn save .apk lớn my computer), sau đó xào luộc file này sang smartphone để mua đặt.

Xem thêm: Top 5 Thư Viện Điện Tử S.Hub, Đa Phương Tiện (Không Gian Chia Sẻ

*

Trong bài viết này tôi chọn lựa cách 1.

Để thực hiện, vào giao diện kiến thiết của AI2, chúng ta chọnBuild >> App(provide QR code for .apk)

Sau lúc biên dịch kết thúc sẽ xuất hiện một mã QR code, bạn sử dụng ứng dụng MIT AI2 Companion để quét mã vén QR, tiếp đến file app android sẽ tự động được sở hữu về điện thoại. Cuối cùng, bạn thiết lập ứng dụng vào điện thoại thông minh của mình.

Bây giờ ứng dụng của doanh nghiệp đã sẵn sàng. Mà lại để hoàn toàn có thể điều khiển thiết bị điện qua wifi bằng điện thoại thông minh bạn cần tiến hành một bước sau cùng sau đây.


Bây giờ bọn họ phải nạp chương trình cho NodeMCU để tạo nên một sever web HTTP đơn giản và dễ dàng để tinh chỉnh thiết bị điện trong nhà. Họ sẽ sử dụng phương thức HTTP GET để giao tiếp giữa các ứng dụng android ESP8266 cùng Android.

Đọc thêm bài bác viết: gợi ý lập trình ESP8266 NodeMCU sử dụng Arduino IDE

Chương trình

#include

const char* ssid = “ten-wifi”;

const char* password = “matkhau-wifi”;

WiFiServer server(80);

void setup()

Serial.begin(115200);

delay(10);

pinMode(2, OUTPUT);

digitalWrite(2, 0);

Serial.println();

Serial.println();

Serial.print(“Connecting to lớn “);

Serial.println(ssid);

WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED)

delay(500);

Serial.print(“.”);

Serial.println(“”);

Serial.println(“WiFi connected”);

server.begin();

Serial.println(“Server started”);

Serial.println(WiFi.localIP());

void loop()

WiFiClient client = server.available();

if (!client)

return;

Serial.println(“new client”);

while (!client.available())

delay(1);

String req = client.readStringUntil(‘ ’);

Serial.println(req);

client.flush();

int val;

if (req.indexOf(“/gpio/0”) != -1)

val = 0;

else if (req.indexOf(“/gpio/1”) != -1)

val = 1;

else

Serial.println(“invalid request”);

client.stop();

return;

digitalWrite(2, val);

client.flush();

String s = “HTTP/1.1 200 OK Content-Type: text/html GPIO is now “;

s += (val) ? “high” : “low”;

s += “”;

Giải say mê chương trình

Dưới đây tôi giải thích ngắn gọn đoạn công tác (code) bên trên để chúng ta có thể hiểu lịch trình thực sự chuyển động như vậy nào.

Tôi sử dụng lệnh include để chương trình thiết lập thư viện tất cả sẵn mang lại mô-đun ESP8166 WiFi và nhập tin tức đăng nhập WiFi như SSID và mật khẩu.

#include

const char* ssid = “ten-wifi”;

const char* password = “matkhau-wifi”;

Serial Monitor được khởi đụng ở tốc độ truyền mặc định mang lại NodeMCU

Serial.begin(115200);

Chân biểu lộ ngõ vào của Relay được kết nối với chân D4, tức là chân GPIO 2 của module NodeMCU.

pinMode(2, OUTPUT);

digitalWrite(2, 0);

Trong phần void setup, đoạn công tác này nhằm mục đích mục đích kết nối với WiFi. Quy trình này được tiến hành theo vòng lặp, có nghĩa là chương trình chạy cho đến lúc nào kết nối được với WiFi. Do vậy, bạn phải nhập chính xác tên và mật khẩu wifi của bạn.

void setup() {

Serial.println();

Serial.println();

Serial.print(“Connecting to “);

Serial.println(ssid);

WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED)

delay(500);

Serial.print(“.”);

Serial.println(“”);

Serial.println(“WiFi connected”);

Trong phần void loop, công tác sẽ soát sổ xem client đã liên kết chưa. Nó chờ cho đến khi client gửi tài liệu và thực hiện các tác vụ theo đầu vào.

void loop() {

WiFiClient client = server.available();

if (!client)

return;

Serial.println(“new client”);

while (!client.available())

delay(1);

Bạn có thể kiểm tra web server của bạn có chuyển động hay chưa bằng cách sử dụng những URL sau nhằm BẬT hoặc TẮT đèn điện.

Lưu ý: 192.168.x.xxx là add IP của NodeMCU. Bạn cũng có thể tìm thấy add IP này bên trên Serial Monitor. Khi chúng ta chạy công tác trên Arduino IDE, lịch trình sẽ in add IP của vật dụng trên Serial Monitor. Đồng thời, nó sẽ xác nhận xem web hệ thống có vận động hay không.

Kết luận

Qua nội dung bài viết này, chúng ta cũng có thể điều khiển thiết bị năng lượng điện qua wifi hoặc bất kỳ thiết bị điện tử như thế nào bằng vận dụng Android dựa trên ứng dụng IoT này.