“乐高遥控小车”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
准备
疑难解答/FAQ
 
(未显示同一用户的10个中间版本)
第3行: 第3行:
 
|-
 
|-
 
|
 
|
==目的==
 
通过mCookieLEGOShield,使mCookie可以控制NXT接口的电机和传感器。
 
  
==原理==
 
通过手机端的mTank软件发送指令,叠加在mCookie的蓝牙模块接收并解析指令
 
通过IIC通讯,mCookie控制LEGOShield,完成对NXT接口电机和传感器的控制
 
  
==设备==
+
==概述==
 +
*项目名称:乐高蓝牙遥控小车
 +
*目的:通过mCookieLEGOShield,使用mCookie控制NXT接口的电机和传感器制作一个遥控小车。
 +
*也可以支持蓝牙APP遥控
 +
*难度:中级
 +
*耗时:5小时
 +
 
 +
==材料清单==
 +
{| border="0" cellpadding="10" width="100%"
 +
|-
 +
|width="33%" valign="top" align="left"|
 +
 
 +
===模块清单 ===
 
{|class="wikitable"
 
{|class="wikitable"
 
|-
 
|-
 
|模块||数量||功能
 
|模块||数量||功能
 
|-
 
|-
|[[MCookie-CoreUSB/zh]]||1||核心板
+
|[[MCookie-CoreUSB/zh]]||1||核心模块
 
|-
 
|-
|[[MCookie-LEGOShield/zh]]||1||乐高底板
+
|[[MCookie-BT/zh]]||1||通讯模块
 
|-
 
|-
|[[MCookie-BT/zh]]||1||蓝牙模块
+
|[[MCookie-LEGOShield/zh]]||1||乐高驱动底板
 +
|}
 +
 
 +
|width="33%" valign="top" align="left"|
 +
 
 +
===其他材料===
 +
{|class="wikitable"
 +
|-
 +
|部件||数量||功能
 +
|-
 +
|NXT接口电机||2||驱动车轮
 +
|-
 +
|NXT连接线||2||连接电机与底板
 +
|-
 +
|LEGO积木结构件||若干||搭建小车结构
 +
|-
 +
|Micro-USB数据线||1||下载程序
 +
|-
 +
|7.4v锂电池||1||供电
 +
|}
 +
|}
 +
 
 +
[[File:Boxz物料.jpg||900px|center]]
 +
 
 +
==实验原理==
 +
*机器人小车种类比较多,如循迹,壁障,蓝牙遥控小车,电脑鼠等,不同功能需要采用不同传感器。
 +
*但是其行走控制方式基本是一样的,无非就是前后左右四个方向运动。
 +
 
 +
*本次我们主要使用两轮驱动的结构,通过控制两个轮子的旋转方向,实现前进后退,旋转等功能,当然还要加上辅助轮,这样才能保持平衡。
 +
*该小车结构简单,主要包括三个方面:车轮、车身、控制系统。
 +
**1)车轮采用两个NXT接口电机。
 +
**2)车身采用乐高积木堆叠而成。
 +
**3)整个控制系统包括四个部分:
 +
 
 +
*中央处理器
 +
**采用'''[[MCookie-CoreUSB/zh]]'''作为核心,就像电脑的CPU,人的大脑,有一定思维能力,能够处理复杂事件。
 +
*无线通讯
 +
**采用'''[[MCookie-BT/zh]]'''无线通讯方案,配合手机APP直接控制,控制范围:空阔地域大约20米。
 +
*电机控制
 +
**采用'''[[MCookie-LEGOShield/zh]]'''上自带的一组直流电机驱动单元,一个单元能够驱动两个电机,电机接口兼容乐高NXT接口。
 +
*供电系统
 +
**采用'''[[MCookie-LEGOShield/zh]]'''上自带的锂电池管理单元,驱动电机以及MCU。
 +
 
 +
==程序下载==
 +
*乐高遥控小车代码:'''[xxxxx]'''
 +
 
 +
==程序烧写==
 +
*用数据线连接'''[[MCookie-CoreUSB/zh]]'''准备上传程序。
 +
**注意:最好不要将所有模块堆叠在乐高底板之后再上传程序
 +
*打开Arduino IDE for Microduino,环境,(搭建参考:'''[[AVR核心:Getting started/zh]]''')
 +
*点击'''【工具】''',确认'''板卡(Microduino/MCookie-Core USB)处理器(USB)'''选择无误,并选中对应'''端口号(COMX)'''
 +
*点击'''【文件】'''->'''【打开】''',浏览到项目程序地址,点击'''“LEGO_Bluetooth_Car.ino”'''程序打开
 +
*几项都无误后,点击'''"→"'''按钮下载程序到开发板上
 +
 
 +
==拼装过程==
 +
{| border="0" cellpadding="10" width="100%"
 +
|-
 +
|width="50%" valign="top" align="left"|
 +
 
 +
*'''Step1''':
 +
*利用'''电机固定座'''将两个作为动力的'''N20减速电机'''固定在'''结构-A1'''上
 +
*将'''车轮'''、'''轮胎'''、'''联轴器'''组装后与固定后的'''N20减速电机'''进行装配
 +
 
 +
 
 +
|width="50%" valign="top" align="left"|
 +
 
 +
[[File:Cubestep1.jpg||535px|center]]
 +
 
 +
|}
 +
 
 +
{| border="0" cellpadding="10" width="100%"
 +
|-
 +
|width="50%" valign="top" align="left"|
 +
 
 +
*'''Step2''':
 +
*将'''结构-A2'''垂直插入'''结构-A1'''两边的凹进结构
 +
*用两个'''结构-A4'''将'''辅助轮'''从底部固定在'''结构-A3'''上
 +
*再如图示将'''结构-A3'''和'''结构-B1'''从上到下依次准备好
 +
 
 +
 
 +
|width="50%" valign="top" align="left"|
 +
 
 +
[[File:Cubestep2.jpg||535px|center]]
 +
 
 +
|}
 +
 
 +
{| border="0" cellpadding="10" width="100%"
 +
|-
 +
|width="50%" valign="top" align="left"|
 +
 
 +
*'''Step3''':
 +
*将'''结构-B2'''和'''结构-C1'''分别用于两侧面固定
 +
 
 +
|width="50%" valign="top" align="left"|
 +
 
 +
[[File:Cubestep3.jpg||535px|center]]
 +
 
 +
|}
 +
 
 +
 
 +
{| border="0" cellpadding="10" width="100%"
 +
|-
 +
|width="50%" valign="top" align="left"|
 +
 
 +
*'''Step4''':
 +
*将以下模块堆叠在'''[[MCookie-LEGOShield/zh]]'''底板上
 +
**核心模块:'''[[MCookie-CoreUSB/zh]]'''模块
 +
**通讯模块:''"[[MCookie-BT/zh]]'''模块
 +
*将'''电池'''连接在'''[[MCookie-LEGOShield/zh]]'''底板的'''电池接口'''
 +
*将两个'''NXT电机'''通过""NXT连接线""分别连在'''[[MCookie-LEGOShield/zh]]'''底板的'''电机接口S3和S4'''上
 +
 
 +
|width="50%" valign="top" align="left"|
 +
 
 +
[[File:Cubestep4.jpg||535px|center]]
 +
 
 +
|}
 +
 
 +
{| border="0" cellpadding="10" width="100%"
 +
|-
 +
|width="50%" valign="top" align="left"|
 +
 
 +
*'''Step5''':
 +
*用两个'''结构-C3'''将'''辅助轮'''从底部固定在'''结构-C2'''上
 +
*将'''结构-C2'''拼接在正侧面
 +
 
 +
|width="50%" valign="top" align="left"|
 +
 
 +
[[File:Cubestep5.jpg||535px|center]]
 +
 
 +
|}
 +
 
 +
 
 +
{| border="0" cellpadding="10" width="100%"
 +
|-
 +
|width="50%" valign="top" align="left"|
 +
*'''Step6''':
 +
*将'''结构-D2'''拼接在后侧面,可利用天线背面贴纸将天线贴在任意位置
 +
*将'''结构-D1'''作为顶面盖住,安装到此完成
 +
 
 +
|width="50%" valign="top" align="left"|
 +
 
 +
[[File:Cubestep6.jpg||535px|center]]
 +
 
 
|}
 
|}
  
==准备==
+
==操作说明==
*Setup 1:用USB线将CoreUSB模块与PC/Mac相连,并打开Arduino IDE。
+
===蓝牙遥控指南===
[[File:CoreUSB_Ble_pc.jpg|600px|center]]
+
*首先下载蓝牙遥控APP(Android):'''[[File:MTank.rar|mTank.zip]]'''
*Setup 2:点击文件 >示例 > mCookie > _201_CowardlyNightLight_BLE, 加载程序。
+
*确定手机版本号是Android 4.3以上,确定当前蓝牙功能已打开
[[File: light_indicator-ino.jpg|600px|center]]
+
*搜索到名为'''“Microduino”'''的蓝牙设备进行连接
* Setup 3:加载代码,将程序代买拷贝到IDE中。程序编译通过后选择好板卡和COM端口下载程序。
+
*接下来就可以通过APP进行遥控了
[[File: light_indicator-com.jpg|600px|center]]
 
