Seite 11 von 12

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 07:00
von Patrick88
Das ist ein Teil des G-Codes dazu.

G91 ; use relative coordinates
M3115 ; set the x/y-origin to the current x/y-position
M3130 ; find z=0
M400 ; wait until we have found z=0
M3070 S1 ; pause in order to turn on the miller
M117 ; Enable Miller
M3071 ; wait until the printing has been continued
M3141 ; enable the z-compensation
G90 ; use absolute coordinates
G61 G17
G0 Z3.0
G0 X24.543 Y43.1546
G0 Z1.0
G1 F150.0 Z-0.085
G3 F400.0 X24.9515 Y43.205 I0.015 J1.5564
G3 X25.3223 Y43.3836 I-0.276 J1.0477
G3 X25.5634 Y43.7198 I-0.4387 J0.5691


Gruß Patrick

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 07:42
von rf1k_mjh11
Patrik88,

Ich habe vielleicht auch was gefunden:

Patrick88 hat geschrieben:Das ist ein Teil des G-Codes dazu.

G91 ; use relative coordinates
....
M117 ; Enable Miller
....
G3 X25.5634 Y43.7198 I-0.4387 J0.5691
Der Befehl "M117" dient zur Ausgabe von Meldungen auf dem Display. Ich hätte gedacht, dass es ein Parameter erwartet, eben den auszugebenden String. Bei dir steht nichts, nur ein Kommentar.
GCode, bzw. die Interpretation kann je nach Firmware was komisches sein. Eventuell verschluckt sich der Drucker. Um die Zeile zu korrigieren musst du einfach den Strichpunt wegmachen. Dadurch wird "Enable Miller" der Parameter und wird im Display angezeigt.

Oder aber es nützt nichts - dann halt Pech gehabt...

mjh11

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 08:45
von Patrick88
Hallo rf1k,

es hat funktioniert!!! Habe das ";" entfernt und jetzt zeigt er "Enable Miller" an und ich kann den Fräsvorgang starten mit der "Playtaste".

Vielen Dank erstmal dafür!!! :tanzen2:


Habe jetzt aber ein neues bedeutend schlimmeres Problem....

Also von ganz vorne
Ich fahre die X/Y Start Position an -> Configuration -> Z- Calibration -> "Set X/Y Start"
verfahre auf die Endpostion -> "Set X/Y End"
und starte den Werkstück Scan "Scan Work Part"

Das läuft dann auch durch mit messen und allem drum und dran. Scan Komplett und der Drucker fährt X und Y in Home Position.

Nun verfahre ich Manuell die Position wieder auf die X/Y Start Position und starte den Fräsvorgang am Laptop. Nun sagt er im Display "Find Z Origin", sobald er das Werkstück berührt kommt die Aufforderung "Enable Miller" was ich dann auch tuhe und drücke die "Play Taste" er fährt dann auf X und Y Home und startet dort dann mit dem Programm aus dem G-Code...


Bis jetzt habe ich noch nicht rausgefunden wie ich ihm beibringe dort zu starten wo das Werkstück sitzt.

Gruß Patrick

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 09:43
von rf1k_mjh11
Patrick88,

Ich habe noch nie gefräst und müsste mich folglich noch mit der Materie beschäftigen. Aber im Forum gibt es einige, die Fräserfahrung haben. Die können sicherlich schneller weiterhelfen.

mjh11

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 09:58
von RF1000
Hallo Patrick,


die G-Codes "G61 G17" unterstützt die aktuelle Firmware nicht ... prinzipiell sollte das nichts machen, aber kannst du den Fräsvorgang auch einmal ohne diese Zeile versuchen?
Könnte ich auch die Logdatei des Repetier-Host sehen, welche bei diesem Versuch erzeugt wird (falls es dann immer noch nicht klappt)?
Weil Prinzipiell sollte dieser G-Code so passen.

Und zur Sicherheit:
1. Das läuft dann auch durch mit messen und allem drum und dran. Scan Komplett und der Drucker fährt X und Y in Home Position.
2. Nun verfahre ich Manuell die Position wieder auf die X/Y Start Position und starte den Fräsvorgang am Laptop.
Zwischen 1. und 2. werden die Stepper-Motoren nicht ausgeschalten, korrekt? Das Ausschalten der Motoren würde ja dazu führen, dass die Home-Position wieder verloren geht.


