
हार्डवेयर हैकर का फ्लाइंग प्रोब ऑटोमेशन स्टैक एजेंट-संचालित लक्ष्य खोज, माइक्रोस्कोप मैपिंग, सुरक्षा-निगरानी सीएनसी मोशन, प्रोब समीक्षा, और नियंत्रित पिन प्रोबिंग के लिए।
AutoProber हार्डवेयर हैकर का फ्लाइंग प्रोब ऑटोमेशन स्टैक है जो आपके एजेंट को "प्लेट पर एक नया लक्ष्य है" से लेकर सुरक्षित तरीके से व्यक्तिगत पिन की जांच करने तक की हर चीज़ प्रदान करता है।

डेमो वीडियो: https://gainsec.com/autoprober-demo-mp4/




सभी हार्डवेयर को वेब डैशबोर्ड, पायथन स्क्रिप्ट या एजेंट के माध्यम से ही नियंत्रित किया जा सकता है।

यह रिपॉजिटरी एक स्व-निहित स्रोत-उपलब्ध रिलीज़ उम्मीदवार है। इसमें आपका अपना AutoProber बनाने के लिए आवश्यक पायथन नियंत्रण कोड, डैशबोर्ड, CAD फ़ाइलें और दस्तावेज़ शामिल हैं।
यह प्रोजेक्ट भौतिक हार्डवेयर को हिला सकता है। इसे सामान्य वेब ऐप के बजाय मशीन-नियंत्रण प्रणाली के रूप में मानें।
आवश्यक सुरक्षा डिज़ाइन है:
Pn:P को अनदेखा किया जाता है। CNC प्रोब पिन एक विश्वसनीय एंडस्टॉप नहीं है।हार्डवेयर चलाने से पहले docs/safety.md और docs/operations.md पढ़ें।
apps/ ऑपरेटर-सामने वाली स्क्रिप्ट और Flask डैशबोर्ड प्रवेश बिंदु
autoprober/ CNC, स्कोप, माइक्रोस्कोप, लॉगिंग, सुरक्षा के लिए पुन: प्रयोज्य पायथन पैकेज
dashboard/ एकल-पृष्ठ वेब डैशबोर्ड
docs/ आर्किटेक्चर, डिवाइस संदर्भ, संचालन और सुरक्षा मार्गदर्शन
cad/ वर्तमान कस्टम टूलहेड के लिए मुद्रण योग्य STL फ़ाइलें
config/ उदाहरण पर्यावरण/कॉन्फ़िगरेशन फ़ाइलें
AGENTS.md एजेंट/ऑपरेटर सुरक्षा नियम
LICENSE PolyForm Noncommercial 1.0.0 लाइसेंस और वाणिज्यिक संपर्क
pyproject.toml पायथन प्रोजेक्ट मेटाडेटा
uv.lock लॉक की गई पायथन निर्भरता रिज़ॉल्यूशन
परीक्षित प्रोजेक्ट आर्किटेक्चर उपयोग करता है:
mjpg_streamer द्वारा परोसा गया USB माइक्रोस्कोपcad/ में वर्तमान मुद्रण योग्य कस्टम टूलहेड भागडिफ़ॉल्ट रनटाइम धारणाएं डिवाइस दस्तावेज़ों में प्रलेखित हैं। उपयोग से पहले उन्हें अपनी स्वयं की लैब सेटिंग्स से बदलें।
हार्डवेयर की खरीदारी-उन्मुख सूची के लिए, docs/BOM.md देखें।
प्रोटोटाइप रिलीज़ के लिए उपयोग किए जाने वाले विशिष्ट भाग या भाग वर्ग हैं। खरीदने से पहले वर्तमान लिस्टिंग, आयाम, वोल्टेज और कनेक्टर संगतता सत्यापित करें।
मेरा बिल्ड:
cad/ में मुद्रण योग्य टूलहेड भागों के लिए 3D प्रिंटरवैकल्पिक / विनिमेय:
flowchart LR
Operator[Operator] --> Dashboard[Web Dashboard]
Dashboard --> Apps[Python Apps]
Apps --> CNC[GRBL CNC over USB serial]
Apps --> Microscope[USB Microscope via mjpg-streamer]
Apps --> Scope[Oscilloscope over LAN / SCPI]
Apps --> Outlet[Optional LAN Power Outlet]
Endstop[Optical Endstop] --> ScopeC4[Scope C4 Safety Voltage]
Pogo[Pogo Measurement] --> ScopeC1[Scope C1 Measurement]
ScopeC4 --> Apps
ScopeC1 --> Apps
flowchart TD
Preflight[Preflight] --> SafetyCheck{Channel 4 clear?}
SafetyCheck -- no --> Stop[STOP State]
SafetyCheck -- yes --> Motion[Monitored Motion]
Motion --> Monitor[EndstopMonitor thread >= 10 Hz]
Monitor --> C4{C4 clear?}
C4 -- yes --> Capture[Microscope Capture]
C4 -- no --> FeedHold[Immediate feed hold]
FeedHold --> Stop
Capture --> Stitch[Stitch / Map]
Stitch --> Review[Manual Probe Review]
Review --> Approved{Approved target and measured probe offset?}
Approved -- no --> Stop
Approved -- yes --> Probe[Bounded probe motion]
stateDiagram-v2
[*] --> Running
Running --> STOP: C4 triggered / C4 fault / CNC alarm / real limit pin
STOP --> Report: log voltage, status, action
Report --> WaitForOperator: no automatic recovery motion
WaitForOperator --> Running: operator explicitly clears condition
निर्भरताएं स्थापित करें:
uv sync
कॉन्फ़िगर किए गए हार्डवेयर होस्ट पर डैशबोर्ड प्रारंभ करें:
PYTHONPATH=. python3 apps/dashboard.py
डैशबोर्ड डिफ़ॉल्ट रूप से पोर्ट 5000 पर चलता है।
config/autoprober.example.env से प्रारंभ करें। जब तक आप उन्हें जारी करने का इरादा नहीं रखते, लैब-विशिष्ट IP, होस्टनाम, क्रेडेंशियल्स, कैलिब्रेशन फ़ाइलें या कैप्चर की गई लक्ष्य छवियां प्रकाशित न करें।
महत्वपूर्ण रनटाइम मान कॉन्फ़िगर करने योग्य हैं:
AUTOPROBER_LOG_PATH: रनटाइम लॉग पथAUTOPROBER_RUNTIME_ROOT: कैलिब्रेशन, फ्लैट-फील्ड और रनटाइम स्थिति निर्देशिकाAUTOPROBER_MICROSCOPE_SNAPSHOT_URL: माइक्रोस्कोप स्नैपशॉट एंडपॉइंटAUTOPROBER_SCOPE_HOST / AUTOPROBER_SCOPE_PORT: ऑसिलोस्कोप SCPI एंडपॉइंट5000 पर Flaskलैब-विशिष्ट होस्ट, पथ या लक्ष्य डेटा वाली स्थानीय पर्यावरण फ़ाइलें कमिट न करें।