My name is Alberto Raygada. I'm happily married with Kathya Monge and have two children: Pablo (16) and Maria (14).
Even though my professional background is in business administration I've always been interested in knowing how electronic and mechanical devices work and I love to make and experiment with microcontrollers and coding.
I'm too a VBA (Visual Basic for Applications) developer specialy in MS Excel solutions. My desire is to build new products that can be of benefit to society and maybe a good business opportunity too!
Project description.
I wish to create a portable device, powered by solar energy, that serves as a led light lantern and a mosquito repellent at the same time by generating ultrasonic frequency up to 22,000 hertz.
The device consists of a folding or collapsible structure that allows a portable function and that facilitates the process of solar charging, through two photovoltaic cells of 5 volts that allow to charge a battery of Lithium Ion of 3.7 volts. It consists of a circuit of 10 light emitting diodes (led 5050) of type SMD (Surface Mount Device) and a circuit generating ultrasonic frequencies above 22,000 Hertz that produce the repellent effect of mosquitoes and other insects.
I want the lantern to allow a light source that, because it uses solar energy, is useful in areas that do not have access to conventional electricity, which also has a repellent functionality of harmful insects such as mosquitoes among others.
Assignment: Plan and sketch a potential final project
My project consists of a portable device, powered by solar energy, that serves as a led light lantern and a mosquito repellent at the same time by generating ultrasonic frequency up to 22,000 hertz.
The device consists of a folding or collapsible structure that allows a portable function and that facilitates the process of solar charging, through two photovoltaic cells of 5 volts that allow to charge a battery of Lithium Ion of 3.7 volts. It consists of a circuit of 10 light emitting diodes (led 5050) type SMD (Surface Mount Device) and a circuit generating ultrasonic frequencies above 22,000 Hertz that produce the repellent effect of mosquitoes and other insects.
Allow a light source that, because it uses solar energy, is useful in areas that do not have access to conventional electricity, which also has a repellent functionality of harmful insects such as mosquitoes among others.
This is one of the possible circuits that can generate ultrasonics frequencies
This is one of my first tests of circuit application in a breadboard
The following video shows an origami application that might work for the collapsible feature of my project
I made a model in origami...
This is another example of the collapsible structure that might adopte my lantern
The assigment for this week is: Model (raster, vector, 2D, 3D, render, animate, simulate, ...) a possible final project, and post it on your class page
Raster is one of the two kind of image files (the other one is vector); it is made of pixels (short for picture elements), that are tiny colored squares, and it is more like painting rather than drawing. Raster images (also known as bitmap) are very common in jpg and png formats, use mainly for web purposes. In raster pictures you can blend colors to make the transition between different colors. A photograph is a good example of raster images. They are not good for use in digital design because when you scale them become blurry
To model a raster image I took a photo of my origami model for the collapsible feature of my lantern proyect and saved it as a png format. I used the program GIMP to open the file and took 4 screenshots at different zoom scales (100%, 249%, 400% and 700% respectively) as following:
As the picture is zooming from its actually size to a 400% size it is possible to see more and more the structure of pixels and the blurry effect of the picture.
On the other hand, vector is a kind of images made of group of shapes that are mathematical calculated. Vector graphics are made of path (strokes) that connect points (nodes) to form the shapes. Because that reason vector images are consistent when its size changes, in other words they can be scaled without any problem. For those reasons vector images are used for Computer Aided-Design (CAD) purposes.
2D design is refered to the digital images that are models of two dimensions, such 2D geometric models. Therefore, a origami sketch will serve as a good example of a 2D design vector image. For that porpose I imported, in the software Inkscape, a picture of the origami model that I plan to use as the center body of my lamp, that I get by screenshotting a video tutorial. That picture is a raster image in png format. The idea is to vectorized that picture with the draw tool of Inkscape to obtain a 2D vector model I can use later with the laser cutting machine.
The next pictures show the raster png image of the origami sketch of a tower:
The next screenshot shows the result of the vectorization of the origami model:
3D design is the process of modelling a mathematical representation of any three-dimensional surface of an object using specialized software like, for example, Tinkercad or 123D Design. I chose the software AutoCad 123D to make my firt attempt to a 3D design. I made two models one for the tap of my lantern and the other as a support for the 10 leds lights.
To complete this assignment I consulted the following sources:
Vector-conversions.com Wikipedia Tutorial origami collapsible tower (https://www.youtube.com/watch?v=sUyTAgTHmwE)Books:
- Getting Started with CNC, BY Edward Ford. 4/CAD: Draw or Model Something. Pages 55 to 66. - Make: 3D CAD with Autodesk 123D by Jesse Harrington. 123D Design. Pages 33-38.The assigment for this week is:
Individual assignment: cut something on the vinylcutter design, make, and document a parametric press-fit construction kit, accounting for the lasercutter kerf, which can be assembled in multiple ways.
Group assignment: make lasercutter test part(s), varying cutting settings and slot dimensions
Press fit, also known as interference fit, is a mechanism use in computer aided fabrication that allows two parts to be fastened, by the effect of friction, after the two parts are pushed together.
I wanted to use a pentagon shape in the designing of my press fit assignment. I choose the software Rhinoceros to create the 2d and 3D design. The next picture shows the initial work, in wich I began drawing a pentagon with a height of 75 milimeters, then I drew, as guide lines in the Default layer, a circle of a diameter of 150 milimeters and and 10 diameter lines touching the border of the circle going through each vertex and edge of the circle, usign the snap function in the on state. I painted the guide lines in black and the other curves, in the Layer 1, in red. With the offset function y copy two addional lines paralel to each guide lines at 1.5 milimeters of distance, in order to create the slits of 3 milimeters that will allow the pieces fasten each other.
The next pictures show the result after being aplied the function Trim, wich allowed me to eliminate the some of the internal lines getting left only the slits and the external borders of the shape. I decided only to keep the slits that corresponding with each edges of the pentagon.
The next step is the estruding process of the 2D figure in order to get the 3D design. For that porpose I use the Estrude curve (EstrudeCrv) function, giving a thick of 3 milimeters that is the thickness of the MDF sheet.
The next picture shows the result of the estruding process:
I copy the shape with the function Copy...
Then I rotated one of the figures 90 degrees in its horizontal axes and move it in order to put together the two shapes interlacing them by its slits.
I save the Rhinoceros file in the next address: Press fit pentagon
I used the software Inkscape to prepare the pdf file with various copies of the base figure.
I save the Inkscape PDF file in the next address: Press fit pentagon
The cutting process was made in one of the machines we have in the Fab Lab Veritas: The CamFive 900x600 (see next picture).
I failed in my firt cutting attempt because the pieces resulting to small and the cutting machine only grave the lines. One of my classmate help me to prepare the pdf file in Adobe Ilustrador. Later I realized that the problem was in the measurements of the template that were not fixed in 900 x 600. The next picture shows part of this failling cutting process.
With the new Ilustrador file I was able to make a second attempt. First I open the file in the software Corel Draw and change the color of the edges to red and very fine contourns and finally save it as a PLT format.
I open the Corel Draw PTL file in the SmartCarve software. Firt, I set the configuration applied for MDF material: max power in 55, min power in 50 and speed in 12. Then I put the MDF sheet on the bed of the cutting machine, calibrate the laser in 6 milimeters and set the origin point. Finally I began with the cutting process with the command Curve out.
The next pictures show the cut pieces and the firt arrangement that I made:
I made the group assignment with the next two classmates: Esterlyn Quesada and Esteban Orozco. We designed a kind of little table with ten pieces based in two patterns, using paperboard. The process were basically the same that I have described but in this case we set the max power in 60, the min power in 55 and the speed in 40.
We put all the pieces together:
Our table was so strong that was able to support a notebook:
To complete this assignment I consulted the following sources:
WikipediaThe assigment for this week is:
Make an in-circuit programmer by milling the PCB, then optionally trying other processes.
A microcontroller is basically a computer on a chip. It contains a processing unit (CPU), memory (ROM and RAM), serial communication ports, analog to digital converters (ADC); they are called microcontroller because they are small and they allow to control actuators (motors and other devices).
The ATtiny45 is one of the ATMEL AVR series family of microcontrollers that has 8-bit core and fewer features, fewer I/O pins, and less memory than others.
The FabISP is an in-system programmer for AVR microcontrollers, designed for production within a FabLab. That is, it allows you to program the microcontrollers on other boards you make, using nothing but a USB cable and 6-pin IDC to 6-pin IDC cable. It's based on the USBtiny and V-USB firmwares, which allow the ATtiny44 to perform USB communication in software. Programming can be done through avrdude. The schematic (PDF) is super simple: USB connector, ATtiny44, and 6-pin ISP header, with assorted passive components. I started with the Eagle files for the USBtinyISP, although there's almost nothing left of it. Most of the parts for the FabISP are in the FabLab inventory. Exceptions include the Mini-B USB connector, 12 MHz crystal ((Digi-Key)), and 18 pF capacitors for the crystal (Digi-Key). The following picture shows the FABISP:
I replicate the fabisp schematic in the software Eagle as it is shown in the next picture.
Then I run the Generate/switch to board function with the next result:
We use the milling pcb software FlatCam. The process of the FABISP pcb production is shown in the next pictures:
CNC milling machine and control box:
Detail of the gerber file with de G-Code:
These are the two types of drill bits used in the manufacturing process of the pcb:
It is advisable to weld the smallest components first. I started with the ATtiny IC, identifying the notch, so that it is in the lower left. The first pins I soldered were 1 and 8, which are diagonally on the IC, which facilitates their initial fixation and welding the successive pins.
I first applied some soldering paste to the pads on the board and to the IC pins.
We performed some examples in the Arduino platform in order to learn about the basic electronic concepts.
Arduino is an electronic microcontroller platform that allows to make - in a very practical and fast way - the prototyping of electronic projects. To carry out the examples I have used an Arduino Uno that has 14 digitals pins (IN/OUT), an USB connector (that allows computer communication), 6 analog in connectors, power connections (grounds, 3.3 v, 5 v) and an ATMEGA 328P microcontroller.
The objetive of the Blink circuit example is to program the Arduino microcontroller to flashing a light emitting diode (led) intermittently. I used a yellow LED, a 330 ohms resistor, a breadboard and some jumper wires to connect the ground and the 5 v source and the pin 13 to the breadboard and the LED to ground.
The following video shows circuit and the LED blinking every half a second:
The code of this blink test is the following:
The Button circuit example shows how to program a function to turn on and turn off a LED by keeping pressing or release a button, respectively. I used a red LED (output device, pin 13), a 220 and 10k ohms resistors and a button as a input device (pin 2). Following you can see the layout of the circuit in a breadboard and the Arduino code.
In the Array example we can see how a group of LED's can be setting up and turning on and off by the use of an array statement. I used 6 LED's and 6 220 ohms resistors. The following video shows the result of this circuit.
In the next screenshot you can see the code of this exercise:
In this example I learned to use the AnalogRead and AnalogWrite functions to measure and apply different levels of voltage to a LED respectively and how to use the serial monitor of Arduino. I used a potentiometer, that is a variable resistor, a LED's and a 220 ohms resistor. The effect of using a potentiometer to control the brightness level of a led is showed in the next video.
The code of this exercise can be seen in the next screenshot:
Next picture shows the IDE Arduino serial monitor with the data changing as the potentionmeter was being variated:
A photoresistor is a light-controlled variable resistor; in this example I learned how to use it applying the constrain function, that allows to limit a value to a given range value. The next video shows the result of this circuit.
The code of this exercise can be seen in the next screenshot:
Next picture shows the IDE Arduino serial monitor with the data changing as the photoresistor was covered with an object that changed its exposition to light:
A servo motor is a rotary actuator that allows for precise control of its rotation position and velocity. This example shows how to control the rotation of a servo motor by a potentiometer. The next video shows the result of this circuit.
The code of this exercise can be seen in the next screenshot:
To complete this assignment I consulted the following sources:
Wikipedia FabISP, a fab-able in-system programmer - Created by Roberto GaritaBooks:
- Practical Electronics For Inventors. Scherz and Monk. Chapter 13. Microcontrollers. Pages 859 to 865. - Complete Electronics Self-Teaching Guide. Boysen - Kybett. - Electronics for Dummies. Wiley Brand.The assigment for this week is:
* group project: test the design rules for your printer(s)
* design and 3D print an object (small, few cm) that could not be made subtractively
* 3D scan an object (and optionally print it) (extra credit: make your own scanner)
A 3D scanner is a device that allows you to analyze an object to extract information about its shape and appearance. The information thus obtained can be used to create three-dimensional models of the scanned object.
There are many non-contact scanning methods, some of them are for example triangulation, structured light and photogrammetry. In the triangulation method there is a technique called Manual scanning with infrared led. This type of scanning uses the infrared invisible LED light to meassure the distance between the device and the object. As a result a print cloud is obtained and then transformed into a mesh with the help of a special software (Skanect, Kscan3D and ReconstructMe). The resulting data ca be combined with the textures and colors obtained from a camera that's integrated into some scanners,that provides a tree-dimentional, multicolored object. Because of the effect of the ambient light in the accuracy of the colors, this method often provides ill-define and low resolutions object models. Kinect 1 and Sense are examples of manual scanner with infrared led.
I selected a Kinect V1 as a scanner to do my individual assigment. Kinect V1 was a product that combine Microsoft software and hardware. Kinect V1 hardware included a range chipset technology with an infrared projector and camera and a special microchip that generates a grid from which the location of a nearby object in 3 dimensions can be developed. This 3D scanner system called Light Coding employs a variant of image-based 3D reconstruction.
I bought locally a second hand XBOX kit to obtain the Kinect scanner, but I could'n find the special USB AC power supply cable adapter that is requiered to connect it to the computer, so I decided to built one. Firt, I investigated about the layout of the wires of the Kinect cable and made the following diagram:
I got a power supply adapter with an output of 12 v and 2.5 A and an old USB cable. Then I cut the cables, and tinning and solder the wires together, jointing the 3 ground wires (from the kinet, the USB and the power supply) and joining the other cables according to their corresponding colors (green to greeen, red to red and so on) as it is showing in the next pictures:
Then I covered the wires with medium temperature silicone in order to keep them insulated:
Finally, after almost 3 hours and a lot of patient, I got my DIY Kinect USB power supply adapter:
I used Kscan3D software (thanks to our classmate Esterlyn Quesada's recommendation). I made a scanned of my wife. First, in the Scan mode, I chose the Enable Batch Scanning option, with a 10 scans every 4 seconds. The mesh options were Generate: Mesh and Alighment: Mesh Geometry. My wife was sitting in a swivel chair and she moved all around while the Kinect was scanning. The following video shows part of the process:
I use the functions Combine to mix the resulting scannings and then the funcion Finalize with a texture size of 4096x4096. Next pictures show the result of the process:
The following link open the stl (Standard Tessellation Language) file that I saved: Kscan3D Kathya.stl
The printing process of my scan design was performance in a 3D printer of the FAB LAB Ka Trare of the Universidad Nacional a Distancia - UNED (thanks to our classmate Esterlyn Quesada) and the proces is show in the following pictures:
I used the 123D Design software to design a gear. The following pictures show the process:
The following link open the stl (Standard Tessellation Language) file that I saved with the gear design: 3D Gear.stl
The 3d printing process of my design was made in the lab of the Saint Jude School (thanks to my classmaid Juan Carlos). The following pictures show the printing process:
this is the printer machine:
Primer se redujeron las dimensiones de la figura en el programa Cura, de 50 mm a 34 mm.
On the control panel, the machine was started to heat it so that it could change the color from white to purple.
Then the extrusion control was used to change the filamente from white to pink.
The change of color began to happen until the previous residue filament leaves completely.
Then the machine was ready to print... The star button is in the the control panel:
The next pictures show the last part of the print process until de finish piece:
For the group work we visited the installations of the representative company in Costa Rica of the international firm 3D Systems, where they gave us a talk about the different types of scanners they handle (Capture, Artec Eva and Artec Spider and Sense, see the following images).
Each one of the groups executed a scan of a different object. In our case we scanned a miniature figure of the Pisa Tower, of a height of 110 mm and a diameter of 50 mm. Next video shows the scanning process with an Artec Spider scanner:
The following video shows the result of the scanner in the computer software Artec Studio.
The next video shows the scanned image:
To complete this assignment I consulted the following sources:
WikipediaBooks:
- Make: Design for 3D Printing - Bernier, Reinhard, Luyt. 3D Scanning methods - Pags. 26-29.The assigment for this week is:
* Redraw the echo hello-world board, add (at least) a button and LED (with current-limiting resistor) check the design rules, make it, and test it extra credit: simulate its operation extra credit: measure its operation
The Serial Peripheral Interface bus (SPI) is a synchronous serial communication interface specification used for short distance communication, primarily in embedded systems. SPI devices communicate in full duplex mode using a master-slave architecture with a single master. The master device originates the frame for reading and writing. Multiple slave devices are supported through selection with individual slave select (SS) lines.
A synchronous circuit is a digital circuit in which the changes in the state of memory elements are synchronized by a clock signal. In a sequential digital logic circuit, data is stored in memory devices called flip-flops or latches. The output of a flip-flop is constant until a pulse is applied to its "clock" input, upon which the input of the flip-flop is latched into its output. In a synchronous logic circuit, an electronic oscillator called the clock generates a string of pulses, the "clock signal". This clock signal is applied to every storage element, so in an ideal synchronous circuit, every change in the logical levels of its storage components is simultaneous. Ideally, the input to each storage element has reached its final value before the next clock occurs, so the behaviour of the whole circuit can be predicted exactly. Practically, some delay is required for each logical operation, resulting in a maximum speed at which each synchronous system can run.
The diagram below shows the communication scheme of the Single Master to Single Slave, wich is a basic SPI bus example:
I used Eagle Software to design a SPI with an aditional led and button. Firt I added the next components from de FAB Library: ATtiny 45, 2 Four pin headers, a led (LEDFAB 1206), a 6 pin header (MA04-1), a button (6MM_SWITCH), two resistors (100 a 220 ohms). The next picture shows the final result of the schematic:
You can find the Eagle schematic file in the next link :
The next picture shows the final result of the board:
You can find the Eagle board file in the next link :
To complete this assignment I consulted the following sources:
WikipediaBooks:
- Make Your Own PCB's with EAGLE: From echematic designs to finished boards - Simon Monk.
The assigment for this week is:
* make something big
Computer numerical control (CNC) is the automation of machine tools by means of computers executing pre-programmed sequences of machine control commands. The part's mechanical dimensions are defined using computer-aided design (CAD) software, and then translated into manufacturing directives by computer-aided manufacturing (CAM) software. The resulting directives are transformed (by "post processor" software) into the specific commands necessary for a particular machine to produce the component, and then loaded into the CNC machine.
I chose to make a stool for my this week assignment. I used Rhino software for the design. The original design of my stool consisted of 4 pieces: two legs of 452.10 mm high and 202.28 wide, the base of the seat of 410 mm long and 245 wide and a crosspiece as the center of joining parts of 184.6125 mm high by 454.1973 mm wide.
You can find the Rhino file of the original design in the next link :
The original design was made to be built of plywood of 18 mm thick, however only 9mm material was available therefore I had to cut twice each piece.
The day I made the cut I shared the workshop with my classmate Juan Carlos for which we put all the pieces of both projects in a CorelDraw software single file.
The CorelDraw file could be found in the next link :
The stool was ready and strong enough to support my weight: 200 pounds.
To complete this assignment I consulted the following sources:
WikipediaBooks:
- Make: Getting Started with CNC. Edward Ford.
The assigment for this week is:
Read a microcontroller data sheet program your board to do something, with as many different programming languages and programming environments as possible extra credit: experiment with other architectures.
Embedded systems programming is the programming of an embedded system in some device using the permitted programming interfaces provided by that system.
An embedded system is a computer system with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. Embedded systems control many devices in common use today. Ninety-eight percent of all microprocessors are manufactured as components of embedded systems (Wikipedia).
I had many problems with my board for several reasons: the cooper tracks were very thin so they were easily damaged and we had to drill the holes in the pads of the pin-headers manually with a dremel. So that in order to programm my board it was necessary to solder some wires directly to the IC pines.
To complete this assignment I consulted the following sources:
WikipediaBooks:
- Make: Getting Started with CNC. Edward Ford.