打印

分享团队的DIY坦克车,感谢欣赏,【已更新到解密10结构】

[复制链接]
8448|42
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
@ZiShi|  楼主 | 2013-1-2 20:54 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 @ZiShi 于 2013-1-22 14:45 编辑

已更新到解密10结构与组装,详见34楼,感谢朋友们关注......
分享团队的DIY坦克车,感谢大家欣赏
视频地址

分享部分照片






后面还会共享更多细节




坦克3.jpg (54.69 KB )

坦克3.jpg

相关帖子

沙发
jy01758633| | 2013-1-2 21:23 | 只看该作者
是电动的么?求视频呀 :D

使用特权

评论回复
板凳
otheric| | 2013-1-3 20:52 | 只看该作者
坦克,后面有没汽车,飞机什么的:lol

使用特权

评论回复
地板
@ZiShi|  楼主 | 2013-1-4 16:18 | 只看该作者
本帖最后由 @ZiShi 于 2013-1-4 16:52 编辑
jy01758633 发表于 2013-1-2 21:23
是电动的么?求视频呀


感谢支持

使用特权

评论回复
5
@ZiShi|  楼主 | 2013-1-4 16:19 | 只看该作者
otheric 发表于 2013-1-3 20:52
坦克,后面有没汽车,飞机什么的

可能会有的吧,感谢关注:)

使用特权

评论回复
6
jy01758633| | 2013-1-5 14:39 | 只看该作者
@ZiShi 发表于 2013-1-4 16:18
感谢支持

呵呵,挺不错的  

使用特权

评论回复
7
@ZiShi|  楼主 | 2013-1-5 22:57 | 只看该作者
遥控坦克DIY过程解密(01)
>>>>>>>>>>2013-01-04<<<<<<<<<<

视频


【前言】
       贴子发布了几天发现有很多网友对“@ZiShi”这个遥控坦克的DIY过程比较感兴趣,不时有朋友通过QQ加好友询问这个坦克的DIY过程和控制原理,为了大家进一步了解这个项目,“@ZiShi”将本着开放、分享的原则对这个坦克的DIY过程进行“解密”,说是“解密”可能更多针对一些DIY“新手”而言的,对于一个DIY“高手”来说这些可能并不算什么,但是仍然希望DIY“高手”们来分享这个过程并提出您的改进意见。
【面向玩家】
       这个坦克的DIY过程主要面向广大的小车、模型、电子、机械DIY爱好者,重点在于分享DIY过程以及DIY心得,与更多朋友分享DIY的乐趣。
       如果您是一个DIY“新手”通过“@ZiShi”的这些文字您可以了解到DIY过程中使用到的一些工具、设备、相关基础知识以及这个坦克的组装过程。如果您是一个DIY“熟手”,您可能曾经做过类似的事情,同时更希望了解“@ZiShi”这个坦克的DIY过程以及内部原理,“@ZiShi”在这里都会呈现给大家。如果您是一个DIY“老手”的话,那么“@ZiShi”的这篇文字在您面前就显得班门弄斧了,我们更希望您能为我们的进步提出更多宝贵意见,在这先说一声谢谢。
【几点说明】
       在此要说明几点:
       1、于精力和时间的限制再加上内容较多,这篇文字会不断更新直到完成,请大家持续关注;
       2、解密”过程将会沿着电路、软件、机械、组装的过程展开;
       3、于篇幅所限文字将侧重原理进行讲解;
       4、字中会涉及到一些专业知识如机械、电子以及软件,如果我们哪里做的不合理或不正确请您明确指出;
       5、于一个DIY的作品很多地方是不能使用产品级的眼光去看待的,这样会给DIY过程带来很大困难,当然我们力争做到专业;

       上面说了很多题外话,下面进入正题。

【解密-电路】
       待续……

使用特权

评论回复
8
dirtwillfly| | 2013-1-6 12:42 | 只看该作者
@ZiShi 发表于 2013-1-5 22:57
遥控坦克DIY过程解密(01)>>>>>>>>>>2013-01-04

期待楼主的解密,很感兴趣,学习学习。

使用特权

评论回复
9
@ZiShi|  楼主 | 2013-1-6 15:26 | 只看该作者
dirtwillfly 发表于 2013-1-6 12:42
期待楼主的解密,很感兴趣,学习学习。

多谢支持:)

使用特权

评论回复
10
@ZiShi|  楼主 | 2013-1-6 15:28 | 只看该作者
本帖最后由 @ZiShi 于 2013-1-17 14:37 编辑

遥控坦克DIY过程解密(02)

>>>>>>>>>>2013-01-05<<<<<<<<<<



       继续解密……
       首先我们进行一个简单设计,规划一下我们的遥控坦克要具备哪些功能。我们希望DIY后的遥控坦克可以实现下面一些功能:
       1、前进;
       2、后退;
       3、左转;
       4、右转;
       5、**塔顺时针旋转;
       6、**塔逆时针旋转;
       7、通过遥控方式实现功能1-6;
       我们知道坦克的移动以及**塔的旋转可以通过电机实现,对于遥控功能的话我们这里选用的是NRF24L01这个无线收发模块,所以对上面7点进一步概括的话我们只要实现电机的控制以及无线接收与发送就可以了。
       下面是遥控坦克的功能图。


       图中的“M”表示坦克上的3个电机,分别是2个轮子和1个**塔,绿色的框代表NRF24L01这个无线收发模块(需要2只),实际上剩下的工作大家都很容易想到,只要接收模块接收到遥控发来的命令然后对命令进行识别,最后控制电机旋转。
       做过电机控制的朋友都知道只要通过一个叫“H桥”的电路就可以轻松控制电机转动,那么实现“H桥”的方法有很多,大家可以使用独立元器件去搭建电路当然也可以选择现成的控制芯片,我们选择第二种方法,选择使用芯片有几个好处,第一它能够大大节省我们的DIY时间,第二降低了实现的难度,同时芯片的集成度也比较高让电路看起来比较美观。这里我们不去讨论如何选择“H桥”芯片,我们只简单的介绍我们使用的这款芯片“L9110”,因为他价格不贵而且使用方便,下图是L9110使用手册上的截图。

       我们发现这个芯片上有8个引脚,我们只要关注其中的4个就够了分别是IA、IB、OA和OB那么这四个引脚的关系是什么呢,继续看芯片的使用手册(本来是件挺轻松的事情结果动不动就要把手册请出来,真是头大),通过浏览芯片的使用手册我们会发现这样一张图,如下:

       这张引脚波形图已经清楚的告诉我们,IA和OA的关系以及IB和OB的关系,用一句话概括就是输入是高那么输出也是高,输入是低输出也是低,怎么样简单吧。
       知道了引脚的时序关系后就可以要把他它连接到电路中了,芯片的使用手册上已经给出了应用电路,我们照做就好了,看下图:

       这个电路看起来还是蛮简单的,芯片左边连接电机右边连接单片机的IO。
       待续……

使用特权

评论回复
11
hnruijie| | 2013-1-6 20:37 | 只看该作者
:victory:

使用特权

评论回复
12
@ZiShi|  楼主 | 2013-1-7 12:15 | 只看该作者
本帖最后由 @ZiShi 于 2013-1-7 12:17 编辑
hnruijie 发表于 2013-1-6 20:37

:P

使用特权

评论回复
13
@ZiShi|  楼主 | 2013-1-7 12:18 | 只看该作者
本帖最后由 @ZiShi 于 2013-1-17 14:38 编辑
dirtwillfly 发表于 2013-1-6 12:42
期待楼主的解密,很感兴趣,学习学习。

