Difference between revisions of "BOXZ mini/zh"

From Microduino Wiki
Jump to: navigation, search
(Created page with "{| style="width: 800px;" |- | ==概述== *项目名称:Microduino机器人小车 *目的:通过Microduino Joypad来控制BOXZ mini机器人小车 *难度:高级 *耗时...")
 
(程序说明)
 
(3 intermediate revisions by the same user not shown)
Line 51: Line 51:
  
 
==实验原理==
 
==实验原理==
*主要传感器
+
机器人小车种类比较多,如循迹,壁障,蓝牙遥控小车,电脑鼠等。但是其行走控制方式基本是一样的,无非就是前后左右四个方向运动。当然结构上会有一定区别,不同功能需要采用不同传感器,本次我们主要使用两轮驱动,通过控制两个轮子的旋转方向,实现前进后退,旋转等功能,当然还要加上万向轮,这样才能保持平衡。
[[File:Weightyuanli.jpg||600px|center|thumb]]
+
该小车结构简单,主要包括三个方面:车轮、车身、控制系统。
 +
1)车轮采用两个减速电机,扭力大,可PWN调速,控制简单。
 +
2)车身采用亚克力板,大小:8cm*8cm*8cm。
 +
3)整个控制系统包括四个部分:
 +
*供电系统
 +
因为BOXZ体积比较小,所以采用锂电池。
 +
*中央处理器
 +
中央处理器是整个小车的核心,就像电脑的CPU,人的大脑,有一定思维能力,能够处理复杂事件。采用Microduino-Core作为核心。
 +
*无线通讯
 +
小车采用Microduino-nRF24无线通讯方案,通讯速度响应快,控制范围:空阔地域大约100米。
 +
*电机控制
 +
采用Microduino-Motor直流电机驱动模块,一个模块能够驱动两个电机。同时结合Microduino-Robot底板,将中央处理器和直流电机模块连接起来。
 +
 
 
==文档==
 
==文档==
 
==调试过程==
 
==调试过程==
 +
将Microduino Core、Microduino USBTTL堆叠在一起.用数据线将写好的程序通过Microduino USBTTL上传到Microduino Core上。
 +
注意:最好不要将所有模块堆叠在一起之后再上传程序
 +
[[File:download1.jpg||500px|center|thumb]]
 +
打开Aroduino IDE,若电脑中没有安装,则参照附录中的安装方法,先安装Aicroduino IDE。点击左上【文件】选项→点击【打开】。
 +
[[File:Bleopen.jpg||500px|center|thumb]]
 +
浏览到项目程序地址,点击“Robot_v0.2.ino”程序打开
 +
[[File:Boxzopen1.jpg||500px|center|thumb]]
 +
[[File:Boxzopen2.jpg||500px|center|thumb]]
 +
之后点击左上角的"√"进行编译,点击上边栏的工具,确认板卡(Microduino-Core)处理器(Atmega328P@16M,5V)和端口号(COMX)。三项都如图确认无误之后点击"→"按钮下载程序到开发板上
 +
[[File:Chooseboard.jpg||500px|center|thumb]]
 +
Microduino-Core、Microduino-nRF24、无上下顺安装在Microduino-Robot上,再把Microduino-Motor安装在M.A底座上,并使用尼龙螺丝固定在顶板上。
 +
然后把电池接到Microduino-Robot的电池接口上,2.4G天线接到Microduino-nRF24的天线接口上。注意:连接电池之前请确认Microduino-Robot上的开关位于“OFF”位置
 +
[[File:Boxz1.jpg||500px|center|thumb]]
 +
如下图所示,将三个部件组合
 +
[[File:Boxz2.jpg||500px|center|thumb]]
 +
将减速电机安装在轮子上
 +
1)电机要从螺丝头端插进车轮。                                           
 +
2)电机轴与车轮有固定形状,不是随意插的。
 +
3)电机最外端的挡片要与车轮连在一起保证牢固。
 +
[[File:Boxz3.jpg||500px|center|thumb]]
 +
将轮子固定在亚克力底板上。
 +
先将电机与电机槽固定在一起,电机槽有螺丝插口的一端要远离车轮,用螺丝将两个车轮与一号板固定,螺丝方向如上图。固定好两个车轮后电机线要从一号板中心镂空处穿过,完成后效果如图所示。
 +
[[File:Boxz4.jpg||500px|center|thumb]]
 +
将两个小块模板卡在亚克力底板上,分别从左右卡进地板的插槽中,上下方向按图所示。
 +
[[File:Boxz5.jpg||500px|center|thumb]]
 +
 +
Joypad操作说明
 +
[[File:Joypadtest.jpg||300px|center|thumb]]
 +
*左上边是油门控制开关,打开(拨到上面),才能进行控制,你可以摇动摇杆,观察屏幕的变化。
 +
*右边开关是精度调整开关,开关拨到上面可以最大幅度控制,否则只能小幅度控制了,小幅度有助于稳定控制。
 +
*左边摇杆本次未使用。
 +
*右边摇杆在垂直方向上控制前后方向移动,往上向前,往下向后,在水平方向上控制左右方向移动。
 +
