• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Would be nice to set FAN target speed by RPM instead of PWM

Scheduled Pinned Locked Moved
Firmware wishlist
6
23
1.2k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    BoA
    last edited by BoA 11 May 2020, 10:01 5 Nov 2020, 09:59

    It would be nice to set FAN speed to given RPMs instead of just PWM duty cycle.
    Also a nice addition would by "auto tuning" lo learn the curve RPM->PWM.

    Edit: Obviously for fans with tacho configured.

    undefined 1 Reply Last reply 5 Nov 2020, 10:07 Reply Quote 0
    • undefined
      Veti @BoA
      last edited by 5 Nov 2020, 10:07

      @BoA

      this would be a lot more difficult to implement. with pwm, its constant and you can set a know value.
      it has to be constantly monitored and adjusted.
      this would need a lot of code in an embedded system with, from my point of view, little gain.

      even on pcs, where this would be easier to implement, nearly all adjustments are made in terms of %pwm.

      also what does rpm really give you. not all fans are made equal and not all fan ducts are equal.
      one printer might need 500 rpm to achieve the same result another printer gets at 3000 rpm.

      1 Reply Last reply Reply Quote 0
      • undefined
        dc42 administrators
        last edited by 5 Nov 2020, 10:53

        Basically it would need a PID controller for the fan. I guess we could define a sensor type that just reports fan RPM, then you could configure the fan as a heater.

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        undefined 1 Reply Last reply 5 Nov 2020, 11:36 Reply Quote 0
        • undefined
          BoA
          last edited by BoA 11 May 2020, 11:35 5 Nov 2020, 11:34

          I think PID is not required. The point is not too keep RPM with some insane accuracy. But RPM->PWM curve with simple "learning" is more than enough (like min PWM when FAN rotates, 100% to detect RPM range, and like 8 or 10 points curve).

          undefined 1 Reply Last reply 5 Nov 2020, 18:44 Reply Quote 0
          • undefined
            BoA @dc42
            last edited by 5 Nov 2020, 11:36

            @dc42 Sensor type for RPMs is also a nice idea.

            1 Reply Last reply Reply Quote 0
            • undefined
              dragonn
              last edited by 5 Nov 2020, 11:37

              But what gives the RPM you?
              The fan flow also doesn't scale linear with RPM.
              I think even the fan flow is more linear to the PWM input then RPM.

              undefined 1 Reply Last reply 5 Nov 2020, 11:41 Reply Quote 0
              • undefined
                BoA @dragonn
                last edited by BoA 11 May 2020, 11:42 5 Nov 2020, 11:41

                @dragonn RPM is basically repeatable measuremet of fan speed between fans models. If You have some blower let's say 5015 I think it is safe to assume that different models (that have generally same size) will pump similar amounts of air at the same RPMs.

                My user story is that I swapped a fan to a different model, and now all gcode with fan % make cooling too strong / too weak just because of new fan beeing able to work with much higher RPMs

                undefined 1 Reply Last reply 5 Nov 2020, 18:48 Reply Quote 0
                • undefined
                  theruttmeister @BoA
                  last edited by 5 Nov 2020, 18:44

                  @BoA said in Would be nice to set FAN target speed by RPM instead of PWM:

                  I think PID is not required. The point is not too keep RPM with some insane accuracy. But RPM->PWM curve with simple "learning" is more than enough (like min PWM when FAN rotates, 100% to detect RPM range, and like 8 or 10 points curve).

                  You are describing a PID loop, with an autotune function. Exactly how the heater control logic works.

                  Isolate, substitute, verify.

                  undefined 1 Reply Last reply 5 Nov 2020, 19:21 Reply Quote 0
                  • undefined
                    dragonn @BoA
                    last edited by dragonn 11 May 2020, 18:50 5 Nov 2020, 18:48

                    @BoA said in Would be nice to set FAN target speed by RPM instead of PWM:

                    @dragonn RPM is basically repeatable measuremet of fan speed between fans models. If You have some blower let's say 5015 I think it is safe to assume that different models (that have generally same size) will pump similar amounts of air at the same RPMs.

                    I am pretty sure the same models of a fan will give the same RPM at the same PWM output. But a different model, well of course but also a different model at the same RPM can give different air flow.

                    undefined 1 Reply Last reply 5 Nov 2020, 18:55 Reply Quote 0
                    • undefined
                      Veti @dragonn
                      last edited by 5 Nov 2020, 18:55

                      @dragonn said in Would be nice to set FAN target speed by RPM instead of PWM:

                      I am pretty sure the same models of a fan will give the same RPM at the same PWM output. B

                      there is a +-10% spread on most fans of the same type.

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        BoA @theruttmeister
                        last edited by 5 Nov 2020, 19:21

                        @theruttmeister PID uses feedback. I am describing one way conversion. RPM->(learned curve)->PWM

                        undefined 1 Reply Last reply 5 Nov 2020, 20:39 Reply Quote 0
                        • undefined
                          theruttmeister @BoA
                          last edited by 5 Nov 2020, 20:39

                          @BoA
                          You already have a sensor measuring RPM to create the control curve... you are going to use that to monitor the fan anyway, the PID loop is such low overhead on something like the Duet that why on earth wouldn't you use it? You would need to create some control logic anyway, doing what dc42 suggests makes a lot of sense as it only needs a new sensor type and can re-use the heater logic.

                          I will also point out that you are also making a flawed assumption:

                          Fans are designed to push a certain CFM, with a fixed RPM and input voltage.
                          Taking 2 different CFM fans (that have different RPM ratings), and trying to run them at the same RPM is unlikely to produce the same CFM output. The fan blades are designed for the operating RPM rating and as such will perform differently at a different speed, that relationship between CFM and RPM is not linear.
                          To truly match CFM output would require a mechanism for measuring that output...

                          Its much easier to just buy fans with matching CFM/static pressure ratings.

                          Isolate, substitute, verify.

                          undefined 1 Reply Last reply 5 Nov 2020, 21:44 Reply Quote 1
                          • undefined
                            BoA @theruttmeister
                            last edited by 5 Nov 2020, 21:44

                            @theruttmeister OK. Perhaps You are right. I build a mass flow sensor once, but for 3d printing it might be an overkill. Just looking on how the blowers are made I thought the major difference is RPMs capability.

                            undefined undefined 2 Replies Last reply 5 Nov 2020, 22:24 Reply Quote 0
                            • undefined
                              dragonn @BoA
                              last edited by 5 Nov 2020, 22:24

                              @BoA In my opinion they is only one, good 5015 fan - Sunon MF50151VX-A99
                              I put it in all my printers and recommend to every one.
                              Even that it is 12V only it is worth the hassle to add a step-down to run it.
                              It maybe not the quietest at 100% but is super powerful and if you need to be more quite just run it slower.

                              undefined 1 Reply Last reply 6 Nov 2020, 04:49 Reply Quote 1
                              • undefined
                                Veti @dragonn
                                last edited by 6 Nov 2020, 04:49

                                @dragonn said in Would be nice to set FAN target speed by RPM instead of PWM:

                                Sunon MF50151VX-A99

                                what about he MF50152VX-1L01C-Q99?

                                24V and pwm.

                                undefined undefined 2 Replies Last reply 6 Nov 2020, 06:46 Reply Quote 0
                                • undefined
                                  theruttmeister @BoA
                                  last edited by 6 Nov 2020, 05:25

                                  @BoA said in Would be nice to set FAN target speed by RPM instead of PWM:

                                  @theruttmeister OK. Perhaps You are right. I build a mass flow sensor once, but for 3d printing it might be an overkill. Just looking on how the blowers are made I thought the major difference is RPMs capability.

                                  The original request, setting fan speed in rpm not pwm %, is still a good one!

                                  Isolate, substitute, verify.

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    dragonn @Veti
                                    last edited by 6 Nov 2020, 06:46

                                    @Veti said in Would be nice to set FAN target speed by RPM instead of PWM:

                                    @dragonn said in Would be nice to set FAN target speed by RPM instead of PWM:

                                    Sunon MF50151VX-A99

                                    what about he MF50152VX-1L01C-Q99?

                                    24V and pwm.

                                    No idea, first time I see that model. But it isn't available outside in regular shops, only on aliexpress. I am buying A99 in a regular electronics store and paying less for that one.

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      BoA @Veti
                                      last edited by 20 Nov 2020, 06:46

                                      @Veti Can I connect MF50152VX-1L01C-Q99 directly to 4pin fan header on duet3? With 24V voltage?

                                      undefined 1 Reply Last reply 20 Nov 2020, 12:59 Reply Quote 0
                                      • undefined
                                        Veti @BoA
                                        last edited by 20 Nov 2020, 12:59

                                        @BoA
                                        the duet 3 has 4 pin fan connectors for pwm fans.
                                        check that the fan voltage is set to vin.

                                        undefined 1 Reply Last reply 20 Nov 2020, 13:00 Reply Quote 0
                                        • undefined
                                          BoA @Veti
                                          last edited by BoA 20 Nov 2020, 13:00

                                          @Veti That is clear. My concern was voltage on tacho pin and pwm pin. Well... perhaps only tacho.

                                          undefined ? 2 Replies Last reply 20 Nov 2020, 13:02 Reply Quote 0
                                          • First post
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA