Phát triển ứng dụng IOT với Mongoose OS

Bài viết này mình sẽ giới thiệu với các bạn công cụ Mongoose OS và cách để build một project IoT với cái OS này.

Trước khi bắt đầu thì chúng ta có thể tìm hiểu lại một số khái niệm. Nếu các bạn muốn bắt đầu một cách đơn giản và dễ dàng hơn thì có thể xem qua các bài viết trước của mình

Giới thiệu

Như chúng ta đã biết thì IoT(Internet of Things) nó có liên quan tới một đối tượng, mình nói nôm na là một đồ vật nào đó được kết nối với Internet. Về mặt kỹ thuật thì việc này được thực hiện bằng cách kết nối 1 “thing” với một máy tính(computer). Với máy tính này thì có thể đọc được dữ liệu từ các “thing” và gửi thông tin này lên internet, ngoài ra nó còn có thể nhận được các lệnh và điều khiển trạng thái của các “thing”.

Để dễ hình dung thì mời các bạn xem hình sau

Ở đây computer có thể là laptop, hoặc máy tính bàn, tuy nhiên 2 cái này giá cũng không rẻ, kích thước thì lớn, ngoài ra thì còn tốn điện nữa, giải pháp khác là dùng các máy tính nhúng loại nhỏ như Raspberry Pi, BeagleBone hoặc Intel Edison, những cái này thì thường chạy Linux, phần này ta thường thấy một tên gọi khác là gateway.

Ở mức độ thing thì thường được sử dụng các MCU, ưu điểm của MCU  có các chân IO để kết nối, thu thập dữ liệu, điều khiển các cơ cấu,… ngoài ra còn có thêm Wifi. Nếu bạn có biết và làm việc với MCU thì mấy khái niệm này khá là đơn giản. Nhưng nếu chưa đụng gì tới, hoặc có khó khăn về phần cứng thì kinh nghiệm là mua ngay 1 board develop để dùng, chẳng hạn như board ESP8266 NodeMCU mình sẽ dùng trong bài viết này.

Có nhiều cách để bạn có thể lập trình thể hiện ý tưởng của mình với NodeMCU, chẳng hạn như dùng ArduinoIDE, tuy nhiên với một tool như Mongoose OS thì ta sẽ thiết lập một hệ điều hành ở trên đó, nghĩa là chúng ta có thể tạm quên đi các cấu trúc liên quan tới phần cứng phức tạp, các bước cấu hình môi trường, compiler,… để tập trung vào dev ứng dụng.

Vậy Mongoose OS sẽ cung cấp cho chúng ta những tính năng gì ?

  • Cài đặt nhanh chóng
  • Dễ dàng lập trình cho người mới bắt đầu cũng như các chuyên gia.
  • Hỗ trợ ngôn ngữ C và JavaScript
  • Các phương thức điều khiển thông qua Restful, websocket, MQTT
  • Tương thích với code Arduino
  • Hỗ trợ các phần cứng như ESP8266,ESP32,TI CC3200 và STM32F746

 

Tạo project IoT với Mongoose OS

Chuẩn bị

  • Kit NodeMCU và cáp
  • Tool mos.exe được tải từ Mongoose OS

Thực hiện

Các bước thực hiện rất đơn giản, mình hướng dẫn các bạn cách làm đơn giản nhất trên window, nếu các bạn xài Linux hay MacOS có thể theo link sau

Bước 1: Mở mos.exe đã tải về hiện lên giao diện trang web

Bước 2: Kết nối cổng COM, chọn Device và cấu hình Wifi

Nếu hiện kết quả như hình dưới đây và quan sát ở dưới NodeMCU có đèn nháy mỗi giây là thành công

Lưu ý:

Nếu trong quá trình flash xảy ra lỗi thì bạn có thể ấn nút reset trên NodeMCU

Quá trình cài OS lên NodeMCU được lưu tại MOS tool logs và hoạt động được lưu tại Device logs

Bước 3: Ấn vào Start coding để bắt đầu code

Bước 4: Mình sẽ thử chỉnh sửa code một chút và lưu lại xem có hoạt động không.

Chọn file init.js vào dòng số 18 sửa lại dòng in lệnh ra từ Tick Tock thành Tick1 và Tock2. Sau đó Save File và ấn nút reset trên NodeMCU và quan sát trên Device logs

Bạn có thể chọn Save + Reboot, tuy nhiên mình thấy chức năng này khá lâu và không hoạt động tốt lắm.

Vậy là xong được bước ban đầu, để tìm hiểu và nghiên cứu thêm các bạn có thể xem thêm các tài liệu

Tạm kết

Chúng ta đã có được 1 hệ điều hành được dùng trên ESP8266 mà không cần phải tốn quá nhiều thời gian để tạo môi trường, giờ thì có thể yên tâm làm các ứng dụng của mình mà không phải gặp các lỗi linh tinh về cấu hình nữa rồi 😀

Leave a Reply

avatar

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.

  Subscribe  
Notify of