Work I Completed
This week in robotics, I have once again continued to progress my project that is Winston. I have focussed more on trying to make him capable of walking on his own, or rather, capable of standing independently. This has proved to be tougher than expected. But before that could even be attempted, the issue of the burnt servo driver board. There was no other available which had already been soldered. This means I had to re-learn how to solder. The issue with this, is that all thew parts that need to be soldered on a servo board are very closer together, and as such there is a high likelihood of bridging. Luckily, I managed to accomplish this with no bridging, however, not before finding out the hard way how hot soldering irons can get…
Once that was put together, I struggled to test if it was working, as my coding skills seemed to be lacking last week. After longer than I would like to admit (about an hour and a half), I was able to start testing if the board works with the dog as a whole. After some more struggles, we got to a point where the dog was able to move again, and after everything from the knee down collapsed, I managed to get him crawling across the ground.
After this, I thought that the only issue that remained was attaching the lower half of each leg, and then programming him to walk.
My theory for making him walk was to enter the position of the leg to be that of a sine wave, this would allow him to lift his leg and bring it forward in a somewhat circular motion, and the reason I chose not to use a circle is that the function of a circle is:
x^2 + y^2 = r^2
The issue with this is the complexities of having squares and extra variables, the ease of a sine wave is that:
y = sin(pix/a), where “a” is the distance I want a single stride to be.
I was greatly mistaken. Attaching the legs is not the final remaining issue. Although, they proved to be unexpectedly painful. Firstly, I needed the two original motors, as they were old and it was showing. Then, I needed to retention the bands, and this is where it all went wrong. The bands created too much tension for the metal pulleys, and it resulted in one being torn out, stripping the inside of the motor in the process. Additionally, there remained the issue of securing the lower parts of each leg to the upper. All of these were problems that could be solved with superglue. After (very carefully) gluing everything together, I had a robot dog with each part secured. The only issue that remains is programming the walking. Or so I thought. I tried to make it stand but I found out there was a reason the human body has two bones in the leg. This issue I have tried to resolve, but to no avail. There was a small moment where I did make him stand, however, it required me forcibly moving his legs to the ideal position, and any small movement results in his collapse.
My solutions to consider in the next 3 days before I am on a plane are to add something to act as a second bone, as this should prevent the problem of tension. Another solution is to make the interior joint denser, as this should prevent them from caving in. The last solution is to swap the motor and knee around, getting rid of the idea of replicating biological movement. This is the least ideal as the somewhat uniqueness came from this mimic.
ASD
In other news, I got accepted into the ASD Pathways work experience program. This is exciting, as it focusses on engineering and cybersecurity, and is somewhat competitive to get into. I do not know what to expect entirely, but likely a rover and CTF-like objectives. Unfortunately I do not have too much to talk about with this, as I really don’t know what it will entail.
Reflection
I have three days remaining until I present. This is likely not going to be enough time to make the project work, so when I start making a presentation, I will need to include where it went wrong, and focus on reflection and try to make it funny. Laugh at my pain. I will try more solutions tonight, and I still remain optimistic that whatever happens it will still be better than not having done this at all.
Getting accepted into the ASD program is very exciting, as this is the last opportunity I would have had to apply before I am no longer eligible.
I ma flying out for PyCon on Thursday, and do not feel anywhere near prepared enough. I am terrified. But still excited. It os a great opportunity and I hope it all turns out well.