מחקר זה מתקף יצירה אוטומטית של ממשק משתמש באינטרנט המבוססת על פרוטוקול קישוריות מרחוק (RIP) עם שתי מערכות LabVIEW נפרדות — מודל מאוורר ומודל בקרת מיקום של מנוע זרם ישיר — ומספק הליך הניתן לשחזור לבנייה, רישום, פריסה ובדיקה של שני הדוגמאות.
מאמר שיטה
מחקר זה מתקף יצירה אוטומטית של ממשק משתמש באינטרנט המבוססת על פרוטוקול קישוריות מרחוק (RIP) עם שתי מערכות LabVIEW נפרדות — מודל מאוורר ומודל בקרת מיקום של מנוע זרם ישיר — ומספק הליך הניתן לשחזור לבנייה, רישום, פריסה ובדיקה של שני הדוגמאות.
פלטפורמות ניסיוניות מרוחקות מאפשרות גישה למודלי סימולציה מקומיים או להתקנים פיזיים דרך רשת, אך ממשקי קצה (front ends) קונבנציונליים של האינטרנט דורשים בדרך כלל דף נפרד, פריסת בקרים ולוגיקת תקשורת נתונים עבור כל ניסוי, דבר המגדיל את עלויות הפיתוח. עבודה זו מתקפת זרימת עבודה מבוססת ליצירה אוטומטית של ממשק משתמש (UI) באינטרנט מתוך מכשירים וירטואליים (VIs) של LabVIEW באמצעות פרוטוקול תפעוליות מרחוק (RIP), ומספקת פרוטוקול הניתן לשחזור ליישומו. זרימת העבודה בונה LabVIEW VIs המגדירים בקרי קלט ומחווני פלט בלוח הפנים (Front Panel), רושמת כל VI בתצורת שרת ה-RIP, קוראת את המטא-נתונים של המשתנים שהתקבלו, ומייצרת את בקרי האינטרנט ותצוגות הפלט התואמים. Caddy משמש כפרוקסי הפוך (reverse proxy) כדי לאחד את נתיב הקבצים הסטטיים של ממשק הקצה ואת נתיב הבקשות של ממשק התכנות (API) של ה-RIP. זרימת העבודה מוערכת באמצעות שתי מערכות נפרדות: מודל מהירות מאוורר ומודל בקרת מיקום של בקר פרופורציונלי-אינטגרלי-דיפרנציאלי (PID) למנוע זרם ישר (DC). בשני המקרים, דף האינטרנט מזהה את המשתנים החשופים, כותב קלט משתמש אל ה-back end של LabVIEW, קורא פלטי מודל ומייצר את הממשק מתוך המטא-נתונים של ה-RIP. תוצאות אלו מתקפות את אותו תהליך אוטומטי של יצירת ממשק משתמש בשתי מערכות דינמיות שונות ומתעדות את השלבים הנדרשים לשחזורו.
עם פיתוחם של ניסויים מרחוק, הוראה מקוונת וטכנולוגיות האינטרנט של הדברים (Internet-of-Things), אספקת גישה מבוססת רשת למודלי סימולציה מקומיים או למכשירי ניסוי הפכה לכיוון חשוב בפיתוח פלטפורמות ניסוייות1,2,3,4. עבודות אחרונות שילבו עוד יותר מעבדות המצוידות בטכנולוגיות אינטרנט של הדברים עם למידה מבוססת פרויקטים וגישה מקומית או מרחוק, ובכך הדגימו את הפיתוח המתמשך של פלטפורמות ניסוייות גמישות ומרושתות בחינוך הנדסי5. בניסויי מערכות בקרה, משתמשים נדרשים בדרך כלל להתאים פרמטרי קלט בדפדפן ולצפות במצבי פלט בזמן אמת6,7. שיטות קונבנציונליות דורשות בדרך כלל דף רשת נפרד, לוגיקת קישור בקרה וממשק תקשורת נתונים עבור כל אובייקט ניסויי8,9. כאשר המשתנים במודל ה-back-end משתנים, לעיתים קרובות יש לשנות את דף ה-front-end בהתאם, דבר היוצר עבודת פיתוח חזרתית ניכרת ומגביל את ההרחבה המהירה של הפלטפורמה הניסויית.
פרוטוקול קישוריות מרחוק (RIP) מספק שכבת תווכה בין מודלים ניסיוניים של צד-שרת לבין ממשקי משתמש של דפדפנים10,11. בגישה ליצירה אוטומטית של ממשק משתמש המבוססת על RIP, המתוארת בעבודות קודמות, שרת ה-RIP מספק מטא-דאטה עבור כל ניסוי, כולל שמות משתנים, מאפייני קלט/פלט, סוגי נתונים, ערכי מינימום, ערכי מקסימום, דיוק, תיאורים ושיטות קריאה/כתיבה זמינות11. לקוח Web יכול להשתמש במטא-דאטה זה כדי ליצור את אלמנט ה-HTML התואם, כגון תוויות, שדות קלט מספריים, מחוונים (sliders), בקרים בוליאניים ותצוגות פלט, במהלך טעינת הדף או רענונו11. הפרוטוקול הנוכחי אינו מממש מחדש או מגדיר מחדש את מפרט ה-RIP. תחת זאת, הוא משתמש בשירות ה-RIP הקיים בקוד פתוח ובלוגיקת יצירת ממשקי משתמש של המרה ממטא-דאטה ל-HTML המבוססת על RIP כבסיס לתקשור ולייצור הממשק, ומתמקד בבנייה הניתנת לשחזור, ברישום, בפריסת פרוקסי ובאימות של שתי דוגמאות LabVIEW VI.
בהשוואה לפיתוח קונבנציונלי של ממשק אינטרנט מותאם אישית, יצירת ממשק משתמש (UI) אוטומטית מבוססת RIP מפחיתה את הצורך בהטמעה של פריסות בקרה, לוגיקה של קישור משתנים ופונקציות תקשורת בסיסיות כאשר מספר ניסויי LabVIEW חושפים משתני קלט ופלט סקלאריים דומים8,9,10,11. לאחר ש-VI חדש נרשם ומשתניו זמינים לשרת ה-RIP, ניתן להשתמש שוב באותה לוגיקה של קריאת מטא-נתונים ויצירת בקרות כדי לבנות את ממשק האינטרנט הבסיסי10,11. תכונה זו מועילה לפריסה מהירה, להדגמות לימודיות ולפלטפורמות של מעבדות מרחוק הדורשות גישה עקבית למספר ניסויים דומים3,8,9. עם זאת, לממשק המיוצר באופן אוטומטי יש גם מגבלות. הוא אינו מסיק באופן מלא את הקשרים הפיזיים בין המשתנים, אינו קובע אוטומטית מיפויים של תרשימים ואינו מעצב אינטראקציות של בטיחות וויזואליזציה ספציפיות לתחום11. לכן, פיתוח ידני של ממשק אינטרנט נותר מועדף כאשר ניסוי דורש גרפיקה מותאמת אישית במיוחד, זרימות עבודה מורכבות של משתמשים, ויזואליזציה מתקדמת, מנעי בטיחות של חומרה או בוררות כתיבה עבור מספר משתמשים.
זרימת העבודה הכללית של הפרוטוקול מסוכמת ב-איור 1. בזרימה זו, LabVIEW VI מגדיר תחילה את בקרות הקלט ומחווני הפלט הנדרשים בלוח הבקרה (Front Panel). לאחר מכן, ה-VI נרשם ב-RIP Server Configuration על ידי ציון שם הניסוי ונתיב ה-VI. לאחר הרישום, שרת ה-RIP קורא את המטא-דאטה של הניסוי הנבחר ומספק גישת קריאה/כתיבה למשתנים הזמינים. דף האינטרנט ב-XHTML משתמש במטא-דאטה שהוחזר כדי להפיק באופן אוטומטי את בקרות הקלט ותצוגות הפלט התואמות, בעוד ש-Caddy מספק נתיב גישה מאוחד עבור דף האינטרנט הסטטי ונתיבי התקשורת של ה-RIP. מודלים של מאוורר ומנוע זרם ישר משמשים במחקר זה כשתי מימושים של אותה זרימת עבודה. עבור ניסויי LabVIEW אחרים המספקים משתנים סקלריים, מספריים ובוליאניים תואמים, מפתחים יכולים לעקוב אחר אותה זרימת עבודה של בנייה-רישום-פריסה-אימות כדי ליצור ממשק אינטרנט שנוצר באופן אוטומטי, תוך הוספת ויזואליזציה ספציפית לניסוי, לוגיקת בטיחות או טיפול בנתונים מורכבים בעת הצורך.
מאמר זה אינו מציע ארכיטקטורת RIP חדשה או מרחיב את מגוון סוגי הנתונים הנתמכים כבר על ידי RIP. במקום זאת, הוא משתמש ב-RIP כמנגנון התקשורת המקובל ומנגנון יצירת ממשק משתמש (UI) מבוסס-מטא-נתונים, ומתמקד בתיקוף של אותו תהליך עם שתי מערכות LabVIEW שונות, תוך תיעוד פרוטוקול יישום הניתן לשחזור. עבודות קודמות הציגו שיטה בסיסית ליצירה אוטומטית של ממשק משתמש רשת המבוססת על מטא-נתוני RIP, והשתמשו בניסוי במנוע סרוו מקוון כמקרה בוחן11. ארכיטקטורות של מעבדות מרחוק מבוססות-רשת המשלבות ממשקים אינטראקטיביים עם תוכנות הנדסיות ו-LabVIEW דווחו גם במחקרים קודמים9,12. עם זאת, במהלך שחזור מעשי, חלק מדגמי ה-LabVIEW במקרה הבוחן המקורי הושפעו מגרסאות תוכנה ומבעיות תאימות של מודולים, מה שהקשה על השימוש הישיר בהם בסביבה חדישה יותר. לפיכך, העבודה הנוכחית בונה מחדש שני VIs תואמים בצד השרת (back-end)—דגם של מאוורר ומודל בקרת מיקום פרופורציונלי-אינטגרלי-דיפרנציאלי (PID) עבור מנוע זרם ישר (DC)—ומחילה את אותו תהליך יצירת ממשק משתמש מונחה-מטא-נתונים על שניהם. התרומה היא התיקוף של זרימת העבודה (workflow) המבוססת על RIP על פני מערכות שונות ופרוטוקול מפורט לשחזור התהליך, ולא הרחבת הכלליות של RIP.
המשתמשים המיועדים של פרוטוקול זה הם חוקרים, מרצים ומפתחי מעבדות שכבר משתמשים ב-LabVIEW VIs וזקוקים לחשוף מודלי סימולציה או מערכות ניסיוניות ברמת סיכון נמוכה באמצעות דפדפן אינטרנט, מבלי להטמיע באופן עצמאי ממשק קדמי מותאם אישית ומלא עבור כל מודל. הפרוטוקול מתאים במיוחד לניסויים המשתמשים במשתנים מספריים ובוליאניים סטנדרטיים, כוונון פרמטרים וניטור מצב בזמן אמת10,11. הוא פחות מתאים כפתרון עצמאי לניסויים הדורשים מבני נתונים מורכבים, ויזואליזציה ייעודית, מנגנוני נעילה בטיחותיים קשיחים של חומרה או בוררות כתיבה עבור מספר משתמשים11. מטרת עבודה זו היא לתקף יצירה אוטומטית של ממשק משתמש (Web UI) מבוסס RIP באמצעות שתי מערכות LabVIEW שונות, ולספק פרוטוקול מלא וניתן לשחזור, החל מבניית ה-VI של ה-back-end ועד לאינטראקציה מבוססת דפדפן. הפרוטוקול כולל הגדרת משתני קלט ופלט, רישום ניסוי ב-RIP Server, יצירת ממשק משתמש המבוססת על מטא-דאטה, פריסת פרוקסי Caddy ואימות קריאה/כתיבה מרחוק. יישום אותו זרימת עבודה על מודלי המאוורר ומנוע ה-DC מדגים כי ניתן לשחזר את התהליך שנקבע מבלי לכתוב מחדש ידנית ממשק קדמי מלא עבור כל דוגמה9,10,11.
השלים את השלבים הבאים כדי לבנות, לרשום, לפרוס ולאמת שני ניסויי LabVIEW הנגישים דרך RIP, בהתאם לזרימת העבודה המסוכמת ב-איור 1. כל הכלים והפלטפורמות שנעשה בהם שימוש במחקר זה מפורטים ב-טבלת החומרים.
1. בנייה והפעלה של ניסוי מודל המאוורר
2. בנייה והפעלה של ניסוי בקרת מיקום PID למנוע DC
לאחר השלמת זרימת העבודה המתוארת לעיל, ניתן לגשת הן לניסוי המאוורר והן לניסוי בקרת המיקום PID של מנוע DC באמצעות ממשק המשתמש (Web front end) שנוצר באופן אוטומטי. תוצאה מוצלחת מקומית בשלוש תצפיות. ראשית, דף האינטרנט מייצר באופן אוטומטי בקרות קלט ושדות תצוגת פלט בהתאם למטא-דאטה של המשתנים שהוחזרו על ידי שרת ה-RIP. שנית, כאשר המשתמש משנה משתנה קלט בדף האינטרנט, הערך המעודכן נכתב ל-VI של ה-back-end ב-LabVIEW דרך ממשק ה-RIP. שלישית, משתני הפלט שחושבו על ידי ה-VI ב-back-end מוחזרים דרך ה-RIP ומתעדכנים בדף האינטרנט בזמן אמת. עבור ניסוי המאוורר, לאחר הזנת http://localhost:8090/fan בדפדפן, הדף מייצר באופן אוטומטי בקרות קלט ושדות פלט ממטא-דאטה של ה-RIP, כפי שמוצג ב-איור 7. צד הקלט כולל את Enable, PWM, Load, Tau, KMaxRPM, ו-Disturbance, בעוד שצד הפלט מציג את SpeedRPM, TimeS, SteadyRPM, SpeedNorm, CurrentA, ו-PowerW. במהלך פעולה תקינה, TimeS עולה ללא הרף, מה שמעיד על כך שקובץ ה-fengshan.vi ב-back-end פועל. כאשר PWM עולה, SpeedRPM ו-SteadyRPM עולים בהתאם. כאשר Load עולה, מהירות המאוורר יורדת מכיוון שה-load מפחית את מהירות הפעולה היציבה. כאשר Disturbance משתנה, ניתן להבחין בשינויים תואמים ב-SpeedRPM, CurrentA, ו- PowerW. תצפיות אלו מאשרות כי קלטי צד ה-Web מועברים בצורה נכונה ל-back end של LabVIEW וכי הפלטים שחושבו מוחזרים לצד הממשק (front end) דרך ה-RIP.
בניסוי לבקרת מיקום PID של מנוע DC, לאחר הזנת הכתובת http://localhost:8090/motor בדפדפן, הדף מייצר באופן אוטומטי את הבקרים ושדות הפלט המתאימים מתוך מטא-נתוני ה-RIP, כפי שמוצג ב-איור 12. משתני הקלט כוללים את Setpoint, Kc, Ti, Td, Disturbance ובקרת Reset, ומשתני הפלט כוללים את Position, Voltage, Time ו-Measured angular velocity. כאשר משנים את ה-Setpoint, ה-Position מגיב לערך היעד החדש. כאשר מתאימים את פרמטרי ה-PID Kc, Ti ו-Td, תגובת הפלט, מתח הבקרה והמהירות הזוויתית הנמדדת משתנים בהתאם, מה שמעיד על כך שערכי הפרמטרים שהוזנו בדף האינטרנט נכתבים כראוי למודל ה-LabVIEW ב-back-end ומשתתפים בחישוב הבקרה. כאשר בקרת ה-Reset מופעלת, משתני המודל חוזרים למצבם ההתחלתי בהתאם ללוגיקת האיפוס.
מצבי כשל ותקשורת בצד הדפדפן מוצגים ב-איור 13, איור 14, איור 15. איור 13 מציג מקרה של גישה כושלת מהדפדפן שבו Caddy אינו פועל. הדפדפן מנסה לגשת ל-http://localhost:8090/motor אך מציג הודעת ERR_CONNECTION_REFUSED, המעידה על כך ששירות הפרוקסי המקומי אינו זמין או שאינו מאזין בפורט הגישה הנבחר. איור 14 מציג כשל בתקשורת RIP POST לאחר טעינת הדף. במקרה זה, קונסולת הדפדפן מדווחת על שגיאת 502 Bad Gateway עבור בקשת ה-RIP POST, המעידה על כך שהצד הקדמי (front end) הגיע לכתובת הפרוקסי, אך הבקשה אינה יכולה להיות מועברת בהצלחה אל ה-RIP WebService בצד האחורי (back end), או שאינה מעובדת על ידיו. לעומת זאת, איור 15 מציג מצב תקשורת תקין בצד הדפדפן. כלי המפתחים של הדפדפן מראים טעינה מוצלחת של הדף, בקשות RIP POST ובקשת SSE פעילה עם expId=fan, המעידה על כך שהצד הקדמי של האינטרנט מתקשר עם ה-RIP WebService באמצעות פרוקסי Caddy ומקבל עדכונים בזמן אמת דרך ערוץ ה-SSE.
ביחד, התוצאות המוצלחות של המאוורר והמנוע ותוצאות האבחון בצד הדפדפן מדגימות כי ניתן לשחזר את אותו תהליך עבודה אוטומטי להפקת ממשק משתמש מבוסס מטא-נתונים עבור שני ניסויי LabVIEW שונים. תוצאות אלו מספקות גם קריטריונים ניתנים לצפייה להבחנה בין תקשורת מוצלחת לבין כשלים מייצגים בפריסה, בעוד שנהלי פתרון התקלות התואמים נידונים בסעיף הדיון.

