Willkommen! Anmelden Ein neues Profil erzeugen

Erweiterte Suche

FSR Auto-Bed-Leveling-System

geschrieben von Glatzemann 
Re: FSR Auto-Bed-Leveling-System
29. November 2015 11:21
Super, das hilft schon mal.

Kannst du mir jetzt noch den Teil vom Log raus suchen, bei dem die Düse aufs Bett aufsetzt. Da müssten sich die Analogwerte stark verändern.


--
Microsoft MVP in den Kategorien DirectX/XNA * Visual C++ * Visual Studio and Development Technologies seit 2011

  • Mein Erster (RAMPS 1.4, Selbstbau WolfStrap-Derivat mit Linearführungen, Wade Extruder und E3D lite6 Hotend)
  • Cub44 (Selbstbau Dual Wire Gantry Derivat mit Zahnriemen und Linearschienen, RADDS 1.5 und DUE, Custom Hotend - E3D like, Compact Bowden Extruder)
  • HexMax (sechseckiger Delta (eigenes Design) mit Druckraum 300mm Durchmesser und >=400mm Höhe, RADDS 1.5, 24V, Custom Hotend, Compact Bowden Extruder)
  • P3Steel Toolson MK2 - Keine Zeit zum selbst planen ;-)

Andere Projekte: FSR Board (ABL-Sensor-Platine inkl. Firmware) * ThirtyTwo (32Bit RepRap-Firmware)
Re: FSR Auto-Bed-Leveling-System
29. November 2015 12:04
Nein, tut mir leid. Ich finde da keine stark abweichenden Werte. Habe noch mal ein neues Logging gemacht, aber das Gleiche. Außerdem werden da so schnell die Daten übertragen, dass ich gar nicht weiß, wo der Zeitpunkt des Aufsetzens ist. Sind vom Einschalten bis zum Aufsetzen gleich ein paar Hundert Zeilen und der Monitor zeichnet ja pausenlos auf, bis ich ihn schließe.

Grüße
Re: FSR Auto-Bed-Leveling-System
29. November 2015 14:09
So ein Sche...ßangry smiley
Jetzt hat auch noch ein Sensor das zeitliche gesegnet. Er zeigt nur noch verwirrte Ohmangaben.hot smiley
Und Watterott hat natürlich keine mehr.

1-mal bearbeitet. Zuletzt am 29.11.15 14:10.
Re: FSR Auto-Bed-Leveling-System
29. November 2015 14:41
Ich hab die nächste Lieferung (30 Stück) von Watterott schon vor einer Woche vorbestellt und auch direkt ein paar Ersatz. Die kommen in ungefähr einer Woche. Wenn du so lange warten willst, dann kann ich dir mit dem neuen Arduino einen mit schicken.

Ansonsten beim Conrad...

Was ist denn mit dem Sensor passiert? Vielleicht erholt der sich wieder?

1-mal bearbeitet. Zuletzt am 29.11.15 14:42.


--
Microsoft MVP in den Kategorien DirectX/XNA * Visual C++ * Visual Studio and Development Technologies seit 2011

  • Mein Erster (RAMPS 1.4, Selbstbau WolfStrap-Derivat mit Linearführungen, Wade Extruder und E3D lite6 Hotend)
  • Cub44 (Selbstbau Dual Wire Gantry Derivat mit Zahnriemen und Linearschienen, RADDS 1.5 und DUE, Custom Hotend - E3D like, Compact Bowden Extruder)
  • HexMax (sechseckiger Delta (eigenes Design) mit Druckraum 300mm Durchmesser und >=400mm Höhe, RADDS 1.5, 24V, Custom Hotend, Compact Bowden Extruder)
  • P3Steel Toolson MK2 - Keine Zeit zum selbst planen ;-)

Andere Projekte: FSR Board (ABL-Sensor-Platine inkl. Firmware) * ThirtyTwo (32Bit RepRap-Firmware)
Re: FSR Auto-Bed-Leveling-System
29. November 2015 18:25
Ich weiß nicht, was passiert ist. Ohne Druck auf den Sensor, hat das Multimeter immer "kein Durchgang" angezeigt. Bei mehr Druck dann sofort auf 0,00 Ohm. Der Sensor kann also unter Druck nicht mehr kalibriert werden. Danach löst er nicht mehr aus. Habe jetzt die Feder soweit gespannt, dass das Druckbett am hinteren Sensor gerade so komplett entlastet wird. Bei geringem Druck löst er sofort aus. Werde jetzt nochmal ein G33 durchlaufen lassen. Mal sehen, was passiert.

Grüße
Re: FSR Auto-Bed-Leveling-System
29. November 2015 19:00
G33 ist erfolgreich durch gelaufen.
Folgendes ist festzustellen:
Auslösung der Sensoren wurde durch Federkraft auf sehr sensibel eingestellt. G33 läuft durch. Nach etwa 5 Min Stillstand des Druckers hat die Auslöse-LED des Arduino immer stärker geflackert; bis sie nach etwa 15 Min komplett an blieb. Der Sensor verliert also nach gewisser Zeit Widerstand und löst dann aus. Hätte natürlich zur Folge, dass dann wahrscheinlich der Druck versaut wäre.

P.s.: Wenn dein Angebot noch steht, wäre es nett von dir, wenn du mir mit dem Arduino noch 2 Sensoren mit schickst (1x noch Ersatz). Bitte schreibe mir, was ich dir dann noch für die Nachlieferung überweisen soll!

Danke und Grüße,
Jürgen

1-mal bearbeitet. Zuletzt am 29.11.15 19:05.
Re: FSR Auto-Bed-Leveling-System
30. November 2015 15:38
Kann man das FSR mit 4 Aufnahmepunkten am Druckbett nutzen?
Re: FSR Auto-Bed-Leveling-System
30. November 2015 17:17
Quote
Tomsand
Kann man das FSR mit 4 Aufnahmepunkten am Druckbett nutzen?

Dafür ist dieses FSR-System ziemlich ungeeignet. Wie willst du die Sensoren denn befestigen?



@immergut: vielleicht erwärmen sich die Federn und werden dadurch minimal weicher? Drucken müsste trotzdem problemlos gehen, weil man ja die Endstops abschalten kann.

Noch eine Frage an dich (und die Elektrik-Auskenner natürlich), weil wir vermutlich ein ziemlich identisches Bett haben (habe eine 400x400 Heizmatte, 1000W @230V und 440x440x8 Platte von Gonzohs):
Ich will das Bett über ein Sharp S202S02 ansteuern und eine 5A Sicherung davorhängen. Ich habe allerdings nur eine träge da - ist das OK?

Gruß,
Stefan
Re: FSR Auto-Bed-Leveling-System
30. November 2015 17:31
@Alterego,
wir haben anscheinend die gleiche DDP. Habe auch alles von gonzohs. Echt ne feine Geschichte mit den 1 KW Heizmatten. Ich habe eine 5A flinke Sicherung eingebaut. Was allerdings da richtig(er) wäre, weiß ich nicht. Habe keinen Plan.
Kannst du mir mal bitte den Befehl zur Abschaltung des Z-Min Endstopps schicken? Momentan behelfe ich mir mit dem manuellen Abklemmen der Sensoren nach einem G33. Ist natürlich nicht schön, denn dadurch muss ich immer die Z-Achse dann per Hand auf Position 0 fahren und muss daran denken dass ich kein G28 mache, sonst rennt mir meine Düse ins Heizbett.

Grüße,
Jürgen
Re: FSR Auto-Bed-Leveling-System
30. November 2015 17:54
Quote
Alterego
Quote
Tomsand
Kann man das FSR mit 4 Aufnahmepunkten am Druckbett nutzen?

Dafür ist dieses FSR-System ziemlich ungeeignet. Wie willst du die Sensoren denn befestigen?



@immergut: vielleicht erwärmen sich die Federn und werden dadurch minimal weicher? Drucken müsste trotzdem problemlos gehen, weil man ja die Endstops abschalten kann.

