- Što je API i kako je koristan?
- 1. OpenHAB REST API
- 2. Mozilla Web Things API
- 3. OtvoriteWeatherMap
- 4. EmonCMS API
- 6. Adafruit IO API
- 7. API za pomoćnika u kući
- 8. API-ji mreže The Things
- 9. ThingSpeak.io REST API
- 10. Ljevaonica EdgeX
U današnjem povezanom svijetu Internet tankih (IoT) više nije modna riječ koju stručnjaci bacaju okolo. Stvarno je!! I mogu se naći svugdje oko nas, mijenjaju živote, olakšavaju bolje usluge, poboljšavaju procese, pružaju nove mogućnosti i povećavaju prihode.
S milijardama novih uređaja koji tek trebaju biti povezani s internetom, utjecaj IoT-a definitivno će biti prebačen izvan samih IoT uređaja na nekoliko drugih aplikacija iskorištavanjem podataka koje pružaju ti uređaji za postizanje društvenog i komercijalnog rasta. To se već događa jer većina organizacija danas koje nemaju implementirana IoT rješenja još uvijek mogu iskoristiti blagodati dobivanjem pristupa podacima generiranim od uređaja koje su drugi ljudi rasporedili pomoću svojih API-ja.
Što je API i kako je koristan?
Kratica API skraćenica je od Application Programming Interface (Sučelje za programiranje aplikacija), to nije novo i ograničeno na IoT, već se dugo koristi u razvoju softvera. API-ji olakšavaju laku integraciju različitih usluga u proizvode, omogućujući da se aplikacije napisane na jednom jeziku koriste softverom napisanim na drugom jeziku, pomažući u smanjenju ukupne infrastrukture i potrebnog vremena za razvoj proizvoda. Te se iste prednosti trenutno prenose u IoT aplikacije s API-jevima koji se koriste u različitim aplikacijama za izlaganje podataka koji omogućuju kombiniranje i povezivanje više uređaja radi rješavanja novih i zanimljivih tijekova rada, otkrivajući nevidljive mogućnosti oko IoT-a.
Kada bismo se prijavljivali za nove usluge (recimo Spotify), često bismo nailazili na opcije poput "Prijava putem Gmaila" ili "Prijava putem Facebooka". To su ništa drugo do API-ji koje Google / Facebook pruža Spotify-u kako bi olakšao postupak prijave. Ovdje će API podijeliti osnovne korisničke detalje poput Imena, ID-a e-pošte, telefonskog broja itd. Sa Spotifyom i pomoći vam u uštedi vremena prilikom postupka prijave. Također su dostupni različiti API-ji za različite potrebe aplikacije.
Baš kao i kod softvera, i za različite zadatke postoji nekoliko IoT API-ja, ali većina njih obično nije besplatna. Za današnji ćemo vodič pogledati 10 najboljih, vrlo korisnih (prema našem mišljenju) API-ja IoT s otvorenim kodom koji će vam pomoći smanjiti troškove i vrijeme razvoja. Ovi su API-ji otvoreni, besplatni (ili imaju besplatne pakete) i mogu ih koristiti ne samo profesionalci već i proizvođači, hobisti i gotovo svi koji ih smatraju korisnima i slažu se s uvjetima korištenja. Ti su API-ji navedeni bez određenog redoslijeda, odabrani su slučajnim odabirom po okomicama i vjerojatno nisu usporedivi jer izvode različite zadatke.
1. OpenHAB REST API
Open Home Automation Bus (openHAB) je tehnologija otvorenog koda, agnostička platforma za automatizaciju kuće koja pomaže na jednom mjestu povezati i kontrolirati pametne uređaje i "ne tako pametne" kućne uređaje. Omogućuje izvedbu korisnički definiranih radnji pomoću uređaja, koristeći korisnički definirane informacije i korisnički definirane alate. Da bi to postigao, openHAB segmentira i razdvaja određene funkcije i radnje kojima se može pristupiti putem openHAB REST API-ja.

