1601
Robotank构建控制WIFI,摄像头,大炮等。
大家好。我做了一个强烈的欲望与世界分享他们的成就。成就是一个坦克rulitsya通过WiFi用手柄,播出遥控器和声音发出的远程实时视频,并拥有一个激光瞄准器枪,其中列有可能拍别人。
这篇文章将是第一次测试,以了解这是否有趣的是,有人比我其他的。它将描述的一般结构,使用的技术和设备。
UPD:的补充视频
。
启动一个小的视频吸引眼球。声音来自罐的扬声器。
这一切是如何开始
很久以前,我做了一个梦,使机器人爬虫,这可以被远程操控。主要问题是缺乏直接履带。最后,我决定买一个无线电控制坦克拆,但我很幸运,店里发现的垃圾罐雪豹(潘兴)之间 - 美国M26 Pogorevshikh与电子产品,而是彻底维修的机械部分。这正是你需要的。
追求机箱是dokupleny集热引擎的两个电压调节器,三脚架,两个伺服电机的摄像头,支持MJPEG硬件和外部的无线网卡TP-LINK TL-WN7200ND网络摄像头。过了一会儿加入到设备列表中,便携式音箱,USB zvukovuha创新声霸卡播放和简单的麦克风和一对USB集线器,使这一切连接到成为树莓派的控制单元。塔罐被拆除,驾驭这是非常不舒服,因为所有的全日制技工是建立在传统的发动机没有反馈。
只是指定的照片被制成当坦克几乎准备,但不是在制造过程中。
营养和接线
在电池仓内,我猛的最大的锂聚合物电池,有已得到。她dvuhbanochnaya 3300毫安时的电池,在机身坚固,这是常见的汽车模型中使用。我才懒得焊锡,因此换用整个标准开发板与2.54。后来,第二个在顶盖和带状电缆连接它们。上每两个电动机的我有我的电压调节器,它是在一个奖金问题的形式稳定功率约5.6伏。有一个控制器,动力树莓和WiFi卡,电源从第二到舵机和USB集线器连接到外围。
我们必须做出这一举动
我们必须以某种方式做出来。树莓是不是偶然的选择。首先,它可以让你把一个正常的全linuh,其次有一堆的GPIO腿包括能产生脉冲信号,伺服控制器和中风。生成这样的信号可以被监视 ServoBlaster 的。启动后,它会创建文件/ dev / servoblaster,您可以在其中写东西像150 = 0,其中0 - 数字通道,150 - 几十微秒脉冲长度,即150 - 1.5毫秒(值最舵机范围700-2300毫秒)。
因此,连接控制器7和11个GPIO引脚和运行servoblaster团队:
<前>&LT;代码级=&QUOT;庆典&QUOT;&GT;#servod --min = 70 --max = 230 --p1pins = 7,11&LT; /码&GT; 预>现在,如果我们写到/ dev / servoblaster线0 = 1 = 230和230,油箱爆炸前进。
将相机连接
骑车上下是伟大的,但想做到这一点,至少在隔壁房间,最好都在互联网上,因此有必要建立一个实时视频。在互联网上发现了一个简单的项目 tinycamd 。项目是由HTTP管理的服务,可以采取截图和更改相机设置。不多,但有总比没有我还没有找到更好的,所以我不得不记得和借鉴是作者没有意识到,即广播MJPEG流HTTP(顺便说一句,与世界上修改后的源代码共享?)。这是JPEG相机随附的关键,在此处理器树莓是不够的。结果,我被连接到罐体由SSH,通过浏览器打开了视频流,去的房子,是幸福的,只要它沉没通道。这是非常有趣的,以第一次看的冷冻框架,然后让所有停留在加速模式。实时视频流通过TCP - 是邪恶
。
升级,改进等
然后是用c pygame的以接收来自游戏手柄,dopilivanie tinycamd事件写在服务器和客户端的Python库的漫长的过程,所以他派视频流通过UDP和设置在相机上舵机的三脚架能够环顾四周。然后去了坦克第一次到办公室以外的视线。在这一点上,可以理解的是,不仅要观看,而且还具有双向音频信道,例如,要求同事开门或呼叫电梯。
声音
播放声音是使用廉价的口袋音箱USB,在超市买的股票。它是连接在一起通过USB zvukovuhu一个简单的麦克风。有声派上用场库 pyalsaaudio 工作。 dopilivaniya服务器和客户端后,有rassekaniya坦克交谈,并听取中的机会。
光
接下来fichey清淡。在某些时候,人们清楚地看到摄像机的灵敏度可以很容易被忽略,并且有机会在黑暗中打电话,不要离开。的第一个想法是红外光。组装的红外LED线,但经验表明,在使用它们到零。光线很不好,小。一个现成的红外照明需要12V电源(我只有2家银行,即最大8C),狂饮大量的电流,繁琐,价格昂贵。这样一来,就决定进入可见光范围内,购买了两个强大的白光SMD LED和镜头给他们。为了功率从目前的监管,这是通过GPIO脚树莓FET电源单元使驱动程序创建的灯工作的同事。从现在起,在黑暗的房间不再是一个障碍。
电池,其充电的确切水平
在所有阶段,但仍不清楚,你可以去多久没有杀害电池(Li-宝不能及时排出低于3.3V比银行)。我还没有找到一种方法来衡量通过GPIO脚酸莓的电压,因此,作为衡量投入的Arduino纳米,这在将来直接连接的LCD画面C I2C接口。电池被通过一个模拟除法半脚Arduino的连接,只留下校准读数。 Arduino的传统上与经由也被显示在树莓GPIO脚COM端口主单元通信。
什么坦克没有枪
一槽的最后部分是枪。枪是在商店中部分无线电遥控模型的形式买了那里。她,然而,用于罐的另一种模式,但它的要点没有变化。气动枪,具有发动机,斗鸡弹簧活塞和联系人闭合发射时。水平转动枪我还没有放弃,为了不进行这一切的工具包,它固定在顶盖上,而对于垂直使用功能强大的伺服。为了更容易驾驭,我没有把枪上的同步与摄像机的转动。这就是我们期待(垂直),那里拍摄。对于瞄准枪被固定在桶激光笔LED上。所以再次不浪费电池或激光光,是没有必要的,这是必要的,以使枪被关闭。拍摄的过程是不是很简单。有必要打开发动机的功率,并等待触点闭合,在此之后,发动机关闭。其结果是,控制和功率开枪伺服激光被挂在Arduino的,并产生用于伺服树莓的信号。发动机枪也不得不进行单独的电源线,然后逐渐使用PWM,因为否则的干扰到达营养和Arduino的去重启。提交炮弹,也就是球,用药丸TicTac箱在底部有一个洞。
大概为第一次就足够了。如果你喜欢这篇文章,我会静静的写在下面的帖子的细节。最后,一些照片和视频svezhesnyatoe。但是,质量是不是很,所以我提前美学家道歉。
来源: habrahabr.ru/post/244407/