איור 1: מבנה מערכת הניסוי הכוללת. המערכת מורכבת מה-VI של ה-back-end ב-LabVIEW, שרת RIP, פרוקסי Caddy וממשק משתמש (Web UI) שנוצר באופן אוטומטי. ה-LabVIEW VI מספק משתני מודל, שרת ה-RIP קורא את המטא-דאטה של ה-VI ואת ערכי המשתנים, Caddy מאחד את נתיב הגישה ופותר גישה חוצת מקורות (cross-origin access), וממשק המשתמש האינטרנטי מייצר בקרים באופן אוטומטי. השם והלוגו של Caddy מוצגים רק כדי לזהות את רכיב שרת האינטרנט/פרוקסי של Caddy המשמש בזרימת העבודה. אנא לחץ כאן כדי לצפות בגרסה מוגדלת של איור זה.

איור 2: הפנל הקדמי של ה-VI של המאוורר. הפנל הקדמי מכיל בקרות קלט עבור Enable, PWM, Load, Tau, KMaxRPM, ו-Disturbance ומחווני פלט עבור SpeedRPM, SteadyRPM, TimeS, SpeedNorm, CurrentA, ו-PowerW. צילום מסך זה נלקח מהפנל הקדמי של fengshan.vi ב-LabVIEW 2026 בסביבת הניסוי המקומית של המחברים. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחץ כאן כדי להציג גרסה מורחבת של איור זה.

