系列文章目录: 


说明:

  • 本教程主要介绍Turtlebot4的网络配置

Create® 3底盘配置

  • 开机后,同时按下Create® 3按钮​​1​​​和​​2​​,直到光环变为蓝色
  • Create® 3 现在处于AP模式,使用笔记本或手机连接到名为“Create-XXXX”的WiFi网络

  • 在浏览器中进入​​192.168.10.1​​​的页面,同时点击左上菜单栏的​​Connect​​标签页
  • TurtleBot4快速入门教程-网络配置_机器人


  • 输入当前使用的WiFi名称和密码,然后点击​​Connect​
  • 当底盘连接上Wifi后,会播放一段铃声
  • 同时在远程PC上,输入以下命令检查下底盘是否成功连上WiFi

$ ros2 topic list
/battery_state
/cmd_audio
/cmd_lightring
/cmd_vel
/dock
/hazard_detection
/imu
/interface_buttons
/ir_intensity
/ir_opcode
/kidnap_status
/mouse
/odom
/parameter_events
/robot_state/transition_event
/rosout
/slip_status
/static_transform/transition_event
/stop_status
/system_monitor/transition_event
/tf
/tf_static
/wheel_status
/wheel_ticks
/wheel_vels

  • 正常配置成功情况下,终端上会显示以上内容

树莓派pi配置

  • 第一次启动时,树莓派会启动AP模式,使用远程PC连接到树莓派的WiFi网络
  • 树莓派的WiFi网络名称为​​Turtlebot4​​​,密码也为​​Turtlebot4​

注意:树莓派4的AP网络为5G频段,使用的远程PC需要支持5GHz WiFi才能连接上WiFi

  • 树莓派的默认用户名为 ​​ubuntu​​​,密码为​​turtlebot4​
  • 在​​/usr/local/bin​​目录中会有一个名为 wifi.sh 的脚本,可以用来配置树莓派的 WiFi:

## 模板
$ sudo wifi.sh -s '<WIFI_SSID>' -p '<WIFI_PASSWORD>' -r <REGULATORY_DOMAIN> && sudo reboot

## 示例
$ sudo wifi.sh -s 'ChuangKeZhiZao' -p '12345678' -r 'CN' && sudo reboot

​REGULATORY_DOMAIN​​​为你当前所处的国家/地区。中国:​​CN​​​、美国:​​US​​​、加拿大:​​CA​​​、英国:​​GB​​​,德国:​​DE​​​,日本: ​​JP3​​​,西班牙:​​ES​​​。如需完整列表,请单击​​此处​

  • 重启后,正常情况下,TurtleBot 4上的显示屏将会显示其当前的ip地址
  • TurtleBot4快速入门教程-网络配置_turtlebot4_02



  • 对于TurtleBot 4 Lite,需要通过在远程PC上查看​​/ip​​话题内容来获取当前树莓派的ip地址

$ source /opt/ros/galactic/setup.bash
$ ros2 topic echo /ip


  • TurtleBot4快速入门教程-网络配置_树莓派_03

  • 如果AP模式,可能没有正确配置到wifi,也可以使用有线配置,用网线路由器和树莓派的网口,树莓派会自动获取ip
  • 确认设备方法一: 通过访问路由器主页查看自动获取IP的列表清单,查看主机名为ubuntu的设备对应的IP
  • 确认设备方法二: nmap查找主机名为ubuntu的设备对应的IP
  • 可以尝试使用nmap方式搜索当前网段所有ip地址

## 将下面的 192.168.1 替换为你当前使用的子网
$ nmap -sP 192.168.1.0/24

TurtleBot4快速入门教程-网络配置_网络_04

  • 找到 IP 地址后,您现在可以使用它通过ssh连接回树莓派上

## TB4的树莓派的默认用户名为 ubuntu ,密码为 turtlebot4
$ ssh ubuntu@xxx.xxx.xxx.xxx

  • 如果需要将树莓派重新设置为AP模式,则运行以下命令

$ sudo wifi.sh -a

  • 如果需要设置固定ip,可根据以下方式来设置

​注意​​:如果固定ip设置失败,可能会导致无法再连接到本地网络。此时需要用有线连接方式去重新连接本地网络

  • [TurtleBot SBC] 远程进入到树莓派,修改​​/etc/netplan​​​目录下的​​50-cloud-init.yaml​​文件

$ sudo vim /etc/netplan/50-cloud-init.yaml 
network:
version: 2
ethernets:
eth0:
dhcp4: true
optional: true
addresses: [192.168.185.3/24]
usb0:
dhcp4: false
optional: true
addresses: [192.168.186.3/24]
version: 2
wifis:
renderer: NetworkManager
wlan0:
optional: true
access-points:
ChuangKeZhiZao:
password: 12345678
# mode: ap
# band: 5GHz
dhcp4: true

  • 主要是修改wlan0部分的设置,修改示例参考下图,根据当前使用的子网来设置固定Ip和网关

network:
version: 2
ethernets:
eth0:
dhcp4: true
optional: true
addresses: [192.168.185.3/24]
usb0:
dhcp4: false
optional: true
addresses: [192.168.186.3/24]
version: 2
wifis:
renderer: NetworkManager
wlan0:
optional: true
dhcp4: no
dhcp6: no
addresses: [192.168.0.41/24]
gateway4: 192.168.0.1
nameservers:
addresses: [223.5.5.5, 8.8.8.8]
access-points:
ChuangKeZhiZao:
password: 12345678
# mode: ap
# band: 5GHz

  • 修改后保存,重启树莓派