Cloud Based Component Library

Cloud Based Component Library

הצגנו כבר את פלטפורמת ALTIUM 365, הן בבלוגים והן בוובינרים שונים, כך שכיום בשוק הישראלי יותר מ-65% מהחברות עובדים כבר עם פלטפורמת הענן והמספרים ממשיכים לעלות.

במאמר שלפניכם נבדוק מדוע יותר ויותר חברות בוחרות לתכנון PCB בענן.

Cloud Based Component Library 1

אלה הן הסיבות העיקריות בגינן יותר ויותר לקוחות עוברים לענן:

  • שרידות המידע – כאשר המידע עולה לענן הוא נשמר ומגובה בשרתי Altium שמבוססים על שירותי האחסון של אמאזון (AWS) עם רמת האבטחה הגבוהה ביותר.
  • ניהול המידע – פרוייקטים שנמצאים בשירות הענן של Altium נהנים מניהול גירסאות אוטומטי מהרמה הבסיסית עד השוואה בין גירסאות של קבצים ספציפיים.
  • שיתוף ומעקב – שיתוף פרוייקטים וסכמאות מעולם לא היה קל יותר בעזרת Altium 365.
  • נגישות – ניתן לצפות במידע מכל מכשיר בעל אינטרנט – סמארטפון, טאבלט וכו'.
  • ECAD – MCAD- כשעובדים עם הפלטפורמה ניתן להשתמש בשירות הייחודי של שילוב תוכנות מכאניות עם Altium Designer ועבודה על אותם קבצים.
  • SSOT – Single Source of Truth – כל המידע על הפרוייקט במקום אחד ללא שכפול של קבצים ותיקיות מסורבלות.
Cloud Based Component Library 2

שירות נוסף שזמין בפלטפורמת Altium 365 הינו אחסון של ספריות הרכיבים שלכם בענן.

מה המשמעות?

אם כיום אתם עובדים באחת מהדרכים האלו:

  1. ספריית רכיבים מקומית שמתעדכנת באופן יידני
  2. ספריית Data Base משותפת
  3. ספריית רכיבים בודדת משותפת

אז הפתרון הבא יהיה מאוד מעניין עבורכם – העלאה וטעינה של ספריות הרכיבים שלכם בענן של Altium וגישה אליו מתוך Altium Designer עבור כל מהנדס.

במה התהליך כרוך? יצירת ספרייה אחת שכוללת את כל הרכיבים שלכם, והעלאה שלה אל הענן. מרגע שהרכיבים נמצאים בענן, הספרייה תהיה זמינה לכל מי שמחובר אל ה – Workspace של החברה. העבודה על הספרייה שקופה לכל שאר המשתמשים וניתן כמובן להגדיר משתמש אחד שמוגדר "ספרן" שלו יש יכולות עריכה של הספרייה.

Cloud Based Component Library 3
ממשק ניהול הרכיבים בענן – נותן חיווי על כל פרטי הרכיבים בספרייה ייחד

ניהול הספרייה בענן נותן יכולות שלא קיימות בניהול ספרייה לוקאלית מקומית ומקנה אפשרויות ספרייה מתקדמות.

מעוניינים לשמוע עוד? צפו בוובינר שהעברתי בנושא מיגרציה של ספריות מ-Altium Designer אל Altium 365,  בוובינר תוכלו לצפות במדריך שיכין אתכם וידריך אתכם כיצד להעלות את ספריות הרכיבים שלכם לענן ולחסוך זמן רב של ניהול ספריות מקומיות.

יש לכם שאלות? אני זמין לכל שאלה.

תודה רבה,
נתראה בפוסט הבא,
בן מימון

6-Layer PCB Design Guidelines

נקודות חשובות בבניית מעגל עם 6 שכבות

במאמר שלפניכם אסביר מעט על הדגשים במעבר מ-4 ל- 6 שכבות ונתמקד בדברים שחשוב לשים אליהם לב במעבר הזה.

6-Layer PCB Design Guidelines
6-Layer PCB Design Guidelines

מדוע נרצה להשתמש ב – PCB עם 6 שכבות?

