A New Tool Part 9

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am bringing another slow progress report. Let’s get started!

In retrospect, I spent a little more time on my project than I would likely have given myself credit for. Nevertheless, I didn’t make my goal of fully painting the case. I had to plan every step before hand, and carry them through.

Early on in the week, I once again sacrificed the texture of my fingertips as I sanded the Pi case. When I sanded the pyramid, aside from only doing half of it, I had the sandpaper flat. Flat sandpaper doesn’t work so well with curved surfaces unless you have some sort of machine to sand evenly. I’m working by hand, without any power equipment. I used different grits, mainly skipping some of the lower ones and working with something a little more appropriate to the quality it’s already on.

The 660 piece I used up was the only one in stock, so I ended up getting and using 1000 grit for polishing it. I will say, though, it wasn’t the surface without blemish I was expecting. I kept getting these rings as if the vertical layers were slightly scaled wrong.

My technique while sanding evolved as I worked. At first, I was just trying to conform the paper to the surface to sand. After a while of mildly frustratingly flimsy sandpaper slowing me down, I folded it over and focused on smaller spots at a time. Later still, my father got in there and gave me a wash cloth to use as a flexible sander block.

After sanding came masking. Now, I have two pieces. The head, and the body. The head is basically a dome with eyes, one of which I hollowed out for the camera. The body houses the Pi and has screw holes on mini shelves and ventilation holes stuffed into a waffle cone “foot” section. After an overnight test on the test pyramid, I painted the eyes first. I got out the blue painters’ tape and covered the whole outside of the head. Then I took a razor blade and cut out the pupils, scratching the lens pupil in the process. Oh well. After spraying that blue, I found a tip online to use some Elmer’s school glue as a mask. I covered the pupils in glue and uncovered the rest of the eyes before the glue finished drying. When I peeled back the glue, I realized this project might not look absolutely perfect, but it’s going to be far from ugly. I missed a few tiny spots with the glue, and still have to do a little cleanup. As it stands now, I have two coats of red paint on the main dome.

The foot is another interesting story. I decided early on I wanted to leave the inside of the case alone. I also added the uneven underside to the immunity. Since glue gets into annoying, little places, I went with that to mask off the inside of the case and the bottom of the foot. However, the inside of the case has some spots I doubt I will ever be able to clean, such as screw holes. So I covered the little holes on the inside, masked off the parts I wanted covered, and applied glue as the positive mask; this is where it stands now, waiting for the globs of glue I used to finish drying. Once that’s done, I will remove the negative mask and paint the lower half. With any luck, I will just have to get the glue out and install the hardware and I will have a tiny prototyping assistant for many projects to come.

Final Question: With any luck, I will be working on the software side by the end of next week, but I still don’t have a way to physically make the high frequency to repulse naughty cats. What would be a good place to look?

A New Tool Part 8

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am taking a little side quest to try out some techniques so I can paint my Raspberry Pi case and have it look good. Let’s get Started.

I decided to paint one or more of my old test prints. The first two were an acrylic paint straight onto the plastic. It didn’t work all that well. I couldn’t even get a small piece devoid of any brush strokes, and I want a smooth finish. On top of that, I was able to easily scrape off part of the paint with my finger nail after it was fully dry.

My next step took the rest of the time for the week. I moved over to a goal of spray painting, so I printed up another pyramid from when I tried to figure out if the percent completed was in terms of time, z axis, or plastic used.

I was thinking of testing both sanded and unsanded surfaces, so I was going to print it twice, but I cut back and only sanded half of it. I still have the original around, but I wanted to leave that one alone as sort of a memory piece. Printing it again reminded me of how difficult the raft was to get off.

After getting most of the raft off, I got out the sandpaper, going through grits of 80, 150, 220, 320, and 600, using water for the fine grits on “waterproof” paper, and I actually got it pretty smooth. I did get the stubborn part of the raft off. After going back and forth on what part of the model to mask off first, I decided on using some blue painters’ tape to mask off the very top and dangling the whole thing off that. I applied two layers of white spray paint, including the bottom (primer included in paint). I let it sit for a day over Sabbath. After it had the recommended 24 hours to dry, I masked off the rest of the pyramid body and painted the capstone yellow.

