< >
Home » Dashgo底盘入门教程 » Dashgo底盘入门教程-软件-蓝牙的使用

Dashgo底盘入门教程-软件-蓝牙的使用

Dashgo底盘入门教程-软件-蓝牙的使用

说明:

  • 介绍如何通过蓝牙来控制dashgo底盘

D1 的物理参数

  • wheel_diameter: 0.1260    //轮子直径,单位:米
  • wheel_track: 0.3500     //两个轮子的间距,单位:米
  • encoder_resolution: 1200   //编码器分辨率, 轮子转一圈,编码器产生的脉冲数
  • PID_RATE: 30         //PID调节PWM值的频率

速度控制指令

  • 基本的速度指令格式,如下:
z 20 -20;
  • 说明:指令用于设置在单位时间(1/PID_RATE 秒)内 D1 移动期望编码器的脉冲数。
  • 第一个参数用于设置左轮的速度,第二参数用于设置右轮的速度, 正数代表向前移动,负数代表向后移动。
  • 注意:这里所说的速度不是以m/s的速度, 而是需要一定的计算来和m/s进行换算。

线速度测试

  • 假如 D1 以0.3m/s的速度前进,指令的参数计算方法如下:
  • D1 轮子转动一圈,移动的距离为轮子的周长:wheel_diameter * 3.1415926
  • D1 轮子转动一圈,编码器产生的脉冲信号为:encoder_resolution
  • 所以每移动1米产生脉冲信号为:
ticks_per_meter 
= encoder_resolution /(wheel_diameter*3.1415926)
= 1200/(0.12*3.1415926)
= 3183.10
  • D1 以V=0.3m/s的速度前进,1秒钟内产生的脉冲信号为:V * ticks_per_meter
  • 又因为 PID 的频率是1秒钟30次。所以,指令的参数计算方法为:
int(V * ticks_per_meter / PID_RATE)
= int(0.3 * 3183.10/30)
= 32
  • 所以,如果设置 D1 以0.3m/s的速度前进,指令输入为:
z 32 32;
  • 如果以0.3m/s的速度后退,指令输入为:
z -32 -32;

角速度测试

  • 假如 D1 自转,就需要一个轮子正转,一个轮子反转。
  • 例如,需要 D1 以V=1弧度/秒的速度转动。计算方法如下:
左轮 vl = V * wheel_track / 2.0
右轮 vr = -1 * V * wheel_track / 2.0
  • 然后,按公式 int(V * ticks_per_meter / PID_RATE) 分别计算左轮和右轮的速度参数。
  • 若以1弧度/秒的速度转动,指令输入为:
z 19 -19;

线速度与角速度联测

  • 假如 D1 向左转弯,就需要一个轮子向前转,一个轮子向后转。
  • 例如,需要 D1 以V1=1弧度/秒的速度转动,V2=0.2m/s的速度前进。
  • 计算方法如下:
左轮 vl = V2 + V1 * wheel_track / 2.0
右轮 vr = V2 - V1 * wheel_track / 2.0
  • 然后,按公式 int(V * ticks_per_meter / PID_RATE) 分别计算左轮和右轮的速度参数。
  • 若以1弧度/秒的速度转动,指令输入为:
z 40 3;
  • 注意:当需要 D1 持续运动是,需要不断地下发指令,如果下位机2秒内没收到指令,D1 将停止运行。

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

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


标签: dashgo底盘入门教程