Custom build with RAMPS and auto-homing

Home Forum Makelangelo Polargraph Art Robot Custom build with RAMPS and auto-homing

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #27564
    AvatarThomas Lee
    Participant

    Is there a guide anywhere to configuring the Makelangelo firmware/software for use with a custom machine with non-standard dimensions?

    My build is using RAMPS with endstops mounted in a location similar to the official Makelanglo 5, but the stepper motors are set wider apart, and my overall belt length is longer. I haven’t yet figured out if there are any changes I need to make to the firmware /software settings to compensate for this, and if so, where to make them.

    Any help would be greatly appreciated.

    Thank you!

    #27565
    AvatarThomas Lee
    Participant

    I think I’m getting a better feel for how to operate the machine, but I’m unclear on a few things:

    1. Given my hardware configuration (custom dimensions, auto-homing endswitches), should I be using the Makelangelo 5 firmware, or maybe 3.3? Are there any pros/cons to either?

    2. What is the correct procedure to auto-home? Should I be configuring the machine and paper settings in the application prior to connecting? Prior to homing?

    This is what I’ve been trying so far:
    1. Tape the Makelangelo 3 calibration pattern to the center top of my “canvas”.
    2. Manually move the gondola to place the pen tip within the circle on the pattern.
    3. Click “Set Home” – sometimes this button is grayed out, and I’m not sure why.
    4. Set the model to “Makelangelo Custom” (is this correct?)
    5. Set the machine width to 1257mm (distance between centers of my motor shafts.

    I’ve tried playing around with the D12 command, but I don’t think the order in which I’m doing all of this is correct. I just ran D8, and it reported “> D8 L99741.00 R99512.00″ which doesn’t seem right, if the units are in mm.

    Sometimes when I adjust the machine width and height settings in the software, the stepper motors start making grinding sounds, and the machine stops responding to commands.

    I have been successful in getting spirograph drawn, but the vertical height of the pattern is around 1.5” less than the width. I also had to manually “home” the machine, rather than using my endswitches.

    #27566
    AvatarThomas Lee
    Participant

    My most recent attempt consisted of the following:
    1. Manually move the carriage to 217mm below the midpoint of the motor shafts.
    2. Click “set home”
    3. Click “find home”
    4. Carriage descends until endswitches are triggered
    5. Carriage ascends until it runs out of belt, motors continue to turn until I manually remove power from the board.

    Could someone please take a look at the console output below and help me determine what I’m doing wrong?

    HELLO WORLD! I AM POLARGRAPH #-1
    Firmware v10
    == http://www.marginallyclever.com/ ==
    M100 – display this message
    M101 [Tx.xx] [Bx.xx] [Rx.xx] [Lx.xx]
    – display/update board dimensions.
    As well as the following G-codes (http://en.wikipedia.org/wiki/G-code):
    G00,G01,G02,G03,G04,G28,G90,G91,G92,M18,M114
    Has LCD

    > D10 V5
    M101 A0 T325 B-325
    M101 A1 T500 B-500
    M101 A2 T170 B10
    G92 X0.0 Y283.0
    D6 X0 Y283
    G0 F100 A100
    M17

    > Saving limits.
    (-325.00,-500.00,10.00) – (325.00,500.00,170.00)

    > (-325.00,-500.00,10.00) – (325.00,500.00,170.00)

    > (-325.00,-500.00,10.00) – (325.00,500.00,170.00)

    M101 A0 T325 B-325
    M101 A1 T500 B-500
    M101 A2 T170 B10
    G92 X0.0 Y283.0
    D6 X0 Y283
    G0 F100 A100
    > (-325.00,-500.00,10.00) – (325.00,500.00,170.00)

    > (-325.00,-500.00,10.00) – (325.00,500.00,170.00)

    > (-325.00,-500.00,10.00) – (325.00,500.00,170.00)

    M18
    M17
    M18
    M17
    G92 X0.0 Y283.0
    D6 X0 Y283
    G00 F500 Z90
    G00 F100
    G28
    > Find Home…
    Right…
    Left…
    X35099.89 Y-92738.11 Z90.00 F100.00mm/s A100.00
    Homing to 0.00,283.00

    #27569
    DanDan
    Keymaster

    in robot_polargraph.h, find

    #define NORMAL_MOTOR_STEPS 200 // 1.8 degrees per step
    //#define NORMAL_MOTOR_STEPS 400 // 0.9 degrees per step

    If your motor is turning too far, then you probably need it to look like above.

    The other way around your motors would not move enough.

    #27570
    AvatarThomas Lee
    Participant

    Just confirmed that my robot_polargraph.h already matches the above (configured for 1.8 deg/step, which matches the specs of my steppers.)

    Do the last two lines of the console look correct to you? Are the X and Y values presented in some unit other than mm?

    X35099.89 Y-92738.11 Z90.00 F100.00mm/s A100.00
    Homing to 0.00,283.00

    #27575
    AvatarThomas Lee
    Participant

    Just did the following:

    1. Manually moved carriage to 217mm below centerpoint between motor shafts.
    2. Ran D12. Carriage dropped until endswitches were triggered (twice), as expected.
    3. Carriage returned to correct spot from step 1.
    4. Ran G28. Carriage dropped until endswitches were triggered (twice), as expected. Carriage then rose until it ran out of belts. I lifted the belts off of the motor gears to see just how long they would run for. Both motors have been running continuously at full speed for what must have been at least five minutes, with no sign of stopping.

    Am I doing anything wrong?

    #27583
    DanDan
    Keymaster

    Those two lines do not look correct. dimensions sent to the machine should all be in mm.
    that’s 350m left and 927m down. How big is your machine?! :O

    #27584
    AvatarThomas Lee
    Participant

    I have the machine mounted on top of a 2′ x 4′ surface right now. If you divide the result of the auto-homing by 100, you get roughly 13″ x 36″,which sounds about right. Could my auto-homing be missing a “divide by 100” somewhere?

    #27585
    AvatarThomas Lee
    Participant

    So if I’m reading this right, the calibration value is saved in EEPROM in CM units, and then “converted” back to MM. Just curious, what’s the f in “/100.0f” do?

    void saveCalibration() {
    Serial.println(F(“Saving calibration.”));
    EEPROM_writeLong(ADDR_CALIBRATION_LEFT ,calibrateLeft *100);
    EEPROM_writeLong(ADDR_CALIBRATION_RIGHT ,calibrateRight *100);
    }

    /**
    *
    */
    void loadCalibration() {
    calibrateLeft = (float)EEPROM_readLong(ADDR_CALIBRATION_LEFT )/100.0f;
    calibrateRight = (float)EEPROM_readLong(ADDR_CALIBRATION_RIGHT )/100.0f;

    #27586
    AvatarThomas Lee
    Participant

    correction: “the calibration value is saved in EEPROM in tens of micrometers”.

    #27587
    AvatarThomas Lee
    Participant

    I can’t seem to get the software to allow me to make a change to the machine size settings. I currently have the firmware set to Makelangelo_5 (when I select Makelangelo_3_3, the software reports that I’ve selected an unknown type, and reverts to type “2” for some reason).

    When I enter my desired “Machine width” in the software (1257.3mm) and click OK, my machine’s stepper motors start vibrating, and the machine becomes unresponsive to the software driving commands. When I disconnect and reconnect the software, it becomes responsive again.

    Also, on an unrelated note, when I “purchase” the software for $0, I don’t get any email with a download link. I’ve previously purchased the software for $25, and wanted to redownload it, but haven’t been able to. I’ve tried making the “purchase” with two different email addresses. Is the main release on Github the same version as what’s in the webstore?

    #27590
    AvatarThomas Lee
    Participant

    G29 Produces a calibration value of roughly L1050 R1050
    G12 Produces a calibration value of roughly L105000 R105000

    When I use the calibration value provided by G29, the geometry of the drawings that the machine produces is distorted. Auto-home returns the carriage to a location lower than what would be correct.

    When I use the calibration value provided by G12, the geometry of the drawings is extremely good (the spirograph pattern, for example, is almost a perfect circle). The scale of the drawings also appears to be spot on. When I then perform an auto-home (G28), the motors spin for minutes straight, as if it thinks my machine is massive.

    #27606
    DanDan
    Keymaster

    makelangelo 5 is only one setting, it might not accept size changes.

    I’m not sure why the left and right belt sizes would be 100x larger. D11 (reset all M5 values) should set them both to ~1011.

Viewing 13 posts - 1 through 13 (of 13 total)
  • You must be logged in to reply to this topic.