Skip to content

Meow 快速上手与上位机操作

禁止使用 Node-ID 100 和 101

不得将电机或其他 CANopen 设备的 Node-ID 设置为十进制 100(0x64)或 101(0x65)。 电机升级协议使用 0x780 + Node-ID 发送请求,这两个地址分别落在 0x7E4、0x7E5,与 LSS 的应答/请求 ID 冲突。LSS 扫描或配置可能因此干扰电机升级通信。

Device Settings 禁止将新地址设为这两个值;Motor Control 和固件升级会对使用这些地址的电机报错并拒绝操作。已有设备使用这些值时,请先在 Device Settings 改为其他合法且未占用的 ID,保存并重新上电,再控制或升级。故障恢复探测也跳过这两个 ID。

中文 | English

适用于 Meow 协议的 HEX 4310 / HEX 4342P。先在协议概览核对身份;GUI 会自动识别电机型号。

安全事项

重要安全信息

  • 严禁热插拔
  • 非紧急情况下,必须等待设备静止不动方可断电,严禁在运动过程中断电。
  • 严禁在充电过程中使用设备。
  • 请在使用前对设备的使用电压、功率、安装等参数进行确认,超参数导致的问题不在保修范围内。
  • 请评估使用环境的IP等级、温度和设备的适用性等要求,恶劣环境导致的问题不在保修范围内。
  • 该设备并不提供防撞、防跌落、生物接近预警等稳定的相关安全功能,请对集成的产品进行安全评估,并符合对应的法规及认证,确保开发的产品没有重大安全隐患。
  • 请阅读相关的保养要求,防止应为错误操作导致的不可逆转的损害,例如:电池过放、轮胎低气压低压导致轮毂损坏、缺少润滑导致轴磨损等。
  • 首次使用请将设备放置于安全、空旷环境中,没有载重物,按照操作说明步骤启动,并测试所有相关功能,如有问题请联系购买渠道服务人员。
  • 当设备出现异常或发生意外时,请立即使用急停或关闭电源,避免造成二次损伤,并联系相关技术人员,不要自行拆卸。 注意:用户任何自行拆卸、改装、非正常使用以及自然灾害等不可抗力造成的损害将不在保修范围内。 对用户集成后的设备造成的安全事故,本产品不承担相应责任,请用户自行评估风险与可靠性测试,特此声明。

充电器使用说明

  • 锂电池充电器根据电池串数不同会提供不同的充电电压,常用规格为7串(29V)6串(25V)以及行业用13串(54V)。请选择正确的充电器充电,推荐使用设备自带充电器。如有问题请联系客服。
  • 请一定检查充电电压是否正确,设备充电电压会标注在设备铭牌上。
  • 请确保在有人环境下充电,人离开时请切断电源。
  • 请在设备对点后开始充电,充电时请勿使用设备。
  • 充电器及设备应远离卧室,周边杜绝可燃物,并保持干燥。
  • 充电器使用220V AC 输入电源,请确保输入电压稳定。
  • 单次连续充电时间不应超过8小时,如出现充电器过热应立即停止充电。

准备与接线

  1. 根据4310或 4342P接口说明连接电源与 CAN。固定电机,给输出轴留出运动空间。
  2. 首次设置先只接一台电机。总线两端各有且仅有一组终端电阻;使用 USB-CANFD-HUB 时计入其内置电阻。
  3. 用可传输数据的 USB 线连接适配器与电脑。
  4. 从 hex-motor-gui Releases选择对应系统的安装包,使用包含 Meow 电机面板的版本。以下按 GUI 1.7.0 的界面描述。

选择 CAN 后端

平台 / 方式 GUI 总线输入 配置方式
Windows / macOS / Linux,USB-CANFD-HUB 直连 gs_usb0;其他通道用 gs_usb1 等 GUI 选择数据段速率,默认 5 Mbit/s
Linux,SocketCAN can0 等 连接前通过系统命令配置接口

Linux 使用 SocketCAN、设备配置为 1 Mbit/s + 5 Mbit/s 时:

