24BYJ Motor speed
Shop › Forum › Makelangelo Polargraph Art Robot › 24BYJ Motor speed
- This topic is empty.
-
AuthorPosts
-
2015-03-19 at 18:37 #6091AnonymousInactive
Started this subject on the blog https://www.marginallyclever.com/blog/2013/08/how-to-build-an-2-axis-arduino-cnc-gcode-interpreter/#comments and per Dan’s suggestion will continue here.
My setup is the following:
– Code as per “How to build an 2 axis…” tutorial https://www.marginallyclever.com/blog/2013/08/how-to-build-an-2-axis-arduino-cnc-gcode-interpreter/#comments
– Arduino Uno
– Two Steppers 24BYJ http://www.emartee.com/product/41426/
– Dual L293 Motor Shield https://www.marginallyclever.com/shop/control-boards/dual-l293-motor-shieldEverything works fine but at a relatively slow speed and the FXXX feed speed doesn’t seem to make any difference, from F100 to F10000.
Dan: on the blog you said “…you may be hitting their top speed already…” but when I drive the motor using an Sparkun EasyDriver https://www.sparkfun.com/products/retired/10267 it runs much faster.
Any ideas will be appreciated. (i’m relatively new to the stepper motors world…)
Thanks
2015-03-22 at 16:00 #6984AnonymousInactiveI think there’s something crippling top speed in firmware_ams. I ran some tests friday and found that every speed setting had the same speed at the pen tip. I have to investigate further.
Two house points to whoever figures it out before me 😉
2015-03-22 at 18:14 #6985AnonymousInactiveI guess I found where the problem is. And even though I didn’t came out with an elegant solution at least it works fine for me now.
What I did was:
– comment the “tick()” function call on both instances of the “line” method
– replace them by “delay(X)”then I played around with X until I found the right speed (4) for my motor/application.
Hope it helps….
2015-03-22 at 23:24 #6986AnonymousInactivetry delayMicroseconds(), which has a better resolution. delayMicroseconds(3500) is the same as delay(3.5).
Difference is
a) delay() can’t do fractions.
b) delayMicroseconds only works up to ~16000 microseconds.2015-03-23 at 11:58 #6987AnonymousInactiveThanks, works fine!
Can you please add the “arc” function to your code? I have seen your post about it but tit doesn’t compile and instead of cleaning it up myself I thought you will do it much faster/better than me (lazy me…) 🙄
Thanks again
2015-03-23 at 13:44 #6988AnonymousInactiveI’m currently in mexico on vacation, without hardware to test.
If you can wait a week, I might be able to get one in.The dev branch of Makelangelo has G02 and G03 arcs.
2015-03-23 at 15:13 #6989AnonymousInactivehow come you didn’t take you CNC along on your vacation?
Viva Mexico! Have one (or more) tequilas on me…
2015-03-23 at 16:22 #6990AnonymousInactiveI’m kicking myself for not bringing
(a) a quadcopter to film the hotel
(b) an arduino starter kit to write tutorialsAh well, I’ll keep busy trying to write a voronoi tessellator for Makelangelo.
2015-04-01 at 19:33 #6991AnonymousInactiveHi Dan, hope you had a good break and have your batteries fully reloaded…
I’m still interested in having the “arc” function added to your basic GCode sketch, can you please help with it?
Many thanks!
2015-04-14 at 12:08 #6992AnonymousInactiveHi Dan, following your suggestion I have been trying to add the arc function to your “2-axis Arduino CNC Gcode Interpreter”. This path seems to be more easy than removing what is not needed from Makelangelo code. Anyway it seems my Arduino/Math skills are not strong enough to make it work 🙁 , could you please give me (and other) a hand and release a new version adding the Arc method?
Many, many, thanks in advance….
2015-04-14 at 15:55 #6993AnonymousInactiveI’ll see what I can do.
2015-04-14 at 23:21 #6994AnonymousInactivecheck the gcodecncdemo2v1 and v2, both should have arc() now.
2015-04-15 at 12:40 #6995AnonymousInactiveDan, may thanks, will test later but i guess I’m now good to go on my own…
Cheers!
2015-04-15 at 22:15 #6996AnonymousInactiveDan after spending a couple of hours with the new version I have the following comments:
1 – The HELP message for arc
F(“G02 [X(steps)] [Y(steps)] [I(steps)] [J(steps)] [F(feedrate)]; – clockwise arc”)
doesn’t match the method implementation
arc(float cx,float cy,float x,float y,float dir)
in other words the X,Y and cx, cy parameters are interchanged2 – If I’m getting it right the following commands should give me the same result: a straight line from X100, Y00 to X-100 Y00:
// USING LINE
G92 X00 Y00;
G00 X100;
G00 X-100;//USING ARC
G92 X00 Y100;
G00 X100;
G02 I00 J00 X-100 Y00;but this is not what I’m getting. There is no movement in the second case.
What am I doing something wrong?
NOTE: My motors are 2048 steps per turn
2015-04-16 at 18:28 #6997AnonymousInactiveI’ll fix the gcodecncdemo and put them the right way around.
// USING LINE
G92 X00 Y00;
G00 X100;
G00 X-100;Would be a straight line.
//USING ARC
G92 X00 Y100; <– Did you mean Y100?
G00 X100;
G02 I00 J00 X-100 Y00;2015-04-16 at 19:29 #6998AnonymousInactiveMy wrong, should be Y00, sorry
//USING ARC
G92 X00 Y00;
G00 X100;
G02 I00 J00 X-100 Y00;2015-04-17 at 11:32 #6999AnonymousInactiveDan, forget about the straight line question, I guess I got it wrong.
It seems I’m experiencing problems with they way the program drives the motors and that’s why I’m getting odd results. I have more digging to do.Many thanks for your support.
Best.
-
AuthorPosts
- You must be logged in to reply to this topic.