下载此文档

基于arduino的自平衡车.doc


文档分类:IT计算机 | 页数:约9页 举报非法文档有奖
1/9
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/9 下载此文档
文档列表 文档介绍
基于arduino的自平衡车
控制器:arduino uno
传感器:角加速度用BMA 180,角速度用ITG 3205,位移用电机12线正交编码器
算法:角度测量用卡尔曼滤波融合,控制用全状态反馈
动力:两个直流减速电机,电压12v 功率17w 速比64 速度120rpm。MC33886驱动。4s锂电池组。
无线通讯:3个XBEE无线模块分别在小车、Wii手柄遥控模块、PC检测模块上。
 
 
 
 
简化的kalman滤波,copy老外的:/forum/,
ARDUINO 代码复制打印
float kalmanCalculate(float newAngle, float newRate,int looptime)
{
  newAngle=newAngle/10;
  newRate=newRate/10;
  float dt = float(looptime)/1000;
  x_angle += dt * (newRate - x_bias);
  P_00+=(- dt * (P_10 + P_01) + Q_angle * dt);
  P_01+=( - dt * P_11);
  P_10+=(- dt * P_11);
  P_11+=(+ Q_gyro * dt);
 
  y1 = newAngle - x_angle;           //测量值与预测值之差
  S = P_00 + R_angle;               //预测误差与测量误差之和
  K_0 = P_00 / S;                   //角度测量的卡尔曼增益
  K_1 = P_10 / S;                   //
 
  x_angle+=K_0 * y1;
  x_bias +=K_1 * y1;
  P_00-=K_0 * P_00;               //角度的预测误差更新
  P_01-=K_0 * P_01;
  P_10-=K_1 * P_00;
  P_11-=K_1 * P_01;
  return x_angle*10;
}
主要材料清单,我不是做广告啊。
  
编号
  
  
项目
  
  
型号
  
  
供应商
  
  
备注
  
  
1
  
  CPU
  
  Arduino Atmega328P
  
  http://item./?id=**********
  
  

  
  
2
  
  电机
  
  Faulhaber编码器空心杯减速电机带支架
  
  http://tradearchive./trade/detail/?spm=&tradeID=125981947427046
  
  

  
  
3
  
  电机驱动
  
  飞思卡尔 33886大功率电机驱动板
  
  http://item./?id=6717655

基于arduino的自平衡车 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数9
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文库旗舰店
  • 文件大小955 KB
  • 时间2018-08-08