Kroz openHAB REST API, korisnici mogu pristupiti podacima svih uređaja povezanih s platformom, samim uređajima (stvarima) i Vezima, kao i izdavati naredbe i radnje za promjenu stanja, ponašanja ili svojstava uređaja povezanih s openHAB-om. Interakcija s API-jem temelji se na HTTP protokolu; kao takav važno je osigurati sigurne i sigurne veze pri radu s njim. Prema web stranici openHAB, neke od mogućih interakcija putem openHAB REST API uključuju;
- Dohvatite podatke openHAB iz vanjskih aplikacija
- Ubrizgavanje podataka i pokretanje događaja u openHAB iz vanjskih aplikacija (na primjer, neki detektori pokreta ili nadzorne kamere)
- Pregledajte vezove / stvari ili predmete openHAB, saznajte više o trenutnim stanjima, parametrima ili problemima
- Interakcija s openHAB-om iz drugih programa; mnogi programski jezici i alati za automatizaciju mogu lako koristiti REST API
- Korištenje softvera treće strane na mobitelima, poput Taskera, za otvaranje garažnih vrata
Dokumentacija, više primjera i detaljne upute o upotrebi API-ja mogu se naći na web mjestu OpenHAB-a.
Aplikacije trećih strana poput Taskera koje se koriste s openHAB-om veliki su pokazatelj kako API-ji otvaraju IoT ekonomiju, pružajući mogućnosti za stvaranje dodatne vrijednosti duž lanca.
2. Mozilla Web Things API
Mozilla je neprofitna organizacija s misijom obrane slobodnog i otvorenog weba, a API za web stvari predstavlja napore da proširi svoje sudjelovanje na webu na IoT. Prema web mjestu Web Things, API Web Things omogućuje korisnicima pružanje jedinstvenih URL-ova svim povezanim uređajima na World Wide Webu, što omogućuje njegovu upotrebu kao objedinjavajući sloj aplikacija za sve IoT uređaje.

API Web Things, kao i većina ostalih IoT API-ja, temelji se na REST-u i omogućava korisnicima da; pristupiti svojstvima uređaja, odrediti trenutno stanje svakog uređaja i izdavati naredbe za promjenu stanja uređaja ili izvođenje radnji. WebThings API olakšava pristup resursima koji predstavljaju svaki aspekt uređaja jer se na svaki resurs samostalno upućuje pomoću URL-a. Više informacija možete pronaći na web mjestu Mozilla IoT.
3. OtvoriteWeatherMap
OpenWeatherMap je internetska usluga koja pruža pristup podacima povezanim s vremenom (temperatura, vlaga, kiša itd.), Uključujući trenutačno vrijeme, prognoze i povijesne podatke programerima web usluga, mobilnih uređaja i nedavno IoT aplikacija. Podaci dostupni putem OpenWeatherMap-a potječu iz izvora koji se kreću od DIY meteoroloških postaja do meteoroloških usluga emitiranja, meteoroloških postaja zračne luke i nekoliko drugih izvora. Već smo razgovarali o tome kako koristiti Openweather Map s Arduinom za čitanje vremenskih podataka s interneta pomoću ESP8266.

Podaci se obrađuju i sortiraju na takav način da se putem API-ja OpenWeatherMap mogu stvarati IoT rješenja koja koriste te podatke za informiranje i automatizaciju zadataka. Na primjer, podaci o predviđanjima putem API-ja mogu se unijeti u alarmni sustav / uređaj kako bi upozorio poljoprivrednike na mogući jaki pljusak, među nekoliko drugih mogućnosti.
Iako se većina značajki OpenWeatherMap-a plaća, besplatni paket ima neizmjerno korisne značajke koje mogu prilično dobro poslužiti većini IoT projekata. Dokumentacija i ostali detalji o API-ju mogu se naći na web mjestu openWeatherMap.
4. EmonCMS API
EmonCMS je moćna web-aplikacija otvorenog koda za obradu, bilježenje i vizualizaciju podataka. Rezultat je napora grupe OpenEnergyMonitor da, baš kao što i samo ime govori, olakša uređaje za nadzor energije otvorenog izvora analizirajući podatke o okolišu. To je u osnovi alat za vizualizaciju podataka u kojem se nalaze podaci iz nekoliko energetskih nadzoramogu se pregledati senzori. Da bi programerima olakšao pristup platformi, stvoren je API za povezivanje koji omogućuje interakciju s platformom prilikom pokretanja na localhost (LAN) ili putem interneta. EmonCMS API omogućuje korisnicima ažuriranje statusa energetskih uređaja na platformi, dobivanje očitanja i drugih parametara koji ukazuju na stanje uređaja (ako je uređaj kompatibilan) s platforme, zajedno s nekoliko drugih značajki.

Želite li dodati vizualizaciju podataka u svoje sljedeće IoT rješenje temeljeno na energiji? EmonCMS je možda upravo ono što vam treba. Više informacija o platformi i API-ju možete pronaći na njihovoj web stranici.
5. API čestica
Particle API je sučelje za programiranje aplikacija koje je razvio Particle kako bi programerima omogućio lak rad sa njihovom platformom. Particle.IO je jedan od istinskih pružatelja IoT rješenja s kraja na kraj, pružajući hardver uređaja, staničnu komunikaciju, oblak uređaja i sučelja aplikacija. Prije smo koristili Particle Cloud s Raspberry Pi za potrebe automatizacije kuće.

Particle API olakšava programerima pristup i integriranje pune funkcionalnosti Particle s drugim aplikacijama i uređajima. Prema česticama, API omogućuje programerima da zapisuju funkcije u firmware svog uređaja, a zatim ih pozivaju za upotrebu na aplikacijskoj strani stvari u stvarnom vremenu. Neki primjeri API metoda uključuju isključivanje i uključivanje WiFi-ja, povezivanje uređaja, prebacivanje stanja uređaja, dobivanje podataka i općenito upravljanje uređajima.
Dokumentacija i ostali detalji o API-ju mogu se naći na web mjestu ParticleIO.
6. Adafruit IO API
Adafruit je jedan od najpopularnijih brendova u svijetu DIY elektronike i njihova je odluka da neko vrijeme pokrenu platformu Adafruit IO za IoT rješenja dobro prihvaćena od strane proizvođača / elektroničkih hobista. Platforma je od tada nastavila rasti i služila je dobrom broju proizvođača, uključujući mene. Platforma Adafruit IO u osnovi je oblak uređaja sa značajkama vizualizacije podataka, među ostalima koje pokreće Adafruit IO API. Već smo koristili Adafruit IO s PIC-om i drugim razvojnim platformama poput ESP-a i Raspberry Pi-a.

Prema Adafruit-u, Adafruit IO HTTP API pruža korisnicima pristup njihovim podacima Adafruit IO iz bilo kojeg programskog jezika ili hardverskog okruženja koje može govoriti HTTP. Kroz to mogu dizajnirati sustave koji poduzimaju radnje na temelju podataka i utječu na promjene na uređaju slanjem informacija na uređaje.
Platforma Adafruit IO jedna je od najlakših platformi za rad i jedna je od mojih omiljenih za DIY IoT projekte. Dokumentacija i više pojedinosti mogu se naći na web mjestu Adafruit IO.
7. API za pomoćnika u kući
Home Assistant je sustav automatizacije kuće s otvorenim kodom koji vodi zajednica, sličan openHAB-u. Kao i druge platforme, Home Assistant pokreće API za odmaranje Python Home Assistant koji pruža pristup podatkovnim metodama za nadzornu uslugu Home Assistant.

Omogućuje korisnicima uređivanje konfiguracije, vraćanje osnovnih podataka o instanci Home Assistant-a, vraćanje svih podataka potrebnih za pokretanje sistema, vraćanje niza objekata događaja i još mnogo toga. API prihvaća i vraća samo JSON kodirane objekte koji sadrže naziv događaja, broj slušatelja i još mnogo toga. Temelji se na pythonu 3 i pomaže bez napora pratiti i kontrolirati sve registrirane kućne uređaje, bez obzira je li registracija izvršena putem weba ili mobilne aplikacije. Dokumentacija i više pojedinosti o API-ju mogu se pronaći na web mjestu Home Assistant-a.
8. API-ji mreže The Things
LoRa postaje jedan od odabranih komunikacijskih kanala zbog svog velikog dometa, niske potrošnje energije među ostalim značajkama. Mreža stvari (TTN) je napor otvorenog koda, usmjeren prema zajednici, za izgradnju globalne otvorene LoRaWAN mreže za stvaranje otvorene infrastrukture za olakšavanje razvoja IoR rješenja temeljenih na LoRa. Kao takav, TTN nudi skup otvorenih alata i globalnu, otvorenu mrežu koja nudi maksimalnu sigurnost i skalabilnost. Ako ste novi korisnik Lore, pročitajte detaljan članak o Uvodu u LoRa i LoRaWAN.

