Код: Выделить всё
numstr.py - компонент ,который пишет номер текущей строки gcode(сделать исполняемым)
line-number.log - файл,в котором сохраняется номер текущей строки gcode
file_yesterday.ngc - файл,в котором сохраняется последний выполняемый gcode
restart.py - скрипт функции рестарта со строки в line-number.log(сделать исполняемым)
test_restart.ngc - просто файл Gcode для проверки
==================================
test_restart.ngc - в папке с gcode
файлы restart.py , file_yesterday.ngc - в папке с gcode
файлы numstr.py , line-number.log - в папке конфига
===============================
в ini файле прописываем новую скцию:
[RESTART]
MAIN_NAME = restart.py
======================================
в основной hal файл добавляем:
loadusr -Wn numstr python numstr.py
net line motion.program-line numstr.in
net enbl halui.program.is-running numstr.enbl
==========================================
в файле axis (/usr/bin/axis) (файл без расширения)
для внесения нижеуказанных изменений в терминале командуем:
sudo gedit /usr/bin/axis
находим строки :
try:
# be sure to switch modes to cause an interp synch, which
# writes out the var file. there was a reset here, and that
# causes a var file write, but nukes important settings like
# TLO.
и ПОСЛЕ них вставляем :
file_yesterday = inifile.find("DISPLAY", "OPEN_FILE")#nkp
main_file = inifile.find("RESTART", "MAIN_NAME")
if (f != file_yesterday):
string_fy = ''
fy = open(file_yesterday, "w")
if (os.path.basename(f) != main_file):
string_fy = '(source %s)\n' % f
for ysf in open(f):
string_fy += ysf
fy.write(string_fy)
fy.close()
=====================================================================
СЛЕДУЮЩИЕ ИЗМЕНЕНИЯ ДЛЯ КНОПКИ В AXIS
ее можно и не делать - просто из стандартного меню емс
открывать файл restart.py (в принципе это и делает кнопочка))
====================================================================
в файле axis.tcl (/usr/share/axis/tcl/axis.tcl)
для внесения нижеуказанных изменений в терминале командуем:
sudo gedit /usr/share/axis/tcl/axis.tcl
находим строку :
vrule .toolbar.rule4
и ПЕРЕД ней вставляем :
Button .toolbar.gcode_cycle_load \
-command { open_explicit_code } \
-helptext [_ "open explicit code_cycle "] \
-image [load_image code] \
-relief link \
-takefocus 0
setup_widget_accel .toolbar.gcode_cycle_load {}
-------------------------------------------------
находим строки :
# Pack widget .toolbar.reload
pack .toolbar.reload \
-side left
и ПОСЛЕ них вставляем :
# Pack widget .toolbar.gcode_cycle_load
pack .toolbar.gcode_cycle_load \
-side left
===============================================
файл code.gif помещаем в /usr/share/axis/images
================================================
в файле axis (/usr/bin/axis) (файл без расширения)
для внесения нижеуказанных изменений в терминале командуем:
sudo gedit /usr/bin/axis
находим строку :
class TclCommands(nf.TclCommands):
и ПЕРЕД ней вставляем :
def open_explicit_code(refilter=False):
if running(): return
s.poll()
if not loaded_file:
root_window.tk.call("set_mode_from_tab")
return
line = vars.highlight_line.get()
o.set_highlight_line(None)
main_file = inifile.find("RESTART", "MAIN_NAME")
fs=os.path.join(open_directory, main_file)
open_file_guts(fs, False, True)
if line:
o.set_highlight_line(line)
-------------------------------