Is this project too ambitious? 😅 [Let's build an animatronic #1]

As you might know, I like Disney (see my Lorcana custom post)! At the end of November, the Disney fan community received two lovely gifts: the unveiling of the new Olaf animatronic at Disneyland Paris accompanied by a Walt Disney Imagineering video and a 4 hours long retrospective on the animatronics of the Disney parks by Defunctland.Obviously, this didn't escape my radar, and while I've always admired robots in general, this time I wanted to make my own!

Welcome to this first post "I build my own animatronic" where we will look in a little more detail at the manufacturing plan for 'Spino'!

The idea behind this animatronic is primarily to learn and step outside my comfort zone. I've been trained in web development, and I use it daily in my work, but apart from a few electronics courses in middle and high school, I'm starting almost from scratch to create a robot.

However, being convinced that you have to throw yourself into it completely when you want to learn, I'm starting with something quite ambitious!

💡Idea

We're going to create a small robot that talks and expresses emotions. This little robot would be a daily companion (like Alexa) with whom I could interact to ask for information in all sorts of fields: movies, history, music, sports, literature, art… Ultimately, I'd like to be able to train it so it can develop a personality (voice, character, expressions…). And in parallel, I'm going to take this opportunity to keep a log of the creation process on this blog. Feel free to give me advice if you have any experience in this area :), I'd love to hear it.

🖼️Context

This robot should also be able to operate via Wi-Fi and Bluetooth to initially communicate with a computer. Later, it should be able to function offline, using a pre-recorded database. Since this is a small companion I'm building just for myself, I don't want to rely on any paid monthly subscriptions. Therefore, I'd prefer to use well-documented, open-source libraries!

🔧Hardware

On the microcontroller side, I narrowed it down to two options: using an ESP32 or a Raspberry Pi. The Raspberry Pi is more powerful and permissive, but theESP32 should be enough for me since it includes Wi-Fi and Bluetooth. So I'm going with that option.

Concept art of ‘Spino’'s appearance and details of the servomotors (models, number, angles)

In terms of animation and components, I want to make the eyes, mouth, and head move.

Eyes : 1 SG90 servo for left-right angle

Eyelids : 1 SG90 upper eyelid, 1 SG90 lower eyelid

Mouth : 1 SG90 U-D

Head : 2 MG996R servos for U-D and L-R angles

I obviously need a microphone (INMP441) and a small speaker (plus a PAM8403 amplifier) ​​to listen to the question and formulate the answer in audio form. My components order also includes a breadboard, Dupont cables, a battery and a power supply module to allow the animatronic to eventually operate without a PC, as well as an SD card and a module for read/write responses and configurations on the ESP32.

Some components I have received to date.

🖥️Software

Software side, Ollama will allow us to answer the questions. Ollama is known for running its large language models (LLMs) locally on the computer. The idea would be to integrate it into a Python project and create a new, customized model by referencing an Ollama model. Ollama will allow us to answer the questions.

🗣️➡️📖 Regarding the transcription of the audio signal into text (question recognition), we will start with Whisper.cpp which works relatively well in French and is quite lightweight.

📖➡️🗣️ Finally, for transcribing the text into audio, we need a lightweight module such as Pico.tts or Google Text-to-Speech. We'll see which one performs best and is most customizable based on the tests.

Finally, in the VSCODE project, we should be able to launch animations.

🎀 Design

Finally, the appearance would be inspired by the Muppets. The idea would be to model and print a PLA structure for the body and cover it with faux fur fabric.

But we'll see all that in a future post 😉!

That concludes this first post! In the next one, we'll start setting up the software. Feel free to spread the word and follow me on Facebook to stay up-to-date on future updates 😊

Comments

One response to “Un projet trop ambitieux ?😅[Construisons un animatronic #1]”

  1. […] avoir présenté le projet robot, on va s’attaquer à la construction du […]

Leave a Reply

Your email address will not be published. Required fields are marked *