找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3890|回复: 2
打印 上一主题 下一主题
收起左侧

用ATmega16单片机制作机器人小结

[复制链接]
跳转到指定楼层
楼主
ID:51707 发表于 2013-7-11 00:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       随着单片机故障的出现,机器人调试工作被迫中止,我也被迫得以清闲。于是写一篇半技术文,小结一下我的机器人比赛前段经历。到目前为止,遇到过3次非常头疼的问题。所谓非常头疼,就是看起来特别弱智的问题,但花了一两天也解决不了。当然解决了以后证明确实很弱智。羞耻录如下:
        首先是刚买回来我的第一块单片机之后的第一个程序:想点亮一盏LED灯,怎么也不行,这就像刚学编程的人想输出“HELLO, WORLD!”却总是失败一样打击人。结果是,用的编程器progisp有bug,应该先擦掉再写入,它却先写入后擦掉……手动先擦再写就解决问题了。

        其次是我单片机升级的时候,由atmega16换成atmega128之后,想测试一下芯片,写了一个让一盏灯不停闪烁的程序,又失败了!这就像刚学编程的人想输出“HELLO, WORLD! MY NAME IS WYT.”却总是失败一样打击人。我想,上次失败是软件问题,这次不该是了呀,肯定是程序写得有问题,找了两天程序的问题(当然顺便学了头文件和软件使用方面等等好多东西),最后发现是编译软件ICCAVR要设置单片机型号,同样的语句对不同型号的单片机有不同的翻译方法……

        第三次就是这次了。总也无法下载程序,上网查资料,问题没解决,但是学到了好多熔丝位设置,时钟设置等方面的知识,同时也学到了解决类似问题的许多种方法,可惜都不适合我这个问题。
通过这三次经历,我的体会之一是:问题,的确是上天赐予你的进步的捷径。只是很多人看不到这条捷径,而选择放弃。实际上问题越难,你将获得越大的进步。好比这次困难,如果我上网查到的第一条解答就解决了问题,那我就不可能继续深究了。
除了这三次最头疼的问题,还有无数次遇到小问题。我喜欢解决问题,特别喜欢用非一般的方法解决问题,还喜欢不断发现问题。

举几个例子吧:
         机器人有尺寸要求,要能装进直径20cm的圆筒。先介绍下背景:联轴器是连接电机轴和车轮的东西,车轮内侧有一个正六边形的凹槽,联轴器刚好能与凹槽吻合这样车轮就不会打空转。但我们发现电机加轮子加联轴器怎么摆都会超宽,轮子又没有别的可选。因此我放弃了过长的联轴器,装上了一个比较短的塑料齿轮,然后把齿轮用钢锉锉成刚好能固定车轮的正六边形,最后用绳子把车轮和齿轮绑牢,至今车子都跑得挺好。

         后来选传感器,前辈和别人一直都用红外测距,但我觉得超声传感器没什么不好,就买了一个试试,后来发现效果很好,当然,测试的过程也是充满艰辛,从明明就对的程序却无法运行,到运行之后测量不精确,到拿一本书摆在传感器面前的各种位置各种角度进行性能测试,到多个传感器之间的相互串扰测试,到从用中断控制改为非中断控制以加强程序稳定性,我假期在家的时间基本都是在研究超声传感器中度过的。虽然现在对其外部特性基本熟知了,但因为没遇到传感器不能工作的情况,所以一直没有动力研究硬件结构。现在已经有其他队伍也想用超声传感器了,呵呵,不小心改写了一下传统……
后来写程序,我一直记着要模块化以便程序越来越大的时候不会混乱。因此写了很多函数,各种可能的方法都要进行测试:比如两个轮子控制转弯时候究竟是一轮转一轮停呢,还是一轮快转一轮慢转呢,还是一轮正转一轮倒转呢?都试过。现在已经写了900行代码,暂时还没有乱的感觉,可能就要归功于之前坚持的模块化原则吧。

还有保证车子方向的程序,自己想了三四个方法,翔哥也提供了很多建设性的想法,我都会写出程序进行试验,最终选出效果最好的方法。
另一个比较有个性的是:我从家里翻出来小学的学具,类似积木一样可以插接的东西,而且颜色鲜艳,我用这些东西把传感器固定在车上,很牢固也很阳光,哈哈……

最后写一句在别处看到的,我也比较认同的话,来纪念我一个假期没日没夜每分每秒都与机器人厮混的生活:时间在哪里,成就就在哪里;而兴趣在哪里,时间就在哪里。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:61322 发表于 2014-8-13 13:54 | 只看该作者
赞一个
回复

使用道具 举报

板凳
ID:66070 发表于 2014-9-12 00:00 | 只看该作者
时间在哪里,成就就在哪里;而兴趣在哪里,时间就在哪里。说的好
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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