आप ser2net
और के संयोजन का उपयोग कर सकते हैं socat
। उदाहरण के लिए, मेरे पास एक रोबोट है जो एक सीरियल पोर्ट के माध्यम से रास्पबेरी पाई से जुड़ा हुआ है। रास्पबेरी पाई मेरे स्थानीय नेटवर्क (आपके 2 पीसी के बराबर) से जुड़ी है। और मेरा लैपटॉप एक ही स्थानीय नेटवर्क (आपके 1 पीसी के बराबर) से जुड़ा हुआ है। फिर मैं 2 पीसी से टीसीपी के माध्यम से सीरियल पोर्ट को आगे बढ़ाने के लिए सीरनेट का उपयोग करता हूं, और socat
1 पीसी पर उपयोग करके एक प्रॉक्सी सीरियल डिवाइस फ़ाइल बनाता हूं ।
यह सेटअप आपके लिए भी काम कर सकता है। प्रस्तावित समाधान:
चरण 1: अपने दूसरे पीसी पर (अपने आरेख के बाद) सेरनेट पैकेज स्थापित करें
sudo apt-get install ser2net
ser2net एक टीसीपी पोर्ट को सुनता है और टीसीपी पोर्ट के माध्यम से एक सीरियल पोर्ट से डेटा को पाइप करने में सक्षम है। आप सेट कर सकते हैं कि कौन से सीरियल पोर्ट आप इसकी कॉन्फ़िगरेशन फ़ाइल के माध्यम से "प्रॉक्सी" बनाना चाहते हैं /etc/ser2net.conf
।
चरण 2: 2 पीसी में सेरनेट को कॉन्फ़िगर करें
उदाहरण के लिए, यदि आपके पास /dev/ttyACM0
बॉड्रेट से जुड़ा एक उपकरण है 115200
और इसे लोकलहोस्ट पोर्ट 3333 से परोसना चाहते हैं, तो आप निम्न लाइन को इसमें जोड़ सकते हैं/etc/ser2net.conf
3333:raw:0:/dev/ttyACM0:115200,remctl
कॉन्फ़िगरेशन फ़ाइल बनाई है, तो या तो दूसरे पीसी पर चलाकर ser2net शुरू करें:
ser2net
या (यदि यह पहले से ही चल रहा है, तो बस इसे नीचे के रूप में पुनरारंभ करें)
/etc/init.d/ser2net restart
यहां एक महत्वपूर्ण बात यह है कि रीमेकल विकल्प। यह डिवाइस से कनेक्ट करने के लिए क्लाइंट साइड (आपके आरेख में 1 पीसी) की अनुमति देता है और स्वतंत्र रूप से सीरियल कनेक्शन विकल्पों का चयन करता है। मुझे लगता है कि इस तरह से धारावाहिक संचार डेटा संग्रह कार्यक्षेत्र के दृष्टिकोण से पूरी तरह से पारदर्शी है। अधिक विवरण यहां देखें ।
चरण 3: डेटा संग्रह कार्य केंद्र (प्रथम पीसी) पर प्रॉक्सी सीरियल डिवाइस फ़ाइल सेट करें
(यदि आपके पास समाज नहीं है, तो sudo apt-get install socat
)
अंत में, 1st PC पर एक टर्मिनल में socat
एक प्रॉक्सी सीरियल पोर्ट बनाएं जो tcp पोर्ट से सुनेगा:
socat pty,link=$HOME/MyProxySerialPort,waitslave tcp:$ip:$port,forever,reuseaddr,keepalive
कहाँ, इस उदाहरण में ip=<2nd-PC-IP-address>
और port=3333
(या जब आप /etc/ser2net.conf
2 पीसी पर स्थापित करते समय जो कुछ भी चुना है )।
चरण 4: MyProxySerialPort से कनेक्ट करें
अब आपको $HOME/MyProxySerialPort
1 पीसी पर स्थित डिवाइस पर सामान्य रूप से एक सीरियल कनेक्शन खोलने में सक्षम होना चाहिए ।
इस ब्लॉग पोस्ट में इस सेटअप के बारे में कुछ और जानकारी भी है: http://techtinkering.com/2013/04/02/connecting-to-a-remote-serial-port-over-tcpip/