Екосистемата на Интернет на нещата се разраства неконтролируемо, а софтуерът с отворен код играе водеща роля. От IoT платформи до инструменти за данни и AI модели за перифериятаИма набор от опции, които ви позволяват да изградите мощни решения с разумни цени и голяма гъвкавост. Ако обмисляте коя технология да възприемете, ето пълно и практично ръководство с най-подходящата информация.
Преди да се задълбочим в темата, е важно да изясним някои понятия. „Отворен код“ не е точно същото като „свободен софтуер“И изборът между рамка с отворен код или персонализирана платформа може да окаже решаващо влияние върху сигурността, цената и развитието на вашия проект. Освен това, ако работите с устройства с ограничени ресурси, ще ви е интересно да знаете кои леки модели на изкуствен интелект се представят добре на периферията.
Безплатен софтуер срещу софтуер с отворен код
Термините често се бъркат, но имат важни нюанси. Свободният софтуер дава приоритет на потребителските свободиСвободата за изпълнение, изучаване, модифициране и разпространение на програмата, като централен фокус е върху четирите свободи на FSF. Отвореният код, от друга страна, набляга на достъпността на изходния код за преглед, модифициране и разпространение. въпреки че лицензите могат да налагат условия относно преразпределението или промените и не винаги преследват същите цели като движението за свободен софтуер.
С други думи, Фокусът на свободния софтуер е върху правата на потребителитеВъпреки че отвореният код се фокусира върху отворения код и сътрудничеството, разбира се, има припокривания, но техните философии и цели не са идентични.
Какво точно е IoT платформа?
IoT платформата е гръбнакът, който свързва устройства, данни и приложения. Той осигурява инфраструктурата и градивните елементи за да развиете услугата си: комуникацията с устройстватаУправление и осигуряване, сигурност, интеграция в облака и инструменти за анализ, наред с други. По същество, Това ви позволява да се съсредоточите върху бизнес функционалностите без да преоткривате топлата вода по отношение на свързаността и работата.
Леки модели с изкуствен интелект за IoT edge
В периферни реализации с оптимизирана памет, батерия и процесор, Компактните и ефикасни модели правят цялата разликаНякои, които се открояват с баланса си между размер и възможности, са: Meta Llama 3.1 8B (многоезична ефективност и производителност), GLM-4-9B-0414 (извикване на функции и интеграция с инструменти) и Qwen2.5-VL-7B (мултимодален интелект със зрение). Тези подходи са ключови за вземане на решения на местно ниво без винаги да зависи от облака.
IoT платформи с отворен код и свързани теми
DeviceHive
DeviceHive предлага M2M рамка за свързване на устройства и управление на облачни услуги с фокус върху големи данни (Big Data). Включва много прост уеб панел. да създават мрежи, да прилагат правила за сигурност и мониторинг, плюс примерни проекти и онлайн инстанция за тестване. Тяхното предложение обхваща мостът между облаците, вградени системи и мобилни приложения по сравнително балансиран начин.
ThingSpeak
ThingSpeak, тясно свързан с MathWorks, се откроява със своите анализи, използващи MATLAB върху данни от сензори в почти реално време. Сред функциите му Те включват агрегиране и анализ на живо, запис на публични канали за лично ползване, споделяне на канали, визуализации, актуализации чрез REST API и MQTT, онлайн инструменти на MATLAB и сигнали с TimeControl провокирани от събития.
mainflux
Mainflux е стек на Golang, който блести със своята свързаност и управление. Поддържа HTTP, MQTT, WebSocket и CoAPВключва осигуряване и управление на устройства, внедряване на Docker и оркестрация на Kubernetes. сигурност чрез персонализируеми API ключове и JWT с обхвати помага за намаляване на оперативните разходи. Може да се инсталира локално, в хибридна среда или в облака.
Thinger.io
Thinger.io е облачна платформа с внедряване чрез Docker контейнери. Той интегрира голямо разнообразие от хардуер. (Arduino IDE, Linux, Sigfox, ARM Mbed платки), предлага лесна за употреба конзола за управление, стрийминг към уеб сокети, табла за данни в реално време, Мобилни приложения за iOS и Android и IFTTT автоматизации за множество устройства. Въпреки че визуализацията му не е най-привлекателната, Техният подход на „реактивно програмиране“ е най-голямата им сила..
Google Cloud IoT
Въпреки че не е с отворен код като такава, платформата на Google предоставя полезни елементи за свързани IoT архитектури. Внедряване на MQTT мост За свързаност се свързва с външен прокси мрежов балансьор. IoT приложенията могат да консумират данни чрез Pub/Sub или да използват MQTT конектора на Dataflow, докато системата предлага услуги за управление на ключове: пълномощия, удостоверяване и оторизацияКонфигурацията и регистрацията на устройства, механизмът за правила и управлението на актуализациите също са често срещани функции. Цифрови близнаци, предупреждения и статистика в своята екосистема.
OpenRemote
OpenRemote улеснява интеграцията за интегратори, производители и администрации с протоколи като HTTP, SNMP, MQTT или Bluetooth. Вашите силни страни Те включват изгледи на карта и активи, модел на активи с потребителски дефинирани типове, протоколи за агенти, настройваеми по модел, графичен интерфейс за правила IF-THEN, табла за управление, взаимосвързаност между Edge инстанции и централна и управление на множество наематели. Приложимо е за флотиенергетика, колективно управление, сгради, градове, летища или здравеопазване.
Отворен код или персонализирана платформа?
Въпреки че много отворени платформи може да изглеждат сходни на хартия, изборът зависи от целите, бюджета, рисковете и екипа. Отвореният код спестява време и осигурява гъвкавостВъпреки това, това не е без своите предизвикателства: принос от неравномерно качество, деликатна поддръжка и сигурност, както и все по-важна поверителност на данните. разходите не винаги са ниски и набор от стандартни функции, които може да не отговарят напълно на вашите цели. Освен това, Те обикновено не са за неопитни потребители.
Когато избирате персонализирана платформа, основният аргумент е контролът. Притежавайте пълно владеене на дизайна, сигурността и функционалността Това позволява интеграция със съществуващи системи, осигурява цялостна защита и оптимизира производителността, надеждността и мащабируемостта. Този подход, когато е добре изпълнен, максимизира възвръщаемостта и подгответе решението си да расте в бързо променяща се среда.
Решение и набор от инструменти на eManager
eManager е създаден като индустриален IoT контролер за софтуерни специалисти, които се нуждаят от универсален, многопротоколен хардуер къде лесно да се реализират проекти. Тяхното хранилище съставя списък с Топ 8 на софтуер за придобиване, визуализация и съхранение, предназначен за внедряване на реални случаи в производство бързо.
Придобиване и визуализация
Chirpstack предоставя пълен стек с отворен код за LoRaWAN мрежи с превод на съобщения, интеграция с облак, управление на състоянието, инвентаризация, активиране на сензори и изпращане на данни към устройстваТой предоставя уеб интерфейс за потребители, организации, приложения и устройства, и предоставя gRPC и REST API. Данните могат да се предават чрез MQTT/HTTP и да бъде написано в InfluxDB.
Node-RED, от своя страна, е швейцарското ножче на Интернет на нещата (IoT) за оркестриране на потоци с малко код. Визуалното програмиране улеснява свързването на хардуер, API и услуги и да ги трансформират в реално време, което го прави топ избор в Индустрия 4.0. Ако търсите гъвкавост без стръмна крива на обучение, Това е задължително..
TICK стекът комбинира Telegraf (агент за показатели и събития), Kapacitor (обработка в реално време) и Chronograf (интерфейс за InfluxData), като InfluxDB е негова основа. Заедно те формират цялостно решение за заснемане, наблюдение, визуализиране и автоматизиране на времеви серии с голямо натоварване от писане и заявки.
Grafana завършва кръга на визуализацията с богати табла за управление и предупреждения. Той е идеален за използване на данни от InfluxDB. и други източници, изграждайки атрактивни табла за управление без усложнения. Ако трябва да откриете модели или аномалии просто окоЕто го твоят съюзник.
Данни
InfluxDB, в рамките на TICK стека, е оптимизиран за времеви серии: Много писане, бързи запитванияМониторинг, показатели, сензори и анализи в реално време. Когато всяка секунда е от значение, неговата архитектура прави разликата.
MariaDB наследява най-доброто от MySQL и добавя подобрения: кеширане за сложни заявкиНово управление на връзките, достъп до клъстери и поддръжка за разширени йерархии и структури. Ако идвате от екосистемата на MySQL, Ще го намерите познато и мощно.
PostgreSQL е еталонът в релационните бази данни с отворен код, с висока паралелност, разнообразни типове данни, обектна ориентация и междуплатформена съвместимост. Поддържа SQL за релационни данни и JSON за нерелационни данни., което го прави изключително гъвкав в хибридни проекти.
SQLite е идеален за вградени системи и скромен хардуер: лек, ефикасен и бърз за неусложнено локално съхранение. Когато устройството е основната грижа и ресурсите са ограничени, Това ви измъква от повече от едно трудно положение..
Какво е новото в апартамента
Серията eManager е актуализирала софтуера си до Node-RED 2.1.4 и Yocto Dunfell, като е включен и UPnP протоколът и други подобрения. Печелите по-висока производителност, сигурност на актуализациите, отстраняване на грешки и регистриранеусъвършенстване на опита за взискателни индустриални внедрявания. Ако искате по-фини детайли, консултирайте се с официалната документация и бъдете в крак с техния бюлетин.
Отворен код: какво означава това и защо е важно
Наричаме с отворен код всеки инструмент, чийто изходен код е публикуван и може да се преглежда, променя и разпространяваТова позволява съвместна и прозрачна разработка, при която общността допринася с корекции на грешки, нови функции и подобрения на качеството. Лицензите обикновено позволяват тези употреби. да се насърчат иновациите и адаптацията на специфични нужди.
Има много примери: Linux в операционните системи, Mozilla Firefox в браузърите или LibreOffice в офис пакетите. Моделът се повтаряКогато възникне голям проблем и няма решение, се появява отворен проект, който да го адресира.
Препоръчани ресурси с отворен код за данни, бекенд и други
1) Апачи Худи
Hudi предлага рамка за инкрементално съхранение и обработка в реално време, базирана на Hadoop и Spark. Фокусът им върху ъпсерти, изтривания и инкрементални подобрения Това го прави идеален за непрекъснато приемане на данни и интерактивен анализ; той е съвместим с езера от данни и езерни къщи, което позволява заявки с ниска латентност за големи обеми. Интегрира се със Spark, Flink, Presto, StarRocks или Amazon Athena.
2) Айсберг Апачи
Iceberg предоставя транзакционен табличен формат с атомно писане, моментни снимки, оптимизирано четене и разделяне/сортиранеРаботи със Spark, Hive, Presto и други двигатели (ClickHouse, Dremio, StarRocks), решавайки Затруднения на HDFS/Hive в големи набори от данни и улесняване на еволюцията, уплътняването и отмяната на схемите.
3) Надмножество на Apache
Superset е платформата за самообслужване на анализи, от която много екипи се нуждаят, за да се мащабират. Свържете се със SQL, хранилища за данни и езера от данниТой предлага инструмент за изграждане на диаграми и SQL IDE, и поддържа всичко - от стълбовидни и кръгови диаграми до разширени геопространствени визуализации. Ако вашият проект има силен BI компонент, Това ви спестява време и главоболия..
4) Кок
Bun се концентрира в един инструмент за изпълнение, мениджър на пакети и пакетиращ инструмент за JS от страна на сървъра. Най-голямата му сила е производителността (отчасти благодарение на Zig) и интегрираното изживяване, което го прави сериозна алтернатива на Node и Deno. Ако се интересувате от намаляване на времето за команден ред и изграждане, Дай му въртене.
5) Клод 2
Този антропен асистент обработва огромни контексти (до ~100 000 токена) и плавно изготвя или трансформира текст на множество езици. Можете да обобщавате, извличате, пренаписвате и отговаряте базирано на съдържание и разбира общи езици за програмиране. Обучен по принципа HHH (Полезен, Честен, Безвреден). е по-малко податлив на опасни изходи и не се обучава с вашите данни, нито се консултира с интернет, за да отговори.
6) Хлебарска база данни
Разпределена, ACID-съвместима и високодостъпна SQL база данни с автоматична репликация и хоризонтално мащабиране на четения и записващи операцииИдеален за приложения с голям брой транзакции или внедряване в няколко региона, той намалява латентността и помага за спазване на регулаторните изисквания. Полезен е за организации като Netflix и финансови институции. Те го използват в мащабно производство.
7) CPython (последни подобрения)
Python 3.11 и 3.12 донесоха осезаем скок в представянето на референтния изпълнителкоето е от полза за повечето проекти без промени в кода. На хоризонта плановете за справяне с GIL отварят вратата към истински паралелизъм в многопроцесорната обработка и допълнителни доходи.
8) DuckDB
Вграден аналитичен двигател с колонно изпълнение, паралелизъм и ниска консумацияПерфектен за сложни заявки и интерактивно проучване на лаптопи или вградени системи. Съвместим със стандартен SQL, ACID транзакции и интеграция с pandas и dplyr. Намалява триенето между анализа и приложението.
9) HTML и хиперскрипт
Те предлагат да се работи „с пълна газ“ с конвенционалния HTML: HTMX замества повтарящия се JavaScript с Декларативни атрибути за AJAX, състояния и данниHyperScript опростява асинхронността и DOM със синтаксис в стил HyperCard. Заедно те предлагат трезва алтернатива на реактивните рамки когато търсите скорост без претоварване.
10) Истио
Най-добрата мрежа за услуги: улеснява маршрутизирането и балансирането на натоварването, подробна наблюдаемостКриптиране, удостоверяване и оторизация между микросървиси. Интегрира се с Kubernetes и разделя проблеми с мрежата и сигурността на кода, стандартизирайки политиките в сложни внедрявания.
Общност и добри практики
Ако работите с изкуствен интелект и инструменти за автоматизация, е добра идея да участвате в общности, които споделят код, съвети и най-добри практики. Има subreddits, фокусирани върху програмирането с ChatGPT където се публикуват взаимодействия, съвети за употреба и завършени проекти; не забравяйте да прочетете правилата, преди да публикувате, за да поддържате полезна и уважителна среда.
Ресурси и разширяване
Ако се интересувате да прочетете повече за инструменти с отворен код, има обширни списъци с десетки проекти, обхващащи разработка, данни, анализи, изкуствен интелект и машинно обучение. Предишният избор е от 1 до 10 и продължава по-нататък в следващите статии. За по-задълбочена информация можете да изтеглите документация и технически ръководства, като например университетски доклади и информационни документи, които Те разширяват концепциите за езера от данни, складове от данни и езерни къщи.Ето пример за справка в PDF формат. на разположение за консултацияИ между другото, Последвайте ни в Twitter и LinkedIn Ако искате да сте в крак с новините.
Като се погледне цялото нещо, изглежда, че е много солидна технологична материя: отворени IoT платформи със зрели компоненти (DeviceHive, ThingSpeak, Mainflux, Thinger.io, OpenRemote), облачни опции, които се вписват добре с отворени работни процеси (Google Cloud IoT), индустриален пакет като eManager с ключови инструменти (Chirpstack, Node-RED, TICK, Grafana, InfluxDB, MariaDB, PostgreSQL, SQLite) и редица проекти с отворен код за данни и бекенд (Hudi, Iceberg, Superset, Bun, Claude 2, CockroachDB, CPython, DuckDB, HTML/Hyperscript, Istio), които Те обхващат всичко - от приемане до гледане и управлениеС всичко това разполагате с повече от достатъчно материал, за да проектирате солидно, сигурно и мащабируемо IoT решение, което е готово да расте, без да губи контрол.