Integrated Controller Run

Поделиться
HTML-код
  • Опубликовано: 6 сен 2024
  • Modified of the source code of the unicycle, for programming a STM32 microcontroller instead of an AVR. github.com/iam... The code is written 98.1% in the C programming language and 1.8% in Assembly. Supports serial via Bluetooth. Controls motors and transmits sensor data.
    This is how the unicycle behaves after sensor fusion. The sensor data includes the accelerometer orientation and the gyroscope angular velocity. Fusing data, the angular velocity is integrated over time and added to the orientation value for accuracy. The inertial measurements update about every 0.001 second and then the controller responds almost immediately by sending Pulse Width Modulation (PWM) signals to motor drivers. But, the hall-effect sensors in the motor encoder also measures angular velocity for the controller of the reaction wheel. The state of the system depends on the angle of the robot in the plane and its angular velocity, as well as the speed of the wheel.

Комментарии • 8

  • @IvanV980
    @IvanV980 Месяц назад +2

    You gotta adjust your PID values and add more mass on the top, good luck 🤙

  • @evina_lynx7096
    @evina_lynx7096 Месяц назад +1

    I would ssy that you should bring more mass to upper wheel that it has more rotary inertia

  • @KamalaChameleon
    @KamalaChameleon Месяц назад +1

    I need a smoke and my 2 minutes and 40 seconds back after this video

  • @raoufmagdy3661
    @raoufmagdy3661 Месяц назад +1

    You have a lot of mechanical issues that make it harder for the controller to adjust the system stability, you can try a single flywheel first then you go for the second one, then you can apply sensor fusion technique later.
    try using better coupling system for motors and try motors with a well-lubricated gearbox.

  • @vaisakhkm783
    @vaisakhkm783 Месяц назад

    Make the bottom wheel small and top wheel twice the size, and add few more nuts...

  • @TheMemesofDestruction
    @TheMemesofDestruction Месяц назад

    Pretty cool! ^.^

  • @gabiold
    @gabiold Месяц назад

    It seems to me that the control loop of the top wheel is a bit lazy and sluggish. What others suggested, to add more inertia to the wheel could help bringing it back from a seriously tilted position, but keeping it in balance, it needs to finely and quickly react to miniscule angle deviations. I’d say, the dead band is too wide allowing too much tilt. Possibly the D term in the PID, but we can’t really see for sure as it either does not spin at all and falls then after a certain angle it tries with max. accel. and speed, but it’s too late then.

    • @iamazadi
      @iamazadi  Месяц назад

      It makes sense because smoothing the tilt angle readings slows the reaction time and consequently widens the dead band.