As I peeled back the masking, I saw a few spots where I didn’t make sure the tape was perfectly creased in there and it leaked in. Lesson learned: use your thumbnail ensure the quality of your masking.

In the end, I like the smoother sides. The little ridges from printing poke out a little, and I’m not sure if they are catching dirt or wearing through, but I think it may be worth it to put the bit of extra effort to make the final product just that much better.

Final Question: I’ve been thinking of including a sub-title for multi-part projects. This one would have been something like: “(Side Quest: Painting Skills)”, but that makes it harder to just edit the URL to jump to adjacent posts. I know I don’t likely have enough regular readers to warrant this question, but should I include subtitles?

A New Tool Part 7

 

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I have a short post because the printer did most of the work. Let’s get started.

The printer took a little over two days to print. It went all right, except one time when the PVC pipe extending the filament holder slowly slipped out. It made a loud sound and I was able to repair the accident before anything print-ending happened.

Cleanup was actually not as bad as I was expecting. As with the practice ring, the slot to accommodate the HDMI, power, and sound needed attention. But the custom eye slot was one of the cleanest to come out of the printer yet. It only had the single most tricky tag to remove of all. After I poked it with a razer blade for a while, my father used a candle to heat a blade to melt it off. I’m a little annoyed some soot ended up sticking, but the artifact I don’t understand is why a tiny hole on the side popped into existence even after a final test print to make sure such a thing wouldn’t happen.

As it stands, I will be painting the eyes at least. This will at least disguise the little hole, but it will also blend in with the camera in case I ever decide to use it as a hidden security camera. One thing I didn’t account for was the paint when making the camera hole. I hope it doesn’t come to it, but I likely will have to drill the hole a little bigger.

Whatever the case, this case was designed for a slightly different Pi. I’ll only be able to use two of the four screw holes, but that should be enough to hold the main board in place.

Final Question: Printing the case turned out to be a full length project. How long do you think I will need to perfect the software?

A New Tool Part 6

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am covering a lot of progress toward a viable Pacman Ghost head for my Raspberry Pi case. Let’s get Started.

Last week, I was stumped with fixing the a mesh representing my Pi camera. I reached out to my fellow TitanCraft members (Patrion MineCraft server of Tango Tek) and one player by the screen name of Rhyno talked me through fixing my mesh. I ended up doing it my own way, but I encountered a recurring motif of the week, having a real person who knows something in the field or program I’m working in is very good way for me to pull the answer to my own problem out of my own head.

I fixed the mesh and got Blender to produce a smaller cut out for the camera. It looked workable, if only I didn’t have to clean out a little bit of gunk blocking the camera from fitting snugly. The potential issue was compounded in my mind because of the awkward angle I’d need to get at it (from the bottom of the case).

I set that aside and turned my attention to the other big problem I wasn’t looking forward to: the ridge to accommodate the Pi’s HDMI, power, and audio jack. I used a cube in Blender to cut off most of the ghost head and I printed the base of it. To my surprise, while it still deformed, it didn’t cave in as badly as I expected, so I was hopeful a small fix could save everything.

I took both problems into a small workshop I recently joined. Both problems were basically resolved, “Tough,” and, “Tough,” but each one came with a “…but here’s why:…” segment. For the first problem, 3D printing is still fairly early on in its history, some cleanup is expected. For the second, I just need to trim away the junk strands and nobody will be looking up and under at exposed infill, and if I paint the whole thing, like I’m planning on doing for the eyes anyway, the paint will cover the hole anyway. While I was at the workshop, the instructor (for lack of a better word) had me plan my next few steps.

I wanted to learn about getting a support structure to work, but my previous attempt months ago didn’t work. The problem then was that I was trying to print an ugly lollipop on its side and the support structure didn’t do anything. This time though, I modeled up a tiny table and it printed correctly, support structure included. The piece was so delicate I busted off two legs when I took it out, but by then, I already learned what I needed for it.

Also a recommendation from the workshop was that I print up the ghost head at a quarter scale. It worked fine without a support structure, but because it was so thin, the printer left a tiny hole in the top.

I expect the full case to be finished next week. But if the Pi needs an ABS case, I guess I know what needs to happen then. I already ran a simple test where I left the Pi to heat up an interrupted print of the base, so I’m hopeful at least.

Final Question: I’m almost done with the hardware part of this project, and it’s taken a while. How long should the software take?

A New Tool Part 5

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I bring part 5 of the construction of my Raspberry Pi prototyping platform with a camera. Let’s get started.

I am behind where I wanted to be. It’s the classic game of Hurry Up and Wait, only I waited too long. Things have to be done in order, and all the stuff where 2.5 hands were required feels like it was at the beginning.

It turns out whatever my intended way to measure the Pi Camera was overly complicated, as I was starting to figure. While I was looking to draw some kind of grid and view it at an angle and get help with the whole bunch of mathematical nonsense that produced, all I needed was the distance out and to either side as if following an upper case T. I didn’t even need to calculate the angle proper, because I could just add a cone with the proper dimensions.

The unforeseen challenge in stock for me this week was and in a way still is getting the model to comply. Long story short, Blender wants me to make quality meshes, otherwise it will crash. At least the stress test looks good for the auto recovery feature.

I made several prototype eyes for my camera to peek through. The first one based on the custom model of the Pi Cam had some gunk in there, but when my father was done introducing the razor to it, the piece fit perfectly and when I held it up to the camera, it could see through it perfectly. However, unlike the Blender model, the printed version had a hole where there was supposed to be a thin spot.

I printed up another version, this time on a higher quality and the circuit board bumped back a bit, so far, an extra bit on the camera didn’t need an extra hole I made for it. And that’s where I am now, modifying the hole model, with limited success. At the moment, I’m thinking I can drop some detail I no longer need, rather than keep at coaxing Blender into doing my will for it.

Final Question: Have you ever known exactly what needed to happen and not known what the controls were to make it happen?

A New Tool Part 4

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am recounting my slow adventures in altering a Raspberry Pi case. Let’s get Started.

First off, I did not reach my intended checkpoint of getting a model ready to print, but I am far enough along, I can cover the specifics in next week’s post.

For this week, I finished Blenderguru’s Beginner’s tutorial and the modeling tutorials where he makes an anvil. I did not follow along, but I picked up a bunch of little, refined tips, like how you usually want to always use four vertices per face unless you intend to use it in a game engine that likes triangles. (Before, I had only heard you want to use three or four, but be consistent.)

While trying to organize, I visited this local, informal technology workshop where my father, the guy running it, and I basically repeated the same things to each other until someone drew a picture. From my point of view, I was hearing “You need to make a cone as part of your cutaway,” meanwhile I had already made a cone to accommodate the camera body. It was only after a while that i figured out I needed to make a cone for the light coming in. I did have a major milestone there though, I measured the bottom part of the case with the caliper in millimeters, and the model for it in Blender Units, and it was just off of a 1:1 ratio. I chalked it up to instrumentation failure and disregarded the two extra millimeters.

My project, as of this writing, has a crude model of the Pi camera loaded along with the Pacman ghost’s head by Darren Furniss on myminifactory.com. LINK When building the model, my father and I overestimated the dimensions each time, rounding up to the next millimeter. I want as little of the camera exposed while still having the whole picture clear of the case. I’m still missing information. I have no idea how wide to make the cone. My proposed method of study is to lay the camera flat on a table and somehow plot out the cutoff between visible and invisible.

Final Question: Plotting out the light cone a camera sounds tedious. How would you calculate it?

A New Tool Part 3

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am continuing on the path to building an anti feline century. Let’s get started.

Last week, I talked about boat port stuff, this week because I had Tango over to review that project. This last week, I actually made a contact with what I hope will be a regular, new resource for help on projects. My long term goals include getting a comments section where people can crowd solve the problem, but as of this writing, I don’t think I’ve had a comment in the first whole year. Maybe I don’t have that set up, but for now, I’m mapping the project up.