Joypad开机设置
 +
[[File:Joypadtest1.jpg||300px|center|thumb]]
 +
打开遥控器电源开关,按下复位按键(左边USB接口右边那个)进入系统,请在4S内按下【key1】按键,进入遥控器校准和控制选择模式。
 +
360度最大幅度旋转两个摇杆,遥控板会读入摇杆的位置数据,摇动至示数不再变化即可
 +
[[File:Joypadtest2.jpg||300px|center|thumb]]
 +
选择控制模式,可以通过【key3】按键来选择是控制四轴飞行器(Quad.)还是机器人(Robot),Robot模式可控制自平衡车和BOXZ mini,黑色表示选中。因此我们需要选择Robot模式。还可以通过【key4】按键来选择是否是体感控制模式,如果选择体感模式,你必须叠加Microduino-10DOF模块,选择“MPU ON”。如果是摇杆控制模式,选择“MPU OFF”。
 +
这次搭建没有使用10DOF模块,因此选择MPU OFF模式;
 +
[[File:Joypadtest3.jpg||300px|center|thumb]]
 +
选择完成后,通过【key2】按键退出配置,进入操作
 +
[[File:Joypadtest4.jpg||300px|center|thumb]]
 +
将左上边控制开关打开(拨到上面),才能进行控制,你可以摇动摇杆,观察屏幕的变化
 +
[[File:Joypadtest5.jpg||300px|center|thumb]]
 +
右边开关是幅度调节模式,开关拨到上面可以最大幅度控制Robot,否则只能小幅度控制。如果使用小幅度控制小车,右边摇杆拨到最大位置,小车速度也只能小范围变化,这样有助于稳定控制
 +
[[File:Joypadtest6.jpg||300px|center|thumb]]
 +
当启动小车时,只需要用到右边的摇杆,摇杆的方向和平衡车的方向一致,你可以尝试摇杆控制是否正确。如果发现方向有问题,可以在Robot_v0.2前4行代码更改引脚定义
 +
如果原来的引脚定义如下:
 +
[[File:Boxzpin1.jpg||300px|center|thumb]]
 +
而此时左右旋转反了,可以更改为
 +
[[File:Boxzpin2.jpg||300px|center|thumb]]
 +
如果最开始的引脚是情况2,那么方向错了就改成情况1就可以了。
 +
打开BOXZ_mini小车上Microduino-Robot底板上的电源开关,拨到ON(左边),如果可以看到核心板上的红色led亮,说明供电正常。你可以愉快的玩耍了。
 +
 +
 +
==注意问题==
 +
*下载程序时候最好只叠加core(core+)和USBTTL,虽然本次搭建涉及的nRF24不会引起冲突,但是别的通信模块有时会造成串口冲突,养成好习惯。
 +
*锂电池正负极别接错了,否则会烧坏电路。
 +
*调试好后,实际运行时不要使用USB供电,电压不足,请使用电池。
 
==程序说明==
 
==程序说明==
 
<source lang="cpp">
 
<source lang="cpp">
 
</source>
 
</source>
 +
 
==视频==
 
==视频==

Latest revision as of 07:16, 15 October 2015

概述

  • 项目名称:Microduino机器人小车
  • 目的:通过Microduino Joypad来控制BOXZ mini机器人小车
  • 难度:高级
  • 耗时:3小时
  • 制作者:Microduino Studio-YLB

材料清单

  • Microduino设备
模块 数量 功能
Microduino-Core/zh 1 核心板(Joypad)
Microduino-Core+/zh 1 核心板(Robot)
Microduino-USBTTL/zh 1 下载程序
Microduino-nRF24/zh 2 无线通讯
Microduino-Joypad/zh 1 遥控
Microduino-TFT/zh 1 显示
Microduino-Motor/zh 1 四轴电机驱动
Microduino-Robot/zh 1 驱动连接底板
  • 其他设备
模块 数量 功能
机器小车机架 1 车体
螺丝 18 固定
螺母 8 固定
Micro-USB数据线 1 下载程序
车轮 1 车体
电机 1 驱动车轮
电池 1 供电

实验原理

机器人小车种类比较多,如循迹,壁障,蓝牙遥控小车,电脑鼠等。但是其行走控制方式基本是一样的,无非就是前后左右四个方向运动。当然结构上会有一定区别,不同功能需要采用不同传感器,本次我们主要使用两轮驱动,通过控制两个轮子的旋转方向,实现前进后退,旋转等功能,当然还要加上万向轮,这样才能保持平衡。 该小车结构简单,主要包括三个方面:车轮、车身、控制系统。 1)车轮采用两个减速电机,扭力大,可PWN调速,控制简单。 2)车身采用亚克力板,大小:8cm*8cm*8cm。 3)整个控制系统包括四个部分:

  • 供电系统

因为BOXZ体积比较小,所以采用锂电池。

  • 中央处理器

中央处理器是整个小车的核心,就像电脑的CPU,人的大脑,有一定思维能力,能够处理复杂事件。采用Microduino-Core作为核心。

  • 无线通讯

小车采用Microduino-nRF24无线通讯方案,通讯速度响应快,控制范围:空阔地域大约100米。

  • 电机控制

