loading

无梯子看视频:

http://www.bilibili.com/video/av7937721/

效果:桌面上有2轴云台顶着个mark图片,用户用cardboard可看到各种敌人,对射进行游戏。

基础原理:AR可知道mark和用户cam的角度差,数值通过wifi传到云台舵机,可指向玩家;

感谢:

      • Vuforia 简单牛B的AR,有免费许可,还能和CardBoard搞基;
      • https://goo.gl/images/H8Tzw9,奎爷的头像,像素风格,漂亮且易被AR识别;
      • Majenko Technologies,Wifi和软AP的代码小改了下,简单好用;

      Step 1: 材料清单

      • 硬件部分:
        • 智能手机一部;Android本例中验证成功,iPhone理论也可行(后面详解);
        • CardBoard谷歌纸盒眼睛1个;
        • 两轴云台一套;购买或用硬纸板diy;
        • A4纸一张,用于打印mark图片;
        • Arduino主控板含wifi模块:WeMos D1 1块;
        • Arduino扩展板 1块;
        • 公-公 面包板 杜邦线 若干;
        • 9克舵机 2个;
        • 电源模块 1个(可选);
        • 订书机、胶棒、剪刀、裁纸刀;
        • 电源部分,二选一:
          • DC电源适配器,输出5V 2A;输出端口要么是 arduino板的大圆口,或者面包板的杜邦针插;
          • 充电电池:航模锂电、18650锂电 或 5号充电电池,任选一;推荐度由高到低;
      • 软件部分:
        • arduino.cc 官方编辑器(注:不是org滴);
        • Unity5.3.4;
        • Vuforia unity SDK 6.2

      Step 2: 两轴云台制作

      找个没用的包装盒,拆开铺平。云台一共分三部分:

      1. 底座,找个大块的硬纸壳就行;
      2. 云台立柱,安装横向旋转的舵机,和纵向旋转的舵机
      3. 云台摇臂,安放mark图片;
      4. 找打印机把mark图打印出来,1/4的A4大小就够,胶棒贴到硬纸壳上;

      使用订书机固定硬纸壳,舵机摇臂孔和硬纸也可用订书钉固定;

      不要选择太厚铜版纸,否则订书钉无法穿透;

      Step 3: 硬件连接

      图例中的uno版其实是wemos d1,没有d1的故用uno代替,其实它俩也真的很像;

      注意:weMos d1 的pin号有点小问题,PIN口号和代码里的有点对不上,1和4是我试出来正确的,如果你要使用别的口,那就要当心了。

      //code pin --- D1 borad pin
      //2 ---- 8

      //3 ---- 0

      供电的注意事项可参考Arduino声呐避障小车

      Step 4: Arduino代码上传

      arduino编辑器必须添加esp8266库,已搞定请无视这步:

      关键要在arduino的Preferences里加上:

      http://arduino.esp8266.com/stable/package_esp8266com_index.json

      详见:

      Installing with Boards Manager

      D1版上传注意事项,板类型、速率,一定要严格按照下面的来,否必上传失败。

      Borad:

      wemos D1 R2 ;

      upload Speed:

      115200 ;(目前测试下来,不能低于这个,否则上传报错;但setup里开端口的速率可以比这低)

      Step 5: 智能手机端准备 - 安卓

      安卓版验证成功,APK安装包晚点放出;iPhone暂时还不行,由于从win平台上导出Vuforia的Xcode包总是有错暂未解决。

      安卓端准备:

      1. JDK最新版,下载后安装,一直下一步就行;
      2. 安卓SDK,下载后也是下一步;注:官方下载被墙了,没梯子的请从这里下载
      3. Unity5.3.4,注:不是最新版,请使用我指定的版本;
      4. Vuforia SDK 6.2 下载,要先注册账号;选免费许可的(就是找那个无$符号滴点)
      5. cardboardUnitySDK0.6下载,注:不是最新版,请使用我指定的版本;

      Step 6: 安卓版 U3D 发布方法一 使用项目文件

      1. 下载本页上项目文件,解压;
      2. 运行unity3d5.3.4,打开项目,选择解压的目录;
      3. 登录自己的开发账号后,前往https://developer.vuforia.com/license-manager,License Manager - add License key, 创建出免费的key,很长的字符串,复制它;
      4. 切回U3D,找到hierarchy下的 ARcamera选中,在inspector里找到open vuforia configuration 按钮,按下;
      5. 在APP License Key 里粘贴长长的字符串;
      6. 安卓手机用usb插上电脑,手机上调试模式打开;
      7. U3D - File - Build Setting 在platform下选择Android;
      8. 点击Build And Run;

      Step 7: 安卓版 U3D 发布方法二 自行整合

      参考上一步Key准备好后,访问:

      https://library.vuforia.com/articles/Solution/Inte..

      仔细按里面的步骤操作。注意:版本号的说明,选择符合本例的版本号。

      Step 8: Ios版 U3D 发布方法

      仍然访问:

      https://library.vuforia.com/articles/Solution/Inte...

      按里面 ios 的部分操作;

      注意:只能从mac电脑上的unity上发布。win上虽可以输出Xcode的包,再到mac上发布,但本例中失败,网上说是vuforia的插件导致的,暂不知如何解决;

      Step 9: Cardboard纸盒眼睛的处理:挖洞

      谷歌纸盒二代底板是没洞的,需要自己挖个露出手机的摄像头;

      找到挖洞位置:

      1. 先把手机在纸盒里放到正确的位置,合上底板;
      2. 用拇指在手机摄像头的位置,使劲按搓;

      一般手机摄像头部分都是有点突起,这样就能在纸上留下印记;万一遇到摄像头居然是平的手机,可以先找水笔在摄像头上画一圈,然后立刻按上面的方法,就能把水笔留在纸上;

      有了印记后,就可以开抠了;

      Step 10: 使用方法 安卓 IPhone 通用

      1. 打开手机wifi;
      2. 寻找“ESP_AP_wnq”,密码:12345678,接入;
      3. 打开发布或安装的应用;
      4. 手机摄像头对准mark图;

      About This Instructable

      68views

      1favorite

      License:

      More by wnq:低成本MR对射机器人游戏demo Arduino 声纳 避障 小车 Make a model of practical personal flying car 
      Add instructable to: