{"id":12202,"date":"2025-10-28T00:00:02","date_gmt":"2025-10-27T23:00:02","guid":{"rendered":"https:\/\/dronesonen.usn.no\/?p=12202"},"modified":"2025-10-28T14:31:51","modified_gmt":"2025-10-28T13:31:51","slug":"hydrawlics-week-10","status":"publish","type":"post","link":"https:\/\/dronesonen.usn.no\/?p=12202","title":{"rendered":"Hydrawlics &#8211; Week 10"},"content":{"rendered":"\n<p><br>Hello and welcome back!\ud83d\udc4b<\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\n<p>This week wrapped up sprint 4. Some things didn\u2019t go entirely as planned, but we still made progress across both hardware and software. Here\u2019s a quick look at what everyone\u2019s been working on\ud83d\udc47<br><br><br><\/p>\n\n\n\n<div class=\"wp-block-media-text is-stacked-on-mobile\" style=\"grid-template-columns:85% auto\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Hydrawlics-Logo-5.png\" alt=\"\" class=\"wp-image-12225 size-full\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Hydrawlics-Logo-5.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Hydrawlics-Logo-5-300x300.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Hydrawlics-Logo-5-150x150.png 150w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Hydrawlics-Logo-5-768x768.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p><\/p>\n<\/div><\/div>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Fredrik:<\/h2>\n\n\n\n<p>Since this week is the end of sprint 4, we were supposed to have a full hydraulic test. Unfortunately, this is not the case. I have been fully preoccupied with another course this week, which has led to very little focus on the hydrawlics project from my end.<\/p>\n\n\n\n<p>However, most of my work this week was things that could run in the background, that for the most part being 3d-printing components. I have been helping out the other members here and there, but my task was mainly to make the four cylinders, and the remaining cylinder attachment rods that I designed last week. This meant that I could do some of the busy work for this project, while also working on the other course. The printed parts are mainly the ones that I designed in week 6, that being the hydraulic cylinder components, with the design changes I made last week.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printing-1-768x1024.jpg\" alt=\"\" class=\"wp-image-12240\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printing-1-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printing-1-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printing-1-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printing-1-1536x2048.jpg 1536w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printing-1-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printed-components-1-768x1024.jpg\" alt=\"\" class=\"wp-image-12241\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printed-components-1-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printed-components-1-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printed-components-1-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printed-components-1-1536x2048.jpg 1536w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Printed-components-1-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p>A while back I bought a long tube of diameter 20mm pvc pipe at Clas Ohlson, and used this as the base of the hydraulic cylinder. Now that I know the exact dimensions and features of the cylinder, I can finally put it to good use. Me and Erling used the prototype lab at school to cut the pipe into 80mm segments with the bandsaw, and drilled 4.5mm holes on the tube surface with the column drill. Erling also designed his manifolds to use the same tube, so we made his segments as well while we were at the lab.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1920\" height=\"2560\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Drilling-1-edited-scaled.jpg\" alt=\"\" class=\"wp-image-12244\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Drilling-1-edited-scaled.jpg 1920w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Drilling-1-edited-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Drilling-1-edited-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Drilling-1-edited-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Drilling-1-edited-1536x2048.jpg 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Pvc-pipes-1-768x1024.jpg\" alt=\"\" class=\"wp-image-12243\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Pvc-pipes-1-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Pvc-pipes-1-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Pvc-pipes-1-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Pvc-pipes-1-1536x2048.jpg 1536w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Pvc-pipes-1-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p class=\"has-text-align-center\">As of the writing of this blogpost, I have not put the cylinders together. But the components are printed, the tube is made ready, and the epoxy glue is bought. The only part missing is buying some more o-rings. This means that early next week, the cylinders should be in place. So keep an eye out for the next weeks blogpost, as we might have been able to do a full hydraulic test of our system<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Lisa:<\/h2>\n\n\n\n<p>After last week\u2019s test, where the valves and pump finally worked together as intended, I had one of those moments where everything looked great, but something still didn\u2019t fully click in my head. The system behaved exactly like it should, but I realized that I didn\u2019t quite <em>understand<\/em> why.<\/p>\n\n\n\n<p>So, this week was less about running new tests and more about connecting the dots. I wanted to understand better what actually happens inside the system, from the moment a new target angle is received, to the point where the arm moves, the valves switch, and the pumps&#8217; state changes.<\/p>\n\n\n\n<p>Initially, it was a bit confusing. I kept mixing up which relay did what, and the logic didn\u2019t seem to add up the way I thought it did. But after some helpful whiteboard sessions, and with some help from the team (and a few \u201cohhh, that\u2019s how it works!\u201d moments), things finally started to make sense again.<\/p>\n\n\n\n<p><strong>Here\u2019s the big realization:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\n<p>Each valve isn\u2019t just one channel, it actually uses two! One for <strong>Extend (E)<\/strong>, and one for <strong>Retract (R)<\/strong>. And the pump? It\u2019s its own little controller that only turns on when the system is in motion. No movement, no pump. Then there\u2019s the <strong>potentiometer<\/strong>, which gives us the live position of the joint, in our case, that\u2019s what we call the <strong>currentAngle()<\/strong>. The code compares that to the <strong>targetAngle()<\/strong>, which is where we <em>want<\/em> the arm to be.<\/p>\n<\/div>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/ChatGPT-Image-27.-okt.-2025-21_53_47-1-1024x683.png\" alt=\"\" class=\"wp-image-12229\" style=\"width:392px;height:auto\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/ChatGPT-Image-27.-okt.-2025-21_53_47-1-1024x683.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/ChatGPT-Image-27.-okt.-2025-21_53_47-1-300x200.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/ChatGPT-Image-27.-okt.-2025-21_53_47-1-768x512.png 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/ChatGPT-Image-27.-okt.-2025-21_53_47-1.png 1536w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>If the two angles don\u2019t match, the system automatically decides what to do:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If <strong>targetAngle()<\/strong><strong> is greater than <\/strong><strong>currentAngle()<\/strong>, it activates the <strong>extend valve<\/strong> to move the arm outward. <br><\/li>\n\n\n\n<li>If it\u2019s smaller, the <strong>retract valve<\/strong> kicks in and pulls the arm back.<br><br>Once the two values are close enough, everything stops. That means that the valves go quiet, and the pump powers down.<br><\/li>\n<\/ul>\n\n\n\n<p>The coolest part? This all happens automatically. If you type in a new <strong>targetAngle()<\/strong> for example, in the serial monitor, the system instantly figures out which way to move and does it \u2014 no manual toggling needed.<br><br>And honestly, I think that\u2019s what made this week so valuable. I already had a general idea of how everything was connected between hardware and software, through the potentiometer, valved and pump, but this week it finally made sense.<br><br>Next week, my main focus will be on refining the setup code and making sure everything runs as expected.I know the wiring and connections are correct, so for now it\u2019s just about making the software align perfectly with the hardware. Once that\u2019s in place, we\u2019ll be ready for a new round of testing to see the full system in action again!<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Syver:<\/h2>\n\n\n\n<p>Hello hello! This week was a bit all over the place, both in terms of tasks and available time for work. Continuing from last week&#8217;s efforts, I finished the inverse kinematic logic. However, implementing the last bit of code for the end effector proved more complex than I expected.<\/p>\n\n\n\n<p>What remained was to fix the end effector segment of the arm, and make sure that its target angle always kept the segment horizontal. This was straightforward to implement, as we had some of the angles available already as bi-products of the inverse kinematics formulas. Specifically, the expression turned out to be;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>joints&#091;2].targetAngle = 180 - phi_1 - phi_2 - phi_3; \/\/ satisfyingly enough<\/code><\/pre>\n\n\n\n<p>Furthermore, I needed to implement the math for the coordinate system offset. Last week\u2019s blog post showed how the maths works, but the actual implementation required careful attention to detail (tunga rett i munnen). There isn\u2019t really much to say about this process, other than it being tedious, iterative and time-consuming. After finally completing the logic, the arm moved how I wanted, with the tip of the end effector placed at the given coordinates:<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video controls src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/Skjermopptak_fra_2025-10-27_23-44-32.mp4\"><\/video><\/figure>\n\n\n\n<p>The pull request for adding this functionality documents much of this week\u2019s work: <a href=\"https:\/\/github.com\/7RST1\/hydrawlics-sim-unity\/pull\/2\">https:\/\/github.com\/7RST1\/hydrawlics-sim-unity\/pull\/2<\/a><\/p>\n\n\n\n<p>I also spent time coordinating with the other members in planning out the implementation, and mapping out the system as it has grown. This included some commenting work on much of the code. I also began designing the logic needed to handle G-code.<\/p>\n\n\n\n<p>This concludes my post this week. There was a lot of problem solving this week. With limited availability and some tricky implementation details, progress was slower than planned. However, I\u2019ve already planned out the next week, and am eager to move forward!<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Emory:<\/h2>\n\n\n\n<p>This week, the plan was to put in a slider on the frontend so the user could decide the amount of detail they want on their image. So I began by researching how to offer a slider that gives the option to adjust the level of detail in your drawing, and after looking a bit, I decided to go for fixing a slider that adjusts the number of polygons that have been created through processing.<\/p>\n\n\n\n<p>So far, I started by doing a fix value to remove just to check that it would work how I wanted it to. With some help from Syver explaining how the frontend part worked and how the backend sends its data there, I could start by making this work.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"294\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM1-1024x294.png\" alt=\"\" class=\"wp-image-12221\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM1-1024x294.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM1-300x86.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM1-768x221.png 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM1.png 1522w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The function above is what I started with to have something to go off of when trying to figure out how to use it in the rest of the code. This is to remove the polygons that have the least amount of coordinates (area of the polygons), so this sorts them from the smallest to the largest.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"308\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM2-1024x308.png\" alt=\"\" class=\"wp-image-12222\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM2-1024x308.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM2-300x90.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM2-768x231.png 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM2.png 1181w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>The other part of the code uses the sorting and decide what contours get removed from the image. So far, it\u2019s the specified value coming from the frontend; for this test, I set it at 50.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"100\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM3-1024x100.png\" alt=\"\" class=\"wp-image-12223\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM3-1024x100.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM3-300x29.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM3-768x75.png 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM3.png 1335w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>After quite a bit of figuring out why the code did not want to work, I first realised that since I originally put the sort function to get the coordinates from the CSV file, it got loaded twice, which made it not want to finish loading. So by changing it to use the contours that are already being used for the image being loaded, it fixed the loading issue.<\/p>\n\n\n\n<p>The part that was removing the set value worked in the beginning when I had set the sort function wrong, as it removed the bigger polygons, but when switching, it didn\u2019t remove anything at all. So had to do some troubleshooting to see why. By printing out what polygons and their values were, I saw it gave me 10 empty, which was just noise from the contours, which is a common thing. So by defining contours right before it uses them inside the backend, this fixed the problem of the polygons not being removed.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"682\" height=\"675\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM4.png\" alt=\"\" class=\"wp-image-12224\" style=\"width:405px;height:auto\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM4.png 682w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/BildeEM4-300x297.png 300w\" sizes=\"auto, (max-width: 682px) 100vw, 682px\" \/><\/figure>\n\n\n\n<p><br>So after fixing this, the frontend shows the image above. This is a good starting point in fixing a slider that someone on the frontend can use to decide the amount they want to be drawn from their image.<\/p>\n\n\n\n<p>Next, I\u2019ll connect the slider value dynamically so users can adjust details in real time.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" \/>\n\n\n\n<h2 class=\"wp-block-heading\">Erling:<\/h2>\n\n\n\n<p>This week has mostly been dedicated to working on other courses and commitments in my life, so the progress on the project has been a bit lacking. <\/p>\n\n\n\n<p>As promised in the last blogpost, I have started manufacturing the manifolds for the hydraulic system for the arm this week. The CAD  models can be seen in the previous blogpost to this.  <\/p>\n\n\n\n<p>The manifolds consist of a pvc tube with glued on 3d-printed fittings. The tube is cut to length on the bandsaw in the prototyping laboratory. For all these operations i am careful to always have another person in the workshop in the case of injury.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5282-768x1024.jpg\" alt=\"\" class=\"wp-image-12208\" style=\"width:362px;height:auto\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5282-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5282-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5282-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5282-1536x2048.jpg 1536w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5282-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n\n\n\n<p>When the piece is cut to the proper length on the bandsaw, i drill the holes for the barb coupling the 4mm pvc tubes on the drill in the column drill with a 4.5mm drillbit to suit the 3d printed inserts. The tube destined for the distribution manifold gets 4 holes, and the collector manifond gets 8 holes. <\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5281-768x1024.jpg\" alt=\"\" class=\"wp-image-12207\" style=\"width:352px;height:auto\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5281-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5281-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5281-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5281-1536x2048.jpg 1536w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5281-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n\n\n\n<p>At the time of writing this, my 3d printer is running at full speeeeeeeed. layer by layer building up the  rest of the components for the manifolds. When everything is ready i will glue it all together and then we are ready for a system test! We need the manifolds completed rather quickly because we switched the water pump to the 10mm pvc tubing that we bought last week, and now we have to go through the manifold in order to conduct tests. the images below show the water pump with the new 10mm hose and printing the rest of the components.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" data-id=\"12213\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/20251027_132247-768x1024.jpg\" alt=\"\" class=\"wp-image-12213\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/20251027_132247-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/20251027_132247-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/20251027_132247-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/20251027_132247-1536x2048.jpg 1536w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/20251027_132247-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" data-id=\"12214\" src=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5284-1-768x1024.jpg\" alt=\"\" class=\"wp-image-12214\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5284-1-768x1024.jpg 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5284-1-225x300.jpg 225w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5284-1-1152x1536.jpg 1152w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5284-1-1536x2048.jpg 1536w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2025\/10\/IMG_5284-1-scaled.jpg 1920w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/figure>\n<\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\" \/>\n\n\n\n<p class=\"has-text-align-center\">That&#8217;s all for now, see you next week!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hello and welcome back!\ud83d\udc4b This week wrapped up sprint 4. Some things didn\u2019t go entirely as planned, but we still made progress across both hardware and software. Here\u2019s a quick look at what everyone\u2019s been working on\ud83d\udc47 Fredrik: Since this week is the end of sprint 4, we were supposed to have a full hydraulic [&hellip;]<\/p>\n","protected":false},"author":116,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-12202","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/posts\/12202","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/users\/116"}],"replies":[{"embeddable":true,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=12202"}],"version-history":[{"count":12,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/posts\/12202\/revisions"}],"predecessor-version":[{"id":12256,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/posts\/12202\/revisions\/12256"}],"wp:attachment":[{"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=12202"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=12202"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=12202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}