鬼仔Robot(Wi-Fi小车)
先上图,左边的是一代,2010年做的,右边的是二代,去年年底做的。一直想发一下,希望能够跟有相同爱好的同学做一些交流,但是拖延症太厉害了,我实在斗不过他,一直拖到现在才发。
二代跟一代比起来显得太小巧了,还是一代比较霸气。
一代是基于51单片机的,二代是基于 Arduino 的。
Wi-Fi 小车这个名字应该好理解,从名字就能看出来,就是通过 Wi-Fi 控制的小车,但是除了行驶外,添加了一些别的功能,进行了强化。其实这个想法很早就有人实现了,但是自己实现起来会更有乐趣,再加上自己从小就喜欢做手工,也比较喜欢硬件,喜欢折腾,就开始尝试自己去做了。
在一代做出来之后,发现一些问题,所以没有继续后续的加强,而是想换别的方案重新做,后来知道了 Arduino ,经过一番了解后,发现没有比它更适合做类似的东西了,而且开发起来要比单片机简单多了,在简单的学习 Arduino 之后,就开始用 Arduino 来重做小车了。感兴趣的同学可以了解下 Arduino ,这里就先不介绍了。
为了整理下发出来,把放了好久的一代也拿出来了,跟二代一起录了视频进行演示,下面会分别把视频贴出来。
一代:
演示视频:
演示视频中,能看到摄像头获取的视频不清晰,并且有时候会闪,视频不清晰是因为摄像头比较差,画面闪的问题以前是不存在的,不知道现在怎么出现了这个问题,因为一代不准备继续了,因此也就没有去查原因,只是录了视频。
主要实现的功能:
1. 小车行驶控制
通过浏览器控制小车行走,无物理线路连接,通过键盘 W、A、S、D 进行操作。
2. 摄像头视频实时查看和摄像头方向控制
小车安装有摄像头,接在路由器的 USB 口上,可将视频实时回传给控制端,在浏览器中即可看到摄像头获取到的视频,并且可以控制摄像头上下左右各180度旋转,方便查看各个方向的情况。摄像头的方向通过直接点击画面进行调整。
3. Hacking
通过小车上无线路由器中的嵌入式 Linux 可以进行一些 Hacking 行为。
4. 3G
通过在无线路由器上接入 3G 网卡,达到从公网进行控制的目的。
说明:
最初是在无意间在网上看到有人发出来的一个 Wi-Fi 小车的视频,当时看了之后就很感兴趣,于是就查找相关的信息,看到了老外以前有做过类似的东西。但是自己对单片机方面的知识是空白,可以说是白痴,很难入手。看到国内有人也在做类似的东西,就进行联系,对方做单片机的开发,做出了控制板,但是没有相应的控制程序和整体的方案,因此就基于对方做的控制板开始了摸索的过程。
ps:这个方案我后来没有继续用,也没有继续参加后续的制作,但是那个朋友还在继续完善他的方案,我不清楚现在的效果如何,因为我发现了更好的方案,所以后续没有跟进。为了避免广告的嫌疑(毕竟是要用钱买的),如果有同学对这个方案比较感兴趣的话,可以单独跟我说,我会将对方的信息发给你,然后由你自行联系。
在这个过程中借鉴了老外的思路,通过将单片机与无线路由器进行结合,达到控制小车的目的。后来陆续购买了电机、锂电池、车轮子、联轴器、舵机、铝壳等配件,这里要感谢我的老爸,帮我买铝壳,帮我用电钻打孔。
一代的主要工作流程中控制信号是这样传递的:
浏览器控制端 —> 无线路由器 —> 51单片机控制板 —> 电机、舵机等
无线路由器之前比较熟悉,以前也玩过一些无线路由器,并且基于 OpenWrt 做过一些二次开发,因此这里无线路由器的 rom 我就选择了自己熟悉的 OpenWrt ,通过串口将无线路由器与控制板进行连接,在 OpenWrt 中配置了 Web 服务器与 PHP ,写了一个 Web 的控制端,这样一个 B/S 结构小车控制程序就出来了,电脑通过无线路由器的 Wi-Fi 连接到无线路由器,通过浏览器将指令传递给无线路由器,再由路由器将指令传递给控制板,通过协定好的指令来控制电机和舵机。
界面写的很烂,还包括了很多调试信息,因为没有继续这个方案,所以没有对界面进行后续的美化和完善。
———————————————————–
二代:
演示视频:
二代目前实现的功能比较简单,只是实现了行走,一样无物理线路连接。
说明:
在做二代的时候,吸取了以前的教训,不再买铝壳自己做车身了,而是在网上买了做车模的车身、电机、轮子的套装。
二代的主要工作流程中控制信号是这样传递的:
Android 控制端 —> 蓝牙模块 —> Arduino —> 电机驱动器
或者
浏览器控制端 —> Android 控制端 —> 蓝牙模块 —> Arduino —> 电机驱动器
由演示视频中可以看出,二代是用手机进行控制的,手机系统是 Android ,写了一个控制小车的 App ,通过蓝牙与小车进行连接,将控制指令传递给 Arduino ,再由 Arduino 来控制电机驱动器,达到控制电机的目的。
另外在手机端的控制程序中还内置了一个 Web 服务器和 Web 的控制端,控制方式基本和一代的相同,可以将电脑与手机连接到同一 Wi-Fi 网络中,或者电脑连接手机开放的热点,或者通过 3G 访问手机提供的 Web 服务(这个我未测试),就可以通过浏览器来控制小车了。
这里跟一代区别比较大,从无线路由器转换到了手机,因为手机集成的东西更多,比如 GPS 、摄像头、陀螺仪、加速度传感器等,可以通过手机控制,也可以将手机放置在小车上,当作大脑,通过各平台的浏览器进行控制。但是手机有一个缺点,体积比较大,想控制摄像头上下左右转的话比较麻烦,而且系统没有 OpenWrt 这种嵌入式 Linux 自由。
因此后续可能还是会选择在小车上搭载一个无线路由器,因为在无线路由器中,可以做更多有意思的东西,而且现在也有了更小巧的无线路由器。
另外,一代和二代都是四驱的,没有转向轮,车子转向是通过一侧的轮子向前转,另外一侧的轮子向后转来实现的。
———————————————————–
后续计划:
一代的方案不再继续了,还是继续二代 Arduino 的方案。平时工作比较忙,一直没有时间做后续的功能和加强,目前的计划是加上液晶屏,可以通过液晶屏传输文字给看到小车的人,添加声音的传输,跟看到小车的人进行对话,另外计划添加机械臂、GPS模块、距离传感器(超声波)、红外、温度传感器、加速器传感器、倾角传感器、声音传感器、寻线等等,并且还是以 B/S 的结构做控制,可以在浏览器中进行控制以及查看各种传感器的数据和地理位置等等,因为浏览器的通用型更强一些,适应各种平台。如果你有更好的想法,也希望能够告诉我。 :)也一直想做四轴飞行器,包括航拍等,由地面扩展到空中。
至于用途,一是为了玩,二是可以有一些很邪恶的用途,看你怎么想,怎么用了。
———————————————————–
简单的介绍和说明主要就是这些,因为时间比较长了,也一直没有整理,可能有遗漏的地方,想到后会及时更新。
欢迎有兴趣或者有相同爱好的同学跟我联系,不只局限于小车,比如 Arduino 、硬件、开源硬件、机器人、电子等方面,交流想法和经验、共同学习,可以通过留言或者邮件联系我, [email protected] ,也可以通过微博联系我 http://weibo.com/359421 。:)
最后再放两张单独的大图:
一代:
二代:
膜拜….鬼仔
这个可以wifi远控监控巡更机器人在小区内用wifi(3G)远程控制监控,自动巡更(GPS或轨迹巡航),报警,能够用语音双向交流。
机器人应该做到防盗,防摔打。巡航时间3-5小时。
智能识别(佩戴识别卡)
第一代叫做:裙底终结者
第二代给加个螺线桨配上3G叫做:浴室终结者
请问博主,基于51的是如何实现视频传输的,还有博主的上位机是用什么写的,我最近正在初学VC++写上位机,希望可以得到指导啊,谢谢。
鬼仔。。聽這名字蠻熟的。。。以前是不是也是金光混的那個唷???現在沒事。。。也來轉轉看看東西。。哈哈。。。頂。。。東西不錯。。不知道什麼時候裝成SIM卡。加上個太陽能,,這樣就爽了。。
能教教我吗? 我也想学,, 我QQ:879195350
鬼哥非一般牛人啊。
做这一套东西大概花多少钱啊?
ps:3代最好能够写个安卓APP,直接手机控制,
几百块钱吧。
二代已经有Android的APP了,就是拿手机控制的,视频中有。
能否发写详细资料给我?谢谢!
请问博主写的控制界面可以用于APC220吗 我的车用APC220模块
用串口调试工具可以简单控制 但是太拙劣 一次只能发送一个字符
想弄个类似于博主视频里的控制方法 简洁方便 非程序员 太专业的东东不懂 望解答。。
看起来很不错,希望搞个航拍的飞行机器人
特喜欢你的这个wp模板 能送给打包把模板送我吗?送不送希望回个话
貌似你是51单片机大牛啊 ! 求学习 我是小菜鸟一个 想学习 单片机拟 求指导 QQ:1216884991
乍看以为是跳蛋。。。
马达是串口控制的么?
呵呵 不错啊
可以把这个开到浴室。
视频里 你的笔记本电脑是thinkpad X61的吗?
太强悍了,好久没来你站上,你都开始出半智能智能机器人啦,回头跟你学学
前几天还在网上准备买个遥控车送给我儿子,现在看到这个觉得更有意思,我也是非常喜欢拆装小东西玩。童心未泯啊。没想到博主即对网络知识感兴趣同样也喜欢这个。有共同的地方啊~
鬼子真利害,我对这方面也很有兴趣,撑你一下~
请问 鬼仔 那个 实时返回摄像头录像时怎么做到的;怎么个原理? PHP能返回摄像头视频?
请回
顶你
很久没来了 。。。怀旧一下 。。
很牛X
博主 你这主题分享了吗
评论测试
能把Arduino 的代码和手机的APP共享吗???
鬼仔-坏蛋,好彪悍的名字,好拉风的域名啊,呵呵,
强大,一年期收藏你的网页,今天来看强啊
good !
if ( I have time )
{
I want to do it , too!
}
else
{
wait some time;
}
二代比较简单,通过安卓的蓝牙转到串口控制那个AVR单片机(Arduino);缺点就是没有摄像头,不能加入数据量非常庞大的外设,也不能连接到外网。
一代我觉得应该是可取的,openwrt可以做很多事情,如果连接外网,给自己申请个web域名的话,再通过单片机的串口通信还可以家里的设备,也就好像物联网了。
二代也可以加个刷了openwrt的路由器上去,只不过是后来没继续弄,抽空会加强下。而且现在有几个小型的路由器,会更方便一些,不用像一代那样驮着那么大一块路由器板。
你要刷openwrt的话,还得加硬件电路。
有个路由器叫703N吧?好像是的,非常小,150元左右能入手
我们老师让我参加飞思卡尔的摄像头的小车比赛,鬼仔大叔有资料没?
鬼仔你好:
看了你的文章对我很有启发,我过年期间正好有时间,想做一个玩玩,所以想向你请教,WIFI 小车配件是哪里买的?我在网上找了几个商城,但是还是想参考下你的配件。
另外制作过程有什么需要注意的?我想制作1代 的,因为那个OpenWrt 还是比较多的,有什么资料的可以分享下啊。。。你那位朋友可以介绍我吗??
期待你的来信
geeker!厉害啊
太牛了。膜拜啊。顺便问一句,博主的虚拟主机哪里买的。我最近想换日本虚拟主机。美国太慢了。
阿鬼粉丝很多。。
这个感兴趣.可以用来做移动监控.关键问题是要解决小车上的电源续航性问题.外面再套上个外壳.这样好看又防护电路板.
真想能和你学习~~
这个NB,我只能做个工艺品,和这个一比,人比人得死,货比货得仍。都像智能方向发展了。
其实你可以改变下思路,现在手机这么强大了,把手机和车组合下就可以了,视频把手机的摄像头拆下来加长排线就行。淘汰的手机当然不用新的。
好牛逼啊,撸主教教我呗
原来在学校学单片机就有弄过些简单的小玩意,当时觉得挺有趣的,不过也没深入玩下去
战5渣
鬼仔,有没有说明书,我们也想自己做,看看需要什么材料,谢谢
第二个叫蓝牙小车了。如果做成wifi小车会更好玩,发射距离更远 XD
做个能飞的。。比方说上面加个氦气球,然后加上一些其他的控制,可以参考四旋翼直升机,加上气压计测高度,还有红外线测距仪神马的,
你这也太强了
可以试试把手机的重力感应加进去,真正做到极品飞车一样,楼主你就是我的偶像了
还有心思搞这个,蛋碎
想想就牛B,以前都是玩游戏打发时间,看过这个羡慕嫉妒狠啊。
学习~~~
无线是NRF?