Results 1 to 10 of 72
Threaded View
-
03-10-2014, 06:28 PM #11
- Join Date
- Sep 2013
- Posts
- 308
Hey everyone, Im a bit pressed for time today.. so sorry in advance for the short reply's.
here we go
@Mike_biddell
Great Ideas .. quite possibly part of what could make it low cost enough to be a part of the peachy basic, be sure to post your hack if you build it! You will likely pave the way for many others!
The drip governor is my aim at doing it super low cost, pumps will most likely be the answer for the pro.
@pete
Nice work! take a look at the valve i made below .. i think it would act as a nice Super low pressure one way valve simply using gravity instead of a spring.
I like the idea that the pump could be help the surface tension issue... we plan to do this in the pro! Thanks for the link to the pump they look great so im purchasing a few now
@Slatye
Those pumps look great also .. again possibly exactly what we need for the pro, we could simply put a photo interrupt on the back end of the motor and use and interrupt pin on a micro to count how many cam pulses the pump has done.
@Feign
Right not only is the circuit easy to listen in on its also easy to control, we are breaking out important wires like that into terminal headers and solder pads.
We are doing this specifically to encourage hacks, the peachy printer isnt just open its actually designed to be hacked. and on that note .. I did get a few hours to work on my version of the drip governor hack... so here are some pics!
20140308_200509.jpg
20140308_200550.jpg
20140310_134749.jpg
also here is a python script:
Code:import serial import time connected = False ser = serial.Serial("COM4", 9600) while not connected: serin = ser.read() connected = True for i in range(0,300): print (ser.outWaiting()) print (ser.inWaiting()) try: ser.write("1") except ser.SerialTimeoutException: print('gerr') print('wrote1',i) time.sleep(1.5) try: ser.write("0") except ser.SerialTimeoutException: print('gerr2') time.sleep(1.5) #ser.flushInput() #while ser.read() == '1': # ser.read() ser.close()
Code:// Open a serial connection and flash LED when input is received int led = 13; int on = 2; int off = 3; int onTime = 400; int pulseValve = 10; char code = '0'; int powerTime = 500; void setup(){ // Open serial connection. Serial.begin(9600); pinMode(13, OUTPUT); Serial.write('1'); pinMode(led, OUTPUT); pinMode(on, OUTPUT); pinMode(off, OUTPUT); pinMode(pulseValve, INPUT); } void testValve(){ digitalWrite(led, LOW); // turn the LED off by making the voltage LOW digitalWrite(on, LOW); digitalWrite(off, HIGH); delay(powerTime); digitalWrite(off, LOW); delay(2000); digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(off, LOW); digitalWrite(on, HIGH); delay(powerTime); digitalWrite(on, LOW); delay(2000); } void loop(){ //Serial.write(2); if (digitalRead(pulseValve) == HIGH){ testValve(); } if(Serial.available() > 0){ // if data present, blink code = Serial.read(); if (code == '1'){ digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(off, LOW); digitalWrite(on, HIGH); delay(powerTime); digitalWrite(on, LOW); //Serial.write(1); } if (code == '0'){ digitalWrite(led, LOW); // turn the LED off by making the voltage LOW digitalWrite(on, LOW); digitalWrite(off, HIGH); delay(powerTime); digitalWrite(off, LOW); //Serial.write(0); //delay(onTime); // wait for a second } } }
ok that code is rather ruff, its just an excerpt from my playground branch.. Townly is making it into a proper class right now.
Soon you will just be able to script the printer like this
dripGovernor.stopDripping()
dripGovernor.startDripping()
Ill be making some major improvements to this ..
- change to a single coil driven by an h bridge reversing the power to the coil turn the valve on and off.( use a stopper to keep the magnet alwase off center of the coil so the coil alwase pushes it in one direction.
- make the hole thing smaller
- machine the moving pin with a lathe then use the machined pice to and make a mould to cast the magnet into the pin
- reduce the hose length between the driper and the governor valve to increase the responsiveness of the system.
- use clear plastic for all outer components ( easier to see what happens when it stops working)
- change from 34 gage wire to 36 or 38 gage wire, ( reducing the current required to do the same work with everyting on a smaller scale )
- adjust the size density of the moving part so its the same density as saturated salt water
looking forward to seeing all the different ways there are to govern dripping!
Im sure some of the best ways to do it will be a combination of all the posts here.Last edited by rylangrayston; 03-10-2014 at 11:46 PM.
Printer will print perfect...
06-14-2024, 10:44 AM in Tips, Tricks and Tech Help