Organization and division of tasks.
Research of similar project: Nadya Peek, Xavi Dominguez and FabLab Ajaccio.
Set up of website.
Visualizing the steps to be taken.
Defining the materials we will need.
We have two weeks. First one is meant to be mostly for working on mechanical design, second - for machine design. As I’ve mentioned before we are four people, each one will be focusing on main task and supporting the others. But because some tasks can be executed paralelly, we will treat this weekly division (mechanical/machine design) quite fluently, trying to use the time in the best way.
We are not planning the days exactly but more making to-do list with tasks
- creating git repository, shared google docs for documentation and folders for files
- brainstorming about the idea for machine
- collecting inspirations
- dividing tasks
- collecting materials and parts
- sketching the general structure
- reworking some files that we’ve found on inspirational pages (from previous FabAcademy years), creating addictional ones
- lasercutting the test assamblage in cardboard
- making test for kerf in actual material
- reworking the design after testing
- working on a pen holder
- making a mechanical testwith motors
- exploring Gestalt Nodes
- wiring the boards
- testing on example code
- assambling motors and electronics with design and testing
- modifing the code
Dorota: electronics and programming;
Carolina: design and electronics
Coral: website, video, design
Eve: design, lasercutting
While researching on different designs of two-axis machines we got inspired by project from FabLab Ajaccio in 2016.
The files of triangles which are keeping the axises were available, though there were not parametric. We reworked the files and made them parametric in Fusion 360. For the rest of the parts, we are going to create our own designs.
We made a cardboard prototype of the machines in order to determine the design changes that had to be made. Each one of us worked on a different part of the assemblement. We cut the pieces on lasercutter and put them together.
After assembling the cardboard prototype we noticed that we have to:
Work on the middle part - the joint for two axises - to connect them in stable way.
Scale the holes to make the press-fit stable
Rework the sides to make them more stable
Use the final material to test the kerf of the press fit construction
At some point the idea of customizing the shape of the walls came out and the cat-like shape appeared! Everybody knows that cats bring extra value to anything you do!
We put together and reviewed our cardboard prototype. We have realized we need to find a way to hold the rods to the side pieces. We think that it will be good to press fit the pieces as much as possible and then possibly keep the rods from moving with rubber stoppers. We also chose the material that we want to work with plywood 5mm thick.
The side cats need more support so we might need to use thicker wood and cut it with the CNC machine.
The side supports have four extra holes that we do not really need so we will just leave the three corner holes.
The four middle rectangles need to be more stable. For that we will replace them with triangles that also go through the top rod.
On the outside of the cats, we will use modified triangular pieces. We will offset them a bit along the three rods so that we have a specified space where the electronics will live.
We changed fixed a couple of the issues we encountered the day before.
We redesigned the pieces that hold together the two axis and we gave them a triangular shape so that a third rod could go through them. This made the whole structure much more stable.
We also decided to change the design of the side supports so that the aesthetics matched the rest of the machine. Find below some images that outline our brainstorming process. In the end we decided to go for a triangular design. The top of the triangle will be hollow while at the base, we will create a closed space with an inside pocket to hold the electronics. That's what the blue sketch corresponds to.
Today it's a good time for exploration of connections between boards, motors, fab usb and battery. The below schematics shows it in a simple way.
We are going to use battery which have output 12 Volts and 2.1 Ampere. Battery is going to transform the alternating current (AC) into direct current (DC) that we need to run our machine. We will get 220 Volts of alternating current from the socket and transform it to 12 Volts of direct current.
For that I had to connect 4 cables to the battery: two coming from the plug with AC (brown, blue), and two getting out to the board with DC (green,red).
We are going to create a cabled network, the components are: - bridge board, soldered to FTDI cable to provide power and data to the network - Gestalt nodes, each for diving single motor - power supply (12Volts), connected to bridge board
Generally Fabnet is an RS-485 bus (https://en.wikipedia.org/wiki/RS-485) for serial communication system. Multiple receivers can be connected to such a network in a linear, multidrop bus. In our case we are going to connect two motors to drive two axises.
Informations about FabNet:
Credits for Kris Rijnieks for writting a helpful README file in the GitHub repository of the firmware! The things got clearer after reading it!
One has to burn the firmware on the Gestalt nodes to work further with axis movement. Firmware is available on GitHub under this link: https://github.com/imoyer/086-005 You have to download it and go into terminal to the folder which contains makefile.
To burn the firmware on the gestalt board connect all the necessary equipement:
FAB USB to computer and to the node
AVI ISP programmer to the node and your computer
external power supply to FAB USB
Run the Makefile (by running command “make” in the terminal) for burning makefile on the board and setting up fuses.
We are going to program the boards in Python, wiith the use of pygestalt library which contains series of examples to control machines.
To properly install the library follow the README file inside the linked pygestalt git repository.
Once we have the library installed we can run the example codes:
In both of the files one important thing is to change the usb-serial port which enables serial communication.
In the terminal you can list usb ports by typing ls /dev/cu*
Now you have to copy the port name and place it in portName=
Now we can run the code by using command: python single_node.py
IMPORTANT: to run the example you have to get to the folder which contains it: pygestalt-master/examples/machines/htmaa
For controlling the axises we are using this line:
moves = [[0,10],[0,20],[20,20],[20,0],[0,0]]
where you specify the x and y position [x,y] of each step. The upper code will give us the drawing of the square.
The triangle will be:
moves = [[0,20],[20,0],[0,0]]
We were also experimenting with circle drawing. For that one would need a formula which will generate the points and put them in the place of coordinates. We have to specify some additional variables like pi, radius, degrees. WE’ve got the result of circle but with too many points, so the motor was getting a bit crazy.If one would like to polish it one have to reduce the amount of coordinates.
It will be really great to add the z-axis. This would allow us to raise the pen up and down, thus draw the shapes wihch won't be only constructed from one line.
Creating rubber/silicon rings for keeping matal rods inthe place
Creating stronger holdersfor motors (during testing motors were moving more that we thought, thus cracked a bit the holders)
Creating nice holders for electronics
Adding the possibility (writting an application) to generate G-code from black-white bitmaps, and executing this G-code.
SketchMate Zipped Files