找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 31433|回复: 9
收起左侧

旧手机扔了太可惜?做个萌萌哒的机器人吧

  [复制链接]
ID:98924 发表于 2015-12-9 05:40 | 显示全部楼层 |阅读模式


先给51黑电子论坛的朋友来个视频吧:



编者注:本项目名叫“网灵机器人”,来自资深创客高华,创客项目的详细情况发表在网灵极客论坛。2012年高华开始接触Arduino和智能硬件,之后也经历过硬件创业,虽然没有成功,但动手和分享的乐趣并没改变。本项目的所有电路结构和源代码都已经开源。硬创邦已经取得了本文章的相关授权,并对原文进行了少量编辑,著作权归原作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。
网灵机器人是一个特殊的机器人,Ta跟常见的wifi-robot不同。常见的wifi-robot大多采用Openwrt路由器板子和USB摄像头,而网灵机器人采用闲置的安卓旧手机作为机器人的大脑。

重新利用废旧手机不仅是废物利用的环保理念,而且还能通过充分利用安卓手机的强大计算能力和硬件资源,让网灵机器人的功能更加强大、更有亮点:
  • 无需外接USB摄像头,直接利用安卓手机的高清摄像头,并通过手机强劲的GPU进行视频H.264压缩编码,以便网络传输。
  • 利用安卓手机的联网能力,WiFi、3G、4G都可以联网。并且集成了网灵的P2P云连接功能,从世界任何地方都可以连接机器人。
  • 利用手机计算能力,实现语音识别,用自然语音控制机器人动作。
  • 利用手机计算能力,基于OpenCV软件库,实现手势分析和人脸追踪。
除了作为大脑的安卓手机外,网灵机器人还采用了Arduino单片机,用于控制电机舵机和连接传感器模块。
作为大脑的安卓手机与Arduino是通过蓝牙串口(例如市面上常见的HC-06)进行通信的,其通信协议很简单,基于字符串格式。Arduino向安卓手机周期性发送传感器读数,安卓手机向Arduino发送控制命令。
网灵机器人的显著特点是:可以用手机控制端和电脑控制端从异地远程遥控机器人,并实时观看摄像头图像。这个功能的实现基于网灵的P2P云连接平台——只要机器人接入网络,就可以从世界上的任何角落连接到机器人,无需设置路由器端口,无需做动态域名映射,完全自动穿透NAT内网。
网灵机器人的控制端软件就是网灵云控制,其UI界面是这样的:
终上所述,网灵机器人的总体框架原理图是这样的:
原材料和组件
  • 方形卡通宠物外观的纸巾盒1个(这是萌的关键,某宝上有卖)
  • 万能手机夹1个(某宝上有卖)
  • 网灵机器人3D打印件1套
  • Arduino控制板+蓝牙小板1块
  • L298N电机驱动模块1块
  • 标准舵机1个
  • 电池电压传感器模块1个
  • 可充电锂电池1块
  • 65mm轮子+电机(转速不要太快,大概为50转每分钟)2套
  • 一寸万向轮1个
  • 开关1个
  • M3x30mm长螺丝4根,M3x25mm螺丝若干,M3x8mm螺丝若干,自攻螺丝若干,铜柱长螺丝2根,M3螺母若干
  • 杜邦线若干,导电线若干
工具
  • 电烙铁,电钻,502胶,电胶布,钳子,改锥,小刀