איור 3: תרשים בלוקים של ה-VI של המאוורר. מודל המאוורר ממומש באמצעות לולאת While, אוגרי הזזה (Shift Registers), לוגיקת Enable, צומת נוסחאות (Formula Node) ומסכי תצוגה של פלט. צילום מסך זה נלקח מתרשים הבלוקים של fengshan.vi ב-LabVIEW 2026 בסביבת הניסויים המקומית של המחברים. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחצו כאן כדי לצפות בגרסה גדולה יותר של איור זה.

איור 4: דף ההגדרות של fan.vi. ניסוי המאוורר רשום ב-RIP Configuration עם שם הניסוי fan, נתיב ה-VI בפועל, מידע על מילות מפתח, תיאור ותדירות דגימה. צילום מסך זה נלקח מממשק ה-RIP Configuration המשמש עם LabVIEW 2026 ו-RIP WebService בסביבה הניסויית המקומית של המחברים. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחצו כאן כדי לצפות בגרסה גדולה יותר של איור זה.

איור 5: הגדרות Experiment ID ולוגיקת יצירת UI מבוססת מטא-דאטה בקבצי ה-XHTML של ה-front-end. צילומי המסך של קוד ה-XHTML נלקחו מהקבצים Fan_Automatic_UI.xhtml ו-Motor_Automatic_UI.xhtml שנפתחו ב-Visual Studio Code. דפי המאוורר והמנוע משתמשים באותה לוגיקת קריאת מטא-דאטה ויצירת בקרה; רק ה-experiment ID שונה כדי להתאים לשדה ה-Name התואם ב-RIP Configuration. צילומי המסך של קוד ה-XHTML נלקחו מהקבצים Fan_Automatic_UI.xhtml ו-Motor_Automatic_UI.xhtml שנפתחו ב-Visual Studio Code בסביבת הפיתוח המקומית של המחברים. קבצי הקוד הוכנו על ידי המחברים עבור פרוטוקול זה. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחצו כאן כדי להציג גרסה מורחבת של איור זה.

