Blog 5 – Moving Targets Inc.


16.09.2024 – 22.09.2024

Success consists of going from failure to failure without loss of enthusiasm

-Winston Churchill

Group Summary

Dearly beloved,

the weeks seem to pass by faster throughout the semester, are the weeks are getting shorter? Perhaps we are enjoying this more than we are supposed to, who knows.

We are now closing our second 2-week sprint of this project. Underneath you can see a screenshot from our Trello page with all tasks listed. After getting suggestions for some material changes from their “shopping” list, our mechanical engineers have redesigned the project to utilize an aluminum frame, instead of wood, with some absolutely astounding 3D models. The computer engineers have (surprisingly) been focusing on coding, with each member diving into their own subjects, this can be read about in the induvial summaries down below. While our sole electrical engineer has been creating schematics for the circuits in our build.

Individual Summaries

Eirik (Data):

This week has mainly been consisting of computer vision in Python, again (bit of a surprise innit?). Though it is definitely something one can does not learn in a few weeks period, it is starting to make more sense than it did about two weeks ago. I have been mainly focusing on what is called “motion filtering”, which is basically that the program only visualizes movements within a camera feed (or an existing video for that matter). This process have mainly been using the OpenCV library in Python, which has many built in features that makes it easier to program.

Here is some test-code for how it can look like:

The result one gets by running this code will look something like this:

As you can see at the top, where I am moving quite a bit, you will get a visible outline of my figure. Whereas on the bottom picture where I am sitting almost perfectly still, you will get a nearly black screen.

Besides losing my mind within computer vision, I also began working on the midterm presentation. Though it is more of a project that needs to be prepared together as a group.

Robin (Data):

Last week I worked on simulations of the targets, and I had these goals:

  • Have 2 targets
  • Have some sort of moving pattern
  • Shooting + hit detection

I easily managed to create 2 targets but got stuck on the movement for a while, but it got it to work with manual controls.

While this was functional, I wanted to start on the moving pattern. However, I was not happy with the current movement schemes. So, I revamped the code so that it would have more real-world application, and I can use more realistic numbers. Again, I struggled quite a lot, and still am! While doing this I’m also creating a real-time random generated pattern. It works in the form that a new random vector is created after it has moved for a certain amount of time. The new vector is based on its previous position so it will wary a little more.

The way I want it to work is by creating a new random vector where I can get all the positions from, then calculate the speed it needs to have to reach that specific position in the x and y axis, then create a vector that will reach that position based on the time it has to do so. When I tried for this, I ended up with it only going up to the right corner, so there is some humbug in my code. Better luck next time! 😊

Fredrik (Data):

Continuing last week, I coded some algorithms for how the target movement could look like. I managed to code 2 different ones.  The first one starts in the middle and then moves in a random direction; while keeping track of its position making sure it doesn’t go too far to one side:

This second starts at (0, 0), which is all the way bottom left, and then generates a random coordinate that has at least some distance away from the last coordinate and then moves to that coordinate. It does this 4-6 times.

I also spoke to Vetle and Robin about how the movement would work. We figured out that we could make it go diagonal and found an equation for that too. We then thought a bit about how the algorithm would look like with this new information.

Vetle (Electrical):

This week I started working on the schematic for the circuit. The schematic is being made in KiCad since it is a lot easier to start with than OrCAD since the default library has a lot of parts and footprints that we will be using. I may do the final design in OrCAD, but KiCad was my choice for a preliminary design since I have more experience using it.

It will be changed to a hierarchical design, but this is just to get an idea of which parts are needed for it to work. I have not decided which power connector we will use to connect it to an external power supply yet.

Kadir (Mechanical):
This week we got feedback from USN on our material-list and was offered to change our vertical framework and accessories from 4×4’’ wood to 20×20 mm Aluminum profiles.
This called for some redrawing of the model. Due to the dimensions (lengths) of available materials the scale of the model also had to be changed.



Discussed this changes with Hans and made sure we were in agreement on the way forward.
I Also did some research into the ‘fire back system’

Hans (Mechanical):

This week I have been Simulating and learning to simulate different stresses in SW,
had some trouble with our model and the material selection when simulating, so I will continue next week with our new model.

Load 100 N ->FS= 3<

100 N

 100N Red indicate FOS<1.

*100 N is not realistic in this project except for persons pushing it. Just to show.


I have also helped Kadir with drawing parts of the new model.
Consolidated the machine ABC to the projects ABC requirement list.


Leave a Reply