02-OpenRB-150控制板

小芽科技 2022-12-02 21:30:13
Categories: Tags:

1 概览

该文档由北京小芽科技翻译自ROBOTIS官方文档,以下大部分链接将转至ROBOTIS官方技术文档相关产品站点。

img
img

OpenRB-150是一款开源的Arduino兼容嵌入式控制器。

该控制器具有与Arduino MKR相同的引脚和外形尺寸,以确保与物理配件的兼容性,并支持使用Arduino IDE编程。

OpenRB-150还具有4个专用的DYNAMIXEL端口,并支持DYNAMIXEL Wizard 2.0测试和校准软件。

注意 :使用OpenRB-150和DYNAMIXEL Wizard需要特殊固件。该固件包含在OpenRB板管理程序包中。

2 规格参数

名目 技术参数
MICROCONTROLLER SAMD21 Cortex-M0+ 32bit low power ARM® MCU
BOARD POWER SUPPLY (USB 3.0) 5 V (VIN -or Terminal) 3.7 ~ 12.6 V
SUPPORTED BATTERY Li-Po 1 - 3 cell (3.7 - 11.1 V) XT60 connector ready
DC CURRENT FOR 3.3V PIN 300 mA
DC CURRENT FOR 5V PIN 300 mA
DC CURRENT FOR DYNAMIXEL PORTs 3,000 mA
CIRCUIT OPERATING VOLTAGE 3.3 V
DIGITAL I/O PINS 24
PWM PINS 12 (0, 1, 2, 3, 4, 5, 6, 7, 8, 10, A3 - or 18 -, A4 -or 19)
UART 2
SPI 1
I2C 1
ANALOG INPUT PINS 7 (ADC 8/10/12 bit)
ANALOG OUTPUT PINS 1 (DAC 10 bit)
EXTERNAL INTERRUPTS 10 (0, 1, 4, 5, 6, 7, 8, A1 -or 16-, A2 - or 17)
DC CURRENT PER I/O PIN 7 mA
FLASH MEMORY 256 KB
FLASH MEMORY FOR BOOTLOADER 8 KB
SRAM 32 KB
EEPROM no
CLOCK SPEED 32.768 kHz (RTC), 48 MHz
LED_BUILTIN 3
DYNAMIXEL TTL Port 4 (Max 1 Mbps)
Board Dimensions 25 x 66 mm
Supported Software Arduino IDE, DYNAMIXEL Wizard 2.0
Supported DYNAMIXEL* X Series, MX Series, AX Series, P Series

* RS-485 通信的舵机需要 DYNAMIXEL Communication Bridge 模块帮助转换才能跟板子连接。
* 24V舵机需要单独的电源连接。

3 硬件布局

引脚分布

img

重置按钮

Reset Button 可以重启微控制器,双按 Reset Button 可以重启微控制器进入启动bootloader模式。

OpenRB-150在bootloader模式下将不会加载它的Arduino固件程序。

警告
重置微控制器也将重置任何连接的DYNAMIXEL舵机的电源。

重要的是,只有当电容器处于安全位置时,才能重置微控制器,以避免电容器被重置时可能造成的损害或伤害。

DYNAMIXEL舵机电源选择

DYNAMIXEL端口的电源是由微控制器底部的FET控制的。

FET可以启用和禁用连接端口的电源,默认情况下FET是关闭的,不管OpenRB-150是否通电状态。

当FET打开时,”DXL “红色LED也会打开以确认电源状态。

img

Terminal VIN

板子提供了一个外接电源端子,能够兼容多种电压电源。
ROBOTIS建议尽可能使用该接线端子进行板子及舵机供电。

要通过Terminal VIN向OpenRB-150控制器供电,请将跳帽设置在VIN(DXL)一侧,如下图所示。

img

Terminal VIN 跳帽选择

img

电源输入电路

注意事项
当电池连接到控制器时,请不要给电池充电。

XT60 连接器

XT60连接器在遥控产品中被广泛使用,它可以 装配在OpenRB-150控制器的背面。
在焊接XT60直角连接器之前,请先拆除接线端子。

img

XT60 连接器备用口

电源选择跳帽

OpenRB-150可以用三种电源供电。
为了向控制器和DYNAMIXEL正确供电,需要正确设置电源跳帽。

当使用USB或者扩展管脚供电时 当使用绿色连接器或者XT60连接器外部供电时
img img

DYNAMIXEL 端口

4个DYNAMIXEL舵机端口可用于任何支持半双工TTL的DYNAMIXEL舵机。
当使用RS-485的DYNAMIXEL舵机时,可以使用DYNAMIXEL Communication Bridge转换模块进行连接。

img

DYNAMIXEL 舵机通信转换模块

串口

分配给 “Serial2 “的串行端口可以用来连接各种设备,可以用于调试代码或控制控制器。

img

LEDs

三个LED指示OpenRB-150控制器的状态。

img

4 管脚定义

