- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
小车陀螺仪:输出波形图二阶滤波
* Arduino 智能平衡小车 模块篇 小车主视图: 小车主控制板:Arduino uno r3 小车陀螺仪:MPU6050 可以输出当前模块X Y Z轴的角度 角速度 更集成温度传感器 能读取温度 小车陀螺仪:MPU6050 上位机读取数据程序 使用通讯方式为IIC #include I2Cdev.h #include MPU6050_6Axis_MotionApps20.h #include Wire.h“ Wire.begin(); //加入 I2C 总线序列 mpu.initialize(); //初始化MPU6050 小车陀螺仪:MPU6050 上位机读取数据程序 使用通讯方式为IIC 开始(S)和结束(P)标志 开 始信号:处理器让SCL时钟保持高电平,然后让SDA数据信号由高变低就表示一个开始信号。同时IIC总线上的设备检测到这个开始信号它就知道处理器要发送数据了。 停止信号:处理器让SCL时钟保持高电平,然后让SDA数据信号由低变高就表示一个停止信号。同时IIC总线上的设备检测到这个停止信号它就知道处理器已经结束了数据传输,我们就可以各忙各个的了,如休眠等。 小车陀螺仪:MPU6050 上位机读取数据程序 使用通讯方式为IIC 如果要读取MPU-60X0 寄存器的值,首先由主设备产生开始信号(S),然后发送从设备地址位和一个写数据位,然后发送寄存器地址,才能开始读寄存器。紧接着,收到应答信号后,主设备再发一个开始信号,然后发送从设备地址位和一个读数据位。然后,作为从设备的MPU-60X0 产生应答信号并开始发送寄存器数据。通信以主设备产生的拒绝应答信号(NACK)和结束标志(P)结束。拒绝应答信号(NACK)产生定义为SDA 数据在第9 个时钟周期一直为高。 小车陀螺仪:MPU6050 上位机读取数据程序 void loop() { accelgyro.getMotion6(ax, ay, az, gx, gy, gz); gyro_y=-(gy-10.58)*rgyro; Serial.print(a/g:\t); Serial.print(ax); Serial.print(\t); Serial.print(ay); Serial.print(\t); Serial.print(az); Serial.print(\t); Serial.print(gx); Serial.print(\t); Serial.print(gy); Serial.print(\t); Serial.println(gz);Serial.print(\t); Serial.print(gyro_y);Serial.print(\t); // blink LED to indicate activity blinkState = !blinkState; digitalWrite(LED_PIN, blinkState); } Arduion IIC接口: Sda:A4 Sck:A5 小车陀螺仪:MPU6050 通过IDE自带串口工具 小车陀螺仪:输出波形图 当得到六个原始量(ax ay az gx gy gz)以后,我们可以通过三种方式得到当前角度并通过上位机得到输出波形 方式一:低阶滤波(一阶滤波,二阶滤波) 方式二:高阶滤波(卡曼滤波) 方式三:DMP直接得到角度(启动MPU6050内部运算,读取DMP存储器中数据) 小车陀螺仪:输出波形图 一阶滤波/二阶滤波: void getangle() { accelgyro.getMotion6(ax, ay, az, gx, gy, gz);//读取原始6个数据 angleAx=atan2(ax,az)*180/PI;//计算与x轴夹角 gyroGy=-gy/131.00;//计算角速度 (1)Yijielvbo(angleAx,gyroGy);//一阶滤波 (2)Erjielvbo(angleAx,gyroGy);//二阶滤波 (3)Kalman_Filter(angleAx,gyroGy); //卡尔曼滤波 } (1)void Yijielvbo(float angle_m, float gyro_m) { angle1 = K1 * angle_m+ (1-K1) * (angle1 + gyro_m * dt); } //一阶滤波 (2)void Erjielvbo(float angle_m,float
您可能关注的文档
- 宋城演艺:2017年度创业板非公开发行A股股票募集资金运用的可行性.PDF
- 定点供应商基本服务承诺本次物业管理服务定点单位承诺:1.DOC
- 完成铁丝燃烧的实验探究 - Alexaclickscom.PPT
- 定量变量的分级方法对logistic模型影响的研究 - 中国卫生统计.PDF
- 宜兰东兴国民小学九十六学年下学期四年级自然与生活科技学习.DOC
- 完全救机速查字典.PDF
- 圆梁山隧道粉细砂充填型溶洞注浆技术探讨-探矿工程.PDF
- 宜春试点村.DOC
- 圆梁山隧道毛坝向斜深埋大型溶洞成因分析-隧道建设.PDF
- 圈层相互作用案例分析教学设计学习目标1认识喀斯特地貌类型.DOC
- 屏蔽10086端口短信类手机病毒专项监测情况-中国移动.DOC
- 基于主曲线的脱机手写数字结构特征分析及选取-计算机研究与发展.PDF
- 基于六面体覆盖的三维数值流形方法的理论探讨与应用-PolyUIRA.PDF
- 就读阿莲国中 - 辅导团NAS.PPT
- 基于元胞自动机的地震触发崩塌滑坡分布规律.PDF
- 展览衍生品-山东博物馆.PDF
- 尼泊尔- 安娜普娜山区Nepal - Annapurna Conservation Area.PPT
- 山がすみ金华彗星.PDF
- 山东南山铝业股份有限公司年产22万吨轨道交通新型合金材料生产线.DOC
- 展示用车辆及摩托车入场申请表 - Taiwan Trade Shows.PDF
最近下载
- 成人鼻肠管的留置与维护(2021团体标准解读)全文.pptx
- 【国家标准】国家职业技能标准 (2019年版) 起重装卸机械操作工.pdf VIP
- 小儿轮状病毒性肠炎护理ppt.pptx
- Pilon骨折精品课件.ppt VIP
- 中纺机集团对下属企业工资总额管理办法介绍.docx VIP
- 中国银行新疆区分行招聘笔试试题2024 .pdf VIP
- 2025中国银行新疆区分行社会招聘笔试备考题库及答案解析.docx VIP
- 2024电能计量装置典型设计低压用电客户.docx VIP
- 粗轧机AWC液压控制系统故障原因分析和改进.pdf VIP
- 2025年中国银行社会招聘备考试题及答案解析.docx VIP
文档评论(0)