Hướng dẫn cài đặt và sử dụng Blynk New 2.0 trên Arduino IDE với ESP8266
Mục lục:
- Giới thiệu về blynk
- Hướng dẫn cài đặt và sử dụng Blynk New 2.0 với Esp8266
- Sơ đồ kết nối và code tham khảo
1. Giới thiệu về blynk
Blynk là một nền tảng với các ứng dụng điện thoại thông minh cho phép bạn có thể dễ dàng tương tác với bộ vi điều khiển như: Arduino, Esp8266, Esp32 hoặc Raspberry qua Internet.
Blynk App là một bảng điều khiển kỹ thuật số cho phép bạn có thể xây dựng giao diện đồ họa cho dự án của mình bằng cách kéo và thả các widget khác nhau mà nhà cung cấp thiết kế sẵn.
Blynk không bị ràng buộc với một số bo hoặc shield cụ thể. Thay vào đó, nó hỗ trợ phần cứng mà bạn lựa chọn. Cho dù Arduino hoặc Raspberry Pi của bạn được liên kết với Internet qua Wi-Fi, Ethernet hoặc chip ESP8266, Blynk sẽ giúp bạn kết nối và sẵn sàng cho các dự án IoT.
Blynk Server – chịu trách nhiệm về tất cả các giao tiếp giữa điện thoại thông minh và phần cứng. Bạn có thể sử dụng Blynk Cloud hoặc chạy cục bộ máy chủ Blynk riêng của mình. Nó là mã nguồn mở, có thể dễ dàng xử lý hàng nghìn thiết bị và thậm chí có thể được khởi chạy trên Raspberry Pi.
Thư viện Blynk – dành cho tất cả các nền tảng phần cứng phổ biến – cho phép giao tiếp với máy chủ và xử lý tất cả các lệnh đến và lệnh đi.
Mỗi khi bạn nhấn một nút trong ứng dụng Blynk, thông điệp sẽ truyền đến không gian của đám mây Blynk, và tìm đường đến phần cứng của bạn.
Mọi thứ bạn cần để xây dựng và quản lý phần cứng được kết nối: cung cấp thiết bị, hiển thị dữ liệu cảm biến, điều khiển từ xa với các ứng dụng web và di động, cập nhật chương trình cơ sở qua mạng, bảo mật, phân tích dữ liệu, quản lý người dùng và truy cập, cảnh báo, tự động hóa và nhiều thứ khác hơn…
Đặc tính
- API và giao diện người dùng tương tự cho tất cả phần cứng và thiết bị được hỗ trợ
- Kết nối với đám mây bằng cách sử dụng:
- Wifi
- Bluetooth và BLE
- Ethernet
- USB (Nối tiếp)
- GSM
- …
- Bộ Widget dễ sử dụng
- Thao tác ghim trực tiếp mà không cần viết mã
- Dễ dàng tích hợp và thêm chức năng mới bằng cách sử dụng ghim ảo
- Theo dõi dữ liệu lịch sử qua tiện ích SuperChart
- Giao tiếp giữa thiết bị với thiết bị sử dụng Bridge Widget
- Gửi email, tweet, push notification…
Các tính năng mới liên tục được bổ sung!
Review về app Blynk new 2.0 so với phiên bản Blynk cũ
Những ưu điểm của Blynk new 2.0:
- Có thể cập nhật OTA
- Có sẵn phần thêm ESP làm thiết bị và add wifi cho ESP sử dụng
- Các button có thể thêm icon, hình ảnh vào để cá nhân hóa, thể hiện trực quan hơn, người dùng có thể dễ dạng nhận biết button đó là để điều khiển thiết bị nào.
- Không cần thêm cầu kết nối data giữa các thiết bị khác nhau ở code nữa , chỉ cần chọn nó dùng data stream nào là được, ví dụ là dùng 2 thiết bị muốn ấn bật tắt trên 1 thiết bị , nó sẽ đồng bộ hóa ngay vs thiết bị kia để hiển thị trạng thái của cả 2 là giống nhau
- Sử dụng số lượng Widget box tùy ý không bị giới hạn Enzeny như xưa, ngày xưa muốn dùng nhiều sẽ phải làm bộ Pi server, vừa tốn tiền, vừa bị lag hơn server chính hãng, dùng mấy server chia sẻ trên các nhóm cộng đồng thì mất bảo mật.
Những nhược điểm của app blynk new 2.0:
- Bản miễn phí chỉ dùng được 2 Devices trên 1 ứng dụng, Device ở đây tương tự như Project trên app cũ, app cũ có thể tạo được nhiều project
- Ngoài ra bản miễn phí còn 1 cái nữa là cái đồ thị theo dõi (Superchart) chỉ dùng được duy nhất 1 data stream ,muốn xem thêm cái khác thì phải thêm ô (Superchart ) khác nữa và sẽ khó so sánh các thông số trực quan, bản cũ sẽ dùng được 4 cái stream sẵn có, bản mới muốn có phải xài bảng tốn phí
- Không có theo dõi GPS như bảng cũ
Như vậy, theo mình thấy app mới cho người dùng doanh nghiệp là chính, phức tạp hơn cho lập trình viên vì cách setup nhiều bước hơn tuy nhiên có nhiều tính năng mới, thiết kế đẹp, có OTA là 1 lợi thế. App cũ phù hợp cho các bạn sinh viên, những ai cần nghiên cứu, các đồ án, dự án nhỏ…
2. Hướng dẫn cài đặt và sử dụng Blynk New 2.0 với Esp8266
Yêu cầu: Ở phần mềm Arduino Ide đã cài board esp8266, thêm thư viện cho blynk mới
Tải thư viện Blynk tại đây: https://github.com/blynkkk/blynk-library
Sau khi tải vào Arduino IDE chọn Sketch -> Include library -> Add .ZIP library và chọn file vừa tải về.
Thiết lập Blynk trên máy tính:
Đầu tiền truy cập vào https://blynk.cloud/ đăng nhập, nếu chưa có tài khoản thì chọn Create new account để đăng ký. Các bạn nhập tên email vào, sau đó tích chọn Sign Up.
Họ sẽ gửi mail về cho bạn, sau đó chọn Create Pasword để tạo mật khẩu. Sau khi có tài khoản, bạn đăng nhập vào chọn New Template, nhập tên và chọn đầy đủ như hình dưới:
Sau khi tạo xong sẽ hiện giao diện bên dưới, ta copy mã Template để dán vào code, link tải code mình sẽ để ở phần dưới.
Tiếp theo, chọn Datastreams -> Virtual Pin -> nhập đầy đủ datastream của Pin -> Create
Ở ví dụ này mình làm gửi dữ liệu cảm biến nhiệt độ, độ ẩm lên Blynk nên các bạn tạo tương tự một Pin V1 là độ ẩm, và tạo V3 là Pin điều khiển Led:
Sau khi tạo Pin xong, ta chọn Web Dashboard, kéo các Gauge bên trái qua để hiển thị nhiệt độ và độ ẩm, Switch để làm công tắc bật tắt Led, một biểu đồ chart để để hiển thị nhiệt độ (bản free chỉ hiển thị được 1 biểu đồ), nhấn biểu tượng cài đặt để chọn từng Pin hiển thị phù hợp.
Sau khi chọn xong ta ấn Save để lưu cài đặt:
Tiếp theo, chọn biểu tượng Seach -> New Device để chọn thiết bị từ From template:
Chọn tên template mà bạn đã tạo -> Create, sau đó xem kết quả:
Thiết lập Blynk trên điện thoại:
Trên điện thoại sau khi tải app Blynk mới về, các bạn mở lên sau đó đăng nhập tài khoản đã tạo bên web, tên thiết bị bạn tạo lúc nãy trên web sẽ được hiển thị sẵn:
Tương tự như bản cũ, các bạn chọn biểu tượng Button để điều khiển led, Value Display để hiển thị nhiệt độ, độ ẩm… nhớ chọn chân Pin cho từng mục:
Thành quả sau khi tạo xong, các bạn có thể thay đổi màu, thiết kế giao diện cho từng dự án:
3. Sơ đồ kết nối và code tham khảo:
Các sản phẩm bạn cần cho ví dụ này:
Module Thu Phát Wifi ESP8266 NodeMCU Lua CP2102, ESP-12F Ai-Thinker x1
Module Cảm Biến Độ Ẩm Nhiệt Độ DHT22 x1
Module 1 Relay Với Opto Cách Ly Kích H/L (5VDC) x1
Sơ đồ kết nối mạch:
Code tham khảo: https://drive.google.com/drive/folders/1VdOt5U214K7W3gcn_AGho4NL1z1oQUo2?usp=sharing
Kết quả: Ở app Blynk mới này các bạn có thể truy cập bằng trình duyệt web có thể xem data và điều khiển thiết bị như trên điện thoại, dữ liệu được đồng bộ cả hai, ví dụ khi bạn điều khiển đèn bằng điện thoại, trạng thái đèn cũng sẽ được cập nhật trên giao diện web và ngược lại.