Introduction: VEX Shark Robot (Doesn't Swim in Water)

About: I am a student for the Wilkes-Barre STEM Academy. I like to build things and made an intractables account so I can show people how I make my projects.

This project was carried out by Josh Woodworth, Gregory Amberes, and Stephen Franckiewicz. Our goal was to build a replica of a fish, and program a motor to move the tail. Our design is NOT submersible, so do not build it an expect it to work underwater. We built it solely for the purpose of demonstration of what a fish looks like, swimming above the water. The project did help us know how to program, and could be used by someone who either wants to try programming too, or if someone wants a swimming fish dummy.

Step 1: Materials Needed

For this project, you will need all of the following things listed below.

-1" thick Styrofoam (any type and color is fine)

-1 container or jar

-1 VEX EDR Cortex

-1 VEX EDR Cortex 7.2 Volt Battery

-1 3-Wire Servo Motor

-1 VEX Motor Shaft (Longer than 2 inches)

-2 VEX Shaft Collars

-1 VEX EDR Cortex Computer Cable


-Robot C Programming Software

-Razor Knife or Box Cutter

-Styrofoam Cutter

-Sandpaper or a File


-Hot Glue Gun

Step 2: Cutting Out the Shark

So to start, you will need to get your sheet of 1" thick styrofoam. You could use the stencil attached here and print it out if you want to (we downloaded the image, then resized it to make it 300% bigger for our project). For our project, we only used the tail and head. We didn't use the body because we have the container for the body, but it could be cut out if you want to enclose the container inside the styrofoam.

We traced it with a pencil first, in case we made any errors, then we traced the pencil lines with marker, then cut out the head and tail of our shark. We also cut out two heads, and doubled them up to make a 2" thick head. We then sanded both pieces down until they had smooth edges. Then we drew eyes and a mouth on our shark, for decoration. Save extra styrofoam in case a piece breaks, or if you decide to make another one later.

Step 3: Assembling the Body

For our body, we used a protein powder container because it housed our VEX Cortex well, and it was resealable. Just make sure you wash out any container you use, just so you don't get anything on your Cortex. We put our Cortex in the container and cut a hole in the side of the jar for the cord to go through when we started programming it. Then plug the Cortex 7.2 Volt Cortex Battery into the VEX Cortex and place it in your container. We also put a hole in the lid for the cord of the 3-Wire Servo Motor to go through and into the Cortex. We plugged the motor into Port 9 of the Motor Control section of our Cortex. Then we screwed the lid back on, and glued the 3-Wire Servo Motor to the lid, and the motor was facing up when the lid was on tightly. Then, put a hole through the top and bottom of the beginning of the tail, and stick the Motor Shaft through. Put Shaft Collars on both sides of the tail while it is on the Shaft, then put it into the motor. Make sure the tail is facing the right way too. Then, glue the head of the Shark to the other end of the jar. Make sure it is facing the right way as well.

Step 4: Programming the VEX Cortex

Once the VEX 3-Wire Motor is plugged into Port 9 of the Motor Control section of the Cortex, you can enter this code below into your Cortex using Robot C. Make sure you have the Cortex Battery charger plugged into the Cortex, and make sure the switch on the Cortex is turned on. When you have your Cortex plugged into a computer with Robot C downloaded on it, you're ready to code your Robot Fish.

Code Needed (feel free to copy and paste):

#pragma config(Motor, port9, servoMotor, tmotorServoStandard, openLoop)

//*!!Code automatically generated by 'ROBOTC' configuration wizard !!*//

task main() { { startMotor(port9, 100); wait(5.0);

startMotor(port9, -100); wait(5.0); }


Step 5: Conclusion

Once your Cortex is coded, it will immediately start moving the 3-Wire Servo Motor side to side, like how a fish swims. If it doesn't do this, make sure everything is connected correctly, check the battery's charge, or check to see if you accidentally plugged the 3-Wire Servo Motor into the wrong port on the Cortex. We decided to name our Fishy Friend Fish-Bot 3000, but you can name it whatever you please, and you don't need to write the name on it. We just wrote it there for decoration. Don't leave the battery on once you turn off your fish, because it will burn out and may ruin your battery. Remember, this design of a Robot Fish is not meant to be submersed in water, so don't put it in any water, because it will break everything electrical on it. If there are any questions, leave a comment below and we will try to answer them to the best of our ability.