{ "app": { "title": "Orisys AutoCal Platform Control", "about_title": "About Orisys AutoCal", "about_body": "Orisys AutoCal — internal controller for the 5-axis calibration platform\nVersion: {app_version}\nShared library: {shared_version} (API {api_version})\n\nQt binding: {binding}\nController library: {dll_dir}\nPreferences: {prefs_path}\n\nInternal use only.", "internal_notice": "Internal tool: not shipped in the customer installer." }, "brand": { "name": "ORISYS", "detail": "Orisys Technology" }, "menu": { "file": "File", "open_bas": "Download BAS init program…", "reveal_config": "Show config in Explorer…", "quit": "Quit", "view": "View", "theme": "Theme", "theme_dark": "Dark", "theme_light": "Light", "language": "Language", "lang_zh": "简体中文", "lang_en": "English", "show_diagnostics": "Diagnostics", "tabs": "Workspace", "outputs": "Outputs folder", "help": "Help", "about": "About AutoCal" }, "connection": { "title": "Controller connection", "mode": "Connection", "mode_eth": "Ethernet", "mode_com": "Serial", "mode_pci": "PCI card", "mode_local": "Local / simulated", "mode_demo": "Demo (no hardware)", "ip": "IP", "scan": "Scan IP", "com": "COM port", "card": "Card", "local_string": "Connect string", "open": "Connect", "close": "Disconnect", "status": "Status", "state_open": "Connected", "state_closed": "Not connected", "state_connecting": "Connecting…", "source": "Library", "no_more": "The 『{mode}』 connection is not available yet." }, "bus": { "title": "Bus initialisation", "bas_path": "BAS file", "choose": "Choose BAS…", "download": "Download and initialise", "reinit": "Re-initialise", "type": "Bus type", "type_ecat": "EtherCAT", "type_rtex": "RTEX", "type_unknown": "Unknown", "state": "Init state", "state_pending": "Not started", "state_running": "Initialising…", "state_ok": "Initialised", "state_failed": "Initialisation failed", "state_timeout": "Initialisation timed out", "nodes": "Nodes", "axes": "Axes", "downloaded": "File downloaded; the controller will scan the bus after its delay", "dialog_title": "Choose a BAS file" }, "axes": { "title": "Axis motion", "axis": "Axis", "enable": "Enable", "enable_on": "Enabled", "enable_off": "Disabled", "atype": "Type", "units": "Units", "speed": "Speed", "accel": "Accel", "dpos": "DPOS", "mpos": "MPOS", "dpos_mm": "DPOS (mm)", "mpos_mm": "MPOS (mm)", "status": "Status", "motion": "Motion", "motion_word": "Motion", "idle": "Stopped", "moving": "Moving", "position_pair": "{value} ({mm} mm)", "enable_all": "Enable all", "disable_all": "Disable all", "clear_alarm_all": "Clear all alarms", "detail": "Axis {axis}: type {atype} · accel {accel} · feedback {mpos} ({mpos_mm} mm) · status {status} · {home}", "detail_none": "Axis {axis}: no data yet (not connected or not initialised)", "home_status": "Homing", "home_ok": "Homed", "home_pending": "Not homed", "home_running": "Homing…", "jog_fwd": "Fwd", "jog_rev": "Rev", "stop_all": "Stop all", "stop": "Stop", "target": "Target", "move_abs": "Move abs", "move_rel": "Move rel", "home_mode": "Home mode", "home_high": "Home speed", "home_low": "Home creep", "home_offset": "Home offset", "clear_alarm": "Clear alarm", "apply": "Apply", "home": "Home", "controls": "Actions", "mm_derived_tip": "Millimetres are derived from the pulse equivalent: a display value, not a calibrated length.", "enabled_count": "{on}/{total} axes enabled" }, "busdata": { "title": "Bus data exchange", "group": "Bus data (SDO / RTEX)", "ecat": "EtherCAT (SDO)", "rtex": "RTEX", "node": "Node", "index": "Index", "subindex": "Subindex", "type": "Type", "value": "Value", "read": "Read", "write": "Write", "axis": "Axis", "parameter": "Parameter", "last_result": "Last: {text}", "not_available": "The current bus does not support this", "read_ok": "Read: {value}", "write_ok": "Written" }, "status": { "motion": "Motion", "ready": "Ready", "poll_ok": "State refresh healthy", "poll_paused": "State refresh paused", "poll_stalled": "State refresh stalled", "last_error": "Last error", "none": "None", "refused": "Refused", "done": "Done", "failed": "Failed", "pause": "Pause refresh", "resume": "Resume refresh", "paused": "State refresh paused", "alarm_short": "Alarm", "axes_enabled": "{on}/{total} axes enabled", "health_none": "Refresh —", "health_age": "Read {ms} ms ago", "health_paused": "Refresh paused", "poll_every": "Refresh every {ms} ms" }, "run": { "title": "Run", "phase_idle": "Idle", "phase_dry_run": "Dry run", "phase_running": "Running", "phase_paused": "Paused", "phase_done": "Done", "phase_failed": "Failed", "step_of": "Point {done}/{total}", "no_steps": "No points generated", "elapsed_only": "Elapsed {elapsed}", "elapsed_remaining": "Elapsed {elapsed} · about {remaining} left", "run": "Run", "pause": "Pause", "abort": "Abort", "abort_stopped": "Run aborted and all axes stopped.", "not_implemented": "The runner belongs to phase P7 and is not implemented yet; abort is always available." }, "readout": { "title": "Axis state" }, "workspace": { "tab_axes": "Axis debug", "tab_sequence": "Test sequence", "tab_sensor": "Sensor", "tab_surface": "Surface map", "tab_points": "Calibration points", "not_built": "Not built yet", "reserved_sensor": "Sensor connection, live image and force curves will appear here: device and source selection, preview, and a compact version of the Studio curve view.", "reserved_surface": "Multi-point calibration sensitivity will be drawn as a colour map on the sensor's 3D surface here: each point's sensitivity interpolated and coloured, with a legend and range.", "reserved_points": "The calibration point table and capture controls will appear here: platform coordinates, reference load, sampling statistics and the resulting sensitivity." }, "sequence": { "title": "Test sequence design", "profile_title": "Point generation", "preview_title": "Preview", "validation_title": "Checks", "points_title": "Calibration points", "field_mode": "Surface mode", "field_name": "Sequence name", "field_note": "Note", "field_pitch": "Pitch (mm)", "field_margin": "Margin (mm)", "field_radius": "Radius (mm)", "field_clear_height": "Clear height (mm)", "field_approach_speed": "Approach speed (mm/s)", "field_press_speed": "Press speed (mm/s)", "field_press_depth": "Press depth (mm)", "field_dwell": "Dwell (s)", "field_settle": "Settle window (s)", "field_repeats": "Repeats", "field_order": "Point order", "mode_flat": "Flat", "mode_curved": "Curved", "order_row": "Row-wise", "order_serpentine": "Serpentine", "order_distance": "By distance", "preview_placeholder": "3D preview: sensor surface · calibration points · visiting order\n(implemented in the simulation phase)", "preview_hint": "After generation, check here that each point is on the surface, inside travel, and confirmable by contact.", "validation_pending": "No points generated yet.", "check_on_surface": "On the surface", "check_within_travel": "Within travel", "check_contact_confirmable": "Contact confirmable", "btn_generate": "Generate points", "btn_simulate": "Simulate", "btn_dry_run": "Dry run (no contact)", "btn_export": "Export sequence…", "btn_import": "Import sequence…", "import_export_tip": "Saved as a JSON document (.oryseq), reusable across machines; the format version is checked on import.", "export_failed": "Export failed: {error}", "import_failed": "Import failed: {error}", "pending_tooltip": "This belongs to phase {phase} and is not implemented yet.", "col_index": "#", "col_x": "X (mm)", "col_y": "Y (mm)", "col_z": "Z (mm)", "col_status": "Status", "col_sensitivity": "Sensitivity (last)", "col_samples": "Samples", "col_actions": "Actions", "not_generated": "—", "status_pending": "Pending", "status_skipped": "Skipped", "summary": "{count} points ({enabled} enabled) · {spans} · about {duration} (estimate)", "summary_empty": "No points yet: generate or import to see the count and travel span.", "dialog_export": "Export sequence", "dialog_import": "Import sequence", "filter_sequence": "Calibration sequence (*.oryseq *.json)", "exported": "Sequence exported: {name}", "imported": "Sequence imported: {name} ({count} points)", "import_warnings": "Import reported {count} warning(s)", "confirm_discard": "The current sequence has not been exported. Importing replaces it. Continue?", "points_hint": "Coordinates are generated and checked per point; they are not typed. A typed coordinate is one nothing has checked, and one wrong number ruins a run." }, "action": { "ok": "Done", "refused": "Refused", "failed": "Failed" }, "diagnostics": { "title": "Diagnostics", "binding": "Qt binding", "dll_dir": "Controller library", "prefs": "Preferences", "outputs": "Outputs", "bas_loaded": "BAS loaded", "yes": "Yes", "no": "No" } }