mfG,
RF1000

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 10:41
von Patrick88
Hallo RF1000,

habe jetzt die G-Codes "G61 G17" per "G-Code bearbbeiten" in CamBam gelöscht und gesichert in die Renkforce Software geladen und wie zuletzt beschrieben alles ausgeführt. Wieder an die X/Y Start Position gefahren "Find Z Origin" -> Enable Miller -> Playtaste

Selbe "Fehlerbild" Drucker fährt Tisch nach ganz hinten und Fräskopf nach ganz Links und fängt dort an den Code abzuarbeiten.

Gruß Patrick

Hier der G-Code:

G91 ; use relative coordinates
M3115 ; set the x/y-origin to the current x/y-position
M3130 ; find z=0
M400 ; wait until we have found z=0
M3070 S1 ; pause in order to turn on the miller
M117 Enable Miller
M3071 ; wait until the printing has been continued
M3141 ; enable the z-compensation
G90 ; use absolute coordinates
G0 Z3.0
G0 X1.7775 Y1.5009
G0 Z1.0
G1 F150.0 Z-0.06
G3 F400.0 X1.3566 Y1.7439 I-0.2806 J0.0
G3 Y1.2579 I0.1403 J-0.243
G3 X1.7775 Y1.5009 I0.1403 J0.243
G0 Z3.0
G0 X5.1417 Y2.9389
G0 Z1.0
G1 F150.0 Z-0.06
G1 F400.0 Y6.0005
G1 Y2.9389
G0 Z3.0
G0 X7.4977
G0 Z1.0
G1 F150.0 Z-0.06
G2 F400.0 X6.9533 Y3.0561 I0.0009 J1.3272
G2 X6.487 Y3.3833 I0.6203 J1.38
G2 X6.1598 Y3.8789 I1.1512 J1.1157
G2 X6.0377 Y4.499 I1.4404 J0.6056


Hier das Log:

10:25:55.858 : OpenGL version:3.1.0 - Build 8.15.10.2538
10:25:55.861 : OpenGL extensions:GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_blend_color GL_EXT_abgr GL_EXT_texture3D GL_EXT_clip_volume_hint GL_EXT_compiled_vertex_array GL_SGIS_texture_edge_clamp GL_SGIS_generate_mipmap GL_EXT_draw_range_elements GL_SGIS_texture_lod GL_EXT_rescale_normal GL_EXT_packed_pixels GL_EXT_texture_edge_clamp GL_EXT_separate_specular_color GL_ARB_multitexture GL_EXT_texture_env_combine GL_EXT_bgra GL_EXT_blend_func_separate GL_EXT_secondary_color GL_EXT_fog_coord GL_EXT_texture_env_add GL_ARB_texture_cube_map GL_ARB_transpose_matrix GL_ARB_texture_env_add GL_IBM_texture_mirrored_repeat GL_EXT_multi_draw_arrays GL_NV_blend_square GL_ARB_texture_compression GL_3DFX_texture_compression_FXT1 GL_EXT_texture_filter_anisotropic GL_ARB_texture_border_clamp GL_ARB_point_parameters GL_ARB_texture_env_combine GL_ARB_texture_env_dot3 GL_ARB_texture_env_crossbar GL_EXT_texture_compression_s3tc GL_ARB_shadow GL_ARB_window_pos GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_ARB_vertex_program GL_EXT_texture_rectangle GL_ARB_fragment_program GL_EXT_stencil_two_side GL_ATI_separate_stencil GL_ARB_vertex_buffer_object GL_EXT_texture_lod_bias GL_ARB_occlusion_query GL_ARB_fragment_shader GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_texture_non_power_of_two GL_ARB_vertex_shader GL_NV_texgen_reflection GL_ARB_point_sprite GL_ARB_fragment_program_shadow GL_EXT_blend_equation_separate GL_ARB_depth_texture GL_ARB_texture_rectangle GL_ARB_draw_buffers GL_ARB_color_buffer_float GL_ARB_half_float_pixel GL_ARB_texture_float GL_ARB_pixel_buffer_object GL_EXT_framebuffer_object GL_ARB_draw_instanced GL_ARB_half_float_vertex GL_EXT_draw_buffers2 GL_WIN_swap_hint GL_EXT_texture_sRGB GL_ARB_multisample GL_EXT_packed_float GL_EXT_texture_shared_exponent GL_ARB_texture_rg GL_ARB_texture_compression_rgtc GL_NV_conditional_render GL_EXT_texture_swizzle GL_ARB_sync GL_ARB_framebuffer_sRGB GL_EXT_packed_depth_stencil GL_ARB_depth_buffer_float GL_EXT_transform_feedback GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_ARB_framebuffer_object GL_EXT_texture_array GL_EXT_texture_integer GL_ARB_map_buffer_range GL_EXT_texture_snorm GL_INTEL_performance_queries GL_ARB_copy_buffer GL_ARB_sampler_objects GL_NV_primitive_restart GL_ARB_seamless_cube_map GL_ARB_uniform_buffer_object GL_ARB_depth_clamp GL_ARB_vertex_array_bgra GL_ARB_draw_elements_base_vertex GL_ARB_fragment_coord_conventions GL_EXT_gpu_program_parameters GL_ARB_compatibility GL_ARB_vertex_array_object
10:25:55.861 : OpenGL renderer:Intel(R) HD Graphics Family
10:25:55.861 : Using fast VBOs for rendering is possible
10:26:03.731 : No start signal detected - forcing start
10:26:03.814 : FIRMWARE_NAME:Repetier_0.91 FIRMWARE_URL:https://github.com/RF1000/Repetier-Firmware/ PROTOCOL_VERSION:1.0 MACHINE_TYPE:Mendel EXTRUDER_COUNT:1 REPETIER_PROTOCOL:2
10:26:03.814 : Printed filament:0.00m Printing time:0 days 0 hours 0 min
10:26:03.814 : X:0.00 Y:0.00 Z:0.00 E:0.00
10:26:03.835 : Begin file list
10:26:03.838 : End file list
10:26:21.013 : X:0.00 Y:0.00 Z:200.00 E:0.00
10:28:56.137 : setScanXYStart(): the new x/y start position is bigger than the current x/y end position, the x/y end position will be set to the new x/y start position
10:28:56.137 : setScanXYStart(): the new x/y start position has been set
10:28:56.137 : start: x = 60.00, y = 99.00 [mm]
10:28:56.137 : end: x = 60.00, y = 99.00 [mm]
10:29:04.309 : setScanXYEnd(): the new x/y end position has been set
10:29:04.309 : start: x = 60.00, y = 99.00 [mm]
10:29:04.309 : end: x = 134.00, y = 149.00 [mm]
10:29:08.209 : scanWorkPart(): the scan has been started
10:29:08.209 : outputScanParameters(): current scan parameters:
10:29:08.209 : 2560;[steps];ZAXIS_STEPS_PER_MM
10:29:08.209 : 9120;[steps];g_nScanXStartSteps
10:29:08.209 : 3040;[steps];g_nScanXStepSizeSteps
10:29:08.209 : 33440;[steps];g_nScanXEndSteps
10:29:08.209 : 20368;[steps];g_nScanXMaxPositionSteps
10:29:08.209 : 15048;[steps];g_nScanYStartSteps
10:29:08.209 : 3040;[steps];g_nScanYStepSizeSteps
10:29:08.209 : 25840;[steps];g_nScanYEndSteps
10:29:08.209 : 22648;[steps];g_nScanYMaxPositionSteps
10:29:08.209 : -64;[steps];g_nScanHeatBedUpFastSteps
10:29:08.209 : -12;[steps];g_nScanHeatBedUpSlowSteps
10:29:08.209 : 1280;[steps];g_nScanHeatBedDownFastSteps
10:29:08.209 : 32;[steps];g_nScanHeatBedDownSlowSteps
10:29:08.209 : 5;[ms];g_nScanFastStepDelay
10:29:08.209 : 100;[ms];g_nScanSlowStepDelay
10:29:08.209 : 250;[ms];g_nScanIdleDelay
10:29:08.209 : 500;[digits];g_nScanContactPressureDelta
10:29:08.209 : 250;[digits];g_nScanRetryPressureDelta
10:29:08.209 : 0;[digits];g_nScanIdlePressureDelta
10:29:08.209 : 15;[-];g_nScanPressureReads
10:29:08.209 : 15;[digits];g_nScanPressureTolerance
10:29:08.209 : 15;[ms];g_nScanPressureReadDelay
10:29:20.658 : X:0.00 Y:0.00 Z:55.00 E:0.00
10:29:23.295 : readIdlePressure(): pressure calibration: 0 / -1329
10:29:24.030 : readIdlePressure(): idle pressure: -1325
10:30:04.910 : scanWorkPart(): the z-origin has been determined
10:30:04.910 : Printer height:200.00
10:30:05.566 : EEPROM updated
10:30:05.566 : X:60.00 Y:99.00 Z:0.00 E:0.00
10:30:07.211 : moveZDownFast(): -1316
10:30:26.052 : moveZDownFast(): -1318
10:30:43.599 : moveZDownFast(): -1319
10:31:01.050 : moveZDownFast(): -1321
10:31:19.013 : moveZDownFast(): -860
10:31:35.968 : moveZDownFast(): -861
10:31:56.216 : moveZDownFast(): -866
10:32:13.379 : moveZDownFast(): -431
10:32:32.732 : moveZDownFast(): -432
10:32:55.073 : moveZDownFast(): -433
10:33:14.219 : moveZDownFast(): -345
10:33:31.782 : moveZDownFast(): -346
10:33:51.230 : moveZDownFast(): -349
10:34:02.416 : X:0.00 Y:0.00 Z:15.00 E:0.00
10:34:02.474 : scanWorkPart(): raw work part compensation matrix:
10:34:02.474 : front left ... front right
10:34:02.474 : ... ... ...
10:34:02.474 : back left ... back right
10:34:02.474 : ;6;0;60;80;100
10:34:02.474 : ;0;0;0;0;0
10:34:02.474 : ;99;0;-236;-160;-224
10:34:02.474 : ;119;0;-128;-20;-120
10:34:02.474 : offset = 0
10:34:02.474 : g_uZMatrixMaxX = 5
10:34:02.474 : g_uZMatrixMaxY = 4
10:34:02.474 : g_nActiveWorkPart = 1
10:34:02.474 : scan start: x = 60.00, y = 99.00 [mm]
10:34:02.474 : scan steps: x = 20.00, y = 20.00 [mm]
10:34:02.474 : scan end: x = 134.00, y = 149.00 [mm]
10:34:02.684 : scanWorkPart(): total scan time: 294
10:34:02.684 : scanWorkPart(): g_uZMatrixMaxY.1 = 5
10:34:02.684 : scanWorkPart(): g_uZMatrixMaxY.2 = 5
10:34:02.684 : scanWorkPart(): converted work part compensation matrix:
10:34:02.684 : front left ... front right
10:34:02.684 : ... ... ...
10:34:02.684 : back left ... back right
10:34:02.684 : ;6;0;60;80;100;245
10:34:02.684 : ;0;-236;-198;-192;-224;-224
10:34:02.684 : ;99;-182;-136;-131;-172;-224
10:34:02.684 : ;119;-128;-74;-70;-120;-120
10:34:02.684 : ;245;-128;-128;-20;-120;-120
10:34:02.684 : offset = -20
10:34:02.684 : g_uZMatrixMaxX = 6
10:34:02.684 : g_uZMatrixMaxY = 5
10:34:02.684 : g_nActiveWorkPart = 1
10:34:02.684 : scan start: x = 60.00, y = 99.00 [mm]
10:34:02.684 : scan steps: x = 20.00, y = 20.00 [mm]
10:34:02.684 : scan end: x = 134.00, y = 149.00 [mm]
10:34:02.684 : saveCompensationMatrix(): valid data detected
10:34:03.545 : scanWorkPart(): the work part compensation matrix has been saved > 1
10:34:04.793 : scanWorkPart(): idle pressure at start: -1325
10:34:04.793 : scanWorkPart(): idle pressure at stop: -1950
10:34:04.793 : scanWorkPart(): the scan has been completed
10:34:42.374 : setOrigin(): the origin can not be set because the home position is unknown
10:34:42.454 : findZOrigin(): the search has been started
10:34:42.696 : findZOrigin(): nMinPressureContact = -1860, nMaxPressureContact = -860
10:34:46.388 : Printer height:200.00
10:34:47.058 : EEPROM updated
10:34:47.058 : X:60.00 Y:99.00 Z:0.00 E:0.00
10:34:47.503 : G1: this command can not be used while the z-origin is searched
10:34:59.620 : continuePrint(): waiting for the next move
10:34:59.620 : continuePrint(): the printing has been continued
10:34:59.699 : M3141: the z compensation can not be enabled because the home position is unknown
10:35:07.598 : pausePrint()
10:35:07.598 : pausePrint(): pause is not available at the moment because the home position is unknown
10:35:09.232 : M104: this command is not supported in this mode
10:35:09.232 : M140: this command is not supported in this mode
10:35:11.679 : outputObject(): the object can not be output because the home position is unknown

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 10:54
von riu
Hallo Patrick.