So far, I’ve gotten most of the electronics I’ll need, barring the highly specialized speaker/transducer and supporting circuitry; I’ve printed the bottom half of the case and figured on about the orientation everything will be; and I’ve started on the tutorials. Apparently, I forgot Shift-Middle-click moves the camera’s focus point around the scene.

The next step is still to finish learning Blender well enough to model the upper half of the case. Putting the hardware all together will follow after I have something to make the sound. After that, I have software development. I’ll need to research how to use OpenCV and figure out how to make it identify a cat. Once that’s reliable, I can hook up the sound and set it up for operation. Once the prototype is proving effective, I can figure out just how little power in a machine I need and I can build a final version to free up my prototype. The Pi and its camera will stay with the prototype. Any sound setup will be moved to the more permanent unit.

Potential problems include the need to reprint the case with ABS plastic for its higher temperature tolerance. After the prototype has proven itself, the cat in question will likely be scared of the case if he doesn’t challenge it.

Final Question: What possible problems am I missing that I should anticipate?

MineCraft Boat Race Port Part 7

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am presenting my work to update the Boat Race from Titaincraft Season one’s custom dimension, The Above. Let’s get Started.

If you are here from the server and spot the “Part 7” in the title, don’t worry. I’m writing this post as a fresh introduction to the project. If you’re interested in the development of the project, feel free to go back and have a read, and if I post about further development, Part 9 and above will also be available.

The Above’s boat race was originally built by Duke and  2Cubed with testing by dminer78. In the original game, players would wander into an ice cave and get teleported to the lobby where they could pick an arena to play their personal next level in. Each of the five levels has a different maze to navigate, ending with a row of gold blocks serving as the finish line. After completing the last course, the game would award the player with a Tango head, the special currency of The Above’s prize system.

The new edition used Duke’s levels but has many technological improvements over 2Cubed’s programming. The 1.13 execute command’s overhaul means that whole blocks of commands that were running all the time are replaced with one or two commands with a smaller footprint on the server’s CPU, and they only run as often as needed. A planned time trial mode would increase the replay value (besides the Tango heads). As part of this planned feature, there would also be a way to choose what level pack you want, and whether or not to shuffle the levels among other, new level tracks. And thanks to MineCraft’s introduction of functions, I decided to rebuild the game so it could be easily expandable; not only should it be fairly easy to add even more new levels but also new games as well as time goes on. For now, I’m calling it the Modular Game Center.

Working on this project, I learned a lot and overcame many challenges, many with the help of Jamcdonald120 and a few others. If you want to learn about a few of them, go back and read parts 1-6. As of this writing, the Modular Game Center still needs a little work once 1.13 gets a stable release and Spigot gets its update in turn.

Final Question: What game would you like to see added to the Modular Game Center?

A New Tool Part 2

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I am continuing coverage of my new prototyping tool. Let’s get started.

I didn’t get as far as I thought I would this week. The mission this week was to get the top all printed, but that didn’t happen. The problem was that I didn’t already have all the skills to accomplish the task already, mainly proficiency in Blender. That’s my goal for next week, learn Blender well enough to finish modifying the upper half of the case.

As for what did get done, I managed to start developing the camera mount. The case I’m printing for my Raspberry Pi is based off a PacMan Ghost, printed in red. The first print, I used Blender to isolate the target eye from the rest of the 3D model, and printed it on fast. It took about 20 minutes, as opposed to a full day plus if I were doing the regular top on a respectable quality level. I drilled a hole in the printed piece and held it over the camera, using larger and larger drill bits until I didn’t see a red plastic border anymore.

For my second draft, I added a cylinder mesh in Blender and scaled one end down, forming a truncated cone. I used a Boolean filter on difference mode to cut out a hole for the lens. It didn’t fit well enough, so I printed another one with a more embellished cone.

My father taught me how to properly use a Vernier caliper. I already knew about the outside and inside edge measurement spots, but the the depth on the end of the ruler was new to me. Also new to me was the use of the Vernier scale; I never before got the idea that the extra marks on the slider were offset just a little bit. I think I had heard about the extra digit of precision, but only now did I get that only one was supposed to line up at once.

