(05-03-2020, 05:46 PM)Simemart escribió: Hola, los TMC22xx pueden funcionar tanto en modo STEP/DIR (Standalone) como en UART.
En el primero son totalmente compatibles con los A4988 que tienes ahora colocados, por lo que solo habría que configurar los puentes para los micropasos que se quieran utilizar y regular la corriente de los drivers de forma manual.
Los TMC2209 pueden trabajar a más micropasos que los TMC2208 y A4988 en este modo, pudiendo llegar hasta 64. Para ello hay que utilizar solo los dos primeros puentes de configuración (MS1 y MS2), dejando sin colocar el tercero (MS3).
Si dejas los dos primeros puentes como seguramente los tendrás ahora mismo para los A4988, funcionarán a los mismos 16 micropasos que estos; si se coloca solo el primer puente (MS1), funcionarán a 32 micropasos y si solo se coloca el segundo puente (MS2), funcionarán a 64 micropasos.
Dependiendo de los micropasos elegidos, habrá que configurar en el firmware los micropasos por milímetro de los ejes e indicar que se va a utilizar en ellos los TMC en modo Standalone.
Si solo buscas reducir el ruido que generan los motores, te sirve perfectamente el modo STEP/DIR. Regulándolos correctamente, notarás una gran mejoría en este aspecto.
Para el segundo modo (UART), tendrías que cablearlos, buscando en la placa donde se podría conectar la línea de control de los drivers (quizá en el conector para el módulo WI-FI), además de configurar el firmware para controlarlos por esta vía.
Buenas y muchas gracias por responder, la verdad es que casi todo me suena a chino, soy bastante nuevo en esto..
Aqui te dejo mi firmware, a ver si pudieras ayudarme, es de los que se abren en el bloc de notas y se insertan con la tarjeta sd.
He visto estos drivers, estan bien? Veo buenas opiniones de los Bigtreetech, pero me he fijado en que llevan dos pines mas, no se si me valdrian o no.
https://es.aliexpress.com/item/330431400...web201603_
#-------------------------------------------------------------
############ ¿ª»ú»ù±¾ÉèÖà #######################
#»úÆ÷ÀàÐÍ
#0:xyz»úÐÍ£¬
#1:corexy(x_motor = x+y, y_motor = x-y),
#2:corexy(x_motor = x+y, y_motor = y-x),
#3:delta»úÐÍ
>DRIVE_SYSTEM 3 #»úÆ÷ÀàÐÍ
>cfg_multiple_language 0 #¶à¹úÓïÑÔÏÔʾÅäÖÃÏî(1:ÅäÖÃΪ¶à¹úÓïÑÔ,0:ÅäÖÃΪ×ÖÌåͼƬÏÔʾ)
>cfg_language_type 3 #ÓïÑÔ(1:¼òÌåÖÐÎÄ;2:·±ÌåÖÐÎÄ;3:English)£¬´ËÅäÖÃÏîÖ»ÓÐÔÚcfg_multiple_languageΪ0ʱÓÐЧ¡£
>cfg_ui_set_maxtemp 260 #¼·³öÍ·ÏÔʾÆÁÉèÖÃ×î¸ßζÈ,²»Ó¦´óÓÚMAXTEMPÖµ
>cfg_ui_set_heated_bed_temp 120 #ÈȰåÏÔʾÆÁÉèÖÃ×î¸ßζȣ¬²»Ó¦´óÓÚHEATED_BED_MAX_TEMPÖµ
>NUM_EXTRUDER 1 #ÅäÖü·³öÍ·¸öÊý(1:µ¥ÅçÍ·£»2:Ë«ÅçÍ·)(Robin_miniÖ»Ö§³Öµ¥Í·)
>HAVE_HEATED_BED 1 #1£ºÊ¹ÄÜÈÈ´² ,0£º½ûÖ¹ÈÈ´²
>EXT0_TEMPSENSOR_TYPE 1 #¼·³öÍ·ÈÈ×èÀàÐÍ£¬1:100kÈÈÃô£»102£ºMAX31855Èȵçż
>EXT1_TEMPSENSOR_TYPE 1 #¼·³öÍ·ÈÈ×èÀàÐÍ£¬1:100kÈÈÃô£»102£ºMAX31855Èȵçż
>HEATED_BED_SENSOR_TYPE 1 #ÈÈ´²ÈÈ×èÀàÐÍ£¬1:100kÈÈÃô£»
>FEATURE_TWO_XSTEPPER 0 #Ë«XÖáÉèÖã¬Ê¹Óõڶþ¸ö¼·³öÍ·E1µÄÇý¶¯(1:ÆôÓã¬0:²»ÆôÓÃ)
>FEATURE_TWO_YSTEPPER 0 #Ë«YÖáÉèÖã¬Ê¹Óõڶþ¸ö¼·³öÍ·E1µÄÇý¶¯(1:ÆôÓã¬0:²»ÆôÓÃ)
>FEATURE_TWO_ZSTEPPER 0 #Ë«ZÖáÉèÖã¬Ê¹Óõڶþ¸ö¼·³öÍ·E1µÄÇý¶¯(1:ÆôÓã¬0:²»ÆôÓÃ)
#-------------------------------------------------------------
############ ¹¦ÄÜÉèÖà #######################
>EXT1_X_OFFSET 0 #E1Ïà¶ÔXÖáÔµãÆ«ÒÆ(mm)
>EXT1_Y_OFFSET 0 #E1Ïà¶ÔYÖáÔµãÆ«ÒÆ(mm)
>INVERT_X_DIR 0 #X²½½øµç»ú·½Ïò
>INVERT_Y_DIR 0 #Y²½½øµç»ú·½Ïò
>INVERT_Z_DIR 0 #Z²½½øµç»ú·½Ïò
>EXT0_INVERSE 0 #E0²½½øµç»ú·½Ïò
>EXT1_INVERSE 0 #E1²½½øµç»ú·½Ïò
>XAXIS_STEPS_PER_MM 100 #XÿmmµÄÂö³åÖµ,ÈçÈý½ÇÖÞ»úÐÍ£¬XYZÂö³åÖµÉèΪһÑù
>YAXIS_STEPS_PER_MM 100 #YÿmmµÄÂö³åÖµ,ÈçÈý½ÇÖÞ»úÐÍ£¬XYZÂö³åÖµÉèΪһÑù
>ZAXIS_STEPS_PER_MM 100 #ZÿmmµÄÂö³åÖµ,ÈçÈý½ÇÖÞ»úÐÍ£¬XYZÂö³åÖµÉèΪһÑù
>EXT0_STEPS_PER_MM 409.09 #E0ÿmmµÄÂö³åÖµ
>EXT1_STEPS_PER_MM 367 #E1ÿmmµÄÂö³åÖµ
>X_MAX_LENGTH 130 #X×î´óÐгÌ
>Y_MAX_LENGTH 130 #Y×î´óÐгÌ
>Z_MAX_LENGTH 371 #Z×î´óÐгÌ
>X_MIN_POS -130 #X×îСÐгÌ
>Y_MIN_POS -130 #Y×îСÐгÌ
>Z_MIN_POS 0 #Z×îСÐгÌ
>MIN_EXTRUDER_TEMP 175 #Ö÷°å¼·³öÍ·×îµÍζȣ¬Æð±£»¤×÷ÓÃ
>MAX_EXTRUDER_TEMP 275 #Ö÷°å¼·³öÍ·×î¸ßζȣ¬Æð±£»¤×÷ÓÃ
>MAX_HEATED_BED_TEMP 150 #Ö÷°åÈȰå×î¸ßζȣ¬Æð±£»¤×÷ÓÃ
>HOMING_ORDER 1 #»ØÁã˳Ðò(1:XYZ;2:XZY;3:YXZ;4:YZX;5:ZXY;6:ZYX)
>X_HOME_DIR 1 #»ØÁãʱ·½Ïò(-1:×îС·½Ïò£¬1:×î´ó·½Ïò)
>Y_HOME_DIR 1 #»ØÁãʱ·½Ïò(-1:×îС·½Ïò£¬1:×î´ó·½Ïò£©
>Z_HOME_DIR 1 #»ØÁãʱ·½Ïò(-1:×îС·½Ïò£¬1:×î´ó·½Ïò)
>HOMING_FEEDRATE_X 30 #X¹éÁãʱµÄ¹éÁãËÙ¶È
>HOMING_FEEDRATE_Y 30 #Y¹éÁãʱµÄ¹éÁãËÙ¶È
>HOMING_FEEDRATE_Z 30 #Z¹éÁãʱµÄ¹éÁãËÙ¶È
>ENDSTOP_X_MIN_INVERTING 1 #XÖá×îСÏÞλ³£¿ª/³£±Õ
>ENDSTOP_Y_MIN_INVERTING 1 #YÖá×îСÏÞλ³£¿ª/³£±Õ
>ENDSTOP_Z_MIN_INVERTING 1 #ZÖá×îСÏÞλ³£¿ª/³£±Õ
>ENDSTOP_X_MAX_INVERTING 0 #XÖá×î´óÏÞλ³£¿ª/³£±Õ
>ENDSTOP_Y_MAX_INVERTING 0 #YÖá×î´óÏÞλ³£¿ª/³£±Õ
>ENDSTOP_Z_MAX_INVERTING 0 #ZÖá×î´óÏÞλ³£¿ª/³£±Õ
>MIN_HARDWARE_ENDSTOP_X 0 #ʹÄÜXÖá×îСÏÞλ
>MIN_HARDWARE_ENDSTOP_Y 0 #ʹÄÜYÖá×îСÏÞλ
>MIN_HARDWARE_ENDSTOP_Z 0 #ʹÄÜZÖá×îСÏÞλ
>MAX_HARDWARE_ENDSTOP_X 1 #ʹÄÜXÖá×î´óÏÞλ
>MAX_HARDWARE_ENDSTOP_Y 1 #ʹÄÜYÖá×î´óÏÞλ
>MAX_HARDWARE_ENDSTOP_Z 1 #ʹÄÜZÖá×î´óÏÞλ
>min_software_endstop_x 0 #ʹÄÜXÖá×îСÈíÏÞλ
>min_software_endstop_y 0 #ʹÄÜYÖá×îСÈíÏÞλ
>min_software_endstop_z 0 #ʹÄÜZÖá×îСÈíÏÞλ
>max_software_endstop_x 1 #ʹÄÜXÖá×î´óÈíÏÞλ
>max_software_endstop_y 1 #ʹÄÜYÖá×î´óÈíÏÞλ
>max_software_endstop_z 1 #ʹÄÜZÖá×î´óÈíÏÞλ
>MAX_FEEDRATE_X 200 #XÔ˶¯µÄ×î´óËÙ¶Èmm/s
>MAX_FEEDRATE_Y 200 #YÔ˶¯µÄ×î´óËÙ¶Èmm/s
>MAX_FEEDRATE_Z 200 #ZÔ˶¯µÄ×î´óËÙ¶Èmm/s
>MAX_FEEDRATE_EXT0 200 #E0¼·³ö»úµÄ×î´óËÙ¶Èmm/s
>MAX_FEEDRATE_EXT1 200 #E1¼·³ö»úµÄ×î´óËÙ¶Èmm/s
>MAX_ACCELERATION_UNITS_PER_SQ_SECOND_X 1000 #X·½ÏòµÄ´òÓ¡×î´ó¼ÓËÙ¶Èmm/s^2
>MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Y 1000 #Y·½ÏòµÄ´òÓ¡×î´ó¼ÓËÙ¶Èmm/s^2
>MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Z 1000 #Z·½Ê½µÄ´òÓ¡×î´ó¼ÓËÙ¶Èmm/s^2
>MAX_ACCELERATION_EXT0 1000 #E0¼·³ö»úµÄ´òÓ¡×î´ó¼ÓËÙ¶Èmm/s^2
>MAX_ACCELERATION_EXT1 1000 #E1¼·³ö»úµÄ´òÓ¡×î´ó¼ÓËÙ¶Èmm/s^2
>MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_X 1000 #XÖáÒÆ¶¯×î´ó¼ÓËÙ¶Èmm/s^2
>MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Y 1000 #YÖáÒÆ¶¯×î´ó¼ÓËÙ¶Èmm/s^2
>MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Z 1000 #ZÖáÒÆ¶¯×î´ó¼ÓËÙ¶Èmm/s^2
#Çý¶¯µçÁ÷
>CURRENT_VREF_XY 1000 #Default motor current for XY in mA£¬range (0~1000)
>CURRENT_VREF_Z 1000 #Default motor current for Z in mA£¬range (0~1000)
>CURRENT_VREF_E 1000 #Default motor current for E in mA£¬range (0~1000)
>cfg_insert_det_module 0 #½ÓÈë¶Ïµç¼ì²âÄ£¿é(1:mks 220det;0:mks pwc)
>cfg_have_ups_device 0 #»úÆ÷ÊÇ·ñÅ䱸UPSµçÔ´(1:ÊÇ;0:·ñ)
>cfg_print_over_auto_close 0 #´òÍê¹Ø»úÅäÖÃ(1:¿ªÆô£»0:¹Ø±Õ)¡£
>cfg_filament_det_trigger_level 0 #¶ÏÁϼì²â½Ó¿ÚµÄ´¥·¢µçƽÅäÖÃ(1:¸ßµçƽ´¥·¢;0:µÍµçƽ´¥·¢)
>cfg_filament_load_length 800 #"»»ÁÏ"½øÁϵij¤¶È
>cfg_filament_load_speed 800 #"»»ÁÏ"½øÁÏËÙ¶ÈÅäÖÃ(mm/min)
>cfg_filament_load_limit_temperature 190 #"»»ÁÏ"½øÁÏ×îµÍÏÞÖÆÎ¶ÈÅäÖÃ
>cfg_filament_unload_length 800 #"»»ÁÏ"ÍËÁϵij¤¶È
>cfg_filament_unload_speed 800 #"»»ÁÏ"ÍËÁÏËÙ¶ÈÅäÖÃ(mm/min)
>cfg_filament_unload_limit_temperature 190 #"»»ÁÏ"ÍËÁÏ×îµÍÏÞÖÆÎ¶ÈÅäÖÃ
#µ÷ƽģʽÅäÖÃ
>cfg_leveling_mode 1 #1:×Ô¶¯µ÷ƽ£»0:ÊÖ¶¯µ÷ƽ
#ÊÖ¶¯µ÷ƽ
>cfg_point_number 5 #ÊÖ¶¯µ÷ƽµÄ¸öÊý

