Contenus de la page
What is the FollowSpot ?
It’s a prototype system created by Tanguy CHATELAIN and Mathieu CHAILLON during the Makers project in 2024 with the assistance of Julien ALLALI and Adrien BOUSSICAULT at EIRLAB, the fablab of Enseirb-Matmeca.
The goal of the Follow Spot is to continuously track the movement of an object using a lamp and a camera, and illuminate the object accordingly.
What can you find in this page ?
Firstly, the componants needed to create the Follow Spot. Secondly, you can see how we have created our prototyp with the differents step of the process. And afterward, you can find the steps to create your own prototype if you wish, with links to the code and technical informations about the diferent components
To start, the needed tools and component to create the Follow Spot:
Components :
Quantity | Component | Unit Prize |
2 | Stepper ( NEMA 17 1.7A 2.8V 200steps/rev) | 13€ |
2 | Motor drivers (Microstep Driver (TB6600FG)) | 25€ |
1 | Little USB Camera | 10€ |
1 | Arduino UNO R4 MINIMA Card | 18 € |
1 | Breadboard | 3€ |
3 | Rolling balls | 2€ |
1 | Metal shaft | 1€ |
2 | Ball bearings | 3€ |
1 | Lamp | Unknow |
1 | Piece to connect two metal shafts together | 5€ |
~ 30 | Electrical wires | 0.3€ |
0.75 square meters | CTP or MDF (10 mm) | 15€ / square meter |
TOTAL | 145.25 € |
Tools :
- A 3D printer
- A laser cutter
- A drill
- Some screwdrivers
How did we imagine and create the FollowSpot?
The first idea:
At first, we thought about creating a robotic arm with the lamp and the camera mounted at the top. We did some research on the power of the different motors available in Eirlab and trials to create our arm. But we realized that will be extremely difficult to find the good motors and achive the wanted precision with the weight of our utility block (with the camera and lamp) and the motors in the last section of the arm. So, we needed to brainstorm others ideas
The second (and the good) idea :
After this reflection, we understood the importance of keeping our prototype simple and avoiding issues with the weight of our components
As a result, we created a triangular base with a motor a the center and, at the vertices, three mounts equipped with rolling balls at the top. Next, we designed a connecting piece to link the axis of the motor to the second part, a circular (originally squared) base where we would later attach the essential components of the Follow Spot. With this setup, we currently have the ability for 360° movement around the y-axis.
After design part, coding part
After this long period of design and trials, we began coding the rotation of our first motor and our camera. We are using an Arduino UNO R4 MINIMA and 2 drivers for the motor and we’ve developed a code that moves the motor in function of an angle. For the camera we’re utilizing some C++ code that, with a picture of some specifical symbol, can return us different informations about the position of this symbol in front of our camera. After this with a combined C/Python code, we send commands to the motor based on the informations receive from the C++ code.
We did a lot of test and calibration during this phase and started to think about the second part of the design.
Design and creation of the top part of our project
At this moment, we had possibility to move around axis y our circle base and we could determine the object’s position by placing the specific symbol on it in front of our camera.
So we needed to proceed with the second part involving the second motor to enable movement around the x,z axis for positioning the camera and the lamp.
We needed also to create a box to put in the camera and the lamp on another box at the top. To achieve this, we utilized laser cutting and created a base to connect our motor and camera,lamp box to the circular base . Using a metal axis connector connected to our second stepper motor, we have established the capability for the box containing the camera and the lamp to move into the interesting positions.
Final part of the project :
Our project is nearly complete. We’ve successfully connected the second motor to our Arduino code and created a system to position the lamp at the top of our camera box.
Conclusion of our Project
In conclusion, the process of creating our FollowSpot prototype involved numerous trials and iterations.
However at the end, we’ve finally achieved a functional prototype. So we want to thank our teachers and Eirlab for the oportunity to try to create a prototyp like this from scratch. And to finish a little video to show the prototyp in action
Now, How can you create your own FollowSpot ?
The differents steps :
Firstly, download the design for 3D printing, Laser cutting and the code for Arduino and camera
- Design of the 3D Printing piece
- Design of the Laser cutting piece
- Git repository with all the code : https://github.com/tanguyccc/Tracking-Camera.git
Secondly, print and laser cut the different pieces
VIDEO DE DECOUPE ET IMPRESSION
Thirdly, connect all the parts
The construction part
- Put the rolling ball in the 3D printing mounts
- Set up the triangular base with the mounts and the laser cutting triangle
- Screw the motor-connector 3D printing to the laser cutting circular base
- Like in the picture screw a screw in a nut to avoid a good connection between axis motors and the 3D piece
- Put the connector with the circular base on the axis motors and verify that the circular base can rotate at 360°
- Now, you have normally this
7. To create the second part, assembly the camera and lamp boxes and put in its
8. Now assembly the second motor base
9. Assembly the second motor with the metal shaft and the ball bearings and the camera box
10. Add the rails at the top of the camera box and bottom of the lamp box
11. You can now assembly the 2 boxes and did the electrical connections like this picture :
The coding part
- Download openCV v4.9.0 and contrib modules
- Do bash command :
- make
- make install
- ./bin/motorControl