Replies: 2 comments
-
Unfortunately, that's beyond the capability of macros, and I don't know Klipper's toolhead code well enough to provide much advice (certainly not on the feedback loop from the Z stepper). A few years ago I did hack HX711 support into Klipper to use a strain gauge as a nozzle probe, so I know you'll need to write C code to interface with the strain gauge on the MCU and python code to handle the logic on the host. Sadly I don't have that code to share; I never got it working satisfactorily and lost it a while ago. Sorry that's all I've got, but it does sound like an interesting endeavor. |
Beta Was this translation helpful? Give feedback.
-
Thanks, Jason! I suspected as much, but wanted to check with an expert before trying another path. Again, super impressed by your work. Big fan |
Beta Was this translation helpful? Give feedback.
-
Justin, first huge congrats on this really impressive collection of macros, which I've already learned a ton from. I've got a weird configuration challenge that I'd love your advice on whether I can solve with a macro.
I've got a "massively parallel" 3D printer, with many printheads operating simultaneously on a single build plate (they're self-propelled, so there is no gantry except for the common Z of the buildplate. The print heads are printing with continuous carbon fiber, so it's more of a pulltrusion process than extrusion -- the printheads press against the build plate to ensure adhesion so more carbon is pulled out. Each print head has its own Klipper board with the ability to change its own Z height dynamically as it prints, and each one has a strain gauge to measure the force they're pressing against the build plate.
My question is how to read that strain gauge and use that reading to drive the stepper that adjusts the printhead position to maintain constant pressure. The strain gauge outputs an analog value, so I can probably make it look like a thermistor to the Klipper board. But is there a macro that create a closed-loop control, which constantly reads that sensor, converts it to a desired position (perhaps with a PID?) and then drives the stepper?
Beta Was this translation helpful? Give feedback.
All reactions