Positive Altitude
Positive Altitude
  • 5
  • 65 292
Hobby Servomotors Could Be Much Better
I have designed a small servomotor controller board. This board makes it possible to integrate servomotors directly into 3D-printed parts. This servomotor design goes far beyond what a regular hobby servomotor can do. It has advanced communication and tuning capabilities. In this video, you can learn how I designed this servomotor. I am explaining the electronics in use and the control algorithm. I also show how I will use it for my 3D-printed rover project.
Переглядів: 44 504

Відео

Enhanced Model Rocket Flight Computer
Переглядів 3,1 тис.4 місяці тому
This small PCB is my new experimental design of a flight computer for a model rocket. It is built with an ESP32 microcontroller and has Bluetooth and Wi-Fi. The main goal was to create a new flight computer that would be more robust and convenient to use. I also started using Rust programming language with this project. You can learn about all hardware and software improvements with this video!...
How to Use Quaternions
Переглядів 8 тис.5 місяців тому
If you need to work with 3D rotations for graphics, game development, robotics, and other applications - this video is very useful for you. This mathematical object makes operations with an orientation of a 3-dimensional object very easy and efficient. You will learn all you need to know about quaternions and how to use them for 3D rotations. After watching this video you will know enough even ...
Can a Model Rocket Fly Without Fins?
Переглядів 9 тис.6 місяців тому
"GLOW" is a Trust Vector Control (TVC) model rocket weighing only 237g. It is built with a custom STM32-based flight computer that I designed and a few 3D-printed components. It also features an original parachute system design. You can find some shared materials related to this project in the github repo github.com/PositiveAltitude/glow

КОМЕНТАРІ

  • @hayfahvytsen
    @hayfahvytsen День тому

    'Have a nice day and please don't use Euler angles.' LOL. Awesome. 👍

  • @lontongtepungroti2777
    @lontongtepungroti2777 2 дні тому

    amazing

  • @JonathanTrevatt
    @JonathanTrevatt 7 днів тому

    Please share about how to build those bearings!

  • @elaprendiz7208
    @elaprendiz7208 7 днів тому

    Nice video. Do you can make some example application in robotic? Thanks 🙏🏽😊

    • @Positive_Altitude
      @Positive_Altitude 5 днів тому

      Well, you can check out the video about the TVC model rocket. The attitude estimation/correction system was built with quaternions and formulas I have covered. And it's probably can be considered "robotics" :) Same goes for any drone / UAV or for example describing orientation of the robotic arm end effector.

  • @NoNameNoShame22
    @NoNameNoShame22 8 днів тому

    Dafuq is React doing there 😂

  • @qorje
    @qorje 10 днів тому

    very nice, thanks for the video!

  • @phillipreay
    @phillipreay 11 днів тому

    I appreciate the need for this as a designer with engineering dreams. I have tried a few times to tackle the complexity myself. This is helpful

  • @ericwillis777
    @ericwillis777 12 днів тому

    Every hobbist has expensive servos with damaged servo motor driver PC boards - I have searched dilligently but cannot find any replacement PC boards for hobby servos. D o you know of any ?

  • @lohikarhu734
    @lohikarhu734 13 днів тому

    It would be nice if you could make the code available? I'd interested in seeing the PID coding.

  • @kamilhorvat8290
    @kamilhorvat8290 13 днів тому

    nice, 3d printed bearings. Can we get STL files ?

  • @lohikarhu734
    @lohikarhu734 13 днів тому

    You could also use RS-485, very noise resistant, but your intended line length is short, so something simpler probably works... Maybe even just added a drive transistor on each end, with lower resistance pull up.

  • @petrowi
    @petrowi 13 днів тому

    you need an arduino library and a shop - I want to buy some of these

  • @Cherokeeseeker
    @Cherokeeseeker 14 днів тому

    Very cool. Thanks for sharing 😊

  • @GNARGNARHEAD
    @GNARGNARHEAD 14 днів тому

    yeah would love to know more about those bearing races, great project thanks for sharing

  • @zoeyzhang9866
    @zoeyzhang9866 15 днів тому

    Cool design!

  • @johnkabiu4418
    @johnkabiu4418 17 днів тому

    hi

  • @torben_rr
    @torben_rr 18 днів тому

    Well explained!

  • @andrewebbPT
    @andrewebbPT 21 день тому

    openSource it and patreon!! thanks for the video! Keep up!

  • @quinneththegrayliegeofthea8067

    I would love to see these schematics for that control board. This servo module looks really useful and pretty cheap

  • @MarkHarrison-rp2tq
    @MarkHarrison-rp2tq 25 днів тому

    I would love to see how you designed these. Do you consider making the design available?

    • @Positive_Altitude
      @Positive_Altitude 25 днів тому

      If you are talking about the board, the next version will be available. The one in the video has issues. And I will make a video about it when it will be ready.

  • @tiagdvideo
    @tiagdvideo 25 днів тому

    I'm SO happy I found this channel. Absolutely outstanding work.

    • @Positive_Altitude
      @Positive_Altitude 25 днів тому

      Thank you! I will try to make more content. I have a lot of material for videos, but unfortunately making videos takes a lot of time (sometimes I feel like it is harder than the project itself lol)

  • @tiagdvideo
    @tiagdvideo 25 днів тому

    Excellent work. Subscribed and will be following this project. Might have a go at making something inspired by this later in the year.

    • @Positive_Altitude
      @Positive_Altitude 25 днів тому

      Go for it! Starting could be hard. I probably spent a year thinking about the rover, before I started actually doing something. I was scared of the amount of efforts required to finish it (and I still not very close :) ). But when I started I was making progress way faster than I though. And it is also fine to take breaks if you feel burned out. So I would say that if you have an idea and you are passionate about it, just go for it. The faster you start, the faster you will get to something you will be proud of. Good luck!

  • @paulmcewen7384
    @paulmcewen7384 Місяць тому

    that bearing design with the 3d printed races is very cool. The new servo control scheme is awesome as well obviously. Well done!

  • @Yangkun123
    @Yangkun123 Місяць тому

    Amazing work and explanation!

  • @RameshKumar-kb7hp
    @RameshKumar-kb7hp Місяць тому

    Crazy! I Imagine you can build much smaller and precise parts using a Resin 3D printer

  • @crashmaxx1987
    @crashmaxx1987 Місяць тому

    I'm very interested in the servo control board! I'm working on walking robots. Off the shelf servos are disappointing and get expensive quick when you use a dozen in one robot. Using N20 motors at each joint could be a big improvement.

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      Yeah! That's sounds cool! How big is the robot? I am working on the next version of the servo. The version in the video has some issues. I will share design files when it will be ready.

  • @nagibochnik23
    @nagibochnik23 Місяць тому

    Выглядит футуристично. Продолжайте дальше, чтоб был больше охват аудитории нужны такие же видео на русском.

  • @drancerd
    @drancerd Місяць тому

    I need more! All others videos are copypaste of the sames videos and "papers", no one teach how to use them. I need it for physics.

  • @bgrant1512
    @bgrant1512 Місяць тому

    If you are using a magnetic encoder to determine position how do you figure your start point? On a normal servo the potentiometer returns a set resistance value so it knows where its start position is. How are you achieving this?

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      This encoder returns absolute value :) Yes, the zero position is quite random, because you cannot really align the magnet's poles orientation when attaching it. But if you don't mess with the magnet, zero point stays the same, so you can just offset it in the code.

  • @antonioalvarado7594
    @antonioalvarado7594 Місяць тому

    How to do robotics? Genuinely curious

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      Well, I am not a professional, so I am trying to figure it out myself :)

  • @yeroca
    @yeroca Місяць тому

    You mentioned that I2C can carry two-way data. Did you use that ability in your servo motor board?

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      Yes! The host controller can read position and other stats from the servo

    • @yeroca
      @yeroca Місяць тому

      @@Positive_Altitude Nice! How do you set the I2C address on the servo side?

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      @@yeroca for now it is just hard-coded, but actually STM32 can write to it's own flash during execution. So I think that I will reserve a place on the flash, and make a special I2C call that sets a new slave address. So you take a servo, make that call, reboot the servo and now it has a new address. But it's a plan for now. I never touched that feature before, but if I read the reference manual correctly, that should work.

    • @yeroca
      @yeroca Місяць тому

      @@Positive_Altitude Sounds like a workable plan.

  • @vladzhukov2344
    @vladzhukov2344 Місяць тому

    А зачем говорить на английском языке, если тоже самое можешь сделать на родном языке?

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      1) англоговорящая аудитория намного больше 2) так как контент инженерный, даже среди русскоговорящей аудитории подавляющее большинство понимает английский 3) для тех кто не понимает ни один из этих языков и пользуется автоматическими субтитрами (таких около 30%) перевод с английского работает значительно лучше

  • @ico-theredstonesurgeon4380
    @ico-theredstonesurgeon4380 Місяць тому

    It would be awesome It you could go deeper in how the bearing works and also provide some experimental data to see if they are worth it

  • @nigelwilliams7920
    @nigelwilliams7920 Місяць тому

    Lovely work! I think Elon is using Ethernet to run Cybertruck, so worth a crack here too, especially with the large scale of the vehicles you are producing. That way a single ethernet ring would provide all the communications to all devices / motors, and all you need then is to provide power to the motors. 48 Volts to reduce power cable diameter too, of course and get more torque? :)

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      Yeah, I will use CAN bust in the next version. I think Ethernet is a an overkill here. And CAN actually an industry standard to connect things in cars. This rover also has way more torque than it really needs, but it will be slow :) But I am fine with that. I already made a board that does a battery management and has MPPT solar panel charger, but it is designed for 10V.

  • @erawanpencil
    @erawanpencil Місяць тому

    @11:15 what does 'tmp' stand for? I don't understand the errors that arise without normalization (the rocket getting bigger and bigger).... what causes that to happen and why does that normalization equation fix it? Is this similar to 'renormalization' in physics?

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      'tmp' stands for 'temporary'. This formula is an approximation and it makes the norm to slightly increase with each step. I mentioned that rotation quaternions should be normalized, but actually, you can use non-normalized quaternions with the same math to transform coordinates. But in this case, you will not only rotate the space, but also you will scale it by the factor equal to the quaternion's norm. That's why if we let the quaternion's norm increase, the object gets bigger. To explain why exactly this happens I will give you a very similar example: Imagine that we are trying to draw a circle, but we can draw only short straight lines. And we use an algorithm: 1) Draw a line from the current point to the center (a radius) 2) Draw a short line perpendicular to this radius 3) The end of this short line is the next point of the circle 4) Go to 1) If we do this with very short lines this kinda works, but actually, every new point will be slightly further away from the center, and the radius will increase with each step. And if we keep doing it we will draw a spiral instead of a circle. If our steps are small it will spiral out slowly. With bigger steps, the problem gets worse. But we can fix that. After each step, we can make a little step toward the center that will make the current radius equal to the desired radius. That is exactly what normalization does. This example is VERY close to what happens with quaternions and this formula. In the case of quaternions, it's just a trajectory (not really a circle) in 4-dimensional space which I personally struggle to imagine. No, this is unrelated to renormalization. This is just us fixing an error caused by using approximation.

    • @erawanpencil
      @erawanpencil Місяць тому

      @@Positive_Altitude Thank you, I think I'm getting it. The normalization sort of re-orients or self-orients the origin point of the gyroscope, the center of all the angular velocities right? That's why when you turned normalization off, it sort of dilated in-and-out/breathed like a growing spiral?

    • @erawanpencil
      @erawanpencil Місяць тому

      @@Positive_Altitude Do you need to renormalize all quaternions or only gyroscopic ones with angular velocity? Does angular velocity add more requirements to make it work?

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      @@erawanpencil I would not say that it "re-orients" it just scales it. Norm is literally a length and all proper rotation quaternions should have the length = 1. We just fix the error caused by this formula that makes quaternion slightly longer than it is supposed to be. Usually, when we just combine rotations there is no need to normalize quaternions. Because if we have two normalized quaternions, their product will be a normalized quaternion too. But also there is no harm in normalization. If you normalize a quaternion that is already normalized it will not change it. The angular velocity formula is just kinda weird. Mathematically it is obtained with the assumption that time step dt is "infinitely small". But there is no such thing as an infinitely small number when we do 3D graphics or iterative simulations. So in real life, this formula produces a small error both in direction (orientation) and length (norm). To deal with that we need 1) use as small dt as we can, to minimize the error in orientation 2) normalize quaternion to always keep norm = 1 as it is supposed to be

  • @baxbanni2226
    @baxbanni2226 Місяць тому

    You are really brilliant. 👍👍👍

  • @user-wq7sv4bi5z
    @user-wq7sv4bi5z Місяць тому

    share more info regarding bearings please!

  • @McGutschy2
    @McGutschy2 Місяць тому

    Thanks for your inspiration!

  • @PCBWay
    @PCBWay Місяць тому

    Nice content!

  • @thecrazylooser7
    @thecrazylooser7 Місяць тому

    Wondering if is worth to integrate everything into the wheel and add a slip ring for power and LED and receiver for signal transmission for continuous rotation like a LiDAR

  • @5eurosenelsuelo
    @5eurosenelsuelo Місяць тому

    Looking forward to know more about those bearings and gears at 13:16.

  • @iangraham6730
    @iangraham6730 Місяць тому

    Brilliant 👏 👏

  • @hangkaj
    @hangkaj Місяць тому

    I am impressed by the presentation and the mechanical/hardware/software design.. Where is the github.. and how do I order the PCB ?

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      Thank you! Not shared on GH yet, because there are issues and no documentation at all. Maybe I will do that during the next few weeks. But anyway I am working on a new, improved version, that will be shared from the very beginning. I hope I will get there in 1-2 months.

  • @simonschneider5913
    @simonschneider5913 Місяць тому

    instant sub! amazing work!

  • @LimabeanStudios
    @LimabeanStudios Місяць тому

    I HATE the current state of consumer motors. Im making a project that requires very small servos right now and the choises are so sad. I just ordered a couple of those mini linear style servos because i have no experience making boards myself. This seems like exactly what i need and would certainly buy some

  • @paradoxgaming2
    @paradoxgaming2 Місяць тому

    Make a rover 😮😮😮

  • @Shaggy0f138
    @Shaggy0f138 Місяць тому

    Nice project and design. Thanks for the explanation and breakdown.

  • @mfgkwmfgkw
    @mfgkwmfgkw Місяць тому

    Great idea, great video! Thanks Just a note on PWM to control the standard servos: it is intended to have a period length of 20ms with T_on of 1.0ms for lowest position up to 2.0ms for the other end position. As long as you stay with this period length your description is correct and you can call it PWM. But in fact the period length is not important, only T_on is considered by a servo. So with another period length one can see not T_on/period is the signal, only T_on is used. The term PWM is a bit misleading here.

    • @Positive_Altitude
      @Positive_Altitude Місяць тому

      Yeah, that's right. I did not want to overcomplicate things and said that is just a PWM, which is almost true. But I got your point, thanks!

  • @Nifty-Stuff
    @Nifty-Stuff Місяць тому

    YES, would love to see more about your ball bearing design, and would be great to have you post the files for download!

  • @jilliebean613
    @jilliebean613 Місяць тому

    Great project! I am really interested in the 3d printed bearings you made. It would be awesome if you could share some tips on how they were designed.