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

    Using HangPrinter geometry for Wall Plotter?

    Scheduled Pinned Locked Moved
    General Discussion
    3
    37
    1.4k
    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.
    • JoergS5undefined
      JoergS5 @TC
      last edited by JoergS5

      @TC manually moving the steppers don't help, because the firmware doesn't know the position, and it's also not precise. It's only the firmware=>stepper direction working, not from stepper to firmware.

      I would define the 4 limiting borders instead of points and place endstops there (borders are easier to target than points). You could use 4 endstops type NC (normally closed) wired in series (or 2*2) and connect them to one endstop(or 2), so when one of them is triggered, the circuit is open and the endstop is triggered. Then store this stepper positions. (Maybe by means of the new object model). Another method is to trigger the endstops by the wires, but this could be difficult to implement. I thought of optically marking them with a color could be a solution.

      What I don't understand is why you want to measure 4 points. Two positions should be sufficient, because the other position is defined by the distance. The you can set the positions by G92 directly after endstop trigger.

      You can set M669 values at all times and overwrite values also. If a kinematics or cache value recalculation is necessary, the Recalc() method is for this. When M669 reads in parameter X e.g., then in the code to read X must be set a flag to Recalc().

      TCundefined 1 Reply Last reply Reply Quote 0
      • TCundefined
        TC @JoergS5
        last edited by TC

        @JoergS5 Ah I was not precise enough. I did not mean I would move them by hand but by defining motor A and B as axes and then use DWC to control them.

        Well the idea behind the 4 point system is the following:
        In the beginning the printer knows nothing. The printhead is hanging in two wires at the wall but it does not even know how long the wire is to the each anchor. So what it needs to find out is the X and Y coordinate for each anchor. That gives 4 variables. Now I move to the left top corner and define it as 0,0. For the followig 3 moves it can measure the change in wire length but still does not know its total length. That gives me 3 relative lengths that make it possible to calculate the anchor point. It might be possible with just 3 points but in my derivation it only works with 4 😉

        The problem with endstops is that due to the highly non linear behaviour depending on the start position it is nt even clear which border got hit. Additionally a border only gives my one coordinate... I would need even more measurements

        JoergS5undefined 1 Reply Last reply Reply Quote 0
        • JoergS5undefined
          JoergS5 @TC
          last edited by

          @TC you should try your idea. You can use the new object model to store the values and make the calculations, or you set parameters with M669 and let the firmware calculate the distances and other parameters.

          I had some discussions in reprapforum about using wires. There were some interesting ideas to avoid the length deviation due to the take-up on a spindle.
          This here eg: https://reprap.org/forum/read.php?14,815780,page=3

          TCundefined droftartsundefined 2 Replies Last reply Reply Quote 0
          • TCundefined
            TC @JoergS5
            last edited by

            @JoergS5 oh thanks! I was thinking about the same problem and will study the thread!

            JoergS5undefined 1 Reply Last reply Reply Quote 0
            • JoergS5undefined
              JoergS5 @TC
              last edited by

              @TC this were two additional links which I stored myself, giving ideas:
              https://reprap.org/forum/read.php?2,151871,page=3
              http://www.wemakerobots.com/en/3d-printer/dual-wire-gantry-3d-printer

              1 Reply Last reply Reply Quote 0
              • droftartsundefined
                droftarts administrators @JoergS5
                last edited by

                @JoergS5 said in Using HangPrinter geometry for Wall Plotter?:

                I had some discussions in reprapforum about using wires. There were some interesting ideas to avoid the length deviation due to the take-up on a spindle.
                This here eg: https://reprap.org/forum/read.php?14,815780,page=3

                @JoergS5 I remembered that there's this thread on the reprap forums https://reprap.org/forum/read.php?2,151871,177714#msg-177714 about using a tilted pulley to feed wire around a pulley. The incoming/outgoing wire is always on the same position, so there isn't an issue with it moving up and down the drive pulley, causing length deviation. Seem like they had problems getting it to work as a CoreXY though, possibly due to tension.

                Ian

                Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                JoergS5undefined 1 Reply Last reply Reply Quote 0
                • JoergS5undefined
                  JoergS5 @droftarts
                  last edited by JoergS5

                  @droftarts I didn't mean moving up and down the axis position, but doubling (tripling etc.) the wires on the spindle when they are stacked, changing the radius and so steps/mm. This will result in a changing movement which is difficult to calculate.
                  The solution with two pulleys had a problem that the solution had too much friction. I think the solution with the stepper and 4 spindles/pulleys at the edges is a nice solution.

                  For tension, there was also a lot of discussion what to take, like FireLine, Kevlar, steel etc.

                  One interesting addition was a formula how much friction is needed for wires:
                  https://reprap.org/forum/read.php?397,817525,826869#msg-826869
                  Unfortunately I didn't understand the formula...

                  TCundefined 1 Reply Last reply Reply Quote 0
                  • TCundefined
                    TC @JoergS5
                    last edited by TC

                    @JoergS5 Hey I saw on the other topic you are also building a new kinematic system. Can you help me to build the firmware? I tried to follow the BuildInstructions.md file but it seems some components are not availible for download...

                    At point 3. I get to this page: https://sourceforge.net/projects/gnuarmeclipse/
                    which tells me it is outddated 😕

                    JoergS5undefined 1 Reply Last reply Reply Quote 0
                    • JoergS5undefined
                      JoergS5 @TC
                      last edited by JoergS5

                      @TC the BuidInstructions.md is a file in the github, your link is missing all the part http etc. in front of it.

                      The correct path to the file is:
                      https://github.com/Duet3D/RepRapFirmware/blob/v3.02-dev/BuildInstructions.md
                      Please take the one of the branch you're using, they may be different. (Change branch in github, the correct .md file will be shown then)

                      TCundefined 1 Reply Last reply Reply Quote 0
                      • TCundefined
                        TC @JoergS5
                        last edited by

                        @JoergS5 Yes I know but the download link in the BuildInstruction file in version 3.1.1 did not work. But the link in the file you posted worked 🙂
                        Now I followed the instruction and unfortunately am stuck trying to build CoreNG. I get this error:

                        17:29:36 **** Incremental Build of configuration Default for project CoreNG ****
                        make all
                        make: *** No rule to make target 'all'. Stop.
                        "make all" terminated with exit code 2. Build might be incomplete.

                        17:29:36 Build Failed. 1 errors, 0 warnings. (took 532ms)

                        JoergS5undefined 1 Reply Last reply Reply Quote 0
                        • JoergS5undefined
                          JoergS5 @TC
                          last edited by

                          @TC I don't build for all, so I don't know how to help. I use a specific target, Duet 3 e.g. and then build. When I build RepRapFirmware, it builds all dependent projects automatically (including CoreNG).

                          TCundefined 1 Reply Last reply Reply Quote 0
                          • TCundefined
                            TC @JoergS5
                            last edited by

                            @JoergS5 I didn't intend to build for all. Do you know how just to build for Duet Wifi?

                            JoergS5undefined 1 Reply Last reply Reply Quote 0
                            • JoergS5undefined
                              JoergS5 @TC
                              last edited by JoergS5

                              @TC in project RepRapFirmare, right click on project, then select Build Configuration - Select - and select your target.
                              I deleted the Duet 2 target in my project, so I cannot tell you how it's named, probably SAM4E8E (that's the name of the MCU).

                              I checked, it's probably Duet2_RTOS.

                              TCundefined 1 Reply Last reply Reply Quote 0
                              • TCundefined
                                TC @JoergS5
                                last edited by

                                @JoergS5 Ok I did not take the different branches into account. Now CoreNG and FreeRTOS work but RRFLibaries dont...
                                Do you use these branches?

                                RepRapFirmware: v3-dev
                                CoreNG: dev
                                FreeRTOS: master
                                RRFLibraries: dev
                                DuetWiFiSocketServer: master
                                CANlib : master
                                

                                Or did anything change here that is not updated in the instruction?

                                JoergS5undefined 1 Reply Last reply Reply Quote 0
                                • JoergS5undefined
                                  JoergS5 @TC
                                  last edited by JoergS5

                                  @TC I had also some problems with the different branches. So now I always use tags, currently 3.1.0 tag for all projects (in github, when opening a project, there is a tag button). They compile well. I've not tested it, but RepRapFirmware has a 3.1.1 tag also, this could work also.

                                  TCundefined 1 Reply Last reply Reply Quote 0
                                  • TCundefined
                                    TC @JoergS5
                                    last edited by

                                    @JoergS5 yes now we are very close 😉
                                    Just one more error at the end of Firmware build:

                                    c:/program files/gnu arm eclipse/build tools/2.6-201507152002/bin//sh: crc32appender: not found
                                    makefile:94: recipe for target 'post-build' failed
                                    make[1]: [post-build] Error 127 (ignored)

                                    Did you see that before?

                                    JoergS5undefined 1 Reply Last reply Reply Quote 0
                                    • JoergS5undefined
                                      JoergS5 @TC
                                      last edited by JoergS5

                                      @TC in the reprapfirmware\Tools\crc32appender directory is this tool for different operating systems, this must be reachable. I expect it creates a signature or checksum information.

                                      TCundefined 1 Reply Last reply Reply Quote 0
                                      • TCundefined
                                        TC @JoergS5
                                        last edited by

                                        @JoergS5 hm but it is definitly there...

                                        droftartsundefined 1 Reply Last reply Reply Quote 0
                                        • droftartsundefined
                                          droftarts administrators @TC
                                          last edited by

                                          @TC see this thread https://forum.duet3d.com/topic/12275/crc32appender-now-needed-for-rrf
                                          The folder that contains crc32appender needs to be in you PATH.

                                          Ian

                                          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                                          TCundefined 1 Reply Last reply Reply Quote 0
                                          • TCundefined
                                            TC @droftarts
                                            last edited by

                                            @droftarts @JoergS5 Ah now its working. Thanks a lot!

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