又一次研究JY901心得

又一次尝试使用 Jy901 模块,没有成功应用,但是通过实验有一些心得记录如下。

1.模块默认使用输出 9600Hz 波特率通讯,10Hz回报;

2.恢复模块默认配置的方法有两种,一种是短接,另外一种是串口命令

3.一些串口配置的方法:

a.	ff aa 03 03 00  设置回传速率为1Hz
b.	ff aa 02 08 00  设置只输出0x53包(手册上提到JY901无法输出四元数)
c.	ff aa 00 00 00 保存当前设置(比如,进行了上述设定之后,需要保存之后下一次上电才能继续使用)

4.使用的轴如下图所示(不要看模块PCB上的标注,是错的)

5.输出范围:X轴±180;Y轴±90;Z轴±180

6.DataSheet上描述的角度输出如下:

其中的计算方法有问题,按照它的方法不会有正负的区别:

例如: 55 53 A0 A1 B0 B1 C0 C1 T0 T1 SUM

其中的 0xA1A0 输出范围是 0000-7FFF ,对应着 -180~+180;0xB1B0 输出范围是 0000-7FFF ,对应着 -90~+90;0xC1C0 输出范围是 0000-7FFF ,对应着 -180~+180.

因此实际可以选择如下处理方法:

  fX = JY901.stcAngle.Angle[0] - 0x4000;
  fX = fX * 180.0 / 0x4000;

  fY = JY901.stcAngle.Angle[1] - 0x4000;
  fY = fY * 90.0 / 0x4000;

  fZ = JY901.stcAngle.Angle[2] - 0x4000;
  fZ = fZ * 180.0 / 0x4000;

符号和方向满足右手原则:拇指指向轴方向,然后四个手指方向是正,相反是负。

参考:

1. https://wenku.baidu.com/view/13665ba8b307e87100f69630.html?ind=1&fr=wenchuang&_wkts_=1719042668522&bdQuery=jy901+%E6%95%B0%E6%8D%AE%E6%A0%BC%E5%BC%8F