I have only done some clean up and writing some paragraphs for the website.
It was a great pleasure working on this and sharing this journey of my first bigger project with you.
And I’ll say it here to as I like to be transparent about such things:
This website was mainly created to practice my HTML and CSS skills. Because I’ve always wanted a place where I could share both my projects and articles that I wrote, this project got slightly out of hand. To be able to get to a finished version I did have to use some AI for the JS as I am not that familiar with it… But i am learning!
Today I finally finished the 3D CAD model of my balancing robot called AXIS!
I had some setbacks and difficulties along the way, but that’s normal! Eventually I found a solution for all of them!
That’s exactly what engineering is about!
Let’s get printing
Oh god… this will take days😥
In the mean time I have been working on the frame for the robot!
I mainly did some prototyping for the motor mounts. Which went… let’s say “could have gone better”😅
I had to print multiple protorypes because the motors have a fairly irregular shape, and I’m not good enough to do it first try…😅
Also, because of some mistakes when saving, there sometimes missed parts on the print that I did actually change. Which caused some errors in my brain.
Next up is the PCB and battery housing (the head of the robot)
Quick take:
I added a project page where I can showcase all projects. I also added a blog page where I can show the development process of my projects and also write about whatever interests me. Finally I added a very simple gallery page that hosts some pictures.
The projects and blogs both have buttons to ‘read more’. And thats exactly where it became dificult…
For the most part, making these pages was fairly easy, I made it so I can just add entries to a json file and there appears a new card with all of the article/project info.
The difficult part began when I wanted to link a markdown file to these json files so that I can easily write in Google docs and just export as a markdown.
The big problem was that because of the libary I am using (Swup) the text inside the markdown files wasn’t being rendered.
I tried a bunch of solutions but the one that worked was to tell Swup not to care about the link to an article/project (eg. dont perform a transition). This way the browser performes a hard reset of the page.
The only problem that was left is that then the header and footer dont display…
Yeah, I just hardcoded them in everywhere😅. It’s not beautifull and I’m not proud of it, but it is a fix.
And that’s the most important!
I spent the past few hours working on a portfolio/blog website where I can easily track and show my progress, both for myself and others.
The idea was to just create a quick website so I could quickly continue working on my other projects and actually start posting on the page…
Just as all projects, it got slightly out of hand and I spent WAY too much time making this website nicer, and completely ignoring my goal of a “quick” website.
On the home page I added a carousell, orbiting around earth, where I can showcase some projects. I did follow a youtube tutorial for the carousell (I’m not that good🥲)
I already did this one time before so I just used that code.
I also designed the about page with some info, a quote and some aditional ‘focus cards’.
Oh yeah, and the whole library thing…
I basically wanted to make some cool page transitions (which I have never done before). So I figured I would just follow a quick tutorial on youtube about the Swup libary… aaandd that didn’t exactly work as planned.
Turns out it was just my fault for completely following a 6y old tutorial that was using a previous v3 version of the libary. I was using the v4 in my code, which appairently works a bit differently.
Luckly everything works fine now!!
… turns out it was my fault after all.
You know, a project isnt a project when theres not one moment where you think that is SO over!
That was today! I began testing some parts of the hardware before ordering the PCB and without putting it inside the frame.
At first everything went smoothly (supicously smoothly), but then… My motors began doing some weird ahh stuff where they reacted way too late after I tilted the sensor. I thought, it must be some timing issue, or my code is just so poorly written that its running too slow.
I tried some methods to make it faster (less lcd updates, etc.)
Still nothing…
Then I made a little debugging program to find out the frequency at which the code runs, and the delta time variable. Turns out that this wasnt the problem at all!! My frequency and delta time were perfect!
…
Thats when I made the discovery that I didnt think about the PID values. I just set them to some number and didn’t give it a second thought because I wont tune it anyways without the frame… But of course the motors wont respond as I hoped they would if the values weren’t even close to what they need to be😑
But we’re back babyyyyyy!!!!
Next is the frame design and CAD!
Today I integrated the new IMU i’m using into the code. (also had some beef with the library)
I edited my code to accomodate for the other IMU I’m using (since i broke the previous one, whoooppss)
After that I quickly tested the measured and filtered data, along with the pid output data.
Next up I’m gonna test my motors and encoders!
Today I worked a little bit more on the rocket design and slightly changed it so i can use this airframe as the second stage for my next rocket (2 stage 1.2km rocket).
I also picked parts for the flightcomputer and studied datasheets.
Next up is the PCB schematic!
I have been working on this project before the timelaps function came out. And it mainly was simulation and design work, so not that much logging.
I’m building the first of 2 model rockets in my current program.
I’ve already designed and simulated rockets 1 and 3 in a program called ‘Open Rocket’. And made a 3d CAD model of Bumblebee(rocket of flight one)
Have been working on this project for a while (before stardust).
I’m making a balancing robot using an IMU and some DC-motors with encoders.
I’m trying to make it controlable with an xbox controller and it uses a PID algorithm to balance itself.
Right now I have:
What’s still up: