ROS小車實踐記錄(五)

Brushyss發表於2020-11-20

ROS小車編碼器計算速度講解

分六節底層小車程式碼講解,本章主要對編碼器計算速度的程式碼講解

電機順序
在這裡插入圖片描述
開啟main.c、Huanyu_encoder.c
main.c中可以看到四個電機編碼器輸入
四個電機
四個電機編碼器模式的初始化
本節課主要了解兩個方面
第一個方面
STM32的定時器編碼模式只能是定時器的1、2通道,當定時器初始化為編碼器模式之後除了1、2通道以外,其他IO不能作為其他定時器只能作為普通的GPIO用
第二個方面
計算輪子速度我們要設定幾個常量 在Huanyu_moto.h
設定多少時間內取樣的脈衝數#define CONTROL_TIMER_CYCLE 0.05f
輪子每圈的脈衝數#define ENCODER_TTL_COUNT_VALUE
主動輪直徑#define ROBOT_WHEEL_DIAMETER計算輪子的周長
利用公式計算速度

ROBOT_WHEEL_DIAMETER  *Pi_v * (X / ENCODER_TTL_COUNT_VALUE))/CONTROL_TIMER_CYCLE

相關文章