VPN හරහා ROS 1 මාතෘකා: ප්රකාශිත අන්ත ලක්ෂ්යය අනුගමනය කරන්න
ROS 1 master ලියාපදිංචිය මාතෘකා දත්ත රැගෙන නොයයි. ප්රකාශිත නෝඩ් URI කියවන්න, එම ලිපිනය මාර්ගගත කළ හැකි කරන්න, පසුව ප්රකාශකයාගේ පෝට් අනුමත කරන්න.
ඔබේ වැඩස්ටේෂන් උමං මාර්ගය හරහා ROS 1 master වෙත ළඟා වන නමුත් මාතෘකා ලැයිස්තුව තවමත් හිස් ලෙස පෙනේ. මෙම රටාව සාමාන්යයි, මන්ද master ලියාපදිංචිය සහ මාතෘකා ප්රවාහනය වෙනස් සංවාද දෙකකි, සහ master හරහා යන්නේ පළමුවැන්න පමණි. පහත පිරික්සුම් ලැයිස්තුව දෙවන සංවාදය හරහා යයි: ප්රකාශකයා ප්රකාශ කරන අන්ත ලක්ෂ්යය, ග්රාහකයා ළඟා විය යුතු ලිපිනය, සහ දෙදෙනාට කතා කිරීමට ඉඩ දෙන අවසරය. මෙහි සියල්ල අදාළ වන්නේ පැරණි ROS 1 සඳහා පමණි, එහි Noetic ආධාරක කාලය 2025 මැයි මාසයේ අවසන් විය.
පියවර 1: master සම්බන්ධතාවය මාතෘකා සම්බන්ධතාවය නොවන බව ඔප්පු කරන්න
වැඩ කරන දේ සහ නොකරන දේ වෙන් කිරීමෙන් ආරම්භ කරන්න. සාර්ථක rostopic list එකක් ඔප්පු කරන්නේ ඔබේ ෂෙල් එක master හි XMLRPC පෝට් එකට ළඟා විය හැකි බවත් master මාතෘකා දන්නා බවත් පමණි; ග්රාහකයාට ප්රකාශකයා වෙත ළඟා විය හැකිද යන්න ගැන එය කිසිවක් නොකියයි. පහත විධාන තුන මෙම වෙනස දෘශ්ය කරයි, සහ සියල්ල කියවීමට පමණි.
echo "$ROS_MASTER_URI"
rostopic list
rostopic info /chatter
rostopic info හි ප්රතිදානය ප්රකාශකයාගේ නෝඩ් URI නම් කරයි, එය ප්රකාශකයාගේ සත්කාරකයේ ඇති XMLRPC ලිපිනයකි. ඔබේ ග්රාහකයා ඊළඟට ඇමතියේ එම ලිපිනයයි, එබැවින් ග්රාහකයා ධාවනය වන ඕනෑම තැනක සිට එය ළඟා විය හැකි විය යුතුය. එය රොබෝටයේම LAN තුළ පමණක් පවතින අතුරුමුහුණතක් වෙත යොමු වන්නේ නම්, master සෙවීම සාර්ථක වන අතර දත්ත කිසිදා නොපැමිණේ.
පියවර 2: ප්රකාශිත අන්ත ලක්ෂ්යය නෝඩයෙන්ම කියවන්න
ROS 1 එහි ප්රකාශිත සත්කාරක අනන්යතාවය ROS_IP හෝ ROS_HOSTNAME වෙතින් තෝරා ගනී, ඉන් එකක් සකසා ඇති විට, එසේ නොවේ නම් සත්කාරකයේම නාම විභේදනයට ආපසු යයි. සැබවින්ම ආරම්භ කළ ක්රියාවලියේ පරිසරය පරීක්ෂා කරන්න, මන්ද systemd ඒකකයක්, බහාලුමක් හෝ දෙවන ටර්මිනලයක් ඔබේ පරීක්ෂණය ක්රියාත්මක වූ ෂෙල් එකට වඩා වෙනස් අගයක් දැරිය හැකිය.
echo "$ROS_IP" "$ROS_HOSTNAME"
rosnode info /talker
getent hosts robot-host
සත්කාරක නාම ප්රකාශයක් ක්රියා කරන්නේ සෑම සමානයෙක්ම එම නාමය අදහස් කළ ළඟා විය හැකි ලිපිනයට විභේදනය කරන විට පමණි. එම නාමය රොබෝටයේම ජාලය තුළ පමණක් විභේදනය වන්නේ නම්, උමං මාර්ගයේ අනෙක් පස ඇති වැඩස්ටේෂන් එකට එය භාවිත කිරීමට කිසිදු මාර්ගයක් නැත, සහ DNS උපසර්ගයක් නොතලා යන VPN එකක් එම විසමතාවය තවත් නරක අතට හරවයි. රූප සටහන මාර්ගගත කර ඇති විට ROS_IP උමං ලිපිනයට සැකසීම කුඩා වෙනසකි. ඔබ තෝරන කුමක් වුවත්, එය දෙකෙළවරටම සටහන් කරන්න, මන්ද අනන්යතාවය ගැන එකඟ නොවන ප්රකාශකයෙක් සහ ග්රාහකයෙක් සාකච්ඡා කර පසුව සම්බන්ධ වීමට නොහැකි වනු ඇත.
ප්රකාශිත URI කිසිදු සමානයෙකුට මාර්ගගත කළ නොහැකි ලිපිනයක් භාවිත කරන්නේ නම් මෙහි නවතින්න. වැරදි අතුරුමුහුණතට විභේදනය වන නාමයක් කිසිදු ෆයර්වෝල කාර්යයකින් නොහැකි වේ.
පියවර 3: ප්රකාශිත ලිපිනය විභේදනය කළ හැකි සහ මාර්ගගත කළ එකක් කරන්න
URI අතේ තබාගෙන, ළඟා වීමේ හැකියාව රොබෝටයෙන් නොව ග්රාහකයාගේ සත්කාරකයෙන් පරීක්ෂා කරන්න. TCPROS පෝට් එක සාකච්ඡා වේලාවේ තෝරා ගැනේ, එබැවින් ප්රයෝජනවත් මුල් පරීක්ෂණය XMLRPC පෝට් එකයි, ප්රයෝජනවත් පසු පරීක්ෂණය ස්ථාපිත සොකට් එකයි. එක් දිශාවකට පමණක් පවතින මාර්ගයක් මාර්ගගත VPN වල සාමාන්ය අසාර්ථකත්වයකි, සහ ආපසු මාර්ගය ඉදිරි මාර්ගය තරම්ම වැදගත් වේ.
ip route get 10.70.0.2
nc -vz 10.70.0.2 33911
ss -tnp dst 10.70.0.2
මාර්ගගත TUN අතුරුමුහුණත රොබෝටයේ Ethernet කොටස නොදිගු කර මෙම IP සංවාද රැගෙන යයි, එය සාමාන්යයෙන් දුරස්ථ ක්රියාකරුවෙකුට අවශ්ය වේ. රැකියා තට්ටුවේ යමක් ඒ වෙනුවට broadcast හෝ multicast මත රඳා පවතී නම්, එම අවශ්යතාවය වෙන වෙනම ඇගයිය යුතුය; එක් මෙවලමක් සෑහීමට පත් කිරීම සඳහා උමං මාර්ගය TAP බවට පත් කිරීම සෑම සහභාගිවෙකුටම ජාලය පුළුල් කරයි.
මාර්ගය හෝ ආපසු මාර්ගය නොමැති නම් මෙහි නවතින්න. තමන්ගේම සත්කාරකයේ පිළිතුරු දෙන නමුත් වැඩස්ටේෂන් එකෙන් ළඟා විය නොහැකි ප්රකාශකයාට මාර්ගගත කිරීමේ ගැටලුවක් ඇත, ROS ගැටලුවක් නොවේ.
පියවර 4: සමාන සංවාදයට ඉඩ දී එක් මාතෘකාවක් නිරීක්ෂණය කරන්න
සාකච්ඡා කළ සංවාදයට අවශ්ය පෝට් පමණක් විවෘත කරන්න, සහ සෑම නියමයක්ම ප්රකාශිත සහභාගිවන්නන්ට සීමා කරන්න. master හි ශ්රාවකයා මාතෘකා බර සඳහා රිලේ එකක් නොවේ, එබැවින් එයට පමණක් අවසර දීමෙන් ප්රකාශකයාගේ අන්ත ලක්ෂ්යය වැසුණු තත්ත්වයේ පවතී. ROS ශ්රාවකයන් පොදු අන්තර්ජාලයට නිරාවරණය නොකර පෞද්ගලික VPN මායිමේ තබන්න.
rostopic hz /chatter
rostopic echo -n1 /chatter
rosnode ping /talker
සැබෑ ප්රකාශකයාගෙන් සැබෑ ග්රාහකයාට එක් හානිකර නොවන මාතෘකාවක් නිරීක්ෂණය කර ප්රකාශිත අන්ත ලක්ෂ්යය සහ පිළිතුරු මාර්ගය දෙකම තහවුරු කරන්න. එක් පණිවිඩයක් මාර්ගය ක්රියා කරන බව ඔප්පු කරයි; ස්ථාවර වේගයක් එය විවෘතව පවතින බව ඔප්පු කරයි. ක්රියාකාරක පාලනය සහ ආරක්ෂක පරීක්ෂණ මෙම ජාලයට පමණක් වන පරීක්ෂණයෙන් පිටත තබන්න, මන්ද ක්රියා කරන මාතෘකාවක් ක්රියා කරන රොබෝවක් සහතික නොකරයි. ඔබ නිරීක්ෂණය කළ ROS අනුවාදය සහ අන්ත ලක්ෂ්ය යුගලය සටහන් කරන්න, ඊළඟ පුද්ගලයාට රූප සටහන් වෙනසක් පසුබැසීමකින් වෙන් කර හඳුනා ගැනීමට හැකි වන පරිදි.
ප්රකාශිත URI ග්රාහකයාගෙන් ළඟා විය හැකි වූ විට, සාකච්ඡා කළ පෝට් එක එම සමානයාට පමණක් විවෘත වූ විට, එක් ප්රකාශිත මාතෘකාවක් ගලා යන විට, සහ පරිසර අගයන් සත්කාරක දෙකටම සටහන් කර ඇති විට පිරික්සුම් ලැයිස්තුව සම්පූර්ණ වේ. පැරණි ROS 1 මෙම ක්ෂේත්රයේ නිවැරදි කිරීම් නොලබනු ඇත, එබැවින් වාර්තාව යනු මිනිසුන් මාරු වූ පසුවත් ක්රියා කරන කොටසයි.