לפני שנתחיל לתכנן את ה-PCB שלנו חשוב להתחשב בסיבות שבגללן נרצה לבנות את המעגל שלנו עם 6 שכבות. ישנן מספר סיבות שנרצה לבצע הגדלה של ה – Stackup שלנו מעבר לשכבות הזנה כאלה ואחרות. הצורה השכיחה ביותר של מעבר לקוחות ממעגל מודפס שמבוסס 4 שכבות למעגל שמבוסס 6 הינו מעבר מצורת השכבות הבאה:

SIG/PWR/GND/SIG > SIG/PWR/SIG/SIG/GND/SIG

להלן ההסבר:

  • SIG/PWR/GND/SIG – המשמעות היא 4 שכבות כאשר בין כל שכבה קיים חומר דיאלקטרי לבחירה, ובמקרה הזה יש לנו 2 שכבות סיגנל (שממוקמות ב – Bottom & Top) ובניהן שכבת הזנת מתח ושכבת אדמה.
  • SIG/PWR/SIG/SIG/GND/SIG – המשמעות היא 6 שכבות כאשר בין כל שכבה קיים חומר דיאלקטרי לבחירה, ובמקרה הזה יש לנו 2 שכבות סיגנל (שממוקמות ב – Bottom & Top) כלומר, סכ"ה 2 שכבות סיגנל.
  • בניהן שכבת הזנת מתח ושכבת אדמה, ובין שכבות האדמה והמתח יש עוד 2 שכבות סיגנל, כלומר, סכ"ה 4 שכבות סיגנל.
6-Layer PCB Design Guidelines

להלן סיבות שלדעתי כדאי לעבור בגללן למודל 6 שכבות:

  • אתם משתמשים במודל של 4 שכבות – SIG+PWR/GND/GND/SIG+PWR ואתם צריכים עוד מקום עבור הרכיבים שלכם.
  • אתם מפתחים Mixed Signal PCB (כלומר מעגל שמכיל סיגנלים אנלוגיים ודיגיטליים גם ייחד) ויש לכם שטח מוגדר ומוגבל לממשקים אנלוגיים ותזדקקו לשכבה פנימית עבור חיווט לממשק דיגיטלי איטי יותר.
  • אתם מפתחים High-Speed-Design PCB שיש לו הרבה O\I וחשיבות ההפרדה בין הסיגנלים היא חשובה (לדוגמא להעביר סיגנלים בשכבות פנימיות במקום זה לצד זה).
6-Layer PCB Design Guidelines

כיצד לחווט את הסיגנלים?

לפני שנכנס לעובי הקורה, בואו נציץ בStackup- קלאסי של מעגל מודפס מבוסס 6 שכבות (מיוצג בMIL):

6-Layer PCB Design Guidelines

במודל השכבות הנ"ל ניתן לראות שה – Top & Bottom נמצאים מעל שכבות דיאלקטריות דקות במיוחד כך ששכבות אלה יוכלו להיות בשימוש סיגנלים שיש להם סיגנלים שמנותחים תחת תיאום אימפדנסים. 10 מיל הוא העובי המקסימלי שרצוי להשתמש בו. המודל מתאים גם למעגל עם סיגנלים דיגיטליים עם שמכיל Differential Pairs.

כיצד לחווט שכבות POWER/GND?

בדוגמא של השכבות הנ"ל יש שכבה שכולה מוקדשת לPOWER ושמה – PWR. הייעוד שלה הוא לספק מתח לכל הרכבים שזקוקים לכך. במעגל שמכיל 6 שכבות זה שכבה חשובה מכיוון שהיא תקל על חיבור הרכיבים למתח שלהם. שכבה כזו תקרא גם Power Plane.

בואו ניקח את הדוגמא הבאה של BGA מרובה רגליים, שבמקרה הזה מדובר ב – High Speed Interface Controller שדורש זרם רב במספר מתחים שונים ולכן הרבה מנקודות ההזנה שלו יהיו מחוברים לשכבות הפנימיות של המעגל – POWER+GND. בדוגמאות נוספות כמו FPGA נזדקק לשכבה כזו בשל מספר הפינים הרבה שצריך חיבור למתח הזנה. היתרון הנוסף הוא שגם נחסכים חיווטים מיותרים וגם שכל רגל בBGA ניתן לחבר לVIA ולקשר אותה ישירות לשכבת ההזנה הרצוייה ובכך למנוע חיווטים מיותרים:

6-Layer PCB Design Guidelines
רכיב BGA במצב עריכה
6-Layer PCB Design Guidelines
תצוגה תלת מימדית עם צבעי השכבות כפי שמופיעים בעריכה
6-Layer PCB Design Guidelines
תצוגה תלת מימדית והNETS של ה – BGA

בתמונה של הBGA במצב עריכה ניתן לראות כמות גדולה של רגליים שמשוייכות לשכבות הזנה מה שמקל על פעולת העריכה מאוד. במידה ואתם צריכים מעגל עם זרם גבוהה במודל 6 שכבות או לחילופין אתם זקוקים למספר מתחי הזנה שונים ניתן לשקול להוסיף שכבת POWER נוספת במקום GND.

לסיכום, מגוון הכלים שיש לנו בתוכנת Altium Designer מאפשר לנו בצורה קלה ואינטואיטיבית להחיל על המעגל שלנו שכבות נוספות שיפיקו לנו PCB אמין יותר, חזק יותר, ושעומד בדרישות קצה מחמירות יותר. לשאלות בנושא אתם מוזמנים תמיד לפנות אליי.

תודה רבה,
נתראה בפוסט הבא,
בן מימון

Solidworks Industrial design students projects - banner

סטודנטים לעיצוב תעשייתי משנקר, HIT והדסה הציגו פרוייקטים מעוררי השראה בתוכנת SOLIDWORKS

במחלקה לעיצוב תעשייתי בשנקר הסטודנטים לומדים את תוכנת SOLIDWORKS במשך שני סמסטרים בהובלתם של המרצים אלעד קאשי, רון פרנץ ותמר אייזנברג.

בעוד בסמסטר הראשון הלימודים מתרכזים בכלי הסוליד/אסמבלי ובהבנת הלוגיקה של התוכנה, בסמסטר השני הסטודנטים כבר לומדים את כלי המשטחים לעומק ואיך ניתן להשתמש בהם על מנת ליצור עיצוב מורכב.

מכיוון שבנקודת הזמן הספציפית בתואר יכולות המידול שלהם עולות משמעותית על יכולות העיצוב, הגדרת הפרויקט הסופי היא לבחור מוצר קיים בעל מורפולוגיה מורכבת (נבחר באישור צוות ההוראה) ולמדל אותו כך שיהיה נאמן לחלוטין למקור.

המוצר חייב להיות קיים פיזית על מנת שיוכלו לבדוק, לסובב ולמדוד אותו מכל הכיוונים על מנת להשיג פרופורציה מושלמת. במוצרים קטנים זה קל, במוצרים גדולים כמו רכבים הם מחויבים לעבוד מול מודל מוקטן.

המחלקה לעיצוב תעשייתי בשנקר משקיעה מאמצים רבים ביכולות הטכניות של הסטודנט מתוך מחשבה וציפיה שיכולות אלו יאפשר לסטודנטים יכולות עיצוב עדיפות ומבלי לייצר פשרות עיצוביות כתוצאה מהצורך במידול ממוחשב.

התוצאות מעוררות השתהות – סטודנטים לשנה ב שרק לפני שנה התחילו ללמוד את תוכנת SOLIDWORKS מעצבים מוצרים מורכבים ללא שום עזרים טכניים כמו סורק וכו'. רק מי שיודע לעצב בתוכנת SOLIDWORKS יבין מיד את גודל האתגר בבניית העבודות האלה אחרי שני סמסטרים בלבד של לימוד התוכנה.

הנה רק חלק מהפרוייקטים המרשימים האלה:

עבודה של טל פיינגולד:

Solidworks Industrial design students projects 1

עבודה של אוהד פלד:

Solidworks Industrial design students projects 2

עבודה של עמוס גרינוולד:

Solidworks Industrial design students projects 3

עבודה של אייל גל:

Solidworks Industrial design students projects 4

