איך למקסם את חיי הסוללה בתכני IoT עם שני-אופנים Wi-Fi/Bluetooth
באדיבות ‎DigiKey's North American Editors
2020-09-24
המתכננים של התקני אינטרנט-של-דברים (IoT) מוזני-סוללות ומוצרים מחוברים אחרים מתבקשים לעמוד בדרישות סותרות של חיבוריות אלחוטית רצופה וחיי סוללה ארוכים. מתיחה נוספת של גבולות הספקת-הכוח, שכבר כעת הן מגבילות למדי, הוא הביקוש הגובר לחיבוריות הן Bluetooth 5 והן Wi-Fi באותו ההתקן. למרות שפרוטוקולי Wi-Fi ו- Bluetooth מספקים פרוטוקולים סטנדרטיים המסייעים בהפחתת צריכת ההספק, תמיכה ישירה יותר מגיעה בצורה של ארכיטקטורה המשלבת תת-מערכות רדיו שיכולות להפחית את עומס משימות העיבוד של הרשת עם מיקרו-בקר בהספק-נמוך.
מאמר זה יתאר את החשיבות של חיבוריות בשנ-אופנים Wi-Fi/Bluetooth וכיצד זה מסבך את תכני ה- IoT. לאחר מכן הוא יראה כיצד ניתן להשתמש בלוח פיתוח ותוכנות נלוות מבית Cypress Semiconductor עבור פיתוח התקני IoT עם שני-אופנים Wi-Fi/Bluetooth המסוגלים לספק חיבוריות רצופה וחיי סוללה ארוכים יותר.
הצורך הגובר בחיבוריות רצופה עם שני-אופנים Wi-Fi/Bluetooth
חיבוריות Bluetooth נחשבת לדרישה סטנדרטית עבור התקני IoT רבים המתוכננים לקיים אינטראקציה עם משתמשים באמצעות סמארטפונים תומכי Bluetooth והתקנים ניידים אחרים. עם זאת, עבור יישומי IoT רבים, התקני IoT זקוקים לחיבוריות Wi-Fi כדי לגשת לרשת מקומית אלחוטית (WLAN) כדי להגיע ישירות לאינטרנט, או כדי לקיים אינטראקציה עם התקנים עמיתים אחרים ומערכות מארחות על אותה רשת.
במובנים רבים, היכולת של מפתחים להאריך את חיי הסוללות תהיה הרבה יותר פשוטה אם התקני IoT אלו ידרשו להתחבר למארח ה- WLAN או ה- Bluetooth רק כאשר הם צריכים להעביר את הנתונים שלהם או הודעות אחרות. מכיוון שיחס-המחזור הפעיל עבור התקני IoT רבים הוא בדרך כלל נמוך, התקנים אלו יכולים להאריך את חיי הסוללות על ידי פעולה בעיקר באופן שינה בהספק נמוך, להתעורר מספיק זמן מראש כדי לבצע מדידות חיישנים, להשלים משימות עיבוד קשורות ולהעביר את הנתונים שהתקבלו לפני שהם חוזרים לאופן הספק-נמוך. במציאות, רוב התקני ה- IoT צריכים להגיב במהירות לפקודות אסינכרוניות נכנסות ולנתונים מהתקנים עמיתים, מערכות מארחות ומשתמשי קצה.
כדי לשמור על היענות מהירה, התקני IoT צריכים לספק נראות של חיבוריות רצופה, ולהיות ערניים לתנועה נכנסת כדי שיוכלו להגיב בפרק זמן סביר. אם המפתחים ינסו לעמוד בדרישה מהותית זו על ידי כך שהם מעירים שוב ושוב את ההתקנים שלהם לקליטת תנועה נכנסת, הסוללה של ההתקן שלהם תתרוקן במהירות. למעשה, מקלטי רדיו בהתקני Wi-Fi המופעלים על ידי סוללות צורכים בדרך כלל יותר הספק לאורך זמן לעומת משדרי רדיו, למרות צריכת ההספק הגבוהה יותר הקשורה לפעולת שידור יחידה. כמובן שההספק הנצרך על ידי המעבד המארח של ההתקן בחלקו בכל פעולת קליטה מוסיף עומס משמעותי משלו לתקציב ההספק. למרבה המזל, תקנים אלחוטיים מגדירים פרוטוקולים המאפשרים למפתחים להפחית את ההספק תוך שמירה על האשליה של חיבוריות רצופה.
כיצד תקני חיבוריות אלחוטית מסייעים להתקנים להפחית את צריכת ההספק
בפעולה רגילה, תחנות קליטת Wi-Fi (STA) חוסכות הספק על ידי הדממת תת-מערכת ה- Wi-Fi שלהן. מאחר ונקודות הגישה (AP) אוגרות חבילות (Frames) עבור תחנות STA שהן באופן-שינה, אין איבוד של מסרים (Messages). כחלק מפעולת ניהול הרשת הרגילה שלהן, נקודות הגישה (AP) מעבירות באופן קבוע משואות (Beacons) המכילות Bitmap, הנקרא מפת חיווי תנועה (TIM), המציין אם ל- AP יש תעבורה ממתינה עבור כל STA. נקודות-הגישה מעבירות באופן מחזורי משואות המכילות מפת חיווי תעבורה למשלוח (DTIM), המציינת את זמינותם של נתוני Multicast או Broadcast באוגרים/חוצצים שבהן. תחנות STA מצופות להתעורר באופן מחזורי בתוך ערך מחזור DTIM, שהוא כפולה כלשהי של מרווחי המשואות הרגילים. רשת IoT שהוגדרה עם ערך מחזור DTIM גבוה תאפשר להתקנים ברשת שלה להפחית את צריכת ההספק מכיוון שהם יכולים לישון זמן רב יותר לפני שהם מעירים את המקלט שלהם לקליטת המשואה המציינת שנקודת הגישה אוגרת/חוצצת חבילות (Frames) עבורם. זוהי הגישה הבסיסית העומדת מאחורי מנגנון התשאול לחיסכון בהספק של תקן 802.11 שנידון להלן.
(Bluetooth Low Energy (BLE מאפשר להתקנים להפחית את צריכת ההספק על ידי מיטוב התדירות והמטען (Payload) של פרסומי Bluetooth שלו. על ידי הגדלת מרווח הפרסומים, התקני IoT יכולים להשהות את פעולות המשדר; על ידי הקטנת המטען, התקני IoT יכולים להפחית את משך אירועי המשדר. כמובן שלא כל יישום יכול לסבול מרווחי פרסומים ארוכים או מטענים מינימליים. בהתקני אודיו או חישה בזמן-אמת, למשל, מרווחי פרסומים ארוכים פירושם חיבורים מושהים העלולים להשפיע לרעה על התנהגות היישום בכללותו.
התקנים היקפיים יכולים להשתמש במאפיין אחר של BLE הנקרא Slave Latency המאפשר להתקנים היקפיים לדלג על אירועי חיבור. כמו ב- Wi-Fi DTIM, ה- Slave Latency של BLE מאפשר להתקנים להישאר באופן הספק-נמוך לפרק זמן ארוך יותר. במקום פשוט להגדיל את מרווחי החיבורים, אופן מיוחד זה מאפשר להתקן ההיקפי לדלג על אירועי חיבור עם המארח, אך בכל זאת להעיר ולשלוח נתונים לפי הצורך מבלי לגרום לשיהוי (Latency) נוסף.
תמיכה בחיבוריות שני-אופנים וחיי סוללות מוארכים
שיטות אלו מסייעות להפחית את משך ותדירות פעולת ההספק המלא בהתקני Wi-Fi ו- Bluetooth, אך המפתחים יכולים לעשות הרבה יותר לכדי האריך את חיי הסוללות באמצעות יכולות חומרה ותוכנה שהודגמו בערכת Wi-Fi BT Pioneer CY8CKIT-062S2-43012 מבית Cypress Semiconductor. ביחד עם חוטים מגשרים וכבל USB, הערכה מבית Cypress כוללת את לוח PSoC 62S2 Wi-Fi BT Pioneer, המספק פלטפורמת פיתוח מקיפה ומערכת חומרה עם מלוא המאפיינים עבור מימוש תכני IoT בהספק-נמוך. נ ערכת Cypress משמשת עם תוכנת Cypress, ומאפשרת למפתחים להעריך באופן מיידי ולפרוש במהירות מגוון של יכולות ניהול הספקת-כוח מתוחכמות.
ביחד עם מספר מחברי ממשקים, לחצנים ונוריות LED, לוח הערכה משלב התקן PSoC 5LP CY8C5868LTI-LP038 המספק תכנות וניפוי-באגים על-הלוח Cypress KitProg3. עבור אחסון נוסף על-הלוח, חברת Cypress משלבת את התקן זיכרון NOR Flash טורי 512 מגה-ביט (Mbit) S25FL512S ואת זיכרון Ferroelectric Random Access Memory (FRAM) טורי Mbit 4 CY15B104 שלה. (איור 1).
איור 1: לוח PSoC 62S2 Wi-Fi BT Pioneer מבית Cypress מספק מערך מקיף של מאפייני מערכת הבנויים סביב מודול נושא המשלב מיקרו-בקר PSoC 6 ומודול חיבוריות אלחוטית Wi-Fi/Bluetooth. (מקור התמונה: Cypress Semiconductor)
בלב הלוח יש מודול נושא המשלב מיקרו-בקר PSoC 6 מבית Cypress Semiconductor ומודול חיבוריות אלחוטית LBEE59B1LV Type 1LV מבית Murata Electronics עם רכיבים פסיביים. מתג תדר רדיו (RF) ואנטנת שבב מיני עבור שני פסי-תדר GHz 5/GHz 2.45 משלימים את הההתקנים התומכים.
מתוכנן במיוחד כדי לבטל את הפשרה הקונבנציונלית בין ביצועי העיבוד לבין צריכת ההספק, ה- PSoC 6 משלב Cortex®-M4 ®ARM 150 מגה-הרץ (MHz), המשרת כמעבד היישומים העיקרי, ו- +ARM Cortex-M0 MHz 100, המטפל בפעולת הספק-נמוך. לצד זיכרון Flash וזיכרון RAM סטטי (SRAM) משולבים, ה- PSoC6 כולל מנוע קריפטוגרפיה, רכיבים היקפיים אנלוגיים ודיגיטליים ניתנים-לתכנות, תמיכת חישת מגע CapSense ומספר ממשקי מערכת (איור 2).
איור 2: בנוי בתוך מודול נושא של לוח PSoC 62S2 Wi-Fi BT מבית Cypress, המיקרו-בקר PSoC 6 משתמש בארכיטקטורה רבת-ליבות כדי לעמוד בדרישות עבור עיבוד יישומים והרצה בזמן-אמת בהספק-נמוך גם יחד. (מקור התמונה: Cypress Semiconductor)
מודול LBEE59B1LV מבית Murata מספק תת-מערכת רדיו שלמה במארז בגודל 10.0 x 7.2 x 1.4 מילימטר (מ"מ) שלה חיבוריות אינטרנט אלחוטית עבור התקנים משובצים (WICED) CYW43012 מבית Cypress + התקן Bluetooth, שעון ייחוס ומסננים (איור 3).
איור 3: מודול חיבוריות אלחוטית LBEE59B1LV Type 1LV מבית Murata מספק תת-מערכת רדיו Wi-Fi + Bluetooth שלמה מורשית-מראש הבנויה סביב התקן WICED CYW43012 מבית Cypress. (מקור התמונה: Murata Electronics)
המודול תומך בחיבוריות אלחוטית GHz 2.4 ו- GHz 5 עם Bluetooth 5.0 ו- Wi-Fi 802.11a/b/g/n. בנוסף, המודול מספק אופן ידידותי-ל-802.11ac, התומך באפנון אמפליטודה רביעוני (QAM) 256 של 802.11ac עבור ערוצי MHz 20 בפס-התדרים GHz 5 ומציע קצב העברה גבוה יותר ופחות אנרגיה לכל ביט לעומת מוצרי 802.11n-בלבד. תוכנן לזרז את הפיתוח, מודול LBEE59B1LV מבית Murata מורשה-מראש במספר אזורים בעולם, ובכך חוסך את העיכובים הממושכים הקשורים לבדיקות תאימות והרשאה.
בתוך המודול, התקן WICED מבית Cypress משלב מעבד Arm Cortex-M3 ומעבד Arm Cortex-M4 בתת-המערכות Wi-Fi ו- Bluetooth, בהתאמה. למרות שהוא אינו זמין עבור קוד לקוחות, מעבד Arm Cortex-M3 מריץ קושחת Cypress התומכת בפעולות Wi-Fi ובפונקציונליות נוספת, כולל פונקציונליות הפחתת-העומס המתוארת להלן. ה- Arm Cortex-M4 בתת-מערכת Bluetooth מריץ את קושחת בקר Bluetooth, חבילת תוכנה Bluetooth ופרופילים. בנוסף, ליבה זו יכולה להריץ קוד לקוח שתוכנת באמצעות ערכת פיתוח תוכנה (SDK) WICED) מבית Cypress.
השימוש בשיטות חיסכון בהספק בתכני IoT אלחוטי
תוכנן להקטין למינימום את צריכת ההספק, ל- PSoC 6 ומודול חיבוריות אלחוטית יש מערך מקיף של אופני הספק ויכולות הפחתת הספק. חברת Cypress מגבה פלטפורמת חומרה יעילת-הספק זו עם תוכנה משלימה משמעותית שתוכננה לפשט את השימוש בשיטות חיסכון בהספק בתכני IoT אלחוטי. לדוגמה, המפתחים יכולים לממש בקלות את שיטת התשאול לחיסכון בהספק שהוזכרה קודם לכן באמצעות ספריית מנהלי-התקנים מארחים Wi-Fi (WHD) המשובצת העצמאית.
המפתחים פשוט קוראים לפונקציית ממשק תכנות היישומים (WHD (API () whd_wifi_enable_powersave כדי לאפשר תשאול חיסכון בהספק ולפונקציית () whd_wifi_disable_powersave כדי להשבית אותו מאוחר יותר בהתקן. כשהוא מופעל, ה- STA מודיע ל- AP שהוא הלך לישון. כפי שצוין קודם לכן, ה- AP אוגר/חוצץ את כל החבילות (Frames) המיועדות ל- STA שבאופן-שינה ומגדיר למשואה המחזורית שלו כדי לציין שקיימות חבילות. כאשר ה- STA מתעורר לבדוק את המשואה, הוא מתחיל בתהליך סטנדרטי כדי לקבל את החבילות הללו.
למרות שמנגנון התשאול לחיסכון בהספק מיועד עבור תחנות STA עם יחסי-מחזור נמוכים, שיטה דומה, הנקראת חיסכון בהספק ללא תשאול, תומכת בתחנות STA עם דרישות קצב העברה גבוה יותר. כאן, ה- STA משדר חבילת נתונים פונקציית Null, היוזמת העברת חבילות מה- AP.
שיטות התשאול לחיסכון בהספק והחיסכון בהספק ללא תשאול מאפשרות להתקנים לצמצם את פעולות המקלט אך הן אינן מונעות טרנסאקציות לא-הכרחיות הקשורות לתקורת פעולות הרשת. לדוגמה, כל רשת הכוללת IoT WLAN נושאת תעבורת מנות (Packets) לא-רצויה כאשר היא מחוברת לרשת חיצונית, במיוחד לרשת האינטרנט הציבורית. היכולת לסנן מנות אלו בתת-מערכת התקשורת מבלי לערב את המעבד המארח של התקן ה- IoT תאפשר למעבד המארח להישאר באופן שינה בהספק-נמוך.
מלבד מנות לא-רצויות, גם תעבורת רשת לגיטימית עלולה לגרום למעבד המארח להתעורר ללא צורך. לדוגמה, פרוטוקול תרגום כתובות (ARP) הסטנדרטי של Wi-Fi משתמש במנות (Packets) בשידור פומבי (Broadcast) כחלק מהפונקציה שלו למפות את כתובת ה- IP המשויכת להתקן לכתובת בקרת גישה לתווך (MAC) של ההתקן. פעולה זו חיונית עבור תפקוד WLAN רגיל, ומאפשרת להתקנים להגיע להתקנים אחרים ברשת שלהם, לגלות כתובות IP כפולות ולהודיע להתקנים אחרים אם כתובת ה- IP השתנתה מכל סיבה שהיא.
מנות הבקשה והתגובה של ה- ARP הן בסיסיות עבור פעולת הרשת, כך שהמעבד המארח של התקן ה- IoT יכול לסבול מהעמסת-יתר רק מעיבוד מנות הבקשה והתגובה של ה- ARP. אם ממשק ה- WLAN של ההתקן פשוט מעביר בקשות ותגובות בין המארח לבין הרשת, כל בקשת ARP תעיר את המארח, לפעמים ללא צורך.
לעומת זאת, מודול החיבוריות האלחוטית מבית Murata מתערב בתהליך זה, ומשחרר את המיקרו-בקר PSoC 6 מעומס הטיפול בבקשות ARP. כאשר ה- PSoC 6 עוסק בפונקציונליות יישום ה- IoT העיקרית שלו, היכולת הזו משחררת מחזורי מעבד עבור הרצת היישום. אם ה- PSoC 6 נמצא באופן-שינה, יכולת זו מסייעת בהפחתת צריכת ההספק הכוללת של התקן ה- IoT. הודות לאפשור הורדת-עומס ARP בעזרת מענה אוטומטי לעמיתים, המודול מבית Murata יעיר את ה- PSoC 6 רק אם לא ניתן לענות לבקשת ARP נכנסת בעזרת הרשומות שנשמרו בזיכרון ה- Cache במודול מבית Murata (איור 4, משמאל).
איור 4: כאשר הוא מאופשר, מאפיין הורדת-עומס ARP מיירט בקשות ARP מהרשת (משמאל) או מהמעבד המארח (מימין), מגיב אוטומטית כאשר זיכרון ה- Cache מצליח לענות לבקשה (למעלה), ומעיר את המעבד רק כאשר זיכרון ה- Cache אינו מצליח (למטה). (מקור התמונה: Cypress Semiconductor)
אותה גישה יכולה גם לסייע בהפחתת צריכת ההספק ברשת WLAN. בפעולה רגילה, המודול מבית Murata יכול לנטר (לרחרח) את תעבורת הרשת ואת זוגות IP:MAC בזיכרון ה- Cache ולהבדילן מתגובות ARP אחרות. באמצעות מענה אוטומטי לעמיתים, המודול מבית Murata יכול לענות לבקשות ARP מה- PSoC 6, תוך הפעלת תת-מערכת הרדיו שלו רק אם אין מענה לבקשה של ה- PSoC 6 מזיכרון ה- Cache של ה- ARP (איור 4, מימין).
מימוש מבוסס-תפריט פשוט של מאפייני חיסכון בהספק
מימוש מאפיין הורדת-עומס ARP עם ערכת Pioneer הוא פשוט להפליא. כלול בסביבת הפיתוח המשולבת (IDE) של ה- ModusToolbox (MTB) מבית Cypress, כלי Device Configurator מבית Cypress מאפשר למפתחים לממש יכולת זו עם מספר בחירות תפריט בלבד. חברת Cypress מספקת קובצי תצורה בנויים-מראש המאפשרים למפתחים לבחור במהירות תצורות שונות כולל הורדת-עומס ARP.
השימוש בכלי Configurator Device להגדרת תצורות מפורשות הוא פשוט ביותר. המפתחים משתמשים באפשרויות התפריט של הכלי כדי לאפשר את פין יקיצת המארח, לתת שם לפין (CYBSP_WIFI_HOST_WAKE) ולהגדיר את פרמטרי הפין (איור 5).
איור 5: כלי Cypress Device Configurator מאפשר למפתחים להשתמש בתפריטים כדי להגדיר את אפשרויות חיסכון בהספק הזמינות עם לוח Pioneer. (מקור התמונה: Cypress Semiconductor)
בלשונית Wi-Fi של הכלי, המפתחים מאפשרים יקיצת מארח ומגדירים את פין הפסק (Interrupt) לשם שהוזן קודם לכן (CYBSP_WIFI_HOST_WAKE). רשומות תפריט נוספות מאפשרות את הורדת-עומס ARP, מגדירות את מאפיין מענה אוטומטי לעמיתים, מאפשרות רחרוח ברשת ומגדירות את זמן התפוגה של רשומות זיכרון ה- Cache (איור 6).
איור 6: באמצעות לשוניות תפריט נוספות בכלי Device Configurator מבית Cypress, המפתחים יכולים לאפשר את מאפיין הורדת-עומס ARP ומאפיינים ספציפיים כדוגמת מענה אוטומטי לעמיתים. (מקור התמונה: Cypress Semiconductor)
לאחר שמירת התצורה, המפתחים פשוט מייצרים קובצי מקור, בונים את הפרויקט המעודכן ומתכנתים את לוח Pioneer. באמצעות הליך דומה, המפתחים יכולים להגדיר את המודול מבית Murata כך שיוריד את עומס סינון מנות ה- Wi-Fi ויתמודד עם סוגים נפוצים אחרים של פעולות רשת. אותה גישה מאפשרת אפילו להתקן IoT לבצע את פרוטוקול TCP Keep Alive של ה- Wi-Fi הנחוץ לשמירה על חיבוריות Wi-Fi - והכל מבלי להעיר את המעבד המארח של ה- IoT.
בפעולות WLAN רגילות, התקן לקוח (Client) ושרת מארח מקיימים חיבורי TCP על ידי החלפת מנות (Packets) Keep Alive. אם אחד משני הצדדים להחלפה זו אינו מקבל תגובה לאחר מספר ניסיונות, הוא מנתק את החיבור. גם בהתקני IoT מוגבלי-הספק, על המעבד המארח להתעורר כל הזמן כדי להשתתף בהחלפות אלו או להשתמש אפילו ביותר הספק כדי להקים-מחדש חיבורים ברציפות.
כמו עם הורדת-עומס ARP, המפתחים יכולים להשתמש בכלי Device Configurator כדי לאפשר הורדת-עומס TCP Keep Alive. לאחר אפשור מאפיין זה, המודול מבית Murata מבצע אוטומטית את פרוטוקול Keep Alive מבלי להעיר את ה- PSoC 6 (איור 7).
איור 7: כאשר הורדת-עומס TCP Keep Alive מאופשרת, מודול החיבוריות האלחוטית (התקן WLAN) מבצע אוטומטית את פרוטוקול Keep Alive ומרשה למעבד המארח להישאר באופן שינה בהספק-נמוך. (מקור התמונה: Cypress Semiconductor)
למרות שחברת Cypress ממליצה על שימוש בכלי Configurator Device כדרך הקלה ביותר למימוש, המפתחים יכולים גם לממש ידנית את מאפייני החיסכון בהספק של פלטפורמת Cypress כולל הורדת-עומס ARP, סינון מנות (Packets), הורדת-עומס TCP Keep Alive ואחרים.
בבסיס שתי הגישות עומדת תוכנת-הביניים (Middleware) Low Power Assistant (LPA) מבית Cypress התומכת במאפייני חיסכון בהספק אלו עבור Wi-Fi, Bluetooth והמיקרו-בקר PSoC 6, לצד מאפיינים אחרים מעבר לאלו שהוזכרו כאן.
לאחר שהמפתח מגדיר תצורות באמצעות תפריטים או על ידי הוספת קוד תצורה באופן ידני, קושחת ה- LPA פועלת באופן שקוף ליישום, ומתזמנת אוטומטית את השימוש במאפייני חומרה בהספק-נמוך וביכולות התוכנה.
סיכום
הצורך בחיבוריות אלחוטית רצופה ובחיי סוללה ארוכים בהתקני IoT מציג דרישות סותרות עבור המתכננים שהן רק מוחרפות עקב הצורך לתמוך גם ב- Wi-Fi וגם ב- Bluetooth. כפי שהוצג, הודות לשילוב של תת-מערכת רדיו המסוגלת להורדת-עומס של משימות עיבוד רשת עם מיקרו-בקר בהספק-נמוך, ערכת CY8CKIT-062S2-43012 Wi-Fi BT Pioneer מבית Cypress Semiconductor מאפשרת למתכננים לעמוד בדרישות החיבוריות האלחוטית IoT שלהם ובדרישות ההספק-נמוך.

מיאון אחריות: דעות, אמונות ונקודות מבט המובעות על ידי מחברים שונים ו/או משתתפי פורום באתר אינטרנט זה לא בהכרח משקפות את הדעות, האמונות ונקודות המבט של חברת DigiKey או את המדיניות הרשמית של חברת DigiKey.