{"id":4166,"date":"2020-09-22T13:16:30","date_gmt":"2020-09-22T12:16:30","guid":{"rendered":"http:\/\/dronesonen.usn.no\/?p=4166"},"modified":"2020-10-04T20:43:08","modified_gmt":"2020-10-04T19:43:08","slug":"third-sprint-puck-buddies","status":"publish","type":"post","link":"https:\/\/dronesonen.usn.no\/?p=4166","title":{"rendered":"Third sprint &#8211; Puck Buddies"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Nicholas<\/h2>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Electrical:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"606\" height=\"418\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-27.png\" alt=\"\" class=\"wp-image-4179\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-27.png 606w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-27-300x207.png 300w\" sizes=\"auto, (max-width: 606px) 100vw, 606px\" \/><figcaption> <em>Figure\u00a0<em>1<\/em>\u00a0Arduino pin assignment\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<p>All the parts we use to test are subject to change before the final implementation. They do however work in the same logical way so the software should stay more or less the same even if the parts are changed.&nbsp;<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Current\u00a0BOM:\u00a0<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li> Arduino Uno\u00a0<\/li><li>Potmeter\u00a0(50K\u03a9)\u00a0 <\/li><li>BYJ-48 stepper motor and driver board\u00a0<\/li><li>Simple button\u00a0<\/li><li>10K\u03a9, used as a pull-down resistor (Only pullup internally)\u00a0<\/li><li>3 LEDs\u00a0<\/li><li>Relay module\u00a0<\/li><li> 250\u03a9 resistors (to protect LEDs)\u00a0 <\/li><\/ul>\n\n\n\n<p>Started to connect all the&nbsp;electrical components together to test a base version of the software.&nbsp;&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-1024x768.jpeg\" alt=\"\" class=\"wp-image-4180\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image.jpeg 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-300x225.jpeg 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-768x576.jpeg 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption> <em>Figure\u00a0<em>2<\/em>\u00a0Basic test setup to test the Arduino code\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-28.png\" alt=\"\" class=\"wp-image-4181\" width=\"501\" height=\"294\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-28.png 606w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-28-300x176.png 300w\" sizes=\"auto, (max-width: 501px) 100vw, 501px\" \/><figcaption> <em>Figure\u00a0<em>3<\/em>\u00a0General arrangement for components in box\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<p>However, to make it easier to transport around we decided we wanted to make a box containing all the components. We could then use this box to test all the features of the software while waiting for the real machine to be constructed.&nbsp;I\u2019ll come back next week with more&nbsp;schematics and drawings as well as more detailed reasoning for the different components we ended up using.&nbsp;<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Lots of&nbsp;<\/strong><strong>debugging the Arduino code.&nbsp;<\/strong>&nbsp;<\/p>\n\n\n\n<p>Anders and I have spent a lot of time this week debugging the Arduino code and adding functionality. I\u2019m now&nbsp;going to use the next few paragraphs to highlight some of the issues we faced and how we ended up solving them.&nbsp;<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Get stepper to work<\/strong><strong>:<\/strong>&nbsp;<\/p>\n\n\n\n<p>First of was to get the stepper to work.&nbsp;As most are probably aware of,&nbsp;steppers is based on relative&nbsp;positioning&nbsp;which means that the stepper itself doesn\u2019t know where it is. Only the \u00b5Controller that&nbsp;sends the steps knows where it is supposed to be. Due to this we needed to add a homing\/calibration function that&nbsp;would set the stepper at position 0 when the switch was activated. The limit switch is attached to an interrupt pin (pin 2) to make sure that the&nbsp;0 point is registered as accurately as possible.&nbsp;&nbsp;<\/p>\n\n\n\n<p>Another issues was that we needed to convert between degrees and steps used for the stepper. For testing purposes we are using a&nbsp;&nbsp;BYJ48 stepper motor. If we look at converting degrees&nbsp;to steps here we will notice a problem.&nbsp;The total number of steps for this stepper is 2048 (more or less, some&nbsp;searching points to the gear ratio being different between different manufacturers). That means that 1\u00b0&nbsp;=&nbsp;&nbsp;2048 \/ 360\u00b0&nbsp; =&gt; 1\u00b0&nbsp;= 5.6888&nbsp;steps. Since a stepper only can move&nbsp;whole steps we would lose 0.6888 steps for each degree moved. If the stepper is asked to move from 0\u00b0&nbsp;to 90\u00b0&nbsp;that would mean it would miss a total of&nbsp;61.2 steps or&nbsp;roughly 10\u00b0.&nbsp;Due to this we added an extra function that tries to add the extra steps missing based on the degree target. While still not entirely accurate it\u2019s considerably better than the original solution.&nbsp;&nbsp;<\/p>\n\n\n\n<p>One could of course ask the question why we wouldn\u2019t simply send steps over the serial connection instead of the&nbsp;and eliminate this whole issue. Our reasoning is that by creating this abstraction the user, either a person or an program, doesn\u2019t need to know what kind of stepper and gearing that is used. The \u00b5Controller&nbsp;will be programmed according to parts used and then it will simply convert the incoming degrees to steps for the stepper that is used.&nbsp;If we would have sent steps both the client code, currently Python, and&nbsp;the \u00b5Controller would have to be updated.&nbsp;&nbsp;<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Other stepper implementation:<\/strong>&nbsp;<\/p>\n\n\n\n<p>We deiced to use the standard&nbsp;stepper library&nbsp;as it\u2019s easy to use and works out of the box. However, as is described here&nbsp;[1]&nbsp;the&nbsp;Stepper.step() function is blocking. As we would need the&nbsp;Ardunio&nbsp;to perform several tasks more or less at the same time we couldn\u2019t send all the needed steps at the same time. Instead we placed the&nbsp;Stepper.step() inside a while loop that continually increments it by 1. By doing this we are able to read new serial data and shift the target for the stepper without it needing to reach its original target.&nbsp;<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Serial.parseInt<\/strong><strong>() problems:<\/strong>&nbsp;<\/p>\n\n\n\n<p>So, moving on to our next problem. Slow response from the&nbsp;serial read function in the Arduino code.&nbsp;While doing some testing I noticed that the stepper used an unusually long time&nbsp;changing direction&nbsp;after new coordinates were given. Due to it being late I was tired I decided to just&nbsp;turn a LED on and off with a simple line of code in-between. Using this method I noticed that the&nbsp;LED was staying lit for far too long when&nbsp;Serial.parseInt() was called.&nbsp;So, I went back to the documentation to try and find out how the&nbsp;function worked and why it would be so slow. The answer to the first question is that the&nbsp;Serial.parseInt() function&nbsp;reads the input until either a non-number data is&nbsp;registered&nbsp;or&nbsp;until the timeout reaches 0. The way I implemented the serial communication means that I do not send any&nbsp;\u2018\\n\u2019 (newline) after each message. Due to this the first criteria for the&nbsp;Serial.parseInt() is not met and a such it will wait until the timeout reaches 0. By default the serial timeout is set to 1000ms, and this explained the long delays I noticed. By using&nbsp;Serial.setTimeout() and setting the value to 10ms I greatly improved the response time of the stepper.&nbsp;&nbsp;<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Summary:<\/strong>&nbsp;<\/p>\n\n\n\n<p>We have done a lot of work this week on the software for the project and we have now established the necessary groundwork. This means that the&nbsp;all the core software components now are&nbsp;in place and we can start to create new branches and add features.&nbsp;This is a huge milestone as it allows us to more independently work&nbsp;on&nbsp;different components. We can now start to optimize the&nbsp;Ardunio&nbsp;code, or look at how to implement OpenCV and YoloV3 on a&nbsp;RaspberryPi&nbsp;or another&nbsp;small computer.&nbsp;I also need to start working on the electrical schematics and wiring diagrams.&nbsp;&nbsp;<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Referanser<\/strong>\u00a0<\/p>\n\n\n\n<table class=\"wp-block-table\"><tbody><tr><td>[1]&nbsp;&nbsp;<\/td><td>\u00abArduino,\u00bb [Internett]. Available: https:\/\/www.arduino.cc\/en\/Reference\/StepperStep.&nbsp;<\/td><\/tr><\/tbody><\/table>\n\n\n\n<h2 class=\"wp-block-heading\">Anders<\/h2>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Testing Launching Mechanism<\/strong><\/p>\n\n\n\n<p>Thursday last week we tested our firing mechanism prototype, this prototype is scaled down 50%.<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video controls src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/20200917_135506_001.mp4\"><\/video><figcaption>Video 1: Testing firing mechanism of prototype<\/figcaption><\/figure>\n\n\n\n<p>The issue at hand here is still the fact that we aim to accelerate something more than ten times heavier in our final product, but for now we are pleased with our working prototype and can now start testing more and add functions as we continue working on our project.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Debugging, debugging and more debugging<\/strong><\/p>\n\n\n\n<p>The past couple of weeks have been used mostly to debug our base code to get to a point where it works without to many bugs and we can zero in on things we want to change or add.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong> GUI<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"596\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-29-1024x596.png\" alt=\"\" class=\"wp-image-4186\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-29-1024x596.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-29-300x175.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-29-768x447.png 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-29.png 1224w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Figure 1: First draft of user case relating to our GUI<\/figcaption><\/figure>\n\n\n\n<p>For our GUI (Graphics User Interface) I have started working on a windows application to do the serial communication with our Arduino Micro controller. The plan is to have a working application up within the end of next week for use when testing our system further.<\/p>\n\n\n\n<p>We also plan to have some sort of information sent back to the application to be able to spot trends and optimize our  physical equipment.<\/p>\n\n\n\n<p class=\"has-medium-font-size\"><strong>Creating two modules for software testing<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/20200917_231431-e1600776865105.jpg\" alt=\"\" \/><figcaption>Figure 2: The test module<\/figcaption><\/figure>\n\n\n\n<p>This weekend myself and Nicholas sat down and made two identical modules whit steppers, switches and lights close to what a finished product is imagined, the reason for this is that we now can work remotely and still have the same test condition which makes it much easier for us to help each other when were not in the same room.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Gaute<\/h2>\n\n\n\n<p class=\"has-medium-font-size\">Week 37:<\/p>\n\n\n\n<p>17.09.20:<\/p>\n\n\n\n<p>Fourth gathering. We met up at laserlabben to do some prototype testing on the hockey puck launch-mechanism. Did some major adjustment on the platform about the size of the rotation-hub. <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"598\" height=\"367\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-23.png\" alt=\"\" class=\"wp-image-4175\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-23.png 598w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-23-300x184.png 300w\" sizes=\"auto, (max-width: 598px) 100vw, 598px\" \/><figcaption>  Figur 5 &#8211; About the right size for our prototype <\/figcaption><\/figure>\n\n\n\n<p>19.09.20:<\/p>\n\n\n\n<p>Worked further\non the rotation-hub solution. On the previews version you can see that we don\u2019t\nhave anything holding the launchpad and platform together in vertical\ndirection. <\/p>\n\n\n\n<p>The solution was making some tracks on the vertical side on the <em>glidering, <\/em>so that we could assemble some blocks to keep the launchpad-plate on the <em>glidering. <\/em><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"240\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-24.png\" alt=\"\" class=\"wp-image-4176\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-24.png 600w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-24-300x120.png 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><figcaption> Figur 6 &#8211; The newest design with the vertical-lock-solution <\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"441\" height=\"338\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-25.png\" alt=\"\" class=\"wp-image-4177\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-25.png 441w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-25-300x230.png 300w\" sizes=\"auto, (max-width: 441px) 100vw, 441px\" \/><figcaption> Figur 7 &#8211; Launch hub-solution per now <\/figcaption><\/figure>\n\n\n\n<p>20.09.20:<\/p>\n\n\n\n<p>Me and Halvard had a short meeting\non discord where we discussed some challenges we had stumbled upon. Among other\nthings the new vertical-lock design I made yesterday. We came to the conclusion\nthat we could remove the green blocks since they are locking in both horizontal\nand vertical direction making the green blocks of no use. So nest week I will\ncontinue the work on the <em>glidering<\/em>. <\/p>\n\n\n\n<p>We also made a little colour-suggestion\njust for fun.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"541\" height=\"381\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-26.png\" alt=\"\" class=\"wp-image-4178\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-26.png 541w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-26-300x211.png 300w\" sizes=\"auto, (max-width: 541px) 100vw, 541px\" \/><figcaption> Figur 8 \u2013 Colour-suggestion based on the teamcolour of KIF <\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Halvard<\/h2>\n\n\n\n<p class=\"has-medium-font-size\"> 3D printing,\u00a0research\u00a0and assembly<\/p>\n\n\n\n<p> This week\u00a0I have been doing mostly assembly of our first iteration and research on the materials and\u00a0manufacturing techniques\u00a0which we are going to use\u00a0especially with regards to friction reduction and making the puck glide smooth out of the firing mechanism.\u00a0\u00a0 <\/p>\n\n\n\n<p>We found out that we will have to do something\u00a0to reduce\u00a0the friction between the hockey puck and the plate it will initially glide on\u00a0as well as in the magazines. Since we have scaled everything\u00a050%\u00a0down,\u00a0we also had to 3d print the pucks to get them to fit. This allowed us to\u00a0research different materials as well as different\u00a0manufacturing techniques.\u00a0\u00a0 <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"280\" height=\"382\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-16.png\" alt=\"\" class=\"wp-image-4168\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-16.png 280w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-16-220x300.png 220w\" sizes=\"auto, (max-width: 280px) 100vw, 280px\" \/><figcaption> <em>Figure\u00a0<em>1<\/em>: The first iteration of the firing mechanism, all the electronics are hidden and away from the\u00a0rotating motors.\u00a0\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<p class=\"has-medium-font-size\"> The build\u00a0plate\u00a0 <\/p>\n\n\n\n<p>\n\nI started using&nbsp;plates&nbsp;with&nbsp;BuildTak&nbsp;which&nbsp;has a&nbsp;textured surface, this in turn will leave a textured bottom on the final print. This is why I changed over to a glass&nbsp;plate,&nbsp;this will leave the prints with&nbsp;a&nbsp;glass smooth bottom.&nbsp;&nbsp;\n\n<\/p>\n\n\n\n<p class=\"has-medium-font-size\"> The materials\u00a0and the\u00a0manufacturing techniques\u00a0 <\/p>\n\n\n\n<p>\n\nSome of the materials we are considering&nbsp;using&nbsp;is PLA,&nbsp;TPU,&nbsp;PC,&nbsp;PET-G, ASA, ABS, Nylon as well as other materials which will for example be used as support materials,&nbsp;PVA&nbsp;etc.&nbsp;I also started to look at techniques for making the plastic glide even better. One thing that I was researching this week was the ability to make&nbsp;plastic parts&nbsp;that&nbsp;contain&nbsp;a few ml of&nbsp;a lubricant. This was done by making the g-code print the middle layers at 20% speed making it easy to apply the lubricant with a needle inside the infill structure. This made the oil seep extremely slowly out between the plastic layers, lubricating the bottom of the part.&nbsp;One could also manage the rate at which the oil flows by&nbsp;reducing&nbsp;or increasing&nbsp;the amount of filament&nbsp;extruded&nbsp;at the top and bottom layers. Before&nbsp;any of&nbsp;this&nbsp;was&nbsp;printed,&nbsp;I&nbsp;researched the chemical resistance of the thermoplastic I was going to use&nbsp;by looking up the technical datasheet.&nbsp;After this I&nbsp;tested&nbsp;a&nbsp;small&nbsp;length&nbsp;of&nbsp;each&nbsp;of the&nbsp;filaments&nbsp;that&nbsp;I was going to use&nbsp;to verify that it would not react with the lubricants.&nbsp;\n\n<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-17-1024x768.png\" alt=\"\" class=\"wp-image-4169\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-17.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-17-300x225.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-17-768x576.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption> <em>Figure\u00a0<em>2<\/em>: 2 of the pucks we have produced. the black one is ABS and the white one is PET-G.\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<p>\n\nIn the coming weeks&nbsp;Gaute and&nbsp;I will produce our own values of the materials we are using&nbsp;in&nbsp;the materials lab.&nbsp;&nbsp;\n\n<\/p>\n\n\n\n<p class=\"has-medium-font-size\"> Production of\u00a0our own co-polymer\u00a0 <\/p>\n\n\n\n<p> After doing some research about annealing 3D prints for higher strength we started to think about ways to manage the warping the annealed parts will experience. We found an article\u00a0[1]\u00a0about\u00a0a filament that is almost warp free after annealing. It is based on a polycarbonate core with an ABS shell. This can be produced by 3D printing the filament with\u00a0a\u00a0dual extruder and then making sure that the filament\u00a0isn\u2019t\u00a0bigger than the diameter of the heat-brake.\u00a0We have not yet started with this, but we would like to do some research on this in order to find out if this can give us more usable and lasting prints.\u00a0\u00a0 <\/p>\n\n\n\n<p class=\"has-medium-font-size\"> Non-planar printing\u00a0and other slicer settings\u00a0 <\/p>\n\n\n\n<p> When we are talking about 3D printing, we are usually talking about doing operations in the 2.5 dimension. This means that an 3D object will be turned into many layers of the\u00a03D object\u2019s\u00a0cross section stacked on top of one another.\u00a0This can turn into a problem especially if there are curves on the top of the model.\u00a0\u00a0 <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-18-768x1024.png\" alt=\"\" class=\"wp-image-4170\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-18.png 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-18-225x300.png 225w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><figcaption> <em>Figure\u00a0<em>3<\/em>: Here you can see the problem that the 2.5D slicing produces on a printed object. The shallower the curve is the more\u00a0pronounced the layers are.\u00a0\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<p> To\u00a0reduce the effect this will have on the top surface with regards to\u00a0friction,\u00a0I have started to modify a printer as well as the slicer program to allow us to have a non-planar printing surface. I will update further when we start printing using this method.\u00a0For the full code and documentation on the non-planar slicer see this link\u00a0[2]\u00a0 <\/p>\n\n\n\n<p class=\"has-medium-font-size\"> Ironing\u00a0and\u00a0initial layer horizontal expansion\u00a0 <\/p>\n\n\n\n<p> In one of the slicers I use, Cura to be specific you now have the option to iron the top surface of the print. This will almost remove the typical 3 printed lines and marks on the top of the print.\u00a0This will also make the top layer smoother and this will result in less friction between the pucks when they are stacked on top of one another in the magazine assembly.\u00a0\u00a0 <\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"491\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-19-1024x491.png\" alt=\"\" class=\"wp-image-4171\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-19.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-19-300x144.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-19-768x368.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption> <em>Figure\u00a0<em>4<\/em>: The option in the slicer\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"457\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-20-1024x457.png\" alt=\"\" class=\"wp-image-4172\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-20.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-20-300x134.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-20-768x343.png 768w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-20-604x270.png 604w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption> <em>Figure\u00a0<em>5<\/em>:\u00a0The part on the left is the regular top\u00a0layer\u00a0and the\u00a0one on the\u00a0right is the ironed top\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<p> The\u00a0initial layer horizontal expansion\u00a0option is a way to reduce the squishing effect that the nozzle has on the first layer. This was especially important when we were printing the wheels that are going to drive the puck. I found that the bottom layer would be extruded 0.3mm wider than what was designed. Since\u00a0Cura has an\u00a0option for this I just divided 0.3mm\u00a0by 2 and plugged in -0.15mm\u00a0in the slicer settings.\u00a0This means that the fist layer will be printed 0.15mm smaller than the next layers.\u00a0\u00a0 <\/p>\n\n\n\n<ul class=\"wp-block-gallery columns-1 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"480\" height=\"187\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-21.png\" alt=\"\" data-id=\"4173\" class=\"wp-image-4173\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-21.png 480w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-21-300x117.png 300w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><figcaption> <\/figcaption><\/figure><\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"422\" src=\"http:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-22-1024x422.png\" alt=\"\" class=\"wp-image-4174\" srcset=\"https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-22.png 1024w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-22-300x124.png 300w, https:\/\/dronesonen.usn.no\/wp-content\/uploads\/2020\/09\/image-22-768x317.png 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption> <em>Figure\u00a0<em>6<\/em>: The\u00a0slicer compensates -0.15mm\u00a0for the squish\u00a0in the\u00a0first layer.\u00a0<\/em> <\/figcaption><\/figure>\n\n\n\n<p class=\"has-medium-font-size\"> Referanser <\/p>\n\n\n\n<table class=\"wp-block-table\"><tbody><tr><td>[1]&nbsp;&nbsp;<\/td><td>[Internett]. Available: https:\/\/scitechdaily.com\/new-army-multi-polymer-filament-tech-turns-low-cost-3d-printers-into-high-tech-producers\/. [Funnet 18 09 2020].&nbsp;<\/td><\/tr><tr><td>\u200b[2]&nbsp;&nbsp;<\/td><td>\u200b[Internett]. Available: https:\/\/github.com\/Zip-o-mat\/Slic3r\/tree\/nonplanar. [Funnet 17 09 2020].&nbsp;<\/td><\/tr><\/tbody><\/table>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nicholas Electrical: All the parts we use to test are subject to change before the final implementation. They do however work in the same logical way so the software should stay more or less the same even if the parts are changed.&nbsp; Current\u00a0BOM:\u00a0 Arduino Uno\u00a0 Potmeter\u00a0(50K\u03a9)\u00a0 BYJ-48 stepper motor and driver board\u00a0 Simple button\u00a0 10K\u03a9, [&hellip;]<\/p>\n","protected":false},"author":77,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[62,1],"tags":[63],"class_list":["post-4166","post","type-post","status-publish","format-standard","hentry","category-smartsystems2020","category-uncategorized","tag-puck-buddies"],"_links":{"self":[{"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/posts\/4166","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\/77"}],"replies":[{"embeddable":true,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4166"}],"version-history":[{"count":1,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/posts\/4166\/revisions"}],"predecessor-version":[{"id":4188,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=\/wp\/v2\/posts\/4166\/revisions\/4188"}],"wp:attachment":[{"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4166"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4166"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dronesonen.usn.no\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4166"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}