Noch eine Frage an dich (und die Elektrik-Auskenner natürlich), weil wir vermutlich ein ziemlich identisches Bett haben (habe eine 400x400 Heizmatte, 1000W @230V und 440x440x8 Platte von Gonzohs):
Ich will das Bett über ein Sharp S202S02 ansteuern und eine 5A Sicherung davorhängen. Ich habe allerdings nur eine träge da - ist das OK?

Gruß,
Stefan

die Sicherung hat ja Nix mit dem SSR ist er zu tun.


Der 3D-Druck ist tot, lang lebe der 3D-Druck!

Schreibt mich nicht mehr an, ich hab das drucken an den Nagel gehängt.
Re: FSR Auto-Bed-Leveling-System
30. November 2015 18:10
Hi Jürgen,
in der Firmware (Repetier), Config.h: #define ALWAYS_CHECK_ENDSTOPS 0

Geht auch im Konfigurator auszuschalten. D.h. während des Drucks sind die Endstops aus. Das empfiehlt sich gerade bei elektronischen Endstops, um äußere Einflüsse (z.B. auf die Verkabelung) während des Drucks zu vermeiden und so Schrittverlusten vorzubeugen.

ich hatte mein Druckbett nur mal kurz ausgepackt, weil mein neuer Drucker noch Rohbau ist winking smiley Das Bett schaut aber gut aus - ich bin gespannt! Ich habe das "Elektrokästchen" noch von meinem ersten Prusa-Druckbett. Außer der Sicherung müsste alles passen. Das Relais verträgt lt. Datenblatt 8A. Ich weiß nur nicht, ob eine träge ausreicht. Da die flinke bei dir läuft, besorg ich mir auch eine (nee - besser zwei).

Zur Bett-Lagerung - das Problem hab ich dann ja auch: Vielleicht wären Gummi-Füße geeignet? Die isolieren gut und die Sensoren könnte man direkt daneben anbringen, per Schraube einstellbar. ich hatte übrigens auch vor, das Bett nur "hinzulegen". Bei mir bleibt das Bett aber auch unten und der andere Krempel verfährt nach oben.

gruß,
Stefan
Re: FSR Auto-Bed-Leveling-System
30. November 2015 18:25
Ein Heizbett ist nun nicht gerade etwas, was ich vom Verhalten als flink bezeichnen würde.

Lass die träge drin.

Gruß
Andreas


Einen Sparkcube 1.1XL für größere Objekte, einen Trinus3D im Gehäuse und einen Tantillus R im Bau und einen Qidi Tech Q1 Pro im Zulauf.
Sparkcube: Komplett auf 24V - DDP 8mm + 1,5mm Carbonplatte - RADDS 1.5 + Erweiterungsplatine + RAPS128 - Nema 17/1,7A 0,9 Grad - ind. Sensor für Z-Probe (kein ABL) - FTS - Titan Booster Hotend - Sparklab Extruder - Firmware Repetier mit @ Glatzemanns G33 - Repetier Server pro - Simplify3D
Re: FSR Auto-Bed-Leveling-System
30. November 2015 18:41
@Skimmy, Alterego,
die Sicherung von der ich spreche, ist eine zusätzliche Sicherung, die ich zwischen SSR und Heizbett geklemmt habe. Die hat nichts mit den Sicherungen des RADDS und der Sicherung im Kaltgerätestecker zu tun. Ich habe also insgesamt 4 Sicherungen in meinem System.

Hi Jürgen,
in der Firmware (Repetier), Config.h: #define ALWAYS_CHECK_ENDSTOPS 0

Genau das habe ich auch in meiner Config.h. Und trotzdem hat mir der auslösende Z-min zwei mal den Druck versaut. Weiß auch nicht, warum?

Zur Bett-Lagerung - das Problem hab ich dann ja auch: Vielleicht wären Gummi-Füße geeignet? Die isolieren gut und die Sensoren könnte man direkt daneben anbringen, per Schraube einstellbar.

