傻瓜卡尔曼调参手册
2024-12-28 16:06:11 # 视觉

纪念在深圳湾边上的暑假。


前置知识

  • 右手系,拇指食指中指xyz,枪口指向x正方向
  • /camera result为世界系,上电时根据云台c板位置固定,云台转世界系不动
  • /camera pos为相机系,随云台运动
  • robot/mode,1为打福模式其中config数组的第一个为1是大福0为小福,0为打装甲模式
  • rqt里开parameter reconfiguretopic monitorplot
  • theta指的是装甲板法向量与相机x轴的夹角

步骤

拉新的代码

1
cd RM2024-new/
1
git branch
1
git checkout main
1
git pull --recurse-submodule
1
cd src
1
git submodule update
1
cd ..
1
colcon build
1
source install/setup.bash

标定

注意电量在三个及以上

1
cd scripts/
1
./calibration.py
  • 看不清可以调曝光
  • size不满是正常的
  • samples数到110张左右为宜
  • calibrate按钮只按一次,按完卡住报错正常
  • 太卡要在bios下开性能模式或相机用usb3
  • 参数d和k复制到camera.yaml下,若原本就是空的,则ros2 param dump一下

调偏置

1
ros2 launch auto_aim auto_aim_launch.py
  • source一下
  • 打开rqt,在动态调参数里的ballistic的节点里改yaw_offsetpitch_offset
  • 点头pitch摇头yaw
  • 要是rqt改不了就用ros2 param getros2 param set

调普通卡尔曼

  • Kalman的Q,R和delay,噪声以手感不到云台震动为宜

调反陀螺卡尔曼

  • 调x,y和theta的相应的Q和R,x0,y0,r和w是内参有Q无R(优先不调)
  • 在antitop节点theta和detect result yaw比调,调q_theta,只在参数文件 auto_aim/config车文件夹里的armor_tracker.yaml里面调,不在rqt里或者终端改参数,因为参数只在开始读一次
  • 优先调theta到w平滑可信(w速度与现实相符,单位rad/s),再是调x和y
  • 最后调anti_top/delay

靶机oled设置

  • 长按菜单
    • id红蓝
    • 无限血量
    • 离线模式

傻哔问题

  • 联网,确认梯子
  • 自瞄要开(波轮往下打)
  • pullsubmodule update
  • 记得source,不管是build之后还是开rqt之前
  • 开自瞄乱锁的话就是launch auto_aim
  • 要是rqt里的节点少了,就在auto_aim文件夹下的auto_aim_launch.py文件里加上那些节点
  • 勾上autoscroll,就会自动滚起来了