ROS与RACECAR教程2-VESC介绍

ROS与RACECAR教程2-VESC介绍

说明:

  • 介绍VESC以及安装方法

VESC:

  • 对于Jetson RACECAR,我们用Vedder电子速度控制器(VESC)替换TRAXXAS ESC。
  • 主要原因是是更好控制速度,同时VESC是开源。
  • 架构上,VESC有一个STM32 ARM Cortex处理器。 STM32运行ChibiOS,一个实时操作系统。
  • VESC-X上烧录的默认固件为Servo-in,允许遥控器设置电机转速。
  • 对于Jetson RACECAR应用,VESC伺服端口需要编程为Servo-out,可将命令发送到机器人转向伺服。
  • 有一个VESC固件版本的编译二进制文件,包括Servo-out设置。
  • 可以使用名为'bldc-tool'的程序从Jetson直接烧录STM32。
  • BLDC是BrushLess直流电机的缩写。
  • 一旦bldc工具将Servo-out固件加载到VESC,然后加载与VESC配置匹配的配置文件,控制TRAXXAS Velineon 3500电机。
  • 实际的VESC固件在bldc-tool Firmwares目录中以二进制形式提供。
  • 如果您有兴趣从源代码构建VESC固件,则可以从Github上的bldc固件源代码树中进行编译。

连线:

  • VESC使用微型USB至USB-A电缆连接到Jetson。
  • USB电缆通常在Jetson和VESC之间传递电机速度和转向角度。
  • TRAXXAS转向伺服电机连接到VESC伺服接头。
  • 使用90度,3针母头更方便接线。
  • 接线图:

请输入图片描述

安装bldc-tool:

  • 下载软件
$ git clone https://github.com/jetsonhacks/installBLDC
$ cd installBLDC
$ ./installBLDC.sh
  • 编译bldc-tool并下载电机配置文件,文件放于~/hardware/vesc
  • 连接电池到VESC

烧录固件:

  • 运行
$ cd ~/bldc-tool
$ ./BLDC_Tool
  • 这将启动GUI与VESC进行交互
  • 在烧录固件之前,点击“Connect”按钮与VESC进行通信
  • VESC应该在ttyACM0(更正式地,/dev/ttyACM0)
  • 连接当前固件版本将显示在右下角
  • 选择 ‘Firmware’来刷新固件,但要小心选择符合VESC要求的固件
  • 本文使用硬件版本4.12的固件“VESC_servout.bin”
  • 配置文件位于~/hardware/vesc中。 配置文件用于VESC-X为“6.141_bldc_VESC_X_hw_30k_erpm.xml”。
  • 如果您使用常规VESC,则可能需要使用配置文件“/6.141_bldc_old_hw_30k_erpm.xml”。
  • 注意:您应该使用更新的bldc配置,配置降低最小和最大erpm值,以避免在连接到TRAXXAS电机时损坏VESC。

测试:

  • 固件和配置文件都准备好后,可通过游戏杆控制运动
$ sudo jstest /dev/input/js0
  • Logitech Gamepad F710有两种模式,由标有“mode”的按钮控制。
  • Jetson RACECAR的正确模式是左操纵杆控制轴0和1,右操纵杆控制轴2和3。
  • 遥控
$ cd racercar-ws
$ source devel/setup.bash
$ roslaunch racecar teleop.launch

参考:

  • http://www.jetsonhacks.com/2017/06/01/get-your-motor-running-vesc-jetson-racecar-build/

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

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


标签: ros与racecar教程2