Interakciju s TTN platformom pokreću dva glavna API-ja; API podataka TTN i API upravitelja aplikacija TTN. Data API omogućuje vam primanje događaja i poruka s uređaja, kao i slanje poruka na uređaje, općenito, razmjenu podataka s uređajima. API upravitelja aplikacija, s druge strane, koristi se za upravljanje aplikacijama, pristupnicima i uređajima. Data API temelji se na MQTT protokolu i može se koristiti za razvoj putem SDK-a ili izravno s MQTT-om, dok se Application Manager API temelji na HTTP protokolu. Više informacija o tim API-ima možete pronaći na web mjestu The Things Network.
9. ThingSpeak.io REST API
ThingSpeak se smatra jednom od najvećih platformi otvorenog koda u oblaku za IoT uređaje. Jedna je od najboljih platformi za obradu podataka s uređaja, posebno zahvaljujući integraciji s MATLAB-om nakon što ju je Mathworks stekao prije nekoliko godina. Omogućuje korisnicima prijenos, agregiranje, analizu i vizualizaciju podataka pomoću MATLAB-abez potrebe za zasebnim nabavkom softvera MATLAB. Sve gore navedeno olakšava korištenje ThingSpeak API-ja. Baš kao i većina gore spomenutih API-ja, ThingSpeak API omogućuje korisnicima; prikupljati i pohranjivati podatke senzora, dohvaćati podatke i trenutno stanje povezanih uređaja, automatizirati događaje na temelju podataka, postavljati okidače na temelju stanja IoT uređaja i integrirati se s platformama društvenih medija poput twittera među ostalim značajkama. Da biste saznali više o ThingSpeak-u, pogledajte prethodne IoT projekte gdje je ThingSpeak korišten s mnogo različitih mikrokontrolera poput Arduina, Raspberry PI, ESP itd.:
- Praćenje temperature i vlažnosti uživo putem Interneta koristeći Arduino i ThingSpeak
- Nadgledanje otkucaja srca putem Interneta pomoću Arduina i ThingSpeak-a
- Meteorološka stanica Raspberry Pi: Praćenje vlažnosti, temperature i tlaka putem Interneta
- IoT sustav praćenja pacijenata koji koristi ESP8266 i Arduino

Neke značajke ThingSpeak-a koje se automatski prevode u prednosti korištenja njegovog API-ja su;
- Jednostavna konfiguracija uređaja za prijenos podataka na ThingSpeak platformu pomoću standardnih IoT platformi.
- Vizualizacija podataka senzora i agregacija podataka u stvarnom vremenu pomoću izvora treće strane.
- IoT analitika radi na temelju rasporeda ili događaja.
- MATLAB analitika, RESTful i MQTT API-ji.
- Omogućuje izradu prototipova i izgradnju IoT sustava bez postavljanja poslužitelja i instalacije web softvera.
- Kompatibilnost s popularnim razvojnim platformama poput Arduina i Raspberry Pi
- Automatski djeluje na podatke i automatizira zadatke
- Integracija s uslugama trećih strana poput Twittera. Dobar primjer situacije u kojoj je ovo korisno je IoT rješenje koje automatski objavljuje tweetove o razini vode.
Pored besplatnog API-ja za hostiranje, ThingSpeak API je otvoreni izvor i dostupan je na GitHub-u za preuzimanje na privatnim poslužiteljima.
10. Ljevaonica EdgeX
EdgeX Foundry je otvoreni izvor ekosustava IoT platformi zasnovan na konfiguracijama otvorenog koda. API EdgeX Foundry nudi nekoliko krajnjih točaka za usluge, uključujući registraciju klijenta , zakazivanje i bilježenje. API ima REST arhitekturu i koristi OAuth 2.0 za provjeru autentičnosti. Edgex ima niz mikro usluga koje su priključene na svaki uređaj povezan na mrežu.

Svaka mikro usluga ima nekoliko važnih API poziva na koje se može koristiti;
- Registrirajte uslugu uređaja
- Osigurajte uređaj
- Pošaljite podatke s uređaja na platformu Edgex,
- Čitanje podataka s platforme Edgex za upotrebu u drugim aplikacijama
- Izvoz podataka, između ostalog.
Dokumentacija i više detalja o API-ju mogu se naći na web mjestu EdgeX Foundry.
To je moj popis! Ovaj popis, međutim, ni na koji način nije iscrpan jer mi padaju na pamet neki drugi API - ji poput IoT-Plotter i drugi koje sam mogao dodati na popis. Slobodno ispuštajte komentare o Open IoT API-ima s kojima ste surađivali. Vaši komentari mogu uvelike pomoći u pomaganju drugima da odaberu API ili platformu za upotrebu u svojim projektima.
Do sljedećeg puta.
