Fablab Ecostudio - Fab Academy 2020
Born and bred in Panama City. I moved abroad at the age of 16 and since then I've lived in Germany, China, Australia, Hawaii, Mexico, New York, Thailand, Nepal, and Indonesia.
I am currently in charge of the marketing for the Innovation Centre of the City of Knowledge Foundation, promoting innovation through entrepreneurship in Panama and overseas.
I speak 6 languages and can spin fire!
I didn't realise I liked working with my hands and creating things until a couple of years ago. Since then, I've been obsessed with building, growing, producing, writing, just in general creating whatever I can. I dream of one day empowering myself with all of the tools I require in order to make almost anything, which is why the FabAcademy spoke to me at a spiritual level. I wish to multiply this knowledge and pay it forward, sharing it with my community to rely less on massively produced products that are harming the environment.
I studied business and finance in university. I have experience working in agriculture, but also working for big hotel chains, banks, NGOs in rural areas, etc. As you can see I have absolutely nothing to do with programming, engineering, designing, or anything like that. I currently work for a foundation and I'm in charge of marketing for a series of programs that promote innovation in the region; I've had to force myself to learn to code since I'm required to manage various websites and develop content. I've also had to deal with our local EcoStudio Fablab as part of my job and that's where I was first introduced into the 'maker culture'. I would take a little course here and another one there at the Ecostudio Fablab, and eventually the day came where I was placed in front of a 'Fab Academy 2020' email. I decided to take the plunge after a lot of thought went into it. Even though I know this journey will be especially challenging for me due to my lack of an engineering/designer/programmer background, I'm willing to work hard and get the most I can out of this experience.
Week 1 was my first challenge, and luckily it was what I deemed to be the easiest one for me out of the entire agenda. Our assignment this week was to work through a GIT tutorial and build a personal site in the class archive describing me and my final project.
Throughout the course we will be using Gitlab to publish our website and collaborate on projects. We will each have a local repository where we store the website on our computers, and a remote or global repository where we 'push' our local repository in order to share it with the world. Gitlab is a distributed VCS (Version Control System) which means that every developer has a copy of the repository on their local computers. VCSs helps you store your code, manage the history of your work, synchronise work with various computers, collaborate with other developers, and manage content on a server remotely.
I used this tutorial to learn what GIT is and its workflow. The following are a few concepts that are necessary to understand GIT:
The first step is to install Git, for windows users they should use Gitbash. Our website will be stored on Gitlab, where a default website is already created for each of us. In order to edit the website, a local repository needs to be created. Let's clone the current global repository onto our local computer!
To clone the global repository into the local folder where you want the file to be located, change the directory through Command Prompt by typing cd Users/name/location.
Once you've located the folder, type in git clone with your git@gitlab.fabcloud.org address (can be found on your global repository).
Now, we'll add a username and set our email on Gitbash
In order to push your updated content onto a Gitlab server, you will need a secure communication channel for sharing information, so you'll need an SSH Key.
To create a SSH key, I typed in ssh-keygen -t rsa -C ''your.email@example.com'' -b 4096 and followed the instructions
Once the key has been generated, I copied my key by typing pbcopy < ~/.ssh/id_rsa.pub and imported it unto the SSH Key tab under Settings on Gitlab
We've used three main web development codes to build this website. HTML (structure and content), CSS (design), and Javascript (page behaviour and effects).
I will be using bracket to write the website.
Bracket is a very style-friendly tool, since it allows live view of your website once you have saved your new changes with just one click.
The basic structure of a HTML website comes as:
< !DOCTYPE html>
< html>
< head>
< title> abc < /title>
< /head>
< body>
< h1> heading < /h1>
< p> paragraph < /p>
< /body>
< /html>
< /pre>
< br>
CSS can be embedded in three different ways:
inline: style attribute for single HTML elements inside
< body>< h1 style=''color:blue;margin-left:30px''> < /h1>
internal: using
< style> < /style>
external: at the beginning of a website, include
< link rel=''stylesheet''>
One strategy I use to make a website is to look at the HTML code of existing websites (right-click-> page source on Google Chrome). It helps me to have a starting point with layout. Then, I referred to HTML and CSS references on W3schools.com in helping me with formatting and enriching the website.
I've used a bootstrap template with a pre-made design that has helped me not only fast forward my work, but also learn a lot from the way they'd write down commands and the effects they would have on the design.
Under style.css, I can change font and color, margin size for headers, paragraphs and lists, image formating and footers formatting, background color collectively, instead of making style changes each time manually.
I've also used the experience of past students such as Siyu Chen from last year to learn from what helped her and also any mistakes she could've committed.
This week's assignment was to model a 2d, 3d possible final project using computer-aided design software. CAD involves creating computer models defined by geometrical patterns. These models typically appear on computers as three-dimenional representations of parts or objects which can be easily modified by altering the parameters so as to create more complex objects that closely resemble real life objects. Additionally, many of these softwares simulate conditions in the real world to allow designers to create ever more realistic representations of the models they're trying to create.
My final project consists of a digital watch that allows the user to know how distant the connected bluetooth devices are from the origin and alerts the user whenever a device is getting farther away. I've experimented using Adobe Illustrator, Blender, and Fusion 360 to create a 2D and 3D designs of this project.
Even though I've had to use Illustrator a few times in my past to create various designs, I am much more comfortable with Adobe Photoshop. The main difference between Illustrator and Photoshop is that Illustrator is based on vectors rather than pixels as Photoshop is.
On the left a vector image with smooth lines, on the right a raster pixelated image.
Vector images are fantastic for logos, graphics, and other design elements. Their main attribute is that you can scale them infinitely, the same logo could be on a little soft drink can as well as on a billboard and it will never lose quality and become pixelated. Raster images are better for camera images. Camera images tend to have a lot of colour and colour transitions to show detail, raster images allow for rich and complex multi-coloured visuals that create smooth gradients.
A rastered camera image recreated as a vector image.
I made heavy use of the Pen Tool as well as the curved pen tool to visualise my final project and label all the parts I deemed relevant in order to have a better idea of what was being created.
I quite enjoyed the versatility of Illus trator and the wide array of available tools. It provided me with the flexibility to create smooth lines that made sense, and I could display the idea I had in my head in a much more accurate way that I could with a pencil and paper.
I have never in my life touched a 3D software before. I couldn't even name you a single one. I tried a few 3D softwares this week (Blender, Fusion 360, and FreeCAD) and I gobbled up as many tutorials as I could in this short time. All three of the programs I used had their advantages and disadvantages and I absolutely want to continue growing in Blender and Fusion360. In a short time I could see the immense power to sculpt, render, animate, and so much more.
Blender was a doozy. So many buttons and so many things you could do, after playing around for a little bit I was very excited to learn the possibilities of this software. Luckily I had this fantastic tutorial by an Australian man that calls himself the 'Blender Guru' to teach me how to move around Blender and create my own design.
Switching from object mode, to edit mode, to sculpting mode, and rendering. Learning all of the hot keys. Thinking logically around what makes an object realist; inflating this, solidifying that, making this more glossy, or making that slightly thinner. The most important part of designing is being able to truly observe and communicate through your art what it is that you're observing.
I created this donut on Blender using the tutorial above. There is still much more than could be done to this donut and make it look more realistic, I took advantage of this to get to know the tools Blender provided.
I then attempted to recreate my digital watch on Blender, and I quickly realised how limited my skills were. I'll keep practicing.
After using Blender, Fusion 360 seemed like such an incredibly easy and straightforward software. I'd recommend starting with this one rather than Blender, unless you'd like to feel that immense relief that you sometimes feel when you move from something very complex and challenging to something very clear and simple.
Many of the tools I found on Fusion360 were similar to those you'd find on Illustrator. My favourite feature of this program was that I could insert an image I created of my watch on Illustrator from a top view, trace it with the 'sketch', and then extrude it symmetrically to create something that resembled the watch.
I was unable to add more details to the watch such as the input button or the LED Screen, but at least I could sketch a general visualisation of what the exterior and the parameters of the watch would be.
Week 3 is all about cutting, vinyl cutting and laser cutting. The group assignment is to characterise thw lasercutter's focus, power speed, rate, kerf, and joint clearance. The individual assignments are to cut something on the vinyl cutter, and to design, lasercut, and document a parametric press-fit construction kit which can be assembled in multiple ways.
At our lab we have the Silhouette Cameo. It's quite a versatile machine, which can process various materials at a maximum width of 304mm.
I decided to print out a sticker of the logo of the foundation I work for, because I think it's a fantastic design and it's very on-brand with my style. I used the free Silhoutte Studio software to cut the vinyl. In order to open the image in Silhouette Studio I had to first get the file in a .dxf vector file, which was very easy to do. I already had the image in a .ai vector file so all I had to do was open the image on Illustrator and then 'export' it as a .dxf file.
Afterwards, I just opened the file on Silhouette Studio
I grab the cutting mat, remove the blue adhesive paper which is used to protect the mat, and stick the black vinyl to the cutting mat. I place it in the Silhouette Cameo, press the 'Load' button and now it's all ready to go. On Silhouette Studio I go to the 'Send' tab, adjust whether I want to cut and what I want to cut, and press send.
The laser cutter is an essential machine in a Fab Lab. Laser cutting allows for precision levels and edge quality that would be unable with traditional cutting methods, since the laser beam won't wear during the cutting process. Additionally, laser enables cutting complex designs at faster speeds than other cutting methods.
Laser cutting works by directing the output of a very high intensity light of a single wavelength. In the case of our laser cutter, the wavelength is in the infra-red part of the light spectrum so it's invisible to the human eye. The beam travels from the laser resonator where the beam is created, through the machine's beam path which is a series of mirrors before it finally hits the focusing lens, which then goes through the bore of a nozzle before immediately reaching the workpiece. This high power density is used for rapid heating, which melt or vaporise a material. The materials can range from cardboard and wood, to stainless steel or aluminium.
I then went on to design and test the laser cutter. Properly laser cutting a material, means finding the right balance of speed and power to cut, engrave, or raster a material.
Geometry is awesome. The clean, elegant lines and corners give me so much peace. Hence why I've decided to do a convex regular icosahedron for my personal laser cutting project. An icosahedron is a 20 face polyhedron made out of equilateral triangles that fit together at certain offset angles from each other. Each triangle carres 2 slots on each side for the connector pieces, which are themselves bent in the middle so the triangles can connect at the proper offset angle. The objective of this assignment was to use parametric design to create the lines for the triangle. When I first started this I didn't quite understand what the parametric design was for, I read a couple tutorials which didn't make much sense to me so instead I just drew the lines on my own. After a waterfall of errors I quickly realised the amazing benefits of parametric design and can now appreciate them more than ever.
This looks good right? Wrong.
So the picture above is what my teenage sister would call a "hot mess". I sketched all the lines myself and everything was going well up until I almost reached the end and I kept getting constraint and tangent errors, this means there were physical errors in the lines and the angles I was trying to create. When I tried to go back to fix things it would just create more problems, this swallowed a couple hours of my time; frustration ensued. I just decided to delete everything and start from zero. I went through a few of the previous students' sites and found this one by Patrick Jaruschowitz which made something in my brain click and suddenly I understood what parametric design was all about. I realised that the 'user parameters' that you input yourself serve so that when you want to change a series of lines (for example, maybe they're too short and you need to make them longer) you simply go to Modify>User Parameters> and adjust the size of the line to the desired length.
Essentially, instead of writing 3.5mm every time I want to draw the thickness of the slot, I add my user parameter and set the thickness to 3.5mm and whenever I want to draw the thickness I just write 'Thickness' and it'll pop up. What had taken me hours before, with parameters I was done in maybe 15 minutes.
I exit sketch mode and extrude the triangle to the "thickness" which looks like this:
I then went on to create the connectors. In order for the icosahedron to work, the angle and the thickness had to be correct. I got all the necessary info from wikipedia.
Oh wait no not yet...
Apparently the USB cable that connects the computer to the cutter is broken, gotta get a new one....
Alright got a new cable! Now let's get cutting. Set the cutting speed to 10mms and the power to 80%, press start and let's go.
Cut out a couple, they look good, let's cut the whole thing now.
After cutting 20 triangles and 60 connecters, let's assemble!
Really should've checked the couple I cut out first, the thickness of the slots is too big! It's too loose and it won't fit :(
Gotta come back to Fusion 360 and redesign the connectors. Luckily I used the User Parameters and so I just have to edit the setting and all of the slots change automatically. Technology is great! Now, to print another 60 connectors....
Success! The icosahedron is complete and it's really sturdy! Assembling this was very therapeutic and deeply satisfying after the constant beginner errors I stumbled with. I'll tell you something, I sure learned. Something I would change is I would be much more efficient with the space I used. I feel like I did not maximise the cutting material and wasted too much.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
3D printing is a type of additive manufacturing method, meaning objects are manufactured by adding material layers. In a few weeks we will be covering its opposite, CNC machining, which is a subtractive method that manufactures an object by cutting into an already-existing material.
This week's individual assignment was to design and 3D print an object (small, few cm3) that could not be made subtractively. Additionally, we had to 3D scan an object (and optionally print it). For the group assignment the task was to test the design rules for the printers.
For this week's group assignment we had to test the design rules for the differnet printer(s) in our fablab.
The Ender 3 and the Dremel 3D40 use the 3D printing technique FFF (Fused Filament Fabrication), with which layers of melted plastic are placed on top of each other. The Ender uses a bottom-up style of printing while the Dremel uses a top-down style. Due to the way the filament is placed on top of each other, complex structures or “overhanging” parts are hard to print. PLA and ABS plastic can be used as materials for 3D printing.
Before we get to print, we must first perform proper setup. Calibrating the bed to the correct height, making sure that the proper filament is placed inside the extrusion, and that the proper temperature is reached in the nozzle. We then insert the USB stick into the machine with the readable 3D Printing file and sent it to construct. A step we sometimes do is release a bit of the heated filament to make sure nothign is clogging up the nozzle before constructing.
The Ender uses Ultimaker Cura, which is an open source 3D printer slicing application. It takes a 3D model and slices it into layers to create the G-Code, which is the code that a 3D printer understands. Cura recognizes .STL, .OBJ, .DAE and .AMF file.
For our group assignment, we used a printer test file provided by our instructor Michael. The file includes a range of tests, including tolerance, bridging, overhanging and accuracy.
Here are some important settings we had to deal with:
A big plus we found in this printer is that while we were in the middle of printing the power went out, and when the power finally came back the printer automatically remembered the last recorded position of the extruder and restarted where it left off.
The print took around 5 hours and it started spaghetting' quite early on, becoming difficult to read past the 60 degrees.
For my individual 3d printing assignment I decided to create something simple and practical. I've decided to design a tube that would fit on a toothpaste tube and would help get every last bit of toothpaste out.
I used a parametric design on Fusion 360, extruded it, and created a shell gap in the middle of the structure which is where the toothpaste would go.
I then saved it as an .stl file, opened the Dremel Digilab 3D Slicer software which is the program that our 3D printer uses to read 3d printable files, and transformed the .stl file into a G code that the printer could read.
The printing took about 40 minutes. I had to redo the whole process halfway through since I realised I had to rotate the tube sideways in order for the shell gap to actually appear.
Final product
3D scanning technologies turn atoms into bits. There are two ways to acquire the bits of an object, either the scanner remains stationary (mount it on a tripod when scanning a person) when the object rotates, or the object remains stationary when the scanner moves. Direct sunlight needs to be avoided, since it interferes with infrared light. The scanner that is used at Fab Lab Ecostudio is the Microsoft Xbox Kinect
For the assignment I scanned the head of a 3d printed dinosaur we had lying around in the Fablab Ecostudio. I had to download Skanect and Kinect for Windows SDK v1.8 in order to scan using the Xbox Kinect. I followed the instructions on Skanect to scan, placed the dinosaur head on a flat surface, and (very, very verrrrrry) slowly rotated around the dinosaur head holding the kinect maintaining the same height and distance.
After a bit of cropping and some hole-filling, I was very pleased with the quality of the final result.
In week 4 we focused on milling and soldering the board, this week we've focused on designing our own PCB board based on the echo hello-world board, which is a micro-controller, while adding an LED and a button as additional components. As someone with a background in business, I hadn't learned about circuits since high school. I had to study a whole lot to catch up with my peers and truly understand all of the components that make up a circuit board.
Electricity is the movement of electrons, which creates charges that power up our electronical devices (lightbulbs, phones, etc). A circuit is a closed loop that allows charge to move from one place to another; components in the circuit allows us to have control over the charge.
I used this fantastic tutorial on electronics to get a better grasp on the concepts of voltage, current, resistance, and ohm's law.
A microcontroller or MCU is like a small computer on an integrated circuit. An MCU is usually present in devices and appliances that have an embedded system, which is a system that has a dedicated function within a larger mechanical or electrical system.
We will recreate the following hello world circuit as a reference.
Here is a Roberto explanation of the following components:
1. ATtiny44 (IC1t44): ATtiny44 is our microcontroller, the brains of the operation. It is a programmable component that will dictate what the circuit will do. The ATtiny44 has 14 legs, some of them have specific functions and it is very important to understand which ones are connected to which components. Here's a handy datasheet to understand where these components go:
2. Resistor of 10K Ohm: Used to reduce the flow of the current, we need it to keep steady the flow that goes into the MCU near the VCC and for the reset signal.
3. Capacitor 1uF: The capacitor stores voltage that's used to regulate the flow in the circuit in case there are an spikes of current in the voltage.
4. FTDI: From here we will connect to the FTDI cable that serves to connect the MCU to a USB port and translate the serial language from the MCU to USB language.
The voltage that comes from my computer's USB port is 5V. The current of the LED depends on the model being used, these details can be checked in the Fab Lab Inventory.
Once you know the LED model you can calculate the forward current and forward voltage through here. Turns out I need an 180 Ohm resistor for an LED with 20mA (milliamps) of forward current and 1.75V.
8. Button: The button serves to turn on and off the LED.
We will be using the software eagle which is used for PCB design. We will be using materials that every FabLab has in their inventory, therefore we will upload the fab library into our Eagle Library Manager so we can access these materials. Additionally, we will install the fablab design rules which are the settings of the CNC machine to properly mill and trace the circuit board. You can download the zip files from this link. The file called "fabmodule.dru" is the one for the design rules, and the file "fab.lbr" for the library of the components. Extract the library and design rules into the Eagle folder in your computer, and afterwards just drag and drop the files under "library" and "design rules".
Then on Eagle, go to Library>Open Library Manager, remove the ones that are inside "IN USE" except for "supply" which you'll need for the VCC and GND parts. It won't delete them just remove from the available components in the library. Then go to AVAILABLE and browse the FAB library and select USE, this will add it to your Eagle library.
You'll need to load the Design Rules as well. To do that just go to TOOLS>DRC and then load the file of the DESIGN RULES.
In the schematics window, you can add all of the components you need, based on the hello world reference above. The following are the most important buttons you'll need to remember
It's important to remember that the schematics are just a floor plan for the circuit board, not a visualisation of the physical components. It doesn't matter where you place the components, what matters is the connection.
In the schematic it is useful to add labels to name each extension in the components. Instead of having wires everywhere, you can just label the extension with where it's meant to be connected and the program will connect it for you. It is visually very useful for how easy it is to read the connections.
Once all the components are set and linked, we can switch to the board window. The button to switch to the board window is located on the top bar.
Once you switch to the board window, all the components will be intertwined in the messiest of ways. I tried rearranging them as the program threw it at me but it was too difficult.
This process of rearranging the wires was unnecessarily painful. All the wires were on top of each other and the "autorouter" option barely helped. At the end I decided to delete all of thr wirtes and route it myself, I saved a lot of time.
Once the board is readily arranged, turn on the design rules and check that you have no mistakes. The design rules can be activated by going to TOOLS>ERRORS, this will show a window with all the possible errors in the circuit. Airwire means there is no connection, Overlap is when traces are overlapping, Wirestub is when there's a wire on top of another in the component. Make sure you check this and fix all possible errors
Now turn off all the layers by visiting VIEW>LAYERS SETTINGS and hiding all of the layers except for the top layer. After you've ran the design rules and turned off the layers we're ready to export the image. Go to FILE>EXPORT>IMAGE, the resolution should be 1000dpi and you should choose monochrome.
I opened the image on photoshop to add an outline.
I then opened the image into fabmodules and created some traces:
Sadly my journey had to come to a halt here since our milling machine broke a few days ago. We're getting a new one soon, but in the meantime my website entry will have to end here.
Download FilesThis week we've learned how to use a CNC (Computerised Numerical Control) milling machine. Milling is a substractive manufacturing method which means that material is substracted from the main body. This is the opposite of the 3d printing week we did a couple weeks ago, where we would add material to the main body.
Our assignment this week is to make something BIG. Since I'm moving into a new apartment soon and I own exactly zero pieces of furnitre, I thought I'd make something useful. So I'm making a dining table.
I used Fusion 360 and what I learned on the laser cutting week to create parametric designs of part that would join together easily without the need for nails.
Due to the coronavirus I was unable to go to the fab lab to complete the assignment. I shall finish it as soon as I can.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Mollitia neque assumenda ipsam nihil, molestias magnam, recusandae quos quis inventore quisquam velit asperiores, vitae? Reprehenderit soluta, eos quod consequuntur itaque. Nam.
My partner is a free spirit. The world is his playground and thus he often feels very comfortable anywhere, so comfortable in fact that he's constantly leaving his things behind. His phone, his wallet, and sometimes his keys can be found in the most mysterious places, at the very least we've been able to prove that there are a lot of good samaritans out there willing to return a lost phone.
As much as I enjoy playing treasure hunt, I thought it was time to solve this issue. In comes the ((name TBA)).