Animating Animatronics with Blender - Servo Animation Add-on

Поділитися
Вставка
  • Опубліковано 30 тра 2024
  • Learn how to control #servos based on a #Blender animation with a dedicated Add-on I created. This technique helped me to efficiently animate my DIY #animatronics and is based on a process I picked up while watching one of Disney’s behind the scenes video.
    00:00 Introduction
    00:25 First attempt with BVH files
    01:35 Blender Add-on - Installation
    02:10 Blender Add-on - Servo Settings
    03:53 Blender Add-on - Animation Export
    04:58 Arduino example
    06:10 Final thoughts
    Add-on repository: github.com/timhendriks93/blen...
    Add-on Python file (v1.0.0): github.com/timhendriks93/blen...
    Arduino Project (v1.0.0): github.com/timhendriks93/blen...
    Arduino Nano on Amazon (US): amzn.to/3qELJdG
    Arduino Nano on Amazon (DE): amzn.to/3qDblHV
    MG90S Micro Servos on Amazon (US): amzn.to/39PviFr
    MG90S Micro Servo on Amazon (DE): amzn.to/36U0Rfj
  • Навчання та стиль

КОМЕНТАРІ • 245

  • @louabi7581
    @louabi7581 2 роки тому +10

    For those who have a problem where the variable remains the same int the .h file (example : 90.0, 90.0, 90.0, 90.0, 90.0, 90.0, 90.0 ...), it's probably because in the rotation settings, the type of rotation is selected to quaternion, I had this problem but now it's settled !

    • @zachary5916
      @zachary5916 2 роки тому +2

      THANK YOU SO MUCH I have been tearing my hair out!! I just selected each option and exported it until I saw different numbers. Interestingly although I animated on the Z axis, the values were showing up on the Y axis when I played the animation in Blender so I had to select that option.

    • @trash8830
      @trash8830 Рік тому

      what should I have selected?

    • @louabi7581
      @louabi7581 Рік тому +3

      @@trash8830 xyz Euler

  • @kissingfrogs
    @kissingfrogs 2 роки тому

    That was an awesome well paced perfectly detailed walk thru. And thank you for the add-on.

  • @elope024
    @elope024 3 роки тому +1

    Very creative use of the application and great video. Hope to see more in the future

  • @EdwardBaumeister
    @EdwardBaumeister 3 роки тому

    YES! Thank you! Thank you for uploading this! I have been looking for a method of doing this for ages!

  • @chrismiller4990
    @chrismiller4990 2 роки тому

    This is wicked awesome Tim! I will certainly be downloading the add in soon. Cheers

  • @ramdenze
    @ramdenze 2 роки тому +5

    Nice! This takes the possibilities of animating to a whole new level

  • @modelrogers.19
    @modelrogers.19 Рік тому +2

    I have been trying to create this myself. Can't wait to try this out! Thank you for your work, Tim!

  • @VesuviusAntaria
    @VesuviusAntaria 3 роки тому +23

    This is what I've wanted for a long time. Thank you very much for making an add-on. keep up the good work!

  • @Tommy_Catz
    @Tommy_Catz 2 роки тому +1

    Wowo! Amazing job, this looks so cool. Can't wait to get started :D

  • @steveparkes
    @steveparkes 3 роки тому

    This is brilliant :) Thanks for releasing your blender add-on

  • @fvgoya
    @fvgoya 2 роки тому

    This is amazing!!!! Man, don’t stop to upload videos. This content is gold!!!!

  • @outtellect
    @outtellect 3 роки тому +3

    this add-on alone makes me want to learn blender! amazing stuff!

  • @louabi7581
    @louabi7581 3 роки тому +1

    THANKS ! The video looks very professional!
    Well done !

  • @sakkis
    @sakkis 2 роки тому +2

    Wow, now this is inspiring! I have sculpted many things, Disney characters and others, and I have always wanted to somehow give them motion. Your video got me so excited! Thank you! Subscribed!

  • @ArKyLLion
    @ArKyLLion Рік тому

    Thanks for Sharing With us. Great Project.

  • @seekertosecrets
    @seekertosecrets Рік тому

    This is pretty cool. I was on the search for something else animatronic related and while this didn't give me the answer I was looking for, it's still a great demonstration of that plug in.

  • @RyanShyffer
    @RyanShyffer 3 роки тому

    This is amazing, great work!

  • @rhyswilliams8702
    @rhyswilliams8702 3 роки тому

    This is brilliant! Exactly what I was looking for!

  • @scaresandsparks
    @scaresandsparks Рік тому

    Very cool indeed. Interested in doing this myself now! Darn it another project!

  • @StevenCookFX
    @StevenCookFX 3 роки тому

    I have thought of doing this with Maya many years ago but never had the time. Thanks for all the effort you put into this. My hats off to you for accomplishing what I wanted to do. I guess now I need to go work on other things. ;)

  • @dr_mousetrap
    @dr_mousetrap 11 місяців тому

    This is incredible! Thank you so much!

  • @moisesg.8915
    @moisesg.8915 7 місяців тому +1

    Thanks so much! I realy love this Add-on. Finaly we have something for work with two diciplines that i love (Animation and Mecatronic). Long life for you and your work! Gretting from México.

  • @PlanetAlexanderProjects
    @PlanetAlexanderProjects Рік тому +1

    What you're doing here is absolutely incredible! I'm a long-time Blender user and one of my current projects involves me making the Tiki Drummer from the Tiki Room. Using a model online I've modified it and designed the mechanics in Blender and started to program it in Arduino. However, I couldn't figure out how to do acceleration so I'm sure this plugin will really help me there, and I look forward to what I can do with it in the future!

  • @3Davmawey
    @3Davmawey 3 роки тому +5

    Whoa. Germany really is a land of geniuses. From a hardcore animatronic fan, KUDOS to you and best wishes for your career, which promises to be very bright!

  • @bopevfx
    @bopevfx 3 роки тому +1

    Amazing work

  • @XORobot
    @XORobot 3 роки тому

    Amazing, exactly what I've been looking for!

  • @swannschilling474
    @swannschilling474 4 місяці тому

    This is beautiful!! ❤

  • @azizcanbilgic
    @azizcanbilgic Рік тому +1

    dud, I was searching a way to animate servos, I saw one guy who mad it on tiktok ask him multiple times but he never answered, ANS I finally found you ! THANK YOU !

  • @TheMalfestor
    @TheMalfestor 2 роки тому

    Thank you for sharing this!

  • @iurimonteiro4767
    @iurimonteiro4767 3 роки тому

    Thanks man! will check this out!

  • @jacksvlogs9924
    @jacksvlogs9924 3 роки тому

    You are incredible!! Thank you!

  • @Revvek
    @Revvek 6 місяців тому

    I need this.
    Wow thanks!

  • @sidtaylor1161
    @sidtaylor1161 2 роки тому

    Simply amazing

  • @e.andrade5425
    @e.andrade5425 3 роки тому

    Wowww Guy. Thank you for this add-on and for sharing with all us.👍😊🇧🇷

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

    this is amazing!!

  • @ljarreth
    @ljarreth 3 роки тому +4

    Well done Tim ! What a great job !! And THANKS for sharing !! I hope for other details and tutorials on animatronics (with Blender) .. (maybe a little on the skeleton part? and other mechatronic parts ;) ) Thank you for these shares .... I subscribe !!! Salutations de France ;)

  • @lostburn
    @lostburn 3 роки тому

    we need more tuts man this is great!

  • @pablolorenzin7780
    @pablolorenzin7780 2 роки тому

    Amazing job!!, Thanks you!

  • @ltdeditions
    @ltdeditions 3 роки тому

    Wow, very cool! Now I'll have to teach myself to use Blender!

  • @privado8990
    @privado8990 11 місяців тому

    This is increíble. Very good job

  • @armbar6761
    @armbar6761 2 роки тому

    I'm amazed with this creative idea,i hope you could also balance robot walk using blender 3d someday in the future.

  • @mariahsart
    @mariahsart 2 роки тому

    Incredible... I wish I had the resources and knowledge to do this.

  • @atroubletribe6397
    @atroubletribe6397 3 роки тому +2

    Great job, I've been working on a Unity system that will allow you to see your servo and led the movement in real-time. this is going to be very helpful.

    • @corellioncrusaderproductio4679
      @corellioncrusaderproductio4679 2 роки тому +1

      That would be awesome! I'm just getting into electronics with some mediocre projects here and there, but I'd definitely like to keep tabs on that for later on if it is still in development. Keep us updated!

  • @SK-Lab
    @SK-Lab 2 роки тому

    Thank you very much sir ❤️❤️❤️

  • @ckjedi
    @ckjedi 2 роки тому +1

    This is, in a word, brilliant. I'm looking forward to future vids on the subject. I'd specifically be interested in your process for using Blender to create the physical rig, ensuring that the servos can be mounted into the design at the necessary angles to do their job. I began working on an animatronic dragon head, to be controlled live with an RC remote, but quickly got discouraged when trying to crobar the servos and their horns into everything just to get the mouth and eyes to move. Having no engineering background myself, I have to rely on videos like yours to learn the mechanics, so it's very much appreciated.

    • @timhendriks93
      @timhendriks93  2 роки тому +1

      Thank you so much! I'll definitely try to cover this in the future. In general I start with a base model (e.g. a generic human) and try to place the servos freely inside of that model. The servos themselves are also 3D models which need to be as accurate as possible when it comes to their size and also the position of the mounting holes for the screws. At this point I don't have to care about the rig just yet. Once every servo is in place for the desired movements, I build the rig around the servos and make sure to not block other moving parts. This can of course be tested in 3D once every part is properly connected to a Blender armature and can be moved in 3D. Hope that helps for now and wish you good luck with your project! 😊👍

    • @ckjedi
      @ckjedi 2 роки тому

      @@timhendriks93 Quite informative thanks. I don't suppose you'd be willing to share the .blend files for any and all servos you have in your library :) Those'd be good candidates for my personal content library

    • @timhendriks93
      @timhendriks93  2 роки тому +1

      ​@@ckjedi Actually I am :D www.tim-hendriks.com/files/servo-models.zip
      The blend files also contain some drafts for simple mounting mechanisms, but as I said before, I normally start with just placing the servo itself. But of course you can also copy the servo and the mount to your project if that makes more sense ;)

    • @ckjedi
      @ckjedi 2 роки тому

      @@timhendriks93 I say again: brilliant. I know what I'm doing this weekend!

  • @atomicrust574
    @atomicrust574 3 роки тому +5

    This is amazing! I have been looking for an easier way to control my projects, and this seems a really great solution.
    However, I will be a grump and gripe one thing: you could subvert the memory issue if you were to use Blender itself to store the animation, and use Serial to update the Arduino with it's target positions. This would also allow you to "trim" the servos, and edit the animation real-time. The drawback is you would have to always keep the Arduino connected to the computer during the show.

    • @john_t_england
      @john_t_england 2 роки тому +2

      My thoughts exactly, or maybe similarly. Rather than baking the performance into the program itself, it would seem more flexible to read the data from a stream while developing the animation and then from a stored file for the final export. This is something easily stored on an SD card which comes standard on many Teensy boards. Seems like that's maybe what's being done for the O.J. Punctuel animatronic?
      Anyway, this is very cool, Tim, and I I'm going to dive into the code you wrote for the plugin. I'd actually like to see a breakdown video of that if you ever got around to it.

  • @activemotionpictures
    @activemotionpictures 3 роки тому

    ohhh!! Fantastic!!! Instant sub!

  • @gladius_arbor
    @gladius_arbor 3 роки тому

    The hero we need

  • @netpenpal2002
    @netpenpal2002 2 роки тому

    Congratulations, this is awesome, finding I have looking out for a longtime, any possibility of sharing the 3d print files, I would sure love to replicate this project, Thanks, subscribed 👍👍

    • @timhendriks93
      @timhendriks93  2 роки тому

      Thanks, I've actually shared the .blend file for my Phantom Animatronic here and there, but keep in mind that it's basically a prototype and isn't optimized for easy recreation. I still hope this helps: www.tim-hendriks.com/files/PhantomAnimatronic.blend

  • @beresfordquimby
    @beresfordquimby 3 роки тому

    This looks amazing, and something I was looking for! Is there a particular version of Blender needed to run the add-on?

    • @timhendriks93
      @timhendriks93  3 роки тому +2

      Thanks, the minimum Blender version to run the add-on is 2.80.

  • @theolejeune6698
    @theolejeune6698 3 роки тому

    Thanks for this tuto 😍😍

  • @williamjustus2654
    @williamjustus2654 3 роки тому +1

    Great work. You should consider Patreon or a complete animatronics course. I would be interested in design and build from start to finish.

  • @lightman500
    @lightman500 2 роки тому

    Excellent work! Is there any chance you could produce a video showing how you perform (puppeteer) the animation in blender...in real time? That is control the bones, assess, and tweak the performance. I'm familiar with Moho Pro 2D animation along with keyframes and it's a very tedious process. I would really like to see how it's done in blender step-by-step for a 3D model.
    Update: 2-20-22: I successfully created a single bone in Blender and replicated your example with my own sequence! I used your add on and followed your instructions to the "T" with Blender 3.01. All worked great with an Arduino Nano (clone)! Thanks a million!
    Update 2/21/22: I'm having trouble exporting armatures with more than one bone as a parent-child relationship. I can't seem to get the child bone to export. It only exports the parent bone. I'm using Blender 3.01.
    Any ideas of what I might be doing wrong?
    ( I created a separate post explaining this problem)

  • @nickyvanmil7784
    @nickyvanmil7784 Рік тому

    Hi Tim
    Nice video!
    I tried using your add-on with this 1 bone as in this video but it only outputs 90 degrees. Do you know if there could be some setting in blender that is off?

    • @timhendriks93
      @timhendriks93  Рік тому

      Hi Nicky, that sounds a lot like you need to change the rotation axis in the bone / servo properties (it can either be X, Y or Z). Hope this helps 😊

  • @alexthepunk
    @alexthepunk 2 роки тому

    I just came across this, and I am thoroughly impressed! You said in your video "I already have a blender model that I am going to 3D Print." Do you have your models available for download anywhere?

    • @timhendriks93
      @timhendriks93  2 роки тому

      Thanks a lot, I did actually share my Phantom Animatronic model earlier: www.tim-hendriks.com/files/PhantomAnimatronic.blend
      It is however important to note, that I did not refine the model in any way for an easy recreation. I'm currently also working on an upgraded version with a new neck mechanism and new arms 😉

    • @alexthepunk
      @alexthepunk 2 роки тому

      @@timhendriks93 that's great!! I'm following. I can't wait to see what you do next!!

  • @legendtreemedia2968
    @legendtreemedia2968 2 роки тому

    This is such an amazing project! Quick question - have you ever interfaced/connected your system to a Pololu Mini Maestro 24-Channel USB Servo Controller? If you have would you recommend this controller?

    • @timhendriks93
      @timhendriks93  2 роки тому

      Thank you so much, unfortunately I have no experience with Pololu controllers. But since my Add-on simply exports position values for each animation frame, it's possible to convert those and use them in a Pololu script (based on what I can see here: www.pololu.com/docs/0J40/6.c). For my projects I think I prefer an ESP32 micro controller in combination with a PCA9685 PWM board. The controller offers 4MB flash storage compared to 8KB internal script memory of the Pololu controllers, which allows me to export longer animations with higher frame rates. A PCA9685 can control 16 servos, but you can combine multiple of them to increase the amount of servos.

    • @legendtreemedia2968
      @legendtreemedia2968 2 роки тому

      @@timhendriks93 This was helpful thank you!

  • @CoasterKneus
    @CoasterKneus 2 роки тому

    thanks al lot for the video i was looking for for 2 years now haha.
    i am building "animatronics" for 3 years now (only got a litle bird at home and a big talking tree at my work(a small amusementpark)) but those are pretty strait forward. the bird is moving 1 servo at a time using a pololu meastro and the big tree is moving and talking using pnuematic cilinders driven by an eaton PLC.
    just like you i saw how disney is programming their animatronics and was mind blown haha.
    i do have 1 big issue wich is a huge speedbump for me and that is: writing code. i understant the basics of it but thats it. i just cant get it right and working the way i want.
    so my question is: when using blender and your add-on, is it generating code by itself or do you have to write all the code by yourself?
    i started a new project at my work and this add-on with blender is the perfect way to program and animate the movements of the (life-size)animaronic i am building.
    i hope you can help me

    • @timhendriks93
      @timhendriks93  2 роки тому

      Glad to hear that my add-on is helpful to you! It currently 'only' exports the servo positions for each frame, so you still need some code to read the values and send them to the servos at the right time. However, I also added some Arduino examples with working code: github.com/timhendriks93/blender-servo-animation/tree/develop/examples
      For advanced applications I would recommend to go with a dedicated servo controller like the PCA9685. There is also an example project for this setup, although you will have to adjust and add some lines based on the amount of servos your animation supports (this is highlighted by some comments in the code).
      I currently have no examples for the Pololu Maestro, as I've never used one before. I'm planning to make a video on how to use the exported values in more detail once I've used the add-on a bit more myself and made some improvements.

  • @Vannerdrag
    @Vannerdrag 3 роки тому

    Amazing, super cool!! Do you have any idea if this can be done in reveresed somehow? I mean like mooving a puppet and converting that movement into a corresponding animation in blender instead :P

    • @timhendriks93
      @timhendriks93  3 роки тому

      Thanks, I think you would need an Arduino which reads values from potentiometers. Those would act as joints of your puppet and should turn according to your performance. The values could then be transferred and read by Blender via a serial connection. Then it's just a matter of changing the rotation of individual bones. I don't know if there already are add-ons that might help you with this, but I think it will definitely require quite some time and code to get this working.

    • @ZAAANEE
      @ZAAANEE 10 місяців тому

      @@timhendriks93 can you make a tutorialon how to see it up manually and how to properly rig a model like this? i cant find any other info quite like this online and this would help A LOT.
      Reply

    • @ZAAANEE
      @ZAAANEE 10 місяців тому

      @@timhendriks93 can you make a video on how to set up multiple arduenos all being controlled seperetly?

    • @ZAAANEE
      @ZAAANEE 10 місяців тому

      plz make a video on how to rig it like you did

  • @3dpprofessor
    @3dpprofessor Місяць тому +1

    This is brilliant.
    However, I'm wanting to do something similar, but in real time. I'd like to puppet my animatronic directly from Blender. I've written an Arduino script that takes serial communications and parses that into movement. But I can't figure out how to send it from Blender in real time. That may be outside the scope of this project, but I'm wondering if you have any ideas?

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

      Thanks, this is actually very much in scope of this project and something I already developed as part of a newer version of this add-on 😊 This is a reminder again that I should make a new video showing all new features, but for now I would recommend checking out this section of the Add-On Readme on GitHub regarding the live mode feature: github.com/timhendriks93/blender-servo-animation/tree/v1.4.0?tab=readme-ov-file#live-mode
      I also developed a matching Arduino library which provides an easy way to make use of the serial data which is sent via the Blender add-on: github.com/timhendriks93/blender-servo-animation-arduino/blob/v1.2.0/examples/SerialLiveMode/SerialLiveMode.ino
      Keep in mind though that I'm also about to release a new version of these 2 projects which will introduce breaking changes. On the other hand this will simplify a lot of things and for example add support for reading animation data from SD cards.

  • @cameronlandorg
    @cameronlandorg 3 роки тому

    Do you have any recommendations when it comes to audio synchronization or storing sound, do you just play externally and adjust the milis for audio to kick in to sync?
    Also, does the code have a position reset section in case of power failures or shut offs?

    • @timhendriks93
      @timhendriks93  3 роки тому +1

      To handle audio synchronization in a more sophisticated way you would need to have an audio player providing the current playback time. I used a Raspberry Pi for my first animatronic and was therefore able to use the pygame library audio mixer to play the audio and et the current position: www.pygame.org/docs/ref/music.html#pygame.mixer.music.get_pos
      Since I used an Arduino for my second animatronic, I needed a separate audio player module and decided to go with the commonly used DFPlayer Mini. This module however does not provide any information about the current playback time and can only inform you whether the playback is currently running or not. I therefore had to rely on the audio and animation to be synchronous after triggering both at the same time. This is something that might be improved with better hardware, but so far I haven't had any noticeable sync problems with this method.
      A loss of power wouldn't be ideal since the hobby servos I use aren't capable of providing data about there current position. You simply tell them where to go and also have to rely on them actually getting there as fast as they can. You could try to write the current positions to the eprom of the micro controller, but the amount of write operations is limited and would most likely be reached in a very short time. I used a button to start and stop the 'show' in normal circumstances while stopping gracefully moves the servos to their neutral positions. Of course you could also use encoders to determine the current position of each servo, but in my case there simply wasn't enough space.
      Hope this helps to answer your questions :)

    • @cameronlandorg
      @cameronlandorg 3 роки тому +1

      @@timhendriks93 I have seen another post referencing pygame as well. I will look into it. It is interesting how far, yet how archaic off the shelf solutions have stagnated. This is one of the best projects I have seen. I have followed a few other blender > serial data > arduino projects but this one combines Disney and arduino, so this has been quite the project. Understood regarding the playback on a specific command. I am always concerned about moving out of sync, but as long as it isn't continuous it probably will not do that.
      I wonder if position reset limiter wires on the servos would be easily implemented in your case.
      I have also been to disneyland paris twice and believe phantom manor is one of the best attractions Disney has done. I have not had the chance to visit since they had done the refurb, however, it appears to have been tamed down. The scene that this one is depicting seems to have a less dramatic effect now.
      Keep up the great work and I would love an audio sync video!

  • @normietwiceremoved
    @normietwiceremoved 3 роки тому +1

    This is mega weird. I've been looking for something like this for ages and you upload this THIS MONTH. super weird.

  • @NewEnglandModz
    @NewEnglandModz 3 роки тому

    I don't have a rotation axis dropdown. I have the text that says "Rotation axis", but then it has the multiplier slider instead of the dropdown. The multiplier text below it then has the option below it next to it "Reverse direction" toggle.

    • @timhendriks93
      @timhendriks93  3 роки тому

      Thanks for your feedback, could you check the Blender version you're using?

  • @jackpeaches
    @jackpeaches Рік тому

    Hey Tim, your work is amazing! I grew up near Disney World Orlando and loved the animatronics... I have a question on code in Arduino. Most of your sample code is for one servo, I'm having difficulty writing code for two servos or more servos. It has been a while since I've programmed in C and using objects. Any help would be appreciated and I can't wait to see what you're working on next!

    • @timhendriks93
      @timhendriks93  Рік тому

      Hi Jack, thank you so much 😊 I would definitely recommend to check out my new Arduino library which also includes an example of a neck mechanism (based on at least 2 servos): github.com/timhendriks93/blender-servo-animation-arduino/blob/main/examples/AdafruitPCA9685/AdafruitPCA9685.ino
      The comments should hopefully indicate where you would have to add more lines / objects in order to use even more servos. Hope this helps 👍

    • @jackpeaches
      @jackpeaches Рік тому

      @@timhendriks93 Hi Tim, thank so much. I've have the PCA9685 on order and that should do the trick. Have a great weekend!

  • @rorionstar
    @rorionstar 2 роки тому

    how did you get the soundtrack to sync to your animation ? and did you mp3 addon for the arduino ?

    • @timhendriks93
      @timhendriks93  2 роки тому

      I use a simple DFPlayer Mini MP3 module for Arduino to play the audio. So far I was able to sync it by starting the exported animation with a short delay after starting the audio playback. The delay differs depending on the actual hardware and needs to be adjusted individually.

  • @DIYRobotGirl
    @DIYRobotGirl 7 місяців тому

    This reminds me of daz studio. It would be cool to get this do things like daz studio with dancing and music and stuff. Is he connecting the microcontroller directly or is he just copying blender code to arduino afterwards?

    • @timhendriks93
      @timhendriks93  3 місяці тому +1

      Since I recorded this video, there has actually been a lot of development regarding the Add-on. It is possible to do both 😊 You can either use a live mode via serial or a web socket, as well as storing the animation data on a micro controller via PROGMEM. I'm also about to release a new version which allows you to export the animation data as a binary file which can then be read from an SD card.

  • @carmovision
    @carmovision 3 роки тому

    would it be possible to store the sequence data on an SD card instead of the arduino's built-in memory? in theory that could allow for longer sequences, plus if you needed to make changes you could just swap out the card

    • @timhendriks93
      @timhendriks93  3 роки тому

      I thought about this too and think it should be possible. I haven't tried it yet as there are also controllers with more storage like the Arduino mega. But at some point I agree that an SD card could be the better option.

  • @alvinmickey2515
    @alvinmickey2515 3 роки тому

    That was very impressive! Thanks for sharing. I am familiar with blender but quite new to Arduino. To control multiple servos, using PCA9685 for instance, how can I assign a set of rotation data to a corresponding servo?

    • @timhendriks93
      @timhendriks93  3 роки тому +1

      Thanks for your feedback! I would recommend to check out this video about the PCA9685 as it explains how to wire everything up and how to control individual servos via code:
      ua-cam.com/video/y8X9X10Tn1k/v-deo.html
      In my code example, you would simply have multiple arrays with position values, one for each servo. You then add a line to write the current position (like shown in the linked video) for each of your servos.

    • @alvinmickey2515
      @alvinmickey2515 3 роки тому

      @@timhendriks93 Thank you very much sir!

    • @alvinmickey2515
      @alvinmickey2515 3 роки тому

      @@timhendriks93 After watching the PCA9685 video and using the giving example code, I am now able to achieve multiple servos control with blender. Thank again.

    • @timhendriks93
      @timhendriks93  3 роки тому +1

      @@alvinmickey2515 You're welcome, great to hear that it worked!

  • @Whetzell
    @Whetzell Рік тому

    Hi!
    All of my positions read "375" I thought maybe I had the wrong axis but no matter what parameter I change the .h file just has 375 over and over again. When I manually change the numbers the servo moves so I feel I'm very close to getting this to work!

  • @leachsquad4881
    @leachsquad4881 3 роки тому +1

    hello so i want to get into animatronics and have been studying a long time but i keep failing bhut this add on might do the trick but i do have a question how do you make blender know what servo is what and how do you make the Arduino know as well or do you have to do each animation blindly

    • @timhendriks93
      @timhendriks93  3 роки тому

      As shown in my video, you specify servo settings per armature bone and can name them, too. You will then get named arrays which you can use in your Arduino code. I suggest to start with a very simple setup and expand your project step by step. Have another look at the video and the description. You will even find an Arduino project file to get started.

  • @Nebula_Protogen752
    @Nebula_Protogen752 Рік тому +1

    Can this work with an Arduino Uno with a PCA9585?

  • @bensprojects5853
    @bensprojects5853 2 роки тому

    Do you have any suggestions for syncing computer audio up with animated figures?

    • @timhendriks93
      @timhendriks93  2 роки тому

      So far I've only used the very basic approach of starting the audio playback at the same time as starting my animation which has the exact same duration as the audio track. I also import the audio directly into Blender so I can see and hear the result of my animation in combination with the audio.

  • @julianlsproduction6319
    @julianlsproduction6319 Рік тому

    Do you build the 3D models for your figures in blender as well? Then export it scaled and 3D print it? If so it would be so awesome if you could make a video of that as well or link in the comment another creator that has made something similar.

    • @timhendriks93
      @timhendriks93  Рік тому +1

      That's exactly what I did, although I currently have no plans to make a video about modelling in Blender. I'm not sure if there is a video specifically about animatronics, but you should find plenty of videos explaining the general process of modelling in Blender. But as a starting point, I can recommend to use a base mesh that you find online (e.g. a basic human mesh if you want to create a human-like animatronic) and place models of servos where you need them. I then add some inner structure (mostly simple rectangular beams), use a modifier to create a shell out of the base model and slice the shell into individual parts to allow movement.
      Regarding 3D printing, there are also videos about how to prepare and export models in Blender to 3D print them, e.g.: ua-cam.com/video/-OynHqYd_1I/v-deo.html

  • @Nebula_Protogen752
    @Nebula_Protogen752 Рік тому

    After compiling and looking at the .h files, all the position values are 375? Did something go wrong and if so, how do I fix it?

  • @marwan.naasan
    @marwan.naasan 4 місяці тому

    Wow.. great work, I appreciate your effort... I tried on one servo motor and it worked perfectly!! .. But I face a problem, which is that when I add another servo and I add another bone and give it its own animation.. and when I export the file.. it shows me the angles of the servo for one bone and does not show the second.. How can I add more than one servo? Can you help me? Thank you.

    • @timhendriks93
      @timhendriks93  3 місяці тому

      Thanks a lot 😊 The add-on currently works in a way that you always have to select a specific armature before you will be able to export the animation. The export will then contain the positions of all bones in that armature which have active servo settings. In your case you would either have to export the animation data for both armatures individually or combine both bones into a single armature.

  • @alancastaneda8322
    @alancastaneda8322 Рік тому

    Can I use this add-on with Lego Mindstorms Robot Inventor?
    Also, I downloaded the add-on and installing it to blender, but the file doesn't appear in the add-on library. I followed your instructions and Blender manual.

  • @weihangli1491
    @weihangli1491 Рік тому

    hey,bro. Your addon is amazing, but i have a work on how to send real time rotation data to arduino, like when i move a bone in blender, and in the same time, the will accept the data from blender, and then control the servo rotate. Could you give me some suggestions? THANKS A LOT!!!!!!

    • @timhendriks93
      @timhendriks93  Рік тому

      Hi there, you can find a detailed description about this feature in the Readme on GitHub: github.com/timhendriks93/blender-servo-animation/tree/v1.3.0#live-mode-via-serial-connection

  • @Bram21
    @Bram21 2 роки тому

    Can i make it like a sequence? I basically want to make a story-telling animatronic. It tells a story for 3 minutes and then it closes its eyes. Is this possible using your method?

    • @timhendriks93
      @timhendriks93  2 роки тому

      I think that shouldn't be a problem, as it's totally up to you how you use the exported animation. You could export multiple sequences (they would currently need to be stored in individual Blender files though) and program them to be played in whatever fashion you like. I also used this approach to build my O.J. Punctuel animatronic which can also be controlled via a mobile device. In 'auto' mode, he will simply play one sequence after another in a random order. Still all of the animation was done in Blender using my add-on.

  • @simobomb6475
    @simobomb6475 10 місяців тому

    i tried the servo example but the addon glitches out i require help please!

  • @jakelevaithan5697
    @jakelevaithan5697 3 роки тому +2

    When i exported the .h file it didn’t put my exact numbers in for each animation it kinda just put 90s how do i fix this

    • @leachsquad4881
      @leachsquad4881 3 роки тому +1

      I’m having that problem too let me know if you figure it out hopefully he responds

    • @timhendriks93
      @timhendriks93  3 роки тому

      It sounds like you might have configured a wrong rotation axis. I would try to change the axis value (X, Y or Z) within the servo settings and test the export again.

  • @boss_lord56
    @boss_lord56 2 роки тому +1

    I have a question regarding on how I would apply the code to multiple servos in different pins?

    • @timhendriks93
      @timhendriks93  2 роки тому +1

      Did you already have a look at the example Arduino project files within the GitHub repo? There you can find a simple example which contains a comment on what to do when having multiple servos: github.com/timhendriks93/blender-servo-animation/blob/main/examples/ArduinoServoLibrary/ArduinoServoLibrary.ino
      However, an even better solution would be to use a PCA9685 module which can control up to 16 servos simultaneously. There is also an example file for this scenario: github.com/timhendriks93/blender-servo-animation/blob/main/examples/ArduinoPCA9685/ArduinoPCA9685.ino

    • @boss_lord56
      @boss_lord56 2 роки тому +1

      Thank you so much for your help! 😊

  • @fanero3046
    @fanero3046 3 місяці тому

    Does it only work with servos? Let's say I got a heavy robot and I need to use Hydraulic cylinders, Could you make a tutorial on how to use them?

    • @timhendriks93
      @timhendriks93  3 місяці тому +1

      Despite the name of the Add-on (Blender Servo Animation), it is generally capable to export animation data based on whatever value set up a user has applied. A rotational value of a Blender bone will be mapped to a value based on a provided min, max and rotation range value. So in the end, it depends on how the exported data is interpreted which could also be done in a way that you move hydraulic cylinders with it. That again is specific to how exactly you plan to control them. I've not planned to do a specific tutorial on that, but would be interested to see if someone would try this out 😊

  • @picklepickle1639
    @picklepickle1639 3 роки тому

    Hey! how did you make those bones not bendy in blender? when i do it it bends and streches the whole figure can u link me a tutorial in blender?

    • @timhendriks93
      @timhendriks93  3 роки тому

      I didn't do anything special but built a pretty basic armature with basic parent-child relations between the bones. Not sure what you exactly mean by 'bendy', but I would recommend this official tutorial about armatures: ua-cam.com/video/cZ3o5tjO51s/v-deo.html

  • @UnderGroundAnimations
    @UnderGroundAnimations 2 роки тому

    WOW i love this video🤩 but how to do get the model of your animatronic to blender?

    • @timhendriks93
      @timhendriks93  2 роки тому

      Thanks, the models were created with Blender in the first place. The approach shown in the video is always based on a 3D version of an animatronic, so you either have to start with a 3D model or create one that matches an existing animatronic.

    • @UnderGroundAnimations
      @UnderGroundAnimations 2 роки тому

      @@timhendriks93 alright thanks

    • @UnderGroundAnimations
      @UnderGroundAnimations 2 роки тому

      @@timhendriks93 Though is it ok that i don't use a model? and only use the bones

    • @timhendriks93
      @timhendriks93  2 роки тому +1

      Sure, forgot to be more precise about this, but having an armature with bones would be sufficient ;)

  • @lightman500
    @lightman500 2 роки тому

    I'm having trouble exporting armatures with more than one bone as a parent-child relationship. I can't seem to get the child bone to export. It only exports the parent bone. I'm using Blender 3.01 on a Windows 10 Surface Pro laptop.
    I created a very simple 2 Bone rig with one parent and one child.
    Any ideas of what I might be doing wrong?
    I can export the parent bone ok..., but no matter how I select the child bone, independently or as a pair, I can never get the servo commands to export for that child bone.

    • @timhendriks93
      @timhendriks93  2 роки тому

      The export is based on the currently selected armature and the add-on should then consider all bones of that armature with active servo settings (regardless of their relation in terms of parent - child). So the first thing to check would be if both bones have active servo settings and I guess they already belong to the same armature. You could also have a look at the inverse kinematics example in which the export also considers more than one bone / servo: github.com/timhendriks93/blender-servo-animation/tree/main/examples/IK

    • @lightman500
      @lightman500 2 роки тому +1

      @@timhendriks93 Thanks Tim....That was it!... I had not set the servo settings for the child. It works now. I then created a third child to make sure I have it correct, and it exported 3 servo command arrays (parent, child1 and child2) in the header file.
      I then created a mutually exclusive new armature (new armature not linked to the original parent)...I animated it and was successful in exporting those servo commands to a header file. I then selected the two armatures (Parent with 2 childs and the new armature) and exported the servo commands... however it only exported one of the armatures....the parent and 2 child. I guess the export needs to be done for each mutually exclusive armature.

  • @thomascastelluccio
    @thomascastelluccio 9 місяців тому +1

    This is great stuff and I really would like to be able to do this but every time I try to export to a .h file I always get this error code or something very similar "Calculated position 180.22 for bone Bone is out of range (0 - 180) at frame 44." . I made sure that the constraints were set to -90 to 90 but everything I try doesn't change anything. Does anyone know how to fix this?

    • @GlennMelenhorst
      @GlennMelenhorst 7 місяців тому

      I had the same and fixed it by making the "neutral angle" under servo settings 0 rather than 90

    • @DustingHistory
      @DustingHistory 7 місяців тому

      Actually scratch that. I'm still struggling with the same error!@@GlennMelenhorst

  • @Swiftflowplumbing
    @Swiftflowplumbing 2 роки тому

    Is it possible to use this same technique to make a life size version?

    • @timhendriks93
      @timhendriks93  2 роки тому +1

      Sure, it's more about which motor types you can can control with this technique. The frame by frame approach is based on PWM controlled servo motors and you could use some stronger ones to build a life size version.

  • @kennethkindrich3114
    @kennethkindrich3114 3 роки тому

    my servo keeps moving backward completly till the arm is lined up the opposite way of the direction of the animation in blender. Ive reversed it but it keeps going back to a position i do not want it at

    • @timhendriks93
      @timhendriks93  3 роки тому

      If enabling the reverse option does not help, there might be some other issues with your servo configuration. Have you double checked your min/max position values? Are you using degrees or pulse width lengths?

  • @jumbo7142
    @jumbo7142 2 роки тому

    can you do a tutorial on how to use this with multiple servos using a PCA9685 board? I can't seem to get it to work at all, I'm also not sure how to go about using multiple servos with that code

    • @timhendriks93
      @timhendriks93  2 роки тому +1

      Maybe I can cover that in a future video, but in the meantime I can also recommend other videos explaining this in detail: ua-cam.com/video/y8X9X10Tn1k/v-deo.html
      Hope this helps for now :)

    • @jumbo7142
      @jumbo7142 2 роки тому +1

      @@timhendriks93 thanks, i was able to get the servo to move

  • @ZAAANEE
    @ZAAANEE 10 місяців тому

    Can you make a video on how to rig and animate the models? I’m assuming it’s different when animating. I’m not very talented and rigging models.

  • @marinara6517
    @marinara6517 2 роки тому

    Is there a way to control multiple different servos without a PCA9685?

    • @timhendriks93
      @timhendriks93  2 роки тому

      It's possible, but it still requires an external power supply and enough pins which support PWM to work properly: how2electronics.com/how-to-control-multiple-servo-motors-with-arduino/#How_to_Control_Multiple_Servo_Motors_with_Arduino

  • @jakubmalicki4643
    @jakubmalicki4643 Рік тому

    one thing I found out from this video was how to set movement limits, but I didn't find out the important things I need

    • @timhendriks93
      @timhendriks93  Рік тому

      So what exactly were you missing then? Maybe I can cover it in a future video 😊

    • @jakubmalicki4643
      @jakubmalicki4643 Рік тому

      @@timhendriks93 1. can the bone be moved to max rotation with one click and saved while the music is playing? 2. how do I get those keyframes into the Arduino program? 3. how should I turn on the Arduino and the servo at the same time so that it fits with the music?... explanation 1. questions I have an arm / ➡️ press the button And arm get here __ ➡️ i release the button And arm go back here / .. But I would like to do it while the music is playing so that it is recorded in the program at the same time (I want to make a mouth that will sing "Break my stride,, for my animatronics") I will be very grateful if you can explain it to me. Thanks

    • @timhendriks93
      @timhendriks93  Рік тому

      @@jakubmalicki4643 I'm not sure whether I understood 1., but I think for 2. and 3. it could be helpful to point you to my new Arduino library which is specifically designed to use the exported values from my Blender add-on: github.com/timhendriks93/blender-servo-animation-arduino
      There is also an example called 'SwitchModeButton' which contains some comments indicating how to trigger the audio so that it matches the animation / servo movement. Hope this helps 😉

  • @filipelucciano
    @filipelucciano Рік тому

    Would this amazing addon work for stepped motors as well?

    • @timhendriks93
      @timhendriks93  Рік тому +2

      Without having tested it: I would think you can just use different min and max values in your bone / servo configuration that represent steps of your stepper motor. E.g. if you have a stepper which has 200 steps per revolution, you could define min = 0, max = 200 and set the rotation range to 360°.

    • @filipelucciano
      @filipelucciano Рік тому

      @@timhendriks93 thank you my brother

    • @TheChromePoet
      @TheChromePoet Рік тому

      @@filipelucciano Did you ever give it a try?

    • @filipelucciano
      @filipelucciano Рік тому

      @@TheChromePoet no bro, I didn't go on with my proj unfortunately :(

    • @TheChromePoet
      @TheChromePoet Рік тому

      @@filipelucciano Well thanks for the update 👍

  • @rorionstar
    @rorionstar 2 роки тому

    i cant seem to get the 2.93 version or 2.92 version to load the python file , any sugggestions

    • @timhendriks93
      @timhendriks93  2 роки тому

      Do you get any error messages? And were you able to install other extensions before?

    • @rodneysmith7979
      @rodneysmith7979 2 роки тому

      @@timhendriks93 I finally got it to load I had to delete a blender a few times but I did get it to load finally this morning woohoo

    • @timhendriks93
      @timhendriks93  2 роки тому

      That's great to hear 😊👍

  • @hugh_jasso
    @hugh_jasso 27 днів тому

    I've been wanting to do this but I got lost after the intro. 😢

  • @mateocarino005
    @mateocarino005 2 роки тому +2

    how can you include the pca9685??

    • @timhendriks93
      @timhendriks93  2 роки тому +1

      You can have a look at the following example code: github.com/timhendriks93/blender-servo-animation/blob/develop/examples/ArduinoPCA9685/ArduinoPCA9685.ino

    • @mateocarino005
      @mateocarino005 2 роки тому

      @@timhendriks93 thanks!!

  • @rodneysmith7979
    @rodneysmith7979 3 роки тому

    i am using blender 2.83 and it wont allow me to enable the addon its giving me some weird error message

    • @timhendriks93
      @timhendriks93  3 роки тому

      Sorry to hear that, what operating system are you using and what does the error message exactly say?

  • @meirot1766
    @meirot1766 2 роки тому

    Thank you for this very informative video but I would like to animate the same animatronic as you, I wonder if you could give me the arduino code that you used to program the phantom so that it only has to enter it Or could you explain to me in detail your arduino code example PC9685 because I have trouble understanding it thank you

    • @timhendriks93
      @timhendriks93  2 роки тому

      Even with my Arduino code it won't be as easy as copy pasting. You're servos might be a bit different and require a different configuration, so you would at least need to know how to replace the position value arrays. Furthermore my code is specific to my electronic circuit, including an audio player and a button to start and stop the show. Explaining all this in detail is a lot of work and I still intend to do so in an upcoming tutorial, but this will take some time. I'm currently working an a third animatronic and made some improvements to my add-on as well as to my arduino code. Once this has all proven to be successful, I will definitely start working on such a tutorial and a setup that's easier to replicate.

  • @leachsquad4881
    @leachsquad4881 3 роки тому +1

    Also how do you hook it up to sound

    • @timhendriks93
      @timhendriks93  3 роки тому

      This would be a topic for another video, but I kept it simple and just triggered a cheap MP3 module (DFPlayerMini) to play an MP3 at the beginning of the animation cycle within my Arduino code. There are already many videos which cover the basic usage of such a module.

    • @leachsquad4881
      @leachsquad4881 3 роки тому

      @@timhendriks93 you should make that video I’m sure there are people like me that don’t truly understand every aspect or at least a whole video or a link to your full code to see how to write it

  • @theolejeune6698
    @theolejeune6698 3 роки тому

    i have a problem when i try to export i have this message : Calculated position 12313 for bone LowerRightArm is out of range (0 - 10000) at frame 57.

    • @timhendriks93
      @timhendriks93  3 роки тому

      This error occurs when a bone's rotation (in your case LowerRightArm) exceeds a certain value based on your servo settings. So you could check the rotation value of the bone at frame 56 and make sure to not exceed this while animating. Also check if your configured min, max and rotation range settings are correct.

    • @theolejeune6698
      @theolejeune6698 3 роки тому

      @@timhendriks93 OK thank

    • @theolejeune6698
      @theolejeune6698 3 роки тому

      @@timhendriks93 And i have a other question how i can make to export just one muscle?

    • @timhendriks93
      @timhendriks93  3 роки тому

      That is not possible in version 1.0.0, but I recently added this feature on the development branch of the Github repository. I'm collecting a few more features before I release a new version, but you can go ahead and download the python file from the develop branch if you like.

    • @theolejeune6698
      @theolejeune6698 3 роки тому

      @@timhendriks93 ok Thank

  • @theolejeune6698
    @theolejeune6698 3 роки тому

    i have a question how have you make to generate the "Exemple_servo_moteur"

    • @timhendriks93
      @timhendriks93  3 роки тому

      I'm sorry, could you try to rephrase / clarify your question?

    • @theolejeune6698
      @theolejeune6698 3 роки тому

      @@timhendriks93 The file "Exemple_servo_moteur how have you make to have this file

    • @timhendriks93
      @timhendriks93  3 роки тому

      What kind of file would this be? Are you trying to generate / export the animation through the add-on or do you refer to something else?

    • @theolejeune6698
      @theolejeune6698 3 роки тому

      @@timhendriks93 So i have generate a file with your addon but the file where you put the angle who have you make to generate this file

    • @theolejeune6698
      @theolejeune6698 3 роки тому

      @@timhendriks93 the arduino file