J1939 वाहन सिम्युलेटर
J1939 CAN सपोर्ट वाला वाहन सिम्युलेटर
अवलोकन
व्हीकल सिमुलेटर ( gva-vehicle-sim ) GVA (जेनेरिक व्हीकल आर्किटेक्चर) प्लेटफॉर्म के लिए एक व्यापक परीक्षण और विकास उपकरण है। यह एकीकृत J1939 CAN बस संदेश निर्माण के साथ यथार्थवादी वाहन गतिशीलता सिमुलेशन प्रदान करता है, जिससे भौतिक वाहन हार्डवेयर की आवश्यकता के बिना हार्डवेयर-इन-द-लूप परीक्षण संभव हो पाता है।
संदेश निर्माण के लिए J1939 सिमुलेशन के लाभ
🎯 विकास और परीक्षण के लाभ
हार्डवेयर-स्वतंत्र विकास
- भौतिक CAN हार्डवेयर के बिना GVA अनुप्रयोगों को विकसित और परीक्षण करें
- महंगे वाहन ईसीयू या टेस्ट बेंच की कोई आवश्यकता नहीं है।
- कई टीमों में समानांतर विकास
वास्तविक वाहन व्यवहार
- यह प्रामाणिक J1939 पैरामीटर समूह संख्या (PGN) और संदिग्ध पैरामीटर संख्या (SPN) उत्पन्न करता है।
- यह वास्तविक वाहन गतिशीलता (गति, आरपीएम, गियर परिवर्तन, ब्रेकिंग) का अनुकरण करता है।
- समय-समकालिक सेंसर डेटा प्रदान करता है
लागत में कमी
- प्रारंभिक विकास में भौतिक परीक्षण वाहनों की आवश्यकता को समाप्त करता है
- वर्चुअल CAN इंटरफ़ेस (
vcan0) किसी भी Linux वर्कस्टेशन पर परीक्षण करने में सक्षम बनाता है। - भौतिक हार्डवेयर पर होने वाली टूट-फूट को कम करता है
तीव्र प्रोटोटाइपिंग
- एल्गोरिदम विकास के लिए त्वरित प्रतिक्रिया लूप
- आसान परिदृश्य निर्माण और पुनर्मूल्यांकन
- कॉन्फ़िगर करने योग्य संदेश दरें और डेटा पैटर्न
एकीकरण परीक्षण
- J1939 गेटवे की कार्यक्षमता को सत्यापित करें
- CAN से DDS विषयों तक परीक्षण डेटा प्रवाह
- वाहन मापदंडों के प्रति HMI की प्रतिक्रियाशीलता को सत्यापित करें
पुनरुत्पादनीय परीक्षण
- निश्चित वाहन व्यवहार
- दोहराए जाने योग्य परीक्षण परिदृश्य
- प्रतिगमन परीक्षण के लिए सुसंगत आधार रेखा
📊 J1939 संदेश समर्थन
✅ पूर्णतः समर्थित पीजीएन (वाहन सिम्युलेटर में कार्यान्वित)
वाहन सिम्युलेटर सक्रिय रूप से CAN पर निम्नलिखित J1939 संदेश उत्पन्न करता है और उन्हें गेटवे के माध्यम से DDS पर प्रकाशित करता है:
| पीजीएन | हेक्स | नाम | दर | एसपीएन | विवरण |
|---|---|---|---|---|---|
| 61443 | 0xF003 | EEC2 - इलेक्ट्रॉनिक इंजन नियंत्रक 2 | 50 मिलीसेकंड | 91, 92 | एक्सीलरेटर पेडल की स्थिति, इंजन पर प्रतिशत भार |
| 61444 | 0xF004 | ईईसी1 - इलेक्ट्रॉनिक इंजन नियंत्रक 1 | 100 मिलीसेकंड | 190, 512, 513 | इंजन की गति (आरपीएम), चालक द्वारा अपेक्षित टॉर्क, वास्तविक इंजन टॉर्क |
| 61445 | 0xF005 | ईटीसी2 - इलेक्ट्रॉनिक ट्रांसमिशन कंट्रोलर 2 | 100 मिलीसेकंड | 522, 523, 524 | क्लच की स्थिति, चयनित गियर, वर्तमान गियर |
| 61449 | 0xF009 | VDC2 - वाहन गतिशील नियंत्रण 2 | 100 मिलीसेकंड | 1807, 1808 | स्टीयरिंग व्हील का कोण, यॉ दर |
| 65253 | 0xFEE5 | घंटे - इंजन के घंटे | 1s | 247 | इंजन के कुल परिचालन घंटे |
| 65256 | 0xFEE8 | वीडीएस - वाहन की दिशा/गति | 250 मिलीसेकंड | 517, 519, 586 | जमीन पर गति, कंपास दिशा, मार्ग |
| 65258 | 0xFEEA | ALT - ऊंचाई | 1s | 580 | समुद्र तल से जीपीएस ऊंचाई |
| 65262 | 0xFEEE | ET1 - इंजन तापमान 1 | 1s | 110, 174, 175 | इंजन शीतलक तापमान, ईंधन तापमान, तेल तापमान |
| 65263 | 0xFEEF | ईएफएलपी - इंजन द्रव स्तर/दबाव | 500 मिलीसेकंड | 96, 100, 94 | ईंधन स्तर, तेल दबाव, ईंधन वितरण दबाव |
| 65265 | 0xFEF1 | CCVS - क्रूज़ कंट्रोल/वाहन की गति | 100 मिलीसेकंड | 84, 597, 598 | पहिए आधारित वाहन की गति, ब्रेक स्विच, क्लच स्विच |
| 65267 | 0xFEF3 | उपाध्यक्ष - वाहन पद | 250 मिलीसेकंड | 584, 585 | जीपीएस अक्षांश, देशांतर |
| 65269 | 0xFEF5 | एएमबी - परिवेशीय स्थितियाँ | 1s | 108, 171 | बैरोमेट्रिक दबाव, परिवेशी वायु तापमान |
| 65271 | 0xFEF7 | VEP1 - वाहन विद्युत शक्ति 1 | 1s | 167, 168, 158 | बैटरी वोल्टेज, अल्टरनेटर वोल्टेज, चार्जिंग सिस्टम वोल्टेज |
| 65276 | 0xFEFC | डीडी - डैश डिस्प्ले | 1s | 182, 183 | ईंधन दर (लीटर/घंटा), तात्कालिक ईंधन दक्षता |
| 0xEF00 | 0xEF00 | PROP_A - स्वामित्व A (IONNIC USM) | 250 मिलीसेकंड | - | IONNIC USM ES-Key पैनल के लिए LED नियंत्रण |
विस्तृत एसपीएन सूची (सभी समर्थित पैरामीटर)
| SP एन | मापदण्ड नाम | पीजीएन | इकाई | संकल्प | ओफ़्सेट | श्रेणी |
|---|---|---|---|---|---|---|
| 84 | पहिए आधारित वाहन की गति | 65265 | किमी/घंटा | 1/256 किमी/घंटा | 0 | 0-250 किमी/घंटा |
| 91 | एक्सीलरेटर पेडल की स्थिति | 61443 | % | 0.4% | 0 | 0-100% |
| 92 | वर्तमान गति पर इंजन का प्रतिशत भार | 61443/61444 | % | 1% | 0 | 0-100% |
| 94 | ईंधन वितरण दबाव | 65263 | किलो पास्कल | 4 किलोपा | 0 | 0-1000 किलोपा |
| 96 | ईंधन स्तर | 65263 | % | 0.4% | 0 | 0-100% |
| 100 | इंजन तेल दबाव | 65263 | किलो पास्कल | 4 किलोपा | 0 | 0-1000 किलोपा |
| 108 | बैरोमेट्रिक दबाव | 65269 | किलो पास्कल | 0.5 केपीए | 0 | 0-125 किलोपा |
| 110 | इंजन शीतलक तापमान | 65262 | डिग्री सेल्सियस | 1 डिग्री सेल्सियस | -40 | -40 से +210 डिग्री सेल्सियस |
| 158 | चार्जिंग सिस्टम वोल्टेज | 65271 | वी | 0.05 वी | 0 | 0-3212 वी |
| 167 | अल्टरनेटर वोल्टेज | 65271 | वी | 0.05 वी | 0 | 0-3212 वी |
| 168 | बैटरी वोल्टेज | 65271 | वी | 0.05 वी | 0 | 0-3212 वी |
| 171 | आसपास की हवा का तापमान | 65269 | डिग्री सेल्सियस | 0.03125°C | -273 | -273 से +1735 डिग्री सेल्सियस |
| 174 | ईंधन तापमान | 65262 | डिग्री सेल्सियस | 1 डिग्री सेल्सियस | -40 | -40 से +210 डिग्री सेल्सियस |
| 175 | इंजन तेल का तापमान | 65262 | डिग्री सेल्सियस | 0.03125°C | -273 | -273 से +1735 डिग्री सेल्सियस |
| 182 | ईंधन दर | 65276 | एल/एच | 0.05 लीटर/घंटा | 0 | 0-3212 लीटर/घंटा |
| 183 | तात्कालिक ईंधन दक्षता | 65276 | किमी/लीटर | 1/512 किमी/लीटर | 0 | 0-125 किमी/लीटर |
| 190 | इंजन की गति | 61444 | आरपीएम | 0.125 आरपीएम | 0 | 0-8031 आरपीएम |
| 247 | कुल इंजन घंटे | 65253 | एच | 0.05 घंटे | 0 | 0-210,554,060 घंटे |
| 512 | चालक की मांग इंजन टॉर्क | 61444 | % | 1% | -125 | -125% से +125% |
| 513 | वास्तविक इंजन टॉर्क | 61444 | % | 1% | -125 | -125% से +125% |
| 517 | जमीन पर गति | 65256 | किमी/घंटा | 1/256 किमी/घंटा | 0 | 0-250 किमी/घंटा |
| 519 | ज़मीन पर पाठ्यक्रम | 65256 | डिग्री | 1/128 डिग्री | 0 | 0-360° |
| 522 | क्लच पेडल की स्थिति | 61445 | % | 0.4% | 0 | 0-100% |
| 523 | ट्रांसमिशन करंट गियर | 61445 | गियर | 1 | -125 | -125 से +125 |
| 524 | ट्रांसमिशन चयनित गियर | 61445 | गियर | 1 | -125 | -125 से +125 |
| 580 | ऊंचाई | 65258 | एम | 0.125 मीटर | -2500 | -2500 से +5531 मीटर |
| 584 | अक्षांश | 65267 | डिग्री | 10⁻⁷ डिग्री | -210 | -90° से +90° |
| 585 | देशान्तर | 65267 | डिग्री | 10⁻⁷ डिग्री | -210 | -180° से +180° |
| 586 | कम्पास दिशा | 65256 | डिग्री | 1/128 डिग्री | 0 | 0-360° |
| 597 | ब्रेक स्विच | 65265 | - | 2 बिट्स | - | बंद/चालू/त्रुटि/उपलब्ध नहीं |
| 598 | क्लच का स्विच | 65265 | - | 2 बिट्स | - | बंद/चालू/त्रुटि/उपलब्ध नहीं |
| 899 | इंजन टॉर्क मोड | 61444 | - | 1 | 0 | 0-15 (गणना) |
| 1807 | स्टीयरिंग व्हील कोण | 61449 | रेड | 1/1024 रेड | -31.374 | -31.374 से +31.374 रेडियन |
| 1808 | यअव रेट | 61449 | रेड/एस | 1/8192 रेड/सेकंड | -3.92 | -3.92 से +3.92 रेडियन/सेकंड |
कुल: 15 पीजीएन, 33 एसपीएन सक्रिय रूप से अनुकरण किए गए
🔲 असमर्थित पीजीएन (अभी तक लागू नहीं किए गए)
वाहन सिम्युलेटर द्वारा वर्तमान में निम्नलिखित J1939 संदेश उत्पन्न नहीं किए जाते हैं। ये भविष्य में संभावित सुधारों को दर्शाते हैं:
| पीजीएन | हेक्स | नाम | प्राथमिकता | उदाहरण | जटिलता |
|---|---|---|---|---|---|
| 61440 | 0xF000 | ईआरसी1 - इलेक्ट्रॉनिक रिटार्डर कंट्रोलर 1 | कम | रिटार्डर/इंजन ब्रेक नियंत्रण | मध्यम |
| 61441 | 0xF001 | ईबीसी1 - इलेक्ट्रॉनिक ब्रेक कंट्रोलर 1 | उच्च | एबीएस, ब्रेक सिस्टम की स्थिति | उच्च |
| 61442 | 0xF002 | ETC1 - इलेक्ट्रॉनिक ट्रांसमिशन कंट्रोलर 1 | मध्यम | ट्रांसमिशन मोड, शिफ्टिंग जारी है | मध्यम |
| 64971 | 0xFDCB | VDHR - वाहन दूरी (उच्च रिज़ॉल्यूशन) | उच्च | 5 मिमी रिज़ॉल्यूशन वाला ओडोमीटर | कम |
| 64972 | 0xFDCC | TCO1 - टैकोग्राफ | मध्यम | ड्राइवर कार्ड, टैकोग्राफ से गति | कम |
| 65132 | 0xFE6C | टीपीएमएस - टायर प्रेशर मॉनिटरिंग | मध्यम | प्रत्येक टायर का दबाव/तापमान | मध्यम |
| 65217 | 0xFEC1 | PTODE - पीटीओ ड्राइव एंगेजमेंट | कम | पावर टेक-ऑफ स्थिति | कम |
| 65248 | 0xFEE0 | VDIST - उच्च रिज़ॉल्यूशन वाहन दूरी | उच्च | 5 मीटर रिज़ॉल्यूशन के साथ कुल दूरी | कम |
| 65251 | 0xFEE3 | ईसीएफजी - इंजन कॉन्फ़िगरेशन | कम | इंजन का निर्माता, मॉडल, सीरियल नंबर | कम |
| 65252 | 0xFEE4 | SHUTDN - शटडाउन | कम | इंजन शटडाउन ओवरराइड | कम |
| 65260 | 0xFEEC | VI - वाहन पहचान | मध्यम | पूर्ण VIN ट्रांसमिशन (आंशिक कार्यान्वयन) | कम |
| 65279 | 0xFEFF | CCVS1 - क्रूज़ कंट्रोल/वाहन गति 1 | मध्यम | उन्नत क्रूज़ नियंत्रण डेटा | कम |
| 65098 | 0xFE4A | ईबीसी2 - इलेक्ट्रॉनिक ब्रेक कंट्रोलर 2 | उच्च | व्यक्तिगत व्हील ब्रेक की स्थिति | उच्च |
| 65099 | 0xFE4B | ईबीसी3 - इलेक्ट्रॉनिक ब्रेक कंट्रोलर 3 | मध्यम | अस्तर पहनना रोकें | मध्यम |
| 65110 | 0xFE56 | IC1 - प्रवेश/निकास की स्थितियाँ 1 | कम | इनटेक मैनिफोल्ड दबाव/तापमान | मध्यम |
| 65172 | 0xFE84 | RQST - अनुरोध | कम | ईसीयू से विशिष्ट पीजीएन का अनुरोध करें | मध्यम |
| 65226 | 0xFECA | AT1I - उपचार के बाद 1 गैस का सेवन | कम | डीज़ल पार्टिकुलेट फ़िल्टर इनलेट | कम |
| 65227 | 0xFECB | AT1O - उपचार के बाद 1 आउटलेट गैस | कम | डीपीएफ आउटलेट, एनओएक्स सेंसर | कम |
| 65247 | 0xFEDF | EFL/P2 - इंजन द्रव स्तर/दबाव 2 | कम | अतिरिक्त द्रव दबाव | कम |
| 65266 | 0xFEF2 | एलएफई - ईंधन दक्षता | मध्यम | औसत/ट्रिप ईंधन दक्षता | कम |
| 65270 | 0xFEF6 | टीडी - टर्बोचार्जर | कम | बूस्ट प्रेशर, टरबाइन स्पीड | मध्यम |
| 65272 | 0xFEF8 | VEP2 - वाहन विद्युत शक्ति 2 | कम | अतिरिक्त विद्युत बसें | कम |
इन्हें लागू क्यों नहीं किया गया?
| कारण | प्रभावित पीजीएन | गिनती करना |
|---|---|---|
| बेसिक व्हीकल सिम से संबंधित नहीं है | ERC1, PTODE, SHUTDN, ECFG, AT1I, AT1O, TD | 7 |
| टायर भौतिकी मॉडल की आवश्यकता है | टीपीएमएस | 1 |
| ABS/ब्रेक मॉडल आवश्यक है | ईबीसी1, ईबीसी2, ईबीसी3 | 3 |
| उन्नत संचरण की आवश्यकता है | ईटीसी1 | 1 |
| कम प्राथमिकता / दिखावटी | VI (VIN), VDHR, VDIST, TCO1, LFE | 5 |
| निकास/उत्सर्जन मॉडल की आवश्यकता है | IC1, AT1I, AT1O | 3 |
| प्रोटोकॉल स्तर (वाहन डेटा नहीं) | आरक्यूएसटी | 1 |
| डुप्लिकेट/उन्नत संस्करण | CCVS1, EFL/P2, VEP2 | 3 |
कुल: 22 असमर्थित पीजीएन
🛠️ तकनीकी विशेषताएं
- ओपनड्राइव रोड नेटवर्क सपोर्ट : वास्तविक सड़क ज्यामिति का अनुसरण करें
- स्वचालित ट्रांसमिशन सिमुलेशन : गति और थ्रॉटल के आधार पर गियर परिवर्तन
- भौतिकी-आधारित गतिकी : वास्तविक बाधाओं के साथ त्वरण, ब्रेकिंग और स्टीयरिंग
- डीडीएस एकीकरण : जे1939 ऑटोमोटिव पीएसएम विषयों पर सीधा प्रकाशन
- Qt6 GUI : वास्तविक समय दृश्यीकरण और मैन्युअल नियंत्रण
J1939 से DDS गेटवे आर्किटेक्चर
निम्नलिखित अनुक्रम आरेख J1939 CAN बस संदेशों से लेकर गेटवे के माध्यम से DDS ग्राहकों तक संपूर्ण डेटा प्रवाह को दर्शाता है:
(speed, RPM, gear) Sim->>CAN: Send PGN 61444
(EEC1: Engine Speed) Sim->>CAN: Send PGN 65265
(CCVS: Vehicle Speed) Sim->>CAN: Send PGN 61445
(ETC2: Transmission) Note over CAN,Decoder: CAN Reception Phase CAN->>Reader: Read CAN frame (29-bit ID) Reader->>Reader: Validate frame Reader->>Decoder: emit canFrameReceived() Note over Decoder,Gateway: J1939 Decode Phase Decoder->>Decoder: Extract PGN from CAN ID
(bits 24-8) Decoder->>Decoder: Extract source address
(bits 7-0) Decoder->>Decoder: Extract priority
(bits 28-26) Decoder->>Decoder: Decode SPNs from payload
(bit position, scale, offset) Decoder->>Gateway: emit j1939MessageDecoded() Note over Gateway,DDS: DDS Publishing Phase Gateway->>Gateway: Create C_Parameter_Group_Definition
(if first time) Gateway->>DDS: Publish PGN definition loop For each SPN in message Gateway->>Gateway: Create C_Parameter message
(sourceID, PGN, SPN, value) Gateway->>Gateway: Set metadata
(timestamp, status) Gateway->>DDS: Publish parameter end Note over DDS,HMI: Consumption Phase DDS->>HMI: onSampleReceived()
(C_Parameter) HMI->>HMI: Update speedometer HMI->>HMI: Update tachometer HMI->>HMI: Update gear indicator Note over Gateway: Status Reporting (1 Hz) Gateway->>Gateway: Update data source status Gateway->>DDS: Publish C_Data_Source
(gateway health)
अनुक्रम आरेख की व्याख्या
1. संदेश निर्माण चरण
- व्हीकल सिमुलेटर ड्राइवर के इनपुट और भौतिकी के आधार पर वास्तविक वाहन मापदंडों की गणना करता है।
- यह पैरामीटरों को उचित PGN/SPN संरचना के साथ J1939 CAN फ्रेम में एन्कोड करता है।
- वर्चुअल CAN इंटरफ़ेस (vcan0) पर संचारित करता है
2. सीएएन स्वागत चरण
- SocketCanReader Qt थ्रेड लगातार CAN इंटरफ़ेस से डेटा पढ़ता है।
- CAN फ्रेम प्रारूप (29-बिट विस्तारित आईडी) को मान्य करता है
- कच्चे फ्रेम डेटा के साथ Qt सिग्नल उत्सर्जित करता है
3. J1939 डिकोड चरण
- J1939Decoder CAN ID से प्रोटोकॉल जानकारी निकालता है:
- PGN : पैरामीटर समूह संख्या (संदेश के प्रकार की पहचान करता है)
- स्रोत पता : ईसीयू पहचानकर्ता (0-253)
- प्राथमिकता : संदेश की तात्कालिकता (0=सर्वोत्तम, 7=सर्वोत्तम)
- कॉन्फ़िगरेशन का उपयोग करके डेटा पेलोड को व्यक्तिगत एसपीएन में डिकोड करता है:
- बिट की स्थिति और लंबाई
- स्केल फैक्टर और ऑफसेट
- इंजीनियरिंग इकाइयाँ
4. डीडीएस प्रकाशन चरण
- गेटवे पहली बार
C_Parameter_Group_Definition(PGN मेटाडेटा) प्रकाशित करता है। - संदेश में प्रत्येक SPN के लिए:
- मान और स्थिति के साथ
C_Parameterसंदेश बनाता है - टाइमस्टैम्प और स्रोत पहचान जोड़ता है
- डीडीएस विषय पर प्रकाशित करता है
- मान और स्थिति के साथ
- समय-समय पर स्थिति अपडेट (1 हर्ट्ज़) गेटवे की स्थिति प्रकाशित करते हैं।
5. उपभोग चरण
- GVA अनुप्रयोग (HMI, LDMX) J1939 DDS विषयों की सदस्यता लेते हैं
- डीडीएस मिडलवेयर के माध्यम से पैरामीटर अपडेट प्राप्त करें
- यूआई तत्वों (स्पीडोमीटर, टैकोमीटर, गियर डिस्प्ले) को अपडेट करें
प्रोटोकॉल विवरण
J1939 CAN ID संरचना (29-बिट)
Bits 28-26: Priority (0-7)
Bit 25: Reserved
Bit 24: Data Page (DP)
Bits 23-16: PDU Format (PF)
Bits 15-8: PDU Specific (PS) - group extension or destination
Bits 7-0: Source Address (SA)
PGN = (DP << 16) | (PF << 8) | (PS if PF >= 240 else 0)उदाहरण के लिए, CAN फ्रेम डिकोडिंग
CAN ID: 0x18F00400
Binary: 00011000111100000000010000000000
Priority: 0x6 (bits 28-26) = 6 (normal priority)
Reserved: 0 (bit 25)
DP: 0 (bit 24)
PF: 0xF0 (bits 23-16) = 240 (broadcast)
PS: 0x04 (bits 15-8) = 4 (group extension)
SA: 0x00 (bits 7-0) = 0 (engine controller)
PGN = (0 << 16) | (240 << 8) | 4 = 61444 (EEC1 - Engine Controller 1)त्वरित शुरुआत
1. वाहन सिम्युलेटर बनाएं
cd build
cmake ..
make gva-vehicle-sim2. वर्चुअल CAN सेटअप करें
sudo scripts/test/j1939/setup-vcan.sh3. वाहन सिम्युलेटर शुरू करें
# GUI mode with OpenDRIVE track
./build/bin/gva-vehicle-sim \
--domain=0 \
--opendrive=data/opendrive/ZalaZONE_full.xodr \
--can-interface=vcan0
# Headless mode with J1939 only
./build/bin/gva-vehicle-sim \
--domain=0 \
--can-interface=vcan0 \
--headless4. J1939 गेटवे शुरू करें
./build/bin/gva-j1939-gateway \
--domain=0 \
--interface=vcan0 \
--config=/etc/gva/j1939-config.json5. एलडीएमएक्स के साथ मॉनिटर करें
./build/bin/ldmx
# Navigate to J1939 tab to see live parametersविन्यास
वाहन सिम्युलेटर कॉन्फ़िगरेशन
vehicle-sim-config.json फ़ाइल बनाएँ:
{
"j1939": {
"enabled": true,
"sourceAddress": 0,
"gatewayResourceId": 1000,
"updateRateHz": 10
},
"vehicle": {
"maxSpeed": 120.0,
"maxRpm": 6000,
"gearRatios": [3.5, 2.5, 1.8, 1.3, 1.0, 0.8],
"engineIdleRpm": 800
}
}J1939 गेटवे कॉन्फ़िगरेशन
PGN/SPN परिभाषाओं और स्केलिंग मापदंडों के लिए /etc/gva/j1939-config.json देखें।
उपयोग के मामले
1. एचएमआई विकास
- बिना किसी भौतिक वाहन के वाहन डैशबोर्ड विकसित करें
- परीक्षण उपकरण क्लस्टर रेंडरिंग और एनिमेशन
- चेतावनी/अलार्म सीमा का सत्यापन करें
2. एल्गोरिदम परीक्षण
- सिम्युलेटेड ईंधन खपत के साथ इको-ड्राइविंग एल्गोरिदम का परीक्षण करें
- भविष्यसूचक रखरखाव तर्क को मान्य करें
- स्वायत्त ड्राइविंग निर्णय लेने की क्षमता का परीक्षण करें
3. एकीकरण परीक्षण
- संपूर्ण डेटा प्रवाह की पुष्टि करें: CAN → DDS → एप्लीकेशन
- लोड की स्थिति में गेटवे के प्रदर्शन का परीक्षण करें
- उपप्रणालियों में डेटा सिंक्रोनाइज़ेशन को मान्य करें
4. प्रशिक्षण एवं प्रदर्शन
- ऑपरेटर प्रशिक्षण के लिए सुरक्षित वातावरण
- वाहन के बिना ग्राहक प्रदर्शन
- जीवीए आर्किटेक्चर के लिए शैक्षिक उपकरण
प्रदर्शन विशेषताएँ
| मीट्रिक | कीमत |
|---|---|
| CAN फ्रेम निर्माण दर | प्रति पीजीएन 100 हर्ट्ज तक |
| डीडीएस प्रकाशन विलंबता | < 5 मिलीसेकंड (स्थानीय) |
| गेटवे थ्रूपुट | > 1000 पीजीएन/सेकंड |
| सीपीयू उपयोग (सिम्युलेटर + गेटवे) | < 10% (4-कोर सिस्टम) |
| मेमोरी फुटप्रिंट | लगभग 50 एमबी (कुल मिलाकर) |
तुलना: भौतिक बनाम कृत्रिम
| पहलू | भौतिक वाहन | सिम्युलेटर |
|---|---|---|
| हार्डवेयर की लागत | $50,000+ | $0 (केवल सॉफ्टवेयर) |
| सेटअप समय | घंटे (वायरिंग, कॉन्फ़िगरेशन) | मिनट |
| reproducibility | सीमित (चालक परिवर्तनशीलता) | पूर्ण (नियतात्मक) |
| सुरक्षा | क्षति/चोट का जोखिम | शून्य जोखिम |
| परिदृश्य नियंत्रण | कठिन (मौसम, यातायात) | पूर्ण नियंत्रण |
| डेटा प्रविष्ट कराना | उपकरण की आवश्यकता है | में निर्मित |
| समानांतर परीक्षण | एक बार में एक ही वाहन | एकाधिक उदाहरण |
समस्या निवारण
सामान्य समस्याएं
CAN इंटरफ़ेस नहीं मिला
# Verify vcan0 exists
ip link show vcan0
# Recreate if needed
sudo scripts/test/j1939/setup-vcan.shकोई डीडीएस संदेश नहीं
# Check gateway is running
pgrep -a gva-j1939-gateway
# Verify domain ID matches
./build/bin/gva-j1939-gateway --domain=0
./build/bin/gva-vehicle-sim --domain=0गेटवे संदेशों को डिकोड नहीं कर पा रहा है
# Check CAN frames are being sent
candump vcan0
# Verify configuration file
cat /etc/gva/j1939-config.jsonआज ही डेमोस्ट्रेशन का अनुरोध करें।