@小鱼 已解决!确实是ip不在同一子网下的问题,感谢指点!
重要提示
鱼香小铺正式开业,最低499可入手一台能建图会导航的移动机器人,淘宝搜店:鱼香ROS 或点击链接查看。
提问前必看的发帖注意事项—— 提问前必看!不符合要求的问题拒绝回答!!
社区使用指南—如何添加标签修改密码
提问前必看的发帖注意事项—— 提问前必看!不符合要求的问题拒绝回答!!
社区使用指南—如何添加标签修改密码
H
hunterlin1102 发布的最新帖子
-
跟着教程尝试连接wifi,启动agent后发现未连上
跟着《动手学ros2》教程学到wifi这一节时
(https://fishros.com/d2lros2/#/humble/chapt14/advance/3.无线通讯-了解传输原理 )跟着步骤新建工程,
在.init设置board_microros_transport = wifi,
添加了micro_ros_platformio依赖,
复制粘贴教程中的代码并修改了ip地址、wifi名称、wifi密码,
编译时有两处黄色warning,src/main.cpp: In function 'void setup()': src/main.cpp:20:69: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings] set_microros_wifi_transports("2201", "13958855067", agent_ip, 8888); ^ src/main.cpp:20:69: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
/home/hengte/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-uart.c: In function 'uartSetPins': /home/hengte/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-uart.c:153:9: warning: 'return' with no value, in function returning non-void return; ^~~~~~ /home/hengte/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-uart.c:149:6: note: declared here bool uartSetPins(uint8_t uart_num, int8_t rxPin, int8_t txPin, int8_t ctsPin, int8_t rtsPin)
啥也没动再次编译就没有黄色警告了,
下载代码后在终端启动agentdocker run -it --rm -v /dev:/dev -v /dev/shm:/dev/shm --privileged --net=host microros/micro-ros-agent:$ROS_DISTRO udp4 --port 8888 -v6
返回两行
[1712477096.644131] info | UDPv4AgentLinux.cpp | init | running... | port: 8888 [1712477096.644536] info | Root.cpp | set_verbose_level | logger setup | verbose_level: 6
在另一终端启动ros2 node list,发现没有形成“/microros_wifi”节点,情况如图:
按板子上的RST键后重试agent和ros2 node list,没有发生变化。
请问大家是哪一步出错了补充信息:
虚拟机是Ubuntu22.04,安装的ros2 Humble,连接的主控板为推荐的学习板esp32
wifi名称和密码用其他设备测试过并没有输错