Xsens MTi -1 姿态传感器恢复与MTI的通信的方法

恢复与MTI的通信

本人最近因为项目需要,一直在研究Xsens MTi - 1 姿态传感器,因为我写程序是要DSP开发板获取姿态传感器采集的数据,然后从获取的数据中解析出四元数或者欧拉角,并把欧拉角转换成float类型的以便查看,并且后期的算法做铺垫(算法需要采集到的欧拉角的数据),程序写好后测试了几次发现数据不对(当时用的波特率是115200),后来想到换个波特率即9600试一下,看看采集数据的情况如何,没想到在MT软件中设置9600后,运用WriteToMT按键功能,发现软件不停的向设备中写数据,已经达到二十几万条数据了,已经好长时间了,无奈果断关闭软件,重现打开发现无法采集数据如图:

Xsens MTi -1 姿态传感器恢复与MTI的通信的方法_第1张图片

研究了两天,在网上查阅许多资料,都无法解决,后来在官网support中搜索到一篇文章,抱着试试的心态和我的小伙伴严哥和猴哥(严启凡大博士,马冬硕士)一起研究,一开始是英文文档,严哥翻译我俩操作,没想到功夫不负有心人,困扰本人两天的问题终于解决了,重要的是长见识了,我的传感器型号是MTi -1 ,下文加粗的字即,关键的解决方法

 

您可能无法(正确地)与MTI进行通信,原因有很多。本文作为一组指南来(重新)与您的设备进行通信。它涉及MTI 1系列、10系列和100系列.如果您所面临的问题没有在本文中讨论,或者如果这些指南还没有解决您的沟通问题,请联系。支撑. 

电缆

对于MTI 10系列和100系列,如果您使用的是不由Xsens提供的USB到串行转换器,则必须设置波特率,指定其COM端口,并使用“扫描单端口”按钮扫描MT Manager中的单个端口。当使用“扫描所有端口”按钮时,MT Manager只扫描使用Xsens转换器电缆连接的设备。了解MTI是否正在进行通信也很有用。启动MTI后,应自动开始输出测量数据。使用串行监控软件(如PuTTY),您可以监视MTI的COM端口,并查看它是否输出消息。

正确版本

确保您已经安装了MT软件套件的正确版本。请参阅以下条款:

https://base.xsens.com/hc/en-us/articles/209261969-Installing-the-correct-Software-Suite-for-different-generation-products

固件更新程序

检查您的设备是否被固件更新程序检测到,以及是否有可能将固件升级到其最新的可用版本。在某些情况下,这可能解决通信问题。固件更新程序可以在以下站点下载:

https://www.xsens.com/mt-firmware/

恢复通信工具

mtManager提供了一个恢复通信工具。它可以在Tools选项卡下找到。仅当您的MTI通过COM接口进行连接时,还原通信工具才能工作(请使用Windows的设备管理器进行检查)。

  • 如果使用MTI 10系列或100系列:
    • 打开还原通信工具,只需遵循指南。
    • 应该恢复沟通。
  • 如果将MTI 1系列与开发工具包结合使用:
    • 您可以使用MT管理器,但是您必须重置设备,同时不断开USB线路(COM端口应该保持活动状态)。要做到这一点,您需要一个跳线,您可以使用它临时连接nRST头引脚到GND头引脚。
    • 使用USB电缆将DK连接到PC上。(DK是指传感器设备)
    • 打开MT管理器并启动还原通信工具。
    • Xsens MTi -1 姿态传感器恢复与MTI的通信的方法_第2张图片
    • 在DK的COM端口上启动恢复通信进程。
    • 连接引脚nRST和GND。
    • 断开引脚nRST和GND。
    • 应该恢复沟通。
  • 如果您正在使用MTI 1系列,并且它是焊接到位的,程序将在低级通信文件但这可能需要一些转换到MTI-1,因为USB-串行转换器电缆不适用:
    • 将PSEL切换到“00”以启用UART_FD。
    • 在115200 8N1上打开UART到MTI。
    • 开始重复发送值0xDE,在它们之间延迟约500 us。
    • 重置MTI-1。要么将nRST线路拉低一段时间,要么将MTI-1(如果可能的话)作为动力循环。
    • 继续发送0xDE,直到唤醒消息进来。
    • 应该恢复沟通。

波特率太低

当使用带有串行到USB转换器的MTI时,如果MTManager的波特率设置为4800或9600 bps,则可能无法与设备连接。为了重新连接MT Manager中的MTI,首先尝试以上解决方案.如果没有这些工作,您将不得不手动重置波特率。您可以在MT管理器中使用直接的USB连接(而不是串行到USB转换器)来实现这一点。如果没有直接USB连接,则可以使用低级别通信来重置设备的波特率。参考LLCP文件有关低级接口和setBaudrate命令的更多信息。

司机

重要的是要安装正确的驱动程序。

  • 如果您使用包含USB到串行转换器(即CA-USB#-MTI)的电缆的MTI,则正确的驱动程序将包含在MT软件套件中,默认为:
    C:\ProgramFiles\通用文件\xsens USB-串行转换器驱动程序
    如果需要单独的驱动程序,可以下载它们。这里. 
     
  • 如果您使用标准USB电缆(CA-USB-MTI)(即没有USB到串行转换器)的MTI,则必须安装正确的驱动程序。
    • Windows:
      • 确保安装了WinUSB。
    • 对于Linux:
      • libusb包含在最新的Linux内核(Ubuntu)中。
      • 如果MTI不被认可,请访问https://github.com/xsens/xsens_mt手动安装驱动程序(例如在某些版本的嵌入式Linux上)。

你可能感兴趣的:(机器人,传感器)