_SKU_DFR0351_RoMeo_BLE_mini控制器V2.0 - jimaobian/DFRobotWikiCn GitHub Wiki

RoMeo BLE mini控制器V1.0

概 述

Romeo BLE mini机器人控制器是Romeo BLE的迷你版,板载一颗ATmega328p控制器与Arduino UNO完全相同,集成了两路1.2A电机驱动(峰值输出3.2A),可以驱动N20金属减速电机以及普通的130电机,适合桌面微型机器人设计。此外Romeo BLE mini具备8路数字接口及4路模拟接口,均为Gravity-3Pin标准接口,可以外接各类Gravity传感器模组。接口都通过舵机电源口独立供电,为舵机等大电流设备提供稳定的电源供应,能够满足机器人电机、舵机两种控制方案。 Romeo BLE Mini集成一颗CC2540 蓝牙4.0通信芯片,支持通过蓝牙下载代码,并与机器人建立通信。也可以通过手机APP对机器人进行遥控。

产品特征

  • 支持Gravity传感器接口,彩色标识,方便直插舵机和Gravity系列传感器模块。
  • 支持外接电源自动切换,可同时接USB和外接电源
  • 支持无线下载程序/无线通信功能
  • 支持手机APP控制,源码全部开源
  • 2路H桥电机驱动
  • 支持舵机外接电源输入
  • 支持AT指令配置BLE
  • 支持串口透�
  • 支持主从机切换

性能描述

  • BLE芯片:TI CC2540
  • 传输距离:空旷地带30m
  • 微处理器:ATmega328P
  • 板卡选型:Arduino UNO
  • 闪存:32 KB (ATmega328P) 其中 0.5 KB 用于储存 bootloader
  • SRAM:2 KB (ATmega328P)
  • EEPROM:1 KB (ATmega328P)
  • 时钟频率:16 MHz
  • 数字IO口数:8
  • PWM通道:4 (D3, D9, D10, D11)
  • 模拟IO口数:4
  • 电机驱动输出:1.2A 单通道连续驱动电流
  • 启动/峰值电流:2A(连续脉冲)/ 3.2A(单脉冲)
  • 电机驱动管脚:D4, D5, D6, D7
  • microUSB接口
  • 具有I2C接口
  • 2路3.2A电流的H桥电机驱动接口
  • 尺寸:47.1x38.5mm

控制器丝印说明

RoMeo BLE mini(V2.0)正面示意图 RoMeo BLE mini(V2.0)反面示意图

丝印

说明

+VIN—

电机驱动外接电源和控制器外接电源 6.5~10V

必须连接该端口,M1/M2电机才工作

+Servo—

数字口电源输入5~12V

如在数字输出口使用大电流外设(如舵机)必须连接该接口,否则可能烧毁Micro USB接口

M1/M2端口

2路电机控制端;

M1:PIN4(方向控制),PIN5(PWM控制)

M2:PIN7(方向控制),PIN6(PWM控制)

I2C

I2C接口:SDA SCL GND 5V

A-5V-GND

标准模拟接口;

A(蓝色):模拟口0,1,2,3;

5V(红色):电源正极;

GND(黑色):电源负极;

D-VCC-GND

标准数字接口;

D(绿色):数字口2,3,8,9,10,11,12,13;

VCC(红色):电源正极(当Servo端口未接电源时,VCC为5V;当Servo端口接上电源时VCC为Servo端的输入电源);

GND(黑色):电源负极

LED指示灯

PWR 电源指示灯;

TX:发送数据指示灯;

RX:接收数据指示灯;

L:D13信号指示灯;

LINK:蓝牙连接指示灯;

PAIR:蓝牙配对指示灯;

RESET

控制器复位按键

BOOT

蓝牙固件更新按键

Romeo BLE mini应用示例

小伙伴们可以参考这个简单的应用做你的机器人,先介绍下这个应用吧:用到的是Romeo BLE mini控制器一个,电机2个(不建议使用10V以上电机),电池一个。下面是实物连接图。 Romeo BLE mini(V2.0)硬件连接图

此程序通过串口接收命令来控制小车。 开发板选择Arduino UNO,端口选择对应COM口


//Standard PWM DC control
int E1 = 5;     //M1 Speed Control
int E2 = 6;     //M2 Speed Control
int M1 = 4;    //M1 Direction Control
int M2 = 7;    //M1 Direction Control

void stop(void)                    //Stop
{
  digitalWrite(E1,LOW);
  digitalWrite(E2,LOW);
}
void advance(char a,char b)          //Move forward
{
  analogWrite (E1,a);      //PWM Speed Control
  digitalWrite(M1,HIGH);
  analogWrite (E2,b);
  digitalWrite(M2,HIGH);
}
void back_off (char a,char b)          //Move backward
{
  analogWrite (E1,a);
  digitalWrite(M1,LOW);
  analogWrite (E2,b);
  digitalWrite(M2,LOW);
}
void turn_L (char a,char b)             //Turn Left
{
  analogWrite (E1,a);
  digitalWrite(M1,LOW);
  analogWrite (E2,b);
  digitalWrite(M2,HIGH);
}
void turn_R (char a,char b)             //Turn Right
{
  analogWrite (E1,a);
  digitalWrite(M1,HIGH);
  analogWrite (E2,b);
  digitalWrite(M2,LOW);
}
void setup(void)
{
  int i;
  for(i=4;i<=7;i++)
    pinMode(i, OUTPUT);
  Serial.begin(9600);      //Set Baud Rate
  Serial.println("Run keyboard control");
}
void loop(void)
{
  if(Serial.available()){
    char val = Serial.read();
    if(val != -1)
    {
      switch(val)
      {
      case 'w'://Move Forward
        advance (255,255);   //move forward in max speed
        break;
      case 's'://Move Backward
        back_off (255,255);   //move back in max speed
        break;
      case 'a'://Turn Left
        turn_L (100,100);
        break;
      case 'd'://Turn Right
        turn_R (100,100);
        break;
      case 'z':
        Serial.println("Hello");
        break;
      case 'x':
        stop();
        break;
      }
    }
    else stop();
  }
}

Romeo BLE Mini 蓝牙使用说明

Romeo BLE Mini V2.0采用Bluno蓝牙控制器方案,在蓝牙方面完全兼容Bluno蓝牙控制器。

RoMeo BLE mini手机连接示例

通过BLE进行无线编程

RoMeo BLE mini 无线编程下载请参考Bluno 无线编程下载

通过AT指令配置BLE设备

RoMeo BLE mini AT 命令的配置方式也与Bluno相同,请参考Bluno AT 命令表

升级RoMeo BLE mini上的BLE固件(AT+VERSION查询版本)

RoMeo BLE mini升级固件的方法和BLUNO相似, 请参考BLUNO的Wiki中"升级BLUNO上的BLE固件"章节

ICSP接口说明

ICSP接口说明如图:

RoMeo BLE mini(V2.0)-ICSP接口

  • ICSP1 Atmega328p
  • ICSP2 CC2540

常见问题

还没有客户对此产品有任何问题,欢迎通过qq或者论坛联系我们!

| 更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。 |

更多

DFshopping_car1.png V2.0 (SKU:DFR0351)

⚠️ **GitHub.com Fallback** ⚠️