相关的代码和程序点击下面的链接下载(也可点击这里查看原发布页面):
组装过程
首先,将纸巾盒的上下两部分揭开,分为上面的盒子和下面的底盖,先用盒子。将3D打印手机夹左支架和手机夹右支架用自攻螺丝固定到盒子上,如下图,注意左右支架都要固定到盒子的最边缘,否则后面步骤将没有足够的宽度放置手机夹。
准备好标准舵机,尺寸40.7*19.7*42.9mm;用2个自攻螺丝把舵机固定到手机夹左支架上面,如下图:
下面开始弄万能手机夹,先把里面的一层透明塑料板拆下来,透明塑料板后面要用到,别扔了。把一侧的2片可活动塑料片调整一下位置,下方的一片将会固定到手机夹右支架上。将3D打印手机夹联轴器插到手机夹的凹槽处,如下图所示:
准备将手机夹安放到左右2个支架上去。一边是:一字摆臂插到舵机的转轴上。另一边是:用2个自攻螺丝将手机夹右支架和手机夹的下方可活动塑料片紧紧固定。
到此,盒子部分就准备好了。下面开始弄底盖部分。
用M3x25mm的长螺丝将2个3D打印件底盘车轮支架固定到底盖,然后把3D打印件底盘万向轮支架也固定到底盖。用电钻在底盖上钻2个孔:一个直径20mm,用于装开关;另一个直径9mm,用于装充电接口。
然后用M3x30mm的长螺丝把2个车轮(带电机)安装到底盘车轮支架上,两对电机线4根从底盖穿孔引到里面去;用M3x8mm的螺丝把万向轮安装到底盘万向轮支架上。
在里面用螺丝固定3D打印件电池固定盒,然后安装L298N电机驱动板,如下图所示:
把2个长的M3铜柱螺丝装上去,然后把之前拆下来的手机夹透明塑料板安装到铜柱螺丝上,用2个螺母固定。透明塑料板上的螺丝孔可以用电路铁或电钻弄出来。把“Arduino+蓝牙”控制板用螺丝固定到透明塑料板上,把锂电池安装到电池固定盒中:
把电池电压检测模块小板也安装上去:
把锂电池的DC母头线安装到底盖的充电孔中,用502胶固定;把20mm直径的开关安装到底盖的开关孔中。
到此,底盖部分要装的也装好了。(当然,后续如果你要往Arduino控制板上连接传感器模块的话,随时可以揭开盒子连接线路!)准备把纸巾盒上下两部分盖上:
OK,物理结构就组装完毕了,大功告成!!!
最后还可以在左右两边再装上2个舵机,固定2个小手臂,机器人看起来会更萌。而如果多做几个看起来简直会萌翻天!
电路模块连接当你把网灵机器人的物理结构组装好后,那电路连接就很容易了。准备一些3Pin杜邦线和导电线,按照下面的电路图连接相应的电路模块:
可以看出,Arduino控制板的供电是由L298N电机控制板的5V输出的。
电压检测模块连接到Arduino的模拟口A5;头部舵机连接到Arduino的数字口D9;你后续也可以扩展连接更多的传感器,比如:气体传感器MQ2连接到模拟口A4,温湿度传感器连接到数字口D8,这些都是在Arduino的程序代码中预定义好的,需要跟代码对应:
#include<Servo.h>
#include<dht.h>
//模拟IO口和数字IO口的定义
#define PIN_UNDEFINED 255
#define PIN_A_VOLTAGE 5 //电池电压传感器
#define PIN_A_MQX 4 //气体传感器,MQ2,MQ135
#define PIN_D_SERVO_V 9
#define PIN_D_SERVO_H PIN_UNDEFINED
#define PIN_D_SERVO_L 5 //PIN_UNDEFINED
#define PIN_D_SERVO_R 6 //PIN_UNDEFINED
#define PIN_D_DHT 8//PIN_UNDEFINED //DHT11温湿度传感器
#define PIN_D_RELAY PIN_UNDEFINED //一路继电器
#define PIN_D_RED PIN_UNDEFINED //红外人体感应传感器
#define PIN_D_LEDA PIN_UNDEFINED //LED指示灯A
#define PIN_D_LEDB PIN_UNDEFINED //LED指示灯B
//PT2272 Recv,D0->D3用模拟IO口实现,因为Arduino UNO的数字IO口不够用
#define PIN_D_2272VT 4
#define PIN_A_2272D0 0
#define PIN_A_2272D1 1
#define PIN_A_2272D2 2
#define PIN_A_2272D3 3
//315M、433M RF Send,控制智能开关、智能插座、电动窗帘
#define PIN_D_315SEND 7//PIN_UNDEFINED
#define PIN_D_433SEND PIN_UNDEFINED
//左中右三个方向的壁障传感器pin定义
#define PIN_D_BIZ_C PIN_UNDEFINED
#define PIN_D_BIZ_L PIN_UNDEFINED
#define PIN_D_BIZ_R PIN_UNDEFINED
//L298N电机驱动板的控制pin
//舵机用了9号PWM,L298N用10,11号PWM的话,会导致10号PWM失效!!!
//motor A
#define dir1PinA 2
#define dir2PinA 10
#define speedPinA 3
//motor B
#define dir1PinB 12
#define dir2PinB 13
#define speedPinB 11
所有的东西都配置好了之后,就该是挑逗TA的时间了:



评分

参与人数 3黑币 +18 收起 理由
huzuntao2013 + 5 很给力!
qjzyx + 5 赞一个!
芦苇劫 + 8 很给力!

查看全部评分

回复

使用道具 举报

ID:79544 发表于 2015-12-11 16:25 | 显示全部楼层
楼主你好:有51的源码吗?再就是怎么获得ID谢谢!
回复

使用道具 举报

ID:70330 发表于 2015-12-21 08:39 | 显示全部楼层
赞,51hei有你更精彩
回复

使用道具 举报

ID:236970 发表于 2017-11-5 15:48 | 显示全部楼层
厉害。楼主你就是机器人的作者么?
回复

使用道具 举报

ID:277773 发表于 2018-1-19 16:24 | 显示全部楼层
厉害了
回复

使用道具 举报

ID:266116 发表于 2018-1-19 22:37 | 显示全部楼层
很好的一个想法~~~~~~改天也试试!
回复

使用道具 举报

ID:81444 发表于 2018-3-29 10:46 | 显示全部楼层
利用手机做机器人是个好的创意。
回复

使用道具 举报

ID:277420 发表于 2018-4-10 10:35 | 显示全部楼层
qjzyx 发表于 2018-1-19 22:37
很好的一个想法~~~~~~改天也试试!

利用手机做机器人是个好的创意。
回复

使用道具 举报

ID:162514 发表于 2018-4-12 05:30 | 显示全部楼层
这也行?
回复

使用道具 举报

ID:331493 发表于 2018-5-16 18:33 | 显示全部楼层
赞,51hei有你更精彩
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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