עבודה של רון חכמוב:

Solidworks Industrial design students projects 5

במחלקה לעיצוב תעשייתי ב- HIT חולון מאמינים שעל מעצב תעשייתי מוטלת האחריות לספק פתרונות חכמים ומגוונים, בהתאם לדרישות של כל פרויקט ופרויקט, ובדיוק לשם כך מאפשרים ומעודדים את תלמידי המחלקה להתנסות בשלל תרגילים שנועדו לדמות מצב אמיתי הכולל את כל השלבים שעובר המעצב התעשייתי.

את תחום התיב"ם במחלקה מוביל עדי כתרי שמלמד את הסטודנטים מידול והדמיה בתוכנת SOLIDWORKS, והנה חלק מהפרוייקטים מעוררי הגאווה שתיכננו הסטודנטים בקורסים שונים במחלקה:

מאור קוט – מכונת גילוח Philips
תוכנן בקורס SOLIDWORKS בהנחיית עדי כתרי ואמיר רוזן (שנה ב'):

Solidworks Industrial design students projects 6

חדד לינוי ושי רחמים – כלי רכב לחקלאות מתקדמת
תוכנן בקורס עיצוב כלי תחבורה אישיים (שנה ג') בהנחיית עדי כתרי ויוגב כץ:

Solidworks Industrial design students projects 7

אסף אברמס, דור לובטון וליאור בכר – רחפן נגד רחפנים
תוכנן בקורס עיצוב כלים אוטונומיים (שנה ג') בהנחיית עופר זיק ויניב ברפמן:

Solidworks Industrial design students projects 8

ולסיום שני פרוייקטי גמר:

גיא גבע – לול תרנגולות אורבני:

Solidworks Industrial design students projects 9

ומנדל אחואלוס – כלי נגינה ועריכה דיגיטלי:

Solidworks Industrial design students projects 10

התוכנית ללימודי עיצוב תעשייתי מכליל (B.Des) במכללה האקדמית הדסה להתפתח כמעצבים תעשייתיים בסגנונות שונים ובתחומים שונים, ובעיקר נותנת להם את הכלים המחקריים, החשיבתיים והעיצוביים להתפתח ולהמשיך להיות רלוונטיים בטווח הארוך בשוק העבודה.

במכללה האקדמית הדסה לומדים להיות מעצבים תעשייתיים בשיטת Human First אשר שמה את האדם במרכז – לעצב עם אנשים ולמען האנשים. התפיסה היא שמעצב תעשייתי צריך לעבוד עם אנשים ועבורם, תוך התחשבות בצרכים, בשאיפות ובהזדמנות לשנות את חייהם לטובה.

הסטודנטים לומדים את תוכנת SOLIDWORKS בקורסים השונים עד לסיום בפרוייקטי הגמר. הנה חלק מהפרוייקטים של הסטודנטים בקורסים השונים במחלקה:

קורס פלסטיקה בהנחיית אבי כהן

בקורס פלסטיקה הסטודנטים לומדים את עקרונות התכנון של מוצרי פלסטיק בטכנולוגיות שונות עם דגש על תחום הזרקות הפלסטיק. במהלך הקורס כל סטודנט קיבל טרנזיסטור, פירק אותו , ועיצב ותכנן מחדש כך שיהיה מוכן לייצור בהזרקת פלסטיק, כולל מנגנונים וחלקים נעים.

עבודה של הדר ששון : טרנזיסטור אובלי המשתמש בטבעות היקפיות לתפעול עוצמת השמע והתחנות

Solidworks Industrial design students projects 11

עבודה של עדי לוינגר : טרנזיסטור מתרחב היקפית המעביר תנועה קווית למעגלית באמצעות מנגנון מכני.

Solidworks Industrial design students projects 12

קורס פיתוח מוצר בהנחיית יורם פוני / הראל אוברמן

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

המכשיר נופל למים מהמכלית בעת דליפה וצף באזור של כתם הנפט לפי גדלו.

לאחר הגעת כוחות הצלה וניקיון ניתן לרכז את המכשיר במקום האיסוף, לנקות ולהשתמש שוב.

Solidworks Industrial design students projects 13

אין ספק שהסטודנטים המבטיחים האלה מעוררים סקרנות רבה להמשך לבוא…

אנחנו נמשיך לעקוב ולהבטיח נגישות של כל הסטודנטים לעיצוב תעשייתי במוסדות להשכלה גבוהה לתוכנת SOLIDWORKS אשר מהווה לא רק את כלי התכנון המתקדם ביותר אלא גם כלי התכנון הנוח ביותר ללמידה והכשרה .

לחצו כאן למידע נוסף אודות פתרונות SOLIDWORKS לאקדמיה >

היתוך מידע מחיישנים ויכולות עקיבה עבור מערכות אוטונומיות

מערכות חישה בעולם אוטונומי

כיום מערכות רבות הופכות להיות יותר ויותר חכמות ומורכבות. מערכות אלו יכולות להיות מעולמות תוכן רבים ומגוונים ולבצע משימות אשר שונות בתכלית באופיין ומטרתן. אחד הדברים המשותפים לכל המערכות הללו הינו שכולן מכילות חיישנים המאפשרים למערכת לאסוף מידע, להבין את המצב והסביבה בה היא נמצאת וכמובן להגיב בהתאם.

פתרון ה- Sensor Fusion and Tracking (SF&T) כולל אלגוריתמים עבור תכנון, הדמייה ובדיקת מערכות אשר מבצעות היתוך מידע ועקיבה ממספר חיישנים. ניתן למצוא שימוש ביכולות ה- SF&T במערכות רבות ומגוונות כמו מערכות פיקוח ומערכות אוטונומיות הפועלות בסביבות רבות: ספינות וצוללות בים, מטוסים, טילים ורחפנים באוויר, רכבים מסוגים שונים על יבשה (indoor/outdoor) ואף מערכות בחלל הפועלות מחוץ לאטמוספירת כדו"א.

חיישנים (Sensors)

פתרון ה- SF&T מאפשר לנו להגדיר מספר חיישנים מאותו הסוג וגם חיישנים מסוגים שונים. כמו כן, עבור כל חיישן ניתן להגדיר את התכונות הפנימיות עפ"י מפרט או דרישות, והן את התכונות החיצוניות, קרי, מיקום ואוריאנטציה של החיישן ביחס למערכת. סוגי החיישנים השונים הינם Radar, Lidar, Sonar, Infrared, IMU, INS ו- GPS. בנוסף, ישנם חיישנים נוספים לתעשיית הרכב כגון Camera, Vision-Based Object Detector, Lane Detector  אשר הינם חלק מפתרון ה- Automated Driving (ADT).

מגוון יכולות חישה עבור מערכת בודדת


להלן דוגמא ליצירת אובייקט חיישן מסוג Lidar: באובייקט שנוצר ניתן להגדיר את התכונות החיצוניות כגון מיקום [X Y Z] ואוריאנטציה [Ψ θ φ] של החיישן ביחס למערכת עליה הוא נמצא. כמו כן, ניתן להגדיר תכונות פנימיות כגון מגבלת זוויות העבודה וההגבהה, רמת הדיוק שלהן, טווח עבודה מקסימלי של החיישן ועוד. את התכונות ניתן להגדיר ברגע יצירת אובייקט החיישן וגם לערוך אותן לאחר יצירתו.

תכונות אובייקט חיישן Lidar ב- MATLAB

היתוך מידע ועקיבה (Sensor Fusion & Tracking)

את המידע המתקבל מהחיישנים במערכת ניתן לעבד בנפרד ולהפיק תובנות בהתאם. אפשרות נוספת הינה ביצוע היתוך מידע של הנתונים באמצעות מנגנון בשם Multi-Object Tracker. מנגנון זה מקבל גילויים (detections) בצורה של מדידות ורעשים לאורך זמן ומחזיר מצבים (states) והקשר בינהם לאורך זמן (covariance), זיהוי המעקבים (ID), גיל/אורך המעקב, סטטוס (זמני/מאושר) ועוד.

מנגנון ה- Multi-Object Tracker מאתחל (Initialize), מוודא (Validate), מנבא (Predict), מתקן (Correct) ומוחק/מסיר (Remove) את המסלולים, קרי, מידע עבור האובייקטים הנעים. המנגנון מבצע עקיבה ע"י קבלת נתונים ממספר חיישנים והקצאתם למעקבים באמצעות מסננים (filters) עוקבים (trackers) מסוגים שונים ובהתאם לתרחיש בו המערכת צריכה לפעול – באופן זה אנחנו יכולים לשערך בצורה טובה יותר את האובייקטים שהמערכת מזהה ואת התנהגותם.

מנגנון היתוך מידע ועקיבה

ממשק גרפי

ניתן ליישם את היכולות שראינו הן בסביבת MATLAB והן בסביבת Simulink. אפשרות נוספת לעבודה הינה באמצעות ממשק גרפי בשם Tracking Scenario Designer App. ממשק זה מאפשר לנו לישם את תהליך העבודה בצורה נוחה וויזואלית ולבסוף לייצר ממנו קוד MATLAB.

באמצעות הממשק ניתן להגדיר את הפלטפורמה שלנו ומטרות מסביב (קרקעיות, אוויריות או ימיות), מהם המסלולים שכל פלטפורמה מבצעת ואלו חיישנים קיימים על כל פלטפורמה ותכונותיהם. לאחר הגדרת התרחיש, ניתן לבצע סימולציות ולייצר נתונים מהחיישנים השונים.

דוגמא לשימוש בממשק הגרפי ניתן למצוא בקישור: Tracking Scenario Designer.

דברי סיכום

כפי שראינו, לפתרון ה- Sensor Fusion and Tracking ישנן הרבה יכולות המאפשרות לנו להגדיר תרחיש של משימת המערכת, את סוגי החיישנים ותכונותיהם, ולבחון אלגוריתמים שונים של עקיבה.

בנוסף ליכולות אלו, ניתן להשתמש בנתוני החיישנים עבור פיתוח אלגוריתמים נוספים מעולם המערכות האוטונומיות:

תפיסה (Perception) – תהליך סיווג ופענוח המעניק משמעות לסביבה בה המערכת פועלת.

תכנון מסלול (Path planning) – מיפוי אזור העבודה ותכנון מסלול אופטימלי עבור תנועת המערכת.

בקרת מסלול (Path following) – פיקוח כי המערכת אכן פועלת עפ"י המסלול שתוכנן.

Stay Tuned… במהלך השנה ישוחררו תכנים נוספים בנושאים הנ"ל וכיצד הם משתלבים בעולם המערכות האוטונומיות.

אתם מוזמנים להוריד את ה- e-book שלנו בנושא מערכות אוטונומיות:

"פיתוח מערכות אוטונומיות באמצעות MATLAB ו-Simulink"

מעדכנים שירותים ל-Pro Runtime, מבלי להסתבך

במאמר זה, המיועד בעיקר לאדמיניסטרטורים של הפורטל הארגוני, אסביר בקצרה על ArcGIS service runtimes, אציג דרכים שונות לעדכון ה-runtime של שירותי GIS, ואת האפשרות לבטל את התמיכה ב-ArcMap runtime בהתקנת שרת קיימת.

1. ArcGIS Service Runtime

שירותי web GIS בשרת ה-ArcGIS – למשל שירות מפה, feature, geoprocessing או geocode – רצים על "מנוע" המכונה ArcGIS service runtime. שירותים שפורסמו מ-ArcGIS Pro מבוססים על runtime שונה משירותים שפורסמו מ-ArcMap. בגרסאות שרת 10.4-10.9.1, שני ה-runtimes כלולים ונתמכים וניתן להריץ שירותים משני הסוגים, ולהמשיך ולפרסם שירותים מ-ArcMap. הגרסה הנוכחית, 10.9.1, היא הגרסה האחרונה שתכלול ותתמוך בשניהם.

*הערה – קיים סט שלAPIs ליצירת אפליקציות בשם ArcGIS runtime API – מדובר במוצר אחר שאינו נושא המאמר.

דוגמאות כיצד רואים מה ה-service runtime בגרסאות ArcGIS Server שונות

גרסאות ArcGIS 2022 שיצאו בהמשך השנה והלאה כבר לא יתמכו בפרסום שירותים מ-ArcMap, או בהרצה של שירותים שפורסמו מ-ArcMap לפני שדרוג השרת. כלומר, אם יש לכם שרת בגרסה ישנה יותר (נניח 10.8.1) שאליו פרסמתם שירותים מ-ArcMap, תהיו חייבים לבצע פעולה כלשהי על השירותים האלו לפני שדרוג השרת לגרסת ArcGIS 2022 או חדשה יותר. הפעולה יכולה להיות עדכון ה-runtime, פרסום השירות מחדש, מחיקת השירות (אם הוא כבר לא רלוונטי) – אבל משהו יצטרך לקרות כדי שתוכלו להמשיך להשתמש בשירות הזה גם אחרי שדרוג השרת.

כדי להקל על התהליך, גרסאות 10.9, 10.9.1 (שיצאו בשנה הקודמת) כוללות מה ש-ESRI מכנים "migration tooling" – כלים ועזרים לעדכון שירותים מבוססי ArcMap runtime ל-Pro runtime, מבלי לפרסם אותם מחדש. הכלים האלו יכולים לשמש גם לתכנון של הפעולות שיש לבצע לקראת שדרוג, ולבדיקות מוכנות למעבר לגרסה הבאה.

2.  איך לעדכן שירותים

א. כלי עדכון ואבחון אוטומטי

הכלי הראשון שעומד לרשותנו הוא command line utility בשם UpdateArcMapServices שנכלל עם התקנת השרת בגרסאות 10.9, 10.9.1. לכלי זה שני מצבי הרצה: analysis לאבחון השירותים, ו-execution לעדכון ה-runtime של השירותים ל-Pro runtime.


בהרצה במצב analysis, שהוא גם ברירת המחדל, הכלי מייצר דו"ח עם פירוט השירותים שניתן לעדכן באמצעותו והשירותים שדורשים איזושהי פעולה לפני שיוכלו לעבור עדכון – כולל קוד והסבר על הבעיה באותם שירותים.

הדו"ח לא מציג שירותים מבוססי Pro runtime, שלא צריך לעדכן, ולא שירותים שלא ניתן לעדכן באמצעותו – כלומר שירותים שדורשים פרסום מחדש, שאליהם נגיע בהמשך. סוגי השירותים שניתן לעדכן באמצעות כלי זה הם:

  • Map services (with or without KML enabled)
  • Feature services (map services with feature access enabled)
  • WMS services (map services with WMS enabled)
  • WCS services (map services with WCS enabled)
  • WFS services (map services with WFS enabled)
  • Network Analysis services (map services with Network Analysis enabled)
  • Image services
  • Geodata services

את השניים האחרונים אפשר לעדכן רק באמצעות כלי זה, ולא באופן ידני (שנראה בהמשך).

בהרצה במצב execution, הכלי מעדכן את ה-runtime של כל השירותים שנמצאו מוכנים לעדכון, ומייצר דו"ח דומה הכולל גם את תוצאות העדכון.

שימו לב – שירותים מבוססי Pro runtime יכולים לרוץ על shared או dedicated instances, כלומר, להשתמש במשאבים ייעודיים לשירות או במשאבים מתוך מאגר שמשותף לכמה שירותים. בעדכון השירותים ל-Pro runtime באמצעות כלי זה, סוג ה-instance שמוקצה לשירותים הוא לפי מה שמוגדר בשרת כברירת המחדל. אם למשל ברירת המחדל היא shared instances, לאחר הרצת הכלי כל השירותים שיעודכנו ירוצו על משאבים משותפים. אפשר לשנות את הגדרת ברירת המחדל של השרת או לערוך שירותים ספציפיים לאחר העדכון.

ב.  עדכון ידני


שיטה נוספת לעדכון ה-service runtime היא דרך ממשק ה-server manager בגרסאות 10.9, 10.9.1. כשלוחצים על שירות מבוסס ArcMap runtime רואים הודעת אזהרה בראש העמוד שמזכירה שהשירות צריך לעבור עדכון. תחת הכותרת service runtime יש אפשרות לעריכת ה-runtime: בלחיצה על סימן העיפרון אפשר לבחור ב-Pro runtime ואחרי שמירה ואתחול  השירות הוא ירוץ על Pro runtime. השירותים הנתמכים הם אלו שהופיעו ברשימה קודם מלבד השניים האחרונים.

ניתן להחזיר את השירות שעודכן ל-ArcMap runtime באותה דרך, אך זה אפשרי באופן ידני בלבד. כמו כן, לא ניתן לערוך runtime של שירות שבמקור פורסם מ-Pro, אבל אין ממש סיבה לעשות את זה. הודעת האזהרה מופיעה בכל השירותים מבוססי ArcMap runtime, גם אם אלו שירותים שלא ניתן לעדכן דרך ה-server manager או הכלי. ההודעה שם כדי להזכיר שהשירות כמו שהוא כרגע לא יעבוד בגרסאות עתידיות.

יש שירותים שלא צריך לפרסם מחדש אבל מצריכים פעולה נוספת לפני שאפשר לעדכן את ה-runtime שלהם. אלו שירותים עם הרחבות SOE, SOI ושירותים עם יכולת schematics שיוצאת מתמיכה. כשמנסים לעדכן את ה-runtime שלהם דרך ה-server manager, מקבלים הודעת אזהרה נוספת עם הפעולות הדרושות. לאחר ביצוען ושמירה, אפשר לעדכן את השירות לפרו runtime מאותו מקום.

החל מגרסת ArcGIS 2022 לא תהיה תמיכה ב-ArcObjects SOE/SOI, אלא רק בכאלו שפותחו באמצעות ArcGIS Enterprise SDK. אם יש לכם עוד הרחבות ArcObjects, צריך להתכונן ולהתאים אותן לפני שמשתדרגים לגרסה הבאה.

ג.  שירותים שלא ניתן לעדכן

את סוגי השירותים הבאים אין ברירה אלא לפרסם מחדש מ-Pro:

  • Geoprocessing
  • Geocode
  • ArcGIS Workflow Manager (Classic) services
  • Raster catalogs
  • Time-enabled layers created by the Tracking Analyst extension
  • Data stored in IBM Informix or IBM Db2 for z/OS

3.  ביטול ArcMap runtime בהתקנה קיימת

בגרסת 10.9.1 בלבד ניתן לשנות את התקנת השרת ולהסיר את התמיכה ב-ArcMap runtime. פעולה זו מסירה גם את התקנת Python 2.x של השרת. הסרת ArcMap runtime עוזרת לדמות את מצב השרת בגרסאות ArcGIS 2022 והלאה, כך שאפשר להבין אילו שירותים יעבדו ואילו לא. זה שימושי בעיקר לשלב בדיקות, לאחר עדכון ופרסום מחדש של כל מה שצריך. זו פעולה הפיכה ואם יש עוד שינויים דרושים לאחריה, אפשר להוסיף מחדש את רכיב התמיכה ב-ArcMap runtime ולתקן מה שצריך.

4.  סיכום

  • גרסת Enterprise או שרת 10.9.1 היא האחרונה שתומכת בשירותים מבוססי ArcMap runtime. הגרסאות שיצאו החל מהשנה יתמכו רק בשירותים מבוססי Pro runtime.
  • יש להיערך מראש לשינוי הזה, לבדוק מה מצב השירותים בארגון שלכם, לעדכן מה שאפשר בכלים הייעודיים ולפרסם מחדש מה שצריך.
  • בגרסאות 10.9, 10.9.1 יש כלים שעוזרים בתהליך הזה, לכן אם זו אפשרות עבורכם, מומלץ בחום לעבור דרך אחת הגרסאות האלה.
  • אחרי עדכון השירותים הקיימים, יש לעבור לפרסם מ-ArcGIS Pro כדי להימנע מעבודה כפולה. באופן כללי, מומלץ לעבור לעבוד ב-Pro ככל הניתן.
  • כרגיל, אם אנחנו כאן כדי לסייע ולייעץ 🙂

מידע נוסף: