@yolic66 在 我在循迹路上打了一些点,小车在循迹过程中遇到这些点就执行操作,可以怎么实现? 中说:
请问大佬们有什么建议吗
你是用movebase做的吗,操作点可以设置成导航目标点。不过movebase内部判断是否到达也是你说的那么算的
@yolic66 在 我在循迹路上打了一些点,小车在循迹过程中遇到这些点就执行操作,可以怎么实现? 中说:
请问大佬们有什么建议吗
你是用movebase做的吗,操作点可以设置成导航目标点。不过movebase内部判断是否到达也是你说的那么算的
对于一般的游戏手柄,插到windows电脑上一般会被识别乘hid游戏设备。
但是C#中使用DirectInput或者xInput的库都没办法操作hid设备。这两个库都只能操作xbox手柄。所以想要实现在WPF程序中通过手柄操控就需要把hid手柄映射成xbox手柄。这个映射可以通过XOutput库来实现。
安装之后打开设置界面
添加手柄后选择对应的Edit按钮
在这个设置界面里面依次设置对应的按钮映射。
设置完成之后点击最上面菜单中的保存配置
然后设置开机自启动
这样每次开机后就会自动映射手柄并添加一个xbox设备。
现在通过DirectInput或者xinput都可以正常读到设备的值了。
List<string> availableControllers = new List<string>();
var controllers = new[] { new SharpDX.XInput.Controller(UserIndex.One), new SharpDX.XInput.Controller(UserIndex.Two), new SharpDX.XInput.Controller(UserIndex.Three), new SharpDX.XInput.Controller(UserIndex.Four) };
foreach (var ctr in controllers)
{
if (ctr.IsConnected)
availableControllers.Add("XBox controller " + ctr.UserIndex.ToString());
}
上面是通过xinput获取手柄设备的例子
@yanyan1011-0 把baselink和basefootprint的之间的tf连接方法反过来。还有你的odom到baselink的tf是谁发布的,这个要改成odom到basefootprint
@yanyan1011-0
文档里面说订阅的是basefootprint的tf,不是baselink的,你还有加一个baselink到basefootprint的变换
@xzp 首先要获取到本车车速应该用的是Twist信息,或者里程计信息里面的Twist信息。cmd_vel只是速度控制指令,不是机器人实际的运动速度。这个信息是有header的。
用激光雷达测相对速度感觉也不是一个很好的方法,激光雷达的点比较稀疏,特征少。很难把目标车从点云中找出来。感觉用uwb,或者两个车都有全局的map坐标系比较靠谱。
ffplay -fflags nobuffer -flags low_delay -framedrop -fflags discardcorrupt -preset ultrafast -tune zerolatency -fpsprobesize 1 -max_delay 1 -probesize 32 -analyzeduration 0 -sync ext "http://192.168.0.104:8080/stream?topic=/multi/front/image_raw&type=h264"
sudo apt-add-repository "deb https://apt.kitware.com/ubuntu/ $(lsb_release -cs) main"
wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null
sudo apt update
sudo apt install cmake --upgrade -y