# HG changeset patch # User mdd # Date 1536445290 -7200 # Node ID 9cb74db14c420212582e2b001a7b825382bd3623 # Parent 74801c0f2709be5159d84878bbc2b88b3738bcc8 hardware axis speedtest diff -r 74801c0f2709 -r 9cb74db14c42 tools/axis_speedtest.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/axis_speedtest.py Sun Sep 09 00:21:30 2018 +0200 @@ -0,0 +1,43 @@ +import argparse + +def gen_speedtest(args): + fd = open(args.file, 'wb') + + if args.axis.lowercase() == 'x': + pos = [0, args.dx] + print(fd, "G0 y%i F%i" % ( + args.dy / 2, args.min * 60)) + else: + pos = [0, args.dy] + print(fd, "G0 x%i F%i" % ( + args.dx / 2, args.min * 60)) + + loops = (args.max - args.min) / args.increment + speed = args.min + for loop in range(loops): + print(fd, "G0 %s%i F%i" % ( + args.axis, pos[0], speed * 60)) + print(fd, "G0 %s%i F%i" % ( + args.axis, pos[1], speed * 60)) + + speed += args.inc + + fd.close() + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("axis", help="Define X or Y axis") + parser.add_argument("file", help="Output gcode filename") + parser.add_argument("--min", type=int, default=100, help="Minimum speed mm/s (100)") + parser.add_argument("--max", type=int, default=200, help="Maximum speed mm/s (200)") + parser.add_argument("--dx", type=int, default=200, help="Maximum X dimension (200)") + parser.add_argument("--dy", type=int, default=200, help="Maximum Y dimension (200)") + parser.add_argument("--inc", type=int, default=10, help="Speed increment after each line") + + args = parser.parse_args() + + gen_speedtest(args) + +if __name__ == '__main__': + main() \ No newline at end of file