I used the caliper to measure up the camera. The plan from there is to model up a crude representation of it in Blender and use that to design the hole before I try printing up another pass. Giving some new thought to it, I want to angle the camera such that the ghost is looking at you, instead of “using peripheral vision.”

The next step may be boring, but it’s something I need to do. This week, I need to actually watch a few video tutorials on Blender. I already want to go through the videos by Blender Guru, Link to his channel. I’ve already tried going through his videos on the basics of Blender before, but I kept getting distracted. And no wonder! I just added the length of the videos I think I’ll need, the core Blender basics and the modeling basics, and it came out to almost six and a half hours! And most of that is in 45 minute chunks. The basic tutorial includes lighting and rendering tutorials, so in theory I could skip them for now, but I really should know how to use them.

Final Question: I’m at least somewhat likely to get more than one Pi computer in the foreseeable future. What kind of case should I search for to print up for the next one?

A new tool

Good Morning from my Robotics Lab! This is Shadow_8472, and today, I have shelved the boat race port pending review and started on a new project. Let’s get started.

My next goal is a project to keep the cat off the counter. After some early research, I came across OpenCV, an open source computer vision library. Some people have even already gotten it to identify cat faces. Keeping my long-term goal of a social robot in mind, this sounds like the direction to go, rather than a motion detector attached to a deterrent.

Now, to chose the hardware. I don’t know what the system requirements my program will need, so I decided to overshoot and make a “lab assistant” computer to help me with future small projects. A day or so of research later, taking into account Linux as a platform, system specs, community size, and likeliness of support form said community. Of note, I did try to include Fair Trade or equivalent as a criteria, but with electronics, it’s almost impossible to find a supplier who’s sure their product doesn’t include slave labor in their supply chain. In the end I narrowed it down to the Raspberry Pi 3 model B+. Also of note, the Pi is made in the UK (or China in peak times), so my guess is that at least some of the workers were more likely paid a fair living.

The assortment of starter packages is abundant. You can get the Pi alone for about $35, but starter packages tend to include other necessary things like a power cord and case. This led me to look into them and along the way, I learned that the Pi needs a micro SD card to run.

Before I even picked out the Pi for sure, I found a case to 3D print for it. In this case, it’s a Pac Man Ghost by Darren Furniss on MyMiniFactory.com. I started printing one up, but accidentally interrupted it about 10 out of 28 hours into printing the first part. No more heavy objects in front of a pressure based touch screen for me. While the second attempt was underway, the Pi itself arrived, and I set it up. A camera arrived with it, and I even managed to get a picture, though one test picture crashed the system. I haven’t gone to investigate yet.

The upper part of the case is the ghost’s head. Since I’m mounting a camera as part of the setup, I want to have the Pi look out one of its eyes (I’d need a second board to use a second camera). My first thought was to drill a hole but when I saw the narrow walls in the base with infill, I figured pulling the file into Blender and digitally drilling would be more effective. Before I do that, I need measurements so I drill the right hole and can actually mount the Pi camera correctly.

I started encountering small problems when I realized the Pi was mounted upside down in the ghost’s lower half, extending the distance the already short camera’s ribbon cable has to cover. After sundown Saturday, (I let my family have a day of peace from the printer’s constant whining during Sabbath hours) I started up a fast quality of the top. The file online said both parts were supposed to print without a support structure, but as I suspected, a short, long gap didn’t form correctly. I canceled the print, but learned a lot from the partial print.

Pulling the Pi from it’s kit case and putting it in the printed base, I discovered three things: The screw holes don’t quite line up (The case is meant for a Pi B and I have a Pi B+), and the gap in the top is necessary for port access for the power, if not the HDMI, and finally, by comparing the partial print to the 3d model, I discovered the eye does not line up at all with where the camera cable wraps around.

None of the challenges I’ve encountered so far are insurmountable. My only big concern is that the Pi will melt though the PLA case I have for it. Next week, I’m going to come up with a good 3d model for the ghost’s top where I can mount the camera.

Final Question: There is a real possibility I will need to switch to ABS for computer casings. What colors should I start with?