< >
Home » Ailibot2实体机器人入门教程 » ROS2与Ailibot2入门教程-升级-固件升级

ROS2与Ailibot2入门教程-升级-固件升级

说明:

  • 介绍如何升级ailibot2核心板固件
  • ailibot2核心板为stm32F407芯片的核心板,固件采用c和c++混合开发
  • 基于micro-ros的galactic版本
  • 目前是相对稳定版本,ros2_ailibot_firmware_f4_v1.0.0.bin
  • 此模式是通过usb线连接ailibot2核心板直接进行升级

相关设备:

流程:

  • 下载最新的固件到小车上的树莓派上位机的固定刷机目录
  • 进入固定的刷机目录,通过启动命令和按钮组合,进入刷机模式
  • 确认刷机模式,再执行刷机
  • 恢复运行模式

步骤:

  • 下载固件
# install rcm
curl -k https://www.ncnynl.com/rcm.sh | bash - 

# download 
rcm ros2_ailibot2 install_ros2_ailibot_firmware
  • 在小车下,进入固定的刷机目录
cd ~/tools/ros2_ailibot_firmware
  • 进入刷机模式
$./uboot.sh

stm32flash 0.5

http://stm32flash.sourceforge.net/

Interface serial_posix: 115200 8E1
Version      : 0x31
Option 1     : 0x00
Option 2     : 0x00
Device ID    : 0x0413 (STM32F40xxx/41xxx)
- RAM        : Up to 128KiB  (12288b reserved by bootloader)
- Flash      : Up to 1024KiB (size first sector: 1x16384)
- Option RAM : 16b
- System RAM : 30KiB

  • 进行刷机,自动使用固件库里面最新版本固件
   $./uflash.sh d2
    
    stm32flash 0.5
    
    http://stm32flash.sourceforge.net/
    
    Using Parser : Intel HEX
    Interface serial_posix: 115200 8E1
    Version      : 0x31
    Option 1     : 0x00
    Option 2     : 0x00
    Device ID    : 0x0413 (STM32F40xxx/41xxx)
    - RAM        : Up to 128KiB  (12288b reserved by bootloader)
    - Flash      : Up to 1024KiB (size first sector: 1x16384)
    - Option RAM : 16b
    - System RAM : 30KiB
    Write to memory
    Erasing memory
    Wrote address 0x0802fa70 (100.00%) Done.

  • 看到上面文字,说明刷机成功
  • 退出刷机模式
# 退出刷机模式
./ureset.sh
  • 确保三个步骤执行都成功,如果不成功,可以再次执行。
  • 固件正常刷入后,可以启动底盘进行确认固件是否正常工作。
  • 小车端,启动底盘
ros2 launch ailibot2_bringup agent.launch.py
  • 出现相关日志滚动的信息,就说明启动成功,新固件生效。
  • 查看相关话题
# 查看话题列表
ros2 topic list 

# 查看imu话题
ros2 topic echo /ram_imu

# 查看电池电压
ros2 topic echo /battery

# 查看超声波话题
ros2 topic echo /sonar

# 查看参数列表
ros2 param list

# 查看其中参数
ros2 param get ailibot2 pid_p

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

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


标签: ailibot2入门教程