# little program **Repository Path**: while-e/little-program ## Basic Information - **Project Name**: little program - **Description**: 存放一些小作品 - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-09-30 - **Last Updated**: 2021-10-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # little program #### 介绍 存放一些小作品 #### 遇到的一些问题 1.编码器读数为0 Encoder_1 = Read_Encoder_1()*100*60/1560; //1号电机 printf("%d\r\n",Read_Encoder_1()); 这样打印的时候立马又读了一次,而每次读完编码器数值后会立即清零,故读数为0. 2.pid疯狂振荡 PWM想让电机转的方向与电机实际转的方向不符(PWM大于0想让电机正转,电机实际上反转了) 3.电机调速的一般步骤: ①确定编码器读数正常 ②确定编码器计数的正反转方向 ③确定电机的正反转方向 ④使编码器正方向和电机正方向相匹配。 左轮正转编码器读数为负,PEout(7)=0; //AIN1=0 PEout(8)=1; //AIN2=1 电机正转(以车头为参考) 还容易变成正反馈:偏差越大,往反方向加的越大,从而偏差继续加大 如果调整转的方向,它又抖动 4.注意速度变量的数据类型为int,设为float容易出错,上位机无法显示。 Push的时候,commit失败后,需要用git fetch命令消除一次。