קהילת היד של Wuji
שאלות נפוצות ופתרון בעיות עבור ה-SDK המיומן של Wuji, צינור JSONL ושילוב פלטפורמה.
FAQ
איזו חבילת Python אני צריך כדי לקרוא נתונים מהיד של Wuji?
לְהַתְקִין wujihandpy, החבילה הרשמית של Wuji SDK Python:
pip install wujihandpy numpy
ה wuji_hand_sdk_stream.py סקריפט bridge מייבא אותו באמצעות import wujihandpy ושיחות hand.read_joint_actual_position(timeout=0.4) כדי לקבל את מערך המיקום המשותף 5×4. אמת את ההתקנה: python3 -c "import wujihandpy; print(wujihandpy.__version__)".
מה מייצג מערך המיקום המשותף 5×4?
ליד Wuji יש 5 אצבעות (אגודל, מדד, אמצעי, טבעת, קטנה), כל אחת עם 4 מפרקים. ה read_joint_actual_position() call מחזירה רשימה שטוחה של 20 מצופים המייצגים זוויות מפרקים ברדיאנים. סקריפט הגשר מעצב את זה מחדש למערך של 5×4, מחשב את הממוצע על פני 4 המפרקים של כל אצבע, ומנרמל מטווח [0, π/2] ל-[0, 1] כדי להפיק את כל אצבע. bends ערך בשימוש בטלאופ והקלטה.
מפת הלחץ היא תמיד אפסים. זה נורמלי?
זה יכול להיות. אם רק חומרת מיקום המפרק מחוברת ללא מודול חיישן מישוש, ה pressure_map_24x32 השדה הוא מציין מיקום מלא באפס. לְהִשְׁתַמֵשׁ mock_wuji_stream.py כדי לוודא שצינור עיבוד מפת החום פועל כהלכה. לשימוש בייצור, ודא שגרסת הקושחה של Wuji שלך כוללת תמיכה בחיישני מישוש ושהמודול המישוש מופעל ומחובר.
איך אני רץ בלי חומרה פיזית?
השתמש בכלול mock_wuji_stream.py סקריפט ליצירת מסגרות JSONL סינתטיות עם כפיפות אצבע מונפשות, מפת מישוש של כתמי לחץ גאוס, נתוני IMU 6 צירים וקריאות EMF בהרץ שניתן להגדרה:
python3 mock_wuji_stream.py --hz 30 --hand-side right --seed 42
כדי להשתמש בזרם המדומה עם הסוכן, עוקף את פקודת ברירת המחדל של הזרם עם --wuji-cmd:
python3 wuji_glove_agent.py \ --session YOUR_SESSION_ID \ --node-id wuji-mock \ --wuji-cmd "python3 mock_wuji_stream.py --hz 30 --hand-side right"
כל תכונות הפלטפורמה פועלות באופן זהה במצב מדומה.
מה ההבדל בין wuji_glove_agent.py ל-wuji_hand_sdk_stream.py?
wuji_hand_sdk_stream.py הוא מקור נתונים: הוא מייבא wujihandpy, קורא מיקומי משותף גולמיים מהחומרה ופולט מסגרות JSONL ל-stdout ב-Hz שניתן להגדרה. wuji_glove_agent.py הוא גשר הפלטפורמה: הוא משיק את סקריפט הזרם כתהליך משנה, מנתח את פלט ה-JSONL ומעביר את נתוני החיישנים המפוענחים לפלטפורמת Fearless באמצעות WebSocket. הסוכן מטפל גם ברישום הפעלה, חציצה של טלמטריה, חיבור מחדש ופינגי חביון.
איך אני בוחר ביד שמאל מול ימין?
לַעֲבוֹר --glove left, --glove right, או --glove auto (ברירת מחדל) ל wuji_glove_agent.py. במצב אוטומטי הסוכן קורא את hand_side שדה מהמסגרת הראשונה של JSONL. סקריפט הזרם מקבל --hand-side left אוֹ --hand-side right, ברירת מחדל לימין. להקלטה דו-צדדית, הפעל שני תהליכים של סוכן בנפרד --node-id ערכים ושונים --glove הגדרות, מחובר לאותו מזהה הפעלה.
הסוכן לא מצליח להתחבר לפלטפורמת WebSocket. מה עלי לבדוק?
ודא שה-Farless Backend פועל: curl http://localhost:8000/health. אם אתה משתמש בקצה אחורי מרוחק, העבר את כתובת האתר הנכונה: --backend ws://HOST:PORT. הסוכן משתמש ב-backoff אקספוננציאלי (1 שניות דקות, 10 שניות מקסימום) לחיבור מחדש - צפה בפלט המסוף עבור ניסיונות חיבור מחדש והודעת השגיאה הספציפית.
עובד הכי טוב עם OpenArm 101
ה-Wuji Hand היא כפפת המפעיל המומלצת עבורה OpenArm 101 הפעלות טלאופציה. הרכיבו את ה-OpenArm על משטח יציב, חברו את סוכן ה-Wuji לאותה הפעלה כמו סוכן הזרוע, וקיבלתם מתקן לאיסוף נתונים של טל-operation וחיקוי. ראה את שלב התקנת OpenArm Teleoperation להוראות שילוב.