Das wäre natürlich auch eine Option. Halt nicht die Sensoren fest verbauen und das Bett entlasten, sondern die Sensoren justierbar unter das Bett.thumbs up Nur dran denken: Nicht jeder Gummifuss ist bis 130 Grad temperaturbeständig.

Grüße

1-mal bearbeitet. Zuletzt am 30.11.15 18:43.
Re: FSR Auto-Bed-Leveling-System
30. November 2015 19:08
Hi,
die Sicherung ist nur für den 230V Stromkreis. Sonst hab ich keine weiteren Sicherungen vorgesehen.
@ Boui3D: Danke für Info!

Toolson hat mich noch darauf hingewiesen, das SSR zu kühlen. Danke für den Tipp!

@immergut: welches Relais verwendest du denn (SORRY für Off topic hier)?

Warum der Endstop trotzdem schaltet kann ich dir nicht sagen - dem sollte man aber auf den Grund gehen. Wenn sich beim Druck mal eine Ecke hochbiegt, könnte das ja auch schon auslösen...

Gruß,
Stefan
Re: FSR Auto-Bed-Leveling-System
30. November 2015 19:20
Ich habe mir diese hier gekauft. Sind zwar überdimensioniert, brauche sie deshalb auch nicht zu kühlen.
Re: FSR Auto-Bed-Leveling-System
01. December 2015 02:41
Sicherungen interessiert nur der Strom. Flink und träge bedeutet einfach nur, wie tolerant die Sicherung bei evtl. kurz auftretenden Stromspitzen ist. Bei ner Silikonheizmatte hats keine Spitze, da keine kapazitive Belastung vorhanden ist. Einschaltspitzen wie bei einer Glühbirne gibt es auch nicht. Träge oder flink ist daher egal, ich würde aus Gewohnheit flink nehmen.

1kW bei 220V (messt mal nach, 230V in der Steckdose sind selten) sind etwa 4,5A, eine 6A Sicherung sollte demnach ausreichend sein.


Der 3D-Druck ist tot, lang lebe der 3D-Druck!

Schreibt mich nicht mehr an, ich hab das drucken an den Nagel gehängt.
Re: FSR Auto-Bed-Leveling-System
01. December 2015 03:31
Na die Aussage im ersten Absatz halte ich mal für ein Gerücht. grinning smiley

1-mal bearbeitet. Zuletzt am 01.12.15 03:31.


Einen Sparkcube 1.1XL für größere Objekte, einen Trinus3D im Gehäuse und einen Tantillus R im Bau und einen Qidi Tech Q1 Pro im Zulauf.
Sparkcube: Komplett auf 24V - DDP 8mm + 1,5mm Carbonplatte - RADDS 1.5 + Erweiterungsplatine + RAPS128 - Nema 17/1,7A 0,9 Grad - ind. Sensor für Z-Probe (kein ABL) - FTS - Titan Booster Hotend - Sparklab Extruder - Firmware Repetier mit @ Glatzemanns G33 - Repetier Server pro - Simplify3D
Re: FSR Auto-Bed-Leveling-System
01. December 2015 04:33
@Jürgen: Klar, kein Problem mit den Sensoren. 12,02€ wären das dann für die beiden. Ich habe allerdings noch keinen Liefertermin, müsste noch ca. eine Woche dauern, wenn Watterott mit der Prognose der Versandzeit Recht behält :-)

@Tomsand: Das ist eine gute Frage :-) Momentan kann man nur drei Sensoren an meine Elektronik anschließen, ich hatte mir aber auch schon mal Gedanken darüber gemacht, ob ich nicht noch einen vierten Sensor ermögliche. Das würde die Kosten aber etwas in die Höhe treiben, daher habe ich das noch nicht weiter verfolgt.

Erstmal eine Rückfrage: Ist dein Druckbett denn federnd gelagert?

