firmware wilson ts

firmware wilson ts - Imprimantes 3D - Electronique, domotique, DIY

Marsh Posté le 12-03-2016 à 22:12:30    

[img]Bonjour tout le monde, je monte actuellement mon imprimanté 3D modèle wilson avec un ramp 1.4. Je suis arrivé à la fin du montage(mecanqie et electronique), lorsque je téléverse le firmware ,que j'ai modifié ensuite je teste l'initialisation de mes axes , il se produit des buggg tel que :
-Aucun de mes fin de course ne fonctionne quand il sont actionné c'est mon véritable problème car je n'arrive pas a avoir mon 0
-le déplacement mon Z lorsque je clique sur à partir de cura se déplace unique vers le bas de quelque cm.
 
En effet ici j’utilise des fin de course mécanique  mis en NC ayant une résistance de pull up  (je doute sur mon branchement de ceux xi sur la carte ramp)
 s'il vous j'ai vraiment besoin d'aide , j'ai galéré dessus pendant deux jours pour chercher ce qui n'allait mais je n'ai trouvé.
voici le type de fin de course que j'utilise:
[img][/img]
merci de votre compréhension.

Reply

Marsh Posté le 12-03-2016 à 22:12:30   

Reply

Marsh Posté le 12-03-2016 à 22:17:28    

voici une image de mon capteur fi,n de course que j'utilise https://protype3d.fr/102-capteur-fin-de-course-mecanique.html
et voici mon firmware de marlin  que j'ai configuré:

