1. PC 설정 (Windows 11 + WSL 2)
가장 중요한 단계다. WSL의 네트워크 문제를 해결하지 않으면 로봇과 통신할 수 없다.
1-1. 윈도우 네트워크 설정 (핵심)
- 네트워크 프로필 변경:
설정 > 네트워크 및 인터넷 > Wi-Fi > 속성- 네트워크 프로필 유형을 [공용(Public)]에서 [개인(Private)]으로 변경.
- 이유: 공용 네트워크는 로봇에서 들어오는 신호(Inbound)를 차단함.
- WSL 미러링 모드 적용:
- 경로:
C:\\Users\\<사용자명>\\.wslconfig(파일이 없으면 생성) - 내용 입력:
[wsl2] networkingMode=mirrored firewall=true - 적용: PowerShell(관리자)에서
wsl --shutdown후 다시 실행. - 확인: WSL 터미널에서
hostname -I입력 시192.168.x.x(공유기 대역)가 나와야 함.
- 경로:
- 방화벽 설정:
- 네트워크 프로필 유횽이 [개인]이 아니면 아래의 방화벽 설정이 동작하지 않는다.
New-NetFirewallRule -DisplayName "Allow_Robot_Inbound" -Direction Inbound -Action Allow -Protocol UDP -RemoteAddress 192.168.1.200
#파이어월에게 "Allow_Robot_Inbound"라는 이름을 가진 규칙을 만들어.
#패킷은 인바우드, 통과시킬 패킷은 UDP인데 발신컴은 192.168.1.200이야.
Name : {a1fd59cd-92d3-4bfd-a9a3-9d7593ca8612}
DisplayName : Allow_Robot_Inbound
Description :
DisplayGroup :
Group :
Enabled : True
Profile : Any
Platform : {}
Direction : Inbound
Action : Allow
EdgeTraversalPolicy : Block
LooseSourceMapping : False
LocalOnlyMapping : False
Owner :
PrimaryStatus : OK
Status : 저장소에서 규칙을 구문 분석했습니다. (65536)
EnforcementStatus : NotApplicable
PolicyStoreSource : PersistentStore
PolicyStoreSourceType : Local
RemoteDynamicKeywordAddresses : {}
PolicyAppId :
PS C:\Windows\system32>
윈도우즈10에서 매우 복잡하게 브릿지모드를 이용해서 로봇과 연결했지만, wsl에서 웹캠을 등록하는 과정에서 문제가 발생하였다.
[ WARN:0@0.025] global cap_v4l.cpp:999 open VIDEOIO(V4L2:/dev/video0): can't open camera by index [ERROR:0@0.029] global obsensor_uvc_stream_channel.cpp:158 getStreamChannelGroup Camera index out of range 캠을 열 수 없습니다.
다시 확인해 보니, 랩톱이 윈도우즈 11이라 IP 미러링으로 간단히 연결하려고 했는데, 로봇과 통신 문제가 발생했다. 본 글은 윗 문제에 대한 트러블슈팅이다.
> usbipd attach --wsl --busid 2-4 usbipd: info: Using WSL distribution 'Ubuntu-22.04' to attach; the device will be available in all WSL 2 distributions. usbipd: info: Loading vhci_hcd module. usbipd: info: Detected networking mode 'mirrored'. usbipd: info: Using IP address 127.0.0.1 to reach the host. PS C:\Windows\system32>