• CoCube传感器MPU6050笔记


    参考:

    输出x,y,z角度信息:

    1. #include
    2. #include
    3. MPU6050 mpu6050(Wire);
    4. void setup() {
    5. Serial.begin(9600);
    6. Wire.begin();
    7. mpu6050.begin();
    8. mpu6050.calcGyroOffsets(true);
    9. }
    10. void loop() {
    11. mpu6050.update();
    12. Serial.print("angleX : ");
    13. Serial.print(mpu6050.getAngleX());
    14. Serial.print("\tangleY : ");
    15. Serial.print(mpu6050.getAngleY());
    16. Serial.print("\tangleZ : ");
    17. Serial.println(mpu6050.getAngleZ());
    18. }

    效果如下:


    发送到ROS绘制曲线或做其他用途的,晚些时候补充。

    CoCube显示测试笔记

    结合这一篇,使用CoCube自带显示进行姿态反馈?

    再补充一个全部信息:

    1. #include
    2. #include
    3. MPU6050 mpu6050(Wire);
    4. long timer = 0;
    5. void setup() {
    6. Serial.begin(9600);
    7. Wire.begin();
    8. mpu6050.begin();
    9. mpu6050.calcGyroOffsets(true);
    10. }
    11. void loop() {
    12. mpu6050.update();
    13. if(millis() - timer > 1000){
    14. Serial.println("=======================================================");
    15. Serial.print("temp : ");Serial.println(mpu6050.getTemp());
    16. Serial.print("accX : ");Serial.print(mpu6050.getAccX());
    17. Serial.print("\taccY : ");Serial.print(mpu6050.getAccY());
    18. Serial.print("\taccZ : ");Serial.println(mpu6050.getAccZ());
    19. Serial.print("gyroX : ");Serial.print(mpu6050.getGyroX());
    20. Serial.print("\tgyroY : ");Serial.print(mpu6050.getGyroY());
    21. Serial.print("\tgyroZ : ");Serial.println(mpu6050.getGyroZ());
    22. Serial.print("accAngleX : ");Serial.print(mpu6050.getAccAngleX());
    23. Serial.print("\taccAngleY : ");Serial.println(mpu6050.getAccAngleY());
    24. Serial.print("gyroAngleX : ");Serial.print(mpu6050.getGyroAngleX());
    25. Serial.print("\tgyroAngleY : ");Serial.print(mpu6050.getGyroAngleY());
    26. Serial.print("\tgyroAngleZ : ");Serial.println(mpu6050.getGyroAngleZ());
    27. Serial.print("angleX : ");Serial.print(mpu6050.getAngleX());
    28. Serial.print("\tangleY : ");Serial.print(mpu6050.getAngleY());
    29. Serial.print("\tangleZ : ");Serial.println(mpu6050.getAngleZ());
    30. Serial.println("=======================================================\n");
    31. timer = millis();
    32. }
    33. }

    程序简洁,应该直接能看懂,不需要赘述。 


    结合角度信息给显示赋值。


    #include
    #include
    #include

    // Which pin on the Arduino is connected to the NeoPixels?
    #define PIN       16 // On Trinket or Gemma, suggest changing this to 1

    // How many NeoPixels are attached to the Arduino?
    #define NUMPIXELS 64 // Popular NeoPixel ring 

    MPU6050 mpu6050(Wire);
    Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

    unsigned char DELAYVAL=1; // Time (in milliseconds) to pause between pixels

    void setup() {
      Serial.begin(9600);
      Wire.begin();
      mpu6050.begin();
      mpu6050.calcGyroOffsets(true);
      pixels.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)
    }

    void loop() {
      mpu6050.update();
    //  Serial.print("angleX : ");
    //  Serial.print(mpu6050.getAngleX());
    //  Serial.print("\tangleY : ");
    //  Serial.print(mpu6050.getAngleY());
    //  Serial.print("\tangleZ : ");
    //  Serial.println(mpu6050.getAngleZ());
      
      for(int i=0; i     pixels.setPixelColor(i, pixels.Color(16*(abs(mpu6050.getAngleX())/180.0), 16*(abs(mpu6050.getAngleY())/180.0), 16*(abs(mpu6050.getAngleZ())/180.0)));
        pixels.show();   // Send the updated pixel colors to the hardware.
    //    delay(DELAYVAL); // Pause before next pass through loop
      }
    }


    补充:

    MPU-6000(6050)的角速度全格感测范围为±250、±500、±1000与±2000°/sec (dps),可准确追踪快速与慢速动作,并且,用户可程式控制的加速器全格感测范围为±2g、±4g±8g与±16g。产品传输可透过最高至400kHz的IIC或最高达20MHz的SPI(MPU-6050没有SPI)。MPU-6000可在不同电压下工作,VDD供电电压介为2.5V±5%、3.0V±5%或3.3V±5%,逻辑接口VDDIO供电为1.8V± 5%(MPU6000仅用VDD)。MPU-6000的包装尺寸4x4x0.9mm(QFN),在业界是革命性的尺寸。其他的特征包含内建的温度感测器、包含在运作环境中仅有±1%变动的振荡器。

    NeoPixels也被称为WS2812 LED彩带,是连接在一起的全彩色led灯串。你可以设置他它们的红色,绿色和蓝色值, 在0到255之间。neopixel模块可通过精确的时间控制,生成WS2812控制信号。


     

  • 相关阅读:
    vue3组件篇 Breadcrum
    人类的谋算与量子计算
    京东API接口的应用场景:商品信息查询,商品详情获取
    【PADS封装】2.4G PCB天线封装(量产用)
    Python基础(第五期): python数据容器(序列) && 列表 && 集合 && 元素 && 字符串 && 字典 && 序列遍历操作
    java并发编程 CountDownLatch详解
    学习笔记——七周成为数据分析师《第二周:业务》:业务分析指标
    华为安全HCIP-Security H12-721、H12-722、H12-723题库,含三套vce软件
    医疗产品方案|智能蓝牙血压计方案
    GaussDB(分布式)实例故障处理
  • 原文地址:https://blog.csdn.net/ZhangRelay/article/details/126238218