From: Sebastian K. <gi...@gi...> - 2013-10-11 05:52:00
|
Merge remote-tracking branch 'origin/master' into joints_axes3 Conflicts: src/emc/motion/motion.c http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=fda6359 configs/sim/gmoccapy/botton.hal | 12 + configs/sim/gmoccapy/button.glade | 115 + configs/sim/gmoccapy/core_sim4.hal | 64 + configs/sim/gmoccapy/gmoccapy.glade | 6274 -- configs/sim/gmoccapy/gmoccapy.ini | 12 +- configs/sim/gmoccapy/gmoccapy_4_axis.ini | 220 + configs/sim/gmoccapy/gmoccapy_handler.py | 2466 - configs/sim/gmoccapy/gmoccapy_hw_btn_postgui.hal | 39 - configs/sim/gmoccapy/gmoccapy_lathe.ini | 9 +- configs/sim/gmoccapy/gmoccapy_left_panel.ini | 10 +- configs/sim/gmoccapy/gmoccapy_postgui.hal | 3 + .../sim/gmoccapy/gmoccapy_postgui_left_panel.hal | 71 + configs/sim/gmoccapy/gmoccapy_right_panel.ini | 10 +- .../sim/gmoccapy/gmoccapy_sim_hardware_button.ini | 181 + .../gmoccapy_with_simulated_hardware_buttons.ini | 200 - configs/sim/gmoccapy/gmoccapy_with_user_tabs.ini | 22 +- configs/sim/gmoccapy/h_buttonlist.glade | 8 +- configs/sim/gmoccapy/icon/Auto.gif | Bin 780 -> 0 bytes configs/sim/gmoccapy/icon/E-Stop.gif | Bin 2181 -> 0 bytes configs/sim/gmoccapy/icon/Logo.png | Bin 500 -> 0 bytes configs/sim/gmoccapy/icon/clear.png | Bin 2088 -> 0 bytes configs/sim/gmoccapy/icon/configure-2.png | Bin 5145 -> 0 bytes configs/sim/gmoccapy/icon/coolant_off.png | Bin 1159 -> 0 bytes configs/sim/gmoccapy/icon/coolant_on.gif | Bin 1669 -> 0 bytes configs/sim/gmoccapy/icon/dimensions.png | Bin 2802 -> 0 bytes configs/sim/gmoccapy/icon/editor.png | Bin 2535 -> 0 bytes configs/sim/gmoccapy/icon/enter.png | Bin 1230 -> 0 bytes configs/sim/gmoccapy/icon/estopred.png | Bin 3509 -> 0 bytes configs/sim/gmoccapy/icon/exit.png | Bin 3998 -> 0 bytes configs/sim/gmoccapy/icon/exit_application.png | Bin 2989 -> 0 bytes configs/sim/gmoccapy/icon/forward.png | Bin 1098 -> 0 bytes configs/sim/gmoccapy/icon/forward_on.gif | Bin 1634 -> 0 bytes .../sim/gmoccapy/icon/from where are the icons.txt | 74 - configs/sim/gmoccapy/icon/fullscreen_preview.png | Bin 2854 -> 0 bytes configs/sim/gmoccapy/icon/index_tool.svg | 83 - configs/sim/gmoccapy/icon/jog.png | Bin 1317 -> 0 bytes configs/sim/gmoccapy/icon/keyboard.png | Bin 4136 -> 0 bytes configs/sim/gmoccapy/icon/machineonoff.png | Bin 896 -> 0 bytes configs/sim/gmoccapy/icon/mdi.png | Bin 1394 -> 0 bytes configs/sim/gmoccapy/icon/mist_off.png | Bin 1341 -> 0 bytes configs/sim/gmoccapy/icon/mist_on.gif | Bin 1743 -> 0 bytes configs/sim/gmoccapy/icon/pause.png | Bin 1391 -> 0 bytes configs/sim/gmoccapy/icon/refall.png | Bin 1858 -> 0 bytes configs/sim/gmoccapy/icon/refx.png | Bin 1850 -> 0 bytes configs/sim/gmoccapy/icon/refy.png | Bin 1742 -> 0 bytes configs/sim/gmoccapy/icon/refz.png | Bin 1732 -> 0 bytes configs/sim/gmoccapy/icon/reload.png | Bin 4065 -> 0 bytes configs/sim/gmoccapy/icon/reverse.png | Bin 1098 -> 0 bytes configs/sim/gmoccapy/icon/reverse_on.gif | Bin 1656 -> 0 bytes configs/sim/gmoccapy/icon/run.png | Bin 1091 -> 0 bytes configs/sim/gmoccapy/icon/runfrom.png | Bin 1245 -> 0 bytes configs/sim/gmoccapy/icon/save-as.png | Bin 4233 -> 0 bytes configs/sim/gmoccapy/icon/save.png | Bin 3886 -> 0 bytes configs/sim/gmoccapy/icon/start.png | Bin 2276 -> 0 bytes configs/sim/gmoccapy/icon/step.png | Bin 1171 -> 0 bytes configs/sim/gmoccapy/icon/stop.gif | Bin 1325 -> 0 bytes configs/sim/gmoccapy/icon/stop.png | Bin 3200 -> 0 bytes configs/sim/gmoccapy/icon/stop_on.gif | Bin 1301 -> 0 bytes configs/sim/gmoccapy/icon/tool_blockdelete.gif | Bin 350 -> 0 bytes configs/sim/gmoccapy/icon/tool_rotate.gif | Bin 1285 -> 0 bytes configs/sim/gmoccapy/icon/toolaxisp.png | Bin 990 -> 0 bytes configs/sim/gmoccapy/icon/toolaxisx.png | Bin 511 -> 0 bytes configs/sim/gmoccapy/icon/toolaxisy.png | Bin 423 -> 0 bytes configs/sim/gmoccapy/icon/toolaxisy2.png | Bin 343 -> 0 bytes configs/sim/gmoccapy/icon/toolaxisz.png | Bin 499 -> 0 bytes configs/sim/gmoccapy/icon/toolchange.png | Bin 2937 -> 0 bytes configs/sim/gmoccapy/icon/toolpath.png | Bin 971 -> 0 bytes configs/sim/gmoccapy/icon/tools.png | Bin 1905 -> 0 bytes configs/sim/gmoccapy/icon/touchoffwz.png | Bin 3207 -> 0 bytes configs/sim/gmoccapy/icon/touchoffx.png | Bin 3224 -> 0 bytes configs/sim/gmoccapy/icon/touchoffx_value.png | Bin 2570 -> 0 bytes configs/sim/gmoccapy/icon/touchoffy.png | Bin 2961 -> 0 bytes configs/sim/gmoccapy/icon/touchoffy_value.png | Bin 2474 -> 0 bytes configs/sim/gmoccapy/icon/touchoffz.png | Bin 2969 -> 0 bytes configs/sim/gmoccapy/icon/touchoffz_value.png | Bin 2476 -> 0 bytes configs/sim/gmoccapy/icon/unhome.png | Bin 1871 -> 0 bytes configs/sim/gmoccapy/icon/user_tabs.png | Bin 2739 -> 0 bytes configs/sim/gmoccapy/icon/zoom-in.png | Bin 2879 -> 0 bytes configs/sim/gmoccapy/icon/zoom-out.png | Bin 2783 -> 0 bytes configs/sim/gmoccapy/left.hal | 10 + .../sim/gmoccapy/locale/de/LC_MESSAGES/gmoccapy.mo | Bin 23320 -> 0 bytes configs/sim/gmoccapy/locale/gmoccapy.po | 1252 - configs/sim/gmoccapy/locale/gmoccapy.pot | 1143 - configs/sim/gmoccapy/macros/go_to_position.ngc | 24 + configs/sim/gmoccapy/macros/halo_world.ngc | 26 + configs/sim/gmoccapy/macros/i_am_lost.ngc | 24 + configs/sim/gmoccapy/macros/increment.ngc | 22 + configs/sim/gmoccapy/macros/jog_around.ngc | 29 + configs/sim/gmoccapy/macros/macro_Instructions.txt | 44 + .../Gmoccapy_2_tools_with_compensation.ngc | 93 - configs/sim/gmoccapy/nc_files/diferent speeds.ngc | 36 - .../nc_files/subroutines/go_to_position.ngc | 24 - .../gmoccapy/nc_files/subroutines/halo_world.ngc | 26 - .../gmoccapy/nc_files/subroutines/i_am_lost.ngc | 24 - .../gmoccapy/nc_files/subroutines/increment.ngc | 22 - .../gmoccapy/nc_files/subroutines/jog_around.ngc | 29 - .../nc_files/subroutines/macro_Instructions.txt | 44 - configs/sim/gmoccapy/pyngcgui_gmoccapy.ini | 16 +- .../pyngcgui_gmoccapy_with_popupkeyboard.ini | 16 +- configs/sim/gmoccapy/release_notes.txt | 399 - configs/sim/gmoccapy/sim_spindle_encoder.hal | 1 - configs/sim/gmoccapy/spindle_sim.hal | 69 + configs/sim/gscreen/gscreen_lathe.ini | 4 +- configs/sim/gscreen/lathe.hal | 1 + configs/sim/gscreen_custom/9axis.ini | 322 + configs/sim/gscreen_custom/gaxis.glade | 872 - configs/sim/gscreen_custom/gaxis_handler.py | 76 - configs/sim/gscreen_custom/gscreen.glade | 3694 -- configs/sim/gscreen_custom/gscreen_custom.ini | 320 - configs/sim/gscreen_custom/gscreen_handler.py | 77 - configs/sim/gscreen_custom/industrial.glade | 3570 -- configs/sim/gscreen_custom/industrial_handler.py | 389 - configs/sim/gscreen_custom/sim.tbl.bak | 1 - configs/sim/ngcgui/fullscreen.tcl | 22 + configs/sim/ngcgui/ngcgui.ini | 1 + configs/sim/ngcgui/ngcgui_lathe.ini | 8 +- configs/sim/ngcgui/ngcgui_simple.ini | 1 + configs/sim/ngcgui/pyngcgui_axis.ini | 2 +- configs/sim/ngcgui/pyngcgui_gscreen.ini | 8 +- .../sim/ngcgui/pyngcgui_gscreen_popupkeyboard.ini | 8 +- configs/sim/ngcgui/pyngcgui_touchy.ini | 8 +- configs/sim/ngcgui/touchy_sim.tcl | 20 +- debian/changelog | 30 + debian/configure | 16 +- debian/control.in | 39 +- debian/linuxcnc-doc-de.files.in | 4 - debian/linuxcnc-doc-pl.files.in | 4 - debian/linuxcnc.files.in | 2 +- docs/asciidoc-markup.txt | 12 + docs/html/gcode.html | 1 + docs/man/man1/vfs11_vfd.1 | 6 +- docs/man/man3/hm2_allocate_bspi_tram.3hm2 | 3 + docs/man/man3/hm2_bspi_set_read_function.3hm2 | 3 + docs/man/man3/hm2_bspi_set_write_function.3hm2 | 3 + docs/man/man3/hm2_bspi_setup_chan.3hm2 | 2 + docs/man/man3/hm2_bspi_write_chan.3hm2 | 2 + docs/man/man3/hm2_tram_add_bspi_frame.3hm2 | 2 + docs/man/man3/hm2_uart_read.3hm2 | 2 + docs/man/man3/hm2_uart_send.3hm2 | 2 + docs/man/man3/hm2_uart_setup.3hm2 | 2 + docs/man/man3/rtapi_div_u64.3rtapi | 34 +- docs/man/man3/rtapi_module_param.3rtapi | 23 + docs/man/man9/hm2_7i43.9 | 2 +- docs/man/man9/hostmot2.9 | 145 +- docs/man/man9/matrix_kb.9 | 2 + docs/man/man9/motion.9 | 6 +- docs/man/man9/mux_generic.9 | 2 + docs/man/man9/setsserial.9 | 2 + docs/man/man9/sserial.9 | 2 + docs/src/Makefile | 14 +- docs/src/Master_Getting_Started_de.txt | 40 - docs/src/Master_Getting_Started_pl.txt | 38 - docs/src/Master_HAL_de.txt | 78 - docs/src/Master_HAL_es.txt | 2 +- docs/src/Master_HAL_pl.txt | 76 - docs/src/Master_Integrator_de.txt | 142 - docs/src/Master_Integrator_pl.txt | 140 - docs/src/Master_User_de.txt | 80 - docs/src/Master_User_pl.txt | 78 - docs/src/Submakefile | 625 +- docs/src/code/Style_Guide.txt | 14 +- docs/src/common/GPLD_Copyright_pl.txt | 359 - docs/src/common/Getting_EMC_de.txt | 331 - docs/src/common/Getting_EMC_pl.txt | 331 - docs/src/common/Glossary_de.txt | 370 - docs/src/common/Glossary_es.txt | 13 + docs/src/common/Glossary_pl.txt | 370 - docs/src/common/Integrator_Concepts_de.txt | 217 - docs/src/common/Integrator_Concepts_es.txt | 13 + docs/src/common/Integrator_Concepts_pl.txt | 217 - docs/src/common/Linux_FAQ_de.txt | 293 - docs/src/common/Linux_FAQ_pl.txt | 293 - docs/src/common/Stepper_Diagnostics_de.txt | 130 - docs/src/common/Stepper_Diagnostics_es.txt | 14 + docs/src/common/Stepper_Diagnostics_pl.txt | 130 - docs/src/common/System_Requirements_de.txt | 54 - docs/src/common/System_Requirements_pl.txt | 54 - docs/src/common/Updating_EMC_de.txt | 193 - docs/src/common/Updating_EMC_pl.txt | 194 - docs/src/common/User_Concepts_de.txt | 291 - docs/src/common/User_Concepts_es.txt | 13 +- docs/src/common/User_Concepts_pl.txt | 291 - docs/src/common/overleaf_de.txt | 19 - docs/src/common/overleaf_pl.txt | 19 - docs/src/common/python-interface.txt | 2 +- docs/src/common/starting-emc_de.txt | 171 - docs/src/common/starting-emc_es.txt | 13 + docs/src/common/starting-emc_pl.txt | 171 - docs/src/common/translator-needed_de.txt | 31 - docs/src/common/user_intro_de.txt | 170 - docs/src/common/user_intro_es.txt | 13 + docs/src/common/user_intro_pl.txt | 170 - docs/src/common/userforeword_de.txt | 78 - docs/src/common/userforeword_es.txt | 14 + docs/src/common/userforeword_pl.txt | 78 - docs/src/config/copy_and_run_de.txt | 49 - docs/src/config/copy_and_run_pl.txt | 49 - docs/src/config/emc2hal.txt | 7 + docs/src/config/emc2hal_de.txt | 425 - docs/src/config/emc2hal_es.txt | 13 + docs/src/config/emc2hal_pl.txt | 425 - docs/src/config/ini_config_de.txt | 1001 - docs/src/config/ini_config_es.txt | 13 + docs/src/config/ini_config_pl.txt | 1001 - docs/src/config/ini_homing_de.txt | 161 - docs/src/config/ini_homing_es.txt | 13 + docs/src/config/ini_homing_pl.txt | 161 - docs/src/config/lathe_config_de.txt | 35 - docs/src/config/lathe_config_es.txt | 13 + docs/src/config/lathe_config_pl.txt | 35 - docs/src/config/pncconf_de.txt | 944 - docs/src/config/pncconf_es.txt | 14 + docs/src/config/pncconf_pl.txt | 944 - docs/src/config/stepconf.txt | 8 +- docs/src/config/stepconf_de.txt | 622 - docs/src/config/stepconf_pl.txt | 622 - docs/src/config/stepper_de.txt | 279 - docs/src/config/stepper_es.txt | 13 + docs/src/config/stepper_pl.txt | 279 - docs/src/docs.xml | 98 - docs/src/drivers/AX5214H_de.txt | 66 - docs/src/drivers/AX5214H_es.txt | 13 + docs/src/drivers/AX5214H_pl.txt | 66 - docs/src/drivers/GS2_de.txt | 87 - docs/src/drivers/GS2_es.txt | 13 + docs/src/drivers/GS2_pl.txt | 87 - docs/src/drivers/hostmot2_de.txt | 762 - docs/src/drivers/hostmot2_es.txt | 13 + docs/src/drivers/hostmot2_pl.txt | 762 - docs/src/drivers/motenc_de.txt | 100 - docs/src/drivers/motenc_es.txt | 13 + docs/src/drivers/motenc_pl.txt | 100 - docs/src/drivers/opto22_de.txt | 159 - docs/src/drivers/opto22_es.txt | 13 + docs/src/drivers/opto22_pl.txt | 159 - docs/src/drivers/pico_ppmc_de.txt | 181 - docs/src/drivers/pico_ppmc_pl.txt | 181 - docs/src/drivers/pluto_p_de.txt | 291 - docs/src/drivers/pluto_p_es.txt | 13 + docs/src/drivers/pluto_p_pl.txt | 291 - docs/src/drivers/servo_to_go_de.txt | 105 - docs/src/drivers/servo_to_go_es.txt | 13 + docs/src/drivers/servo_to_go_pl.txt | 105 - docs/src/drivers/shuttlexpress_de.txt | 52 - docs/src/drivers/shuttlexpress_es.txt | 13 + docs/src/drivers/shuttlexpress_pl.txt | 52 - docs/src/examples/gcode_de.txt | 74 - docs/src/examples/gcode_es.txt | 13 + docs/src/examples/gcode_pl.txt | 74 - docs/src/examples/gs2_example_de.txt | 59 - docs/src/examples/gs2_example_es.txt | 13 + docs/src/examples/gs2_example_pl.txt | 59 - docs/src/examples/mpg_de.txt | 52 - docs/src/examples/mpg_es.txt | 13 + docs/src/examples/mpg_pl.txt | 52 - docs/src/examples/pci_parallel_port_de.txt | 55 - docs/src/examples/pci_parallel_port_es.txt | 13 + docs/src/examples/pci_parallel_port_pl.txt | 55 - docs/src/examples/spindle_de.txt | 234 - docs/src/examples/spindle_es.txt | 13 + docs/src/examples/spindle_pl.txt | 234 - docs/src/gcode/coordinates_de.txt | 338 - docs/src/gcode/coordinates_es.txt | 13 + docs/src/gcode/coordinates_pl.txt | 338 - docs/src/gcode/gcode.txt | 29 +- docs/src/gcode/gcode_de.txt | 2068 - docs/src/gcode/gcode_es.txt | 13 + docs/src/gcode/gcode_pl.txt | 2068 - docs/src/gcode/m-code.txt | 61 +- docs/src/gcode/m-code_de.txt | 637 - docs/src/gcode/m-code_es.txt | 259 +- docs/src/gcode/m-code_pl.txt | 636 - docs/src/gcode/machining_center_de.txt | 365 - docs/src/gcode/machining_center_es.txt | 13 + docs/src/gcode/machining_center_pl.txt | 365 - docs/src/gcode/main_es.txt | 13 + docs/src/gcode/mill_canned.txt | 501 - docs/src/gcode/mill_canned_de.txt | 501 - docs/src/gcode/mill_canned_es.txt | 13 + docs/src/gcode/mill_canned_pl.txt | 501 - docs/src/gcode/o-code_de.txt | 239 - docs/src/gcode/o-code_es.txt | 13 + docs/src/gcode/o-code_pl.txt | 239 - docs/src/gcode/other-code_de.txt | 64 - docs/src/gcode/other-code_es.txt | 13 + docs/src/gcode/other-code_pl.txt | 64 - docs/src/gcode/overview.txt | 2 +- docs/src/gcode/overview_de.txt | 879 - docs/src/gcode/overview_es.txt | 13 + docs/src/gcode/overview_pl.txt | 879 - docs/src/gcode/rs274ngc_de.txt | 116 - docs/src/gcode/rs274ngc_es.txt | 13 + docs/src/gcode/rs274ngc_pl.txt | 116 - docs/src/gcode/tool_compensation_de.txt | 288 - docs/src/gcode/tool_compensation_es.txt | 13 + docs/src/gcode/tool_compensation_pl.txt | 288 - docs/src/gui/axis.txt | 6 +- docs/src/gui/axis_de.txt | 952 - docs/src/gui/axis_es.txt | 13 + docs/src/gui/axis_pl.txt | 951 - docs/src/gui/gladevcp_de.txt | 1514 - docs/src/gui/gladevcp_es.txt | 13 + docs/src/gui/gladevcp_pl.txt | 1514 - docs/src/gui/halui_de.txt | 263 - docs/src/gui/halui_es.txt | 13 + docs/src/gui/halui_pl.txt | 263 - docs/src/gui/image-to-gcode_de.txt | 183 - docs/src/gui/image-to-gcode_es.txt | 13 + docs/src/gui/image-to-gcode_pl.txt | 183 - docs/src/gui/keystick_de.txt | 27 - docs/src/gui/keystick_es.txt | 13 + docs/src/gui/keystick_pl.txt | 26 - docs/src/gui/mini_de.txt | 592 - docs/src/gui/mini_es.txt | 13 + docs/src/gui/mini_pl.txt | 592 - docs/src/gui/ngcgui_de.txt | 535 - docs/src/gui/ngcgui_es.txt | 13 + docs/src/gui/ngcgui_pl.txt | 535 - docs/src/gui/tklinuxcnc_de.txt | 262 - docs/src/gui/tklinuxcnc_es.txt | 13 + docs/src/gui/tklinuxcnc_pl.txt | 262 - docs/src/gui/touchy_de.txt | 77 - docs/src/gui/touchy_es.txt | 13 + docs/src/gui/touchy_pl.txt | 77 - docs/src/hal/basic_hal.txt | 22 +- docs/src/hal/basic_hal_de.txt | 494 - docs/src/hal/basic_hal_es.txt | 13 + docs/src/hal/basic_hal_pl.txt | 494 - docs/src/hal/canonical-devices_de.txt | 126 - docs/src/hal/canonical-devices_es.txt | 13 + docs/src/hal/canonical-devices_pl.txt | 126 - docs/src/hal/comp.txt | 21 +- docs/src/hal/comp_de.txt | 684 - docs/src/hal/comp_es.txt | 13 + docs/src/hal/comp_pl.txt | 684 - docs/src/hal/components_de.txt | 388 - docs/src/hal/components_es.txt | 13 + docs/src/hal/components_pl.txt | 388 - docs/src/hal/general_ref_de.txt | 158 - docs/src/hal/general_ref_es.txt | 13 + docs/src/hal/general_ref_pl.txt | 158 - docs/src/hal/hal-examples_de.txt | 191 - docs/src/hal/hal-examples_es.txt | 13 + docs/src/hal/hal-examples_pl.txt | 191 - docs/src/hal/halmodule_de.txt | 172 - docs/src/hal/halmodule_es.txt | 13 + docs/src/hal/halmodule_pl.txt | 172 - docs/src/hal/halshow_de.txt | 253 - docs/src/hal/halshow_es.txt | 13 + docs/src/hal/halshow_pl.txt | 253 - docs/src/hal/haltcl_de.txt | 206 - docs/src/hal/haltcl_es.txt | 13 + docs/src/hal/haltcl_pl.txt | 206 - docs/src/hal/halui_examples.txt | 2 +- docs/src/hal/halui_examples_de.txt | 81 - docs/src/hal/halui_examples_es.txt | 15 +- docs/src/hal/halui_examples_pl.txt | 81 - docs/src/hal/intro_de.txt | 369 - docs/src/hal/intro_es.txt | 13 + docs/src/hal/intro_pl.txt | 369 - docs/src/hal/parallel_port_de.txt | 256 - docs/src/hal/parallel_port_es.txt | 13 + docs/src/hal/parallel_port_pl.txt | 256 - docs/src/hal/pyvcp_de.txt | 962 - docs/src/hal/pyvcp_es.txt | 13 + docs/src/hal/pyvcp_examples_de.txt | 479 - docs/src/hal/pyvcp_examples_es.txt | 13 + docs/src/hal/pyvcp_examples_pl.txt | 479 - docs/src/hal/pyvcp_pl.txt | 962 - docs/src/hal/rtcomps.txt | 8 +- docs/src/hal/rtcomps_de.txt | 758 - docs/src/hal/rtcomps_es.txt | 13 + docs/src/hal/rtcomps_pl.txt | 758 - docs/src/hal/tools_de.txt | 82 - docs/src/hal/tools_es.txt | 13 + docs/src/hal/tools_pl.txt | 82 - docs/src/hal/tutorial_de.txt | 1010 - docs/src/hal/tutorial_es.txt | 13 + docs/src/hal/tutorial_pl.txt | 1010 - docs/src/index.tmpl | 5 +- docs/src/index_de.tmpl | 122 - docs/src/index_es.tmpl | 5 +- docs/src/index_fr.tmpl | 2 +- docs/src/index_pl.tmpl | 119 - docs/src/install/Latency_Test_de.txt | 160 - docs/src/install/Latency_Test_es.txt | 13 + docs/src/install/Latency_Test_pl.txt | 160 - docs/src/ladder/classic_ladder_de.txt | 1030 - docs/src/ladder/classic_ladder_es.txt | 13 + docs/src/ladder/classic_ladder_pl.txt | 1030 - docs/src/ladder/ladder_examples_de.txt | 207 - docs/src/ladder/ladder_examples_es.txt | 13 + docs/src/ladder/ladder_examples_pl.txt | 207 - docs/src/ladder/ladder_intro_de.txt | 169 - docs/src/ladder/ladder_intro_es.txt | 13 + docs/src/ladder/ladder_intro_pl.txt | 169 - docs/src/lathe/lathe-user.txt | 16 +- docs/src/lathe/lathe-user_de.txt | 311 - docs/src/lathe/lathe-user_es.txt | 13 + docs/src/lathe/lathe-user_pl.txt | 311 - docs/src/motion/kinematics_de.txt | 255 - docs/src/motion/kinematics_es.txt | 13 + docs/src/motion/kinematics_pl.txt | 255 - docs/src/motion/pid_theory_de.txt | 190 - docs/src/motion/pid_theory_es.txt | 13 + docs/src/motion/pid_theory_pl.txt | 190 - docs/src/motion/tweaking_steppers_de.txt | 233 - docs/src/motion/tweaking_steppers_es.txt | 13 + docs/src/motion/tweaking_steppers_pl.txt | 233 - docs/src/quickstart/stepper_quickstart_de.txt | 174 - docs/src/quickstart/stepper_quickstart_es.txt | 13 + docs/src/quickstart/stepper_quickstart_pl.txt | 174 - lib/python/gladevcp/calculatorwidget.py | 15 +- lib/python/gladevcp/hal_gremlin.py | 10 +- lib/python/gladevcp/hal_python.xml | 8 + lib/python/gladevcp/hal_pythonplugin.py | 1 + lib/python/gladevcp/iconview.py | 481 + lib/python/gladevcp/led.py | 2 +- lib/python/gladevcp/offsetpage.glade | 16 +- lib/python/gladevcp/offsetpage_widget.py | 68 +- lib/python/gladevcp/tooledit_widget.py | 9 + lib/python/hal_glib.py | 1 + lib/python/rs274/icon.py | 837 +- ...apy_2_tools_with_cutter_radius_compensation.ngc | 93 + nc_files/holecircle.py | 4 +- scripts/get-version-from-git | 2 +- share/gscreen/skins/9_axis/9_axis.glade | 3165 + share/gscreen/skins/9_axis/9_axis_handler.py | 97 + share/gscreen/skins/gaxis/gaxis.glade | 872 + share/gscreen/skins/gaxis/gaxis_handler.py | 76 + share/gscreen/skins/gmoccapy/gmoccapy.glade | 6526 ++ share/gscreen/skins/gmoccapy/gmoccapy_handler.py | 2931 + share/gscreen/skins/gmoccapy/icon/Auto.gif | Bin 0 -> 780 bytes share/gscreen/skins/gmoccapy/icon/E-Stop.gif | Bin 0 -> 2181 bytes share/gscreen/skins/gmoccapy/icon/Logo.png | Bin 0 -> 500 bytes share/gscreen/skins/gmoccapy/icon/README.txt | 75 + .../skins/gmoccapy/icon/applet-critical.png | Bin 0 -> 1411 bytes share/gscreen/skins/gmoccapy/icon/clear.png | Bin 0 -> 2088 bytes share/gscreen/skins/gmoccapy/icon/configure-2.png | Bin 0 -> 5145 bytes share/gscreen/skins/gmoccapy/icon/coolant_off.png | Bin 0 -> 1159 bytes share/gscreen/skins/gmoccapy/icon/coolant_on.gif | Bin 0 -> 1669 bytes share/gscreen/skins/gmoccapy/icon/dimensions.png | Bin 0 -> 2802 bytes share/gscreen/skins/gmoccapy/icon/editor.png | Bin 0 -> 2535 bytes share/gscreen/skins/gmoccapy/icon/enter.png | Bin 0 -> 1230 bytes share/gscreen/skins/gmoccapy/icon/estopred.png | Bin 0 -> 3509 bytes share/gscreen/skins/gmoccapy/icon/exit.png | Bin 0 -> 3998 bytes .../skins/gmoccapy/icon/exit_application.png | Bin 0 -> 2989 bytes share/gscreen/skins/gmoccapy/icon/forward.png | Bin 0 -> 1098 bytes share/gscreen/skins/gmoccapy/icon/forward_on.gif | Bin 0 -> 1634 bytes .../skins/gmoccapy/icon/fullscreen_preview.png | Bin 0 -> 2854 bytes share/gscreen/skins/gmoccapy/icon/index_tool.svg | 83 + share/gscreen/skins/gmoccapy/icon/jog.png | Bin 0 -> 1317 bytes share/gscreen/skins/gmoccapy/icon/keyboard.png | Bin 0 -> 4136 bytes share/gscreen/skins/gmoccapy/icon/machineonoff.png | Bin 0 -> 896 bytes share/gscreen/skins/gmoccapy/icon/mdi.png | Bin 0 -> 1394 bytes share/gscreen/skins/gmoccapy/icon/mist_off.png | Bin 0 -> 1341 bytes share/gscreen/skins/gmoccapy/icon/mist_on.gif | Bin 0 -> 1743 bytes share/gscreen/skins/gmoccapy/icon/pause.png | Bin 0 -> 1391 bytes share/gscreen/skins/gmoccapy/icon/refa.png | Bin 0 -> 2604 bytes share/gscreen/skins/gmoccapy/icon/refall.png | Bin 0 -> 1858 bytes share/gscreen/skins/gmoccapy/icon/refb.png | Bin 0 -> 2492 bytes share/gscreen/skins/gmoccapy/icon/refc.png | Bin 0 -> 2585 bytes share/gscreen/skins/gmoccapy/icon/refu.png | Bin 0 -> 1818 bytes share/gscreen/skins/gmoccapy/icon/refv.png | Bin 0 -> 2060 bytes share/gscreen/skins/gmoccapy/icon/refw.png | Bin 0 -> 2249 bytes share/gscreen/skins/gmoccapy/icon/refx.png | Bin 0 -> 1850 bytes share/gscreen/skins/gmoccapy/icon/refy.png | Bin 0 -> 1742 bytes share/gscreen/skins/gmoccapy/icon/refz.png | Bin 0 -> 1732 bytes share/gscreen/skins/gmoccapy/icon/reload.png | Bin 0 -> 4065 bytes share/gscreen/skins/gmoccapy/icon/reverse.png | Bin 0 -> 1098 bytes share/gscreen/skins/gmoccapy/icon/reverse_on.gif | Bin 0 -> 1656 bytes share/gscreen/skins/gmoccapy/icon/run.png | Bin 0 -> 1091 bytes share/gscreen/skins/gmoccapy/icon/runfrom.png | Bin 0 -> 1245 bytes share/gscreen/skins/gmoccapy/icon/save-as.png | Bin 0 -> 4233 bytes share/gscreen/skins/gmoccapy/icon/save.png | Bin 0 -> 3886 bytes share/gscreen/skins/gmoccapy/icon/start.png | Bin 0 -> 2276 bytes share/gscreen/skins/gmoccapy/icon/std_info.gif | Bin 0 -> 659 bytes share/gscreen/skins/gmoccapy/icon/std_info.png | Bin 0 -> 275 bytes share/gscreen/skins/gmoccapy/icon/step.png | Bin 0 -> 1171 bytes share/gscreen/skins/gmoccapy/icon/stop.gif | Bin 0 -> 1325 bytes share/gscreen/skins/gmoccapy/icon/stop.png | Bin 0 -> 3200 bytes share/gscreen/skins/gmoccapy/icon/stop_on.gif | Bin 0 -> 1301 bytes .../skins/gmoccapy/icon/tool_blockdelete.gif | Bin 0 -> 350 bytes share/gscreen/skins/gmoccapy/icon/tool_by_no.svg | 33 + share/gscreen/skins/gmoccapy/icon/tool_rotate.gif | Bin 0 -> 1285 bytes share/gscreen/skins/gmoccapy/icon/toolaxisp.png | Bin 0 -> 990 bytes share/gscreen/skins/gmoccapy/icon/toolaxisx.png | Bin 0 -> 511 bytes share/gscreen/skins/gmoccapy/icon/toolaxisy.png | Bin 0 -> 423 bytes share/gscreen/skins/gmoccapy/icon/toolaxisy2.png | Bin 0 -> 343 bytes share/gscreen/skins/gmoccapy/icon/toolaxisz.png | Bin 0 -> 499 bytes share/gscreen/skins/gmoccapy/icon/toolchange.png | Bin 0 -> 2937 bytes share/gscreen/skins/gmoccapy/icon/toolpath.png | Bin 0 -> 971 bytes share/gscreen/skins/gmoccapy/icon/tools.png | Bin 0 -> 1905 bytes share/gscreen/skins/gmoccapy/icon/touchoffwz.png | Bin 0 -> 3207 bytes share/gscreen/skins/gmoccapy/icon/touchoffx.png | Bin 0 -> 3224 bytes .../skins/gmoccapy/icon/touchoffx_value.png | Bin 0 -> 2570 bytes share/gscreen/skins/gmoccapy/icon/touchoffy.png | Bin 0 -> 2961 bytes .../skins/gmoccapy/icon/touchoffy_value.png | Bin 0 -> 2474 bytes share/gscreen/skins/gmoccapy/icon/touchoffz.png | Bin 0 -> 2969 bytes .../skins/gmoccapy/icon/touchoffz_value.png | Bin 0 -> 2476 bytes share/gscreen/skins/gmoccapy/icon/unhome.png | Bin 0 -> 1871 bytes share/gscreen/skins/gmoccapy/icon/user_tabs.png | Bin 0 -> 2739 bytes share/gscreen/skins/gmoccapy/icon/zoom-in.png | Bin 0 -> 2879 bytes share/gscreen/skins/gmoccapy/icon/zoom-out.png | Bin 0 -> 2783 bytes .../gmoccapy/locale/de/LC_MESSAGES/gmoccapy.mo | Bin 0 -> 33637 bytes share/gscreen/skins/gmoccapy/locale/de/gmoccapy.po | 1970 + .../gscreen/skins/gmoccapy/locale/de/gmoccapy.pot | 1370 + .../gmoccapy/locale/es/LC_MESSAGES/gmoccapy.mo | Bin 0 -> 33652 bytes share/gscreen/skins/gmoccapy/locale/es/gmoccapy.po | 1946 + share/gscreen/skins/gmoccapy/locale/gmoccapy.pot | 1779 + .../gmoccapy/locale/rs/LC_MESSAGES/gmoccapy.mo | Bin 0 -> 25145 bytes share/gscreen/skins/gmoccapy/locale/rs/gmoccapy.po | 2077 + .../gscreen/skins/gmoccapy/python/notification.py | 270 + share/gscreen/skins/gmoccapy/release_notes.txt | 532 + share/gscreen/skins/industrial/industrial.glade | 3526 ++ share/gscreen/skins/industrial/industrial2.glade | 81 + .../gscreen/skins/industrial/industrial_handler.py | 391 + src/Makefile | 15 +- src/Makefile.inc.in | 2 +- src/configure.in | 35 +- src/emc/iotask/ioControl.cc | 9 +- src/emc/kinematics/tc.c | 3 + src/emc/motion/control.c | 12 +- src/emc/motion/mot_priv.h | 6 +- src/emc/motion/motion.c | 6 + src/emc/rs274ngc/Submakefile | 1 + src/emc/rs274ngc/interp_array.cc | 4 +- src/emc/rs274ngc/interp_base.cc | 17 + src/emc/rs274ngc/interp_base.hh | 17 + src/emc/rs274ngc/interp_convert.cc | 21 +- src/emc/rs274ngc/interp_internal.hh | 28 + src/emc/rs274ngc/interp_setup.cc | 161 + src/emc/rs274ngc/interpmodule.cc | 745 +- src/emc/rs274ngc/rs274ngc_interp.hh | 3 +- src/emc/rs274ngc/rs274ngc_pre.cc | 3 +- src/emc/task/emccanon.cc | 10 +- src/emc/usr_intf/axis/extensions/_toglmodule.c | 2 +- src/emc/usr_intf/emcsh.cc | 4 +- src/emc/usr_intf/gscreen/emc_interface.py | 32 +- src/emc/usr_intf/gscreen/gscreen.glade | 1179 +- src/emc/usr_intf/gscreen/gscreen.py | 416 +- src/emc/usr_intf/pncconf/pncconf.glade | 59422 ++++++++++--------- src/emc/usr_intf/pncconf/pncconf.py | 113 +- src/emc/usr_intf/pyngcgui.py | 22 +- src/emc/usr_intf/touchy/mdi.py | 1 + src/hal/classicladder/drawing.c | 8 +- src/hal/components/bin2gray.comp | 9 + src/hal/components/gray2bin.comp | 13 + src/hal/components/lcd.c | 20 + src/hal/components/lincurve.comp | 2 +- src/hal/components/matrix_kb.c | 17 + src/hal/components/mux_generic.c | 17 + src/hal/components/orient.comp | 2 +- src/hal/drivers/mesa-hostmot2/abs_encoder.c | 482 + src/hal/drivers/mesa-hostmot2/hm2_pci.c | 20 +- src/hal/drivers/mesa-hostmot2/hostmot2.c | 72 +- src/hal/drivers/mesa-hostmot2/hostmot2.h | 107 +- src/hal/drivers/mesa-hostmot2/pins.c | 113 +- src/hal/drivers/mesa-hostmot2/resolver.c | 22 +- src/hal/drivers/mesa-hostmot2/setsserial.c | 4 +- src/hal/drivers/mesa-hostmot2/sserial.c | 433 +- src/hal/drivers/mesa-hostmot2/sserial.h | 138 +- src/hal/drivers/pcl720.comp | 2 +- src/hal/user_comps/mb2hal/mb2hal.c | 8 +- src/hal/user_comps/vfs11_vfd/vfs11_vfd.c | 2 +- src/m4/ax_cxx_compile_stdcxx_11.m4 | 133 + src/rtapi/rtapi_byteorder.h | 17 + src/rtapi/rtapi_limits.h | 17 + src/rtapi/rtapi_math64.h | 57 + src/rtapi/sim_rtapi_app.cc | 2 +- src/rtapi/test_rtapi_vsnprintf.c | 17 + tcl/ngcgui.tcl | 30 +- tests/halui-jogging/halui.ini | 2 +- tests/linuxcncrsh/linuxcncrsh-test.ini | 2 +- tests/m70-m73/m73-flood-mist-restore.0/README | 2 + tests/m70-m73/m73-flood-mist-restore.0/expected | 24 + tests/m70-m73/m73-flood-mist-restore.0/test.ngc | 19 + tests/m70-m73/m73-flood-mist-restore.0/test.sh | 3 + tests/mdi-queue/linuxcncrsh-test.ini | 2 +- tests/motion/g0/motion-test.ini | 2 +- tests/remap/fail/canon_error/remap.py | 15 + tests/remap/fail/canon_error/subs.py | 15 + tests/remap/introspect/expected | 1 - tests/remap/introspect/oword.py | 4 +- tests/t0/nonrandom/sim.ini | 2 +- tests/t0/random-with-t0/sim.ini | 2 +- tests/t0/random-without-t0/sim.ini | 2 +- tests/toolchanger/m61/.gitignore | 1 + tests/toolchanger/m61/checkresult | 2 + tests/toolchanger/m61/core_sim.hal | 60 + tests/toolchanger/m61/m61-test.ini | 109 + tests/toolchanger/m61/postgui.hal | 11 + tests/toolchanger/m61/test-ui.py | 396 + tests/toolchanger/m61/test.sh | 7 + tests/toolchanger/simpockets.tbl.orig | 3 + .../toolno-pocket-differ/nonrandom/sim.ini | 2 +- .../toolno-pocket-differ/random/sim.ini | 2 +- .../toolno-pocket-differ/shared-test.sh | 2 +- .../toolno-pocket-differ/simpockets.tbl.orig | 3 - 599 files changed, 66076 insertions(+), 109776 deletions(-) diff --cc src/Makefile index 9c45512,93ae8b3..f70b272 mode 100644,100755..100755 --- a/src/Makefile +++ b/src/Makefile diff --cc src/emc/motion/mot_priv.h index 5eedec4,c9b5070..9f6362c --- a/src/emc/motion/mot_priv.h +++ b/src/emc/motion/mot_priv.h @@@ -92,10 -87,13 +92,12 @@@ typedef struct hal_bit_t *spindle_index_enable; hal_bit_t *spindle_is_atspeed; hal_float_t *spindle_revs; + hal_bit_t *spindle_inhibit; /* RPI: set TRUE to stop spindle (non maskable)*/ hal_float_t *adaptive_feed; /* RPI: adaptive feedrate, 0.0 to 1.0 */ - hal_bit_t *feed_hold; /* RPI: set TRUE to stop motion */ + hal_bit_t *feed_hold; /* RPI: set TRUE to stop motion maskable with g53 P1*/ + hal_bit_t *feed_inhibit; /* RPI: set TRUE to stop motion (non maskable)*/ hal_bit_t *motion_enabled; /* RPI: motion enable for all joints */ hal_bit_t *in_position; /* RPI: all joints are in position */ -// hal_bit_t *inpos_output; /* WPI: all joints are in position (used to power down steppers for example) */ hal_bit_t *coord_mode; /* RPA: TRUE if coord, FALSE if free */ hal_bit_t *teleop_mode; /* RPA: TRUE if teleop mode */ hal_bit_t *coord_error; /* RPA: TRUE if coord mode error */ diff --cc src/emc/motion/motion.c index 93f9f8c,d0cabcf..a0a559b --- a/src/emc/motion/motion.c +++ b/src/emc/motion/motion.c @@@ -288,16 -293,20 +288,20 @@@ static int init_hal_io(void } /* export machine wide hal pins */ - if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->probe_input), mot_comp_id, "motion.probe-input")) < 0) goto error; - if ((retval = hal_pin_bit_newf(HAL_IO, &(emcmot_hal_data->spindle_index_enable), mot_comp_id, "motion.spindle-index-enable")) < 0) goto error; - - if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_on), mot_comp_id, "motion.spindle-on")) < 0) goto error; - if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_forward), mot_comp_id, "motion.spindle-forward")) < 0) goto error; - if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_reverse), mot_comp_id, "motion.spindle-reverse")) < 0) goto error; - if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_brake), mot_comp_id, "motion.spindle-brake")) < 0) goto error; - if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out), mot_comp_id, "motion.spindle-speed-out")) < 0) goto error; - if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out_abs), mot_comp_id, "motion.spindle-speed-out-abs")) < 0) goto error; - if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out_rps), mot_comp_id, "motion.spindle-speed-out-rps")) < 0) goto error; - if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out_rps_abs), mot_comp_id, "motion.spindle-speed-out-rps-abs")) < 0) goto error; - if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_cmd_rps), mot_comp_id, "motion.spindle-speed-cmd-rps")) < 0) goto error; - if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->spindle_inhibit), mot_comp_id, "motion.spindle-inhibit")) < 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->probe_input), mot_comp_id, "motion.probe-input")) != 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_IO, &(emcmot_hal_data->spindle_index_enable), mot_comp_id, "motion.spindle-index-enable")) != 0) goto error; + + if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_on), mot_comp_id, "motion.spindle-on")) != 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_forward), mot_comp_id, "motion.spindle-forward")) != 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_reverse), mot_comp_id, "motion.spindle-reverse")) != 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->spindle_brake), mot_comp_id, "motion.spindle-brake")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out), mot_comp_id, "motion.spindle-speed-out")) != 0) goto error; ++ if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out_abs), mot_comp_id, "motion.spindle-speed-out-abs")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out_rps), mot_comp_id, "motion.spindle-speed-out-rps")) != 0) goto error; ++ if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_out_rps_abs), mot_comp_id, "motion.spindle-speed-out-rps-abs")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_speed_cmd_rps), mot_comp_id, "motion.spindle-speed-cmd-rps")) != 0) goto error; ++ if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->spindle_inhibit), mot_comp_id, "motion.spindle-inhibit")) != 0) goto error; + *(emcmot_hal_data->spindle_inhibit) = 0; // spindle orient pins if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->spindle_orient_angle), mot_comp_id, "motion.spindle-orient-angle")) < 0) goto error; @@@ -310,12 -319,20 +314,13 @@@ *(emcmot_hal_data->spindle_orient_mode) = 0; *(emcmot_hal_data->spindle_orient) = 0; - -// if ((retval = hal_pin_bit_newf(HAL_OUT, &(emcmot_hal_data->inpos_output), mot_comp_id, "motion.motion-inpos")) < 0) goto error; - if ((retval = hal_pin_float_newf(HAL_IN, &(emcmot_hal_data->spindle_revs), mot_comp_id, "motion.spindle-revs")) < 0) goto error; - if ((retval = hal_pin_float_newf(HAL_IN, &(emcmot_hal_data->spindle_speed_in), mot_comp_id, "motion.spindle-speed-in")) < 0) goto error; - if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->spindle_is_atspeed), mot_comp_id, "motion.spindle-at-speed")) < 0) goto error; - *emcmot_hal_data->spindle_is_atspeed = 1; - if ((retval = hal_pin_float_newf(HAL_IN, &(emcmot_hal_data->adaptive_feed), mot_comp_id, "motion.adaptive-feed")) < 0) goto error; - *(emcmot_hal_data->adaptive_feed) = 1.0; - if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->feed_hold), mot_comp_id, "motion.feed-hold")) < 0) goto error; - *(emcmot_hal_data->feed_hold) = 0; - if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->feed_inhibit), mot_comp_id, "motion.feed-inhibit")) < 0) goto error; - *(emcmot_hal_data->feed_inhibit) = 0; - - if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->enable), mot_comp_id, "motion.enable")) < 0) goto error; + if ((retval = hal_pin_float_newf(HAL_IN, &(emcmot_hal_data->spindle_revs), mot_comp_id, "motion.spindle-revs")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_IN, &(emcmot_hal_data->spindle_speed_in), mot_comp_id, "motion.spindle-speed-in")) != 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->spindle_is_atspeed), mot_comp_id, "motion.spindle-at-speed")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_IN, &(emcmot_hal_data->adaptive_feed), mot_comp_id, "motion.adaptive-feed")) != 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->feed_hold), mot_comp_id, "motion.feed-hold")) != 0) goto error; ++ if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->feed_inhibit), mot_comp_id, "motion.feed-inhibit")) != 0) goto error; + if ((retval = hal_pin_bit_newf(HAL_IN, &(emcmot_hal_data->enable), mot_comp_id, "motion.enable")) != 0) goto error; /* export motion-synched digital output pins */ /* export motion digital input pins */ @@@ -370,27 -502,62 +375,28 @@@ // end of exporting trajectory planner internals // export timing related HAL parameters so they can be scoped - retval = - hal_param_u32_new("motion.servo.last-period", HAL_RO, &(emcmot_hal_data->last_period), mot_comp_id); - if (retval != 0) { - return retval; - } + if ((retval = hal_param_u32_newf(HAL_RO, &(emcmot_hal_data->last_period), mot_comp_id, "motion.servo.last-period")) != 0) goto error; #ifdef HAVE_CPU_KHZ - retval = - hal_param_float_new("motion.servo.last-period-ns", HAL_RO, &(emcmot_hal_data->last_period_ns), mot_comp_id); - if (retval != 0) { - return retval; - } + if ((retval = hal_param_float_newf(HAL_RO, &(emcmot_hal_data->last_period_ns), mot_comp_id, "motion.servo.last-period-ns")) != 0) goto error; #endif - retval = - hal_param_u32_new("motion.servo.overruns", HAL_RW, &(emcmot_hal_data->overruns), mot_comp_id); - if (retval != 0) { - return retval; - } - - retval = hal_pin_float_new("motion.tooloffset.x", HAL_OUT, &(emcmot_hal_data->tooloffset_x), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.y", HAL_OUT, &(emcmot_hal_data->tooloffset_y), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.z", HAL_OUT, &(emcmot_hal_data->tooloffset_z), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.a", HAL_OUT, &(emcmot_hal_data->tooloffset_a), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.b", HAL_OUT, &(emcmot_hal_data->tooloffset_b), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.c", HAL_OUT, &(emcmot_hal_data->tooloffset_c), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.u", HAL_OUT, &(emcmot_hal_data->tooloffset_u), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.v", HAL_OUT, &(emcmot_hal_data->tooloffset_v), mot_comp_id); - if (retval != 0) { - return retval; - } - retval = hal_pin_float_new("motion.tooloffset.w", HAL_OUT, &(emcmot_hal_data->tooloffset_w), mot_comp_id); - if (retval != 0) { - return retval; - } + if ((retval = hal_param_u32_newf(HAL_RO, &(emcmot_hal_data->overruns), mot_comp_id, "motion.servo.overruns")) != 0) goto error; + + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_x), mot_comp_id, "motion.tooloffset.x")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_y), mot_comp_id, "motion.tooloffset.y")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_z), mot_comp_id, "motion.tooloffset.z")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_a), mot_comp_id, "motion.tooloffset.a")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_b), mot_comp_id, "motion.tooloffset.b")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_c), mot_comp_id, "motion.tooloffset.c")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_u), mot_comp_id, "motion.tooloffset.u")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_v), mot_comp_id, "motion.tooloffset.v")) != 0) goto error; + if ((retval = hal_pin_float_newf(HAL_OUT, &(emcmot_hal_data->tooloffset_w), mot_comp_id, "motion.tooloffset.w")) != 0) goto error; /* initialize machine wide pins and parameters */ + *emcmot_hal_data->spindle_is_atspeed = 1; + *(emcmot_hal_data->adaptive_feed) = 1.0; + *(emcmot_hal_data->feed_hold) = 0; ++ *(emcmot_hal_data->feed_inhibit) = 0; + *(emcmot_hal_data->probe_input) = 0; /* default value of enable is TRUE, so simple machines can leave it disconnected */ diff --cc tests/toolchanger/m61/core_sim.hal index 0000000,0448af4..706d0e2 mode 000000,100644..100644 --- a/tests/toolchanger/m61/core_sim.hal +++ b/tests/toolchanger/m61/core_sim.hal @@@ -1,0 -1,60 +1,60 @@@ + # core HAL config file for simulation + + # first load all the RT modules that will be needed + # kinematics + loadrt trivkins + # motion controller, get name and thread periods from ini file + loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES + # load 6 differentiators (for velocity and accel signals + loadrt ddt count=6 + # load additional blocks + loadrt hypot count=2 + loadrt comp count=3 + loadrt or2 count=1 + + # add motion controller functions to servo thread + addf motion-command-handler servo-thread + addf motion-controller servo-thread + # link the differentiator functions into the code + addf ddt.0 servo-thread + addf ddt.1 servo-thread + addf ddt.2 servo-thread + addf ddt.3 servo-thread + addf ddt.4 servo-thread + addf ddt.5 servo-thread + addf hypot.0 servo-thread + addf hypot.1 servo-thread + + # create HAL signals for position commands from motion module + # loop position commands back to motion module feedback -net Xpos axis.0.motor-pos-cmd => axis.0.motor-pos-fb ddt.0.in -net Ypos axis.1.motor-pos-cmd => axis.1.motor-pos-fb ddt.2.in -net Zpos axis.2.motor-pos-cmd => axis.2.motor-pos-fb ddt.4.in ++net Xpos joint.0.motor-pos-cmd => joint.0.motor-pos-fb ddt.0.in ++net Ypos joint.1.motor-pos-cmd => joint.1.motor-pos-fb ddt.2.in ++net Zpos joint.2.motor-pos-cmd => joint.2.motor-pos-fb ddt.4.in + + # send the position commands thru differentiators to + # generate velocity and accel signals + net Xvel ddt.0.out => ddt.1.in hypot.0.in0 + net Xacc <= ddt.1.out + net Yvel ddt.2.out => ddt.3.in hypot.0.in1 + net Yacc <= ddt.3.out + net Zvel ddt.4.out => ddt.5.in hypot.1.in0 + net Zacc <= ddt.5.out + + # Cartesian 2- and 3-axis velocities + net XYvel hypot.0.out => hypot.1.in1 + net XYZvel <= hypot.1.out + + # estop loopback + net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in + + # create signals for tool loading loopback + net tool-prepare <= iocontrol.0.tool-prepare + net tool-prepared => iocontrol.0.tool-prepared + + net tool-change <= iocontrol.0.tool-change + net tool-changed => iocontrol.0.tool-changed + + net tool-number <= iocontrol.0.tool-number + net tool-prep-number <= iocontrol.0.tool-prep-number + net tool-prep-pocket <= iocontrol.0.tool-prep-pocket + diff --cc tests/toolchanger/m61/m61-test.ini index 0000000,b31e418..1293aef mode 000000,100644..100644 --- a/tests/toolchanger/m61/m61-test.ini +++ b/tests/toolchanger/m61/m61-test.ini @@@ -1,0 -1,84 +1,109 @@@ + [EMC] + DEBUG = 0x0 + + [DISPLAY] + DISPLAY = ./test-ui.py + + [TASK] + TASK = milltask + CYCLE_TIME = 0.001 + MDI_QUEUED_COMMANDS=10000 + + [RS274NGC] + PARAMETER_FILE = sim.var + USER_M_PATH = ./subs + + [EMCMOT] + EMCMOT = motmod + COMM_TIMEOUT = 4.0 + COMM_WAIT = 0.010 + BASE_PERIOD = 0 + SERVO_PERIOD = 1000000 + + [HAL] + HALUI = halui + HALFILE = core_sim.hal + POSTGUI_HALFILE = postgui.hal + + [TRAJ] + NO_FORCE_HOMING=1 + AXES = 3 + COORDINATES = X Y Z + HOME = 0 0 0 + LINEAR_UNITS = inch + ANGULAR_UNITS = degree + CYCLE_TIME = 0.010 + DEFAULT_VELOCITY = 1.2 + MAX_LINEAR_VELOCITY = 4 + -[AXIS_0] ++[KINS] ++KINEMATICS = trivkins ++JOINTS = 3 ++ ++[JOINT_0] + TYPE = LINEAR + HOME = 0.000 + MAX_VELOCITY = 4 + MAX_ACCELERATION = 1000.0 + BACKLASH = 0.000 + INPUT_SCALE = 4000 + OUTPUT_SCALE = 1.000 + MIN_LIMIT = -40.0 + MAX_LIMIT = 40.0 + FERROR = 0.050 + MIN_FERROR = 0.010 + -[AXIS_1] ++[JOINT_1] + TYPE = LINEAR + HOME = 0.000 + MAX_VELOCITY = 4 + MAX_ACCELERATION = 1000.0 + BACKLASH = 0.000 + INPUT_SCALE = 4000 + OUTPUT_SCALE = 1.000 + MIN_LIMIT = -40.0 + MAX_LIMIT = 40.0 + FERROR = 0.050 + MIN_FERROR = 0.010 + -[AXIS_2] ++[JOINT_2] + TYPE = LINEAR + HOME = 0.0 + MAX_VELOCITY = 4 + MAX_ACCELERATION = 1000.0 + BACKLASH = 0.000 + INPUT_SCALE = 4000 + OUTPUT_SCALE = 1.000 + MIN_LIMIT = -4.0 + MAX_LIMIT = 4.0 + FERROR = 0.050 + MIN_FERROR = 0.010 + ++[AXIS_X] ++HOME = 0.000 ++MAX_VELOCITY = 4 ++MAX_ACCELERATION = 1000.0 ++MIN_LIMIT = -40.0 ++MAX_LIMIT = 40.0 ++ ++[AXIS_Y] ++HOME = 0.000 ++MAX_VELOCITY = 4 ++MAX_ACCELERATION = 1000.0 ++MIN_LIMIT = -40.0 ++MAX_LIMIT = 40.0 ++ ++[AXIS_Z] ++HOME = 0.0 ++MAX_VELOCITY = 4 ++MAX_ACCELERATION = 1000.0 ++MIN_LIMIT = -4.0 ++MAX_LIMIT = 4.0 ++ + [EMCIO] + EMCIO = io + CYCLE_TIME = 0.100 + TOOL_TABLE = simpockets.tbl + TOOL_CHANGE_QUILL_UP = 1 + RANDOM_TOOLCHANGER = 0 + |