Token导航 LogoToken导航

MCP Server · 地图位置

basicmicro arduino

Basicmicro Arduino库是一个用于控制Basicmicro电机控制器的完整接口,支持多种控制模式包括占空比控制、速度控制、位置控制和PID参数配置。

未说明官方级别未说明来源级核验工具 0
C++位置天气搜索

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
basicmicro
提供方
basicmicro

工具数量

0

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

1

仓库热度

收录来源

1 个

MCP World

选型结论

basicmicro arduino 属于地图位置类 MCP Server,公开资料标注 0 个工具,通过传输方式未标注接入,客户端适配情况以官方文档为准,没有现成的安装命令;接入前先确认权限范围。

分类

地图位置

传输方式

未说明

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 0 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

基本微型Arduino库

用于控制Basicmicro电机控制器的Arduino库,全面支持所有控制器功能,包括占空比控制、速度控制、位置控制、编码器反馈、PID参数配置等。

概述

该库提供了一个完整的接口,用于使用串行通信与Basicmicro电机控制器通信。它支持用于控制电机、读取传感器和配置控制器参数的完整命令集。

支持的硬件

此库与以下内容兼容:

  • 所有带串行接口的Basicmicro电机控制器
  • 具有硬件或软件串行功能的Arduino板
  • ESP8266、ESP32和其他Arduino兼容板

安装

使用Arduino库管理器(推荐)

  1. 在Arduino IDE中,转到 草图>包含库>管理库
  2. 搜索“Basicmicro”
  3. 点击“安装”

手动安装

  1. 从下载最新版本
  2. 在Arduino IDE中,转到 草图>包含库>添加。ZIP库
  3. 选择下载的zip文件

硬件连接

使用以下连接将Arduino连接到Basicmicro控制器:

  • Arduino TX引脚→ 控制器RX引脚
  • Arduino RX引脚→ 控制器TX引脚
  • Arduino和控制器之间的公共接地

对于硬件串行:

#include 
Basicmicro roboclaw(&Serial1, 10000); // Using Serial1, 10ms timeout

对于软件串行(仅基于AVR的板):

#include 
#include 
SoftwareSerial serial(10, 11); // RX, TX
Basicmicro roboclaw(&serial, 10000); // Using SoftwareSerial, 10ms timeout

基本用法

初始化控制器

#include 

#define ADDRESS 0x80 // Default address of the controller

Basicmicro roboclaw(&Serial1, 10000);

void setup() {
  Serial.begin(115200);
  roboclaw.begin(38400); // Set the baud rate for communication with the controller
}

电机控制方法

// Basic duty cycle control (-32768 to +32767)
roboclaw.DutyM1(ADDRESS, 16384);      // 50% duty cycle forward
roboclaw.DutyM2(ADDRESS, -16384);     // 50% duty cycle backward
roboclaw.DutyM1M2(ADDRESS, 8192, 8192); // Both motors at 25% forward

// Speed control using encoders
roboclaw.SpeedM1(ADDRESS, 1000);      // Run at 1000 encoder counts per second
roboclaw.SpeedAccelM1(ADDRESS, 500, 1000); // Accelerate to 1000 counts/sec at 500 counts/sec²

// Position control
roboclaw.SpeedAccelDeccelPositionM1(ADDRESS, 500, 1000, 500, 10000, 0); // Move to position 10000

// Stop motors
roboclaw.DutyM1(ADDRESS, 0);
roboclaw.DutyM2(ADDRESS, 0);

读取编码器和状态信息

// Read encoder values
uint32_t enc1 = roboclaw.ReadEncM1(ADDRESS);
uint32_t enc2 = roboclaw.ReadEncM2(ADDRESS);

// Read speed values
uint8_t status;
bool valid;
uint32_t speed1 = roboclaw.ReadSpeedM1(ADDRESS, &status, &valid);
if (valid) {
  Serial.print("Motor 1 Speed: ");
  Serial.println(speed1);
}

