Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Papyrus/customizations/manufacturing/opcua/robotics

Create Blocks

The root element of the information model defined by the OPC UA Companion Specification for robotics is a MotionDeviceSystemType, which contain at least one MotionDeviceType, one ControllerType and one SatfetyStateType. First, create those Blocks and apply the appropriate stereotype to each of them. For example we create MotionDeviceSystem that we named "MotionDeviceSystemRobot" and we applyed the stereotype MotionDeviceSystemType to it .

BDD.PNG

Then we will instanciate a motion device, a controller and a safety state inside the MotionDeviceSystem "MotionDeviceSystemRobot". To do that we need to create an IBD for the MotionDeviceSystemRobot. Right click on the MotionDeviceSystemRobot on the Model Explorer and select New Diagram> SysML 1.6 Internal Block Diagram. choose a name for the Diagram et slelect OK. Drag an drop the motion device, the controller and the satfety state blocks into the IBD and select Drop type as typed property.

Drop.PNG

In the companion specification for Robotics, Motion devices are organized inside a folder named MotionDevices, controllers inside a folder named Controllers and Safety states inside a folder called SafetySTates. In our model, we put all the instances together inside the MotionDeviceSystemType and we dipatch the resulting node into the rigth folder by cheking the type of the instance. For example if the part is typed by a MotionDeviceType then the resulting node will be generated into the Folder Devices. In order to make it possible to instanciate different instances from one Type, for example instanciate two motion devices typed by MotionDevice Block and havig différents parameters we propose to apply the stereotype for each part so that each of them can have different parameters. For Example if you have two robots with different manufacturer then you can modify the property manufacturer for each part.

Stereotype3.PNG


In the same manner you can create an AxisType Block and instanciate axis inside a MotionDeviceType. This latter can contain also Power Train(s) and Motor Type(s). The figure below shows the IBD of a six Axis, six power trains and motors.

RobotIBD.PNG

The PowerTrainType represents instances of power trains of a motion device. It consists of one motor and gear to provide the required torque. For each power train, you need to add the associated motor like the Figure Below so that our generator could generate the associated References between the PowerTrains and the Motors. The Figure shows the properties of the powerTrainBase and the property Motor contains motorBase Motor, which is the associated MotorType of powerTrainBase.

PowerTrain.PNG

Back to the top