zoukankan      html  css  js  c++  java
  • 让我们一起摇摆 Turnipbit体感遥控车

    相信大家对Microbit是非常熟悉的,而今天我们做的这个小玩具所用的核心板是Turnipbit,是基于 Microbit开发的一块适合儿童适用的板卡。基本使用原理是一样的,这里就不多介绍了,代码这方面我也用了更好玩的拼插方法。(感觉比书写麻烦多了。果然是适合孩子玩的)
    所需器件
    TurnipBit开发板 2块
    microUSB数据线 1条
    可接入互联网的电脑 1台
    TurnipBit扩展板 1块
    智能小车套件 1套
    电机驱动模块(L298N) 1个
    实验步骤:
    打开Turnipbit可视化编程网站 www.turnipbit.com  点击开始编程
    功能区点击加速度传感器,选择判断当前…的动作。如下图:
     
     
    本次实验主要涉及到5种动作,即:向上、向左、向右、正面、反面。
    接下来展开分析一下,这5种动作对应的TurnipBit板子的实物状态。
     
    向上:TurnipBit正面(带有LED灯、按键)朝向我们,如下图:
     
     
    向左:依照向上的动作,逆时针向左旋转90度。如下图:
     
     
     
    向右:依照向上的动作,顺时针向右旋转90度。如下图:
     
    正面:依照向上的动作,逆时针向下旋转90度。如下图:
     
     
    反面:依照向上的动作,顺时针向下旋转90度。如下图:
     
    接下来分配这5种情况下小车的动作:
     
      
    TurnipBit的动作状态
      
      
    对应小车的操作
      
      
    向上
      
      
    停止
      
      
    向左
      
      
    左转
      
      
    向右
      
      
    右转
      
      
    正面
      
      
    前进
      
      
    反面
      
      
    倒退
      
     
    实现模拟体感器的代码。主要功能为不断检测TurnipBit的动作,先用内置图像来表示当前的动作。
     
    体感部分的工作已经完成了,那么该如何将这些信息传送给接收器?不用担心,细心的同学不难发现,功能区内有一个无线电的模块,我们用它来实现两块TurnipBit开发板之间的通信。
           首先选择打开蓝牙,放在循环外,然后再每个动作判断内添加发送的消息,消息内容可以自定义。参考下图:
     
    现在来完成接收器的代码。主要功能为接收模拟体感器发送的数据,分析数据得出对应的动作,像模拟体感器一样用图案表示出来。如下图:
     
    接下来我们组装小车,首先晒一下小车的整体器件。包括: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。如下图:
     
    我们需要再完善一下接收器的代码。增加控制小车的功能。如下图:



     
    将程序下载到用于接收器的TurnipBit的开发板内,再将板子对插到扩展板上,注意板子正面(带有LED)朝向有针脚的一面。
     
    增加一些其他的动作,开发新玩法,召唤更多的小伙伴,进行赛车比拼。
     
    复制链接观看演示视频:
    https://pan.baidu.com/s/1c2pnM7I
     
     
  • 相关阅读:
    数据库表结构变动发邮件脚本
    .net程序打包部署
    无法登陆GitHub解决方法
    netbeans 打包生成 jar
    第一次值班
    RHEL6 纯命令行文本界面下安装桌面
    C语言中格式化输出,四舍五入类型问题
    I'm up to my ears
    How to boot ubuntu in text mode instead of graphical(X) mode
    the IP routing table under linux@school
  • 原文地址:https://www.cnblogs.com/xxosu/p/8464369.html
Copyright © 2011-2022 走看看