Raspberry PI Based DLP Printer
Posted: Mon Jul 27, 2015 8:18 am
Hi all,
We have started developing rpi based DLP Printer software two years ago, which works both as host and controller (it does not require arduino, etc). It is developed based on our need for something reliable, lightweight and feature rich. Currently we have a few printers which are using rpi for more than a year and printing almost every day without any issue.
Current software meets our needs and we expect to close the project. It was a fun project to work on and we would love to continue working on it, but we need to justify the time and money that we are spending on the project, So I thought there might be some interest out there for our project & my early thought is to release two versions, one free and the other one paid for commercial use.
Some features and specifications about the project
* developed using golang, python and c
* it can print different parts of job with different z resolution - currently we are printing support part of pieces with lower resolution
* part of the print can be disabled in middle of job - for example if pieces dropped off printing those part could be disabled
* web based control panel - using with multiple client has no taxation on hardware specially for rpi 2
* as we are using sylgard we have two specific features for sylgard. it is possible to add layer numbers for stop, so machine would stop to breath pdms, and it is possible to have higher jump after few layer prints to make sure nothing attached to pdms
* automatically take photos to display on dashboard - it is not much useful as the rpi camera is low resolution
* it drives stepper motor driver directly there are some uneven steps in fast movement due to golang gc which is expected to be fixed in next version of golang.
* z-axis auto-calibration after boot or per request
* it drives one z-axis motor + shutter, it use ziped png files as source
* lots of customization options for speed and movements and etc as we are using multiple resin we need all of them to work with different resins
Some features partially developed
* auto calibration of the projector. by motorizing projector focus ring or atleast detecting and notifying user in case of problem with focus. We have stopped developing that because rpi camera quality is not high enough for our algorithm to work good enough.
* automatic hollowing of pieces - we have stopped developing that because our pieces were so thin, resins which we are using not suitable for hollowing
* Using 2 projectors together - our printer body need to be changed radically, we are not good at making printer body so even though implementation was close to be usable we stopped it
* detect problem with z leveling using pressure sensors - we purchased FEP so we skipped it as we do not need to change tank frequently anymore
Features we expected to work if we decided there is enough demand to justify working on the project
* complete semi-completed features above
* support 2 z-axis peeling and other movement based peelings
* add arduino as option for movements
* currently we switch between layer images in less than 50ms and I expect we can go lower to around 10ms which I believe is more than enough to make something like carbon 3d printer
* support slc directly
* support custom anti-alias
* resin level monitor and resin pump
* light masking for even quality printing
Any comment is welcomed.
We have started developing rpi based DLP Printer software two years ago, which works both as host and controller (it does not require arduino, etc). It is developed based on our need for something reliable, lightweight and feature rich. Currently we have a few printers which are using rpi for more than a year and printing almost every day without any issue.
Current software meets our needs and we expect to close the project. It was a fun project to work on and we would love to continue working on it, but we need to justify the time and money that we are spending on the project, So I thought there might be some interest out there for our project & my early thought is to release two versions, one free and the other one paid for commercial use.
Some features and specifications about the project
* developed using golang, python and c
* it can print different parts of job with different z resolution - currently we are printing support part of pieces with lower resolution
* part of the print can be disabled in middle of job - for example if pieces dropped off printing those part could be disabled
* web based control panel - using with multiple client has no taxation on hardware specially for rpi 2
* as we are using sylgard we have two specific features for sylgard. it is possible to add layer numbers for stop, so machine would stop to breath pdms, and it is possible to have higher jump after few layer prints to make sure nothing attached to pdms
* automatically take photos to display on dashboard - it is not much useful as the rpi camera is low resolution
* it drives stepper motor driver directly there are some uneven steps in fast movement due to golang gc which is expected to be fixed in next version of golang.
* z-axis auto-calibration after boot or per request
* it drives one z-axis motor + shutter, it use ziped png files as source
* lots of customization options for speed and movements and etc as we are using multiple resin we need all of them to work with different resins
Some features partially developed
* auto calibration of the projector. by motorizing projector focus ring or atleast detecting and notifying user in case of problem with focus. We have stopped developing that because rpi camera quality is not high enough for our algorithm to work good enough.
* automatic hollowing of pieces - we have stopped developing that because our pieces were so thin, resins which we are using not suitable for hollowing
* Using 2 projectors together - our printer body need to be changed radically, we are not good at making printer body so even though implementation was close to be usable we stopped it
* detect problem with z leveling using pressure sensors - we purchased FEP so we skipped it as we do not need to change tank frequently anymore
Features we expected to work if we decided there is enough demand to justify working on the project
* complete semi-completed features above
* support 2 z-axis peeling and other movement based peelings
* add arduino as option for movements
* currently we switch between layer images in less than 50ms and I expect we can go lower to around 10ms which I believe is more than enough to make something like carbon 3d printer
* support slc directly
* support custom anti-alias
* resin level monitor and resin pump
* light masking for even quality printing
Any comment is welcomed.