सीरियल क्लाइंट वायस क्लाइंट पर यादृच्छिक त्रुटियाँ लौटाता है


3

हम एक नए वायस क्लाइंट (Z90D7 मॉडल) का परीक्षण कर रहे हैं जिसमें पीसी के लिए सीरियल पोर्ट कनेक्शन है। हमारे पास एक बाहरी ग्राहक है जो उपकरणों के एक समर्पित टुकड़े का उपयोग करता है, हालांकि पीसी वह है जो हम परीक्षण के लिए उपयोग करते हैं। हम Citrix के माध्यम से ग्राहकों पर एक C # एप्लिकेशन चलाते हैं। जब हम उस एप्लिकेशन को चलाते हैं जिसे हम अपने पुराने वायस उपकरणों पर उपयोग कर रहे हैं, तो बिना किसी त्रुटि के सब कुछ ठीक चलता है। हालांकि, नए उपकरणों पर, धारावाहिक पोर्ट हर 10 प्रयासों में एक बार काम करता है। अन्य समय के सभी, यह मुझे एक या तो एक ओवररन त्रुटि, एक समानता त्रुटि या एक RXOver त्रुटि देगा।

मैंने लॉगिंग के माध्यम से सत्यापित किया है कि पोर्ट खुलता है और इसके खुलने के बाद कई कमांड निष्पादित होते हैं। हालाँकि, यादृच्छिक त्रुटियाँ होती हैं किसी भी वास्तविक डेटा से पहले भी प्रेषित किया जा सकता है। मैंने कई स्थानों पर पढ़ा है कि यह एक बफर मुद्दा हो सकता है, हालांकि मैंने किसी भी पोस्ट को डेटा प्राप्त होने से पहले होने वाली त्रुटियों का उल्लेख करते नहीं देखा है इसलिए मैं पूरी तरह से निश्चित हूं।

मैंने बिना किस्मत वाले हैंडशेकिंग और बड़े पढ़ने / लिखने वाले बफ़र्स का उपयोग करने की भी कोशिश की है। मैंने इस डिवाइस पर एक नया केबल और दूसरा COM पोर्ट आज़माया है, कोई किस्मत भी नहीं। हमारी डिफ़ॉल्ट सेटिंग्स हैं:

9600 बॉड, यहां तक ​​कि समता, 8 डेटा बिट्स, 1 स्टॉप बिट

यह देखते हुए कि यह Citrix पर चल रहा है, हमें भी करना होगा यहां दिखाए गए नेट उपयोग कमांड चलाएं कुछ भी करने से पहले। ऐसा नहीं करने पर सीरियल कनेक्शन हमेशा यह कहेगा कि यह जुड़ा हुआ है और कोई डेटा प्राप्त नहीं कर रहा है (यह पुराने उपकरणों पर भी होता है)। सटीक कमांड जिसे हम निष्पादित कर रहे हैं (ऐप का नाम बदलकर, निश्चित रूप से):

net use com1 /DELETE
net use com2 /DELETE
net use com1: \\client\com1:
net use com2: \\client\com2:
start /d "D:\myapp" MyApplication.exe

क्या किसी ने सीरियल पोर्ट से निपटा है, कभी इन तीन त्रुटियों को इस तरह से सुना है? क्या दोषपूर्ण पोर्ट (या दो दोषपूर्ण पोर्ट, बल्कि) के अलावा कुछ भी है जो इसका कारण बन सकता है? मैं सोच रहा हूं कि हार्डवेयर बफर साइज का मुद्दा हो सकता है, लेकिन इसे दूर करने का कोई तरीका नहीं खोज सकते।


1
सभी त्रुटियां यह कहती प्रतीत होती हैं कि डेटा गतिमान नहीं है, और दोनों दिशाओं में। RXOver प्राप्त बफर को जल्दी खाली नहीं कर रहा है। ओवररन सीरियल पोर्ट ड्राइवर है जो चिप को खाली नहीं करता है बफर को काफी तेजी से भेजता है। मुझे यकीन नहीं है कि हार्डवेयर बफर आकार को बढ़ाने का कोई तरीका मौजूद है। विंडोज बफर को एपीआई के माध्यम से बढ़ाया जा सकता है, लेकिन ड्राइवर इसे अनदेखा कर सकता है। मैं समस्या पर एक बेहतर परिप्रेक्ष्य पाने के लिए और अधिक उपकरण की कोशिश करूंगा, शायद कुछ संगतता समस्या, लेकिन मुझे सीरियल पोर्ट के साथ कोई प्रत्यक्ष अनुभव नहीं है।
harrymc

जवाबों:


1

सभी त्रुटियां यह कहती प्रतीत होती हैं कि डेटा गतिमान नहीं है, और दोनों दिशाओं में।

RXOver प्राप्त बफर को जल्दी खाली नहीं कर रहा है। ओवररन सीरियल पोर्ट ड्राइवर है जो चिप को खाली नहीं करता है बफर को काफी तेजी से भेजता है।

मुझे यकीन नहीं है कि हार्डवेयर बफर आकार को बढ़ाने का कोई तरीका मौजूद है। विंडोज बफर को एपीआई के माध्यम से बढ़ाया जा सकता है, लेकिन ड्राइवर इसे अनदेखा कर सकता है।

मेरा सुझाव है कि समस्या पर एक बेहतर परिप्रेक्ष्य प्राप्त करने के लिए अधिक उपकरण की कोशिश कर रहा है, हो सकता है कि आपके परीक्षण कंप्यूटर के साथ कुछ संगतता समस्या हो।

लेख 5 आम सीरियल पोर्ट समस्याएं ऐसी समस्याओं के कुछ संभावित कारणों को सूचीबद्ध करता है:

  • गलत संचार पैरामीटर
    दोनों उपकरणों को समान संचार मापदंडों के साथ स्थापित करने की आवश्यकता है, जिसमें बॉड रेट, समता, डेटा बिट्स की संख्या और स्टॉप बिट्स की संख्या शामिल है।

  • गलत सीरियल केबल

  • खराब सीरियल केबल
  • दोषपूर्ण वायरिंग

इससे पहले कि मैं यह पोस्ट करता, मेरी शुरुआती धारणा यह थी कि गलत पैरामीटर हैं। 9600-ई-8-1 और कोई हैंडशेकिंग के मेरे डिफ़ॉल्ट मापदंडों पर, मुझे ~ 25% सफलता मिली। मैंने डिफ़ॉल्ट पैरामीटर के सभी संभावित संयोजनों की कोशिश की, जो वायस डिवाइस अनुमति देगा, और हैंडशेकिंग के साथ 1200-ई-8-1 का सबसे अच्छा कॉन्फ़िगरेशन अभी भी केवल ~ 75% समय काम करता है। अगर मैं मैनुअली 1200 से कम बॉड रेट सेट करने की कोशिश करता हूं, तो यह काम करना बंद कर देता है। हालाँकि मैं मापदंडों का एक कार्य समूह नहीं खोज सका, आपकी जानकारी कम से कम सहायक थी। इसलिए, मैंने आपको इनाम दिया। आपकी सहायता के लिए धन्यवाद। विभिन्न उपकरणों की कोशिश करने का समय।
Big EMPin
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.