Code :
  1. #ifndef CONFIGURATION_H
  2. #define CONFIGURATION_H
  3. // This configurtion file contains the basic settings.
  4. // Advanced settings can be found in Configuration_adv.h  
  5. // BASIC SETTINGS: select your board type, temperature sensor type, axis scaling, and endstop configuration
  6. //User specified version info of this build to display in [Pronterface, etc] terminal window during startup.
  7. //Implementation of an idea by Prof Braino to inform user that any changes made
  8. //to this build by the user have been successfully uploaded into firmware.
  9. #define STRING_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time
  10. #define STRING_CONFIG_H_AUTHOR "(stephaninho)" //Who made the changes.
  11. // SERIAL_PORT selects which serial port should be used for communication with the host.
  12. // This allows the connection of wireless adapters (for instance) to non-default port pins.
  13. // Serial port 0 is still used by the Arduino bootloader regardless of this setting.
  14. #define SERIAL_PORT 0
  15. // This determines the communication speed of the printer
  16. //#define BAUDRATE 250000
  17. #define BAUDRATE 115200
  18. //// The following define selects which electronics board you have. Please choose the one that matches your setup
  19. // 10 = Gen7 custom (Alfons3 Version) "https://github.com/Alfons3/Generation_7_Electronics"
  20. // 11 = Gen7 v1.1, v1.2 = 11
  21. // 12 = Gen7 v1.3
  22. // 13 = Gen7 v1.4
  23. // 3  = MEGA/RAMPS up to 1.2 = 3
  24. // 33 = RAMPS 1.3 (Power outputs: Extruder, Bed, Fan)
  25. // 34 = RAMPS 1.3 (Power outputs: Extruder0, Extruder1, Bed)
  26. // 4  = Duemilanove w/ ATMega328P pin assignment
  27. // 5  = Gen6
  28. // 51 = Gen6 deluxe
  29. // 6  = Sanguinololu < 1.2
  30. // 62 = Sanguinololu 1.2 and above
  31. // 63 = Melzi
  32. // 7  = Ultimaker
  33. // 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare)
  34. // 8  = Teensylu
  35. // 81 = Printrboard (AT90USB1286)
  36. // 82 = Brainwave (AT90USB646)
  37. // 9  = Gen3+
  38. // 70 = Megatronics
  39. // 90 = Alpha OMCA board
  40. // 91 = Final OMCA board
  41. // Rambo = 301
  42. #ifndef MOTHERBOARD
  43. #define MOTHERBOARD 33
  44. #endif
  45. // Definition du nom de l'imprimante
  46. #define CUSTOM__MENDEL_NAME "WILSON"
  47. //This defines the number of extruders   // effacer si necassaire  
  48. #define EXTRUDERS 1
  49. #define POWER_SUPPLY 1
  50. //===========================================================================
  51. //=============================Thermal Settings  ============================
  52. //===========================================================================
  53. //
  54. //--NORMAL IS 4.7kohm PULLUP!-- 1kohm pullup can be used on hotend sensor, using correct resistor and table
  55. //
  56. //// Temperature sensor settings:
  57. // -2 is thermocouple with MAX6675 (only for sensor 0)
  58. // -1 is thermocouple with AD595
  59. // 0 is not used
  60. // 1 is 100k thermistor - best choice for EPCOS 100k (4.7k pullup)
  61. // 2 is 200k thermistor - ATC Semitec 204GT-2 (4.7k pullup)
  62. // 3 is mendel-parts thermistor (4.7k pullup)
  63. // 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !!
  64. // 5 is 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan) (4.7k pullup)
  65. // 6 is 100k EPCOS - Not as accurate as table 1 (created using a fluke thermocouple) (4.7k pullup)
  66. // 7 is 100k Honeywell thermistor 135-104LAG-J01 (4.7k pullup)
  67. //
  68. //    1k ohm pullup tables - This is not normal, you would have to have changed out your 4.7k for 1k  
  69. //                          (but gives greater accuracy and more stable PID)
  70. // 51 is 100k thermistor - EPCOS (1k pullup)
  71. // 52 is 200k thermistor - ATC Semitec 204GT-2 (1k pullup)
  72. // 55 is 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan) (1k pullup)
  73. #define TEMP_SENSOR_0 5
  74. #define TEMP_SENSOR_1 0
  75. #define TEMP_SENSOR_2 0
  76. #define TEMP_SENSOR_BED 1
  77. #define MAX_REDUNDANT_TEMP_SENSOR_DIFF 10
  78. // Actual temperature must be close to target for this long before M109 returns success
  79. #define TEMP_RESIDENCY_TIME 10 // (seconds)
  80. #define TEMP_HYSTERESIS 3       // (degC) range of +/- temperatures considered "close" to the target one
  81. #define TEMP_WINDOW     1       // (degC) Window around target to start the recidency timer x degC early.
  82. // The minimal temperature defines the temperature below which the heater will not be enabled It is used
  83. // to check that the wiring to the thermistor is not broken.  
  84. // Otherwise this would lead to the heater being powered on all the time.
  85. #define HEATER_0_MINTEMP 5
  86. #define HEATER_1_MINTEMP 5
  87. #define HEATER_2_MINTEMP 5
  88. #define BED_MINTEMP 5
  89. // When temperature exceeds max temp, your heater will be switched off.
  90. // This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure!
  91. // You should use MINTEMP for thermistor short/failure protection.
  92. #define HEATER_0_MAXTEMP 275
  93. #define HEATER_1_MAXTEMP 275
  94. #define HEATER_2_MAXTEMP 275
  95. #define BED_MAXTEMP 150
  96. // If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the
  97. // average current. The value should be an integer and the heat bed will be turned on for 1 interval of
  98. // HEATER_BED_DUTY_CYCLE_DIVIDER intervals.
  99. //#define HEATER_BED_DUTY_CYCLE_DIVIDER 4
  100. // PID settings:
  101. // Comment the following line to disable PID and enable bang-bang.
  102. #define PIDTEMP
  103. #define PID_MAX 255 // limits current to nozzle; 255=full current
  104. #define PID_MAX 255   // limite le courant de l'extrudeur quand le pid est activé
  105. #ifdef PIDTEMP
  106.   //#define PID_DEBUG // Sends debug data to the serial port.  
  107.   //#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX
  108.   #define PID_INTEGRAL_DRIVE_MAX 255  //limit for the integral term
  109.   #define K1 0.95 //smoothing factor withing the PID
  110.   #define PID_dT ((16.0 * 8.0)/(F_CPU / 64.0 / 256.0)) //sampling period of the
  111. // If you are using a preconfigured hotend then you can use one of the value sets by uncommenting it
  112. // Ultimaker
  113.     #define  DEFAULT_Kp 29.63
  114.     #define  DEFAULT_Ki 2.25 
  115.     #define  DEFAULT_Kd 440 
  116. // Makergear
  117. //    #define  DEFAULT_Kp 7.0
  118. //    #define  DEFAULT_Ki 0.1   
  119. //    #define  DEFAULT_Kd 12   
  120. // Mendel Parts V9 on 12V     
  121. //    #define  DEFAULT_Kp 63.0
  122. //    #define  DEFAULT_Ki 2.25
  123. //    #define  DEFAULT_Kd 440
  124. #endif // PIDTEMP
  125. // Bed Temperature Control
  126. // Select PID or bang-bang with PIDTEMPBED.  If bang-bang, BED_LIMIT_SWITCHING will enable hysteresis
  127. //
  128. // uncomment this to enable PID on the bed.   It uses the same ferquency PWM as the extruder.  
  129. // If your PID_dT above is the default, and correct for your hardware/configuration, that means 7.689Hz,
  130. // which is fine for driving a square wave into a resistive load and does not significantly impact you FET heating.
  131. // This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W heater.  
  132. // If your configuration is significantly different than this and you don't understand the issues involved, you proabaly  
  133. // shouldn't use bed PID until someone else verifies your hardware works.
  134. // If this is enabled, find your own PID constants below.
  135. //#define PIDTEMPBED
  136. //
  137. //#define BED_LIMIT_SWITCHING
  138. // This sets the max power delived to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option.
  139. // all forms of bed control obey this (PID, bang-bang, bang-bang with hysteresis)
  140. // setting this to anything other than 255 enables a form of PWM to the bed just like HEATER_BED_DUTY_CYCLE_DIVIDER did,
  141. // so you shouldn't use it unless you are OK with PWM on your bed.  (see the comment on enabling PIDTEMPBED)
  142. #define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current
  143. #ifdef PIDTEMPBED
  144. //120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
  145. //from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, argressive factor of .15 (vs .1, 1, 10)
  146.     #define  DEFAULT_bedKp 10.00
  147.     #define  DEFAULT_bedKi .023
  148.     #define  DEFAULT_bedKd 305.4
  149. //120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
  150. //from pidautotune
  151. //    #define  DEFAULT_bedKp 97.1
  152. //    #define  DEFAULT_bedKi 1.41
  153. //    #define  DEFAULT_bedKd 1675.16
  154. // FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.
  155. #endif // PIDTEMPBED
  156. //this prevents dangerous Extruder moves, i.e. if the temperature is under the limit
  157. //can be software-disabled for whatever purposes by
  158. #define PREVENT_DANGEROUS_EXTRUDE
  159. //if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately.
  160. #define PREVENT_LENGTHY_EXTRUDE
  161. #define EXTRUDE_MINTEMP 170
  162. #define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.
  163. //===========================================================================
  164. //=============================Mechanical Settings===========================
  165. //===========================================================================
  166. // Uncomment the following line to enable CoreXY kinematics
  167. // #define COREXY
  168. // corse Endstop Settings
  169. #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors
  170. #ifndef ENDSTOPPULLUPS
  171.   // fine Enstop settings: Individual Pullups. will be ignord if ENDSTOPPULLUPS is defined
  172.   //#define ENDSTOPPULLUP_XMAX
  173. // #define ENDSTOPPULLUP_YMAX
  174.   //#define ENDSTOPPULLUP_ZMAX
  175.   //#define ENDSTOPPULLUP_XMIN
  176.   //#define ENDSTOPPULLUP_YMIN
  177.   //#define ENDSTOPPULLUP_ZMIN
  178. #endif
  179. #ifdef ENDSTOPPULLUPS
  180.   #define ENDSTOPPULLUP_XMAX
  181.   #define ENDSTOPPULLUP_YMAX
  182.   #define ENDSTOPPULLUP_ZMAX
  183.   #define ENDSTOPPULLUP_XMIN
  184.   #define ENDSTOPPULLUP_YMIN
  185.   #define ENDSTOPPULLUP_ZMIN
  186. #endif
  187. // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1  
  188. const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstop.
  189. const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstop.
  190. const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstop.
  191. #define DISABLE_MAX_ENDSTOPS
  192. #define X_ENABLE_ON 0
  193. #define Y_ENABLE_ON 0
  194. #define Z_ENABLE_ON 0
  195. #define E_ENABLE_ON 0 // For all extruders
  196. // Disables axis when it's not being used.
  197. #define DISABLE_X false
  198. #define DISABLE_Y false
  199. #define DISABLE_Z false
  200. #define DISABLE_E false // For all extruders
  201. #define INVERT_X_DIR false    // for Mendel set to false, for Orca set to true
  202. #define INVERT_Y_DIR false   // for Mendel set to true, for Orca set to false
  203. #define INVERT_Z_DIR false    // for Mendel set to false, for Orca set to true
  204. #define INVERT_E0_DIR true   // for direct drive extruder v9 set to true, for geared extruder set to false
  205. #define INVERT_E1_DIR false    // for direct drive extruder v9 set to true, for geared extruder set to false
  206. #define INVERT_E2_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false
  207. // ENDSTOP SETTINGS:
  208. // Sets direction of endstops when homing; 1=MAX, -1=MIN
  209. #define X_HOME_DIR -1
  210. #define Y_HOME_DIR -1
  211. #define Z_HOME_DIR -1
  212. #define min_software_endstops true //If true, axis won't move to coordinates less than HOME_POS.
  213. #define max_software_endstops true  //If true, axis won't move to coordinates greater than the defined lengths below.
  214. // Travel limits after homing
  215. #define X_MAX_POS 200
  216. #define X_MIN_POS 0
  217. #define Y_MAX_POS 200
  218. #define Y_MIN_POS 0
  219. #define Z_MAX_POS 200
  220. #define Z_MIN_POS 0
  221. #define X_MAX_LENGTH (X_MAX_POS - X_MIN_POS)
  222. #define Y_MAX_LENGTH (Y_MAX_POS - Y_MIN_POS)
  223. #define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)
  224. // The position of the homing switches
  225. //#define MANUAL_HOME_POSITIONS  // If defined, manualy programed locations will be used
  226. //#define BED_CENTER_AT_0_0  // If defined the center of the bed is defined as (0,0)
  227. //Manual homing switch locations:
  228. #define MANUAL_X_HOME_POS 0
  229. #define MANUAL_Y_HOME_POS 0
  230. #define MANUAL_Z_HOME_POS 0
  231. //// MOVEMENT SETTINGS
  232. #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E
  233. #define HOMING_FEEDRATE {20*60, 20*60, 1*60, 0}  // set the homing speeds (mm/min)
  234. // default settings  
  235. #define DEFAULT_AXIS_STEPS_PER_UNIT   {80,80,3000,590} 
  236. //#define DEFAULT_AXIS_STEPS_PER_UNIT   {78.7402,78.7402,200.0*8/3,760*1.1}  // default steps per unit for ultimaker  
  237. #define DEFAULT_MAX_FEEDRATE          {100, 100, 2, 15}    // (mm/sec)     
  238. #define DEFAULT_MAX_ACCELERATION      {2500,2500,100,10000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot.
  239. #define DEFAULT_ACCELERATION          2500    // X, Y, Z and E max acceleration in mm/s^2 for printing moves  
  240. #define DEFAULT_RETRACT_ACCELERATION  3000   // X, Y, Z and E max acceleration in mm/s^2 for r retracts
  241. //  
  242. #define DEFAULT_XYJERK                20.0    // (mm/sec)
  243. #define DEFAULT_ZJERK                 0.4     // (mm/sec)
  244. #define DEFAULT_EJERK                 5.0    // (mm/sec)
  245. //===========================================================================
  246. //=============================Additional Features===========================
  247. //===========================================================================
  248. // EEPROM
  249. // the microcontroller can store settings in the EEPROM, e.g. max velocity...
  250. // M500 - stores paramters in EEPROM
  251. // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).   
  252. // M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
  253. //define this to enable eeprom support
  254. #define EEPROM_SETTINGS
  255. //to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
  256. // please keep turned on if you can.
  257. #define EEPROM_CHITCHAT
  258. #define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(fr)
  259. //LCD and SD support
  260. //#define ULTRA_LCD  //general lcd support, also 16x2
  261. #define SDSUPPORT // Enable SD Card Support in Hardware Console
  262. //#define ULTIMAKERCONTROLLER //as available from the ultimaker online store.
  263. //#define ULTIPANEL  //the ultipanel as on thingiverse
  264. // The RepRapDiscount Smart Controller
  265. // http://reprap.org/wiki/RepRapDiscount_Smart_Controller
  266. #define REPRAP_DISCOUNT_SMART_CONTROLLER
  267. //automatic expansion
  268. #if defined(ULTIMAKERCONTROLLER) || defined(REPRAP_DISCOUNT_SMART_CONTROLLER)
  269. #define ULTIPANEL
  270. #define NEWPANEL
  271. #endif
  272. // Preheat Constants
  273. #define PLA_PREHEAT_HOTEND_TEMP 150
  274. #define PLA_PREHEAT_HPB_TEMP 65
  275. #define PLA_PREHEAT_FAN_SPEED 255  // Insert Value between 0 and 255
  276. #define ABS_PREHEAT_HOTEND_TEMP 230
  277. #define ABS_PREHEAT_HPB_TEMP 110
  278. #define ABS_PREHEAT_FAN_SPEED 255  // Insert Value between 0 and 255
  279. #ifdef ULTIPANEL
  280.   #define NEWPANEL  //enable this if you have a click-encoder panel
  281.   #define SDSUPPORT
  282.   #define ULTRA_LCD
  283.   #define LCD_WIDTH 20
  284.   #define LCD_HEIGHT 4
  285.  
  286. #else //no panel but just lcd  
  287.   #ifdef ULTRA_LCD
  288.     #define LCD_WIDTH 16
  289.     #define LCD_HEIGHT 2   
  290.   #endif
  291. #endif
  292. // Increase the FAN pwm frequency. Removes the PWM noise but increases heating in the FET/Arduino
  293. //#define FAST_PWM_FAN
  294. // M240  Triggers a camera by emulating a Canon RC-1 Remote
  295. // Data from: http://www.doc-diy.net/photo/rc-1_hacked/
  296. // #define PHOTOGRAPH_PIN     23
  297. // SF send wrong arc g-codes when using Arc Point as fillet procedure
  298. //#define SF_ARC_FIX
  299. #include "Configuration_adv.h"
  300. #include "thermistortables.h"
  301. #endif //__CONFIGURATION_H

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed