Animal

Timmyton 5.5 (2014)

IMG_7807

Hello! I present to you the Timmyton 5.5, the latest and much anticipated edition to my popular Timmyton series. In September 2014, I was invited by LEGO MINDSTORMS to present this robot at the 2014 Maker Faire!For those of you who are not familiar, the Timmytons are robotic sharks that do tasks. The focus of the 5.5 was to be pet-like, like the 5.0, while looking even more realistic. The 5.5 is an update over the 5.0, with minor mechanical changes and completely new and improved programming. Best of all, it can still be built with just one EV3 (31313) kit! I have entered this into the Community’s Maker Faire building competition. Continue on or watch the video below for more!

See a video of the Timmyton 5.5 here: https://www.youtube.com/watch?v=X-om-r3WoPc

Mechanical Design

IMG_7834IMG_7826

The Timmyton 5.5 is built off of the same chassis as every other Timmyton. It is very similar to the 5.0 from a mechanical standpoint; in fact, to make the 5.5, I built the 5.0 and made the changes off of that. All of the changes were in the name of aesthetics, to make the 5.5 look even more shark-like. Compared to the 5.0, the 5.5 has the two Large motors and EV3 brick slid back one module. The two drive wheels have been pinched closer into the body to make way for the pectoral fins. The two Large motors control driving, tank-style, and The Medium motor, wedged between the two Large motors, runs the tail and mouth in a continuous reciprocating motion, simultaneously. The two sensors are the Color sensor in the mouth and Infrared sensor in the head.

Program Summary and RC Mode

Full ProgramRC Mode

Where the Timmyton 5.0 had four separate programs, the Timmyton 5.5 has revised versions of those four, plus a new one, all rolled into one program (pic 1). The new program allows the user to choose the mode of their choice from a menu, using one of the designated buttons on the EV3 brick. To exit that mode, and return to the menu, the user will press the center button. Then, they can select a new mode, all without having to leave that one program. The five modes are RC, Hungry, Jaws, Funky and the new one, Auto. I will explain each of the modes in the subsequent sections, but now I will explain RC mode (pic 2). It is a direct carry-over from the 5.0, merely re-worked to integrate it into the new program. It allows you to control the Timmyton 5.5 with the Infrared Remote, tank style, with the top button toggling the motorized jaws and tail and flashing red lights.

Hungry Mode and Jaws Mode

Hungry ModeJaws Mode

These next two modes are my personal favorites. In Hungry Mode, you can “feed” the Timmyton 5.5 different color LEGO bricks (pic 1). The Color sensor detects the color, giving Timmyton a sense of taste. If you feed him blue, he will sniff it, say “okey-dokey,” and crunch on it contentedly with his motorized jaws. If you feed him yellow, he will sniff it, say “fantastic,” and munch on that as well. (Real-life sharks are attracted to yellow.) However, if you feed him green, he will sniff it, exclaim “BOO!” and make a 180 degree turn around, refusing to eat it. If you feed him white, he will sniff it, then have an allergic reaction. He will say “Uh-oh!,” sneeze and twitch back and forth. Lastly, if you feed him red, he will growl and charge at you, snapping his jaws hungrily. The next mode is “Jaws” mode. I am proud to say that this “Jaws” mode is 100% new, 100% original and undoubtedly better (pic 2). This part of the program will make the Timmyton track down and follow the IR Beacon/Remote, whilst snapping his jaws, wagging his tail, and playing the famous “Jaws” music. It is also useful for “walking” the Timmyton 5.5 on an invisible, infrared leash.

Funky Mode and Autonomous Mode

Funky ModeAuto Mode

Next there is Funky Mode, which is a direct carryover from the Timmyton 5.0 (pic 1). When activated, Timmyton will shake back and forth, wag his tail and snap his jaws, dancing to his own music. The brick LEDs flash through the three colors to simulate disco lights. The fifth and final mode is Autonomous mode, which is all-new for the Timmyton 5.5 (pic 2). When Auto Mode is active, Timmyton will roam around randomly until he sees a person or object with his Infrared sensor within a certain distance. Then, he will angrily charge forward, snapping his jaws, wagging his tail and flashing his LEDs red. If the target moves out of the Timmyton’s sight, he will stop charging and resume his random roaming. If the target does not move away, Timmyton will continue his charge forward, until he is about 2 centimeters away (to scare the person away). He will stop, reverse, make a 180 degree turn and resume random roaming, repeating the process.

Conclusion

IMG_7828

During the creation of the Timmyton 5.5, I faced a few major challenges. The first was how to improve upon the 5.0 (I hope it doesn’t sound like I’m bragging; it really was a solid design! :D). Second, I had to find out how to make the Timmyton 5.5 more aesthetically pleasing and have the mechanisms work with it. Lastly, I had to be careful to make sure the program worked around the “VM [Virtual Machine] Program Instruction Break” error that kept bugging me. I defeated all of these obstacle to create what I believe to be the most successful and fun-to-play-with Timmyton so far. If you’re interested, you can download the building instructions and program and try the Timmyton 5.5 for yourself. Tell me you thoughts on the 5.5; I’d love to hear them! Also, I would like to make the next Timmyton, the 6.0, the “Timmyton of the People.” Tell me in the Comments section how you’d like me to make it. So, anyway, I am very happy with this latest Timmyton; it’s everything I hoped it would be. Thank you for reading and see you next time!

  1. Hi Builderdude,

    that looks like a really great model. I like the idea of it reacting differently to the different colour blocks you feed it. Would love to see that in action in real life.

    One question: We are also massively facing the VM machine instruction break error. We couldn’t find a way to circumvent it yet. Do you have any idea or could give us a hint what could cause it or what we can do?
    Thanks a lot!!!

  2. Thank you! Have you seen the video?

    Are you facing the VM problem when you’re running my program, or are you facing this challenge making your own program? I struggled with the VM instruction break when I programmed the Timmyton, and eventually designed the program to circumvent it. I have found that the VM (Virtual Machine) instruction break occurs when you have two strings of code telling the same part of your robot to do conflicting things: i.e., telling Motor B to go forward and backward at the same time.

    I had the biggest problem with the VM when programming the “Auto” mode, because the EV3 had to read data off of many sensors and react based on each one. I originally had something like multiple code braches for each sensor, but that caused the error and I eventually came to restructure that part of the program so that it uses Switch blocks for each sensor.

    Hope this helps,
    Builderdude35

  3. Thanks for the prompt reply! Yes, the video is perfect – didn’t even realize before that is has that many modes it can run in. Very creative…

    The VM instruction break here occurs with a completely different program. It’s only sequential (no parallel branches), and we could track it down to a simple variable read operation + a switch reacting to it. There also seems to be some randomness to it (it also occured with an array operation another time). We “circumvented” it now with an additional variable, which has no meaning whatsoever. Its just included in between at the place where is crashed. Now it runs fine. So there seems to be a bug in the mindstorms software or in the VM. Thing is that we never know, if it will occur again. Bad thing about it: We’re participating in a competition soon (if you ever heard of the World Robot Olympiad). Would be a desaster, if we have the bug suddenly in a competition run 🙁

  4. Oh, wow! A completely different problem indeed!

    I’m happy to hear you figured out how to fix the problem! The one thing I can recommend now is that you try updating the EV3 brick’s firmware and reloading your program; it can’t hurt.

    You gave me an idea for a future EV3 programming tutorial I’d like to make about VM instruction errors. Could I mention your problem and solution in the video? If you would like, I can keep your name anonymous.

    Anyway, good luck at the WRO! Tell me how it goes!
    Regards,
    Builderdude35

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.