איור 6: הגדרות Caddyfile. ה-Caddyfile מגדיר את פורט הגישה של הפרוקסי המקומי, קובע את ספריית השורש של ה-front-end, מבצע כתיבה מחדש (rewrites) של נתיבי /fan ו-/motor לקובצי XHTML המתאימים, ומבצע פרוקסי הפוך לבקשות /RIP/SSE* ו-/RIP* אל פורט ה-WebService של LabVIEW/RIP. צילום המסך של הגדרות ה-Caddyfile נלקח מתוך קובץ ה-Caddyfile שנפתח ב-Visual Studio Code בסביבת הפיתוח המקומית של המחברים. ה-Caddyfile הוכן על ידי המחברים כדי להגדיר את Caddy כשרת אינטרנט מקומי וכפרוקסי הפוך. לא נכללו נתוני משתמשים של צד שלישי או מידע חסוי. אנא לחצו כאן כדי לצפות בגרסה מורחבת של איור זה.

איור 7: דף ממשק משתמש (Web UI) של fan.vi. צילום מסך זה של ממשק האינטרנט נלקח מדף האינטרנט של המאוורר שהופעל מקומית על ידי המחברים באמצעות Mozilla Firefox. דף הקדמה (front-end) מייצר באופן אוטומטי בקרי קלט ותצוגות פלט על בסיס מטא-נתוני המשתנים שמוחזרים משרת ה-RIP. צילום מסך זה של ממשק האינטרנט נלקח מדף האינטרנט של המאוורר שהופעל מקומית על ידי המחברים באמצעות Mozilla Firefox. הבקרים ושדות הפלט המוצגים נוצרו ממטא-נתוני RIP בסביבת הניסוי המקומית של המחברים. לא נכללו נתוני משתמשים מצד שלישי או מידע חסוי. אנא לחץ כאן כדי לצפות בגרסה מוגדלת של איור זה.

איור 8: פאנל הקדמי של ה-VI של המנוע. הפאנל הקדמי מכיל בקרות עבור Setpoint, Kc, Ti, Td, Disturbance, ובקרת Reset, ומחוונים עבור Position, Voltage, Time, ו-Measured angular velocity. צילום מסך זה נלקח מהפאנל הקדמי של Motor.vi ב-LabVIEW 2026 בסביבה הניסויית המקומית של המחברים. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחצו כאן כדי להציג גרסה גדולה יותר של איור זה.

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

איור 10: דיאגרמת בלוקים של ה-VI של המנוע. מודל המנוע ממומש באמצעות לולאת While, אוגרי הזזה (Shift Registers), צומת נוסחאות (Formula Node), לוגיקת תזמון ומחווני פלט. צילום מסך זה נלקח מדיאגרמת הבלוקים של Motor.vi בתוכנת LabVIEW 2026 בסביבת הניסוי המקומית של המחברים. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחצו כאן כדי לצפות בגרסה מורחבת של איור זה.

איור 11: דף הגדרה של Motor.vi. ניסוי המנוע רשום ב-RIP Configuration עם שם הניסוי Motor, נתיב ה-VI בפועל, מידע על מילות מפתח, תיאור ותדירות דגימה. צילום מסך זה נלקח מממשק RIP Configuration ששימש ב-LabVIEW 2026 וב-RIP WebService בסביבת הניסוי המקומית של המחברים. לא נכללו נתוני משתמש של צד שלישי או מידע סודי. אנא לחצו כאן כדי לצפות בגרסה מורחבת של איור זה.

איור 12: דף ממשק משתמש (Web UI) של Motor.vi. דף צד-הלקוח (front-end) מייצר באופן אוטומטי בקרי קלט ותצוגות פלט עבור ניסוי בקרת מיקום PID של מנוע DC. צילום מסך זה של ממשק האינטרנט נלקח מדף האינטרנט של המנוע שהוטמע באופן מקומי על ידי המחברים באמצעות Mozilla Firefox. הבקרים ושדות הפלט המוצגים נוצרו מתוך מטא-נתוני RIP בסביבת הניסוי המקומית של המחברים. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחץ כאן כדי לצפות בגרסה גדולה יותר של איור זה.

איור 13: גישה נכשלת מהדפדפן כאשר Caddy אינו פועל. כאשר Caddy אינו מופעל, לא ניתן לגשת לכתובת המקומית המתווכת http://localhost:8090/motor, והדפדפן מציג הודעת ERR_CONNECTION_REFUSED. סימפטום כשל זה מעיד על כך ששירות הפרוקסי המקומי של Caddy אינו זמין או שאינו מקשיב בפורט הגישה הנבחר. צילום מסך זה מהדפדפן נלקח באמצעות Mozilla Firefox בסביבת הבדיקה המקומית של המחברים, ומראה את מצב הגישה הכשילה כאשר הפרוקסי המקומי של Caddy לא היה פועל. לא נכללו נתוני משתמשים של צד שלישי או מידע חסוי. אנא לחץ כאן כדי לצפות בגרסה גדולה יותר של איור זה.

איור 14: כשל בתקשורת RIP POST לאחר טעינת הדף. קונסולת הדפדפן מציגה שגיאת 502 Bad Gateway עבור בקשת RIP POST. תוצאה זו מעידה על כך שדף האינטרנט הגיע לכתובת פרוקסי של Caddy, אך הבקשה אינה יכולה להיות מועברת בהצלחה אל ה-back end של ה-RIP WebService או להיות מעובדת על ידיו. צילום מסך זה של קונסולת הדפדפן נלקח באמצעות Mozilla Firefox Developer Tools בסביבת הפריסה המקומית של המחברים ומראה כשל בתקשורת RIP POST 502 Bad Gateway. לא נכללו נתוני משתמשים של צד שלישי או מידע חסוי. אנא לחצו כאן כדי לצפות בגרסה גדולה יותר של איור זה.

