עם כל כך הרבה קיצורים ושמות כגון ANT, ANT+, ANT-FE-C, BLUETOOTH, BLUETOOTH SMART, BLUTOOTH 4.X, FTMS ואחרים – איך אפשר שלא להיות מבולבלים…. אז הגיע הזמן לעשות קצת סדר בדברים.
פרוטוקול ANT – Adaptive Network Topology
פרוטוקול ANT הינו פרוטוקול תקשורת אלחוטי המאפשר שליחת הודעות בצורה יעילה וחסכונית אשר אינה צורכת אנרגיה רבה (Low Energy). עובדה זו הופכת את השימוש בו לאידאלי עבור מכשירים וסנסורים בתחום הספורט שכן היא מאפשרת להם לעשות שימוש בבטריות קטנות (מבחינת גודלן הפיזי) אשר יספקו אנרגיה לתקופה ממושכת. כמו כל פרוטוקול תקשורת, ANT מגדיר את משטר שליחת ההודעות, מבנה ההודעה (גודל, שדות) וכו', אך הוא אינו מגדיר את תוכן ההודעה עצמה, כך שכל יצרן יכול לייצר "שפה" משלו ולהשתמש בפרוטוקול זה ע"מ להעביר מסרים בין מכשירים/סנסורים אשר מבינים את ה "שפה" שלו.
הפרוטוקול פותח ע"י חברה בשם Dynastream Innovations בשנת 2003 שנרכשה ע"י חברת גרמין ב 2006. למרות היות הפרוטוקול בבעלות גרמין, היא שומרת עליו כפרוטוקול פתוח בפני כל הגורמים הרלוונטים בתעשייה.
הכירו את ה +ANT
דמיינו אפליקצית אימונים כמו TrainerRoad או אפילו את שעון ה GARMIN שלכם. הם תומכים בפרוטוקול ANT ומסוגלים לקלוט תשדורות מכל סנסור שמשדר בפרוטוקול ANT. אבל ! (וזה "אבל" חשוב), בשביל להבין ולפענח את מה שנאמר בתשדורת עצמה שמגיעה ממד הדופק של יצרן X, ממד הדופק של יצרן Y או של Z – הם צריכים להכיר ו"לדבר" ב 3 שפות שונות (בהתאם לניב של היצרן)….
הבעיה לעיל גרמה לצריכת משאבי פיתוח רבים ולא אפשרה לקדם אפליקציות או מחשבי ספורט (דוגמת מחשבי רכיבה ושעוני ספורט) שיהיו הטרוגניים וידעו לעבוד עם מגוון רחב של סנסורים ולכן הוחלט על תקינה אחידה במסגרת פרוטוקול ANT שתיקרא +ANT. התקינה הזו מגדירה מגוון רחב של פרופילים עבור סוגי מכשירים/סנסורים שונים ומחייבת את כל היצרנים שרוצים לתמוך ב +ANT לוודא ש"השפה" שהסנסור שלהם משדר בפרופיל מסוים תהיה אחידה.
לדוגמא, סנסור הפועל תחת פרופיל "מד-דופק", חייב לשדר שדות מידע מסוימים שהפורמט שלהם קבוע, ידוע ומסוכם. אותו כנ"ל לגבי מד מהירות, מד וואטים וכדומה. היתרון העצום בכך הוא שכעת ניתן לפתח אפליקציות כלליות מבלי צורך להתאים אותן לכל יצרן בנפרד. כעת TrainerRoad או מחשב הרכיבה שלכם יכולים לקרוא נתונים מכל סנסור מד דופק (לדוגמא) של כל יצרן (כל עוד הוא תומך ב +ANT), כי הם יודעים בדיוק באיזה שורה ובאיזה מיקום בתשדורת המגיעה מהסנסור הזה נמצא המידע הרלוונטי עבורם.
ANT-FE-C
ה +ANT היה בהחלט התקדמות אדירה ביצירת סטנדרטיזציה בין כל המכשירים והיצרנים למעט אתגר אחד שנותר עם טריינרים חכמים למינהם (ועוד מכשירים חכמים אחרים דוגמת "הליכונים" ו "אופניים חכמים"). הסיבה לכך נעוצה בעובדה שמכשירים אלה לא רק משדרים אינפורמציה (דוגמת מד קאדנס, מד דופק, מד מהירות וכו') אלא גם מסוגלים לקבל פקודות וכל יצרן "טריינר" פיתח סט פקודות משלו…
דמיינו לשם הדוגמא ששני אנשים אילפו את כלבם לשבת ע"פ פקודה. הראשון כשהוא נותן את הפקודה "שב" והשני כשהוא נותן את הפקודה "סיט". הכלב של האיש הראשון לא יישב כשישמע את הפקודה "סיט" ולהיפך. המשמעות לכך הייתה ששוב כל תוכנה דוגמת TrainerRoad, Zwift ואחרות היו צריכות לפתח שורות קוד ייעודיות לכל טריינר חכם שהן רצו לתמוך בו – מה שאומר השקעה רבה בפיתוח ובבדיקות ומקור להרבה מאוד טעויות. לשמחתנו, גם במקרה הזה ובדומה ליוזמה שהביאה לתקינת +ANT, התפתחה יוזמה ליצור תקינה ואחידות בין יצרני המכשירים החכמים שהובילה ליצירת פרופיל בשם FE-C (ראשי תיבות Fitness Equipment Control) תחת פרוטוקול +ANT.
הראשונה לתמוך בתקן הזה הייתה חברת TACX ב 2015 כשלאחר מכן מצטרפות נוספות. החל מרגע זה התאפשר לחברות האפליקציות (ואפילו ליצרניות שעוני/מחשבי הרכיבה) לפתח שורות קוד אחידות שיעבדו בצורה זהה מול כל טריינר (ומכשירים חכמים אחרים) שתומך בפרופיל ANT-FE-C ובא לציון גואל.
אז בפעם הבאה כשאתם רואים ב ZWIFT תחת רשימת ה Controllable Trainers הניתנים לחיבור, את הטריינר שלכם (לדוגמא KICKR או NEO) מופיע כ כ +ANT וגם כ ANT-FE-C אתם כבר תדעו למה… ולמי שעדיין לא הבין למה: זה מפני שהראשון מתאפשר דרך התממשקות של אותן שורות קוד ש ZWIFT כבר כתבו בעבר במיוחד לחיבור מול הטריינר הספציפי הזה ואילו השני מתאפשר דרך שורות הקוד הכלליות לחיבור מול טריינר חכם שה KICKR ו ה TACX (וכמובן אחרים נוספים) תומכים בהם.
רוצים לקרוא ולהבין קצת יותר גם על פרוטוקול Bluetooth Smart? לחצו על ה: לינק
שי, אתה עושה כאן ובמקומות אחרים עבודה נהדרת בשפה מובנת לכל.
נכס אמיתי.
תודה 🙏
הי.
אשמח להנחיות כיצד לחבר מד דופק לטלפון, +SAMSUNG 10.
לפי היצרן (רשום על האריזה ובדף המצורף למוצר) מד הדופק אמור לעבוד עם פרוטוקול ANT+.
כמו כן רשום על האריזה – HR-002 (רלוונטי?).
תודה מראש.
עודד