Navigation

    Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    Tilting dual extruder - position check with endstops?

    Tuning and tweaking
    dualcolor
    5
    29
    1235
    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.
    • Eumldeuml
      Eumldeuml last edited by

      Hi everyone!

      I am currently designing a tilting dual extruder around the Bondtech BMG-X2 where the tilting will happen by driving the extruder onto a ramp at the edge of the print area. The extruder is then locked by magnets in either position. This will prevent the idle nozzle dragging over the print.
      For that I want to implement a "failsafe" which consists of two endstops which will be triggered when the extruder is tilted in either way. Now I'm wondering if the Duet WiFi supports some kind of state checking so if the extruder is tilted out of place (because of plastic curling up or something else) the print head will initiate the tool change macro again to put the extruder back where it should be.

      If that's possible I'd love to get a hint on how to implement it.
      Thanks in advance! πŸ™‚

      deckingman 1 Reply Last reply Reply Quote 0
      • DocTrucker
        DocTrucker last edited by

        Can't help with your state check but why not just have the magnets pull the mechanism one way of the other? Saves a drive to the end each time and it would be a hard stop which may be more accurate.

        Alive: 1 Ormerodish machines. 1 Custom Cantilever. 3 P3Steel. 1 Ciclopish scanner. In build: 1 P3Steel. Controllers: 2 Duet 2 , 2 D0.6, 1 D0.8.5, 1 D3 v0.5, 1 RAMPS/DRV8825, 1 Uno/Scan Card.

        1 Reply Last reply Reply Quote 0
        • deckingman
          deckingman @Eumldeuml last edited by

          @eumldeuml Hmm. Well kind of. If I understand what you want correctly that is.

          Check out M581 https://duet3d.dozuki.com/Wiki/GCode#Section_M581_Configure_external_trigger

          You could use that to monitor an end stop and take some action if it sees either a rising or falling edge on the signal. The "T" parameter is the logical trigger number and from the wiki ..........quote

          "Trigger number 0 causes an emergency stop as if M112 had been received. Trigger number 1 causes the print to be paused as if M25 had been received. Any trigger number # greater then 1 causes the macro file sys/trigger#.g to be executed. "

          So, you could have a macro called "trigger2" for example which in itself cpuld call the tool change macro (or run any other commands that take your fancy).

          Does that help?

          Ian
          https://somei3deas.wordpress.com/
          https://www.youtube.com/c/deckingman/

          Eumldeuml 1 Reply Last reply Reply Quote 0
          • Eumldeuml
            Eumldeuml last edited by

            I'm not sure if I understand your answer correctly (or if I didn't describe the mechanism clear enough) but I do have a hard stop for the tilting mechanism.
            In the picture you can see it. In the middle there's the bearing and below that there is a pin that moves onto an adjustable magnet holder (the screws and the magnet on the left are not visible).
            0_1551792772001_69ee83ae-0d9b-4caf-a04c-beeb474c3780-image.png

            deckingman DocTrucker 2 Replies Last reply Reply Quote 0
            • deckingman
              deckingman @Eumldeuml last edited by

              @eumldeuml I guess that post was in answer to @DocTrucker and not me?

              Ian
              https://somei3deas.wordpress.com/
              https://www.youtube.com/c/deckingman/

              Eumldeuml 1 Reply Last reply Reply Quote 0
              • Eumldeuml
                Eumldeuml @deckingman last edited by

                @deckingman I think that's it! πŸ™‚ I'll play around with it as soon as I managed to cram the two endstops in there. Thank you very much! πŸ™‚

                One last question to be sure: The triggers are constantly monitored, right? So no waiting until the buffer is empty or something?

                deckingman 1 Reply Last reply Reply Quote 0
                • Eumldeuml
                  Eumldeuml @deckingman last edited by

                  @deckingman Sorry for the confusion: The post with the picture was an answer to DocTrucker and the one after that was for you.

                  1 Reply Last reply Reply Quote 0
                  • DocTrucker
                    DocTrucker @Eumldeuml last edited by

                    @eumldeuml I was just thinking about using the magnets to pull the mechanism either way rather than ramp to save needing to go off to a specific location. Could save quite a bit of travel moves.

                    Alive: 1 Ormerodish machines. 1 Custom Cantilever. 3 P3Steel. 1 Ciclopish scanner. In build: 1 P3Steel. Controllers: 2 Duet 2 , 2 D0.6, 1 D0.8.5, 1 D3 v0.5, 1 RAMPS/DRV8825, 1 Uno/Scan Card.

                    Eumldeuml 1 Reply Last reply Reply Quote 0
                    • deckingman
                      deckingman @Eumldeuml last edited by

                      @eumldeuml said in Tilting dual extruder - position check with endstops?:

                      @deckingman

                      ................One last question to be sure: The triggers are constantly monitored, right? So no waiting until the buffer is empty or something?

                      Sort of. It depends on what you set for the "C" parameter. C0 will enable the trigger at any time, C1 will only invoke when printing from the SD card. I can't be sure but I think it's an instant interrupt so does not have to wait for whatever moves are i the queue to complete. DC42 will confirm that or otherwise.

                      Ian
                      https://somei3deas.wordpress.com/
                      https://www.youtube.com/c/deckingman/

                      1 Reply Last reply Reply Quote 0
                      • Eumldeuml
                        Eumldeuml @DocTrucker last edited by

                        @doctrucker But that would mean that I need a servo to move the magnet and thus tilt the extruder. Either that or using the servo directly to tilt the extruder was my original plan but it's not that easy to fit a small servo on the printhead and get it to reliably and repeatably set the tilt. Also I'll save some time since I don't need an ooze shield or in the case of a single nozzle, an excessive purge tower.
                        Sooner or later I'll move to a toolchanger but that's another can of worms entirely...

                        @deckingman I think, either C1 or C0 will get me the results I want because when it's not printing it's usually not important if the tool is in the right spot as I can include a toolchange routine at the beginning of each print which will set the tilt to the desired position.

                        DocTrucker deckingman 2 Replies Last reply Reply Quote 0
                        • DocTrucker
                          DocTrucker @Eumldeuml last edited by DocTrucker

                          @eumldeuml Fair enough, I'd assumed there were two magnets.

                          @eumldeuml said in Tilting dual extruder - position check with endstops?:

                          The extruder is then locked by magnets in either position.

                          Alive: 1 Ormerodish machines. 1 Custom Cantilever. 3 P3Steel. 1 Ciclopish scanner. In build: 1 P3Steel. Controllers: 2 Duet 2 , 2 D0.6, 1 D0.8.5, 1 D3 v0.5, 1 RAMPS/DRV8825, 1 Uno/Scan Card.

                          1 Reply Last reply Reply Quote 0
                          • deckingman
                            deckingman @Eumldeuml last edited by

                            @eumldeuml said in Tilting dual extruder - position check with endstops?:

                            @deckingman I think, either C1 or C0 will get me the results I want because when it's not printing it's usually not important if the tool is in the right spot as I can include a toolchange routine at the beginning of each print which will set the tilt to the desired position.

                            Yes, I think so too. I use M581 for additional axis maxima end stops in case I do something stupid, and although it's been a while since they have been triggered, IIRC it's pretty instant.

                            Ian
                            https://somei3deas.wordpress.com/
                            https://www.youtube.com/c/deckingman/

                            1 Reply Last reply Reply Quote 1
                            • Eumldeuml
                              Eumldeuml last edited by

                              So, I've built my tilting extruder and now I want to configure the triggers. Does anyone know if and how I can set a trigger with M581 with a dependency on the loaded tool? That means I only want a trigger input to be monitored when the corresponding tool is active. To be more specific, I need a way to use an "if" command without actually using it (since gcode doesn't support conditionals).
                              My idea is to initiate the trigger monitoring for the specific endstop upon selecting the tool. But I don't know how to stop monitoring that endstop when deselecting the tool...

                              deckingman 1 Reply Last reply Reply Quote 0
                              • deckingman
                                deckingman @Eumldeuml last edited by deckingman

                                @eumldeum Conditional gcode statements are not possible at this point in time. Coming soon I believe.

                                Edit. If you use the tool change macros (tfree, tpost etc). you could maybe add the M581 to one of those. Come to that, you can always call any macro from within a macro so that might be a work around? So the M581 only gets called if a certain macro is running if you get my meaning.

                                Ian
                                https://somei3deas.wordpress.com/
                                https://www.youtube.com/c/deckingman/

                                Eumldeuml 2 Replies Last reply Reply Quote 0
                                • Eumldeuml
                                  Eumldeuml @deckingman last edited by

                                  @deckingman I'm not sure about that since gcode has been around for a very long time without such changes... I think we will see another implementation of machine control code (maybe based on gcode). But that's another topic... πŸ˜„
                                  Regarding my question: I found the answer in the documentation (I just didn't read thoroughly enough)...

                                  deckingman 1 Reply Last reply Reply Quote 0
                                  • deckingman
                                    deckingman @Eumldeuml last edited by

                                    @eumldeuml Oh I meant that conditional gcode will be implemented in RRF soon. That's from DC42 and is on his work list.

                                    Ian
                                    https://somei3deas.wordpress.com/
                                    https://www.youtube.com/c/deckingman/

                                    1 Reply Last reply Reply Quote 0
                                    • Eumldeuml
                                      Eumldeuml @deckingman last edited by

                                      @deckingman Really? That would add a lot of possibilities to Duet controled machines! Although only for the advanced user, I don't think that the average person needs conditional gcode for printing vases and figures... πŸ˜…

                                      Regarding your edit in your post above: Calling a macro from within another macro would certainly work butfor now I'm testing it with a M581 S1 in tpost#.g and a M581 S-1 in tfree#.g. This command also calls a macro (trigger#.g) so in a way you were right πŸ™‚

                                      deckingman 2 Replies Last reply Reply Quote 0
                                      • deckingman
                                        deckingman @Eumldeuml last edited by

                                        @eumldeuml Yes, conditional gcode and also the use of variables have been asked for on many occasions on these forums and it's definitely on David's "todo" list. For sure not needed for straight printing as such, but these things would be very useful inside macros and for configuration purposes.

                                        Ian
                                        https://somei3deas.wordpress.com/
                                        https://www.youtube.com/c/deckingman/

                                        1 Reply Last reply Reply Quote 0
                                        • deckingman
                                          deckingman @Eumldeuml last edited by

                                          @eumldeuml said in Tilting dual extruder - position check with endstops?:
                                          ...................... This command also calls a macro (trigger#.g) so in a way you were right πŸ™‚

                                          That sounds just like my wife - she will never admit that I might be right about something but might go as far as saying "in a way"....☺

                                          Ian
                                          https://somei3deas.wordpress.com/
                                          https://www.youtube.com/c/deckingman/

                                          Eumldeuml 1 Reply Last reply Reply Quote 0
                                          • Eumldeuml
                                            Eumldeuml @deckingman last edited by

                                            @deckingman The phrase "in a way" might be subject to my deficiency in expressing the desired statement distinctly enough in the prior sentence. So I'll gladly and openly admit that you were absolutely right πŸ˜›

                                            This post was made possible by google translator and other sources of fancy english words lol

                                            deckingman 1 Reply Last reply Reply Quote 0
                                            • deckingman
                                              deckingman @Eumldeuml last edited by

                                              @eumldeuml said in Tilting dual extruder - position check with endstops?:

                                              @deckingman The phrase "in a way" might be subject to my deficiency in expressing the desired statement distinctly enough in the prior sentence. So I'll gladly and openly admit that you were absolutely right πŸ˜›

                                              This post was made possible by google translator and other sources of fancy english words lol

                                              Good Lord. I had absolutely no idea that English was not your first language. In fact, I know very few native English speakers who could have put those sentences together. You and your sources of "fancy English" are doing a remarkably fine job. Terms such as "can of worms" and the slang expression "cram the two endstops in there" had me convinced that I was conversing with a native English speaker.

                                              May I ask what your first language really is? Let me guess. You use expressions such as "endstop", "toolchanger" and "printhead". These would normally be separate words (end stop, tool changer etc) but I believe that the German language tends to combine multiple words, if not whole sentences into a single word. Would I be right?

                                              By the way, it's English with a capital "E". ☺

                                              Ian
                                              https://somei3deas.wordpress.com/
                                              https://www.youtube.com/c/deckingman/

                                              Eumldeuml 1 Reply Last reply Reply Quote 0
                                              • Eumldeuml
                                                Eumldeuml @deckingman last edited by

                                                @deckingman Well, those expressions you mentioned come from several YouTube channels where English is the dominant language. So I know a lot of words and expressions (passively) but when I want to use them to create a clear English sentence I usually don't recall any of them... That means I either have to resort to googling every other word or I use the next best thing that comes to mind which very likely results in a poorly understandable sentence. But that's all due to my lack of experience in the English language (I don't need to speak English very often).

                                                You are absolutely right about my native language and I like your analytic way of thinking πŸ˜„
                                                You're only wrong in one point: In German you can't put a whole sentence in one word even though you can create awfully long sentences. The English language tends to have rather short sentences (and also words) which can sound quite primitive in German.

                                                deckingman 1 Reply Last reply Reply Quote 0
                                                • deckingman
                                                  deckingman @Eumldeuml last edited by

                                                  @eumldeuml However you achieve it, your English is far better than my German. As general rule, English people are very poor at making an effort to learn other languages. The usual method to make non-English speakers understand, is to simply keep repeating the same word or phrase in English but saying it louder each time.☺

                                                  Ian
                                                  https://somei3deas.wordpress.com/
                                                  https://www.youtube.com/c/deckingman/

                                                  Eumldeuml wilriker 2 Replies Last reply Reply Quote 0
                                                  • Eumldeuml
                                                    Eumldeuml @deckingman last edited by

                                                    @deckingman Well, that phenomenon of "explaining" something by repeating it louder and louder is common in every language I guess...

                                                    By the way, your anlaytic thinking and your sense for perfectionism ("it's English with a capital E") has intrigued me to check out your blog and I like it a lot! πŸ™‚ So many ideas for projects that likely never get done since I already have like months of work before me until I finish all the stuff that's on my DIY list...
                                                    Anyways, your printer and the mixing hotend with five extruders is really impressive! I don't know if this compliment will drown in countless other ones but in my experience the average DIY guy doesn't get much appreciation in his personal environment, so I just wanted to get it out there. Keep up the good work! πŸ™‚

                                                    deckingman 1 Reply Last reply Reply Quote 0
                                                    • deckingman
                                                      deckingman @Eumldeuml last edited by

                                                      @eumldeuml Well thank you for your kind words. The blog/web site isn't the best because it's a free WordPress plan so I'm limited on what I can do. But then, I get no financial reward out of it, so I'm reluctant to pay out for a better plan.

                                                      You are right that I don't get much feedback. The analytics show that on average I get about 150 views and 60 visitors per day but I only have 12 followers and rarely receive any comments. My YouTube channel is similar in that it has received around 36,000 views to date but I do have 412 followers. I only get one or two comments a month from YouTube though.

                                                      The only reason I post things on my blog and YouTube channel is to share my experiences (both good and bad) so that others might benefit from what I've learned or discovered. So it's always nice to know that I'm not completely wasting my time.

                                                      There is a another native German @wilriker who I have had several conversations with, both on these forums and privately. He likes me to correct his English. I thought you'd appreciate it too, hence the "E" not "e". I wasn't trying to be pedantic - merely helpful.

                                                      Ian
                                                      https://somei3deas.wordpress.com/
                                                      https://www.youtube.com/c/deckingman/

                                                      Eumldeuml 1 Reply Last reply Reply Quote 0
                                                      • First post
                                                        Last post
                                                      Unless otherwise noted, all forum content is licensed under CC-BY-SA