智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3659|回复: 7
打印 上一主题 下一主题

电磁圆环思路,程序开源

[复制链接]

5

主题

36

帖子

0

精华

高级会员

Rank: 4

积分
919
威望
484
贡献
295
兑换币
316
注册时间
2017-12-14
在线时间
70 小时
跳转到指定楼层
1#
发表于 2019-8-20 21:58:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
硬件平台为:KEA128芯片 ,小车采用两个水平电感跑完全程,由于充电比较慢,止步于省1,希望圆环和程序架构能为大家带来一些启发

//-------------------------------------------------------------------------------------------------------------------
//  @BRIEF      左小圆环处理
//  @param      void
//  @return     void
//  @since      v1.0
//  Sample usage:               Roundleft_small_Handle();
//-------------------------------------------------------------------------------------------------------------------
void Roundleft_small_Handle(void)
{
  //Ring_Handle第一步:判断圆环
  if(Ring_flag[2]==0)
  {
  if(Ring_Start_value[0]>=left_small_ring[3]&&Ring_Start_value[1]>=left_small_ring[3])
  {
    Ring_flag[2]=1;
  }
  }
  //Ring_Handle第二步:记脉冲,找拐点
  if(Ring_flag[2]==1)
  {
    count_turn_in__Ring+=Speed_average;
    Test_chazhi=count_turn_in__Ring;
    if(count_turn_in__Ring>=left_small_ring[0])
    {
      Ring_flag[2]=2; //切点
    }
  }
  //Ring_Handle第三步:执行转弯
  if(Ring_flag[2]==2)
  {
     Current_Dir=left_small_ring[1]*(AD[0]-AD[1]/(count_turn_in__Ring*Target_Speed))/(AD[0]+AD[1]/(count_turn_in__Ring*Target_Speed));
     Test_chazhi-=(Speed_average/left_small_ring[2]);
     if(Test_chazhi<0)
     {
       Ring_flag[2]=3;
     }

  }
  //Ring_Handle第四步:判断出圆环
  if(Ring_flag[2]==3)
  {
    if(Ring_Start_value[0]>=left_small_ring[4]&&Ring_Start_value[1]>=left_small_ring[4])                                  //编码器脉冲计数阙值
    {
      Ring_flag[2]=4;
    }
  }
  //Ring_Handle第五步:计脉冲数,达到阈值所有变量归零
  if(Ring_flag[2]==4)
  {
    count_turn_out__Ring+=Speed_average;
     if(count_turn_out__Ring>=left_small_ring[5])
       Ring_flag[2]=5;
  }
  //Ring_Handle第六步:变量归零
  if(Ring_flag[2]==5)
  {
      count_turn_out__Ring=0;
      count_turn_in__Ring=0;
      Test_chazhi=0;
      Ring_flag[2]=0;
      Number_ring=1;
  }
}

- 思路为建立归一化与圆环半径、期望速度的联系,是反比关系。
- 每次需要调整的参数为:其中入环电感值经实验可用正常赛道扫到的水平电感最大值+1000
/***************************环岛参数**************************************/
/*     脉冲距离  拐角系数  拐弯时间系数  入环岛电感值  出环岛电感值  清零脉冲*/
float right_small_ring[6]={5300,14.0,0.85,3400,3300,9000};   //{5000,18.0,0.7,2600,2400,9000}

注:可以考虑所有大小圆环情况,以左小圆环,左大圆环,右小圆环,右大圆环为基本元素,以最高两个圆环为上限,进行排列组合,可以在赛场上通过按键进行调整

工程链接:链接: https://pan.baidu.com/s/1vI8F1u_owmeYHz67pYBbLQ 提取码: 73nr
回复

使用道具 举报

5

主题

36

帖子

0

精华

高级会员

Rank: 4

积分
919
威望
484
贡献
295
兑换币
316
注册时间
2017-12-14
在线时间
70 小时
2#
 楼主| 发表于 2019-8-21 16:01:38 | 只看该作者
:o:o:o
回复 支持 反对

使用道具 举报

0

主题

12

帖子

0

精华

高级会员

Rank: 4

积分
827
威望
493
贡献
334
兑换币
328
注册时间
2019-6-29
在线时间
0 小时
毕业学校
江汉大学
3#
发表于 2019-8-26 14:42:54 | 只看该作者
谢谢楼主分享
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

注册会员

Rank: 2

积分
110
威望
68
贡献
42
兑换币
42
注册时间
2019-9-1
在线时间
0 小时
4#
发表于 2019-9-5 15:50:41 | 只看该作者
多谢楼主分享,
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

注册会员

Rank: 2

积分
61
威望
33
贡献
28
兑换币
17
注册时间
2019-8-21
在线时间
0 小时
5#
发表于 2019-9-5 19:45:00 | 只看该作者
多谢分享
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

高级会员

Rank: 4

积分
579
威望
310
贡献
201
兑换币
204
注册时间
2018-8-3
在线时间
34 小时
6#
发表于 2019-9-19 16:26:04 | 只看该作者
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
40
威望
20
贡献
20
兑换币
11
注册时间
2019-9-22
在线时间
0 小时
7#
发表于 2019-10-10 20:20:02 | 只看该作者
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

注册会员

Rank: 2

积分
88
威望
54
贡献
34
兑换币
33
注册时间
2019-9-28
在线时间
0 小时
8#
发表于 2019-10-15 17:55:02 | 只看该作者
谢谢楼主分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|亿加合和智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-5-6 02:45 , Processed in 0.077312 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表