一、准备工作

TurnipBit 开发板 2块

TurnipBit 扩展板 1块

数据线 1条

智能小车器件 1套

电机驱动模块(L298N) 1个

在线可视化编程 点击进入

 

二、思路设计

 

2块TurnipBit开发板,1块模拟体感器,用于采集人体的动作变化,并将这些信息发送给接收器;另1块当做接收器,用来接收模拟设备的数据,同时控制小车执行相应的动作。

 

 

三、无线智能遥控车的实现

 

1、功能区点击加速度传感器,选择判断当前…的动作。如下图:

本次实验主要涉及到5种动作,即:向上、向左、向右、正面、反面。

接下来展开分析一下,这5种动作对应的TurnipBit板子的实物状态。

向上:TurnipBit正面(带有LED灯、按键)朝向我们,如下图:

向左:依照向上的动作,逆时针向左旋转90度。如下图:

向右:依照向上的动作,顺时针向右旋转90度。如下图:

正面:依照向上的动作,逆时针向下旋转90度。如下图:

反面:依照向上的动作,顺时针向下旋转90度。如下图:

大家可以尝试实验其他动作,再结合一些想法,实现更有趣酷炫的效果。

2、接下来分配这5种情况下小车的动作:

TurnipBit的动作状态

对应小车的操作

向上

停止

向左

左转

向右

右转

正面

前进

反面

倒退

3、实现模拟体感器的代码。主要功能是不断检测TurnipBit的动作,先用内置图像来表示当前的动作的方向。

4、体感部分的工作已经完成了,那么该如何将这些信息传送给接收器?不用担心,细心的同学不难发现,功能区内有一个无线电的模块,我们用它来实现两块TurnipBit开发板之间的通信。

首先选择打开蓝牙,放在循环外,然后在每个动作判断内添加发送的消息,消息内容可以自定义。参考下图:

5、现在来完成接收器的代码。主要功能为接收模拟体感器发送的数据,分析数据得出对应的动作,像模拟体感器一样用图案表示出来。如下图:

6、接下来我们组装小车,首先晒一下小车的整体器件。包括:2个轮子、2个减速电机、1个万向轮、1包铜柱螺丝包、1个电池盒、1个底板、1个开关。如下图:

先用焊枪把减速电机两边的引脚片焊上公头杜邦线,方便接入电机驱动模块。如下图:

将减速电机、万向轮和开关安装在底板上。如下图:

将轮子安装在两侧的电机上,电池盒安装在底板上。将电池盒的正极(红色导线)焊接在开关的1个铜片上,开关的另一个铜片焊接上公头杜邦线。如下图:

安装电机驱动模块。先看一下整体接线图,如下:

将电池盒的负极(黑色导线)接入电机驱动模块的GND端子,开关引出的公头杜邦线接入+12V端子。两边的电机分别接入电机驱动模块两侧的输出端子(标记OUT1~OUT4)。如下图:

安装TurnipBit开发板和扩展板,将电机驱动模块的GND接入扩展板的GND,+5V接入扩展板的5V。将扩展板上的P5、P8、P11和P12引脚对应接入电机驱动模块的IN2、IN1、IN3和IN4。如下图:

7、我们需要再完善一下接收器的代码。增加控制小车的功能。如下图:

8、将程序下载到用于接收器的TurnipBit的开发板内,再将板子对插到扩展板上,注意板子正面(带有LED)朝向有针脚的一面。

效果展示视频

http://v.youku.com/v_show/id_XMzIxMTY2NDk2MA==.html?spm=a2h3j.8428770.3416059.1

