Conectando com ethernet
Conecte o cabo Ethernet na interface do G1 e no computador host:
Porta Ethernet do host <--- Cabo Ethernet ---> Porta Ethernet do G1 (PC2)
192.168.123.x 192.168.123.164
O IP Ethernet do G1 é fixo em 192.168.123.164.
Usuário SSH: unitree, senha: 123.
Configurar a conexão Ethernet
-
Descubra o nome da interface Ethernet no host:
ip -4 addrProcure por uma interface do tipo
enp...oueth.... Exemplo de saída:1: lo: <LOOPBACK,UP,LOWER_UP> ...inet 127.0.0.1/8 ...3: enp194s0: <BROADCAST,MULTICAST,UP,LOWER_UP> ...inet 192.168.123.2/24 ...4: wlp195s0: <BROADCAST,MULTICAST,UP,LOWER_UP> ...inet 10.0.0.100/24 ...Neste exemplo, a interface Ethernet é
enp194s0. -
Verificar a camada física:
sudo apt updatesudo apt install -y ethtoolsudo ethtool enp194s0 | grep -E "Link detected|Speed|Duplex"Saída esperada:
Link detected: yesSe aparecer:
Link detected: noHá algum problema na camada física:
- Verifique se o cabo está conectado na porta Ethernet do G1.
- Empurre o conector até ouvir um clique.
- Teste com outro cabo Ethernet.
- Aguarde 1-2 minutos após ligar o robô.
- Reinicie o robô (power cycle).
- Teste a outra porta Ethernet do host, se houver.
-
Identifique o nome da conexão NetworkManager associada a ela:
nmcli con showExemplo de saída:
NAME UUID TYPE DEVICEnetplan-enp194s0 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ethernet enp194s0Aqui o nome da conexão é
netplan-enp194s0. -
Configure um IP fixo para o host na mesma sub-rede do G1. Vamos usar
192.168.123.2/24(um IP livre na rede192.168.123.x):sudo nmcli con mod "netplan-enp194s0" ipv4.method manual \ipv4.addresses 192.168.123.2/24 \ipv4.gateway "" ipv4.dns ""sudo nmcli con down "netplan-enp194s0"sudo nmcli con up "netplan-enp194s0"Caso não funcione, outra alternativa é configurar um IP fixo sem o netplan:
# Cria nova conexão estáticasudo nmcli con add type ethernet ifname enp194s0 con-name "static-enp194s0" \ipv4.method manual \ipv4.addresses 192.168.123.2/24 \connection.autoconnect yes \connection.autoconnect-priority 10# Desativa o autoconnect da conexão do netplansudo nmcli con mod "netplan-enp194s0" connection.autoconnect no# Troca a conexão ativasudo nmcli con down "netplan-enp194s0"sudo nmcli con up "static-enp194s0"O autoconnect-priority 10 garante que a sua nova conexão tem prioridade sobre a do netplan no boot.
Por que funciona? A conexão netplan-enp2s0 foi gerada pelo netplan e ele resiste a modificações nela. Criando uma nova com nome diferente, o NM gerencia ela de forma independente e o netplan não interfere.
Só tome cuidado: se em algum momento rodar sudo netplan apply, o netplan pode reativar a netplan-enp2s0. Mas enquanto não fizer isso, funciona normalmente.
-
Verifique se a configuração está correta:
ip -4 addr show dev enp194s0ip route get 192.168.123.164ping -c 4 192.168.123.164- O primeiro comando mostra o IP atribuído à interface.
- O segundo confirma a rota para o G1.
- O terceiro testa a conectividade.
-
Se o ping funcionar, prossiga para o SSH.
Conectar via SSH
ssh unitree@192.168.123.164
Verifique se os serviços do Unitree estão rodando:
ps aux | grep -i unitree
ps aux | grep -i dds
Dicas
Configurar atalho SSH no host
No computador host:
mkdir -p ~/.ssh
printf '\nHost g1\n HostName 192.168.123.164\n User unitree\n' >> ~/.ssh/config
chmod 600 ~/.ssh/config
ssh-keygen -t ed25519 -C "pc-to-g1"
ssh-copy-id g1
ssh g1
Logar comandos do G1 no host
No computador host:
script -a ~/logs/g1_$(date +%Y%m%d_%H%M%S).txt
ssh g1
Se precisar atualizar as chaves do apt no PC2 do Unitree
sudo apt install curl gnupg -y
curl -fsSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo gpg --dearmor -o /tmp/ros-archive-keyring.gpg
sudo mv /tmp/ros-archive-keyring.gpg /usr/share/keyrings/ros-archive-keyring.gpg
curl -fsSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
sudo apt update