机器人 - 关于MIT电机模式控制

目录

一、MIT电机模式简单介绍

1.1 简单介绍

1.2 MIT模式的控制参数

1.3 使用场景

二、调试时建议

2.1 调试

2.2 问题定位


一、MIT电机模式简单介绍

1.1 简单介绍

Mixed Integrated Torque为一种混合控制模式,在同一帧CAN数据里包含 位置、速度、扭矩三类的闭环指令。驱动器里面把位置环、速度环、前馈扭矩相加,得到一个参考电流,然后再交给电流环完成精准扭矩输出。


1.2 MIT模式的控制参数
参数含义取值范围(常见)说明
kp位置比例系数(刚度)0 ~ 500 (单位视驱动器而定)kp = 0 时位置环失效,仅靠速度/扭矩环工作
kd位置微分系数(阻尼)0 ~ 500kd = 0 时位置环会产生振荡,实际使用时需给一个非零值
pos (q)期望位置(单位:计数或角度)-12.5 ~ 12.5 rad(示例)位置环的目标值
vel (dq)期望速度(单位:rpm)-30 ~ 30 rpm(示例)速度环的目标值
torq (tau)前馈扭矩(单位:Nm)-T_MAX ~ T_MAX直接给定的扭矩,常用于 纯扭矩控制(kp = kd = 0)

1.3 使用场景
场景参数设置示例说明
匀速转动kp = 0,kd ≠ 0,pos = 0,vel = 目标速度,torq = 0只打开速度环,电机以恒定速度运行。
纯扭矩输出kp = 0,kd = 0,pos = 0,vel = 0,torq = 目标扭矩前馈扭矩直接驱动电流环,适用于 力矩控制(如抓取、阻尼)
点到点位置控制kp > 0,kd > 0,pos = 目标位置,vel = 0,torq = 0位置环+速度环共同作用,实现平滑定位。
位置‑速度‑扭矩混合kp > 0,kd > 0,pos = 目标位置,vel = 目标速度,torq = 前馈扭矩适用于 刚度‑阻尼‑外力补偿(如机械臂的阻抗控制)。

在使用位置控制时,kd不能为0,否则电机会振荡、失控;



二、调试时建议

2.1 调试
步骤操作要点
① 先打开位置环设定 kp > 0kd > 0,观察位置响应曲线,确保无明显超调。
② 调整阻尼增大 kd 可抑制振荡;若响应过慢,可适当降低 kp
③ 速度环在位置环基础上调节 vel(目标速度)或直接使用 kp=0、kd≠0 进行 纯速度控制
④ 前馈扭矩当负载较大时,适当加入 torque 前馈,以补偿静摩擦或外部扰动。
⑤ 监测电流通过驱动器的电流反馈(CAN 0x02 帧)检查是否出现 过流,必要时限制 torque 上限。

2.2 问题定位
问题可能原因检查方式
电机不转动kp=0、kd=0、torque=0(所有环失效)确认发送的参数中至少有一个非零值。
出现振荡kd 设为 0 或过小增大 kd,或在位置环加入适当的 kp
转速偏差大前馈扭矩未补偿负载在 torque 参数中加入正向前馈,或调大 kp
CAN 报文未到达报文 ID 错误或波特率不匹配用示波器或上位机抓包确认 ID 为 0x00+motor_id(位置帧)和 0x01+motor_id(扭矩帧),波特率与驱动器保持一致(默认 1 Mbps)。
电机过流保护torque 设定过大限制 torque 幅值在驱动器手册规定的 T_MAX 范围内。

Read more

Linux下libwebkit2gtk-4.1-0安装实战案例(从零实现)

