Dan
Forum Replies Created
-
AuthorPosts
-
DanKeymaster
I guess you’ll have to cast to int and see if that makes the bug go away. It’s specific to a compiler that I don’t have installed. Can you try and let me know what works, please? I’ll then add your fix to the code permanently.
DanKeymasterThe more steps the better. We use 400 step (0.9).
DanKeymasterI have updated the github repository and the issue with a possible fix. please download a fresh copy and try again. If it works I will make the same change across the rest of gcodecncdemo.
DanKeymasterI created a github issue
DanKeymasterSo it hangs on the very first command? That is almost guaranteed you are not setting “newline” in the arduino serial window. the program waits for newline (\n) before processing a message.
DanKeymasterThe ptr starts at buffer and is only incrementing so it HAS to pass buffer+sofar.
I don’t believe this is the source of the problem.Are you sending the newline when you talk to the board?
What message, exactly, are you sending?
What is the output you see in the serial window?DanKeymasterI don’t have the hardware that you have and I obviously see the changes you made. Please either submit this as a github issue on the relevant project or distill this to a shorter message.
What, exactly, is the problem?
DanKeymasterenable the motors, then try settings > jog. Can you move either motor?
First I would check if your wires are backward. if two of the four wires are backward, the magnetic coils will fight each other and you won’t get stepping.
Second I would check the motors work AT ALL. Maybe a wire is broken. Less likely.
2016-08-27 at 17:30 in reply to: Custom bot with NEMA 17 steppers : how to inscrease micro steps ? #10659DanKeymastersingle moves one full step instead of 16 microsteps. If you change to single you also have to change
#define MICROSTEPPING_MULTIPLIER (16.0)
to 1.
for half, 2.
for interleave, iirc that’s 1/8 stepping so the value should be 8.DanKeymasterIn in firmware_ams/AFMotorDrawbot you will see two in AFMotorDrawbot.* files. Move them to firmware_ams.
This is a temporary problem caused by Arduino not using #includes the same way as all other C compilers. 😛
DanKeymaster> ERROR: The system was unable to find the specified registry key or value.
> ERROR: The system was unable to find the specified registry key or value.
> Java not found.
> Press any key to continue . . .Something like that?
I made some fixes to the start windows.bat file. Get the latest version here and let me know if it helps.
https://github.com/MarginallyClever/Makelangelo-software/blob/master/start%20windows.bat
DanKeymasterHi!
You’re doing pretty well. The firmware_ams folder does NOT have to be in the libraries folder.
https://www.marginallyclever.com/how-to-get-arduino-software-and-upload-firmware/
Does that help?
DanKeymasterSounds like you don’t have Java installed. https://java.com/en/download/
DanKeymasterWhich calculations are you talking about?
The time estimate calculations are done in the software, which uses a few magic numbers to estimate the finish time. Look in Makelangelo software GCodeFile::estimateDrawTime().
The cartesian to polar coordinate calculations do not take pulley diameter into account. As the pen holder moves the point of contact between the belt and the pulley changes, which makes the math much more challenging. I found that a lazy solution was good enough. Look in Makelangelo firmware IK()
DanKeymasterthe distance between the center of the two stepper motors depends on your individual setup.
The makelangelo 2 comes with 3m of belt by default (1.5m each side). The Makelangelo 3 comes with 4m (2m each side).
DanKeymasterServo angle is configured in makelangelo-software. we only sell steppers with 400 step per turn. if your steppers are not then you need to adjust in configure.h
DanKeymasterThe versions I pushed yesterday work together great. They are not critical fixes. There is an improvement to cap the software framerate, meaning it doesn’t suck up all your CPU all the time.
DanKeymasterI know of a problem with compiling in Arduino 1.6.9 and 1.6.10 that is supposed to be fixed in 1.6.11.
I am compiling OK in 1.6.7.
DanKeymasterZig Zag does not offer any resolution options. The original image is dithered to an UNKNOWN number of points which are then connected with the shortest possible line (that can be found in a reasonable amount of time).
Zig Zag 2 offers total # of points and number of generations to jiggle the points into place. It then uses iterative voronoi stippling over the image to jiggle a KNOWN number of points into place before playing connect the dots.
So for better results use the newer Zig Zag. The only one has been kept for… curiosity? Comparison?
2016-08-17 at 14:09 in reply to: Custom bot with NEMA 17 steppers : how to inscrease micro steps ? #10534DanKeymasterThe AMS2 uses 1/16th microstepping, the maximum. If you feel it is too much you’re welcome to change to SINGLE or INTERLEAVE, which should increase the step size for faster drawing at lower precision.
I can’t guarantee that either one will work with the changes I made to AFMotorDrawbot. I only officially support the kit we make and sell. I may have made optimizations that only work with MICROSTEPPING.
DanKeymasterThere are two parts to the project.
The robot is loaded with FIRMWARE, which teaches it how to move the motors and listen to a language called GCODE. By sending the right commands you can make the robot do what you want.
Sitting there typing out the commands by hand is so 1965. The Java SOFTWARE makes a nice interface with a menu with buttons and a preview. The software can send all the GCODE to the robot (one line at a time) and has some built in tests to prevent user mistakes.
GCODE mostly tells the robot how to move in lines – move here, move there, move up, move down. The software can make a set of line instructions with the Generators. These include fractals and a few other patterns. The real trick is Converters that look at a picture you chooose. Each converter looks at the picture in a different way and creates a different set of line commands in GCODE.
As an aside, if you write a sweet new Generator or Converter, I’ll include it in the project and you’ll be able to say your code runs on thousands of robots around the world. That might look good on a resume.
Lastly, the software can read some kinds of DXF files. DXF files describe lines already, so they show up in the software exactly as you saved them from some other app. You can save DXF files from Inkscape (free), Fusion360, Solidworks, and more.
DanKeymasterI’m not familiar with the ffleurey version of Makelangelo.
Nice robot!
DanKeymasterUh…. if you see MOTHERBOARD=2 then your version of the firmware is very very old.
RAMPS support has existed in the the Makelangelo firmware for some time now.
I’m looking in firmware_rumba/configure.h at line ~147
#if MOTHERBOARD == BOARD_RAMPS
#define MOTOR_0_DIR_PIN (55)
#define MOTOR_0_STEP_PIN (54)
#define MOTOR_0_ENABLE_PIN (38)
#define MOTOR_0_LIMIT_SWITCH_PIN (3) /* X min */#define MOTOR_1_DIR_PIN (61)
#define MOTOR_1_STEP_PIN (60)
#define MOTOR_1_ENABLE_PIN (56)
#define MOTOR_1_LIMIT_SWITCH_PIN (14) /* Y min */DanKeymasterThis is a known arduino issue. They have promised to fix it in 1.6.11.
DanKeymasterUh…. a width change of 10mm is more than enough to see a visible difference. Perhaps I don’t understand your description. Can you post photos or video of what’s going on?
-
AuthorPosts