Saturday, November 7, 2009
Trex vs HM3DP
Thursday, October 8, 2009
Wednesday, October 7, 2009
Did I say It prints 3D objects?
Thursday, September 24, 2009
Rapid prototyping technology
Is the HM3DP green? yes and no. It does not uses any material that pollutes but the industry that makes it does one way or another.
Products needs to be designed and manufactured much faster then 20 years ago and everyone is on a rush to put their products on market. That's when a rapid prototype machine comes handy.All prototypes were either machined or modeled by hand before the rapid prototype machines and it would take a week or two to get a prototype part for evaluation . With the rapid prototype machine one can design and have a prototype part on the same day.
There is more then one way to skin a cat. Different processes have being used to get parts done but still it's all about the same principle, get a 3d cad computer model and slice it into thin layers then build a part from those layers. I think that the first one to use this process was Stereolithography it uses a resin that hardens with a laser beam to build the parts layer by layer and it's called "Sl process" still the best process to make accurate parts.Another old processes is called "LOM" laminated object manufacture , it cuts the slice contour layers from paper or wood laminate then glue it together to form the parts.The new ones are "FDM" Fused deposition modeling, "3d printing"the name says it all, "SLS" selective laser sintering, and the list goes on.
FDM melts a thin abs rod and build the parts layer by layer . It's the machine to get if you want a fully functional part but resolution is not the best one, layer thickness is about 0.25mm.
3Dp gets you one of the best looking parts and it print in colors but parts are not strong as the the ones made by FDM. One could infiltrade the 3dp parts with epoxy but I've no idea how strong it gets.
SLS selective sinteres a nylon like powder to bond the particles together and parts are strong.
This are the processes I'm familiar with , there is a lot more processes out there like 3d printing using UV resins, a 3d printer that uses metal powder, 3d printing using wax and many others.The build material to use on this machines is not cheap it goes from 100 to 300 dollars per kilo and some of this machines uses a support material to build the parts taking the cost of build material even higher. It's like when you buy a new cheap desktop printer you pay something like 100 dollars for it and pay 80 dollars for a new cartridge when it runs out of the ink .Rapid prototyping machines are very expensive anything from 10.000 usd to half million add to that the build material cost and replacment parts and it turns into a very expensive printer to buy.
One thing that prevents it from getting out of the industry and into the every day home use is the 3d modeling cad software not easy to learn to use.
What's my intention then? since I've made the printer the next step is to try new affordable build materials.some that I still need to try is microcellulose, PVP, PVA, carbon fiber, ceramics and steel powder. maltodextrin and gypsum is cheap enough to keep using it and I'll add some PVA to it as it might increase green parts strength and controll how the ink absorbs into the powder layer.
Almost forgot to mention that I need to add a cover to my 3d printer as dust gets every where and into my nose and lungs, another thing is that some play on the printer's shaft is showing up I'll need to replace the cartridge bearings with a bearing that can run on a dust enviroment such as the ones IGUS have, anyway I think I has gone thru 5 thousand layers and 5 cartridges since I've started to work on this project and some of the cartridge was damage by trying some water based glue on it , besides that it's working very well.
Friday, September 18, 2009
The Software
The microprocessor does all the work to controll the recharging and motion but the printing part of it. It's amazing what a small chip can do this days. Bascom is such a good compiler that I've decided to keep using it along with atmel mcu's. I'll upgrade to the most powerfull atmega16 since it has more i/o pins and bigger flash memory after all I'm almost running out of the 90s2313 flash memory space and using all the pins available.
The stl. slice software is available to download at the yahoo tech group link for personal usage.
First Parts out
Sunday, September 13, 2009
Faster Igor Faster!
This video was a 400 layers test parts, but unfortunately it was rainning and humidity very high not a good day to print using maltodextrin+plaster, lost the parts becouse the plaster got wet by humidity and the parts end up in the garbage can.I will have to wait for a sunny day to try it again. the mixture used was:
- Plain plaster + 30% maltodextrin
- 30ml of deionized water, 1 ml of isopropyl alcohol, two drops of food die.( no sponge on the cartridge)
O ciclo de recarga do po ficou mais rapido em relacao ao ultimo video devido a ter incluido um algoritimo de aceleracao no codigo fonte e e' o maximo que da pra tirar deste motor. Este video seria de pecas para testar com um total de 400 layers mas, como estava chovendo muinto e o gesso absorveu muinta humidade as pecas foram para o lixo.Vou ter que esperar por um dia com sol(raro ultimamente aqui em ctba)para testar novamente. a mistura utilizada foi:
- Gesso rapido + 30% maltodextrina.
- 30ml de agua deionizada, 1ml de alcool isopropilico, duas gotas de corante pra comida.
Springs sucks!
Thursday, September 3, 2009
Testing it out
Things to do:
- Replace the timming belt
- Work on the ramping alg.
- Replace the print head ( crash it :-(
- Fix a few things .
- Make a acrylic cover for it.
Tuesday, September 1, 2009
It's a live !!!!
build bin assembly
Sunday, August 23, 2009
new top
Monday, August 17, 2009
build bin parts
Tuesday, July 7, 2009
build

Saturday, February 28, 2009
Build bin

The build bin,
Made from 6mm MDF, notice the epoxy filling at the corners to form a 15mm radius, that makes the box stronger and will make it easier to seal the corners, it's harder to get a good seal with sharp corners.You can see a jig that i've made to spread the epoxy.
it's 540 x 210 x 350mm , the bigger one is about the size of a A4 paper sheet, the smaller one is half of the size.I'll paint it after the epoxy dries.next week I'll work on the mechanism to complete it.
Friday, February 6, 2009
How it works
whats needed besides the printer:
- 3 step motor drives
- 2 step motors size 23 with about 200oz/in
- Power supply(24volts x 5amps)
- The Pcbs and Bascom
- All the hardware (Iwill talk about that when I finish it.)
- The software to slice the .stl file and send it to the printer
The software was writen by my friend , Paulo, and you can get it here http://tech.groups.yahoo.com/group/diy_3d_printing_and_fabrication look at files section. don't think you'll make the next miracle 3d printer, mass produce it and get rich using the original software, becouse you can't! you can not use it for any commercial application nor sale it.It works better with .stl files from Rhinoceros CAD, open your .stl file, set the layer thickness and print it.There is delay option that you can use to pause when sending data to the printer , use that to allow the printer to spread a new plaster layer. As I'm rebuilding the printer I've used one of the relays pcb to put the printer in pause by disconnecting the parallel port busy signal, it's the pin 11 on the db25 conector, so , the computer thinks the printer is busy and won't send another page . When my lexmark finishes printing a page, it keeps moving untill the paper sensor detects that there is no more paper inside the printer(purges the paper out), the sensor is nothing more then a lever that blocks a light sensor.I've removed the sensor from the printer's pcb board and relocated it to the side of the printer sensing a aluminum plate not the paper. when it senses the plate, it keeps moving about 80mm and stops ,thinking that it purged the paper out and there is a new paper in ready to be printed, it won't look for the paper edge since it thinks the paper is there already, So It will start to print as soon as it gets the data to be printed.
Now , when it reaches the end (after the 80mm back end) it triggers a NO switch(I'll be using a opto switch) that starts the powder recharge cycle, this is where all the magic happens, the microprocessor reads when the switch triggers and sends a step and direction signal to the step motor drive to lift the feed bin by about 0.2mm, switches the relay on to turn the spread roller motor on, switches the printer's step motor from the printer's drive to the external drive and pauses the printer by breaking the pin 11 on the parallel cable using the relay pcb Board, next it moves the building bin about 2mm from the previus position then the printer moves forward to spread a new 0.1mm plaster layer on top of the just printed one, after spreading the powder, it lowers the building bin and the feed bin, the printer moves to the start position turns the relay off bringing the printer online and waits for the next page(layer).
What build material do I use?
I'm using dental plaster + 30% maltodextrin mix and distilated water instead of ink. If you try to use just plaster it won't work, you need a water activated glue(maltodextrin)to hold the plaster particles together.You can get the maltodextrin at your local drugstore, it's sold as a energetic, there is lots of brands some work better then others.Mix it well with plaster. Parts comes out very fragile and I'm using Cyanoacrilate to infiltrate the parts after printing to make it stronger .One could use epoxi to infiltrate it and get stronger parts. Printing quality was not very good, mostly becouse it was a "I think its going to work" project and there was hot glue holding parts every where, that's why I'm rebuilding it with a better hardware setup. The minimum wall thickness that can be built is about 2mm, but it dependes on how tall it is and what kind of magic powder do you use, if you find something better then what I'm using don't be shy, e-mail me.It took me almost two years working on it(on my spare time)till figure it all out.I've started by looking how printers work, and I choose the lexmark z12 becouse it doesn't make lots of movements before start to print.
I've set this blog to show you what I've done, I do not sale anything you see here nor plans on how to do it,that's up to you to build your own, you can use some of my ideas to build your own printer but don't blaime me if your's doesn't work, the only printer that I know that works is the lexmark Z12(the one I'm using) but if you're using a diferent printer and it works let me know.
Now this all I can tell you before get the new build chamber done(I'm working on it), I've got the new longer rails (Drawer slides) 700 mm long, just perfect.Next is to build the new building chambers, stay tunned.
Sunday, February 1, 2009
Project changed
- Build size 300mm x 210 x 125mm tall.
The electronics still the same but I need to get the material and build a new building chamber, also I need new rails about 600mm in lenght.It's hard to get drawer slids with this lenght so, I might need to buy comercial linear shafts.So stay tunned, it can only get better.
Mudanca no projeto, pensei em reconstruir e documentar a impressora mas, pensando bem vou reconstrui-la maior, o tamaho sera maior 300x210x125 de altura. Com esta mudanca , sera possivel imprimir pecas do tamanho de uma folha A4.
A eletronica continua a mesma, mas sera necessario construir novos depositos de construcao e tambem tenho que comprar novas guias lineares, talvez nao consiga as guias de gaveta e terei que comprar guias industriais.Entao espere mais um pouco porque ficara melhor ainda.
Wednesday, January 28, 2009
let's talk about programming the mcu
You also need a hardware programer connected to the parallel port of your computer to send the program to the chip, I'm using a Stk 500 compatible programer , you can get that from the Bascom site.Connect the cable from the hardware programer to the mic. pcb board using the ISP pins and download the compiled code to the chip.
Now, depending on how you have set your hardware( screws, step drives and transmission) you will need to modifie the source code to fit your hardware, I've set this as variables in the source code ,so it's just a matter of change those numbers. this is the code and it's free to use for personal use only, by using the code you agree that you're not going to use it on ANY comercial machine nor resale it.
E necessario um compilador(software que escreve no chip), acho que o melhor para iniciantes e o Bascom AVR, http://www.mcselec.com/ que usa a linguagem basic facil de aprender e traduz a linguagem basic para a linguagem hex(linguagem maquina) que o chip entende. Voce pode usar a versao Demo do Bascom para compilar o source code que eu escrevi.
Tambem e necessario um programador fisico conectado entre a porta parallela do computador e a PCB do chip , para fazer a programacao propriamente dita. Estou usando um programador compativel com o stk500, entao, conectar o cabo do programador aos pinos de ISP da pcb do chip and faca o download do arquivo compilado.
Dependendo de como voce fez a sua impressora(fusos,step drives,e transmissao) sera necessario alterar alguns numeros no codigo fonte, para tornar isso mais facil, eu coloquei estes numeros em variaveis, bastando mudar os valores dessas variaveis e nao o programa inteiro. este e arquivo fonte somente podera ser usado para uso proprio, fazendo o download do arquivo fonte voce esta concordando em nao usar o mesmo para fins lucrativos de qualquer forma nem usar para comercializar nenhuma maquina que use este arquivo fonte nem comercializar o arquivo fonte.
$regfile = "2313def.dat" 'at90s2313
$crystal = 10000000 '10mhz crystal
Dim Distance As Word
Dim Volta As Word
Dim Feed As Word
Dim Feedreturn As Word
Dim Build As Word
Dim Buildreturn As Word
Config Debounce = 30
Distance = 2150 'distance the printer moves forward to spread the powder in steps
Volta = 600 'distance the priter travels back to the start position in steps
Feed = 640 'lift the feed bin by 2mm
Feedreturn = 592 'returns the feed bin by 1.85mm
Build = 608 'lift the building bin 1.9mm
Buildreturn = 640 'returns the building bin 2mm
Config Pind.0 = Output ' roller
Config Pinb.0 = Input 'sense switch
Config Pinb.1 = Output 'enable/disable drive
Config Pind.1 = Output 'step X moves the printer forward
Config Pind.2 = Output 'dir X direction signal
Config Pind.3 = Output 'stepfeed
Config Pind.4 = Output 'dirfeed
Config Pind.5 = Output 'stepbuild
Config Pind.6 = Output 'dirbuild
Config Pinb.2 = Input 'dirfeedmanual
Config Pinb.3 = Input 'stepfeedmanual
Config Pinb.4 = Input 'dirbuildmanual
Config Pinb.5 = Input 'stepbuildmanual
Portd.6 = 1 'build direction
Portd.4 = 0 'feed direction
Portd.2 = 1 'printer direction
Portd.0 = 0 'roller
Portb.1 = 1 'set pin high to start
Direcaomanualfeed: ' start the manual move of bins
Do
If Pinb.2 = 0 Then Exit Do
Portd.4 = 0
Pulseout Portd , 3 , 5000
Loop
Manualmovefeed:
Do
If Pinb.3 = 0 Then Exit Do
Portd.4 = 1
Pulseout Portd , 3 , 5000
Loop
Direcaomanualbuild:
Do
If Pinb.4 = 0 Then Exit Do
Portd.6 = 0
Pulseout Portd , 5 , 5000
Loop
Manualmovebuild: ' ends the manual move
Do
If Pinb.5 = 0 Then Exit Do
Portd.6 = 1
Pulseout Portd , 5 , 5000
Loop
Inicio: ' here is where the cycle starts up by sensing the trigger switch
Do
Debounce Pinb.0 , 1 , Feedbin
Loop
Feedbin: ' moves the feed bin up
Portd.4 = 0
Portd.3 = 0
Do
Pulseout Portd , 3 , 1000
Waitms 2
Feed = Feed - 1
If Feed <= 0 Then Exit Do Loop
Buildchamberup: 'moves the building bin up
Portd.6 = 1
Portd.5 = 0
Do
Pulseout Portd , 5 , 1000
Waitms 2
Build = Build - 1
If Build <= 0 Then Exit Do Loop
Rolo: 'turn the roller on
Portd.0 = 1
Wait 1
Portb.1 = 0 'enables drive
Eixox: 'moves the printer forward
Portd.2 = 1
Portd.1 = 0
Waitms 1000
Do
Pulseout Portd , 1 , 1000
Waitms 2
Distance = Distance - 1
If Distance <= 0 Then Exit Do Loop
Buildchamberdown: 'lowers the building bin
Portd.6 = 0
Portd.5 = 0
Do
Pulseout Portd , 5 , 1000
Waitms 2
Buildreturn = Buildreturn - 1
If Buildreturn <= 0 Then Exit Do Loop
Feedbindown: 'lowers the feed bin
Portd.4 = 1
Portd.3 = 0
Do
Pulseout Portd , 3 , 1000
Waitms 2
Feedreturn = Feedreturn - 1
If Feedreturn <= 0 Then Exit Do Loop
Retornox: 'return the printer to the start position
Portd.2 = 0
Portd.1 = 0
Waitms 1000
Do
Pulseout Portd , 1 , 1000
Waitms 2
Volta = Volta - 1
If Volta <= 0 Then Exit Do Loop
Portb.1 = 1 'disables drive
Wait 1
Portd.0 = 0 'turns the roller off
Saturday, January 24, 2009
Monday, January 19, 2009
controller
Sunday, January 18, 2009
Schematic

Prototype PCB boards finished.
J3 conector is out put to step drives(3) this is how it works;
When the cycle start switches triggers the processes starts, sends a signal to:
Switches the relay on(Pause printer, turn the roller on,switch printer step motor to the external drive)
- Enable external drive
- Move Feed bin up 1mm+0.15mm from the last position
- Move Build bin up 1mm- 0.1mm from last position
- Move printer forward to spread powder
- Move Build bin down 1mm
- Move Feed bin down 1mm
- Move printer to the start position
- Disable external drive
- Turn relay off
- waits for the next page to be sent.
Placas de pcb prontas.J3 e saida para os drives de motores de passo.Funciona Assim:
Quando a chave de cycle start e acionada o processo comeca e manda sinal para ligar os reles que vao, Pausar a impressora,ligar o rolo,e mudar a alimentacao do motor da impressora para o drive externo, entao:
- Habilita o drive externo
- Move o feed bin para cima 1mm+0.15mm desde a ultima posicao.
- Move o build bin para cima 1mm -0.1mm desde a ultima posicao.
- Move a impressora para frente para espalhar o po
- Move o build bin para baixo 1mm
- Move o feed bin para baixo 1mm
- Move a impressora para a posicao de inicio.
- Desabilita o drive externo
- Desliga os reles.
- Espera pela proxima pagina.
Sunday, January 11, 2009
motor switching pcb
I've changed how the printer moves, I'll be using the original printer motor to move it back and forth, no additional motor needed any more, I've built a opto coupled pcb board with two relays, one with 2 reversible contacts and another with 4 reversible contacts.The one with 2 contacts will put the printer in pause during the powder recharge cycle and turn the roller on.the one with 4 contacts will switch the printer motor from being driven by the printer driver or the external drive needed to reposition the printer to the start position.
Eu mudei como a impressora move, agora nao precissa do motor extra para reposiciona-la, uso o mesmo motor da impressora, para isso fiz uma PCB com dois reles um com dois contatos e um com quatro contatos, o de dois contatos poe a impressora em Pause para o ciclo de recarga do po e liga o rolo, o de quatro contatos muda o motor da impressora de ser alimentado pelo drive original da impressora para ser alimentado por um drive externo, necessario para reposicionar a impressora no inicio da pagina.
gear box mods
The original printer gear box, I've cut the roller that move the paper, and kept the gear at the end of the shaft, then I've pressed a timing pulley over the shaft to make a new traction gear box that moves the timing belt thus moving the printer back and forth
Esta e a caixa de engrenagens original, cortei o rolo que traciona o papel mantendo a engrenagem e entao prensei uma engrenagem sincronizada para formar um conjunto que vai mover a correia sincronizada movendo assim, a impressora.
the sliding rails
hardware needed for the top
Necessario, um rolo e motor para espalhar o po, duas guias lineares para movimentar a impressora e chapas de aluminio , e uma correia sincronizada retirada de uma epson velha.
The homemade 3d printer rebuild started

- Parts Bulding size 6.5 x 4.5 x 4 inches
- Driven by 2 nema 23 step motors
- 3 step motor drives needed





