add commands (1cm X and Y axis, draw rectangle 3x3)

This commit is contained in:
sinseman44
2020-11-10 20:14:31 +00:00
parent 15b46ad259
commit 7d4f0886c4

View File

@@ -19,7 +19,10 @@ class menu:
cmd_menu = ['..',
'Homing',
'Set up Pen',
'Set down Pen']
'Set down Pen',
'Set 1cm X axis',
'Set 1cm Y axis',
'Set rectangle']
files_menu = ['..']
@@ -62,7 +65,6 @@ class menu:
self.lcd.write_string('\x00')
self.__refresh_menu()
def __homing(self):
''' set homing command '''
self.lcd.clear()
@@ -102,6 +104,53 @@ class menu:
self.lcd.write_string('\x00')
self.__refresh_menu()
def __set_line_1cm(self, axis='X'):
''' set a 1cm line in X or Y axis '''
self.lcd.clear()
self.lcd.home()
self.lcd.write_string(" waiting ...")
with open("/tmp/set_line.gcode", 'w') as f:
f.write("M300 S50 (UP Pen)\n")
f.write("G28 (Homing)\n")
f.write("G1 X10 Y10 F1000.0\n")
f.write("M300 S30 (DOWN Pen)\n")
if axis.startswith('X'):
f.write("G1 Y15 F1000.0\n")
f.write("G1 Y12.5 F1000.0\n")
f.write("G1 X20 F1000.0\n")
f.write("G1 Y10 F1000.0\n")
f.write("G1 Y15 F1000.0\n")
elif axis.startswith('Y'):
f.write("G1 X15 F1000.0\n")
f.write("G1 X12.5 F1000.0\n")
f.write("G1 Y20 F1000.0\n")
f.write("G1 X10 F1000.0\n")
f.write("G1 X15 F1000.0\n")
f.write("M300 S50 (UP Pen)\n")
f.write("G28 (Homing)\n")
os.system("sudo python /home/pi/PyCNC/pycnc /tmp/set_line.gcode")
self.lcd.clear()
self.lcd.cursor_pos = (self.current_cursor % self.max_rows, 0)
self.lcd.write_string('\x00')
self.__refresh_menu()
def __set_rect(self):
''' set a rectangle '''
self.lcd.clear()
self.lcd.home()
self.lcd.write_string(" waiting ...")
with open("/tmp/set_rect.gcode", 'w') as f:
f.write("G28 (Homing)\n")
f.write("G1 X30 Y0 F2000.0\n")
f.write("G1 X30 Y30 F2000.0\n")
f.write("G1 X0 Y30 F2000.0\n")
f.write("G1 X0 Y0 F2000.0\n")
os.system("sudo python /home/pi/PyCNC/pycnc /tmp/set_rect.gcode")
self.lcd.clear()
self.lcd.cursor_pos = (self.current_cursor % self.max_rows, 0)
self.lcd.write_string('\x00')
self.__refresh_menu()
def init_menu(self):
''' display menu '''
self.lcd.clear()
@@ -162,6 +211,12 @@ class menu:
self.__set_up_pen()
elif self.current_menu[self.current_cursor].startswith('Set down Pen'):
self.__set_down_pen()
elif self.current_menu[self.current_cursor].startswith('Set 1cm X axis'):
self.__set_line_1cm('X')
elif self.current_menu[self.current_cursor].startswith('Set 1cm Y axis'):
self.__set_line_1cm('Y')
elif self.current_menu[self.current_cursor].startswith('Set rectangle'):
self.__set_rect()
elif self.current_menu == self.files_menu:
if not self.current_menu[self.current_cursor].startswith('..'):
self.__drawing(self.current_menu[self.current_cursor])
@@ -170,4 +225,3 @@ class menu:
self.current_menu = self.main_menu
self.current_cursor = 0
self.init_menu()