遥控坦克DIY过程解密(03)
>>>>>>>>>>2013-01-07<<<<<<<<<<

       继续解密……
       上一回我们已经大致了解了“H桥”芯片L9110的使用方法了,这一回我们将解释如何使用这个芯片来控制小马达的旋转,参考上一回芯片手册上给出的应用电路,我们可以清楚的知道只要将芯片的OA和OB引脚与马达的两个引脚相连就完成了马达与芯片的连接,如图3-1所示:

       马达与芯片连接好以后,坦克控制系统的主角就要登场了,她就是微控制器(MCU),在我们的坦克系统中马达的启动、停止、旋转方向以及旋转速度都是由微控制器进行精确控制的,可见她的地位是非常重要的。
       说道微控制器我们也叫他单片机,常见的单片机有很多51、AVR、Arduino、ARM等等,我们这个坦克所使用的单片机是51兼容的单片机,具体型号是STC89C52,这款单片机的程序空间以及她的数据空间完全能够满足我们DIY遥控坦克的需要,而且使用起来也比较方便,图3-2是一个STC89C52单片机:

       单片机的IO引脚是其与外界通信的重要手段,我们正是利用单片机的IO与L9110进行通信的,下面看我们是怎样将两者进行连接的,如图3-3所示:

       将单片机的P10和P11分别和L9110的IB和IA相连,这里需要提醒那些想使用这个电路DIY的朋友,需要注意图中那两个虚框专业上称为上拉电阻的家伙,有的时候单片机引脚的驱动能力有限需要使用这种方法提高她的驱动能力,这个要视情况而定,并不是所有情况下都需要这个电阻的,可能有人会问到如果需要的话选什么阻值呢,根据我们的经验选择10K欧姆电阻式可以正常工作的。
       有了上面这个电路我们就可以完成一组电机的控制了,这里我们需要三个电机那么如法**制,只要再次分配4个IO口连接另外2块L9110就可以了,如图3-4所示:

       另外这里还涉及到单片机的工作问题,比如电源怎么接、地线怎么接、还有复位电路等等,这里都没有描述,由于这些内容讲起来比较占用篇幅,如果有想使用这个电路进行DIY但又不太熟悉单片机的朋友可以联系“@ZiShi”,我们可以提供更细致的资料。
       电机控制原理基本介绍完了,看起来并不复杂,后面该介绍数据接收部分的电路了。
       今天就到这里,下回继续……

使用特权

评论回复
14
yc_2503| | 2013-1-8 18:04 | 只看该作者
等待楼主的的进一步分享~

使用特权

评论回复
15
@ZiShi|  楼主 | 2013-1-9 12:58 | 只看该作者
本帖最后由 @ZiShi 于 2013-1-17 14:39 编辑
yc_2503 发表于 2013-1-8 18:04
等待楼主的的进一步分享~

遥控坦克DIY过程解密(04)
>>>>>>>>>>2013-01-09<<<<<<<<<<

       上一回我们分享了电机控制的原理,这一回我们继续看下遥控是如何实现的。
       对于一个坦克或小车来讲我们总不希望他拖个长长的尾巴跑来跑去(线控)这样会大大的限制住坦克的活动范围,如果是飞机或舰船的话使用线控就显得更不合适了,那么使用什么方法来对坦克进行远程的控制呢,同样有很多方案供DIY爱好者选择,简单来说有下面几种:
       1、常见的航模遥控器,如图4-1,加上接收器一套下来估计最便宜的那种都要一两百元,不太适合资金有限的DIY朋友;
       2、还有一种遥控外观如图4-2,这种遥控器主要用来控制电灯的开关,以及经常出入停车场的朋友常常会看到门卫手里拿的这个东西遥控进出口栏杆的起降,这个种模块使用非常简单,但是有一点不足这个模块可以表达的信息有限,对于简单的开关完全可以,但要是功能多起来,这个遥控就应付不了了,尤其要实现比例遥控的话这个模块就无能为力了;
       3、第三个就是我们这里要讨论的NRF24L01这个模块了如图4-3,首先他价格便宜其次它是一个数据传输模块可以传输多种控制命令,但它也有缺点那就是他的接口比较复杂需要特定的时序才能完成对它的控制;
   
       经过综合的考虑我们选择了NRF24L01这个模块,决定使用单片机对它进行控制。
       下面就是硬件的连接问题了,说到这里我们又要去翻看芯片的使用手册,还好我们有图4-3这样的模块,模块中已经帮我们做好了芯片的周边电路,我们并不需要做这些工作过了,我们只要了解这个模块各个针脚的定义就好了,看图4-4。

       这个模块有8个针脚,分别代表VCC、GND、CE、CSN、SCK、MOSI、MISO、IRQ,我们看看如何把这个模块和51单片机相连,如图4-5。

       我们将无线模块的各个引脚与单片机的P2口相连,同时将它的中断引脚连接到单片机的INT0引脚,这部分硬件电路的搭建基本就结束了,需要注意的是图中那个上拉电阻,到了这里坦克一端的硬件电路基本已经形成了,看下完整的电路,图4-6。

       后面我们再简要介绍一下,遥控手柄一端的电路,今天先到这里。
       待续……

使用特权

评论回复
16
啊西北狼| | 2013-1-9 16:58 | 只看该作者
在等待

使用特权

评论回复
17
@ZiShi|  楼主 | 2013-1-10 09:16 | 只看该作者
啊西北狼 发表于 2013-1-9 16:58
在等待

谢谢支持 :)

使用特权

评论回复
18
@ZiShi|  楼主 | 2013-1-10 09:17 | 只看该作者
       前面在介绍遥控坦克实现过程中提到了NRF24L01这个模块,但是这个模块有个缺陷就是编程复杂,这里在给大家补充一个方案,就是上图的飞思卡尔无线串口,这个也可以用来遥控小车,只要把它插在串口上,基本上无需额外编程了,只要操作串口就好,同时价格适中。

使用特权

评论回复
19
@ZiShi|  楼主 | 2013-1-11 11:18 | 只看该作者
本帖最后由 @ZiShi 于 2013-1-17 14:40 编辑

遥控坦克DIY过程解密(05)
>>>>>>>>>>2013-01-11<<<<<<<<<<

       上一回我们介绍完了坦克一端的硬件部分,这回继续介绍一下手柄一端的硬件,比较之前的电路手柄这边的电路要简单一些了,还是老习惯我们先分析一下手柄的功能,如图5-1。

       手柄的主要任务就是处理玩家的一些动作,然后将玩家的动作以命令形式发送给坦克。那么玩家都有哪些动作呢?总结下来就一个动作“按键”,当手柄发现用户按下按键后,判断用户按下的是哪个按键最后将这个按键对应的操作以命令形式发送给坦克。
       根据前面对坦克功能的定义我们要实现的动作有前进、后退、左转、右转、**塔顺时针转、**塔逆时针转这几个动作,那么我们就来设计一个带有6个按键的手柄,其大致外观如图5-2。

       功能基本确定了我们来看下手柄一端的电路如何设计,涉及到数据传输模块的设计其实与坦克一端是一样的,可以直接参考《遥控坦克DIY过程解密(04)》来完成相关电路的设计,我们仅仅讨论按键电路的设计,如图5-3所示。

       其中阴影部分电路就是遥控手柄的按键电路,同时已经给出了数据传输模块的电路。我们一共定义了6个按键使用单片机的P0口去读取按键的状态,如果读入的数据是‘0’说明按键是抬起状态,如果读入的数据是‘0’说明按键被按下。怎么样其实实现一个手柄也并不复杂,对于我们DIY来说这个电路已经完全够用了。我们可以选择图5-4这种小按键来制作我们的手柄。

       把这种按键焊接在万能版上效果如图5-5所示。

       DIY这个遥控坦克所涉及到的硬件部分基本介绍完毕了,后面的工作就是根据原理图(在万能版或面包板上)把电路搭建好,搭建好电路后就可以进入软件设计阶段了。
       今天先进行到这里,待续……

使用特权

评论回复
20
飘飞的云123| | 2013-1-11 21:14 | 只看该作者
这么详细,岂能不顶楼主!!  1042153286 求楼主互加!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:大家一起DIY http://atzishi.blog.163.com/

8

主题

38

帖子

0

粉丝