קניית מכשיר תפיסה אגוצנטרי עבור אינטליגנציה מגולמת: מדריך הקנייה של CameVision EGO
רובוטים לומדים מניפולציה מאנשים. הדרך הנקייה ביותר להקליט כיצד אדם מתמודד עם משימה היא מעיניו ומידיו של האדם עצמו, עם כל פריים ודוגמת תנועה על שעון אחד. זו העבודה של מכשיר תפיסה אגוצנטרי, והנתונים טובים רק כמו החומרה שמקליטה אותם.
מדריך זה מפרט מה על קונה לבדוק, בסדר החשוב, ומראה היכן CameVision EGO עונה על כל נקודה. Camemake מעצבת ובונה מודולי מצלמה בקווי הייצור שלנו, עם הרכבה בחדר נקי, יישור אופטי, QA ומעקב סדרתי בהתאם לסטנדרטים ISO9001. EGO הוא קוד פתוח לחלוטין, כך שכל תשובה למטה מקשרת לקוד או למסמך שבו היא נמצאת.
שני מכשירים מכוסים:
- CameVision EGO (CV-EGO01-OS): שתי מצלמות עם תריס גלובלי, שני IMUs, NPU על הלוח. ריפו: github.com/Camemake/CameVision-Ego. מסמכים: camemake.github.io/CameVision-Ego.
- CameVision Ego Single Sensor (CV-EGO01-SS): מצלמת תריס גלובלי אחת, IMU אחד, אותו חישוב. ריפו: github.com/Camemake/CameVision-Ego-Single-Sensor. מסמכים: camemake.github.io/CameVision-Ego-Single-Sensor.
1. תריס גלובלי על כל מצלמת גיאומטריה
הידיים זזות מהר. תריס מתגלגל קורא את הפריים שורה אחרי שורה, כך שאצבע נעה או ראש מסתובב חותכים בתמונה, והתאמת סטריאו והערכת תנוחה יורשות את השגיאה. כל מצלמה שמשתמשים בה לגיאומטריה חייבת להיות תריס גלובלי אמיתי, עם חשיפה אחת לכל הפריים.
שני מכשירי EGO משתמשים רק בחיישני תריס גלובלי. החיישן נבחר בזמן ההזמנה מתוך תפריט אחד המשותף לשני הלוחות:
| חיישן | רזולוציה | הערות |
|---|---|---|
| SC233HGS | 1920 × 1200 | צבע, גלובלי |
| OG02C10 | 1600 × 1200 | צבע, גלובלי |
| MIRA220 | 1600 × 1400 | BSI, גלובלי |
| AR0235 | 1920 × 1200 | צבע או מונו, גלובלי, 120 fps |
| OX05B1S | 2592 × 1944 | 5 MP, גלובלי |
| Kaimou GS2.3 | 1920 × 1200 | מונו או RGB, גלובלי, 120 fps |
כל עין פועלת על קישור MIPI בן 4 מסלולים. כרטיסי חיישן מלאים נמצאים על ה גיליון נתונים של EGO.
על ה-EGO הסטריאו, כל חיישן בחנות פועל ב-60 fps; זה גם המקסימום של לוח הסטריאו. AR0235 ו-Kaimou GS2.3 יכולים להגיע ל-120 fps כחיישנים; על לוח הסטריאו הם עדיין מגיעים ל-60 fps. החיישן הבודד של Ego משתמש באותם שישה חיישנים בחנות ב-60 fps ולוח זה יכול להגיע ליותר מ-60 fps.
Kaimou GS2.3 היא האפשרות החדשה ביותר. Kaimou מפרסמת את זה כחיישן סגר גלובלי של 2.3 MP עבור מצלמות רובוט: 1920 × 1200, פיקסל של 3.0 µm, 1/2.6 אינץ', עד 120 fps, מונו או RGB, טווח דינמי של 68.6 dB, 7300 e⁻ מלא ו-44.6% QE ב-850 nm, עם סנכרון פריימים עבור מערכות מצלמות מרובות. זה מגיע: דוגמאות Q4 2026, ייצור Q2 2027. נתונים מלאים: מפרט GS2.3.
2. שדה ראיה ועדשה
קונה צריך לבקש את שדה הראיה שהנתונים באמת מספקים לאחר תיקון עיוותים, ולא את האלכסון המודפס על הקופסה. בקש את אורך המוקד של העדשה בפיקסלים ואת נתון העיוות, ואז חישב את השדה המתוקן בעצמך.
EGO מפרסמת את כל נתוני העדשה על ה עמוד אופטיקה. The lens is a fixed M12 module, 2G4P + 1 IR, EFL 1.79 mm, F/2.0, with TV distortion < −22.3 % and a closest object distance of 0.20 m. There is no autofocus, so the intrinsics do not drift with focus. The field follows the sensor:
- SC233HGS: D 160°, H 144°, V 100° (f = 597 px)
- OG02C10: D 160°, H 140°, V 112° (f = 519 px)
- MIRA220: D 147.4°, H 118.6°, V 106.4° (f = 639 px)
- OX05B1S: f = 814 px
- Kaimou GS2.3: same field as SC233HGS, D 160°, H 144°, V 100° (f = 597 px)
The lens carries an IR-cut filter (50% at 650 nm) and is sealed to IP69.
3. Stereo baseline
Depth precision at hand distance depends on the baseline and the focal length in pixels. The EGO stereo baseline is 75.0 mm, CAM0 left, CAM1 right. The optics page works the geometry through for a look-down view of the hands: with SC233HGS, disparity is 149 px at 0.30 m, 112 px at 0.40 m and 75 px at 0.60 m, and a 180 mm hand at 0.40 m spans about 269 px.
Depth error at the 75.0 mm baseline for one pixel of disparity is published on the optics page:
| Range | SC233HGS / GS2.3 | MIRA220 / AR0235 | OG02C10 | OX05B1S |
|---|---|---|---|---|
| 0.30 m | 2.0 mm | 1.9 mm | 2.3 mm | 1.5 mm |
| 0.40 m | 3.6 mm | 3.3 mm | 4.1 mm | 2.6 mm |
| 0.60 m | 8.0 mm | 7.5 mm | 9.2 mm | 5.9 mm |
אם המרחב העבודה שלך זקוק לזוג רחב יותר או צר יותר, בסיס הוא אפשרות סטנדרטית בתוכנית המודולים המותאמים שלנו.
4. שליטת חשיפה
חשיפה קצרה שומרת על תנועות יד מהירות חדות. עבור סטריאו, שני העיניים חייבות לחשוף באופן זהה, אחרת המותאם רואה שתי תמונות שונות. קונה צריך לבדוק את טווח החשיפה שהקושחה מאפשרת, אם שמאל וימין חולקים חשיפה אחת ואיזון לבן, ואם חשיפה ורווח לכל פריים יכולים להיקרא חזרה.
על EGO, חשיפה ואיזון לבן פועלים דרך rkaiq 3A על שני ה-ISPs. שני העיניים חולקות את אותה חשיפה ו-AWB, עם Slave HDR כבוי. ברירת המחדל של IQ היא 50 Hz אנטי-פלקר: צעדי חשיפה הם N × 10 ms ב-50 Hz רשת ו-N × 8.333 ms ב-60 Hz. ההגדרה נמצאת בקבצי JSON של IQ בשכבת השחרור. מקורות ורשת האתחול מתועדים ב-דף התוכנה. מכיוון שהערימה פתוחה, צוות יכול לקבוע את מדיניות החשיפה שלו ולאמת אותה ישירות על המכשיר.
החיישן הבודד של Ego משתמש באותו מסלול rkaiq וגם חושף AE ו-AWB דרך UVC. על הלוח הזה צעדי האנטי-פלקר מתאימים ל-25 fps ב-50 Hz ו-30 fps ב-60 Hz (מצבי קו כוח UVC 0/1/2).
5. IMU
צינורות חזותיים-אינרציאליים זקוקים לנתוני אינרציה גולמיים, בקצב גבוה, הנמדדים במסגרת של המצלמה.
EGO ממקמת IMU אחד ליד כל מצלמה: שני חלקי ST LSM6DSVQTR על אוטובוסים SPI נפרדים, כך שכל מצלמה יש לה את ההתייחסות האינרציאלית שלה עם זרוע ידועה וקצרה. ה-IMU הוא 16-bit, ±2 עד ±16 g ו-±125 עד ±4000 dps. קצב נתוני הפלט ניתן לבחירה עד 7.68 kHz, וה-HUD הדמו רץ בברירת מחדל ב-480 Hz. דגימות מאיצים וג'יירו גולמיות מגיעות דרך IIO סטנדרטי של לינוקס עם הפרעה מוכנה לנתונים. החיישן הבודד נושא IMU אחד מאותו חלק ב-480 Hz. ערכי רעש במפרט הם הערכים הטיפוסיים של יצרן ה-IMU (60 µg/√Hz ו-2.8 mdps/√Hz), לא מדידות לוח, כפי שנאמר ב-דף החומרה.
6. סנכרון
שלושה שעונים צריכים להסכים: מצלמה למצלמה, מצלמה ל-IMU, וראש לפרק יד.
מצלמה למצלמה. EGO מפעיל את שני החיישנים מקווי RV1126B GPIO FSYNC ו-EFSYNC תחת שליטה ישירה של SoC, במצב הפעלה רציף. אין מעורבות של יישור תוכנה. קוד הסנכרון הוא tools/ego_cam_sync.py; מפת הפינים נמצאת ב- repo README. חיישנים בחנות על ה-EGO סטריאו פועלים ב-60 fps, שזה גם המקסימום סטריאו. חבילת הדמו מפעילה ב-12.5 fps; הקצב מוגדר בקוד פתוח.
מצלמה ל-IMU. כל IMU יושב על אותה לוח כמו המצלמה שהוא מתאר ונקרא דרך הליבה עם ההפרעה שלו. הקלטות על החיישן הבודד ובאמצעות האפליקציה כותבות שורות IMU עם חותמות זמן של Unix וחותמות זמן מונוטוניות בננושניות.
ראש לפרק יד. מניפולציה מיומנת בדרך כלל נתפסת עם זוג סטריאו של ראש בנוסף למצלמת פרק יד או כלי. החיישן הבודד של Ego נבנה עבור התפקיד השני הזה: אותם חיישנים, אותו מחשוב, אותו מקלט, מצלמה אחת ו-IMU אחד על שטח קטן יותר. עבור פריסות קבועות של מצלמות מרובות, אותה פלטפורמת CameVision נשלחת כ-3, 5 ו-9 לוחות מצלמה על תחום הפעלה אחד, המתוארת ב- Camemake robotic solutions.
קונה צריך למדוד הטיה על יחידות שנמסרו: להקליט LED מהיר או תנועה חדה על כל המצלמות ולהשוות חותמות זמן של פריימים.
7. כיול
מאפיינים פנימיים, מאפיינים חיצוניים סטריאו ומאפיינים חיצוניים של מצלמה ל-IMU קובעים אם הנתונים ניתנים לשימוש בכלל. כיול מתבצע על המצלמה עצמה ב-EGO: הדף החי וממשק המשתמש של כיול מסופקים על ידי tools/ego_stereo.py עם המותאם המקורי ב- stereo_native.c. קונה צריך לבדוק את שגיאת ההחזרה על כל יחידה ולשמור את הקליברציה קשורה למספר הסידורי של היחידה.
8. הקלטה, אחסון ובעלות על נתונים
נתוני ההקלטה צריכים להישאר עם הצוות שמקליט אותם. EGO והחיישן הבודד מקליטים מקומית: 16 GB eMMC בנוסף לחריץ microSD, 1 GB RAM, על RV1126B SoC עם ISP כפול ו-NPU. הכוח מגיע מ-USB-C או פדים סוללה.
השליטה מתבצעת דרך טלפון באמצעות ה אפליקציית CameVision באמצעות Bluetooth, בשני מצבים:
- עצמאי: התחל והפסיק הקלטות ברזולוציה מלאה לכרטיס microSD, ואז העבר אותן לטלפון.
- שרת: המצלמה גם מעלה דרך ה-Wi-Fi 6 שלה לשרת שאתה מפעיל, עם הכרטיס כזיכרון אם הרשת נופלת.
החיישן הבודד גם נחשב כממצלמת UVC סטנדרטית עם הכרטיס מותקן ככונן, כך שכל מארח יכול לקרוא אותו ללא Wi-Fi.
9. פורמט נתונים
סשנים סטריאו של EGO כותבים קבצי חותמות זמן לכל עין cam_left.timestamps.jsonl ו-cam_right.timestamps.jsonl. זמני דגימה של פריים ו-IMU משתמשים ב-CLOCK_MONOTONIC_ns; ה-IMU JSON גם נושא CLOCK_REALTIME ומחרוזת ISO, עם ה-RV-3028 קובע את השעון של המערכת.
עם החיישן הבודד ואפליקציית CameVision, כל סשן הוא תיקייה אחת על הכרטיס:
```
camevision/sessions/<YYYYMMDDTHHMMSSZ>/
session.json
imu0.csv
cam0/video.mp4
מְשׁוּלָם
```
הווידאו הוא ברזולוציה מלאה H.264. imu0.csv מחזיק t_unix_ns, t_mono_ns, ax, ay, az, gx, gy, gz, תאוצה ב-m/s² וגירו ב-deg/s. הסימן COMPLETE אומר לצינור שלך שהסשן נסגר בצורה נקייה. חוזה ההעלאה הוא API HTTP פשוט של שלוש קריאות, מתועד במאגר האפליקציה. מסמכי החיישן הבודד: camemake.github.io/CameVision-Ego-Single-Sensor.
10. בדיקות קבלה על משלוח
הרץ את אלה על כל יחידה לפני שהיא נכנסת לתוכנית תפיסה:
- אשר את החיישן והרזולוציה מול ההזמנה בעמוד החי.
- סובב את המכשיר מהר מול קצה ישר. הקצוות חייבים להישאר ישרים בשני העיניים.
- מדוד את ההטיה בין מצלמה למצלמה עם LED מהיר או תנועה חדה.
- הקלט מכשיר סטטי במשך עשר דקות ובדוק את קצב ה-IMU, הפערים וההטיה.
- כייל, ואז בדוק את שגיאת ההקרנה והעומק על מטרה ידועה ב-0.30, 0.40 ו-0.60 מ.
- הקלט מושב מלא לכרטיס, גרור אותו דרך האפליקציה, ואמת את רציפות הסימן המלא והחותמת הזמן.
הכל נחוץ עבור בדיקות אלה נמצא במאגרים הפתוחים. מנהלי לוח עבור מודולי Camemake באותה משפחת SoC נמצאים בROCKCHIP_MIPI_CAMERAS.
11. רמות דרישות
| צורך | תצורה |
|---|---|
| תפיסת ראש, עומק סטריאו של ידיים | CameVision EGO, חיישן 1920 × 1200 |
| ראש פלוס פרק כף יד | CameVision EGO פלוס חיישן Ego יחיד |
| אור נמוך או IR קרוב | אפשרות חיישן מונו, אופטיקה IR-pass לפי בקשה |
| לביש גמור תחת המותג שלך | אוזניות, כובע, קסדת PPE, תיק גב עם 5 מצלמות או מחזיק לימוד |
| קו בסיס מותאם, מארז או מספר מצלמות | תוכנית מודול OEM |
מוערך לנפח
EGO הוא לוח ההערכה של פלטפורמה שאנו מייצרים בנפח. אותו לוח נשלח תחת המותג שלך, במארז שלך, עם קו הבסיס והחיישן שלך. הזמן יחידות הערכה של הEGO סטריאו או ה EGO חיישן יחיד, או להתחיל תוכנית ODM או OEM על פתרונות רובוטיים של קמאייק.
---