ROBOWORKS Robofleet Orin Nano x3 ROS ரோபோ
சுருக்கம்
இந்த ஆவணம், wheeltec_multi எனப் பெயரிடப்பட்ட மல்டி-ரோபோட் ஃபேஷன் ஃபங்ஷன் தொகுப்பின் பயன்பாட்டை முக்கியமாக விளக்குகிறது.
இந்த ஆவணம் நான்கு பகுதிகளாக பிரிக்கப்பட்டுள்ளது:
- முதல் பகுதி முக்கியமாக மல்டி-ரோபோட் உருவாக்கும் முறையின் அறிமுகம் பற்றியது;
- இரண்டாவது பகுதி முக்கியமாக ROS மல்டி-மெஷின் தொடர்பு அமைப்புகளை விவரிக்கிறது, இதில் பல இயந்திர தகவல்தொடர்பு ROS கட்டுமானம் மற்றும் ROS தகவல்தொடர்பு செயல்பாட்டில் எதிர்கொள்ளக்கூடிய சிக்கல்கள்;
- மூன்றாவது பகுதி முக்கியமாக மல்டி-மெஷின் நேர ஒத்திசைவின் செயல்பாட்டு படிகளை விவரிக்கிறது;
- நான்காவது பகுதி பல இயந்திர உருவாக்கம் செயல்பாடு தொகுப்பின் குறிப்பிட்ட பயன்பாட்டை விளக்குகிறது.
இந்த ஆவணத்தின் நோக்கம் மல்டி-ஏஜென்ட் ரோபோடிக் சிஸ்டத்தின் அறிமுகம் மற்றும் மல்டி-ரோபோ உருவாக்கும் திட்டத்தை விரைவாக தொடங்க பயனரை அனுமதிக்கிறது.
மல்டி-ஏஜென்ட் அல்காரிதம்களுக்கான அறிமுகம்
பல முகவர் உருவாக்க வழிமுறைகள்
இந்த ROS தொகுப்பு ஒரு உருவாக்க இயக்கத்தின் போது கூட்டுக் கட்டுப்பாட்டில் பல முகவர்களின் பொதுவான சிக்கலை வழங்குகிறது. இந்த டுடோரியல் இந்த தலைப்பில் எதிர்கால வளர்ச்சிக்கு ஒரு அடித்தளத்தை அமைக்கிறது. உருவாக்கக் கட்டுப்பாட்டு அல்காரிதம் என்பது ஒரு பணியைச் செய்வதற்கு ஒரு குறிப்பிட்ட உருவாக்கத்தை உருவாக்க பல முகவர்களைக் கட்டுப்படுத்தும் ஒரு வழிமுறையைக் குறிக்கிறது. ஒத்துழைப்பு என்பது ஒரு பணியை முடிக்க ஒரு குறிப்பிட்ட கட்டுப்பாட்டு உறவைப் பயன்படுத்தி பல முகவர்களுக்கு இடையிலான ஒத்துழைப்பைக் குறிக்கிறது. மல்டி-ரோபோட் ஃபார்மேஷன் டிரைவை முன்னாள் ஆக எடுத்துக் கொள்ளுங்கள்ample, collaboration என்பது பல ரோபோக்கள் இணைந்து விரும்பிய உருவாக்கத்தை உருவாக்குகிறது. அதன் சாராம்சம் ஒவ்வொரு ரோபோவின் நிலைகளுக்கும் இடையே ஒரு குறிப்பிட்ட கணித உறவு திருப்திகரமாக உள்ளது. உருவாக்கும் முறைகள் முக்கியமாக மையப்படுத்தப்பட்ட உருவாக்கம் கட்டுப்பாடு மற்றும் விநியோகிக்கப்பட்ட உருவாக்கம் கட்டுப்பாடு என பிரிக்கப்படுகின்றன. மையப்படுத்தப்பட்ட உருவாக்கக் கட்டுப்பாட்டு முறைகளில் முக்கியமாக மெய்நிகர் கட்டமைப்பு முறை, வரைகலை கோட்பாடு முறை மற்றும் மாதிரி முன்கணிப்பு முறை ஆகியவை அடங்கும். விநியோகிக்கப்பட்ட உருவாக்கக் கட்டுப்பாட்டு முறைகளில் முக்கியமாக தலைவர்-பின்தொடர்பவர் முறை, நடத்தை அடிப்படையிலான முறை மற்றும் மெய்நிகர் கட்டமைப்பு முறை ஆகியவை அடங்கும்.
இந்த ROS தொகுப்பு மல்டி-ரோபோட் ஃபார்மேஷன் டிரைவை இயக்க விநியோகிக்கப்பட்ட உருவாக்கக் கட்டுப்பாட்டு முறையில் லீடர்-ஃபாலோவர் முறையைப் பயன்படுத்துகிறது. உருவாக்கத்தில் ஒரு ரோபோ தலைவராக நியமிக்கப்பட்டுள்ளது, மற்ற ரோபோக்கள் தலைவரைப் பின்பற்ற அடிமைகளாக நியமிக்கப்படுகின்றன. குறிப்பிட்ட திசை மற்றும் வேகத்துடன் பின்வரும் ரோபோக்களால் கண்காணிக்கப்பட வேண்டிய ஆயங்களை அமைக்க, முன்னணி ரோபோவின் இயக்கப் பாதையை அல்காரிதம் பயன்படுத்துகிறது. டிராக்கிங் ஆயங்களிலிருந்து நிலை விலகல்களைச் சரிசெய்வதன் மூலம், பின்தொடர்பவர்கள் இறுதியில் பின்தொடர்பவருக்கும் எதிர்பார்க்கப்படும் கண்காணிப்பு ஆயங்களுக்கும் இடையிலான விலகலை பூஜ்ஜியமாகக் குறைப்பார்கள். இந்த வழியில், அல்காரிதம் ஒப்பீட்டளவில் குறைவான சிக்கலானது.
தடைகளைத் தவிர்ப்பதற்கான வழிமுறைகள்
ஒரு பொதுவான தடையைத் தவிர்ப்பதற்கான வழிமுறையானது செயற்கையான சாத்தியமான புல முறை ஆகும். இயற்பியல் சூழலில் ரோபோவின் இயக்கம் ஒரு மெய்நிகர் செயற்கை விசை புலத்தில் ஒரு இயக்கமாக கருதப்படுகிறது. அருகில் உள்ள தடையை LiDAR அடையாளம் காட்டுகிறது. தடையானது ரோபோவிற்கு விரட்டலை உருவாக்க ஒரு விரட்டும் விசை புலத்தை வழங்குகிறது மற்றும் இலக்கு புள்ளி ரோபோவிற்கு ஈர்ப்பு விசையை உருவாக்க ஒரு ஈர்ப்பு புலத்தை வழங்குகிறது. இந்த வழியில், இது விரட்டுதல் மற்றும் ஈர்ப்பு ஆகியவற்றின் ஒருங்கிணைந்த செயல்பாட்டின் கீழ் ரோபோவின் இயக்கத்தை கட்டுப்படுத்துகிறது.
இந்த ROS தொகுப்பு செயற்கையான சாத்தியக்கூறு முறையின் அடிப்படையில் மேம்படுத்தப்பட்டதாகும். முதலாவதாக, உருவாக்க வழிமுறையானது ஸ்லேவ் பின்தொடர்பவரின் நேரியல் மற்றும் கோண வேகத்தைக் கணக்கிடுகிறது. பின்னர் அது தடைகளைத் தவிர்ப்பதற்கான தேவைகளுக்கு ஏற்ப நேரியல் மற்றும் கோண வேகத்தை அதிகரிக்கிறது அல்லது குறைக்கிறது. அடிமைப் பின்தொடர்பவருக்கும் தடைக்கும் இடையே உள்ள தூரம் நெருக்கமாக இருக்கும்போது, அடிமைப் பின்தொடர்பவருக்குத் தடையின் விரட்டும் சக்தி அதிகமாக இருக்கும். இதற்கிடையில் நேரியல் திசைவேகத்தின் மாற்றம் மற்றும் கோண திசைவேக மாறுபாடுகள் அதிகமாக இருக்கும். தடையானது ஸ்லேவ் பின்தொடர்பவரின் முன்பக்கத்திற்கு நெருக்கமாக இருக்கும்போது, அடிமைப் பின்தொடர்பவருக்கு தடையின் விலக்கம் அதிகமாகிறது (முன் விரட்டுவது மிகப்பெரியது மற்றும் பக்க விரட்டல் சிறியது). இதன் விளைவாக, நேரியல் வேகம் மற்றும் கோண வேகத்தின் மாறுபாடுகள் அதிகமாக இருக்கும். செயற்கை சாத்தியமான புல முறை மூலம், அது ஒரு தீர்வை மேம்படுத்துகிறது
ஒரு ரோபோ ஒரு தடைக்கு முன்னால் பதிலளிப்பதை நிறுத்தும்போது. இது சிறந்த தடைகளைத் தவிர்ப்பதற்கான ஒரு நோக்கத்திற்காக உதவுகிறது.
மல்டி-ஏஜென்ட் கம்யூனிகேஷன் அமைப்பு
மல்டி-ஏஜென்ட் கம்யூனிகேஷன் என்பது மல்டி-ரோபோ உருவாக்கத்தை நிறைவு செய்வதற்கான முக்கிய படிகளில் ஒன்றாகும். பல ரோபோக்களின் தொடர்புடைய நிலைகள் தெரியாதபோது, ரோபோக்கள் இணைப்புகளை நிறுவுவதற்கு வசதியாக தகவல்தொடர்பு மூலம் ஒருவருக்கொருவர் தகவல்களைப் பகிர்ந்து கொள்ள வேண்டும். ROS விநியோகிக்கப்பட்ட கட்டமைப்பு மற்றும் நெட்வொர்க் தகவல்தொடர்புகள் மிகவும் சக்திவாய்ந்தவை. இது இடை-செயல்முறை தகவல்தொடர்புக்கு மட்டுமல்ல, வெவ்வேறு சாதனங்களுக்கு இடையேயான தொடர்புக்கும் வசதியானது. நெட்வொர்க் தொடர்பு மூலம், அனைத்து முனைகளும் எந்த கணினியிலும் இயங்க முடியும். தரவு செயலாக்கம் போன்ற முக்கிய பணிகள் ஹோஸ்ட் பக்கத்தில் முடிக்கப்படுகின்றன. பல்வேறு உணரிகளால் சேகரிக்கப்பட்ட சுற்றுச்சூழல் தரவைப் பெறுவதற்கு அடிமை இயந்திரங்கள் பொறுப்பாகும். ROS இல் Master node ஐ இயக்கும் மேலாளர் இங்கே ஹோஸ்ட் ஆவார். தற்போதைய மல்டி-ஏஜென்ட் கம்யூனிகேஷன் ஃப்ரேம்வொர்க் ஒரு முனை மேலாளர் மற்றும் ஒரு அளவுரு மேலாளர் மூலம் பல ரோபோக்களிடையே தகவல்தொடர்புகளைக் கையாளுகிறது.
பல முகவர் தொடர்புகளை அமைப்பதற்கான படிகள்
அதே நெட்வொர்க்கில் ROS கட்டுப்பாடுகளை அமைக்கவும்
ஒரே நெட்வொர்க்கில் Master/Slave ROS கட்டுப்பாடுகளை அமைக்க 2 வழிகள் உள்ளன.
விருப்பம் 1:
Master Host ஆனது Master node manager ஐ இயக்குவதன் மூலம் உள்ளூர் வைஃபையை உருவாக்குகிறது. பொதுவாக, மாஸ்டராக நியமிக்கப்பட்ட ரோபோக்களில் ஒன்று இந்த வைஃபை நெட்வொர்க்கை உருவாக்குகிறது. பிற ரோபோக்கள் அல்லது மெய்நிகர் இயந்திரங்கள் இந்த வைஃபை நெட்வொர்க்கில் அடிமைகளாக இணைகின்றன.
விருப்பங்கள் 2:
உள்ளூர் வைஃபை நெட்வொர்க் மூன்றாம் தரப்பு திசைவி மூலம் தகவல் ரிலே மையமாக வழங்கப்படுகிறது. அனைத்து ரோபோக்களும் ஒரே திசைவியுடன் இணைக்கப்பட்டுள்ளன. இணைய இணைப்பு இல்லாமலும் ரூட்டரைப் பயன்படுத்தலாம். ரோபோக்களில் ஒன்றை முதன்மையாகத் தேர்ந்தெடுத்து, முதன்மை முனை மேலாளரை இயக்கவும். மற்ற ரோபோக்கள் அடிமைகளாக நியமிக்கப்பட்டு, மாஸ்டரிடமிருந்து முதன்மை முனை மேலாளரை இயக்குகின்றன.
எந்த விருப்பத்தைத் தேர்வு செய்வது என்பது உங்கள் திட்டத் தேவைகளைப் பொறுத்தது. தொடர்பு கொள்ள வேண்டிய ரோபோக்களின் எண்ணிக்கை பெரிய அளவில் இல்லை என்றால், விருப்பம் 1 பரிந்துரைக்கப்படுகிறது, ஏனெனில் இது செலவைச் சேமிக்கிறது மற்றும் அமைப்பது எளிது. ரோபோக்களின் எண்ணிக்கை அதிக அளவில் இருக்கும் போது, விருப்பம் 2 பரிந்துரைக்கப்படுகிறது. ROS மாஸ்டர் கட்டுப்பாட்டின் கம்ப்யூட்டிங் பவர் மீதான கட்டுப்பாடு மற்றும் வரையறுக்கப்பட்ட உள் வைஃபை அலைவரிசை ஆகியவை எளிதில் தாமதங்கள் மற்றும் நெட்வொர்க் இடையூறுகளை ஏற்படுத்தும். ஒரு திசைவி இந்த சிக்கல்களை எளிதாக சரிசெய்ய முடியும்.
மல்டி-ஏஜென்ட் தகவல்தொடர்புகளைச் செய்யும்போது, மெய்நிகர் இயந்திரம் ROS அடிமையாகப் பயன்படுத்தப்பட்டால், அதன் நெட்வொர்க் பயன்முறையை பிரிட்ஜ் பயன்முறையில் அமைக்க வேண்டும்.
மாஸ்டர்/ஸ்லேவ் சூழல் மாறிகளை உள்ளமைக்கவும்
அனைத்து ROS மாஸ்டர்களும் ஒரே நெட்வொர்க்கில் இருந்த பிறகு, பல முகவர் தகவல்தொடர்புக்கான சூழல் மாறிகள் அமைக்கப்பட வேண்டும். இந்த சூழல் மாறி .bashrc இல் கட்டமைக்கப்பட்டுள்ளது file முக்கிய கோப்பகத்தில். அதை துவக்க gedit ~/.bashrc கட்டளையை இயக்கவும். .bashrc இரண்டும் என்பதை கவனத்தில் கொள்ளவும் fileமல்டி-ஏஜென்ட் தகவல்தொடர்புகளில் எஜமானர் மற்றும் அடிமையின் கள் கட்டமைக்கப்பட வேண்டும். மாற்றப்பட வேண்டியவை IP முகவரிகளின் முடிவில் இருக்கும் file. படம் 2-1-4 இல் காட்டப்பட்டுள்ளபடி, இரண்டு வரிகள் ROS_MASTER_URI மற்றும் ROS_HOSTNAME ஆகும். ROS ஹோஸ்டின் ROS_MASTER_URI மற்றும் ROS_HOSTNAME இரண்டும் உள்ளூர் IPகள். ROS அடிமை .bashrc இல் உள்ள ROS_MASTER_URI file ROS_HOSTNAME ஆனது உள்ளூர் IP முகவரியாக இருக்கும் போது ஹோஸ்டின் IP முகவரிக்கு மாற்றப்பட வேண்டும்.
ROS பல இயந்திர தொடர்பு ROS வெளியீட்டு பதிப்பால் கட்டுப்படுத்தப்படவில்லை. மல்டிமெஷின் தகவல்தொடர்பு செயல்பாட்டில், பின்வருவனவற்றை ஒருவர் அறிந்திருக்க வேண்டும்:
- ROS ஸ்லேவ் நிரலின் செயல்பாடு ROS முதன்மை சாதனத்தின் ROS முதன்மை நிரலைப் பொறுத்தது.
ஸ்லேவ் சாதனத்தில் ஸ்லேவ் நிரலை இயக்கும் முன், ROS மாஸ்டர் நிரல் முதன்மை சாதனத்தில் முதலில் தொடங்க வேண்டும். - பல இயந்திர தகவல்தொடர்புகளில் முதன்மை மற்றும் அடிமை இயந்திரங்களின் ஐபி முகவரிகள் ஒரே நெட்வொர்க்கில் இருக்க வேண்டும். இதன் பொருள் IP முகவரி மற்றும் சப்நெட் மாஸ்க் ஒரே நெட்வொர்க்கில் உள்ளன.
- சூழல் உள்ளமைவில் ROS_HOSTNAME file லோக்கல் ஹோஸ்ட்டைப் பயன்படுத்த .bashrc பரிந்துரைக்கப்படவில்லை. ஒரு குறிப்பிட்ட ஐபி முகவரியைப் பயன்படுத்த பரிந்துரைக்கப்படுகிறது.
- ஸ்லேவ் ஐபி முகவரி சரியாக அமைக்கப்படவில்லை என்றால், ஸ்லேவ் சாதனம் இன்னும் ROS மாஸ்டரை அணுகலாம் ஆனால் கட்டுப்பாட்டு தகவலை உள்ளிட முடியாது.
- மெய்நிகர் இயந்திரம் பல முகவர் தகவல்தொடர்புகளில் பங்கேற்றால், அதன் பிணைய பயன்முறையை பிரிட்ஜ் பயன்முறையில் அமைக்க வேண்டும். பிணைய இணைப்புக்கு நிலையான ஐபியைத் தேர்ந்தெடுக்க முடியாது.
- மல்டி மெஷின் தொடர்பு முடியாது view அல்லது உள்நாட்டில் இல்லாத செய்தி தரவு வகை தலைப்புகளுக்கு குழுசேரவும்.
- ரோபோக்களுக்கு இடையிலான தொடர்பு வெற்றிகரமாக உள்ளதா என்பதைச் சரிபார்க்க, லிட்டில் டர்டில் சிமுலேஷன் டெமோவைப் பயன்படுத்தலாம்:
a. மாஸ்டரிடமிருந்து ஓடுங்கள்
ரோஸ்கோர் #ஆர்ஓஎஸ் சேவைகளை துவக்கவும்
rosrun turtlesim turtlesim_node #launch turtlesim இடைமுகம்
b. அடிமையிலிருந்து ஓடுங்கள்
rosrun turtlesim turtle_teleop_key #ஆமைக்கு விசைப்பலகை கட்டுப்பாட்டு முனையை துவக்கவும்
அடிமையின் கீபோர்டில் இருந்து ஆமை அசைவுகளை உங்களால் கையாள முடிந்தால், மாஸ்டர்/ஸ்லேவ் தொடர்பு வெற்றிகரமாக நிறுவப்பட்டுள்ளது என்று அர்த்தம்.
ROS இல் தானியங்கி வைஃபை இணைப்பு
ஹோஸ்ட் நெட்வொர்க் அல்லது ரூட்டர் நெட்வொர்க்குடன் தானாக இணைக்க ரோபோவை எவ்வாறு கட்டமைப்பது என்பதை கீழே உள்ள நடைமுறைகள் விளக்குகின்றன.
ஜெட்சன் நானோவிற்கான தானியங்கி வைஃபை இணைப்பு அமைவு
- ஜெட்சன் நானோவை VNC ரிமோட் டூல் அல்லது நேரடியாக கணினித் திரையில் இணைக்கவும். மேல் வலது மூலையில் உள்ள வைஃபை ஐகானைக் கிளிக் செய்து, "இணைப்புகளைத் திருத்து.." என்பதைக் கிளிக் செய்யவும்.
- பிணைய இணைப்புகளில் + பொத்தானைக் கிளிக் செய்யவும்:
- "இணைப்பு வகையைத் தேர்ந்தெடு" சாளரத்தின் கீழ், கீழ்தோன்றும் மெனுவைக் கிளிக் செய்து, "உருவாக்கு..." பொத்தானைக் கிளிக் செய்யவும்:
- கண்ட்ரோல் பேனலில், வைஃபை விருப்பத்தை கிளிக் செய்யவும். "இணைப்பு பெயர்" மற்றும் SSID புலங்களில் இணைக்க Wifi பெயரை உள்ளிடவும். "முறை" கீழ்தோன்றும் மெனுவில் "கிளையண்ட்" என்பதைத் தேர்ந்தெடுத்து, "சாதனம்" கீழ்தோன்றும் மெனுவில் "wlan0" என்பதைத் தேர்ந்தெடுக்கவும்.
- கண்ட்ரோல் பேனலில், "பொது" விருப்பத்தை கிளிக் செய்து, "இந்த நெட்வொர்க்குடன் தானாக இணைக்கவும்..." என்பதை சரிபார்க்கவும். "தானாகச் செயல்படுத்துவதற்கான இணைப்பு முன்னுரிமை" விருப்பத்தில் இணைப்பு முன்னுரிமையை 1க்கு அமைக்கவும். "அனைத்து பயனர்களும் இந்த நெட்வொர்க்குடன் இணைக்கலாம்" விருப்பத்தை சரிபார்க்கவும். மற்ற வைஃபைக்கான “தானியங்கிச் செயல்படுத்தலுக்கான இணைப்பு முன்னுரிமை” என்பதில் விருப்பம் 0 என அமைக்கப்பட்டால், இதுவே கடந்த காலத்தில் விருப்பமான வைஃபை நெட்வொர்க் என்று அர்த்தம்.
- கண்ட்ரோல் பேனலில் "வைஃபை பாதுகாப்பு" விருப்பத்தை கிளிக் செய்யவும். "பாதுகாப்பு" புலத்தில் "WPA & WPA2 தனிப்பட்ட" என்பதைத் தேர்ந்தெடுக்கவும். பின்னர் வைஃபை கடவுச்சொல்லை உள்ளிடவும்
குறிப்பு:
வைஃபை முன்னுரிமை 0 ஆக அமைக்கப்பட்டிருக்கும் போது, ரோபோட் பூட் ஆன பிறகு தானாகவே வைஃபை நெட்வொர்க்குடன் இணைக்க முடியாவிட்டால், அது பலவீனமான வைஃபை சிக்னலின் சிக்கலால் ஏற்படலாம். இந்தச் சிக்கலைத் தவிர்க்க, கடந்த காலத்தில் இணைக்கப்பட்ட அனைத்து வைஃபை விருப்பங்களையும் நீக்க நீங்கள் தேர்வு செய்யலாம். ஹோஸ்ட் அல்லது ரூட்டரால் உருவாக்கப்பட்ட வைஃபை நெட்வொர்க்கை மட்டும் வைத்திருங்கள்.
பிணைய அமைப்புகளின் கட்டுப்பாட்டுப் பலகத்தில் உள்ள "IPv4 அமைப்புகள்" விருப்பத்தை கிளிக் செய்யவும். "முறை" புலத்தில் "கையேடு" விருப்பத்தைத் தேர்ந்தெடுக்கவும். பின்னர் "சேர்" என்பதைக் கிளிக் செய்து, "முகவரி" புலத்தில் அடிமை இயந்திரத்தின் ஐபி முகவரியை நிரப்பவும். "நெட்மாஸ்க்" புலத்தில் "24" ஐ நிரப்பவும். "கேட்வே" இல் ஐபி நெட்வொர்க் பிரிவில் நிரப்பவும். ஐபி நெட்வொர்க் பிரிவின் கடைசி மூன்று இலக்கங்களை "1" ஆக மாற்றவும். இந்த படிநிலையின் முக்கிய நோக்கம் ஐபி முகவரியை சரிசெய்வதாகும். இது முதன்முறையாக முடிந்த பிறகு, அதே WIFI உடன் இணைக்கும்போது IP முகவரி மாறாமல் இருக்கும்.
அனைத்து அமைப்புகளும் உள்ளமைக்கப்பட்ட பிறகு, அமைப்புகளைச் சேமிக்க "சேமி" என்பதைக் கிளிக் செய்யவும். சேமிப்பு வெற்றிகரமாக முடிந்த பிறகு, ரோபோ இயக்கப்பட்டிருக்கும் போது தானாகவே ஹோஸ்ட் அல்லது ரூட்டரின் நெட்வொர்க்குடன் இணைக்கப்படும்.
குறிப்பு:
- இங்கே அமைக்கப்பட்டுள்ள ஐபி முகவரியானது .bashrc இல் அமைக்கப்பட்டுள்ள IP முகவரியாக இருக்க வேண்டும் file பிரிவு 2.1 இல்.
- எஜமானர் மற்றும் ஒவ்வொரு அடிமையின் ஐபி முகவரி தனிப்பட்டதாக இருக்க வேண்டும்.
- மாஸ்டர் மற்றும் ஸ்லேவ் ஐபி முகவரிகள் ஒரே நெட்வொர்க் பிரிவில் இருக்க வேண்டும்.
- ஸ்லேவ் ரோபோவை இயக்கி தானாகவே வைஃபை நெட்வொர்க்குடன் இணைக்கும் முன், ஹோஸ்ட் அல்லது ரூட்டர் வைஃபை சிக்னலை அனுப்பும் வரை நீங்கள் காத்திருக்க வேண்டும்.
- அமைப்பு உள்ளமைக்கப்பட்ட பிறகு, வைஃபை இயக்கப்பட்டிருக்கும்போது ரோபோவால் தானாகவே வைஃபையுடன் இணைக்க முடியாவிட்டால், நெட்வொர்க் கார்டைச் செருகி, அவிழ்த்துவிட்டு மீண்டும் இணைக்க முயற்சிக்கவும்.
ராஸ்பெர்ரி பைக்கான தானியங்கி வைஃபை இணைப்பு அமைப்பு
ராஸ்பெர்ரி பைக்கான செயல்முறை ஜெட்சன் நானோவைப் போன்றது.
Jetson TX1க்கான தானியங்கி வைஃபை இணைப்பு அமைவு
ஜெட்சன் டிஎக்ஸ்1 இல் உள்ள அமைப்பு ஜெட்சன் நானோவில் உள்ளதைப் போலவே உள்ளது, ஆனால் ஜெட்சன் டிஎக்ஸ்1 நெட்வொர்க் அமைப்புகளின் கட்டுப்பாட்டுப் பலகத்தில் உள்ள “சாதனத்தில்” “wlan1” சாதனத்தைத் தேர்ந்தெடுக்க வேண்டும்.
மல்டி-ஏஜென்ட் ஒத்திசைவு அமைப்பு
மல்டி-ஏஜென்ட் உருவாக்கும் திட்டத்தில், பல முகவர் நேர ஒத்திசைவு அமைப்பு ஒரு முக்கியமான படியாகும். உருவாக்கத்தின் செயல்பாட்டில், ஒவ்வொரு ரோபோவின் ஒத்திசைவற்ற கணினி நேரத்தின் காரணமாக பல சிக்கல்கள் ஏற்படும். மல்டி-ஏஜென்ட் நேர ஒத்திசைவு இரண்டு சூழ்நிலைகளாக பிரிக்கப்பட்டுள்ளது, அதாவது மாஸ்டர் மற்றும் ஸ்லேவ் ரோபோக்கள் இரண்டும் நெட்வொர்க்குடன் இணைக்கப்பட்டுள்ள சூழ்நிலை மற்றும் நெட்வொர்க்கிலிருந்து துண்டிக்கப்பட்ட சூழ்நிலை.
வெற்றிகரமான மாஸ்டர்/ஸ்லேவ் நெட்வொர்க் இணைப்பு
பல முகவர் தகவல்தொடர்பு கட்டமைக்கப்பட்ட பிறகு, மாஸ்டர் மற்றும் ஸ்லேவ் இயந்திரங்கள் வெற்றிகரமாக பிணையத்துடன் இணைக்க முடிந்தால், அவை தானாகவே பிணைய நேரத்தை ஒத்திசைக்கும். இந்த வழக்கில், நேர ஒத்திசைவை அடைய கூடுதல் செயல்கள் தேவையில்லை.
நெட்வொர்க் துண்டிப்புகளை சரிசெய்தல்
பல முகவர் தகவல்தொடர்பு கட்டமைக்கப்பட்ட பிறகு, மாஸ்டர் மற்றும் ஸ்லேவ் சாதனங்கள் வெற்றிகரமாக பிணையத்துடன் இணைக்க முடியாவிட்டால், நேரத்தை கைமுறையாக ஒத்திசைக்க வேண்டியது அவசியம். நேர அமைப்பை முடிக்க தேதி கட்டளையைப் பயன்படுத்துவோம்.
முதலில், டெர்மினேட்டர் கருவியை நிறுவவும். டெர்மினேட்டர் கருவியில் இருந்து, மாஸ்டர் மற்றும் ஸ்லேவின் கட்டுப்பாட்டு முனையங்களை ஒரே முனைய சாளரத்தில் வைக்க சாளரத்தை பிரிக்கும் கருவியைப் பயன்படுத்தவும் (பிளவு சாளரத்தை அமைக்க வலது கிளிக் செய்து, வெவ்வேறு சாளரங்களில் ssh மூலம் மாஸ்டர் மற்றும் ஸ்லேவ் இயந்திரங்களில் உள்நுழையவும்) .
sudo apt-get install terminator # டெர்மினல் சாளரத்தை பிரிக்க டெர்மினேட்டரைப் பதிவிறக்கவும்
மேல் இடதுபுறத்தில் உள்ள பொத்தானைக் கிளிக் செய்து, [அனைவருக்கும் ஒளிபரப்பு]/[அனைத்தையும் ஒளிபரப்பு] விருப்பத்தைத் தேர்ந்தெடுத்து, பின்வரும் கட்டளையை உள்ளிடவும். எஜமானருக்கும் அடிமைக்கும் ஒரே நேரத்தை அமைக்க டெர்மினேட்டர் கருவியைப் பயன்படுத்தவும்.
sudo date -s “2022-01-30 15:15:00” # கைமுறை நேர அமைப்பு
மல்டி-ஏஜென்ட் ரோஸ் பேக்கேஜ்
ROS தொகுப்பு அறிமுகம்
அடிமை பெயரை அமைக்கவும்
n wheeltec_multi செயல்பாடு தொகுப்பில், பிழைகளைத் தவிர்ப்பதற்காக ஒவ்வொரு அடிமை ரோபோவிற்கும் ஒரு தனிப்பட்ட பெயரை அமைப்பது அவசியம். உதாரணமாகample, அடிமை1க்கான எண். 1 மற்றும் அடிமை2க்கு எண். 2 போன்றவை.
வெவ்வேறு பெயர்களை அமைப்பதன் நோக்கம், இயங்கும் முனைகளைக் குழுவாகக் கொண்டு அவற்றை வெவ்வேறு பெயர்வெளிகளால் வேறுபடுத்துவதாகும். உதாரணமாகample, slave 1 இன் ரேடார் தலைப்பு: /slave1/scan, மற்றும் slave 1 இன் LiDAR முனை: / slave1/laser.
அடிமை ஆயங்களை அமைக்கவும்
wheeltec_multi தொகுப்பு தனிப்பயன் அமைப்புகளை செயல்படுத்த முடியும். வெவ்வேறு வடிவங்கள் தேவைப்படும்போது, அடிமை ரோபோக்களின் தேவையான ஆயங்களை மாற்றவும். Slave_x மற்றும் slave_y என்பது அடிமையின் x மற்றும் y ஆயத்தொலைவுகள் மற்றும் முதன்மையான குறிப்பு புள்ளியாக இருக்கும். மாஸ்டரின் முன்புறம் x ஒருங்கிணைப்பின் நேர்மறை திசையாகும், மற்றும் இடது பக்கம் y ஒருங்கிணைப்பின் நேர்மறை திசையாகும். அமைப்பு முடிந்ததும், ஒரு TF coordinate slave1 அடிமையின் எதிர்பார்க்கப்படும் ஒருங்கிணைப்பாக வழங்கப்படும்.
ஒரு எஜமானரும் இரண்டு அடிமைகளும் இருந்தால், பின்வரும் உருவாக்கம் அமைக்கப்படலாம்:
- கிடைமட்ட உருவாக்கம்: நீங்கள் அடிமையின் ஆயங்களை இடதுபுறத்தில் அமைக்கலாம்: slave_x:0, slave_y: 0.8, மற்றும் வலதுபுறத்தில் அடிமையின் ஆயங்களை: slave_x:0, slave_y:-0.8.
- நெடுவரிசை உருவாக்கம்: ஒரு அடிமையின் ஆயத்தொகுப்புகளை பின்வருமாறு அமைக்கலாம்: slave_x:-0.8, slave_y:0, மற்றும் மற்ற அடிமையின் ஆயங்களை: slave_x:-1.8, slave_y:0 என அமைக்கலாம்.
- முக்கோண உருவாக்கம்: ஒரு அடிமையின் ஆயங்களை: slave_x:-0.8, slave_y: 0.8 என அமைக்கலாம், மற்ற அடிமையின் ஆயங்களை: slave_x:-0.8, slave_y:-0.8 என அமைக்கலாம்.
மற்ற அமைப்புகளை தேவைக்கேற்ப அமைத்துக்கொள்ளலாம்.
குறிப்பு
இரண்டு ரோபோக்களுக்கு இடையே பரிந்துரைக்கப்பட்ட தூரம் 0.8 ஆக அமைக்கப்பட்டுள்ளது, மேலும் இது 0.6க்கு குறைவாக இருக்க பரிந்துரைக்கப்படுகிறது. அடிமைகளுக்கும் எஜமானருக்கும் இடையிலான தூரம் 2.0 க்கு கீழே அமைக்க பரிந்துரைக்கப்படுகிறது. எஜமானரிடமிருந்து எவ்வளவு தூரம் இருக்கிறதோ, அந்த அடிமையின் நேரியல் வேகம் எஜமானர் திரும்பும்போது அதிகமாக இருக்கும். அதிகபட்ச வேகத்தின் வரம்பு காரணமாக, தேவைகளை பூர்த்தி செய்யாவிட்டால் அடிமையின் வேகம் விலகும். ரோபோ உருவாக்கம் குழப்பமாக மாறும்.
அடிமை நிலையின் துவக்கம்
அடிமையின் ஆரம்ப நிலை முன்னிருப்பாக எதிர்பார்க்கப்படும் ஆயங்களில் உள்ளது. நிரலை இயக்கும் முன், துவக்கத்தை முடிக்க ஸ்லேவ் ரோபோவை அதன் எதிர்பார்க்கப்படும் ஆயங்களுக்கு அருகில் வைக்கவும்.
இந்தச் செயல்பாடு pose_setter முனை மூலம் செயல்படுத்தப்படுகிறது file படம் 4-1-3 இல் காட்டப்பட்டுள்ளபடி, wheeltec_multi தொகுப்பில் turn_on_wheeltec_robot.launch என்று பெயரிடப்பட்டது.
பயனர் அடிமையின் ஆரம்ப நிலையைத் தனிப்பயனாக்க விரும்பினால், அவர் wheeltec_slave.launch இல் படம் 4-1-4 இல் காட்டப்பட்டுள்ளபடி slave_x மற்றும் slave_y மதிப்புகளை மட்டும் அமைக்க வேண்டும். slave_x மற்றும் slave_y மதிப்புகள் turn_on_wheeltec_robot.launch க்கு அனுப்பப்பட்டு pose_setter முனைக்கு ஒதுக்கப்படும். நிரலை இயக்கும் முன் ரோபோவை தனிப்பயன் நிலையில் வைக்கவும்.
நிலை கட்டமைப்பு
மல்டி ஏஜென்ட் உருவாக்கத்தில், எஜமானர் மற்றும் அடிமையின் நிலைப்பாடுதான் முதலில் தீர்க்கப்பட வேண்டிய பிரச்சனை. மாஸ்டர் முதலில் 2டி வரைபடத்தை உருவாக்குவார். வரைபடத்தை உருவாக்கி, சேமித்த பிறகு, 2டி வழிசெலுத்தல் தொகுப்பை இயக்கவும் மற்றும் மாஸ்டரின் பொசிஷனிங்கை உள்ளமைக்க 2டி வழிசெலுத்தல் தொகுப்பில் உள்ள அடாப்டிவ் மான்டே கார்லோ பொசிஷனிங் அல்காரிதம் (amcl பொசிஷனிங்) ஐப் பயன்படுத்தவும்.
எஜமானரும் அடிமைகளும் ஒரே நெட்வொர்க்கில் இருப்பதால், ஒரே முனை மேலாளரைப் பகிர்ந்துகொள்வதால், மாஸ்டர் 2டி வழிசெலுத்தல் தொகுப்பிலிருந்து வரைபடத்தைத் தொடங்கியுள்ளார், எல்லா அடிமைகளும் ஒரே முனை மேலாளரின் கீழ் ஒரே வரைபடத்தைப் பயன்படுத்தலாம். எனவே, அடிமை ஒரு வரைபடத்தை உருவாக்க வேண்டிய அவசியமில்லை. wheeltec_slave.launch இல், Monte Carlo பொசிஷனிங்கை (amcl பொசிஷனிங்) இயக்கவும், அடிமைகள் மாஸ்டர் உருவாக்கிய வரைபடத்தைப் பயன்படுத்தி தங்கள் நிலைகளை உள்ளமைக்க முடியும்.
உருவாக்கம் மற்றும் உருவாக்கத்தை எவ்வாறு உருவாக்குவது
உருவாக்கம் இயக்கத்தின் செயல்பாட்டில், முதன்மை இயக்கத்தை Rviz, விசைப்பலகை, ரிமோட் கண்ட்ரோல் மற்றும் பிற முறைகள் மூலம் கட்டுப்படுத்தலாம். அடிமை அதன் இயக்கத்தைக் கட்டுப்படுத்துவதற்கும் உருவாக்கத்தின் இலக்கை அடைவதற்கும் slave_tf_listener முனை மூலம் அதன் வேகத்தைக் கணக்கிடுகிறது.
slave_tf_listener முனை கணு கணக்கீட்டின் மூலம் அதிகப்படியான வேகத்தைத் தவிர்க்க அடிமை வேகத்தைக் கட்டுப்படுத்துகிறது, இது தொடர்ச்சியான தாக்கங்களை ஏற்படுத்தும். குறிப்பிட்ட மதிப்பை wheeltec_slave.launch இல் மாற்றலாம்.
உருவாக்க வழிமுறையின் தொடர்புடைய அளவுருக்கள் பின்வருமாறு:
உருவாக்கத்தில் தடையைத் தவிர்ப்பது
மல்டி-ஏஜென்ட் உருவாக்கத்தில், மாஸ்டர் தடையைத் தவிர்ப்பதற்கு மூவ்_பேஸ் முனையைப் பயன்படுத்தலாம். இருப்பினும், அடிமையின் துவக்கம் மூவ்_பேஸ் முனையைப் பயன்படுத்தாது. இந்த கட்டத்தில், ஸ்லேவ் திட்டத்தில் multi_avoidance முனை அழைக்கப்பட வேண்டும். தடைகளைத் தவிர்ப்பதற்கான முனை தொகுப்பில் இயல்பாகவே இயக்கப்படும். தேவைப்பட்டால், தடையைத் தவிர்க்கும் முனையை முடக்குவதற்கு, "தவறு" எனத் தவிர்க்கலாம்.
தடைகளைத் தவிர்க்கும் முனையின் சில தொடர்புடைய அளவுருக்கள் கீழே உள்ள படத்தில் காட்டப்பட்டுள்ளன, இங்கு பாதுகாப்பான_தூரம் என்பது தடையாக இருக்கும் பாதுகாப்பான தூர வரம்பாகும், மற்றும் ஆபத்து_தூரமானது தடையாக இருக்கும் ஆபத்தான தூர வரம்பாகும். தடையானது பாதுகாப்பான_தூரம் மற்றும் ஆபத்து_தொலைவுக்குள் இருக்கும்போது, அந்தத் தடையைத் தவிர்க்க அடிமை தன் நிலையைச் சரிசெய்கிறான். இடையூறு ஆபத்து_தூரத்தில் இருக்கும்போது, அடிமை தடையை விட்டு விரட்டுவான்.
செயல்பாட்டு செயல்முறை
செயல்படுத்தும் கட்டளையை உள்ளிடவும்
பல முகவர் உருவாக்கத்தைத் தொடங்குவதற்கு முன் தயாரிப்புகள்:
- எஜமானரும் அடிமையும் ஒரே நெட்வொர்க்குடன் இணைத்து, பல முகவர் தகவல்தொடர்புகளை சரியாக அமைக்கின்றனர்
- மாஸ்டர் முன்கூட்டியே 2டி வரைபடத்தை உருவாக்கி அதைச் சேமிக்கிறார்
- வரைபடத்தின் தொடக்கப் புள்ளியில் மாஸ்டர் வைக்கப்பட்டுள்ளார், மேலும் அடிமை துவக்க நிலைக்கு அருகில் வைக்கப்படுகிறார் (இயல்புநிலை அடிமை உருவாக்கும் நிலை)
- ஜெட்சன் நானோ/ராஸ்பெர்ரி பையில் தொலைவிலிருந்து உள்நுழைந்த பிறகு, நேரத்தை ஒத்திசைக்கவும்.
சூடோ தேதி -கள் “2022-04-01 15:15:00”
படி 1: மாஸ்டரிடமிருந்து 2D வரைபடத்தைத் திறக்கவும்.
roslaunch turn_on_wheeltec_robot navigation.launch
படி 2: அனைத்து அடிமைகளிடமிருந்தும் உருவாக்கும் திட்டத்தை இயக்கவும்.
roslaunch wheeltec_multi wheeltec_slave.launch
படி 3: மாஸ்டரிலிருந்து விசைப்பலகை கட்டுப்பாட்டு முனையைத் திறக்கவும் அல்லது முதன்மை இயக்கத்தை ரிமோட் கண்ட்ரோல் செய்ய ஜாய்ஸ்டிக் பயன்படுத்தவும்.
roslaunch wheeltec_robot_rc keyboard_teleop.launch
படி 4: (விரும்பினால்) Rviz இலிருந்து ரோபோ இயக்கங்களைக் கவனிக்கவும்.
rviz
குறிப்பு
- நிரலை இயக்கும் முன் நேர ஒத்திசைவு செயல்பாட்டை முடிக்க வேண்டும்.
- பல முகவர் உருவாக்கத்தின் மாஸ்டரைக் கட்டுப்படுத்தும் போது, கோண வேகம் மிக வேகமாக இருக்கக்கூடாது. பரிந்துரைக்கப்படும் நேரியல் வேகம் 0.2m/s, கோண வேகம் டிகிரி 0.3rad/s. எஜமானர் ஒரு திருப்பத்தை மேற்கொள்ளும்போது, அடிமை எஜமானரிடமிருந்து எவ்வளவு தூரத்தில் இருக்கிறாரோ, அவ்வளவு அதிக நேரியல் வேகம் தேவைப்படுகிறது. தொகுப்பில் உள்ள நேரியல் வேகம் மற்றும் கோண வேகத்தின் வரம்பு காரணமாக, அடிமை கார் தேவையான வேகத்தை அடைய முடியாத போது, உருவாக்கம் குழப்பமாக இருக்கும். ஒட்டுமொத்தமாக, அதிகப்படியான நேரியல் வேகம் ரோபோவை எளிதில் சேதப்படுத்தும்.
- அடிமைகளின் எண்ணிக்கை ஒன்றுக்கு மேற்பட்டதாக இருக்கும் போது, ROS ஹோஸ்டின் வரம்புக்குட்பட்ட ஆன்-போர்டு வைஃபை அலைவரிசை காரணமாக, பல முகவர் தகவல்தொடர்புகளில் குறிப்பிடத்தக்க தாமதங்கள் மற்றும் துண்டிக்கப்படுவது எளிது. ஒரு திசைவியைப் பயன்படுத்தி இந்த சிக்கலை நன்கு தீர்க்க முடியும்.
- பல-ரோபோ உருவாக்கத்தின் TF மரம் (2 அடிமைகள்): rqt_tf_tree
- பல-ரோபோ உருவாக்கத்தின் (2 அடிமைகள்) முனை உறவு வரைபடம்: rqt_graph
ஆவணங்கள் / ஆதாரங்கள்
![]() |
ROBOWORKS Robofleet Orin Nano x3 ROS ரோபோ [pdf] பயனர் கையேடு Orin Nano x3, Robofleet ROS ரோபோ, Robofleet ROS, ரோபோ, Robofleet Orin Nano x3 ROS ரோபோ, Robofleet Orin Nano x3, Orin Nano x3 ROS ரோபோ, Orin Nano x3 |