איור 15: סטטוס תקשורת בצד הדפדפן תחת תפעול רגיל. כלי המפתחים של הדפדפן מראים טעינה מוצלחת של הדף, בקשות RIP POST, ובקשת SSE פעילה עם expId=fan. בקשות אלו מעידות על כך שהממשק הקדמי של האינטרנט (Web front end) מתקשר עם ה-RIP WebService באמצעות פרוקסי Caddy ומקבל עדכונים בזמן אמת דרך ערוץ ה-SSE. צילום מסך זה של כלי המפתחים של הדפדפן נלכד באמצעות Mozilla Firefox בסביבת הפריסה המקומית של המחברים ומראה תקשורת RIP POST ו-SSE תקינה. לא נכללו נתוני משתמש של צד שלישי או מידע חסוי. אנא לחצו כאן כדי לצפות בגרסה גדולה יותר של איור זה.

איור 16: תצפית מייצגת בודדת של קונסולת הדפדפן ושל משאבי מערכת ברמת התהליך עבור ניסוי המאוורר. צילום המסך הוקלט במהלך בדיקה של ניסוי מאוורר מקומי. הקונסולה מציגה את זמן הבקשה/תגובה של המטא-נתונים, ספירת משתני מטא-נתונים, זמן יצירת ממשק משתמש (UI) מבוסס מטא-נתונים, זמן פתיחת חיבור SSE ונתוני SSE שהתקבלו. תצוגת מנהל המשימות מציגה ערכי CPU וזיכרון ברמת התהליך עבור תהליכי הדפדפן ו-LabVIEW בזמן הלכידה. ערכים אלו הם תצפיות תיאוריות מבדיקה בודדת זו ואינם מדידות ביצועים שחזרו על עצמן או מדד סטטיסטי. צילום מסך זה נלקח מכלי המפתחים של Mozilla Firefox וממנהל המשימות של Windows בסביבת הבדיקה המקומית של המחברים. Mozilla Firefox שימש להקלטת פלט קונסולת הדפדפן, ומנהל המשימות של Windows שימש לצפייה בניצול ה-CPU והזיכרון עבור תהליכי הדפדפן ו-LabVIEW. לא נכללו נתוני משתמשים של צד שלישי או מידע סודי. אנא לחצו כאן כדי להציג גרסה גדולה יותר של איור זה.

