esp32和ros2之奔跑的turtlesim ?_?
2023-03-31 10:32:25 时间
其实这些内容都是一年前开发完成的……不信,那看如下博客:
https://zhangrelay.blog.csdn.net/article/details/109566819
啥子?ROS2的教程太少,这里已经有六套啦,如果还不够?学习了十几套源码开发课程,慢慢更新。
https://blog.csdn.net/ZhangRelay/article/details/120062413?spm=1001.2014.3001.5502
将std_msgs::String更换为geometry_msgs::Twist。
当然代码需要修改的地方也不少,直接上源码:
#include <ros2arduino.h>
#include <WiFi.h>
#include <WiFiUdp.h>
#define SSID "ESP32LoveROS2"
#define SSID_PW "66666666"
#define AGENT_IP "172.20.10.2"
#define AGENT_PORT 2021 //AGENT port number
#define PUBLISH_FREQUENCY 10 //hz
void publishString(geometry_msgs::Twist* msg, void* arg)
{
(void)(arg);
static int cnt = 0;
// msg->linear.x = ((double)rand()/(RAND_MAX)); //随机线速度
// msg->angular.z = ((double)rand()/(RAND_MAX)); //随机角速度
msg->linear.x = 0.2; //固定线速度
msg->angular.z = 1.0 - 0.001*cnt; //变化角速度
cnt++;
}
class StringPub : public ros2::Node
{
public:
StringPub()
: Node("esp32_cmdvel")
{
ros2::Publisher<geometry_msgs::Twist>* publisher_ = this->createPublisher<geometry_msgs::Twist>("turtle1/cmd_vel");
this->createWallFreq(PUBLISH_FREQUENCY, (ros2::CallbackFunc)publishString, nullptr, publisher_);
}
};
WiFiUDP udp;
void setup()
{
WiFi.begin(SSID, SSID_PW);
while(WiFi.status() != WL_CONNECTED);
ros2::init(&udp, AGENT_IP, AGENT_PORT);
}
void loop()
{
static StringPub StringNode;
ros2::spin(&StringNode);
}
小乌龟看腻了,换了小坦克,背景色不喜欢,换莫兰迪色,舞台太小换大!
小坦克:
莫兰迪色(部分):
选b5c4b1。
#define DEFAULT_BG_R 0xb5
#define DEFAULT_BG_G 0xc4
#define DEFAULT_BG_B 0xb1
舞台原来才500---换---666。
原来是这样的:
现在是这样的:
一开始:
然后:
当然也可以换个颜色,再走个魔鬼步伐。下一节细说。
相关文章
- HarmonyOS-ArkUI实现宫格抽奖器
- 深挖OpenHarmony之Ioremap
- 鸿蒙轻内核A核源码分析系列七—进程管理
- 透视Linux内核,BPF神奇的Linux技术入门
- 运行速度更快,微软 Windows 11/10 Edge 浏览器正测试“性能检测器”
- 在 KDE 中添加、切换、删除和管理 Linux 用户
- 十三个超有用的 Linux 性能和网络监控工具
- CentOS Linux 已死—Red Hat 称 Stream 不是替代品
- Windows 11 Build 22567发布:系统更新倾向使用可再生能源
- 过去一年,PWA 安装量增长 270%
- 用系统还原保护电脑,安全方便,如何知道Windows 11是否启用了该功能
- HarmonyOS - 本地相册的纠葛
- 知识分享—在页面跳转中附加对话框
- Cacti - 网络图形化解决方案 Ubuntu 下安装指南
- Linux 性能优化的全景指南,可能都在这里了
- Google Chrome 99今日发布 引入改进后的PWA和热议中的JS变化
- 硬伤终于填补!Windows 11蓝牙连接可一键切换
- 启航KS_IoT智能开发套件案例及代码之二
- Safari浏览器将支持自定义黑暗模式、模态弹窗
- Windows 11桌面升级:全新玩法桌面贴纸上手体验