< >
Home » Turtlebot4快速入门教程_视频版 » TurtleBot4快速入门教程-网络配置(含视频)

TurtleBot4快速入门教程-网络配置(含视频)

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

说明:

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

相关设备

Create® 3底盘配置

  • 开机后,同时按下Create® 3按钮12,直到光环变为蓝色

请输入图片描述

  • Create® 3 现在处于AP模式,使用笔记本或手机连接到名为“Create-XXXX”的WiFi网络

  • 在浏览器中进入192.168.10.1的页面,同时点击左上菜单栏的Connect标签页

请输入图片描述

  • 输入当前使用的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地址

请输入图片描述

  • 对于TurtleBot 4 Lite,需要通过在远程PC上查看/ip话题内容来获取当前树莓派的ip地址
$ source /opt/ros/galactic/setup.bash
$ ros2 topic echo /ip

请输入图片描述

  • 如果AP模式,可能没有正确配置到wifi,也可以使用有线配置,用网线路由器和树莓派的网口,树莓派会自动获取ip

    • 确认设备方法一: 通过访问路由器主页查看自动获取IP的列表清单,查看主机名为ubuntu的设备对应的IP

    • 确认设备方法二: nmap查找主机名为ubuntu的设备对应的IP

  • 可以尝试使用nmap方式搜索当前网段所有ip地址

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

请输入图片描述

  • 找到 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
  • 修改后保存,重启树莓派

  • 查看对应的IP

$ ifconfig
eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether e4:5f:01:bd:05:df  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 2995  bytes 813658 (813.6 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2995  bytes 813658 (813.6 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

usb0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.186.3  netmask 255.255.255.0  broadcast 192.168.186.255
        inet6 fe80::7cbe:48ff:fe08:eea5  prefixlen 64  scopeid 0x20<link>
        ether 7e:be:48:08:ee:a5  txqueuelen 1000  (Ethernet)
        RX packets 61  bytes 7966 (7.9 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 510  bytes 80764 (80.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.41  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::e65f:1ff:febd:5e0  prefixlen 64  scopeid 0x20<link>
        ether e4:5f:01:bd:05:e0  txqueuelen 1000  (Ethernet)
        RX packets 8562  bytes 11233766 (11.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4708  bytes 572935 (572.9 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

演示视频

  • TurtleBot4-Create®3底盘连接本地WiFi网络
  • TurtleBot4-树莓派4通过有线连接设置网络
  • TurtleBot4-树莓派4连接本地WiFi网络
  • TurtleBot4-树莓派4设置固定IP

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: none