Definiere deinen Startpunkt in CamBam mal in der Mitte des Werkstücks. Das mit dem vermessen habe ich noch nicht kapiert. Es scheint aber so zu sein dass der Z Nullpunkt gesucht, aber nicht beendet wird. Eventuell weil deine Meßzellen falschrum montiert sind??? Min Pressure ist höher als Maxpressure im FindZorigin():

[code:2h804bjt]
findZOrigin(): nMinPressureContact = -1860, nMaxPressureContact = -860
[/code:2h804bjt]

Der Printer fährt zu der Position und startet:

Patrick88 hat geschrieben: G0 X1.7775 Y1.5009
Das ist in der Regel nahe am Homepunkt.

Also alles Folgefehler des "this command can not be used while the z-origin is searched"

Das ist meine "unqualifizierte" Einschätzung.

Lieben Gruß,
Udo

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 11:04
von RF1000
Hallo Patrick/Udo,


was genau ist damit gemeint?
Das mit dem vermessen habe ich noch nicht kapiert.
Wenn man (wie Patrick) mit relativen Koordinaten fräst dann kann man den Fräser auf eine beliebige Position stellen und ab dort das definierte Stück fräsen. Das hat den Vorteil, dass man das gleiche Objekt sehr einfach an verschiedenen Stellen fräsen kann, ohne dass man einen neuen G-Code bräuchte.
Das ist in der Regel nahe am Homepunkt.
Theoretisch - wenn man mit absoluten Koordinaten arbeitet :-) Wenn man aber (wie Patrick) mit relativen Koordinaten arbeitet, dann ist das nahe an der Stelle ab der man fräsen will (und daher exakt so gewollt).
10:34:42.374 : setOrigin(): the origin can not be set because the home position is unknown
Das ist meiner Ansicht nach der Fehler - ich denke also, dass zwischen 1. und 2. von meinem vorherigen Post die Home-Position verloren geht. Abhilfe schafft in dem Fall, den Drucker nach 1. und vor 2. auf die X- und Y-Home-Position zu fahren. Davor muss man natürlich darauf achten dass dieser Weg frei ist und danach muss man darauf achten, dass die Stepper nicht mehr ausgeschalten werden.


mfG
RF1000

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 11:29
von riu
Ja das habe ich überlesen weil alles durchgestrichen ist :P Der erste Fehler ist immer beachtenswert.

Z-Nullpunkt verstehe ich. Aber was "vermisst" der RF1000 denn noch? Die Abmasse des Rohlings? Oder dessen Oberfläche?

Lieben Gruß,
Udo

Re: Fräsen

Verfasst: Mi 12. Aug 2015, 13:44
von RF1000
Hallo Udo,


der RF1000 kann die Oberfläche vom Rohling abtasten. Dazu muss man ihm vorher die Größe des Rohlings erklären, so wie das Patrick ja schon korrekt macht.

Das Abtasten der Oberfläche ist besonders nützlich wenn man Rohlinge mit nicht-ebener Oberfläche hat ... also z.B. eine schräge Oberfläche oder auch eine runde Oberfläche. Auch bei solchen Oberflächen schafft es der RF1000 dann, überall gleich tief in die Oberfläche einzutauchen und damit z.B. beim Gravieren auch auf nicht-planen Oberflächen eine gleichmäßige Gravur zu erhalten.


mfG
RF1000