Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Models - Fanuc CNC intermediate model #6

Closed
MRIIOT opened this issue Jul 3, 2021 · 3 comments
Closed

Models - Fanuc CNC intermediate model #6

MRIIOT opened this issue Jul 3, 2021 · 3 comments
Assignees
Labels
application:adapter Anything related to a specific application

Comments

@MRIIOT
Copy link
Contributor

MRIIOT commented Jul 3, 2021

#5

Develop an intermediate model to assist in auto-generation of YAML model for the Adapter. The model will be fanuc-driver.Collector dependent, meaning that data harvested at the root, path, and axis/spindle levels will be known ahead of time. However, the number of axes, spindles, and path will not be known ahead of time.

See Ladder99/fanuc-driver#12.

@MRIIOT
Copy link
Contributor Author

MRIIOT commented Jul 3, 2021

model:
        paths
        cnc_id
        power_on_time
        paths:
                1:
                        axis_names
                        spindle_names
                        sys_info
                        stat_info
                        figures
                        gcode_blocks
                        axes:
                                X:
                                        axis_data
                                Y:
                                        axis_data
                                Z:
                                        axis_data
                        spindles:
                                S:
                                        spindle_data

model:
        paths
        cnc_id
        power_on_time
        paths:
                1:
                        axis_names
                        spindle_names
                        sys_info
                        stat_info
                        figures
                        gcode_blocks
                        axes:
                                X1:
                                        axis_data
                                Z1:
                                        axis_data
                        spindles:
                                S:
                                        spindle_data
                2:
                        axis_names
                        spindle_names
                        sys_info
                        stat_info
                        figures
                        gcode_blocks
                        axes:
                                X2:
                                        axis_data
                                Z2:
                                        axis_data
                        spindles:
                                S:
                                        spindle_data

model:
        paths
        cnc_id
        power_on_time
        paths:
                1:
                        axis_names
                        spindle_names
                        sys_info
                        stat_info
                        figures
                        gcode_blocks
                        axes:
                                X:
                                        axis_data
                                Y:
                                        axis_data
                                Z:
                                        axis_data
                                U:
                                        axis_data
                        spindles:

@MRIIOT
Copy link
Contributor Author

MRIIOT commented Jul 10, 2021

Maybe something like this.

{
  "handler": {
    "name": "Native",
    "type": "l99.driver.fanuc.handlers.Native"
  },
  "collector": {
    "name": "Basic08",
    "type": "l99.driver.fanuc.collectors.Basic08"
  },
  "observations": {
    "root": [
      {
        "name": "connect",
        "veneer": "l99.driver.fanuc.veneers.Connect"
      },
      {
        "name": "paths",
        "veneer": "l99.driver.fanuc.veneers.GetPath"
      },
      {
        "name": "cnc_id",
        "veneer": "l99.driver.fanuc.veneers.CNCId"
      },
      {
        "name": "power_on_time",
        "veneer": "l99.driver.fanuc.veneers.RdParamLData"
      }
    ],
    "path": [
      {
        "name": "axis_names",
        "veneer": "l99.driver.fanuc.veneers.RdAxisname"
      },
      {
        "name": "spindle_names",
        "veneer": "l99.driver.fanuc.veneers.RdSpindlename"
      },
      {
        "name": "sys_info",
        "veneer": "l99.driver.fanuc.veneers.SysInfo"
      },
      {
        "name": "stat_info",
        "veneer": "l99.driver.fanuc.veneers.StatInfoText"
      },
      {
        "name": "figures",
        "veneer": "l99.driver.fanuc.veneers.Figures"
      },
      {
        "name": "gcode_blocks",
        "veneer": "l99.driver.fanuc.veneers.GCodeBlocks"
      }
    ],
    "axis": [
      {
        "name": "axis_data",
        "veneer": "l99.driver.fanuc.veneers.RdDynamic2_1"
      }
    ],
    "spindle": [
      {
        "name": "spindle_data",
        "type": "l99.driver.fanuc.veneers.RdActs2"
      }
    ]
  },
  "structure": {
    "observations": {
      "$ref": "#/observations/root"
    },
    "path": [
      {
        "name": 1,
        "observations": {
          "$ref": "#/observations/path"
        },
        "axis": [
          {
            "name": "X",
            "observations": {
              "$ref": "#/observations/axis"
            }
          },
          {
            "name": "Y",
            "observations": {
              "$ref": "#/observations/axis"
            }
          },
          {
            "name": "Z",
            "observations": {
              "$ref": "#/observations/axis"
            }
          }
        ],
        "spindle": [
          {
            "name": "S",
            "observations": {
              "$ref": "#/observations/spindle"
            }
          }
        ]
      }
    ]
  }
}

@bburns bburns added this to the Adapter milestone Aug 7, 2021
@bburns bburns self-assigned this Aug 7, 2021
@bburns bburns changed the title Fanuc CNC intermediate model Models - Fanuc CNC intermediate model Aug 7, 2021
@MRIIOT
Copy link
Contributor Author

MRIIOT commented Oct 21, 2022

The model is completely generated on Fanuc-Driver side.

@MRIIOT MRIIOT closed this as completed Oct 21, 2022
@bburns bburns added application:adapter Anything related to a specific application and removed component:adapter labels Jan 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
application:adapter Anything related to a specific application
Projects
None yet
Development

No branches or pull requests

2 participants