楼主

[其他] 【求助帖】官方”小黑块“陀螺仪的使用或资料提供

[复制链接]
顾问az19940414
2019-3-23 21:42:37 显示全部楼层
我这有一个协议说明,虽然不是小黑块的,但是协议兼容

陀螺仪采用CANBus接口反馈数据,为1000Hz,波特率为1Mbit
通信协议如下:
1.   指示灯说明
当检测到陀螺仪CANBus离线时,陀螺仪红灯闪烁
当正常通信时,蓝灯闪烁
校准期间,红灯常亮,校准完成,陀螺仪正常工作。(校准期间,请务必静置传感器)
2.   校准协议
校准时候陀螺仪应静止,等待红色指示灯熄灭,蓝色指示灯闪烁表示校准完成。
主机发送如下数据进行校准:
  
ID
  
0x404
  
ID类型
  
标准ID
  
长度
  
8
  
字节0内容
  
0
  
字节1内容
  
1
  
字节2内容
  
2
  
字节3内容
  
3
  
字节4内容
  
4
  
字节5内容
  
5
  
字节6内容
  
6
  
字节7内容
  
7
接收到以上消息,陀螺仪会校准归零,请务必静置。
示例代码:
   TxMessage.StdId = 0x404;//send to gyro controll board
   TxMessage.IDE = CAN_ID_STD;
   TxMessage.RTR = CAN_RTR_DATA;
   TxMessage.DLC = 0x08;
   TxMessage.TransmitGlobalTime = DISABLE;
   can_tx_data[0] = 0x00;
   can_tx_data[1] = 0x01;
   can_tx_data[2] = 0x02;
   can_tx_data[3] = 0x03;
   can_tx_data[4] = 0x04;
   can_tx_data[5] = 0x05;
   can_tx_data[6] = 0x06;
can_tx_data[7]= 0x07;
陀螺仪反馈消息
  
ID
  
0x401
  
ID类型
  
标准ID
  
长度
  
4
  
字节0内容
  
数据25-32位
  
字节1内容
  
数据17-24位
  
字节2内容
  
数据9-16位
  
字节3内容
  
数据1-8位
接受数据拼接成一个32位有符号数,乘以校准系数即为角度。
                 ZGyroModuleAngle=(float)(0.01)*((int32_t)(can_rx_data[0]<<24)|(int32_t)(can_rx_data[1]<<16) | (int32_t)(can_rx_data[2]<<8) | (int32_t)(can_rx_data[3]));



回复

使用道具 举报

沙发

[其他] 【求助帖】官方”小黑块“陀螺仪的使用或资料提供

[复制链接]
顾问az19940414
2020-1-26 16:04:58 显示全部楼层
哈哈嘿 发表于 2019-6-18 17:26
您这个是另一款陀螺仪的嘛还是说只是有这个通信协议,如果是另一款陀螺仪的话方不方便透露一下呀(斜眼笑 ...

和小黑块兼容的一款陀螺仪
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

触屏版 | 电脑版

Copyright © 2024 RoboMasters 版权所有 备案号 粤ICP备2022092332号

快速回复 返回顶部 返回列表