Jeremy Gen2021-09-13T18:17:52+07:00
Các IoT Platform mã nguồn mở
Để hiểu mã nguồn mở IoT platform là gì, hãy xem xét ba thực tế sau:
1) Mọi người tiêu dùng đều mong muốn rằng họ có thể sử dụng bất kỳ thiết bị công nghệ nào mà họ lựa chọn, mà không bị giới hạn hoặc buộc phải sử dụng thiết bị của chỉ một nhà cung cấp cụ thể (ví dụ: một số đồng hồ thông minh yêu cầu chúng chỉ được ghép nối với điện thoại thông minh của cùng một nhà cung cấp) .
2) Tất cả các đại lý kinh doanh thiết bị IoT đều mong muốn rằng việc tích hợp các thiết bị của họ có thể được thực hiện dễ dàng hơn nhiều và thậm chí có thể thực hiện được với một số lượng lớn các hệ sinh thái công nghệ khác nhau.
3) Những người phát triển ứng dụng mong muốn rằng họ có thể hỗ trợ nhiều thiết bị khác nhau, mà không yêu cầu bất kỳ mã dành riêng cho nhà cung cấp đã phát triển nào.
Nền tảng mã nguồn mở là một giải pháp cho tất cả những thách thức trên. Nó cho phép đạt đến các quy mô lớn và cả mức độ linh hoạt cao. Hầu hết các IoT platform mã nguồn mở đều được tải xuống miễn phí và có thể được cài đặt và khởi chạy khá dễ dàng.
Để sử dụng, các nền tảng này cần mô hình kết nối phần cứng phù hợp.
Tuy vẫn có những nhược điểm (nêu ở cuối bài) nhưng các IoT Platform này đang đóng một vai trò cực kỳ quan trọng trong nền công nghiệp. Hãy cùng xem qua một số tiêu biểu:
Giá: Free
Tài liệu: Documentation : Node-RED (nodered.org)
Node-RED là một công cụ trực quan để kết nối trong Internet of Things, tức là kết nối các thiết bị phần cứng, API và dịch vụ trực tuyến với nhau theo những cách mới. Được xây dựng trên Node.js, Node-RED tự mô tả mình là “một phương tiện trực quan để kết nối Internet of Things”.
Nó cung cấp cho các nhà phát triển kết nối các thiết bị, dịch vụ và API bằng trình chỉnh sửa luồng dựa trên trình duyệt. Nó có thể chạy trên Raspberry Pi và hơn 60.000 mô-đun có thể truy cập để tăng cơ sở vật chất của nó
Thingsboard
ThingsBoard dùng để thu thập, xử lý, hiển thị dữ liệu và quản lý thiết bị. Nó hỗ trợ tất cả các giao thức IoT tiêu chuẩn như CoAP, MQTT và HTTP nhanh chóng như triển khai trên cloud và on-premise. Nó xây dựng quy trình công việc dựa trên các sự kiện xoay vòng theo thiết kế, sự kiện REST API, yêu cầu RPC.
Chúng ta hãy xem các tính năng của ThigsBoard sau đây.
- Một nền tảng ổn định kết hợp khả năng mở rộng, sản xuất và khả năng chịu lỗi.
- Dễ dàng kiểm soát tất cả các thiết bị được kết nối trong một hệ thống đặc biệt an toàn
- Chuyển đổi và normalize đầu vào của thiết bị và thiết lập các cảnh báo để tạo báo động về tất cả các sự kiện truyền xa, khôi phục và không hoạt động.
- Bật các tính năng cụ thể của trạng thái sử dụng bằng nhóm quy tắc có thể tùy chỉnh.
- Xử lý hàng triệu thiết bị cùng lúc.
- Không có giây phút thất bại nào, vì mọi nút trong gói đều chính xác.
- Cho phép cài đặt đến nhiều người thuê dịch vụ.
- Ba mươi widget trên bảng điều khiển được tùy chỉnh cao để người dùng truy cập thành công.
Giá: Miễn phí dưới 5 thiết bị
Tài liệu: KAA: Welcome (kaaiot.io)
Kaa là nền tảng phần mềm trung gian đa năng, linh hoạt, sẵn sàng để thiết lập các giải pháp IoT đầu cuối, các ứng dụng được kết nối và thiết bị thông minh. Nó cung cấp toàn diện các khả năng để thực hiện giao tiếp hiệu quả, giao dịch và khả năng tương tác trong các thiết bị thông minh được kết nối.
Kaa platform hoạt động chủ yếu dựa trên các microservices linh hoạt và dễ dàng đáp ứng hầu như mọi nhu cầu và ứng dụng – một số tính năng khác như:
- Tạo điều kiện thuận lợi cho khả năng tương tác giữa các thiết bị.
- Thực hiện điều khiển thiết bị theo thời gian thực, cung cấp thiết bị từ xa và cấu trúc.
- Tạo dịch vụ đám mây cho các sản phẩm thông minh
- Bao gồm các hệ thống cảnh báo topic-base để cung cấp cho người dùng cuối khả năng gửi thông điệp ở bất kỳ định dạng nào được xác định trước đến các điểm cuối đã đăng ký.
- Thực hiện giám sát thiết bị thời gian thực
- Quản lý vô số thiết bị được kết nối
- Thu thập và phân tích dữ liệu cảm biến
Giá: Theo request
Tài liệu: https://docs.devicehive.com/docs
DeviceHive là một nền tảng quản lý dịch vụ đám mây IoT mã nguồn mở, được cấp phép theo Giấy phép Apache Phiên bản 2.0, đặc biệt tập trung vào phân tích dữ liệu lớn. Công nghệ giàu chức năng này có thể:
- Hỗ trợ Python, Node.js, Java và các thư viện client khác
- Cung cấp tài nguyên đám mây công cộng, riêng tư hoặc hỗn hợp có thể mở rộng
- Hỗ trợ các tùy chọn triển khai Docker và Kubernetes
- Xử lý single và multiple khối lượng kết nối ở quy mô production.
- Kết nối bất kỳ thiết bị nào với giao thức REST API, WebSockets hoặc MQTT
- Tận dụng lợi ích của các giải pháp Apache Kafka, Spark và Cassandra để phân tích dữ liệu lớn
Điều nổi bật hơn về DeviceHive là nó hầu như miễn phí để sử dụng và thay đổi, mặc dù cũng có các dịch vụ giá cố định. Cả nhà phát triển chuyên nghiệp và nhà tư vấn đều hỗ trợ việc triển khai nền tảng.
DeviceHive cung cấp các công cụ mạnh mẽ để thiết lập giao tiếp giữa các thiết bị IoT thông minh. Nó lấp đầy khoảng cách giữa phát triển đám mây, nhúng và phát triển ứng dụng di động.
Giá: Từ$ 650 /unit
Tài liệu: https://www.mathworks.com/help/thingspeak/
ThingSpeak là một nền tảng IoT tương đối trẻ hợp tác chặt chẽ với MathWorks. Điều này mang lại khả năng tận dụng từ phân tích dữ liệu MATLAB kịp thời từ vô số các cảm biến. Nền tảng bao gồm:
- Tổng hợp và phân tích luồng dữ liệu trực tiếp;
- Ghi (Record) dữ liệu từ các kênh công cộng để tiếp tục sử dụng trong các kênh riêng tư mới;
- Phân luồng các kênh công khai để chia sẻ dữ liệu;
- Trực quan hóa dữ liệu thu thập được;
- Cập nhật nguồn cấp dữ liệu kênh thông qua API REST và MQTT;
- Công cụ phân tích trực tuyến MATLAB® để khám phá các mẫu và mối quan hệ;
- Chức năng TimeControl cho phép cảnh báo do sự kiện kích hoạt.
Tóm lại, lợi thế lớn nhất của khung này là nó thực sự khiến mọi thứ giao tiếp với bạn.
Giá: Từ $500 /month
Tài liệu: https://mainflux.readthedocs.io/en/latest/
Mainflux là một nền tảng IoT mã nguồn mở và không có bằng sáng chế, có rất nhiều công cụ thuận lợi để thu thập và quản lý dữ liệu, phân tích cốt lõi và lập lịch sự kiện. Bất kể ngành nào, Mainflux cung cấp:
- Kết nối của mọi thứ và người dùng thông qua các giao thức HTTP, MQTT, WebSocket, CoAP;
- Quản lý và cung cấp thiết bị;
- Triển khai dựa trên container của Docker;
- Container được điều phối bởi Kubernetes;
- Bảo mật dữ liệu nâng cao với các khóa API có thể tùy chỉnh và trong JWT;
- lợi ích OPEX (chi phí hoạt động) thấp;
- Cả giao thức và thiết bị đều có khả năng dự đoán (agnostic).
Nền tảng này được viết bằng Golang và có thể được triển khai dưới dạng mô hình tại chỗ, kết hợp hoặc dựa trên đám mây. Giá có thể thay đổi, bắt đầu từ các chế độ cài đặt hoàn toàn miễn phí và các gói hỗ trợ cho đến các biến thể tùy chỉnh và kinh doanh được quản lý hoàn toàn.
Giá: từ€ 3.95 / month
Tài liệu: http://docs.thinger.io/
Thinger.io là một nền tảng mã nguồn mở sẵn sàng hoạt động cho các dự án IoT Cloud. Phần mềm này cho phép triển khai thông qua các phương pháp chứa Docker. Trong số các tính năng có lợi của nó có:
- Tích hợp đa phần cứng mượt mà;
- Hỗ trợ phần cứng của board Arduino IDE, Linux, Sigfox vàARM Mbed;
- Bảng điều khiển quản trị đám mây dễ sử dụng;
- Truyền dữ liệu trực tiếp đến websockets;
- Trực quan hóa dữ liệu thiết bị trên đám mây thông qua bảng điều khiển thời gian thực;
- Hỗ trợ cả ứng dụng di động iOS và Android;
- Cài đặt kích hoạt sự kiện IFTTT cho nhiều thiết bị IoT;
Công cụ OSS này rất hợp lý, dễ sử dụng, có thể mở rộng và an toàn. Cả gói đăng ký miễn phí và trả phí đều có sẵn.
Giá: Free
Tài liệu: https://github.com/zettajs/zetta/wiki
Zetta là IoT framework nguồn mở hướng API đầu tiên về cơ bản phục vụ cho việc truyền tải dữ liệu không ngừng nghỉ. Công nghệ này không có khả năng hiển thị dữ liệu sống động nhưng ưu điểm chính của nó vẫn là “lập trình phản ứng”. Danh sách tính năng bao gồm cả đặc điểm chung và đặc điểm duy nhất:
- Tích hợp trơn tru với logic kinh doanh của khách hàng;
- Dựa trên Node.js;
- Khai thác Reactive Hypermedia truyền dữ liệu (data streaming);
- Sử dụng Định dạng Siren để xây dựng một API vững chắc cho các thiết bị IoT;
- Giao thức mạng bất khả tri (agnostic);
- Kết nối an toàn giữa các máy chủ ngang hàng (p2p);
- Chuyển đổi dữ liệu nhất quán qua websockets;
- Khả năng gửi dữ liệu đến các nền tảng phân tích khác;
- Cú pháp SQL cho các truy vấn và thông báo.
Bất kể cộng đồng Zetta tương đối nhỏ, mã nguồn mở bảng điều khiển IoT này có một số lượng lớn những người theo dõi tận tâm.
Giá: Free
Tài liệu: Documentation to build your own open source IoT platform | OpenRemote
OpenRemote là một giải pháp mã nguồn mở 100% để tạo các ứng dụng Internet Of Things. Nó đã được chứng minh trong các ứng dụng IoT thương mại lớn hơn. Nó bao gồm:
Các giao thức chung như HTTP REST hoặc MQTT, để kết nối các thiết bị IoT, gateway hoặc dịch vụ dữ liệu của bạn hoặc xây dựng một API dành riêng cho nhà cung cấp.
Công cụ quy tắc với trình chỉnh sửa Flow, WHEN-THEN và giao diện người dùng Groovy.
Dashboard để cung cấp, tự động hóa, kiểm soát và giám sát ứng dụng của bạn cũng như các thành phần giao diện người dùng Web để xây dựng các ứng dụng dành riêng cho dự án.
Ứng dụng dành cho thiết bị di động dành cho Android và iOS, bao gồm tùy chọn sử dụng tính năng định vị địa lý và thông báo đẩy.
Giải pháp Edge Gateway để kết nối nhiều phiên bản với một phiên bản quản lý trung tâm.
Khả năng sử dụng đa lĩnh vực kết hợp với dịch vụ quản lý tài khoản và nhận dạng.
Ưu và nhược điểm
Thoạt nhìn, các công cụ IoT được đề cập ở trên có vẻ khá giống nhau và tranh thủ các tính năng đồng nhất nhưng những nền tảng này có thể hữu ích hơn rất nhiều. Ngoài phần mềm độc quyền, công nghệ mã nguồn mở hoàn toàn có thể tùy chỉnh và mở rộng – vì mã mở, nó có thể được điều chỉnh và sửa đổi theo nhu cầu của doanh nghiệp. PMNM cho phép các nhà phát triển và doanh nghiệp di chuyển giữa các khuôn khổ khác nhau mà không phức tạp – bộ công cụ cần thiết được cung cấp.
Với một số lượng lớn các giao thức và chức năng tự động, các khuôn khổ nguồn mở tiết kiệm nhiều thời gian của các kỹ sư IoT và các chuyên gia công nghệ. Giải pháp IoT này tốt hơn để xử lý các vấn đề về tính linh hoạt khi triển khai và giảm chi phí. Là ưu tiên hàng đầu, quyền riêng tư và bảo mật dữ liệu là quan điểm chính của bất kỳ doanh nghiệp nào, vì vậy bạn có thể chọn từ các nhà cung cấp khung mã nguồn mở đa dạng trên toàn thế giới.
Vẫn còn một số thách thức bạn có thể đối mặt trên con đường sâu rộng này:
- Mở có nghĩa là truy cập miễn phí, tức là những người đóng góp không phải lúc nào cũng là chuyên gia.
- Bảo trì an toàn luôn dễ bị tổn thương.
- Quyền riêng tư dữ liệu thu được lợi ích pháp lý ngày càng tăng.
- Một số nền tảng mã nguồn mở tốt nhất có thể phải trả giá đắt.
- Lỗi xảy ra.
- Tập hợp các tính năng tiêu chuẩn có sẵn không phù hợp với tất cả các nhu cầu kinh doanh của bạn.
- Các nền tảng IoT mã nguồn mở không dành cho người dùng tầm thường.
Pyriot M2C là dịch vụ IoT cho nhà phát triển ở đó chúng tôi sẽ giúp bạn lựa chọn nền tảng phù hợp với chi phí và nhu cầu. Dù đa dạng ngành nghề, nhưng mô hình và cách triển khai sẽ giống nhau, tất cả được mô tả trong Hệ thống Pyriot M2C