Linux下 libwebkit2gtk-4.1-0 安装实战:从零搞定GTK 4应用的Web渲染引擎 你是否在开发一个基于 GTK 4 的桌面程序时,突然发现 webkit_web_view_new() 编译报错? 或者运行时提示“找不到 libwebkit2gtk-4.1.so.0 ”? 别急——这不是你的代码写错了,而是系统里缺了那个关键的 Web 渲染库: libwebkit2gtk-4.1-0 。 这玩意儿看起来只是个动态链接库,但它其实是现代 Linux 桌面应用中嵌入网页内容的“心脏”。无论是 OAuth 登录窗口、帮助文档展示,还是像 Epiphany 浏览器那样的完整 Web 客户端,都离不开它。 但问题来了:为什么这个包这么难装? 因为它依赖复杂、版本敏感、发行版支持参差不齐。Ubuntu

前端无障碍性:让所有人都能使用你的网站

前端无障碍性:让所有人都能使用你的网站 毒舌时刻 前端无障碍性?这不是给残障人士用的吗? "我的网站不需要无障碍性,用户都是正常人"——结果被投诉歧视, "无障碍性太麻烦了,我没时间做"——结果失去了一部分用户, "无障碍性就是加几个alt标签而已"——结果网站在屏幕阅读器下完全不可用。 醒醒吧,无障碍性不是慈善,而是一种责任! 为什么你需要这个? * 法律合规:许多国家和地区都有无障碍性法规 * 扩大用户群体:让残障人士也能使用你的网站 * SEO优化:无障碍性好的网站更容易被搜索引擎收录 * 用户体验:对所有人都友好的设计,对正常人也有好处 反面教材 <!-- 反面教材:缺乏语义化HTML --> <div> <div>网站logo</div> <

Claude Code本地化部署教程:零成本打造最强内网AI开发助手

Claude Code本地化部署教程:零成本打造最强内网AI开发助手

文章介绍了如何通过Ollama将Claude Code接入本地开源模型,实现不联网、不花钱、代码不出本地的开发环境。提供了详细配置教程,包括安装客户端、设置环境变量和启动本地模型。这种方式确保数据安全,无需订阅费用,可自由切换Qwen3、GLM等模型,为开发者提供了完全离线的AI辅助开发体验。 如果你是一个开发者,一定被Claude Code的能力震惊了。简单来说,它不仅仅是一个聊天框,而是一个能直接住在你的工作空间内的数字员工,能读懂你的源码、系统功能修BUG、写报告,互联网检索等,在授权的情况下,还能运行终端命令。 但是很多人担心隐私泄露,或者不想一直给Claude交昂贵的订阅费。今天,救星来了!通过Ollama可以把 Claude Code 这个“神级躯壳”接入本地运行的开源模型(如 Qwen3、GLM)。不联网、不花钱、代码不出本地,可谓是最强内网开发套装! 为什么又要本地跑Claude Code? * 数据安全:公司代码资产,怎么敢随便传输到云端?本地运行,物理隔离最安心。 * 告别订阅:

【大模型应用】Java开发者的AI智能编程实战解析:从Rule约束到Skill复用的全方位指南

Java开发者的AI智能编程实战解析:从Rule约束到Skill复用的全方位指南 作为Java资深开发者,掌握AI编程不仅关乎效率提升,更是技术竞争力的关键体现。 一、AI编程范式的技术演进与Java开发视角 2025年是AI编程工具从“辅助”走向“主导”的转折点。从最初的代码补全到现在的全流程自主开发,AI编程已经经历了六代技术演进。作为Java开发者,我们需要理解这一变革的技术本质。 1.1 演进历程与Java开发的影响 Vibe Coding(2024-2025年兴起)让Java开发者从繁琐的样板代码中解放出来,专注于架构设计和业务逻辑。而Rule、Skill、MCP、Agent等概念的形成,标志着AI编程从工具层面向工程化、体系化方向发展。 对于Java企业级开发而言,这一变化尤为显著:传统的Spring Boot项目初始化、依赖配置、项目结构搭建等重复性工作,现在可以通过AI Agent自动化完成,开发者只需关注核心业务架构。 核心概念定位与演进时间线 1. Vibe Coding:开发范式的革命 推出时间:2024年开始兴起,2025年形成明确方法论