智能车制作

 找回密码
 注册

扫一扫,访问微社区

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

求一份摄像头入门级巡线程序

[复制链接]

3

主题

18

帖子

0

精华

注册会员

Rank: 2

积分
189
威望
113
贡献
52
兑换币
58
注册时间
2014-9-22
在线时间
12 小时
毕业学校
乌鲁巴基
跳转到指定楼层
1#
发表于 2014-10-18 18:24:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
初学摄像头,自己写的舵机控制程序,比较简单,就是求每行黑点下标的平均值为黑线的中心位置。
慢速跑直线还行,一拐弯就出去了。
我弄到几个参赛程序,忒复杂了,看的我脑袋都大了。
我现在调的是循迹,用的7620,希望能得到一份比较简单的舵机控制算法。
先谢谢了!
/*************************************************************/
/*黑线中心定位函数*/
/**********************************************************/
unsigned int black(void)
{
   unsigned int i,j;       //数组下标变量
   unsigned int sum_lie=0,sum_hang=0,num_lie=0,num_hang=0;   //行列变量
   unsigned int heart=0;
   for(i=29;i<38;i++)        //只采集29到38行
   {
      for(j=20;j<100;j++)
      {
        if(Buffer[i][j]<0x70)
        {
          sum_lie+=j;
          num_lie++;
        }
      }
     sum_hang+=sum_lie/num_lie ;
     num_hang++;  
   }
   heart=sum_hang/num_hang;     //黑线中心
   display1(0,1,heart);
   return heart;
}
/*舵机控制函数*/
void construct(void)
{
unsigned int pos=0;
  pos=black();
  
  if((pos>50)&&(pos<100))
  angle=150+(pos-50);         //右偏
  
  if(pos<50)
  angle=150-(50-pos);        //左偏
  
   if(angle>200)      //最大转角保护
   angle=200;
   if(angle<100)
    angle=100;

  display1(0,2,angle);      //5110
    PWMDTY01=angle;        //舵机pwm
  
}
回复

使用道具 举报

3

主题

18

帖子

0

精华

注册会员

Rank: 2

积分
189
威望
113
贡献
52
兑换币
58
注册时间
2014-9-22
在线时间
12 小时
毕业学校
乌鲁巴基
2#
 楼主| 发表于 2014-10-18 19:17:13 | 只看该作者
还有就是我写的代码,当采集到的数值<0x70时为黑点,这个值就是阈值么,你们是这样判断黑白的么
刚才我把宽度扩大到40行,高度扩大到120,以3%的速度能在180度的弯道上跑下来,加到5%就跪了。
回复 支持 反对

使用道具 举报

3

主题

18

帖子

0

精华

注册会员

Rank: 2

积分
189
威望
113
贡献
52
兑换币
58
注册时间
2014-9-22
在线时间
12 小时
毕业学校
乌鲁巴基
3#
 楼主| 发表于 2014-10-18 19:22:55 | 只看该作者
怎么根据采到的数据计算出弧度,弧度与舵机拐角之间又满足哪一种函数关系,以前只听说过PID算法这个名词。总感觉应该有一种公式能计算出弧度,有一个函数调用能根据弧度控制舵机转角,问题是我不知道。
回复 支持 反对

使用道具 举报

19

主题

243

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2948
威望
1463
贡献
847
兑换币
954
注册时间
2013-12-16
在线时间
319 小时
4#
发表于 2014-10-18 23:20:21 | 只看该作者
非硬件方面多看技术报告,很有用,里面都有你要的答案
回复 支持 反对

使用道具 举报

3

主题

18

帖子

0

精华

注册会员

Rank: 2

积分
189
威望
113
贡献
52
兑换币
58
注册时间
2014-9-22
在线时间
12 小时
毕业学校
乌鲁巴基
5#
 楼主| 发表于 2014-10-19 08:40:45 | 只看该作者
纷纷扰扰 发表于 2014-10-18 23:20
非硬件方面多看技术报告,很有用,里面都有你要的答案

哦哦
回复 支持 反对

使用道具 举报

0

主题

26

帖子

0

精华

注册会员

Rank: 2

积分
176
威望
86
贡献
60
兑换币
57
注册时间
2014-10-11
在线时间
15 小时
毕业学校
成都理工大学工程技术学院
6#
发表于 2014-11-12 17:21:10 | 只看该作者
顶楼主,同求大神解答
回复 支持 反对

使用道具 举报

0

主题

8

帖子

0

精华

高级会员

Rank: 4

积分
537
威望
267
贡献
174
兑换币
180
注册时间
2017-9-9
在线时间
48 小时
7#
发表于 2018-2-27 20:32:46 | 只看该作者
遇到同样的问题,楼主解决了吗?
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

精华

注册会员

Rank: 2

积分
150
威望
73
贡献
39
兑换币
46
注册时间
2019-2-14
在线时间
19 小时
8#
发表于 2019-2-18 10:40:57 | 只看该作者
谢谢了正在研究
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-26 02:26 , Processed in 0.083506 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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