Track Satellites From Your Desk – Motor Control – Part 2

Published by Dr. Duino

As promised, here is part  2 of our tracking satellites from your desk blog series!

One of the most important design constraints in this entire build was to make this as affordable as possible.

To achieve this, I had to use minimal parts  which are an ESP32, 2 Stepper Motors, Dupont Wires and of course a 3D printable model.

If you have access to a 3D printer (don’t worry if you don’t have a 3D printer most libraries will give you access to theirs for FREE or minimal charge), you can build this entire project for less than $50 bucks, and I’m WAY overestimating.

Given these design constraints, the most cost effective way to build the Satellite Hunter was to use a motor control technique called Dead Reckoning.

Let me explain.

Imagine you have an RC car in front of you and you want to drive a path which goes in a straight line which ALWAYS starts and ends in the same starting position.

So you place your RC car down in front of you and begin your trek in your living room.

You move forward by precisely 4 full tire rotations and then precisely 4 full tire rotations in reverse.

With this simple example you end up at EXACTLY your starting point.

This is exactly what dead reckoning is, its a way of counting how far you have gone in one direction so that you know how far back you need to turn in order to return to home.

We are able to take advantage of this very simple, method in our Satellite tracker using something called a stepper motor.

Stepper motors allow you to tell the motor PRECISELY how many rotations forward or reverse to take.

Think of a stepper motor like a baseball with tiny little notches all around the perimeter.

When you roll that ball along the ground, it doesn’t roll smoothly, but rather STEPS from one notch to the next.

The beauty of these stepper motors is that you are able to dictate EXACTLY how many steps to take either forward or reverse.

Awesome right?

So armed with this knowledge all we need to do now is marry the data we got back from the SGP4 library call (see previous post) and calculate exactly how many steps we need to take to point our dish in the X direction (Azimuth motor, 1 above) and Y direction (Elevation Motor, 2 above).

Satellite Hunter Modes of Operation

Now, as I was creating the Satellite Hunter, it became very clear that in order to test the functions of the motors that I was going to need to create 3 different modes of operation.

Mode 1 – Real Time Tracking | is real time tracking mode where it will follow your satellite of choice in real time, but this is painfully slow.
Though satellites zoom overhead at incredible speeds, the dish’s movement from the ground appears slow, making real-time tracking seem almost static. So even if you were to ask it “Hey where are you NOW”, every second, the movement of the dish would be almost imperceivable. This mode updates the Satellites Position every 10 minutes, so I needed something a bit faster to test with. Enter Mode 2…

Mode 2 – Simulation Mode | I needed a way to test out the motors without hitting the Celestrak website and so I created a simulated satellite path and stored it inside of the ESP32. Then I would simply “play” back the data. That’s actually what your seeing at the top of this post, I’m able to iterate through the data over and over in a loop so that I can confirm the overall motion of the Satellite Hunter.

Mode 3 – Forecasting mode | This, to me, is the coolest mode because its a mix of modes 1 & 2. I wanted a way of being able to use real data BUT I didn’t want to wait 10’s of minutes before seeing my Satellite Hunter physically move, so I added a forecasting mode. Forecasting Mode mixes real-time data with faster updates. Instead of waiting for the satellite’s current location, we track its future position and update every 5 seconds for a dynamic and engaging experience. This gives you a REALLY active Satellite Hunter which moves every few seconds WHILE still using real data.

Awesome right??

And what we just went over in these 2 blog posts isn’t even scratching the surface.

What if you want to track other satellites, like Amateur Radio ones, or GOES or hundreds of others?

And how do you go about calibrating the Satellite Hunter so that it accurately tracks the satellites with respect to your position on the planet?

I go into this and soooo much more in the actual course itself.

So if you’re interested in building your own desktop Satellite Hunter, gaining access to the exact parts list, the 3D printable files and most importantly ALL THE CODE, then I would like to personally invite you to check out Dr.Duino’s Satellite Hunter Project.

And to make it super simple for you to get started, I’m even offering a LIMITED TIME 7 Day FREE trial.

Why would I do that? Well, because the Satellite Hunter is part of what I call Dr.Duino’s Maker Academy.

I want you to imagine a binge-worthy series of Arduino/ESP32 courses and projects which will ignite your passion for diving deep into coding and electronics so that you can finally get started making your own projects just like this one!

Excited?

Click the button below to claim your 7 Day FREE trial of Dr.Duino’s Maker Academy now!

Take Me To Dr. Duino's Maker Academy
Claim My 7-Day Free Trial NOW!

©️ Dr. Duino. All Rights Reserved