采用Microduino-Motor直流电机驱动模块,一个模块能够驱动两个电机。同时结合Microduino-Robot底板,将中央处理器和直流电机模块连接起来。

文档

调试过程

将Microduino Core、Microduino USBTTL堆叠在一起.用数据线将写好的程序通过Microduino USBTTL上传到Microduino Core上。 注意:最好不要将所有模块堆叠在一起之后再上传程序

Download1.jpg

打开Aroduino IDE,若电脑中没有安装,则参照附录中的安装方法,先安装Aicroduino IDE。点击左上【文件】选项→点击【打开】。

Bleopen.jpg

浏览到项目程序地址,点击“Robot_v0.2.ino”程序打开

Boxzopen1.jpg
Boxzopen2.jpg

之后点击左上角的"√"进行编译,点击上边栏的工具,确认板卡(Microduino-Core)处理器(Atmega328P@16M,5V)和端口号(COMX)。三项都如图确认无误之后点击"→"按钮下载程序到开发板上

Chooseboard.jpg

Microduino-Core、Microduino-nRF24、无上下顺安装在Microduino-Robot上,再把Microduino-Motor安装在M.A底座上,并使用尼龙螺丝固定在顶板上。 然后把电池接到Microduino-Robot的电池接口上,2.4G天线接到Microduino-nRF24的天线接口上。注意:连接电池之前请确认Microduino-Robot上的开关位于“OFF”位置

Boxz1.jpg

如下图所示,将三个部件组合

Boxz2.jpg

将减速电机安装在轮子上 1)电机要从螺丝头端插进车轮。 2)电机轴与车轮有固定形状,不是随意插的。 3)电机最外端的挡片要与车轮连在一起保证牢固。

Boxz3.jpg

将轮子固定在亚克力底板上。 先将电机与电机槽固定在一起,电机槽有螺丝插口的一端要远离车轮,用螺丝将两个车轮与一号板固定,螺丝方向如上图。固定好两个车轮后电机线要从一号板中心镂空处穿过,完成后效果如图所示。

Boxz4.jpg

将两个小块模板卡在亚克力底板上,分别从左右卡进地板的插槽中,上下方向按图所示。

Boxz5.jpg

Joypad操作说明

Joypadtest.jpg
  • 左上边是油门控制开关,打开(拨到上面),才能进行控制,你可以摇动摇杆,观察屏幕的变化。
  • 右边开关是精度调整开关,开关拨到上面可以最大幅度控制,否则只能小幅度控制了,小幅度有助于稳定控制。
  • 左边摇杆本次未使用。
  • 右边摇杆在垂直方向上控制前后方向移动,往上向前,往下向后,在水平方向上控制左右方向移动。

Joypad开机设置

Joypadtest1.jpg

打开遥控器电源开关,按下复位按键(左边USB接口右边那个)进入系统,请在4S内按下【key1】按键,进入遥控器校准和控制选择模式。 360度最大幅度旋转两个摇杆,遥控板会读入摇杆的位置数据,摇动至示数不再变化即可

Joypadtest2.jpg

选择控制模式,可以通过【key3】按键来选择是控制四轴飞行器(Quad.)还是机器人(Robot),Robot模式可控制自平衡车和BOXZ mini,黑色表示选中。因此我们需要选择Robot模式。还可以通过【key4】按键来选择是否是体感控制模式,如果选择体感模式,你必须叠加Microduino-10DOF模块,选择“MPU ON”。如果是摇杆控制模式,选择“MPU OFF”。 这次搭建没有使用10DOF模块,因此选择MPU OFF模式;

Joypadtest3.jpg

选择完成后,通过【key2】按键退出配置,进入操作

Joypadtest4.jpg

将左上边控制开关打开(拨到上面),才能进行控制,你可以摇动摇杆,观察屏幕的变化

Joypadtest5.jpg

右边开关是幅度调节模式,开关拨到上面可以最大幅度控制Robot,否则只能小幅度控制。如果使用小幅度控制小车,右边摇杆拨到最大位置,小车速度也只能小范围变化,这样有助于稳定控制

Joypadtest6.jpg

当启动小车时,只需要用到右边的摇杆,摇杆的方向和平衡车的方向一致,你可以尝试摇杆控制是否正确。如果发现方向有问题,可以在Robot_v0.2前4行代码更改引脚定义 如果原来的引脚定义如下:

Boxzpin1.jpg

而此时左右旋转反了,可以更改为

Boxzpin2.jpg

如果最开始的引脚是情况2,那么方向错了就改成情况1就可以了。 打开BOXZ_mini小车上Microduino-Robot底板上的电源开关,拨到ON(左边),如果可以看到核心板上的红色led亮,说明供电正常。你可以愉快的玩耍了。


注意问题

  • 下载程序时候最好只叠加core(core+)和USBTTL,虽然本次搭建涉及的nRF24不会引起冲突,但是别的通信模块有时会造成串口冲突,养成好习惯。
  • 锂电池正负极别接错了,否则会烧坏电路。
  • 调试好后,实际运行时不要使用USB供电,电压不足,请使用电池。

程序说明

视频