diff options
author | rhys-jones <rhys-jones@cb376a5e-1013-0410-a455-b6b1f9ac8223> | 2010-03-03 11:21:35 +0000 |
---|---|---|
committer | rhys-jones <rhys-jones@cb376a5e-1013-0410-a455-b6b1f9ac8223> | 2010-03-03 11:21:35 +0000 |
commit | 39a7e149536e09894a0ac478105baa109596215e (patch) | |
tree | b3140f7ea74d901b5ef148e23c5d785c38035f2e | |
parent | ce2a30a5e5b5f5aaea509f9668c2e7ec2651bf1a (diff) | |
download | reprap-backup-39a7e149536e09894a0ac478105baa109596215e.tar.gz reprap-backup-39a7e149536e09894a0ac478105baa109596215e.zip |
Uploading paste extruder and new carriage design
git-svn-id: https://reprap.svn.sourceforge.net/svnroot/reprap@3544 cb376a5e-1013-0410-a455-b6b1f9ac8223
35 files changed, 336 insertions, 0 deletions
diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/M8 Bars.par b/trunk/users/Rhys/Multi Head Bowden Carriage/M8 Bars.par Binary files differnew file mode 100644 index 00000000..5f3f5eef --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/M8 Bars.par diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/MountingPlate.par b/trunk/users/Rhys/Multi Head Bowden Carriage/MountingPlate.par Binary files differnew file mode 100644 index 00000000..24eeed21 --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/MountingPlate.par diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/Spacer.par b/trunk/users/Rhys/Multi Head Bowden Carriage/Spacer.par Binary files differnew file mode 100644 index 00000000..15a553b9 --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/Spacer.par diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-lower-left.par b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-lower-left.par Binary files differnew file mode 100644 index 00000000..ebb84f03 --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-lower-left.par diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-lower-right.par b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-lower-right.par Binary files differnew file mode 100644 index 00000000..0c863ee0 --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-lower-right.par diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-upper.par b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-upper.par Binary files differnew file mode 100644 index 00000000..5fe0fdd2 --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carraige-upper.par diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage-belt-clamp_2off.par b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage-belt-clamp_2off.par Binary files differnew file mode 100644 index 00000000..b603e74e --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage-belt-clamp_2off.par diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage.asm b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage.asm Binary files differnew file mode 100644 index 00000000..f545b216 --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage.asm diff --git a/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage.cfg b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage.cfg Binary files differnew file mode 100644 index 00000000..b20aad93 --- /dev/null +++ b/trunk/users/Rhys/Multi Head Bowden Carriage/x-carriage.cfg diff --git a/trunk/users/Rhys/Paste-extruder/Extruder Controller Firmware/configuration.h b/trunk/users/Rhys/Paste-extruder/Extruder Controller Firmware/configuration.h new file mode 100644 index 00000000..d12d49c1 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Extruder Controller Firmware/configuration.h @@ -0,0 +1,90 @@ + + +#ifndef CONFIGURATION_H +#define CONFIGURATION_H + +#define MY_NAME '0' // Two byte string representing the name of this device + +#define RS485_MASTER 0 // We are a slave + +#define MOTHERBOARD 2 + +// Temperature measurement +// Uncomment ONE of the next three +//#define USE_THERMISTOR +#define AD595_THERMOCOUPLE +//#define MAX6675_THERMOCOUPLE + +// Comment out the next line to give a bang-bang thermostat +// Leave it for PID temperature control +#define PID_CONTROL + +// Uncomment the next line to use full-stepping for the extrude motor +// Leave it commented for half stepping + +//#define FULL_STEP + +//****************************************************************************************************** + +// Divide by this to correct for the fact that we have +// messed up the timer clock + +#define MILLI_CORRECTION 64 + +// The temperature routines get called each time the main loop +// has gone round this many times + +#define SLOW_CLOCK 5000 + +// Default PWM for the extruder stepper + +#define STEP_PWM 150 + +// Pin defintion section. This is for the RepRap Extruder Controler V2.2 + +//our RS485 pins + +#define RX_ENABLE_PIN 4 +#define TX_ENABLE_PIN 16 + +// Pins to direct-drive the extruder stepper + +#define E_STEP_PIN 10 +#define E_DIR_PIN 9 + +#ifdef MAX6675_THERMOCOUPLE +// I2C pins for the MAX 6675 temperature chip + #define SO 18 // MISO + #define SCK 19 // Serial Clock + #define TC_0 17 // CS Pin of MAX6607 +#else + #define TEMP_PIN 3 +#endif + +// Control pins for the A3949 chips + +#define H1D 7 +#define H1E 5 +#define H2D 8 +#define H2E 6 + +// Analogue read of this pin gets the potentiometer setting + +#define POT 0 + + + + +// MOSFET drivers + +#define OUTPUT_A 15 +#define OUTPUT_B 11 +#define OUTPUT_C 12 + +#define DEBUG_PIN 13 + +// The LED blink function + +extern void blink(bool on); + +#endif diff --git a/trunk/users/Rhys/Paste-extruder/Extruder Controller Firmware/extruder.pde b/trunk/users/Rhys/Paste-extruder/Extruder Controller Firmware/extruder.pde new file mode 100644 index 00000000..63b43ce0 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Extruder Controller Firmware/extruder.pde @@ -0,0 +1,246 @@ +/* + * Pasteextruder + * +*/ + +#include "configuration.h" +#define SDAPin 18 +int Currentstate = 3; +int Requiredstate = 0; +int Motorstate = 0; +const int ledPin = 13; // LED connected to digital pin 13 +const int motorstate = 0; +const int analogthreshold = 512; +const int Selectionpin = 7; +const int Powerpin = 6; +const int Motorreverse = 20 ; + +/* Definition of extruderstates +0 = Neutral / Exhaust +1 = Extruder 1 Extrude On +2 = Extruder 2 Extrude On +3 = State Unknown / Startup + +Definition of Motorstates +-1 = Anticlockwisse +0 = Off +1 = Clockwise + +*/ +void setup() // run once, when the sketch starts +{ + Serial.begin(9600); + Serial.println("Starting"); + pinMode(ledPin, OUTPUT); // sets the digital pin as output + pinMode(H1D, OUTPUT); + pinMode(H1E, OUTPUT); + pinMode(H2D, OUTPUT); + pinMode(H2E, OUTPUT); + pinMode(SDAPin, INPUT); +} + +int StopMotor(int Motorstate){ + int result; + if (Motorstate == 1){ + digitalWrite(H1D, 0); + digitalWrite(H2D, 0); + digitalWrite(H1E, HIGH); + digitalWrite(H2E, LOW); + delay(Motorreverse); + digitalWrite(H1E, LOW); + digitalWrite(H2E, LOW); + result = 0; + Serial.println("Motor Stopped from clockwise"); + } + if (Motorstate == -1){ + digitalWrite(H1D, 1); + digitalWrite(H2D, 1); + digitalWrite(H1E, HIGH); + digitalWrite(H2E, LOW); + delay(Motorreverse); + digitalWrite(H1E, LOW); + digitalWrite(H2E, LOW); + result = 0; + Serial.println("Motor Stopped from anticlockwise"); + } + return result; + } + + int StartMotor(int RequiredMotorstate){ + int result; + if (RequiredMotorstate == 1){ + digitalWrite(H1D, 1); + digitalWrite(H2D, 1); + digitalWrite(H1E, HIGH); + digitalWrite(H2E, LOW); + result = 1; + Serial.println("Motor started clockwise"); + } + if (RequiredMotorstate == -1){ + digitalWrite(H1D, 0); + digitalWrite(H2D, 0); + digitalWrite(H1E, HIGH); + digitalWrite(H2E, LOW); + result = -1; + Serial.println("Motor started anticlockwise"); + } + return result; + } + + + + + +void loop() // run over and over again + { + Serial.println("Current state - "); + Serial.println(Currentstate); + if (analogRead(Powerpin)<analogthreshold){ //If both optoswitches closed, Required state is 1 i.e. Extruder 1 On + Requiredstate=1; + Serial.println("Required state - Extruder 1"); + } + + if (analogRead(Powerpin)>analogthreshold){ //If both Power is open, direction is closed, Required state is 2 i.e. Extruder 2 On + Requiredstate=2; + Serial.println("Required state - Extruder 2"); + } + + + + + if(Currentstate == 3){ // At start up, check exhaust is open, if not power the motors. When motor is required to stop, motor is reversed. + Serial.println("State unknown"); + if (digitalRead(SDAPin)){ + digitalWrite(ledPin, LOW); // sets the LED off + digitalWrite(H1E, LOW); //Kill Power + digitalWrite(H2E, LOW); + if (Motorstate == 1){ + Motorstate = StopMotor(Motorstate); + } + Currentstate = 0; + Serial.println("Exhaust Open"); + + } + else{ //Turn motor clockwise until in neutral position + Motorstate = StartMotor(1); + + } + } + + if(Requiredstate == 0){ + if(Currentstate == 0){ + Serial.println("Exhaust Required - Already in Exhaust Position"); + } + if(Currentstate == 1){ + Serial.println("Exhaust Required - Turn Anticlockwise"); + while (digitalRead(SDAPin) == 0) { + Motorstate = StartMotor(-1); + } + Motorstate = StopMotor (Motorstate); + Currentstate = 0; + } + + if(Currentstate == 2){ + Serial.println("Exhaust Required - Turn clockwise"); + while (digitalRead(SDAPin) == 0) { + Motorstate = StartMotor(1); + } + Motorstate = StopMotor (Motorstate); + Currentstate = 0; + } + } + + if(Requiredstate == 1){ + if(Currentstate == 1){ + Serial.println("Extruder 1 Required - Already Selected"); + } + if(Currentstate != 1){ + Serial.println("Extruder 1 - Turn clockwise"); + while ((digitalRead(SDAPin) == 1)) { + Motorstate = StartMotor(1); + } + Motorstate = StopMotor (Motorstate); + Currentstate = 1; + } + } + + if(Requiredstate == 2){ + if(Currentstate == 2){ + Serial.println("Extruder 2 Required - Already Selected"); + } + if(Currentstate != 2){ + Serial.println("Extruder 2 - Turn anticlockwise"); + while ((digitalRead(SDAPin) == 1)) { + Motorstate = StartMotor(-1); + } + Motorstate = StopMotor (Motorstate); + Currentstate = 2; + } + + } + } + + + + /* + if(Currentstate == 0){ + + if(Requiredstate == 0){ + if(Motorstate != 0){ //If motor was turning apply break + Motorstate = StopMotor(Motorstate); + } + } + if (Requiredstate == 1){ + Motorstate = StartMotor(1); + } + + if (Requiredstate ==-1){ + Motorstate = StartMotor(-1); + } + } + + + if(Requiredstate == 1){ + if(Currentstate == 1){ + Motorstate = StopMotor(Motorstate); + } + + if(Motorstate ==1){ //If motor was turning apply break + Motorstate = StopMotor(Motorstate); + Currentstate = 1 + } + if(Motorstate ==-1){ //If motor was turning apply break + Motorstate = StopMotor(Motorstate); + Currentstate = 2 + } + else { + Motorstate = StartMotor(-1); + } + } + + if(Currentstate == 2){ + if(Requiredstate == 2){ + if(Motorstate != 0){ //If motor was turning apply break + Motorstate = StopMotor(Motorstate); + } + } + else { + Motorstate = StartMotor(1); + } + } + } + + */ + + + + + + + + + + + + + diff --git a/trunk/users/Rhys/Paste-extruder/Imported Parts/5ml-syringe.par b/trunk/users/Rhys/Paste-extruder/Imported Parts/5ml-syringe.par Binary files differnew file mode 100644 index 00000000..d8a4e20f --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Imported Parts/5ml-syringe.par diff --git a/trunk/users/Rhys/Paste-extruder/Paste Extruder Valve.asm b/trunk/users/Rhys/Paste-extruder/Paste Extruder Valve.asm Binary files differnew file mode 100644 index 00000000..b63961b2 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Paste Extruder Valve.asm diff --git a/trunk/users/Rhys/Paste-extruder/Paste Extruder Valve.cfg b/trunk/users/Rhys/Paste-extruder/Paste Extruder Valve.cfg Binary files differnew file mode 100644 index 00000000..2594548f --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Paste Extruder Valve.cfg diff --git a/trunk/users/Rhys/Paste-extruder/Paste_Extruder.asm b/trunk/users/Rhys/Paste-extruder/Paste_Extruder.asm Binary files differnew file mode 100644 index 00000000..48180fb2 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Paste_Extruder.asm diff --git a/trunk/users/Rhys/Paste-extruder/Paste_Extruder.cfg b/trunk/users/Rhys/Paste-extruder/Paste_Extruder.cfg Binary files differnew file mode 100644 index 00000000..1f77da4c --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Paste_Extruder.cfg diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/Cam_1off.stl b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/Cam_1off.stl Binary files differnew file mode 100644 index 00000000..e79c55e1 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/Cam_1off.stl diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/baseplate_1off.stl b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/baseplate_1off.stl Binary files differnew file mode 100644 index 00000000..ee936878 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/baseplate_1off.stl diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/lowersyringebracket_1off.cmb.gz b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/lowersyringebracket_1off.cmb.gz Binary files differnew file mode 100644 index 00000000..ed28082e --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/lowersyringebracket_1off.cmb.gz diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/lowersyringebracket_1off.stl b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/lowersyringebracket_1off.stl Binary files differnew file mode 100644 index 00000000..b8589c0f --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/lowersyringebracket_1off.stl diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/opto-bracket_1off.stl b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/opto-bracket_1off.stl Binary files differnew file mode 100644 index 00000000..b0da9256 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/opto-bracket_1off.stl diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/tacho_1off.stl b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/tacho_1off.stl Binary files differnew file mode 100644 index 00000000..3139aa37 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/tacho_1off.stl diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/uppersyringeclamp_1off.cmb.gz b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/uppersyringeclamp_1off.cmb.gz Binary files differnew file mode 100644 index 00000000..b8e0cd0f --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/uppersyringeclamp_1off.cmb.gz diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/uppersyringeclamp_1off.stl b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/uppersyringeclamp_1off.stl Binary files differnew file mode 100644 index 00000000..0042736c --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/uppersyringeclamp_1off.stl diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/valve_3off.stl b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/valve_3off.stl Binary files differnew file mode 100644 index 00000000..c1c171f1 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/STL/valve_3off.stl diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/Cam_1off.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/Cam_1off.par Binary files differnew file mode 100644 index 00000000..9c4c777d --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/Cam_1off.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/LowerPressureClamp.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/LowerPressureClamp.par Binary files differnew file mode 100644 index 00000000..fd6c7569 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/LowerPressureClamp.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/Paste Extruder.cfg b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/Paste Extruder.cfg Binary files differnew file mode 100644 index 00000000..2eeb7ac4 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/Paste Extruder.cfg diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/UpperPressureClamp.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/UpperPressureClamp.par Binary files differnew file mode 100644 index 00000000..30e7f446 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/UpperPressureClamp.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/baseplate_1off.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/baseplate_1off.par Binary files differnew file mode 100644 index 00000000..78f85e9a --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/baseplate_1off.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/lowersyringebracket_1off.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/lowersyringebracket_1off.par Binary files differnew file mode 100644 index 00000000..42d84cc0 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/lowersyringebracket_1off.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/opto-bracket_1off.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/opto-bracket_1off.par Binary files differnew file mode 100644 index 00000000..24fc29a8 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/opto-bracket_1off.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/tacho_1off.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/tacho_1off.par Binary files differnew file mode 100644 index 00000000..1a212494 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/tacho_1off.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/uppersyringeclamp_1off.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/uppersyringeclamp_1off.par Binary files differnew file mode 100644 index 00000000..a32d9e24 --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/uppersyringeclamp_1off.par diff --git a/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/valve_3off.par b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/valve_3off.par Binary files differnew file mode 100644 index 00000000..b2be986e --- /dev/null +++ b/trunk/users/Rhys/Paste-extruder/Printed Parts/Solid Edge/valve_3off.par |