1
2
3
4
5
6
7
8
9
// Battery 电池
#define ADC_BATTERY (33u)

// LEDs
#define PIN_LED (32u)
#define LED_BUILTIN PIN_LED

// DYNAMIXEL 舵机电源场效应晶体管
#define DXL_PWR_SW (31u)

5 供电方式

OpenRB-150 提供三种供电方式,请根据需求选择其中一种:

USB C 供电

img

VIN扩展管脚供电

img

Terminal VIN 供电

img

警告

  1. 在将任何电源连接到OpenRB-150之前,一定要检查其极性。
    不正确的极性会永久性地损坏微控制器。
  2. 确保根据电源设置跳帽位置。

连接方式例子

5V Dynamixel舵机跟OpenRB-150控制板连接方式

img

警告
对于需要高速度或高扭矩的应用,请通过Terminal VIN供电。
USB端口不适合作为动态马达操作的电源。
从USB端口抽取过多的电源可能会导致电脑重新启动或损坏。
建议使用一个外部电源,如下图所示。

img

当使用12V 的TTL(3PIN) DYNAMIXEL舵机时

img

当使用12V 的RS-485(4PIN) DYNAMIXEL舵机时

img

6 开发环境

DYNAMIXEL Wizard 2.0

OpenRB-150支持DYNAMIXEL Wizard 2.0。
为了用DYNAMIXEL Wizard 2.0来配置和管理DYNAMIXEL,请上传OpenRB-150 sketch例程中的usb_to_dynamixel程序代码。

注意
usb_to_dynamixel “程序作为出厂默认固件被上传到OpenRB-150。
usb_to_dynamixel程序支持高达1 Mbps的波特率。

img

用USB type C数据线连接OpenRB-150,然后上传 usb_to_dynamixel 程序

OpenRB-150支持DYNAMIXEL Wizard 2.0的大部分功能,包括测试DYNAMIXEL、固件管理、数据包分析、数据绘图、控制表备份等。

img

支持高达1 Mbps的各种波特率

img

支持DYNAMIXEL 固件恢复(Firmware Recovery)及固件更新

img

支持数据图形分析

img

支持分析DYNAMIXEL数据包

安装 Arduino IDE

Linux系统端安装

  1. 从Arduino官方下载页面下载Arduino IDE的 “Linux 64 bit “版本。
    img https://www.arduino.cc/en/software

  2. 将下载的文件解压到所需的文件夹中,并在终端执行以下安装脚本。

    1
    $ ./install.sh
  3. 要在Linux平台上运行Arduino IDE,请在终端输入以下命令。

    1
    $ arduino

Mac系统端安装

  1. 从Arduino官方下载页面下载Arduino IDE的 “Mac OS X版本”。
    img https://www.arduino.cc/en/software
  2. 将下载的Arduino文件拖到 Applications中.
  3. 运行 Arduino IDE.

Windows系统端安装

  1. 从Arduino官方下载页面下载Arduino IDE的 “Windows安装程序版本”。
    img https://www.arduino.cc/en/software
  2. 运行安装文件。
  3. 运行 Arduino IDE。

请参阅 Arduino Software Installation instruction video 视频。

安装Board Manager

在Arduino IDE上,从顶部菜单进入 File > Preferences

当 “Preferences”窗口出现时,在 “Additional Boards Manager URLs”文本框中复制并粘贴以下地址。

1
https://raw.githubusercontent.com/ROBOTIS-GIT/OpenRB-150/master/package_openrb_index.json

img

Arduino SAMD Board Manager

OpenRB-150需要Arduino SAMD板管理器来构建和上传程序到控制器。按照下面的说明来安装Arduino SAMD板管理器。

  1. 进入Tools > Board > Boards Manager。
  2. 搜索Arduino SAMD并安装最新版本。

img

按照下面的说明来安装OpenRB-150板卡管理器。

  1. 进入Tools > Board > Boards Manager。
  2. 搜索 “OpenRB “并安装最新版本。

img

Library API

有三种方法来添加库到Arduino IDE。

每种方式在Arduino官方指南中都有详细描述,如有必要请查阅参考。
下面是一个使用库管理器的例子。

img

从库管理器中搜索 “DYNAMIXEL2Arduino “并安装该库。

img

如果DYNAMIXEL2Arduino库已经成功安装,可以在DYNAMIXEL2Arduino类别下找到控制DYNAMIXEL的有用例子。

Dynamixel2Arduino库

Dynamixel2Arduino Class

Master Class

DYNAMIXEL2Arduino类从Master类继承了以下公共函数。

上传 Sketch程序

上传Sketch程序到OpenRB-150,上传方式跟Arduino控制器类似。
通过USB线将OpenRB-150连接到PC上,选择OpenRB-150板和连接到OpenRB-150的端口,然后点击 “Upload “图标。

img

注意: 如果在上传过程中出现错误,请尝试在引导者模式下(通过双击Reset按钮实现)上传程序。

7 下载