Wenn ja, dann könnte man - je nachdem wieviel Platz unter dem Druckbett ist - ja im Grunde genommen drei dieser bereits vorgestellten Stempel nehmen. In diesen Stempel kommt ein Silikonplättchen zur federnden Lagerung. Der Stempel wird dann nicht mit dem Druckbett verschraubt, sondern berührt dies schlicht und einfach von unten. Dann müsste man die Stempel einfach auf einer verstellbaren Feder lagern, so das man diese mit einstellbarer Kraft unter das Druckbett packen kann.

Die Druckplatte ist dann halt nicht auf den drei FSR-Stempeln gelagert, diese sollten aber trotzdem erkennen, wenn die Düse das Druckbett minimal berührt. Das funktioniert aber nur, wenn das Druckbett eh schon federnd gelagert ist.


--
Microsoft MVP in den Kategorien DirectX/XNA * Visual C++ * Visual Studio and Development Technologies seit 2011

  • Mein Erster (RAMPS 1.4, Selbstbau WolfStrap-Derivat mit Linearführungen, Wade Extruder und E3D lite6 Hotend)
  • Cub44 (Selbstbau Dual Wire Gantry Derivat mit Zahnriemen und Linearschienen, RADDS 1.5 und DUE, Custom Hotend - E3D like, Compact Bowden Extruder)
  • HexMax (sechseckiger Delta (eigenes Design) mit Druckraum 300mm Durchmesser und >=400mm Höhe, RADDS 1.5, 24V, Custom Hotend, Compact Bowden Extruder)
  • P3Steel Toolson MK2 - Keine Zeit zum selbst planen ;-)

Andere Projekte: FSR Board (ABL-Sensor-Platine inkl. Firmware) * ThirtyTwo (32Bit RepRap-Firmware)
Re: FSR Auto-Bed-Leveling-System
01. December 2015 05:49
Hallo Glatzemann,


man könnte alternativ auch eine zusätzliche 3-Punkt Aufnahme auf die 4-Punkt Aufnahme montieren. Man kann dann halt nur normales ABL nutzen und keine Nivellierung über die Spindeln.

Eine vollständige 4-Punkt Lösung stelle ich mir schwierig vor, weil da das Bett ja meist ein wenig verspannt ist (vor der Messung schon). Die ebene Ausrichtung dürfte nur mit recht vielen Messdurchläufen realisierbar sein.


Du kannst die Sensoren, die für mich reserviert sind an immergut schicken, damit er weitertesten kann.. Bei mir dauerts noch etwas und ich warte dann halt auf die Nachlieferung.

@immergut: danke für den Tipp mit dem Relais. Das werd ich wohl probieren.

Gruß,
Stefan
Re: FSR Auto-Bed-Leveling-System
01. December 2015 10:14
Das ist nett von dir, Alteregothumbs up

Grüße
Re: FSR Auto-Bed-Leveling-System
03. December 2015 08:04
Sorry, daß die letzten Tage ein wenig Funkstille hier im Projekt war. Ich war recht stark beruflich eingespannt und konnte daher leider weniger Zeit in das Projekt investieren als geplant.

Über die zweite Lieferung Sensoren von Watterott kann ich leider noch nichts neues berichten. Ich hoffe, daß die Anfang nächster Woche endlich da sind...

Falls jemand, der bei der ersten Lieferung Sensoren dabei war, die Möglichkeit hat zu testen: Bitte melden. Ich kann die Platinen innerhalb von 24h verschicken. Ich halte die momentan nur zurück, weil es ja noch kleinere Startschwierigkeiten gibt und ich eine möglichst gute, erste Version liefern möchte.

Ich habe trotzdem in den letzten Tagen ein klein wenig Zeit gefunden etwas Energie in die Software zu stecken. Ich habe hier kräftig aufgeräumt, alles etwas eleganter und lesbarer gestaltet und auch optimiert. Da der Arduino mit der Aufgabe kaum ausgelastet ist, habe ich auf wart- und lesbaren Code gesetzt und daher eher bei der Geschwindigkeit ein paar Abstriche gemacht.

Ein wenig zum technischen Hintergrund der Software, für die, die es interessiert :-)

Die Messwerte der Sensoren werden jetzt in sogenannte Ring-Buffer geschrieben. Dabei werden einfach alte Messwerte ständig überschrieben, wenn der Platz erschöpft ist und so ist sichergestellt, daß ständig eine gewisse Anzahl an Messwerten vorgehalten wird, aber trotzdem nicht endlos viel Speicher verbraucht wird. Das Verhalten ist in einer eigenen Klasse gekapselt, die aus der Hauptschleife heraus einfach verwendet werden kann. So bleibt der Code übersichtlich. Die Größe dieses Buffers kann zur Laufzeit verändert werden, auch wenn dies zu Fragmentierung des RAMs führt. In der Regel wird das ja auch nur ein oder zwei mal gemacht und ansonsten nur beim Start des Arduino. Kein Problem also...

Die Konfiguration über M-Codes hatte ich ja schon vorher weitestgehend fertig gestellt. Ein offener Punkt war jedoch noch das persistieren der Konfiguration im EEPROM des Arduino. Das ist auch immer noch ein offener Punkt... Ich habe hier ein Konzept entwickelt, aber noch nicht final in Code nieder geschrieben und noch nicht durchgetestet.

Ansonsten überarbeite ich momentan noch den Code zur Ermittlung des eigentlichen Triggerpunkts, so daß dieser so empfindlich wie möglich ist. Das ist wichtig, damit Jürgen weiter testen kann. Das ist momentan auch höchste Priorität und hat sich leider ein wenig verzögert. Ich hoffe, daß ich damit morgen fertig werde...

Und um besser testen zu können habe ich noch geplant die Ausgaben über die serielle Schnittstelle etwas zu optimieren. Die Werte die Jürgen geliefert hat waren zwar schon recht hilfreich, aber leider nicht optimal.


--
Microsoft MVP in den Kategorien DirectX/XNA * Visual C++ * Visual Studio and Development Technologies seit 2011

  • Mein Erster (RAMPS 1.4, Selbstbau WolfStrap-Derivat mit Linearführungen, Wade Extruder und E3D lite6 Hotend)
  • Cub44 (Selbstbau Dual Wire Gantry Derivat mit Zahnriemen und Linearschienen, RADDS 1.5 und DUE, Custom Hotend - E3D like, Compact Bowden Extruder)
  • HexMax (sechseckiger Delta (eigenes Design) mit Druckraum 300mm Durchmesser und >=400mm Höhe, RADDS 1.5, 24V, Custom Hotend, Compact Bowden Extruder)
  • P3Steel Toolson MK2 - Keine Zeit zum selbst planen ;-)

Andere Projekte: FSR Board (ABL-Sensor-Platine inkl. Firmware) * ThirtyTwo (32Bit RepRap-Firmware)
Re: FSR Auto-Bed-Leveling-System
03. December 2015 13:15
Hi Glatzemann,
ich hätte dir ja gerne bessere Daten geliefert, aber der ser. Monitor schaufelt so schnell die Daten hoch, dass ich da gar nicht nachkomme. Außerdem habe ich auch keine Möglichkeit gefunden, den Monitor zu stoppen, ohne ihn aus zu schalten. Sonst könnte man vielleicht direkt nach dem Berühren des Hotends mit der DDP auf Stop drücken, und der betreffende relevante Teil der Übermittlung wäre leichter zu finden.

BTW: hast du meine 2 Sensoren schon verschickt? Dann könnte ich noch weiter mit den Einstellungen testen.

Gruß,
Jürgen
Re: FSR Auto-Bed-Leveling-System
03. December 2015 14:22
Mit Putty kann man die Daten automatisch loggen. Der schreibt die dann in eine Datei und kannst dir das in Ruhe ansehen.


Triffid Hunter's Calibration Guide --> X <-- Drill for new Monitor Most important Gcode.
Re: FSR Auto-Bed-Leveling-System
03. December 2015 19:23
Hallo Wurstnase,
super Tipp. Habe ich direkt mal laufen lassen. Bekomme bei ca. 5 Sekunden logging etwa 4300 Zeilen. Das ist schon ne Menge. Da dann das Passende zu finden, ist nicht einfach.

Danke,
Jürgen
Re: FSR Auto-Bed-Leveling-System
03. December 2015 23:06
Moin moin,

Quote

Bekomme bei ca. 5 Sekunden logging etwa 4300 Zeilen.
Wenn Du das in ein Zip-Archiv packst, dann bleibt da nimmer viel übrig.
Sollte es zuviel sein, um es hier hoch zu laden, kannst Du es ja woanders hochladen und dem Herrn Glatzemann den Link schicken ...

Sollte auch per PM gehen winking smiley

Gruß
Re: FSR Auto-Bed-Leveling-System
04. December 2015 02:02
@Jürgen: Sensoren werde ich gleich in den Briefkasten werfen, habe ich leider nicht früher geschafft. Mit dem Log ist nicht so wild. In der nächsten Version werden die Ausgaben deutlich weniger und übersichtlicher sein.


--
Microsoft MVP in den Kategorien DirectX/XNA * Visual C++ * Visual Studio and Development Technologies seit 2011

  • Mein Erster (RAMPS 1.4, Selbstbau WolfStrap-Derivat mit Linearführungen, Wade Extruder und E3D lite6 Hotend)
  • Cub44 (Selbstbau Dual Wire Gantry Derivat mit Zahnriemen und Linearschienen, RADDS 1.5 und DUE, Custom Hotend - E3D like, Compact Bowden Extruder)
  • HexMax (sechseckiger Delta (eigenes Design) mit Druckraum 300mm Durchmesser und >=400mm Höhe, RADDS 1.5, 24V, Custom Hotend, Compact Bowden Extruder)
  • P3Steel Toolson MK2 - Keine Zeit zum selbst planen ;-)

Andere Projekte: FSR Board (ABL-Sensor-Platine inkl. Firmware) * ThirtyTwo (32Bit RepRap-Firmware)
Re: FSR Auto-Bed-Leveling-System
04. December 2015 05:58
@Glatzemann: Kein Problem. Werden dann wohl Anfang der Woche da sein. Kann dann allerdings nicht mehr lange testen. Dann muss ein Anderer weiter machen.winking smiley

Gruß,
Jürgen
Re: FSR Auto-Bed-Leveling-System
04. December 2015 09:33
@Jürgen: Tester werden sich schon finden und ich kann ja auch bald (hoffentlich) einsteigen... Kannst du die Pin-Leisten selbst an den Arduino löten?

Ich habe mittlerweile noch ein wenig Zeit gefunden an der Firmware zu arbeiten. Ist jetzt alles deutlich aufgeräumter. Hier mal exemplarisch die INO-Datei:

#include "Sensor.h"
#include "Endstop.h"

#define SENSOR_COUNT 3
#define DEFAULT_LONG_AVERAGE_BUFFER_SIZE 16
#define DEFAULT_SHORT_AVERAGE_BUFFER_SIZE 4
#define DEFAULT_ENDSTOP_MIN_HIGH_MS 100

Sensor* sensor[SENSOR_COUNT];
Endstop* endstop;

void setup()
{
	endstop = new Endstop(DEFAULT_ENDSTOP_MIN_HIGH_MS);

	for (size_t i = 0; i < SENSOR_COUNT; i++) 
	{
		sensor = new Sensor(DEFAULT_LONG_AVERAGE_BUFFER_SIZE, DEFAULT_SHORT_AVERAGE_BUFFER_SIZE);
	}
}

void loop()
{
	for (size_t i = 0; i < SENSOR_COUNT; i++) 
	{
		sensor->update(millis());
		endstop->update(millis(), sensor->is_triggered());
	}
}

Ok, daß ist ein wenig gefuscht... Habe den Kommunikationscode für die serielle Schnittstelle und I2C entfernt und die "Lightshow" für die RGB-LED-Leisten habe ich ebenfalls entfernt ;-)