// Read current values
int16_t current1, current2;
if (roboclaw.ReadCurrents(ADDRESS, current1, current2)) {
  Serial.print("Motor 1 Current: ");
  Serial.print(current1);
  Serial.print("mA, Motor 2 Current: ");
  Serial.print(current2);
  Serial.println("mA");
}

// Read battery voltage
uint16_t voltage = roboclaw.ReadMainBatteryVoltage(ADDRESS, &valid);
if (valid) {
  float volts = voltage / 10.0; // Convert to volts
  Serial.print("Battery Voltage: ");
  Serial.print(volts);
  Serial.println("V");
}

配置设置

// Set PID parameters for velocity control
roboclaw.SetM1VelocityPID(ADDRESS, 1.0, 0.5, 0.25, 12000);

// Set current limits
roboclaw.SetM1MaxCurrent(ADDRESS, 5000, 2500); // 5A max, 2.5A min

// Save settings to non-volatile memory
roboclaw.WriteNVM(ADDRESS);

高级示例

以下是一个更完整的示例,显示了编码器反馈的运动:

#include 

#define ADDRESS 0x80
Basicmicro roboclaw(&Serial1, 10000);

void setup() {
  Serial.begin(115200);
  Serial1.begin(38400);
  
  // Set PID parameters for velocity control
  roboclaw.SetM1VelocityPID(ADDRESS, 1.0, 0.5, 0.25, 12000);
  
  // Reset encoder counters
  roboclaw.ResetEncoders(ADDRESS);
}

void loop() {
  // Move forward for 5 seconds
  roboclaw.SpeedAccelM1(ADDRESS, 500, 2000);
  delay(5000);
  
  // Read encoder position
  uint8_t status;
  bool valid;
  uint32_t position = roboclaw.ReadEncM1(ADDRESS, &status, &valid);
  if (valid) {
    Serial.print("Encoder position: ");
    Serial.println(position);
  }
  
  // Stop motor
  roboclaw.SpeedAccelM1(ADDRESS, 500, 0);
  delay(1000);
  
  // Return to start position
  roboclaw.SpeedAccelDeccelPositionM1(ADDRESS, 500, 2000, 500, 0, 0);
  delay(5000);
}

完整的文件

该库为高级控制和配置提供了更多功能。有关特定功能的更多详细信息,请参阅头文件或参考示例文件夹。

有关所有命令和协议的完整文档,请参阅 官方Basicmicro文档.

故障排除

  • 与控制器无通信:验证接线,检查波特率设置,并确保电源已连接
  • 电机不动:检查错误代码 ReadError(),用以下方式验证电压 ReadMainBatteryVoltage()
  • 运动不稳定:调整PID参数以实现更平稳的控制

贡献

欢迎为改善图书馆做出贡献。请在GitHub存储库上提交问题和拉取请求。

许可证

此库根据MIT许可证发布。看 许可证 文件以获取详细信息。

______________________________________________________________________

支持的硬件

此库适用于所有当前的Basicmicro电机控制器:

资源

工具与能力

工具数量

0

资源数量

0

提示词数量

0

能力标签

C++本地部署电机控制Arduino库位置控制速度控制PID控制

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

地址与坐标转换

把地址转成经纬度,或按坐标反查位置。

路线与距离

算行程时间、规划多点路线。

天气与出行

查天气和预警,按条件安排行程。

选择建议

值得选的地方

  • 只提供 0 个工具,职责集中,接入后不容易误操作。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在地图位置场景里让模型直接调用外部能力的人。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
basicmicro arduino

MCP World · 本页

0未说明未标注1 个2026-05-17
Baidu Maps

MCP World

10stdio有1 个2026-05-17
MCP Server C2f246e3

MCP World

20stdio有1 个2026-05-17
OpenStreetMap MCP Server

MCP.so

12stdio有3 个2026-05-17
Google Maps (google-maps-aa2563d3)

MCP World

7未说明未标注1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

basicmicro arduino 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

basicmicro arduino 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

basicmicro arduino 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

basicmicro arduino 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

basicmicro arduino 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP