资源简介
电磁环岛的.c和.h文件,外加详解文档,用两个电感检测环岛,测试方案很稳定,可以参考

代码片段和文件信息
#include “Control.h“
#include “headfile.h“
uint8 Run_Flag = 0;
int32 MOTOR_Duty_Left = 0;
int32 MOTOR_Duty_Right =0;
int32 MOTOR_Speed_Left = 0;
int32 MOTOR_Speed_Right = 0;
int32 MOTOR_Speed_Left_Last = 0;
int32 MOTOR_Speed_Right_Last = 0;
int32 MOTOR_Left_Acc = 0;
int32 MOTOR_Right_Acc = 0;
float SpeedRw SpeedLw;
float Speed_devSpeed_sumSteer_Radius;
int Fres = 0; // 动态参数变量
/******* 电机速度测量 ********/
/************************* 其他控制变量 ******************************************/
uint8 Set = 0;
float Set_Speed;
int8 CS_Point_Num=0;
float CS_P_Right = 0.50CS_P_Left = 0.50;//差速系数
/*******************挂挡变量声明**************/
float Set_CS_P_Right[2] = {0.500.7};
float Set_CS_P_Left[2] = {0.500.7};
uint8 Set_Set[2] = {04};
int8 Last_Error[5]Point_Error;
uint8 Point; //目标点横坐标
int8 Point_Num=0; //提前系数
uint8 Point_Mid = MIDVALUE;
void Speed_Measure(void)
{
static int32 ptA0_dataptH2_data;
/******* 右电机速度相关控制 ********/
MOTOR_Speed_Right =ctimer_count_read(SPEEDR_PIN)*100*Pulse_CM_coe;//右轮
ctimer_count_clean(SPEEDR_PIN);
if(gpio_get(SPEEDR_DIR)) MOTOR_Speed_Right=-MOTOR_Speed_Right;
else MOTOR_Speed_Right= MOTOR_Speed_Right;
MOTOR_Right_Acc = MOTOR_Speed_Right - MOTOR_Speed_Right_Last; // 计算加速度
if(MOTOR_Right_Acc >100)
MOTOR_Speed_Right += 100;
else if(MOTOR_Right_Acc < -100)
MOTOR_Speed_Right -= 100;
else
MOTOR_Speed_Right = MOTOR_Speed_Right;
MOTOR_Speed_Right = range_protect(MOTOR_Speed_Right-500 500); //限幅保护
MOTOR_Speed_Right_Last=MOTOR_Speed_Right;
/******* 右电机速度相关控制结束 ********/
/******* 左电机速度相关控制 ********/
MOTOR_Speed_Left =ctimer_count_read(SPEEDL_PIN)*100*Pulse_CM_coe;//右轮
ctimer_count_clean(SPEEDL_PIN);
if(gpio_get(SPEEDL_DIR))MOTOR_Speed_Left=MOTOR_Speed_Left;
else MOTOR_Speed_Left= -MOTOR_Speed_Left;
MOTOR_Left_Acc = MOTOR_Speed_Left - MOTOR_Speed_Left_Last; // 计算加速度
if(MOTOR_Left_Acc >100)
MOTOR_Speed_Left += 100;
else if(MOTOR_Left_Acc < -100)
MOTOR_Speed_Left -= 100;
else
MOTOR_Speed_Left = MOTOR_Speed_Left;
MOTOR_Speed_Left = range_protect(MOTOR_Speed_Left-500 500); //限幅保护
MOTOR_Speed_Left_Last=MOTOR_Speed_Left;
/*****************转向和直道真实速度计算*****************/
SpeedLw = MOTOR_Speed_Left
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9805 2019-05-26 17:28 Control.c
文件 1962 2019-05-14 20:34 Control.h
文件 4022 2019-05-27 17:30 环岛处理方法及对应代码 (1).txt
相关资源
- 飞思卡尔单片机MC9S12XS12G128驱动(硬件
- MP3文件ID3v2ID3v2APEv2标签读取
- 课程作业:模拟仓库管理系统
- 哈工大的高等电磁学电磁场课件
- 一个简单实用个人日记管理系统
- 带时间温度显示的室内灯光控制系统
- 电磁场与电磁波 郭辉萍
- 成绩管理系统(数据结构)
- FIR低通滤波器 ccs运行环境
- 电磁场与电磁波 谢处方
- 电磁场有限元方法
- 电磁对parton分布中电荷对称性违反的
- 通过变化的电磁耦合,大型强子对撞
- 因子分解方法中介子电磁形状因数的
- 基于束缚系统的3 +1维QCD质子和中子电
- 手性夸克-孤子模型中子核电磁形态因
- 分散改进的手性有效场理论中的核子
- 质子和中子的电磁形状因数和不确定
- 来自色散改进手性有效场理论的准确
- 晶格QCD中奇怪的核子电磁形状因数
- 交流铁芯线圈的电磁关系_交流铁芯线
- 基于CPCI结构变频器的电源设计
- 飞思卡尔68HC08Metrowerks_CodeWarrior开发软
- 飞思卡尔单片机.s19文件方法详解
- 详析LED驱动电源电磁干扰问题
- 在质子与质子之一的电磁和衍射解离
- C malloc函数用法
- 开关电源电磁干扰滤波器设计
- 电源噪声滤波器的基本原理
- 开关电源的电磁干扰抑制技术
评论
共有 条评论