TurnipBit之DIY无线遥控智能小车的更多相关文章

  1. 基于pcDuino-V2的无线视频智能小车

    这段时间抽空做了个智能视频小车.包含了pid电机控制.socket网络编程.多线程编程.epoll机制.gtk图形界面编程. 这是界面: 小车的底层是用的stm32f405系列的单片机+电机驱动做的一 ...

  2. 基于pcDuino-V2的无线视频智能小车 - pcduino上的网络编程

    通过获取从串口发送上来的数据  已经和上位机的连接通信和图像发送.已经对设备的控制 https://github.com/qq2216691777/pcduino_smartcar-pcduino

  3. 基于pcDuino-V2的无线视频智能小车 - UBUNTU系统上的gtk编程

    详细的代码已经上传到git网站:https://github.com/qq2216691777/pcduino_smartcar

  4. 玩转X-CTR100 l STM32F4 l PS2无线手柄-4WD智能小车

    我造轮子,你造车,创客一起造起来!更多塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ] 前面已介绍X-CTR100控制器解码PS2无线手 ...

  5. Micropython教程之TPYBoardv102 DIY蓝牙智能小车实例

    1.实验目的 1.学习在PC机系统中扩展简单I/O接口的方法. 2.进一步学习编制数据输出程序的设计方法. 3.学习蓝牙模块的接线方法及其工作原理. 4.学习L298N电机驱动板模块的接线方法. 5. ...

  6. MicroPython教程之TPYBoard开发板DIY红外寻迹小车

    智能小车现在差不多是电子竞赛或者DIY中的主流了,寻迹,壁障,遥控什么的,相信大家也都见得很多了,这次就大家探讨一下寻迹小车的制作方法,不同于以往的是这次的程序不用C语言写,而是要使用python语言 ...

  7. 20135223/20135234/20135229小组——亚博 Arduino智能小车实践报告

    实验名称:Arduino智能小车组装和综合测试 实验小组成员:20135223何伟钦 20135234马启扬 20135229吕松鸿 实验日期:2015.10.27—2015.11.3 实验时长:24 ...

  8. Arduino智能小车实践学习报告

    Arduino智能小车实践学习报告 参与人员: 20135316 王剑桥 20135312 吴汉彦 20135319 朱锂 一. 背景了解: 单片机:将中央处理单元CPU(进行运算.控制).随机存储器 ...

  9. 亚博 Arduino智能小车实验报告

    亚博 Arduino智能小车实践报告 一.     程序安装准备 首先安装了Arduino板载USB转串口CH340驱动安装包, 若上述程序安装成功,则可以在我的电脑中找到相应的端口 本机端口号为CO ...

随机推荐

  1. 翻煎饼 Stacks of Flapjacks

    题意:本题意为煎饼排序,大的放在上面,小的放在下面(此题输入是从上到下输入的),为煎饼排序是通过一系列的"翻转"动作来完成的.翻转动作就是将一个小铲插到一叠煎饼中的某两个煎饼之间, ...

  2. Android关于AutoService、Javapoet讲解

    一.上篇文章提到自定义processor中用到AutoService 文章中我们用到了AutoService, 使用@AutoService(Processor.class),编译后 MethodSp ...

  3. 机器学习笔记1 - Hello World In Machine Learning

    前言 Alpha Go在16年以4:1的战绩打败了李世石,17年又以3:0的战绩战胜了中国围棋天才柯洁,这真是科技界振奋人心的进步.伴随着媒体的大量宣传,此事变成了妇孺皆知的大事件.大家又开始激烈的讨 ...

  4. Intent启动系统组件(activity,service,BroadReceiver)-android学习之旅(四十九)

    android提供了统一的编程模型Intent来启动系统的组件,这样提供了松耦合性.是一种mvc的编程模式 $(function () { $('pre.prettyprint code').each ...

  5. 数据结构(C实现)------- 最小生成树之Prim算法

    [本文是自己学习所做笔记.欢迎转载.但请注明出处:http://blog.csdn.net/jesson20121020] 算法描写叙述 假设连通图是一个网,则称该网中全部生成树中权值总和最小的生成树 ...

  6. poj 2570 Fiber Network(floyd)

    #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; int ...

  7. jQuery 学习笔记(三)——事件与应用

    页面载入时触发ready()事件 ready()事件类似于onLoad()事件.但前者仅仅要页面的DOM结构载入后便触发.而后者必须在页面所有元素载入成功才触发,ready()能够写多个,按顺序运行. ...

  8. “command line option syntax error,Type command/?for help

    VS2010安装WDT时出现"command line option syntax error.Type command/?for help错误 解决:可能是由于你的安装源文件所在的路径中有 ...

  9. 关于Mac终端故障一直出现 [进程已完毕]

    终端已打开就出现以下信息.无法输入不论什么的命令 Last login: Mon Aug 18 10:00:36 on ttys000 [进程已完毕] 原因:不知谁改动了 终端->偏好设置-&g ...

  10. js中常见的一些兼容性问题

    1)滚动条: document.documentElement.scrollTop||document.body.scrollTop 2) 网页可视区域兼容 window.innerHeight || ...