sudo ip link set can0 down
sudo ip link set can0 type can bitrate 1000000 sample-point 0.8 dbitrate 5000000 dsample-point 0.75 sjw 5 dsjw 3 fd on
sudo ip link set can0 up
ip -details -statistics link show can0

实际接口名按系统替换;若设备不是 5 Mbit/s,使用与设备一致的数据段速率和采样点。gs_usb 直连由 GUI 配置适配器,不需要先执行上述 ip link 命令。同一个适配器通道只交给一个控制程序使用。

连接并识别

  1. 打开 Motor Control(电机控制)工具。
  2. 选择总线及数据段速率。主机 Node-ID 默认 0x0A,确保电机没有使用同一 ID。
  3. 点击 Connect(连接),等待设备心跳使电机出现在左侧列表。
  4. 选择电机,确认显示 hexmeow 4310 或 hexmeow 4342,并进入 Meow 专用面板。识别到的 Vendor ID / Product Code 应与身份表一致。

若需要改 Node-ID 或通信速率,先完成下一节,再做运动初始化;无需修改可直接跳到“初始化与第一次转动”。

关于修改电脑端can总线的波特率

  • 下面的图片演示为Windows平台下的在gui中修改can总线波特率的演示。
  • 使用hex-gui时 Windows 和 macOS 平台可以直接在选择can编号旁边选择对应的波特率并使用。
  • Linux平台的can总线波特率需要自己另外在终端或者其他工具中修改。
  • 我们还提供了更方便的Linux命令行工具来一键修改适配hex电机can线波特率的工具:can-config

修改 Node-ID、速率与 BRS

  1. 打开 Device Settings(设备设置),连接并选择电机。
  2. 确认电机在线、尚未初始化,NMT 为 Pre-Operational 或 Stopped。该工具不主动发送 NMT 强制切换状态;若此前已经运行,先失能,再断电重新上电后进入设置工具。
  3. 在 CAN 设置(对象 0x2001)中设置 Node-ID、仲裁段速率、数据段速率和 PDO BRS。日常使用保持仲裁段 1 Mbit/s;数据段支持 1 / 2 / 4 / 5 Mbit/s。
  4. 点击 Save and power-cycle(保存并重新上电)。软件会写入、回读并通过 0x1010:04 保存。
  5. 等待成功提示后手动给电机断电再上电,将适配器改为相同速率,重新连接并核对新 ID。此按钮不会替你切断电源。

界面预填的是对象字典中保存的 ID,不一定等于尚未重启的活动 ID。修改前确认目标 ID 未被占用,避开主机 0x0A 和系统预留 100、101、127。

初始化与第一次转动

  1. 回到 Motor Control,连接并选择电机。
  2. 设置 电机 TPDO 周期(1–100 ms,整数),初次调试可先用 10 ms(100 Hz),点击 Initialize(初始化)。GUI 默认输入为 1 ms;多电机或高总线负载时按需增大。
  3. 等待生命周期为 Initialized、NMT 为 Operational、模式为 Disabled(失能)。初始化会配置反馈与心跳,保持电机失能。
  4. 在 Motion limits(运动限制)中将最大力矩设为低值,例如 50 ‰(原始峰值的 5%),点击对应 Apply(应用)。再将规划速度、加速度和减速度设为适合机构的低值,例如 0.2 Rev/s、0.2 Rev/s²、0.2 Rev/s²,点击 应用规划限制。填写数值后必须点按钮才会写入;根据负载调整,低力矩下可能不足以启动。
  5. 在 Profile Velocity(轮廓速度)卡片输入 0.05 Rev/s,点击 Send Target(发送目标值)。它会先写目标,再切到 PV 并确认模式;点击后电机即可运动。
  6. 检查方向和反馈。测试结束先发送 0 Rev/s,观察速度降为零,再点击 Disable(失能)并确认状态。

各控制模式的输入