*Setup4: 组装乐高小车,并将两个电机线插在MCookie-LEGOShield的M3,M4接口
 
  
==程序说明==
 
“ble()”函数是蓝牙接收数据及控制彩灯。
 
*定义蓝牙通讯串口
 
<source lang="cpp">
 
#define my_Serial Serial1
 
</source>
 
*定义传感器引脚,及可连接的灯的数量。
 
<source lang="cpp">
 
#define PIXEL_PIN    6    // Digital IO pin connected to the NeoPixels.
 
#define PIXEL_COUNT  2
 
  
#define lightSensorPin  A0
+
==疑难解答/FAQ==
</source>
 
  
*环境光预设值,更改Light的大小就可以改变在某个亮度下开启灯光。
+
*Q:'''乐高蓝牙小车支持哪些电池?'''
<source lang="cpp">
+
**A:乐高蓝牙小车支持7.4v 2S锂电池。
#define lightSwitch  700
 
</source>
 
*读取亮度函数
 
<source lang="cpp">
 
sensorValue = analogRead(lightSensorPin);
 
</source>
 
*判断环境参数低于预设值则开启灯光,并且通过蓝牙控制,否则关闭灯光。
 
<source lang="cpp">
 
  if(sensorValue>lightSwitch) {
 
    Serial.println(sensorValue);
 
    strip.setPixelColor(0, strip.Color(0, 0, 0));
 
    strip.setPixelColor(1, strip.Color(0, 0, 0));
 
    strip.show();
 
  } else {
 
      ble();
 
      if (!color_en) {
 
        for (int i = 0; i < 1; i++)
 
          rainbow(10);
 
      }
 
  }
 
</source>
 
==调试代码==
 
*通过CoreUSB模块连接电脑并加载程序后,点击串口监视器,会弹出一个窗口,里面会显示光线传感器接收到的光线值的变化。
 
[[File:CoreUSB_light_ino1.jpg|600px|center]]
 
当前设定的感光值是700,你可以尝试根据之前监测出来的数据在程序中更改这一数值,重新刷入程序,看看会产生什么效果。
 
  
==搭建硬件==
+
*Q:'''乐高蓝牙小车的电机怎么接?'''
*Setup 1:将彩灯接到Sensorhub的D6引脚上,将光敏传感器接到A0引脚上。
+
**A:两个电机分别接在电机接口S3、S4上即可(可以通过修改程序修改)。
[[File:night_colorled_ble.jpg|600px|center]]
 
LED灯的连接方法如图,请注意连接顺序,从LED的IN接口接入,从OUT接口接出本应用最多可控制2个LED灯。
 
[[File:CoreUSB_Ble_steup11.jpg|600px|center]]
 
*Setup 2:将激活后的电池盒与BM模块相连.
 
[[File:CoreUSB_Ble_steup2.jpg|600px|center]]
 
*Setup 3:将所有模块堆叠在一起,顺序随意,电路部分搭建完成。
 
[[File:CoreUSB_night led_steup3.jpg|600px|center]]
 
  
==APP调试==
+
*Q:'''我的手机支持蓝牙遥控吗?'''
*Setup 1:扫描左侧的二维码,下载Bluetooth Light APP。
+
**A:只要是Android 4.3以上,都可以支持。
[[File:app_Ble_steup1.jpg|600px|center]]
 
*Setup 2:载安装App后,打开应用,如果没有打开蓝牙,系统会提示,选择打开。
 
[[File:app_Ble_steup2.jpg|600px|center]]
 
*Setup 3:点击Scan,手机会开始搜索蓝牙设备,并显示在下方,选择名称为Microduino的设备.
 
[[File:app_Ble_steup3.jpg|600px|center]]
 
*Setup 4:连接成功后,你就可以用手机来控制灯光了
 
[[File:app_Ble_steup4.jpg|600px|center]]
 
  
==结果==
 
遮住光线传感器,或进入较暗环境下,LED灯就会发光,这时你就可以用蓝牙来控制灯光的颜色。你也可以通过乐高搭建一个漂亮的外观。
 