איור 17: גישה סימולטנית לאותו דף אינטרנט מבוסס RIP מדפדפן שולחני ומדפדפן נייד. דף ניסוי המאוורר פתוח בו-זמנית במחשב ובמכשירים ניידים, ושני הלקוחות מציגים את הבקרים והמשתנים של הפלט שהיווצרו באופן אוטומטי. הגישה לדף האינטרנט השולחני התבצעה באמצעות Mozilla Firefox, והגישה לדף האינטרנט בנייד התבצעה באמצעות דפדפן נייד באותה סביבת רשת מקומית. צילומי המסך נלקחו מסביבת הבדיקה המקומית של המחברים. לא נכללו נתוני משתמשים של צד שלישי או מידע חסוי. אנא לחצו כאן כדי לצפות בגרסה גדולה יותר של איור זה.
| שם המשתנה | סוג נתונים | קלט/פלט | משמעות פיזיקלית | תפקיד במודל | טווח/הגדרה | ||
| Enable | Boolean | קלט | מתג הפעלת מאוורר | שולט בשאלה האם המודל מקבל את קלט ה-PWM. כאשר הערך הוא True, u = PWM; כאשר הערך הוא False, u = 0. | True / False | ||
| PWM | DBL | קלט | קלט התראה | קובע את עוצמת ההנעה הבסיסית של המאוורר ומהווה את הקלט המרכזי המשמש לחישוב מהירות המצב היציב SteadyRPM. | 0-1, צעד 0.01 | ||
| Load | DBL | קלט | מקדם עומס | מתאר את השפעת ההחלשה של העומס על מהירות המצב היציב. ככל שה-Load עולה, מהירות המצב היציב יורדת. | 0-1, צעד 0.01 | ||
| Tau | DBL | קלט | קבוע זמן תגובה | קובע את המהירות שבה מהירות המאוורר שואפת למהירות המצב היציב מהמצב הקודם. | 0.1-5, צעד 0.1 | ||
| KMaxRPM | DBL | קלט | מהירות מקסימלית | קובע את המהירות המקסימלית המותרת במודל ומשמש להגבלת מהירות ולנרמול. | 500-6000, צעד 100 | ||
| Disturbance | DBL | קלט | קלט הפרעה | מייצג את השפעת הפרעה חיצונית או תנודה בעומס על מהירות המצב היציב, הזרם וההספק. | 0-1, צעד 0.1 | ||
| SpeedRPM | DBL | פלט | מהירות בפועל | מייצג את מהירות הפלט הנוכחית של המאוורר ומתעדכן באמצעות דינמיקה אינרציאלית מסדר ראשון. | מחושב על ידי המודל | ||
| SteadyRPM | DBL | פלט | מהירות מצב יציב | מייצג את מהירות המצב היציב התאורטית תחת תנאי הקלט הנוכחיים. | מחושב על ידי המודל | ||
| TimeS | DBL | פלט | זמן ריצה | מייצג את זמן הריצה הרציף של המודל. | מחושב על ידי המודל | ||
| SpeedNorm | DBL | פלט | מהירות מנורמלת | מייצג את היחס בין SpeedRPM ל-KMaxRPM. | 0-1 או מחושב על ידי המודל | ||
| CurrentA | DBL | פלט | זרם | מייצג את זרם המודל המוערך, המשתנה בהתאם לקלט ההנעה ולקלט ההפרעה. | מחושב על ידי המודל | ||
| PowerW | DBL | פלט | הספק | מייצג את הספק המודל המוערך, המחושב מקבוע המתח והזרם. | מחושב על ידי המודל | ||
| Setpoint | DBL | קלט | מיקום רצוי | קובע את המיקום שהמנוע אמור להגיע אליו ויוצר את השגיאה e יחד עם המיקום בפועל Position. | -3-3, צעד 0.1 | ||
| Kc | DBL | קלט | הגבר פרופורציונלי | מתאים את עוצמת התגובה של בקר ה-PID לשגיאה. | 0-10, צעד 0.1 | ||
| Ti | DBL | קלט | זמן אינטגרלי | מתאים את הפעולה האינטגרלית של בקר ה-PID ומשמש להפחתת שגיאת מצב יציב. | 0-10, צעד 0.1 | ||
| Td | DBL | קלט | זמן דיפרנציאלי | מתאים את הפעולה הדיפרנציאלית של בקר ה-PID ומשמש לדיכוי שינויי שגיאה מהירים מדי ולשיפור התגובה הדינמית. | 0-5, צעד 0.1 | ||
| Disturbance | DBL | קלט | קלט הפרעה | מייצג הפרעה חיצונית המתווספת לקלט המנוע, ופועלת על מודל המנוע יחד עם מתח הבקרה. | 0-10, צעד 0.1 | ||
| Reset control | Boolean | קלט | איפוס בקרה | מפעיל ניקוי של מצב המודל כך שהמיקום, המהירות הזוויתית, הזרם, השגיאה והאיבר האינטגרלי יחזרו למצבים הראשוניים שלהם. | True / False | ||
| Position | DBL | פלט | מיקום בפועל | מייצג את המיקום הזוויתי הנוכחי של המנוע ומשמש כמשתנה המשוב עבור בקרת ה-PID. | מחושב על ידי המודל | ||
| Voltage | DBL | פלט | מתח בקרה | מייצג את פלט בקר ה-PID לאחר הגבלת מתח ופועל על קלט המנוע. | מחושב על ידי המודל; מוגבל ל-24V- עד 24V | ||
| Time | DBL | פלט | זמן ריצה | מייצג את זמן הריצה הרציף של מודל המנוע. | מחושב על ידי המודל | ||
| Measured angular velocity | DBL | פלט | מהירות זוויתית נמדדת | מייצגת את המהירות הזוויתית הנוכחית של המנוע ומהווה את פלט המצב המכני של המנוע. | מחושב על ידי המודל | ||
טבלה 1: משתני קלט ופלט המשמשים בדוגמאות של המאוורר ומנוע ה-DC. הטבלה מפרטת את שם כל משתנה, סוג הנתונים, תפקיד הקלט/פלט, המשמעות הפיזיקלית, הטווח המומלץ וגודל הצעד.
| פרמטר | ערך | משמעות פיזיקלית | תפקיד במודל | ||
| R | 1 | התנגדות עוגן | מייצג את גורם ההתנגדות במעגל העשוי של המנוע וקובע את מפל המתח R × im במשוואת הזרם. | ||
| L | 0.5 | השראת עגירה | מייצג את השראות מעגל העוגן וקובע את קצב שינוי הזרם. L גדול יותר יוביל לתגובת זרם איטית יותר. | ||
| ג' | 0.01 | מומנט התמדה | מייצג את התנגדות רוטור המנוע לשינויים בתאוצה הזוויתית וקובע את המהירות שבה משתנה המהירות הזוויתית. | ||
| ב | 0.1 | מקדם שיכוך צמיגי | מייצג שיכוך מכני ומתאר את מומנט השיכוך המעכב את העלייה במהירות הזוויתית במהלך סיבוב. | ||
| קנאזה (Kt) | 0.01 | קבוע מומנט | מייצג את מקדם הפרופורציה הממיר את זרם העוגן למומנט אלקטרומגנטי. | ||
| נראה שהטקסט שהזנת ("Ke") קצר מדי מכדי לתרגם אותו באופן משמעותי. אנא ספק את הטקסט המלא שברצונך לתרגם. | 0.01 | קבוע הכוח האלקטרו-מניע הנגדי | מייצג את המקדם הפרופורציונלי שבאמצעותו מהירות זוויתית מייצרת כוח אלקטרומניבי נגדי, ומתאר את אפקט המשוב של המהירות על הזרם. | ||
| Vmax | 24 | מתח בקרה מרבי | מייצג את גבול מתח המוצא של הבקר ושומר על המתח בטווח שבין 24-V ל-24 V. | ||
| dt | 0.001 | שלב סימולציה בדידי | מייצג את מרווח הזמן עבור כל עדכון מצב מבוסס לולאה, ומשמש לעדכון הזרם, המהירות הזוויתית, המיקום וזמן ההרצה. | ||
טבלה 2: פרמטרים פנימיים המשמשים במודל בקרת מיקום PID של מנוע DC. הטבלה מפרטת את הפרמטרים החשמליים והמכניים, הסימנים, הערכים המספריים, היחידות והתפקידים במודל.
קבצי קוד נלווים: קבצי מקור והגדרות מלאים לשחזור הדוגמאות של המאוורר ומנוע ה-DC. קבצי הקוד הנלווים כוללים את קוד ה-LabVIEW Formula Node, הגדרות reverse-proxy של Caddy, קבצי front-end ב-XHTML וקבצי מקור של LabVIEW VI ששימשו בפרוטוקול זה. הקובץ Code in LabVIEW Formula Node.docx מכיל את קוד ה-Formula Node עבור מודלים של בקרת מיקום PID למאוורר ולמנוע DC. הקובץ Caddyfile.txt מכיל את הגדרות שרת האינטרנט המקומי וה-reverse-proxy. הקבצים Fan_Automatic_UI.xhtml ו-Motor_Automatic_UI.xhtml מכילים את לוגיקת ה-Web front-end המבוססת על מטא-נתונים. הקבצים fengshan.vi ו-Motor.vi הם קבצי ה-VI של ה-LabVIEW back-end עבור ניסויי המאוורר והמנוע.אנא לחצו כאן כדי להוריד קובץ זה.
שלב קריטי בפרוטוקול זה הוא הבנייה והרישום הסטנדרטיים של ה-VI של ה-back-end ב-LabVIEW. הבקרים והמחוונים ב-Front Panel חייבים להשתמש בשמות משתנים ברורים וייחודיים, וסוגי הנתונים שלהם חייבים להתאים למשתנים המצופים על ידי חישוב המודל ועל ידי תהליך הקריאה/כתיבה של ה-RIP. בשתי הדוגמאות המשמשות בפרוטוקול זה, משתנים מספריים סקלאריים מוגדרים כבקרים או מחוונים מסוג DBL, ומשתנים בוליאניים מוגדרים כבקרים בוליאניים. על ה-Block Diagram לשמור גם הוא על עדכון מצב רציף באמצעות While Loop, Shift Registers ו-Formula Node, כך שניתן יהיה לעדכן משתנים כגון מהירות מאוורר, מיקום מנוע, מהירות זוויתית של מנוע, מתח וזמן במהלך ההרצה. לאחר בניית ה-VI, שם הניסוי (experiment Name) ב-RIP Configuration חייב להתאים בדיוק ל-experiment ID המשמש בקובץ ה-XHTML התואם, ונתיב ה-VI (VI Path) חייב להפנות ל-VI השמור בפועל. הגדרות אלו חשובות כיוון שממשק המשתמש האינטרנטי (Web front end) אינו מקודד באופן קשיח (hardcode) את המשתנים של כל ניסוי. תחת זאת, הוא מסתמך על המטא-נתונים המוחזרים מה-RIP Server כדי לזהות משתנים לכתיבה, משתנים לקריאה, סוגי נתונים ותכונות מספריות10,11.
בעיות פתרון התקלות העיקריות קשורות לעקביות בין מזהה הניסוי (experiment ID) בקובץ ה-XHTML, הגדרות ה-RIP Configuration, ה-RIP WebService והגדרות ה-Caddy proxy. אם מזהה הניסוי בקובץ ה-XHTML אינו תואם לשם הניסוי (experiment Name) ב-RIP Configuration, דף האינטרנט לא יוכל לבקש את המטא-דאטה הנכון ולכן לא יוכל להפיק את הבקרים ושדות הפלט הצפויים. אם נתיב ה-VI (VI Path) שגוי או ששירות ה-RIP WebService לא הופעל, דף האינטרנט עשוי להיפתח אך לא יוכל לתקשר עם ה-back end של LabVIEW. אם Caddy אינו פועל, הדפדפן לא יוכל לגשת לכתובת ה-proxy המקומית שנבחרה ועשוי להציג הודעת ERR_CONNECTION_REFUSED, כפי שמוצג ב-איור 13. אם Caddy פועל אך יעד ה-reverse-proxy אינו תואם לפורט של ה-RIP WebService, הדף עשוי להיטען בעוד שבקשות RIP POST ייכשלו עם שגיאת 502 Bad Gateway, כפי שמוצג ב-איור 14. אם נתיב ה- /RIP/SSE* אינו פועל כהלכה, הדף עשוי להיפתח ולהציג בקרים, אך ערכי הפלט לא יעודכנו בזמן אמת. בתפעול רגיל, כלי המפתח של הדפדפן צריכים להראות טעינת דף מוצלחת, בקשות RIP POST ובקשת SSE פעילה עם מזהה הניסוי הנכון, כפי שמוצג ב-איור 15. לפיכך, יש להתחיל את פתרון התקלות בבדיקת מזהה הניסוי, נתיב ה-VI, סטטוס ה-RIP WebService, מצב הפעלה של Caddy, פורטים של ה-proxy ונתיב ה-SSE. אם התקשורת עדיין פועלת בצורה חריגה, הפעלה מחדש של ה-RIP WebService ושל Caddy, ניקוי מטמון (cache) הדפדפן או חזרה על הבדיקה בדפדפן אחר עשויים לסייע בהבחנה בין התנהגות ספציפית לדפדפן לבין בעיות קונפיגורציה של RIP/Caddy.
הפרוטוקול הנוכחי ניתן לשחזור בשתי הדוגמאות כיוון שאותו תהליך עבודה של בנייה-רישום-פריסה-אימות (build-register-deploy-verify) מיושם הן על מודל מהירות מאוורר והן על מודל בקרת מיקום PID של מנוע DC. כדי להפחית את התלות בארגזי כלים (toolboxes) ייעודיים, ה-VIs של ה-back-end נבנו מחדש באמצעות מבני LabVIEW בסיסיים, הכוללים בקרים ומחוונים של ה-Front Panel, לולאות While, אוגרי העברה (Shift Registers), צמתי נוסחאות (Formula Nodes), ומשתנים בוליאניים ומספריים סקאלריים סטנדרטיים. עם זאת, השחזור בין גרסאות שונות של LabVIEW, התקנות Windows וסביבות רשת מקומיות עדיין תלוי בפרטי הגדרה כגון נתיבי קבצים, הרשאות גישה, פורטים מקומיים, פקודות הפעלת שירותים והתנהגות הדפדפן. ניתן להרחיב את תהליך העבודה גם לניסויים מרחוק הקשורים לחומרה, אך אין לפרש את השיטה כזיהוי חומרה ישיר מצד ה-Web. ממשק ה-Web (ה-front end) מזהה בקרים ומחוונים של LabVIEW Front Panel באמצעות מטא-נתוני RIP. לכן, חיישנים, אקטואטורים, מכשירים או התקני בקרת תהליכים חייבים להיות מחוברים ומעובדים תחילה ב-VI של ה-back-end ב-LabVIEW באמצעות דרייברים מתאימים לחומרה, מודולים לרכישת נתונים, מודולים לבקרת מכשירים או מנגנוני התאמת חומרה אחרים. לאחר שמידות החומרה ופקודות הבקרה ממופות למחוונים ובקרים ב-Front Panel, ממשק ה-Web מבוסס ה-RIP יכול לזהות משתנים אלו באותו אופן שבו הוא מזהה את משתני הסימולציה המשמשים בפרוטוקול זה. מחקרים קודמים על מעבדות מרחוק מבוססות LabVIEW הראו כי ניתן להשתמש ב-LabVIEW כסביבת back-end עבור ניסויי הנדסת בקרה מרחוק, ניסויי רובוטיקה, מתקני בקרת תהליכים, רכישת נתוני חיישנים ואינטראקציה עם התקנים פיזיים9,12,17,18,19,20.
איור 16 מציג דוגמה מייצגת אחת למימוש שהוקלטה במהלך ניסוי מאוורר מקומי. קוד ה-front-end הותאם להקליט את זמן הבקשה/תגובה של המטא-דאטה, את מספר משתני המטא-דאטה, את זמן יצירת ממשק המשתמש (UI) המבוסס על מטא-דאטה, את זמן פתיחת חיבור ה-SSE ואת נתוני ה-SSE שהתקבלו. בדוגמה זו, קונסולת הדפדפן דיווחה על זמן בקשה/תגובה של המטא-דאטה של 68.00 ms, זיהתה 7 משתנים הניתנים לכתיבה ו-7 משתנים הניתנים לקריאה ממטא-דאטת ה-RIP, יצרה את אלמנטי ה-UI התואמים ב-2.00 ms, ופתחה את חיבור ה-SSE ב-16.00 ms. רשומות נתוני ה-SSE החוזרות הראו כי משתני פלט כגון SpeedRPM, TimeS, SteadyRPM, SpeedNorm, CurrentA, ו-PowerW התקבלו באופן רציף מה-back end של LabVIEW. תצוגת מנהל המשימות באותו מצב בדיקה מקומי הראתה ניצול מעבד (CPU) של כ-1.5% ו-391.7 MB של זיכרון עבור תהליך Firefox, בעוד שתהליך LabVIEW הראה ניצול מעבד של 0% ו-9.2 MB של זיכרון בזמן הלכידה. תצפיות אלו מספקות ראיה בסיסית לכך שניתן היה לצפות באחזור מטא-דאטה, ביצירת UI מבוססת מטא-דאטה, בתקשורת RIP/SSE ובעומס מעבד ברמת התהליך בסביבת הפריסה המקומית. עם זאת, נתונים אלו נועדו לאימות ברמת המימוש ולא כבנצ'מרק ביצועים מקיף. הערכה שיסטית של הביצועים תחת דפדפנים שונים, ניסויים חוזרים, עומסי משתנים כבדים יותר, חומרה פיזית ומספר משתמשים סימולטניים נותרת הכרחית כעבודה עתידית.
לשיטה זו ישנן גם מגבלות, במיוחד כאשר היא מורחבת למבני נתונים מורכבים, ניסויים בחומרה ותפעול של מספר משתמשים. זרימת העבודה הנוכחית מתאימה ביותר למשתני קלט ופלט מספריים סקלאריים ובוליאניים. היא אינה מספקת באופן אוטומטי תמיכה מלאה במערכים מורכבים, אשכולות (clusters), מבני נתונים מקננים, קשרי תרשימים או ויזואליזציות ספציפיות לתחום. מקרים אלו עשויים לדרוש כללי מיפוי מטא-נתונים נוספים או רכיבי קצה (front-end) שנכתבו ידנית. ממשק המשתמש הנוצר אוטומטית יכול ליצור בקרים ותצוגות בסיסיים ממטא-נתוני המשתנים, אך הוא אינו יכול להסיק באופן מלא את הקשר הפיזי בין המשתנים, לבחור את הויזואליזציה המתאימה ביותר, או לתכנן אינטראקציות בטיחותיות ספציפיות לניסוי. כאשר זרימת העבודה מורחבת לציוד אמיתי, נדרשים שיקולים נוספים, כולל דרייברים לחומרה, כיול מכשירים, מגבלות דגימה, מגבלות אקטואטורים, לוגיקת עצירה חירוםית, אימות משתמשים ומנגנוני בקרת כתיבה למספר משתמשים. ניתן לגשת לפריסה הנוכחית גם באמצעות מספר מכשירים לקוח דרך דפדפני אינטרנט סטנדרטיים באותה סביבת רשת מקומית. כפי שמוצג ב-איור 17, אותו דף ניסוי של מאוורר נפתח בו-זמנית בדפדפן שולחני ובדפדפן נייד, ושני הלקוחות הציגו את הבקרים שנוצרו אוטומטית ואת משתני הפלט התואמים. תצפית זו מעידה על גישה בסיסית בו-זמנית של מספר לקוחות לצפייה ואינטראקציה עם אותו דף ניסוי. עם זאת, אין לפרש זאת כמסגרת מלאה לבקרת מספר משתמשים, מכיוון שהמימוש הנוכחי אינו כולל אימות משתמשים ייעודי, נעילת בקרה, בוררות כתיבה בו-זמנית, תורי כתיבה או מנגנוני פתרון קונפליקטים. מגבלות אלו עולות בקנה אחד עם מחקרים קודמים על מעבדות מרחוק, שבהם מעבדות מרחוק מורכבות או שיתופיות דורשות בדרך כלל עיצוב ממשק ספציפי לניסוי, מנגנוני סנכרון, מגבלות בטיחות ולוגיקת ניהול משתמשים13,14,15,16,17.
הערך המתודולוגי של פרוטוקול זה אינו בכך שהוא מציג ארכיטקטורת RIP חדשה או מרחיב את סוגי הנתונים הנתמכים על ידי RIP. במקום זאת, ערכו טמון באספקת נתיב יישום מלא וניתן לשחזור להחלת מנגנון אוטומטי להפקת ממשק משתמש (UI) מבוסס RIP על מערכות LabVIEW שונות. בהשוואה לכתיבת ממשק Web מותאם אישית עבור כל ניסוי, תהליך עבודה זה מפחית את הצורך ביישום חוזר של פריסת בקרות בסיסית, קישור משתנים ולוגיקת תקשורת קריאה/כתיבה כאשר ה-VI של ה-back-end חושף משתנים תואמים8,9,10,11. לפיכך, הפרוטוקול שימושי להוראת הנדסה, פיתוח מעבדות מרחוק ופריסה מהירה של ניסויי הוראה או סימולציות בסיכון נמוך הדורשים כיוונון פרמטרים מבוסס דפדפן וניטור מצב בזמן אמת. עבודה עתידית צריכה להרחיב את תהליך העבודה למבני נתונים מורכבים יותר, התקני ניסוי פיזיים, בקרת גישה רשמית למספר משתמשים והערכה כמותית של הביצועים, כולל זמן הפקת הממשק, השהיית תקשורת (latency), יציבות סנכרון, עומס שרת, תקורת CPU וידידותיות המשתמש של ה-front-end.
המחברים השתמשו בכלים מבוססי בינה מלאכותית (AI) אך ורק לצורך ליטוש השפה. כל התכנים המדעיים, הפרוטוקולים הניסויים, יישום התוכנה, האיורים, התוצאות, הפרשנויות והניסוח הסופי נבדקו, תוקנו ואושרו על ידי המחברים. לא נעשה שימוש בכלי AI להפקת נתונים ניסויים.
עבודה זו נתמכה על ידי תוכניות ההכשרה לתשיתי חדשנות לבשלבים ראשוניים של התואר באוניברסיטת ווהאן.
| שם | חברה | מספר קטלוג | הערות |
|---|---|---|---|
| שרת פרוקסי Caddy | Caddy | N/A | פרוקסי הפוך המשמש להגשת ממשק המשתמש של האינטרנט ולהעברת בקשות /RIP לשירות האינטרנט (WebService) של RIP |
| Caddyfile | הוכן על ידי המחברים | N/A | מגדיר נתיבי קבצים סטטיים ונתיבי פרוקסי הפוך לתקשורת RIP |
| Fan_Automatic_UI.xhtml | הוכן על ידי המחברים | N/A | ממשק משתמש של רשת מבוסס מטא-נתונים עבור ניסוי המאוורר |
| LabVIEW | National Instruments | 2026 | תוכנה המשמשת לבנייה ולהרצה של fengshan.vi ו-Motor.vi |
| מערכת ההפעלה Microsoft Windows | Microsoft | Win11 | מערכת ההפעלה המשמשת להרצת LabVIEW, שירות האינטרנט (WebService) של RIP, Caddy והדפדפן. |
| Motor_Automatic_UI.xhtml | הוכן על ידי המחברים | N/A | ממשק משתמש של רשת מבוסס מטא-נתונים עבור ניסוי המנוע |
| דפדפן שולחן Mozilla Firefox | Mozilla | 2026 | דפדפן שולחן המשמש לגישה לממשק המשתמש של האינטרנט, כלי מפתחים, תצפיות על תזמון/משאבים וצילומי מסך של רשת/קונסולה. |
| שירות האינטרנט (WebService) של RIP | UNEDLabs | https://github.com/Nebulous-Systems/rip-server_labview | מקבל בקשות RIP POST ומספק את שכבת התקשורת של שירות האינטרנט המשמשת את ממשק הקדמה של הדפדפן. |
| מנהל המשימות של Windows | Microsoft | מובנה ב-Windows | משמש להקלטת תצפיות על CPU וזיכרון ברמת תהליך עבור תהליכי הדפדפן ו-LabVIEW. |
בקש הרשאה לשימוש חוזר בטקסט או באיורים של מאמר JoVE זה
בקש הרשאה