Bei dieser Variante ist neu, daß jetzt ein Ringbuffer für die Sensor-Messwerte eingesetzt wird. Die Größe ist dabei konfigurierbar (auch zur Laufzeit). Den Endstop-Ausgang habe ich nun entprellt. Man kann konfigurieren, wie lange dieser mindestens geschaltet sein soll, wenn ein entsprechender Sensor-Wert entdeckt wird. Ich möchte damit verhindern, daß eine Tastung "übersehen" wird und als netten Nebeneffekt wird so die Programmierung etwas einfacher...

Eine weitere Neuerung ist, daß ich eine Art Hardware-Abstraktion (also eine HAL) eingezogen habe. Dies hilft mir bei simulierten Tests der Firmware ohne echte Hardware und ohne Sensorwerte. Ich kann die Firmware so einfach auf dem PC laufen lassen und dabei die Log-Werte aus einer "echten" Session einspeisen. Das macht das Debuggen einfacher und wird zukünftig auch Regressionstests ermöglichen. Zusätzlich wird der Code so portierbarer, falls der Code mal auf einer anderen Hardware laufen soll.

Ich simuliere gerade noch ein paar Messungen um ein Gefühl für die neuen Default-Werte zu bekommen und werde diese Software dann hoffentlich am Montag an Jürgen geben können, damit er zumindest nochmal einen Vergleich machen kann.


--
Microsoft MVP in den Kategorien DirectX/XNA * Visual C++ * Visual Studio and Development Technologies seit 2011

  • Mein Erster (RAMPS 1.4, Selbstbau WolfStrap-Derivat mit Linearführungen, Wade Extruder und E3D lite6 Hotend)
  • Cub44 (Selbstbau Dual Wire Gantry Derivat mit Zahnriemen und Linearschienen, RADDS 1.5 und DUE, Custom Hotend - E3D like, Compact Bowden Extruder)
  • HexMax (sechseckiger Delta (eigenes Design) mit Druckraum 300mm Durchmesser und >=400mm Höhe, RADDS 1.5, 24V, Custom Hotend, Compact Bowden Extruder)
  • P3Steel Toolson MK2 - Keine Zeit zum selbst planen ;-)

Andere Projekte: FSR Board (ABL-Sensor-Platine inkl. Firmware) * ThirtyTwo (32Bit RepRap-Firmware)
Re: FSR Auto-Bed-Leveling-System
04. December 2015 13:00
@Jürgen: Tester werden sich schon finden und ich kann ja auch bald (hoffentlich) einsteigen... Kannst du die Pin-Leisten selbst an den Arduino löten?

Kann ich natürlich machen.

Gruß,
Jürgen
Re: FSR Auto-Bed-Leveling-System
04. December 2015 15:57
Das hilft mir :-)

Brief mit dem Arduino und den beiden Sensoren ist heute raus. Ich denke aber, der wird erst Montag bei dir ankommen. Auf dem Arduino habe ich noch keine Firmware aufgespielt. Machen wir dann Montag gemeinsam...


--
Microsoft MVP in den Kategorien DirectX/XNA * Visual C++ * Visual Studio and Development Technologies seit 2011

  • Mein Erster (RAMPS 1.4, Selbstbau WolfStrap-Derivat mit Linearführungen, Wade Extruder und E3D lite6 Hotend)
  • Cub44 (Selbstbau Dual Wire Gantry Derivat mit Zahnriemen und Linearschienen, RADDS 1.5 und DUE, Custom Hotend - E3D like, Compact Bowden Extruder)
  • HexMax (sechseckiger Delta (eigenes Design) mit Druckraum 300mm Durchmesser und >=400mm Höhe, RADDS 1.5, 24V, Custom Hotend, Compact Bowden Extruder)
  • P3Steel Toolson MK2 - Keine Zeit zum selbst planen ;-)

Andere Projekte: FSR Board (ABL-Sensor-Platine inkl. Firmware) * ThirtyTwo (32Bit RepRap-Firmware)
In diesem Forum dürfen leider nur registrierte Teilnehmer schreiben.

Klicke hier, um Dich einzuloggen