मुख्य कंटेंट तक स्किप करें

Modbus API

Limelight OS में (ipaddress):502 पर एक Modbus TCP सर्वर चलता है

  • Integers: Integers SIGNED होते हैं और twos complement का उपयोग करके एन्कोड किए जाते हैं। यह विधि सार्वभौमिक रूप से मान्यता प्राप्त है और सही साइन व्याख्या सुनिश्चित करती है।

  • Floating-Point Numbers: Floats IEEE 754 मानक का उपयोग करके एन्कोड किए जाते हैं। Modbus प्रोटोकॉल की 16-बिट रजिस्टर सीमा का पालन करने के लिए, floating-point numbers को दो भागों में विभाजित किया जाता है:

    • उच्च-क्रम के 16 बिट्स दूसरे रजिस्टर में संग्रहीत होते हैं, और निम्न-क्रम के 16 बिट्स पहले रजिस्टर में।
    • Little-endian प्रारूप Modbus spec के साथ संगतता सुनिश्चित करता है।

USB और Ethernet Limelights का परीक्षण ModbusTool के साथ किया जा सकता है

Modbus पार्ट इंस्पेक्शन और औद्योगिक स्वचालन उपयोग-मामलों के लिए समर्थन सक्षम करता है। Modbus के साथ शुरू करने के लिए, आपको निम्नलिखित करना होगा:

  1. Ethernet या USB-C के माध्यम से अपने Limelight से कनेक्ट करें और एक पाइपलाइन कॉन्फ़िगर करें।

    • जबकि सभी पाइपलाइन modbus पर परिणाम आउटपुट करेंगी, हमारी python snapscript पाइपलाइन औद्योगिक उपयोग-मामलों के लिए अत्यंत बहुमुखी हैं क्योंकि वे कस्टम इनपुट आउटपुट डेटा का समर्थन करती हैं।
  2. अपने Limelight को एक स्थिर IP पता दें

  3. अपने Limelight को modbus नेटवर्क से जोड़ें।

Modbus Register विनिर्देश

Input / Read-Only Registers

RegisterKeyTypeविवरण
0hbintHeartbeat मान। प्रति फ्रेम एक बार बढ़ता है
1pipelineIndexintवर्तमान सक्रिय पाइपलाइन इंडेक्स (0 .. 9)।
2validTargetintयदि वैध लक्ष्य मौजूद है तो 1, अन्यथा 0।
3resultsCountintकुल परिणाम गणना। सभी fiducial डिटेक्शन, neural डिटेक्शन, आदि शामिल हैं
4IDintID / टीम नंबर
5modbusModeintModbus Server आउटपुट मोड।
6cpuTempintCPU तापमान सेल्सियस में।
7cpuUsageintCPU उपयोग प्रतिशत।
8ramUsageintRAM उपयोग प्रतिशत।
9currentFPSintवर्तमान फ्रेम प्रति सेकंड।
10captureLatencyintकैप्चर विलंबता। (मिलीसेकंड)
11targetLatencyintप्रोसेसिंग विलंबता। (मिलीसेकंड)
12-15reservedint

यदि Output Mode 0 पर सेट है:

RegisterKeyTypeविवरण
16,17txfloat32लक्ष्य के लिए क्षैतिज कोणीय ऑफसेट डिग्री में
18,19tyfloat32लक्ष्य के लिए ऊर्ध्वाधर कोणीय ऑफसेट डिग्री में
20,21txncfloat32लक्ष्य के लिए क्षैतिज कोणीय ऑफसेट (principal pixel के सापेक्ष) डिग्री में
22,23tyncfloat32लक्ष्य के लिए ऊर्ध्वाधर कोणीय ऑफसेट (principal pixel के सापेक्ष) डिग्री में
24,25tafloat32 (0-1)छवि आकार के प्रतिशत के रूप में लक्ष्य का क्षेत्रफल
26fiducialIDintवर्तमान AprilTag ID
27classifierClassintवर्तमान classifier पाइपलाइन आउटपुट का Class Index। यदि कोई Classifier परिणाम नहीं है तो -1
28detectorClassintवर्तमान detector पाइपलाइन आउटपुट का Class Index। यदि कोई Detector परिणाम नहीं है तो -1
29reservedint
30,31python[0]float32कस्टम python आउटपुट array [0]
32,33python[1]float32कस्टम python आउटपुट array [1]
34,35python[2]float32कस्टम python आउटपुट array [2]
36,37python[3]float32कस्टम python आउटपुट array [3]
38,39python[4]float32कस्टम python आउटपुट array [4]
40,41python[5]float32कस्टम python आउटपुट array [5]
42,43python[6]float32कस्टम python आउटपुट array [6]
44,45python[7]float32कस्टम python आउटपुट array [7]

Holding / Write-Only Registers

RegisterKeyTypeविवरण
0unlockedintपाइपलाइन को अनलॉक करता है। पाइपलाइन स्विचिंग और कस्टम इनपुट डेटा सक्षम करने के लिए 1 पर सेट करें
1pipeIndexintयदि "unlocked" 1 पर सेट है तो पाइपलाइन इंडेक्स सेट करता है
2outputModeintआउटपुट मोड सेट करता है। 0 - standard, 1 - rawtargets (WIP)
3reservedint
4reservedint
5reservedint
6reservedint
7reservedint
8pythonInput[0]intकस्टम python इनपुट array [0]
9pythonInput[1]intकस्टम python इनपुट array [1]
10pythonInput[2]intकस्टम python इनपुट array [2]
11pythonInput[3]intकस्टम python इनपुट array [3]
12pythonInput[4]intकस्टम python इनपुट array [4]
13pythonInput[5]intकस्टम python इनपुट array [5]
14pythonInput[6]intकस्टम python इनपुट array [6]
15pythonInput[7]intकस्टम python इनपुट array [7]
16,17pythonInput[8]float32कस्टम python इनपुट array [8]
18,19pythonInput[9]float32कस्टम python इनपुट array [9]
20,21pythonInput[10]float32कस्टम python इनपुट array [10]
22,23pythonInput[11]float32कस्टम python इनपुट array [11]
24,25pythonInput[12]float32कस्टम python इनपुट array [12]
26,27pythonInput[13]float32कस्टम python इनपुट array [13]
28,29pythonInput[14]float32कस्टम python इनपुट array [14]
30,31pythonInput[15]float32कस्टम python इनपुट array [15]