¿ÉÉè3,4,5¸öµã)
#ÊÖ¶¯µ÷ƽʱµÄ5¸öµãµÄλÖÃ×ø±ê
>cfg_point1:50,50
>cfg_point2:180,50
>cfg_point3:180,180
>cfg_point4:50,180
>cfg_point5:150,150
#ÏÞλ¿ª¹Ø¸ß¶È²î̽²âµãµÄ×ø±ê
>cfg_endstop_high_diff1:-100,-60
>cfg_endstop_high_diff2:100,-60
>cfg_endstop_high_diff3:0,110
#G33Ö¸Áîdelta»úÐ͵÷ƽ°ë¾¶·¶Î§
>cfg_G33_delta_radius 107 #
#Èý½ÇÖÞ²ÎÊý
>DELTA_MAX_RADIUS 130 #Èý½ÇÖÞÔ²»·°ë¾¶
>PRINTER_RADIUS 180.8 #´òÓ¡»úÖÐÐĵ½´¹Ö±Ö§³Å¸ËµÄ¾àÀë
>DELTA_DIAGONAL_ROD 280.0 #Èý½ÇÖ޸˳¤¶È
>DELTA_FLOOR_SAFETY_MARGIN_MM 15 #µ÷ƽ±ß½ç°²È«¾àÀë
>END_EFFECTOR_HORIZONTAL_OFFSET 40 #
>CARRIAGE_HORIZONTAL_OFFSET 14.5 #
>ROD_RADIUS 140.8 #
#×Ô¶¯µ÷ƽ°´Å¥Ö¸ÁîÅäÖÃ
>cfg_auto_leveling_cmd:M104 S0;G28;M206 T1 P893 S0;M206 T1 P895 S0;M206 T1 P897 S0;G333;G28;M500;G32 S2;G33;M500;G28;
>FEATURE_Z_PROBE 1 #µ÷ƽʹÄÜ,0:½ûÖ¹£¬1:ʹÄÜ
>BED_LEVELING_METHOD 0 #µ÷ƽ·½Ê½,0:3µãµ÷ƽ,1:¶àµãµ÷ƽ,2:4µãµ÷ƽ
>Z_PROBE_ON_HIGH 0 #̽ÕëÐźÅ(0:µÍµçƽÓÐЧ,³£¿ª;1:¸ßµçƽÓÐЧ£¬³£±Õ)
>Z_PROBE_HEIGHT 16.2 #̽ÕëºÍÅçÍ·µÄ¸ß¶È²î
>Z_PROBE_X1 -80 #Ô¤ÉèµÄ̽²âµã×ø±êX1
>Z_PROBE_Y1 -48 #Ô¤ÉèµÄ̽²âµã×ø±êY1
>Z_PROBE_X2 80 #Ô¤ÉèµÄ̽²âµã×ø±êX2
>Z_PROBE_Y2 -48 #Ô¤ÉèµÄ̽²âµã×ø±êY2
>Z_PROBE_X3 0 #Ô¤ÉèµÄ̽²âµã×ø±êX3
>Z_PROBE_Y3 85 #Ô¤ÉèµÄ̽²âµã×ø±êY3
>cfg_leveling_z_speed 800 #µ÷Æ½ÒÆ¶¯ZËÙ¶ÈÅäÖÃ(mm/min)
>cfg_leveling_xy_speed 800 #µ÷Æ½ÒÆ¶¯XYËÙ¶ÈÅäÖÃ(mm/min)
>BED_LEVELING_GRID_SIZE 5 #µ÷ƽ¼ä¸ô
>Z_PROBE_SPEED 2 #ZÖá̽ÕëËÙ¶È
>Z_PROBE_XY_SPEED 30 #XYËÙ¶È
>STEPPER_HIGH_DELAY 0 #Âö³å±£³Öʱ¼äÅäÖÃ(µ¥Î»:us)
#For Inverting Stepper Enable Pins
>X_ENABLE_ON 0
>Y_ENABLE_ON 0
>Z_ENABLE_ON 0
>EXT0_ENABLE_ON 0
>EXT1_ENABLE_ON 0
#¼·³öÍ·¼ÓÈÈ¿ØÖÆÀàÐÍ.
#- 0 = Simply switch on/off if temperature is reached.
#- 1 = PID Temperature control.
#- 3 = Dead-time control.
>EXT0_HEAT_MANAGER 1 #
>EXT1_HEAT_MANAGER 1 #
#¼·³öÍ·PIDÉèÖÃ
>EXT0_PID_INTEGRAL_DRIVE_MAX 230 #PID»ý·Ö±¥ºÍ×î´óÖµ
>EXT0_PID_INTEGRAL_DRIVE_MIN 40 #PID»ý·Ö±¥ºÍ×îСֵ
>EXT0_PID_P 5.50 #PÖµÉèÖÃ
>EXT0_PID_I 0.27 #IÖµÉèÖÃ
>EXT0_PID_D 27.59 #DÖµÉèÖÃ
>EXT1_PID_INTEGRAL_DRIVE_MAX 230 #PID»ý·Ö±¥ºÍ×î´óÖµ
>EXT1_PID_INTEGRAL_DRIVE_MIN 40 #PID»ý·Ö±¥ºÍ×îСֵ
>EXT1_PID_P 24 #PÖµÉèÖÃ
>EXT1_PID_I 0.88 #IÖµÉèÖÃ
>EXT1_PID_D 80 #DÖµÉèÖÃ
#-------------------------------------------------------------
############ ¹¦Äܶ¨ÖÆ #######################
#ÉèÖýçÃæ×Ô¶¨Ò幦ÄÜ1ºÍ2
>setmenu_func1_display 1 #1:ÏÔʾ°´Å¥£¬0:²»ÏÔʾ°´Å¥
>setmenu_func2_display 0 #1:ÏÔʾ°´Å¥£¬0:²»ÏÔʾ°´Å¥
#ÿÌõÖ¸Áî±ØÐëÓ÷ֺÅ";"¸ô¿ª
>setmenu_func1:M84;
>setmenu_func2:M81;
>moreitem_pic_cnt 4 #"¸ü¶à"°´Å¥ÊýÁ¿
#°´Å¥1~°´Å¥7¶¨ÖÆÖ¸Áî
#ÿÌõÖ¸Áî±ØÐëÓ÷ֺÅ";"¸ô¿ª
#ÿ¸ö°´Å¥ÉèÖÃÖ¸Áî×î´ó±ØÐëСÓÚ200×Ö½Ú
>moreitem_button1_cmd:M665 D0.3;M500;
>moreitem_button2_cmd:M665 D-0.3;M500;
>moreitem_button3_cmd:M665 R0.3;M500;
>moreitem_button4_cmd:M665 R-0.3;M500;
>moreitem_button5_cmd:G28 X0;G28 Y0;G28 Z0;
>moreitem_button6_cmd:G28 X0;G28 Y0;G28 Z0;
>moreitem_button7_cmd:G28 X0;G28 Y0;G28 Z0;
#´òÓ¡½çÃæ"¸ü¶à"°´Å¥ÊýÁ¿
>morefunc_cnt 2
#°´Å¥1~°´Å¥6¹¦ÄÜÅäÖÃ
>morefunc1_cmd:M665 I0.05;
>morefunc2_cmd:M665 I-0.05;
>morefunc3_cmd:G28;
>morefunc4_cmd:G28;
>morefunc5_cmd:G28;
>morefunc6_cmd:G28;
#-------------------------------------------------------------
###### ÏÔʾЧ¹û¶¨ÖÆ£¨°´¼üÓëLOGO¶¨ÖÆÇ뿴˵Ã÷Ê飩 #######
>cfg_background_color 0x000000 #ÆÁÄ»±³¾°É«
>cfg_title_color 0xFFFFFF #±êÌâÎÄ×Ö
>cfg_state_background_color 0x000000 #ζȵÈ״̬±³¾°É«
>cfg_state_text_color 0xFFFFFF #ζȵÈ״̬ÎÄ×ÖÑÕÉ«
>cfg_filename_background_color 0x494949 #Îļþ°´Å¥ÉÏÎļþÃû×ÖÌå±³¾°É«
>cfg_filename_color 0xFFFFFF #Îļþ°´Å¥ÉÏÎļþÃû×ÖÌåÑÕÉ«
>cfg_printingstat_word_background_color 0x000000 #´òӡ״̬ÐÅÏ¢×ÖÌå±³¾°É«
>cfg_printingstat_word_color 0xFFFFFF #´òӡ״̬ÐÅÏ¢×ÖÌåÑÕÉ«
>cfg_BUTTON_3D_effects 0 #°´Å¥3DЧ¹û(0:ÎÞ,1:ÓÐ)