资源简介
1 基于飞思卡尔xs128实现直立控制,速度控制,转弯控制
2 赛道识别
3 大津法代码实现
4 PID

代码片段和文件信息
#include “include.h“
#include
/////////////////////////////////////////////////////////////////////////////////start变量定义/////////////////////////////////////////////////////////////////////////////////
extern float DirectionOutput;
int PD_m_addMoter_out1Moter_out2 ; //PID 的增量输出
extern char error;
float speedout;
//////////////////////////////////////////////////////////////////////////////////end 变量定义////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////start PID 函数的编写////////////////////////////////////////////////////////////////////////
void Delay_us(unsigned int t)
{
while(t--);
}
void stand_control()
{
float sumadd_angle;
speedout=(PID_new-PID_old)*num/8+PID_old;
add_angle=0;
current_error=real_angle+add_angle;
sum=Gyr_jiao*PD_M_Kd;
if(sum>=500)
sum=500;
if(sum<=-500)
sum=-500;
if(current_error>0) //角度大于目标值
{
PD=current_error*PD_M_Kp+sum;
PD_m_add=PD; //电机的 PID 增量值输出
if(PD_m_add>=1800){PD_m_add=1800;PD=1800;} //限制电机的最大速度
qian=0;
hou=1;
}
else if(current_error<0) //角度小于目标值
{
PD=-current_error*PD_M_Kp-sum;
PD_m_add=PD; //电机的 PID 增量值输出
if(PD_m_add>=1800){PD_m_add=1800;PD=1800;} //限制电机的最大速度
qian=1;
hou=0;
}
if(qian==1)
fangxiang(1001);
if(hou==1)
fangxiang(0110);
speedout=0;
DirectionOutput=0;
Moter_out2=PD_m_add-speedout+DirectionOutput;
Moter_out1=PD_m_add-speedout-DirectionOutput;
if(Moter_out1>1700)Moter_out1=1700;
if(Moter_out1<-300) Moter_out1=-300;
if(Moter_out2>1700)Moter_out2=1700;
if(Moter_out2<-300) Moter_out2=-300;
PWMDTY01=Moter_out1+300; // (右轮)
PWMDTY23=Moter_out2+300; // (左轮)//跑的方向
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-05-12 07:25 飞思卡尔\
文件 855 2015-04-12 23:44 飞思卡尔\C_Layout.hwl
文件 845 2015-04-19 11:18 飞思卡尔\Datehandle.c
文件 632 2015-04-12 23:44 飞思卡尔\Datehandle.h
文件 161 2015-04-12 23:44 飞思卡尔\Default.mem
文件 3524 2015-05-08 16:43 飞思卡尔\DirectionControl.c
文件 162 2015-05-08 10:53 飞思卡尔\DirectionControl.h
目录 0 2015-05-12 07:25 飞思卡尔\Sources\
目录 0 2015-05-12 07:25 飞思卡尔\Sources\CODE\
文件 2582 2015-04-12 23:44 飞思卡尔\Sources\CODE\ADC.c
文件 1348 2015-04-12 23:44 飞思卡尔\Sources\CODE\ADC.h
文件 5832 2015-04-12 23:44 飞思卡尔\Sources\CODE\CPU.c
文件 1686 2015-04-12 23:44 飞思卡尔\Sources\CODE\CPU.h
文件 3548 2015-05-10 08:55 飞思卡尔\Sources\CODE\Events.c
文件 1698 2015-04-12 23:44 飞思卡尔\Sources\CODE\Events.h
文件 1759 2015-04-12 23:44 飞思卡尔\Sources\CODE\PIT.c
文件 1321 2015-04-12 23:44 飞思卡尔\Sources\CODE\PIT.h
文件 4367 2015-04-12 23:44 飞思卡尔\Sources\CODE\SCI.c
文件 3645 2015-04-12 23:44 飞思卡尔\Sources\CODE\SCI.h
文件 11560 2015-04-12 23:44 飞思卡尔\Sources\CODE\Vector.c
文件 1346 2015-04-12 23:44 飞思卡尔\Sources\CODE\Vector.h
文件 23855 2015-04-12 23:44 飞思卡尔\Sources\Start12.c
文件 69907 2015-04-12 23:44 飞思卡尔\Sources\datapage.c
文件 262 2015-04-12 23:44 飞思卡尔\Sources\derivative.h
文件 2644 2015-05-11 00:46 飞思卡尔\Sources\main.c
文件 26259 2015-05-08 14:09 飞思卡尔\Sources\user.c
文件 2567 2015-04-29 09:19 飞思卡尔\Sources\user.h
文件 3120 2015-05-11 00:52 飞思卡尔\TBDML.ini
目录 0 2017-12-16 10:04 飞思卡尔\U抃Metrowerks\
目录 0 2015-05-12 07:25 飞思卡尔\bin\
文件 312906 2015-05-11 00:51 飞思卡尔\bin\Project.abs
............此处省略54个文件信息
- 上一篇:虚拟机ISO镜像
- 下一篇:遗传算法选择策略比较
相关资源
- 平衡小车之家全套资料
- 平衡小车之家资料.zip
- 两轮平衡车源程序,方能仪器,自平
- STM32 MPU6050 载人平衡车资料
- STM32平衡车代码.rar
- 基于TMS320F28069智能平衡车平衡小车基
- 平衡车卡尔曼滤波
- 带UCOS操作系统的STM32平衡车PWM
- STM32平衡小车程序
- 双轮平衡车
- 基于STM32平衡小车制作
- 两轮平衡车控制源码
- 平衡小车PCB+代码+原理图
- 智能平衡车4种方案打包
- 两轮平衡车简单串级PID
- STM32平衡车代码
- 参赛作品《双轮载人平衡车设计》-
- 扭扭车平衡车原理图免费stm32 rct6
- 基于LabVIEW的平衡车建模与仿真研究
- 自主设计平衡车PCB板
- 平衡小车蓝牙控制Apk 3个
- 基于mpu6050(DMP)完成的(PID)自平衡
- 摄像头寻迹+stm32平衡车
- 2017年“恩智浦杯”智能车竞赛西部赛
- 匿名上位机V6.5软件+源码+教程.zip
- 平衡小车pcb与原理图,源码,蓝牙,
- 基于STM32的两轮平衡小车资料
- 双轮平衡车原理图及pcb
- STM32遥控平衡车,陀螺仪用的MPU6050,
- 基于STM32的平衡车项目源码
评论
共有 条评论