采用TurtleBot3 waffle 的体系架构.
1. 使用intel joule 作为主控板, 搭载ubuntu 16.04系统
joule 外接: USB 3.x HUB. 可扩展 rplidar A3, RealSense D435, 超声波 KS103, 灯带,外置声卡,外置遥控手柄键盘灯.
2. 电机控制板采用 STM32F405, USB CDC 与 joule 相接.
STM32F405外接: WT901C 九轴带扩展卡尔曼滤波. 中大电机控制板+中大电机. 碰撞传感器x9. 防跌落x2, 以及通过UART与电源控制板相连.
3. 电源控制板. nuvoton M453 + Li-Po Battery. (I2C和电池内部MCU通讯), 通过UART与
STM32F405. 用以控制电源输出, 充放电管理, 锂电信息采集.
===========================================================
1. 打开waffle的Arduino工程. 重要的三个文件.
点击(此处)折叠: 主要是机器人物理参数的一些设定.
-
#ifndef TURTLEBOT3_WAFFLE_H_
-
#define TURTLEBOT3_WAFFLE_H_
-
-
#define NAME "Waffle"
-
-
#define WHEEL_RADIUS 0.033 // meter 轮子半径, 单位: 米
-
#define WHEEL_SEPARATION 0.287 // meter (BURGER : 0.160, WAFFLE : 0.287) //轮距,轴距. 单位:米
-
#define TURNING_RADIUS 0.1435 // meter (BURGER : 0.080, WAFFLE : 0.1435) //转弯半径, 单位:米
-
#define ROBOT_RADIUS 0.220 // meter (BURGER : 0.105, WAFFLE : 0.220) //机器人宽度半径, 单位:米
-
#define ENCODER_MIN -2147483648 // raw //编码器的最大最小值
-
#define ENCODER_MAX 2147483648 // raw
-
-
#define MAX_LINEAR_VELOCITY (WHEEL_RADIUS * 2 * 3.14159265359 * 77 / 60) // m/s (BURGER : 61[rpm], WAFFLE : 77[rpm]) //最大线速度. 单位 米/秒. 即: 2πr*rpm/60秒 . 周长*转速每分钟/秒数.
-
#define MAX_ANGULAR_VELOCITY (MAX_LINEAR_VELOCITY / TURNING_RADIUS) // rad/s //最大角速度. 最大线速度/转弯半径 = 弧速度/半径. 单位: 弧度/秒.
-
-
#define MIN_LINEAR_VELOCITY -MAX_LINEAR_VELOCITY //最小线速度
-
#define MIN_ANGULAR_VELOCITY -MAX_ANGULAR_VELOCITY //最小角速度.
-
-
#endif //TURTLEBOT3_WAFFLE_H_
OpenCR源码分析.docx
TurtleBot3_Class对象分析.docx
阅读(3288) | 评论(0) | 转发(0) |