[[File:legao_night_led.jpg|600px|center]]
 
==视频==
 
  
 
|}
 
|}

2016年4月29日 (五) 06:18的最新版本

Language English


概述

  • 项目名称:乐高蓝牙遥控小车
  • 目的:通过mCookieLEGOShield,使用mCookie控制NXT接口的电机和传感器制作一个遥控小车。
  • 也可以支持蓝牙APP遥控
  • 难度:中级
  • 耗时:5小时

材料清单

模块清单

模块 数量 功能
MCookie-CoreUSB/zh 1 核心模块
MCookie-BT/zh 1 通讯模块
MCookie-LEGOShield/zh 1 乐高驱动底板

其他材料

部件 数量 功能
NXT接口电机 2 驱动车轮
NXT连接线 2 连接电机与底板
LEGO积木结构件 若干 搭建小车结构
Micro-USB数据线 1 下载程序
7.4v锂电池 1 供电

实验原理

  • 机器人小车种类比较多,如循迹,壁障,蓝牙遥控小车,电脑鼠等,不同功能需要采用不同传感器。
  • 但是其行走控制方式基本是一样的,无非就是前后左右四个方向运动。
  • 本次我们主要使用两轮驱动的结构,通过控制两个轮子的旋转方向,实现前进后退,旋转等功能,当然还要加上辅助轮,这样才能保持平衡。
  • 该小车结构简单,主要包括三个方面:车轮、车身、控制系统。
    • 1)车轮采用两个NXT接口电机。
    • 2)车身采用乐高积木堆叠而成。
    • 3)整个控制系统包括四个部分:
  • 中央处理器
    • 采用MCookie-CoreUSB/zh作为核心,就像电脑的CPU,人的大脑,有一定思维能力,能够处理复杂事件。
  • 无线通讯
    • 采用MCookie-BT/zh无线通讯方案,配合手机APP直接控制,控制范围:空阔地域大约20米。
  • 电机控制
    • 采用MCookie-LEGOShield/zh上自带的一组直流电机驱动单元,一个单元能够驱动两个电机,电机接口兼容乐高NXT接口。
  • 供电系统

程序下载

  • 乐高遥控小车代码:[xxxxx]

程序烧写

  • 用数据线连接MCookie-CoreUSB/zh准备上传程序。
    • 注意:最好不要将所有模块堆叠在乐高底板之后再上传程序
  • 打开Arduino IDE for Microduino,环境,(搭建参考:AVR核心:Getting started/zh
  • 点击【工具】,确认板卡(Microduino/MCookie-Core USB)处理器(USB)选择无误,并选中对应端口号(COMX)
  • 点击【文件】->【打开】,浏览到项目程序地址,点击“LEGO_Bluetooth_Car.ino”程序打开
  • 几项都无误后,点击"→"按钮下载程序到开发板上

拼装过程

  • Step1:
  • 利用电机固定座将两个作为动力的N20减速电机固定在结构-A1
  • 车轮轮胎联轴器组装后与固定后的N20减速电机进行装配


  • Step2:
  • 结构-A2垂直插入结构-A1两边的凹进结构
  • 用两个结构-A4辅助轮从底部固定在结构-A3
  • 再如图示将结构-A3结构-B1从上到下依次准备好


  • Step3:
  • 结构-B2结构-C1分别用于两侧面固定


  • Step5:
  • 用两个结构-C3辅助轮从底部固定在结构-C2
  • 结构-C2拼接在正侧面


  • Step6:
  • 结构-D2拼接在后侧面,可利用天线背面贴纸将天线贴在任意位置
  • 结构-D1作为顶面盖住,安装到此完成

操作说明

蓝牙遥控指南

  • 首先下载蓝牙遥控APP(Android):mTank.zip
  • 确定手机版本号是Android 4.3以上,确定当前蓝牙功能已打开
  • 搜索到名为“Microduino”的蓝牙设备进行连接
  • 接下来就可以通过APP进行遥控了


疑难解答/FAQ

  • Q:乐高蓝牙小车支持哪些电池?
    • A:乐高蓝牙小车支持7.4v 2S锂电池。
  • Q:乐高蓝牙小车的电机怎么接?
    • A:两个电机分别接在电机接口S3、S4上即可(可以通过修改程序修改)。
  • Q:我的手机支持蓝牙遥控吗?
    • A:只要是Android 4.3以上,都可以支持。