- מהו API וכיצד הוא שימושי?
- 1. OpenHAB REST API
- 2. ממשק ה- API של Mozilla Web Things
- 3. OpenWeatherMap
- 4. EmonCMS API
- 6. Adafruit IO API
- 7. ממשק API של Assistant Home
- 8. ממשקי ה- API של רשת הדברים
- 9. ThingSpeak.io REST API
- 10. יציקת EdgeX
בעולם המחובר של היום האינטרנט של הדקים (IoT) הוא כבר לא מילת באז שמושלכת על ידי מומחים. זה אמיתי!! וניתן למצוא אותו סביבנו, משנה חיים, מאפשר שירותים טובים יותר, שיפור תהליכים, מתן הזדמנויות חדשות והגדלת הכנסות.
עם מיליארדי מכשירים חדשים שעוד לא מחוברים לאינטרנט, ההשפעה של ה- IoT בהחלט תועבר מעבר למכשירי ה- IoT עצמם למספר יישומים אחרים על ידי מינוף הנתונים שמספקים מכשירים אלה כדי להשיג צמיחה חברתית ומסחרית. זה כבר קורה מכיוון שרוב הארגונים כיום שאין להם פתרונות IoT פרוסים, עדיין מסוגלים לנצל את היתרונות בכך שהם מקבלים גישה לנתונים שנוצרים על ידי מכשירים שפרוסים אנשים אחרים באמצעות ממשקי ה- API שלהם.
מהו API וכיצד הוא שימושי?
API ראשי התיבות מייצג ממשק תכנות יישומים, אלה אינם חדשים ומוגבלים ל- IoT, הם שימשו בפיתוח תוכנה במשך זמן רב. ממשקי API מאפשרים שילוב קל של שירותים שונים במוצרים, ומאפשרים להשתמש ביישומים שנכתבו בשפה אחת על ידי תוכנה הכתובה בשפה אחרת, מה שמסייע בהפחתת התשתית הכוללת ובזמן הנדרש לפיתוח מוצרים. אותם יתרונות מועברים כעת ליישומי IoT כאשר ממשקי API משמשים ליישומים מגוונים כדי לחשוף נתונים המאפשרים שילוב וחיבור של מספר מכשירים לפיתרון תהליכי עבודה חדשים ומעניינים, וחושפים אפשרויות בלתי נראות סביב ה- IoT.
בעת ההרשמה לשירותים חדשים (נניח Spotify) היינו נתקלים בדרך כלל באפשרויות כמו "היכנס באמצעות Gmail" או "היכנס באמצעות פייסבוק". אלה אינם אלא ממשקי API המסופקים על ידי גוגל / פייסבוק לספוטיפיי כדי להקל על הליך ההרשמה. כאן ה- API ישתף פרטי משתמש בסיסיים כמו שם, מזהה דואר אלקטרוני, מספר טלפון וכו 'עם Spotify ויעזור לך לחסוך זמן בהליך ההרשמה. כמו כן, ממשקי API שונים זמינים לצרכי יישומים שונים.
בדיוק כמו בתוכנה, ישנם מספר ממשקי API של IoT זמינים למשימות שונות, אך לרוב הם אינם מגיעים בחינם. להדרכה של היום, אנו נבחן את עשרת המובילים, שימושי מאוד (לדעתנו) ממשקי API של קוד פתוח של IoT שיעזרו לכם לצמצם את עלות הפיתוח והזמן שלכם. ממשקי ה- API הללו הם פתוחים, בחינם (או שיש להם חבילות בחינם) ויכולים לשמש לא רק אנשי מקצוע אלא גם יצרנים, תחביבים וכמעט כל מי שמוצא אותם שימושיים והוא בסדר עם תנאי השימוש. ממשקי API אלה אינם מופיעים בסדר מסוים, נבחרו באופן אקראי על פני אנכיים, וכנראה שאינם ניתנים להשוואה מכיוון שהם מבצעים משימות שונות.
1. OpenHAB REST API
Bus Home Automation Bus (openHAB) הוא פלטפורמת אוטומציה ביתית קוד פתוח, טכנולוגית אגנוסטית, המסייעת בחיבור ובקרה של מכשירים חכמים ומכשירים ביתיים "לא כל כך חכמים" במקום אחד. היא מאפשרת ביצוע פעולות המוגדרות על ידי משתמשים על ידי מכשירים, תוך שימוש במידע המוגדר על ידי משתמשים ובכלים המוגדרים על ידי המשתמש. כדי להשיג זאת, מגזרי openHAB וממלא פונקציות ופעולות מסוימות שניתן לגשת אליהן באמצעות ממשק ה- API של REST openHAB.
באמצעות ממשק ה- API של REST של openHAB, משתמשים יכולים לגשת לנתונים של כל המכשירים המשויכים לפלטפורמה, ההתקנים עצמם (דברים) וכריכות, וכן להנפיק פקודות ופעולות לשינוי המצב, ההתנהגות או המאפיינים של המכשירים המחוברים ל- openHAB.. האינטראקציה עם ה- API מבוססת על פרוטוקול; ככזה חשוב להבטיח חיבורים מאובטחים ובטוחים בעבודה איתו. על פי אתר openHAB, חלק מהאינטראקציות האפשריות באמצעות openHAB REST API כוללות;
- אחזר נתוני openHAB מיישומים חיצוניים
- הזריק נתונים והפעל אירועים ב- openHAB מיישומים חיצוניים (למשל, כמה גלאי תנועה או מצלמות מעקב)
- בדוק קישורים / דברים או פריטים של openHAB, למד על מצבים עכשוויים, פרמטרים או בעיות
- אינטראקציה עם openHAB מתוכניות אחרות; שפות תכנות וכלי אוטומציה רבים יכולים להשתמש בקלות ב- REST API
- שימוש בתוכנת צד שלישי בטלפונים סלולריים, כגון Tasker, כדי לפתוח את דלת המוסך
תיעוד, דוגמאות נוספות והנחיות מפורטות לשימוש ב- API ניתן למצוא באתר OpenHAB.
אפליקציות של צד שלישי כמו Tasker הנמצאות בשימוש עם openHAB מהוות רמז גדול לאופן שבו ממשקי API פותחים את כלכלת ה- IoT ומספקים הזדמנויות ליצירת ערך נוסף לאורך הרשת.
2. ממשק ה- API של Mozilla Web Things
מוזילה הינה עמותה ללא מטרת רווח המשימה להגן על הרשת החופשית והפתוחה וממשק ה- API של דברים ברשת מייצג את מאמציה להרחיב את השתתפותה באינטרנט גם ל- IoT. על פי אתר האינטרנט Web Things, ה- Web Things API מאפשר למשתמשים לספק כתובות URL ייחודיות לכל המכשירים המחוברים באינטרנט, ומאפשר להשתמש בו כשכבת יישומים מאחדת לכל מכשירי ה- IoT.
ה- API של Web Things, כמו רוב ממשקי ה- API האחרים של IoT, מבוסס על REST ומאפשר למשתמשים; לגשת למאפייני המכשירים, לקבוע את המצב הנוכחי של כל מכשיר ולהוציא פקודות לשינוי מצב המכשיר או לביצוע פעולות. ה- API של WebThings מאפשר גישה למשאבים, המייצגת כל היבט במכשיר, שכן כל משאב מופנה באופן עצמאי באמצעות URL. מידע נוסף ניתן למצוא באתר Mozilla IoT.
3. OpenWeatherMap
OpenWeatherMap הוא שירות מבוסס אינטרנט המספק גישה לנתונים הקשורים למזג האוויר (טמפרטורה, לחות, גשמים וכו '), כולל מזג האוויר הנוכחי, תחזיות ונתונים היסטוריים למפתחי שירותי אינטרנט, יישומי IoT ניידים ולאחרונה. הנתונים הזמינים באמצעות OpenWeatherMap מקורם במקורות החל מתחנות מזג אוויר DIY וכלה בשירותי שידור מטאורולוגיים, תחנות מזג אוויר בשדות תעופה ומספר מקורות אחרים. כבר דנו כיצד להשתמש במפת Openweather עם Arduino לקריאת נתוני מזג האוויר מהאינטרנט באמצעות ESP8266.
הנתונים מעובדים וממוינים בצורה כזו שבאמצעות ה- OpenWeatherMap API ניתן לבנות פתרונות IoT אשר ממנפים נתונים אלה כדי ליידע ולממש משימות. לדוגמה, ניתן להזין נתוני תחזית דרך ה- API למערכת אזעקה / מכשיר כדי להזהיר את החקלאים מפני גשם כבד אפשרי בין כמה אפשרויות אחרות.
בעוד שרוב התכונות של OpenWeatherMap בתשלום, החבילה החינמית כוללת תכונות שימושיות מאוד שיכולות לשרת את רוב פרויקטי ה- IoT די טוב. תיעוד ופרטים נוספים על ה- API ניתן למצוא באתר openWeatherMap.
4. EmonCMS API
EmonCMS היא אפליקציית אינטרנט בעלת קוד פתוח רב עוצמה לעיבוד, רישום והדמיית נתונים. זהו תוצר של המאמצים של קבוצת OpenEnergyMonitor לאפשר, בדיוק כמו שהשם מרמז, להקל על מכשירי ניטור קוד פתוח באמצעות ניתוח נתונים סביבתיים. זהו למעשה כלי להדמיית נתונים בו נתונים ממספר ניטור אנרגיהניתן לצפות בחיישנים. כדי להקל על מפתחי הגישה לפלטפורמה, נוצר ממשק API לקישוריות המאפשר אינטראקציה עם הפלטפורמה בעת הפעלה ב- localhost (LAN) או דרך האינטרנט. ה- EmonCMS API מאפשר למשתמשים לעדכן את מצב התקני האנרגיה בפלטפורמה, להשיג קריאות ופרמטרים אחרים המציינים את מצב ההתקנים (אם המכשיר תואם) מהפלטפורמה יחד עם מספר תכונות אחרות.
מעוניין להוסיף קצת הדמיית נתונים לפיתרון ה- IoT הבא שלך באנרגיה? EmonCMS יכול להיות בדיוק מה שאתה צריך. מידע נוסף על הפלטפורמה ועל ה- API ניתן למצוא באתר האינטרנט שלהם.
5. ממשק API לחלקיקים
Particle API הוא ממשק תכנות היישומים שפותח על ידי Particle כדי לאפשר למפתחים לעבוד בקלות עם הפלטפורמה שלהם. Particle.IO הוא אחד מספקי פתרונות ה- IoT האמיתיים בתעשייה, המספק את חומרת המכשיר, תקשורת סלולרית, ענן מכשירים וממשקי יישומים. בעבר השתמשנו ב- Particle Cloud עם Raspberry Pi למטרות אוטומציה ביתית.
ממשק ה- API של החלקיקים מקל על מפתחים לגשת ולשלב את הפונקציונליות המלאה של חלקיק עם יישומים ומכשירים אחרים. על פי חלקיקים, ה- API מאפשר למפתחים לכתוב פונקציות לקושחת המכשיר שלהם ואז לקרוא להם לשימוש בצד היישום של הדברים בזמן אמת. כמה משיטות API לדוגמא כוללות כיבוי והפעלה של wifi, חיבור מכשירים, החלפת מצב ההתקנים, השגת נתונים ובאופן כללי ניהול ההתקנים.
תיעוד ופרטים נוספים על ה- API ניתן למצוא באתר ParticleIO.
6. Adafruit IO API
Adafruit הוא אחד המותגים הפופולאריים ביותר בעולם האלקטרוניקה בעיצוב DIY וההחלטה שלהם להשיק את פלטפורמת ה- IO של Adafruit לפתרונות IoT התקבלה היטב על ידי קהילת התחביבים היצרנית / אלקטרונית. הפלטפורמה המשיכה לצמוח מאז ושירתה מספר רב של יצרנים כולל אותי. פלטפורמת ה- IO של Adafruit היא בעצם ענן מכשירים עם מאפייני הדמיית נתונים, בין היתר המונעים על ידי ה- API של Adafruit IO. כבר השתמשנו ב- Adafruit IO עם PIC ופלטפורמות פיתוח אחרות כמו ESP ו- Raspberry Pi.
על פי Adafruit, ה- Adafruit IO HTTP API מספק למשתמשים גישה לנתוני ה- IO שלהם ב- Adafruit מכל שפת תכנות או סביבת חומרה שיכולים לדבר HTTP. באמצעות זה הם יכולים לתכנן מערכות המבצעות פעולה על סמך הנתונים, ולבצע שינויים במכשיר על ידי שליחת מידע למכשירים.
פלטפורמת ה- IO של Adafruit היא אחת הפלטפורמות הקלות ביותר לעבוד איתה והיא אחת המועדפות עליי עבור פרויקטים של IoT DIY. תיעוד ופרטים נוספים ניתן למצוא באתר Adafruit IO.
7. ממשק API של Assistant Home
עוזר ביתי הוא מערכת אוטומציה ביתית בקוד פתוח המובילה בקהילה הדומה ל- openHAB. כמו פלטפורמות אחרות, ה- Home Assistant מונע על ידי ה- Home Assistant Python REST API המספק גישה לשיטות נתונים עבור שירות הבקרה של Home Assistant.
היא מאפשרת למשתמשים לערוך תצורה, להחזיר מידע בסיסי על מופע ה- Home Assistant, להחזיר את כל הנתונים הדרושים לאתחול, להחזיר מערך של אובייקטים לאירוע ועוד. ה- API מקבל ומחזיר רק אובייקטים מקודדים JSON המכילים שם אירוע, ספירת מאזינים ועוד. הוא מבוסס על פיתון 3 ועוזר לעקוב ולשלוט ללא מאמץ בכל המכשירים הביתיים הרשומים, ללא קשר אם ההרשמה נעשתה דרך האינטרנט או האפליקציה הסלולרית. תיעוד ופרטים נוספים על ה- API ניתן למצוא באתר הבית של העוזר.
8. ממשקי ה- API של רשת הדברים
LoRa הופכת לאחד מערוצי התקשורת הנבחרים בגלל צריכת החשמל הנמוכה לטווח הרחוק שלה ובין היתר. רשת הדברים (TTN) היא מאמץ מבוסס קוד פתוח, מונחה קהילה לבניית רשת LoRaWAN גלובלית ליצירת תשתית פתוחה כדי להקל על פיתוח פתרונות IoT מבוססי LoRa. ככזה, TTN מספקת סט כלים פתוחים ורשת גלובלית ופתוחה הכוללת אבטחה ומדרגיות מרביים. אם אתה חדש בלורה, עיין במאמר מפורט על מבוא ל- LoRa ו- LoRaWAN.
אינטראקציה עם פלטפורמת TTN מונעת על ידי שני ממשקי API גדולים; ה- API של TTN Data ו- API של מנהל היישומים TTN. ה- API של Data מאפשר לך לקבל אירועים והודעות ממכשירים וכן לשלוח הודעות למכשירים, בדרך כלל, להחליף מידע עם מכשירים. ממשק ה- API של Application Manager, לעומת זאת, משמש לניהול יישומים, שערים והתקנים. ה- API של Data מבוסס על פרוטוקול MQTT וניתן להשתמש בו לפיתוח באמצעות SDK או ישירות עם MQTT בזמן ש- API של Application Manager מבוסס על פרוטוקול HTTP. מידע נוסף על ממשק API זה נמצא באתר The Things Network.
9. ThingSpeak.io REST API
ThingSpeak נחשב לאחד הפלטפורמות הענן בעלות הקוד הפתוח העליון למכשירי IoT. זו אחת הפלטפורמות הטובות ביותר לעיבוד נתונים ממכשירים במיוחד בשל שילובו ב- MATLAB לאחר שנרכשה על ידי Mathworks לפני כמה שנים. זה מאפשר למשתמשים להעלות, לצבור, לנתח ולהמחיש נתונים באמצעות MATLABללא צורך ברכישת תוכנת MATLAB בנפרד. כל האמור לעיל מאפשר שימוש בממשק ה- API של ThingSpeak. בדיוק כמו רוב ממשקי ה- API האחרים שהוזכרו לעיל, ה- API של ThingSpeak מאפשר למשתמשים; לאסוף ולאחסן נתוני חיישנים, לאחזר נתונים ולמצב הנוכחי של מכשירים מחוברים, להפוך אירועים על בסיס נתונים לאוטומטיים, להגדיר טריגרים על סמך מצב מכשירי IoT ולהשתלב בפלטפורמות מדיה חברתית כמו טוויטר בין שאר התכונות. למידע נוסף על ThingSpeak, עיין בפרויקטים קודמים של IoT שבהם נעשה שימוש ב- ThingSpeak עם מיקרו-בקרים רבים ושונים כמו Arduino, Raspberry PI, ESP וכו ':
- ניטור טמפרטורה ולחות בשידור חי באינטרנט באמצעות Arduino ו- ThingSpeak
- ניטור פעימות לב דרך האינטרנט באמצעות Arduino ו- ThingSpeak
- תחנת מזג האוויר של פטל: ניטור לחות, טמפרטורה ולחץ דרך האינטרנט
- מערכת ניטור חולים מבוססת IoT באמצעות ESP8266 ו- Arduino
חלק מהתכונות של ThingSpeak המתורגמות אוטומטית ליתרונות השימוש ב- API שלה הן:
- תצורת מכשיר קלה להעברת נתונים לפלטפורמת ThingSpeak באמצעות פלטפורמות IoT סטנדרטיות.
- ויזואליזציה בזמן אמת של נתוני חיישנים וצבירת נתונים באמצעות מקורות של צד שלישי.
- ניתוח IoT פועל על סמך לוחות זמנים או אירועים.
- ממשקי API של MATLAB, RESTful ו- MQTT.
- מאפשרת טיפוס ובנייה של מערכות IoT ללא כל התקנת שרת והתקנת תוכנת אינטרנט.
- תאימות לפלטפורמות פיתוח פופולריות כמו Arduino ו- Raspberry Pi
- פועל באופן אוטומטי על נתונים ומבצע משימות אוטומטיות
- שילוב עם שירותי צד ג 'כמו טוויטר. דוגמא טובה למצב בו זה שימושי היא פתרון IoT שמצפצף באופן אוטומטי את מפלס המים.
בנוסף ל- API המתארח בחינם, ה- API של ThingSpeak הוא קוד פתוח וזמין ב- GitHub להורדה בשרתים פרטיים.
10. יציקת EdgeX
EdgeX Foundry היא מערכת אקולוגית קוד פתוח של פלטפורמות IoT המבוססת על תצורות קוד פתוח. ה- API של היציקה של EdgeX מציע מספר נקודות קצה לשירותים, כולל רישום לקוח , תזמון ורישום. ל- API יש ארכיטקטורת REST ומשתמש ב- OAuth 2.0 לאימות. ל- Edgex סדרה של שירות מיקרו המחוברים לכל מכשיר המחובר לרשת.
לכל שירות מיקרו יש כמה שיחות API חשובות שאפשר להשתמש בהן;
- רשום שירות מכשירים
- ספק התקן
- שלח נתונים מהמכשיר לפלטפורמת Edgex,
- קריאת הנתונים מפלטפורמת Edgex לשימוש ביישומים אחרים
- ייצוא נתונים, בין היתר.
תיעוד ופרטים נוספים על ה- API ניתן למצוא באתר EdgeX Foundry.
זו הרשימה שלי! אולם רשימה זו אינה ממצה בשום אופן כי כמה ממשקי API אחרים כמו IoT-Plotter ואחרים שיכולתי להוסיף לרשימה עולים בראש. אל תהסס להשאיר הערות לגבי ממשקי ה- API הפתוחים של IoT שעבדת איתם. ההערות שלך עשויות לעבור דרך ארוכה לעזור לאחרים לבחור ממשק API או פלטפורמה לשימוש בפרויקטים שלהם.
עד הפעם הבאה.