鬼仔Robot(Wi-Fi小车)

鬼仔 Robot 一代+二代 合影

先上图,左边的是一代,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 连接到无线路由器,通过浏览器将指令传递给无线路由器,再由路由器将指令传递给控制板,通过协定好的指令来控制电机和舵机。

Web 控制端的截图:
鬼仔 Robot 一代 Web 控制端

界面写的很烂,还包括了很多调试信息,因为没有继续这个方案,所以没有对界面进行后续的美化和完善。

———————————————————–

二代:

演示视频:

二代目前实现的功能比较简单,只是实现了行走,一样无物理线路连接。

说明:

在做二代的时候,吸取了以前的教训,不再买铝壳自己做车身了,而是在网上买了做车模的车身、电机、轮子的套装。

二代的主要工作流程中控制信号是这样传递的:

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 。:)

最后再放两张单独的大图:

一代:

鬼仔 Robot 一代

二代:

鬼仔 Robot 二代

相关日志

楼被抢了 138 层了... 抢座Rss 2.0或者 Trackback

Comment pages: 1 2 3
  • EdisonTsai

    这个不错,有空也想弄个来玩玩。

  • 行者无疆

    鬼仔太厉害了,我是来支持你的!只是通过wifi来控制多少有点局限(行驶范围等),不知道能不能换成手机控制(装上sim卡)通过3G网络来操控,这样实用性更广!

  • tSt

    赞一个 哈哈

  • 北北

    竟然更新blog了

  • Lerry

    可以用支持3g的路由器,控制段和被控端通过公网服务器中转,一点想法

  • rem7ter

    以后鬼仔渴了直接一个指令传输过去,robot上面就放着一杯水进来了,帅呆了

  • 鬼鬼你现在越来越BT了……..

  • sbilly

    不错~~

  • opensoce

    太厉害了,这块我已经放下很多年了,再也做不起来了……佩服!

  • 7j

    换方向了呀,没有听你说起呀

  • 真理瞬间

    这个可以做战争驾驶 如果硬件方面允许的话 我指的硬件还包括天线 如果做成能转动的就可以弄定向天线 如果不能转动就必须全向了

  • 真理瞬间

    加个路由到处中继…. 前提是不被人拿走…. 这个估计在国外可以 天朝的国民素质… 不到10分钟估计这玩意就消失了

  • Baidu

    电影看太多了。。

  • test

    这个弄套贵哇?看着很神奇,如果便宜也想整来玩玩,太牛了

  • vc

    能源 也就是电池一个是限制这个长距离控制的因素 如果能有办法解决掉能源问题 长距离控制 相当不错

    • Deity

      用太阳能可以解决这个问题!

  • Gabriel

    邪恶的用途,邪恶的用途.呵呵

  • itxx

    居然有更新博客。。。

  • 我草

    做个飞机的,偷拍神器啊。

  • kxlzx

    去饮水机接水可以做到吧
    只是对饮水机有要求,开关离地面低一些,拿车子撞过去,车子重量达到一个数值(这句话可以写个函数,还可以做其他事情)接满水,退回,下药,给鬼仔喝。
    这就完事了。

    • 鬼仔

      嗯,加上机械臂会简单一些。
      ps:下药那一步能不能不要?

      • amxku

        下药这一步必须要

        • 看来你有心把鬼仔的Robot小车黑了,然后加个后门。。。
          以后半夜遥控他偷窥鬼仔裸睡的样子,然后弄个摄像头,拍个照片…

  • 小白

    赞一个,也很喜欢这些东西..呵呵

  • 老刁

    哈哈,加上语音识别,说话控制会更cool……

    • crll

      语音识别,应该会有很多弊端吧,如果嘈杂的环境应该就不好啦。

  • 求教鬼仔

    记得你之前有法C++ win32 downloader的代码帖么?我用了,但是用C++编译的时候连接有问题,我该怎么做呢?
    http://huaidan.org/archives/1994.html

  • 鬼仔,你的wordpress主题能分享下吗?

  • 冰雪

    无线网络 安全是个问题

  • 袁熙

    不错,。 看完了!

  • 卡农ling

    你好哦~~看到你08年发的个帖子~~就是在emule上实行DDOS攻击是否可行~~~你研究的咋样啦啊~~http://huaidan.org/archives/2186.html~~~

  • 小老翁

    牛叉!

  • Gryu

    太强大了,通过3G控制,可以随时观察家里或者店铺里的情况,比那些固定的监控系统要好多了。。。睡在家里,拿着手机或者电脑,控制着小车在店铺里巡视巡视。。。。爽。

  • Pop

    鬼仔这么长时间不更新。一更新就是高级东西啊。

  • guest

    http://baike.baidu.com/view/2523196.htm
    这里面几款超小 3G无线路由器可以试试。

  • choovin

    相当有质量的一个博客,以后常来学习才行

  • C2

    膜拜~~ 大牛要逆天做霸天虎呢还是擎天柱呢。。。

  • 不填说不了话

    多少钱,我买一个玩可以吗

  • ppazhang

    呵呵呵 老大 太佩服了 这十几年来上学上的我已经只知道看课本了 丢下课本就钻网吧 激起了我的兴趣 嗯 利用自己的空余时间 也来搞搞单片机 和Arduino,还有那承载我儿时梦想的舰艇

  • 黑熊

    Arduino处理视频不给力吧,二代什么时候加摄像头

  • s7ooL

    这个真心强大,手机带着就可以控制小车车,厉害。不愧是前辈!

  • h2ero

    如果噪音小点点就可以邪恶了。

  • Qzz

    碉堡了。

  • snowperd

    这个很牛的

  • shisekong

    这个功能有点邪恶啊!很黄很强大。

  • cn

    你是我的偶像

  • Ack

    我就不告诉你我也有一个

  • 荆轲

    好牛逼啊,我是电气自动化专业的,原理知道,但就是做不出来

    可见博主的专业知识有多深厚

  • 丁臣

    终于知道什么叫做高手了。

  • 光头和尚

    博主的那个车很牛,但是我更喜欢那个摄像头,能给我讲讲么?我的邮箱如上。膜拜

  • anydway

    不错,我最近也做了个~两驱的加一个万向轮,就是不走直线,这个咋解决。

  • anydway

    顺便申请做个友链吧~

  • Win32Hack

    关注鬼仔大叔挺久了,终于更新blog了,这玩的厉害了。0rz.

  • 小色

    鬼哥铁血真汉子

  • 贵祥

    牛人,给我儿子看了,呵呵,激发起了儿子学习的热情啊。

Comment pages: 1 2 3

发表评论