kobuki_core代码解读-kobuki_ftdi

kobuki_core代码解读-kobuki_ftdi

说明

功能列表:

  1. create_udev_rules 创建 /dev/kobuki 别名
  2. get_serial_number 读取串口号
  3. flasher,操作eeproms

文件树及说明:

├── 57-kobuki.rules     #udev规则文件
├── bluetooth           #蓝牙连接kobuki底座
│   ├── readme.txt    
│   └── rfcomm.conf
├── CHANGELOG.rst
├── CMakeLists.txt
├── doxygen             #doxygen文档
│   ├── kobuki_usb_data.dox
│   └── mainpage.dox
├── eeproms             #eeproms固件
│   ├── eeprom.original
│   └── readme.txt
├── include             #kobuki ftdi 类定义
│   └── kobuki_ftdi
│       ├── scanner.hpp #设备扫描器类定义
│       └── writer.hpp  #串口读写类定义
├── LICENSE
├── Makefile
├── package.xml
├── README.md
├── scripts
│   ├── create_udev_rules          #创建别名脚本
│   └── turtlebot_config           #turtlebot的别名创建脚本
└── src
    ├── CMakeLists.txt
    ├── find_devices.cpp           #实现查找设备
    ├── flasher.cpp                #写入eeproms实现
    ├── ftdi_kobuki.cpp            #设备读写类
    ├── ftdi_read_eeprom.cpp       #设备eeproms读取
    ├── ftdi_scan.cpp              #设备扫描实现
    ├── ftdi_write_eeprom.cpp      #设备eeproms写入
    ├── get_serial_number.cpp      #设备串口号获取实现
    ├── overwrite_serial_number.cpp#重写串口号实现
    ├── reset_device.cpp           #重设设备实现
    └── unflasher.cpp              #擦除eeproms实现
    

重要知识点说明:

  1. ftdi
  2. ft232(UART)
  3. ecl类库
  4. eeproms操作方法
  5. udev别名规则编写
  6. doxygen文档生成
  7. 蓝牙连接方法

kobuki不正常启动检查

  • 检查端口别名:
cat /dev/kobuki 
  • USB设备检测
lsusb 
  • dmesg

  • 增加别名
rosrun kobuki_ftdi create_udev_rules
  • 检查串口号
sudo ./get_serial_number
  • 内容如下:
Device #0
  Manufacturer : Yujin Robot
  Product      : iClebo Kobuki
  Serial Number: kobuki_A601D86G
  • 如果不同上面内容,修复串口号
sudo ./flasher 

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

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


标签: kobuki_core代码解读