模式 操作与单位
PP 轮廓位置 输入输出轴圈数 Rev,可先点“使用当前位置”避免首次目标跳变;范围 [-128, 128)
PV 轮廓速度 输入输出轴 Rev/s,正负号指定方向;适合连续旋转
Torque 力矩 输入 N·m;GUI 依据峰值和出厂系数换算为协议千分比
MIT 输入 rad、rad/s、N·m、Kp(N·m/rad)、Kd(N·m·s/rad)及 Kp/Kd 运算结果限制(‰)
Disable 失能 停止力矩输出,不修改已配置的目标值

运行中可以切换模式,每次点击某卡片的“发送目标值”都会先写该卡片目标,再确认模式。MIT 的 Kp/Kd 输出限制分别限制两项计算得到的力矩,不是 Kp/Kd 数值本身;保持为 0 会使对应输出受限为零。

GUI 当前将 4310 的 PV 输入范围限制为 ±8 Rev/s,4342 为 ±3 Rev/s;这是输入保护范围,实际运行速度仍须服从电机规格和机构限制。

出厂力矩标定提示

已出厂标定表示 GUI 已应用 0x4001 的力矩系数;未出厂标定使用系数 1;读取失败时应点击“重新读取 0x4001”并排查通信,当前发送目标流程会拒绝系数未知的请求。请不要对 GUI 输入值再手动应用一次系数。

若初始化后 MIT 参数仍不可用,可能未能读取 0x4102:07。部分旧固件没有 0x4102;请记录固件版本并联系固件提供方处理。

反馈、图表与 CSV

“数值”面板显示原始 Q8.24 位置换算后的 Rev、主机累计位置、速度、物理力矩及原始千分比、模式、详细错误和温度。“图表”显示位置 / 速度 / 力矩,时间窗口可调 1–60 s。

界面以 50 或 100 Hz 读取快照;电机 TPDO1 频率由初始化设置的周期决定(1000 / 周期_ms),TPDO2 固定 50 Hz。切换显示刷新率不会修改电机发送周期。速度由位置与时间戳估计,数据中断后需重新建立连续性。

打开 Record CSV(记录 CSV)保存驱动发布的数据流,界面显示可复制的文件路径;每次重新开启记录会创建新文件。CSV 不受界面的 50 / 100 Hz 刷新率限制,但仍受实际接收与记录吞吐限制。

Meow CSV 的力矩列为原始 torque_permille,并非面板上已校正的 N·m;离线分析时按峰值和出厂系数换算。日志同时保留累计位置有效性、分段编号和两路 TPDO 代数,便于识别数据中断。

设置当前位置参考值(零点)

在 Device Settings(设备设置)中选择已识别、在线的电机,使用独立的 Position preset(位置预设)卡片:

  1. 点击 Read position(读取位置),确认当前值。
  2. 输入希望当前位置显示的参考值(-0.5~0.5 Rev),例如 0。
  3. 点击 Save as preset(保存位置),等待成功并回读确认。程序会先失能电机并确认,再写 0x3001:01 与 0x3001:02 = pres;完成后保持失能。

位置预设不需要另外点击通信参数保存,也不会驱动电机转到输入值。重新开始运动前回到控制工具,检查状态并按需重新初始化。

排查问题

现象 优先检查
连接后没有电机 供电、通道、线序、终端电阻、两段速率和设备心跳;Node-ID 是否冲突
心跳 / SDO 正常,初始化仍超时 BRS 与帧类型是否正确、PDO 映射和总线负载;不能只接收 Classic 短帧
NeedsRestart 通信参数已保存,需手动断电再上电
NeedsReinit 设备离开 Operational 或反馈过期;恢复连接后重新初始化
0xA4 / 0x8130 主机心跳是否持续,主机 ID 与 0x1016 是否一致
力矩 / MIT 按钮不可用或发送失败 峰值、MIT 尺度因子和出厂标定数据是否读取成功
ObjectDoesNotExist 核对具体对象地址、电机型号和固件版本,特别是旧固件的 0x4102
PP 超范围或累计位置失去连续性 PP 只支持 [-128, 128);连续多圈用 PV,掉线后重建累计基线

故障码和通信规则详见Meow 协议。