Rainer Stabhuber
Rainer Stabhuber

Beliebige Lasten mit den Anschlüssen des  RAMPS ansteuern

Im folgenden wird eine Möglichkeit vorgestellt, um beliebige Lasten an einem 3D-Drucker mit RAMPS zu betreiben. Das bemerkenswerte hierbei ist, das der Steuerung quasi vorgegaukelt wird, es befände sich ein herkömmlicher Schrittmotor nebst Schrittmotortreiber am Drucker. Somit bleibt die vollkommene Funktionalität der Druckersoftware erhalten.

Anstatt eines eingesetzten Schrittmotortreiber auf dem RAMPS werden die Signalleitungen STEP sowie DIR abgegriffen, des weiteren wir die Versorgungsspannung VCC und GND von RAMPS benötigt.

Zwischen RAMPS und der "beliebigen" Last wird ein ATiny13-20PU verwendet, welcher ein Relais schaltetet, an dem die eigentlich zu schaltende Last angeschlossen wird.

Damit das Ganze auch funktioniert, muss die Option Filament zurückziehen im Slicer genutzt werden. (durch die Länge des zurückgezogenen Filamentstückes kann auch eine eventuell gewünschte Verzögerung eingestellt werden)

Die unten gezeigte Software sollte eigentlich bei allen Atmel AVR's funktionieren, eventuell müssen die Pin-Belegungen angepasst werden.

Wichtiger Hinweis: Es wird keine Haftung für eventuell entstehende Schäden übernommen die auf Grund der gezeigten Schaltung bzw. Software entstehen.

Schaltung

Software (für ATiny13-20PU)

/*

* Created: 09.03.2015 00:07:50

* Author: Rainer Stabhuber

*/

 

#include <avr/io.h>

uint8_t bPortB;

int main(void)

{

DDRB = 0xff;

DDRB &= ~((1 << DDB3) | (1 << DDB4));

bPortB = 000000;

 

while(1)

{

// PINB2 Ausgang

// PINB3 Step

// PINB4 Dir

 

bPortB = PINB;

  if ( !(PINB & (1<<PINB4)) ){

   PORTB &= ~(1<<PINB2);

  }

 

  if ( PINB & ((1<<PINB3))){

   if ( PINB & ((1<<PINB4))){

      PORTB |= (1<<PINB2);

   }

  }

}


 

 

Druckversion | Sitemap
© Rainer Stabhuber