Skip to content

MalkarovPark/Robotic_Complex_Workspace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

RCWorkspace

Robotic Complex Workspace

License Swift Xcode 15.0+ macOS 14.0+ iOS 17.0+ visionOS 1.0+

Robotic Complex Workspace is an open source application for designing and controlling of automated means of production. The application provides a convinient approach both in modeling the production system and direct control of automatics.

Table of Contents

Requirements

The application codebase supports macOS, iOS/iPadOS and requires Xcode 14.1 or newer. The Robotic Complex Workspace application has a Base SDK version of 13.0 and 16.1 respectively.

Getting Started

Application Installation

Download an image from the releases and use application package for the appropriate platform.

Connect the necessary property list files in the application settings for robots, tools and parts.

macOS

Copy a package with the app extension to the Applications folder. Confirm launch.

iOS & iPadOS

Official installation method coming in the 17th versions of iOS and iPadOS. Or you may install application package by your own developer profile and special installers. Also possible to use the app in application playground format by the Swift Playgrounds (iPadOS only).

Project Editing

You may view and edit this application project by two ways:

  • Clone this repository;
  • Download ZIP archive from this page.

Open downloaded project in the Xcode and confirm trust.

Working With Document

RCWorkspace is the document based app. Thus, each production complex is a separate document. You can create a new or open an existing document that has a preset extension.

Objects are created in the relevant items available through the sidebar. All created objects can be placed and positioned in the workspace.

Robots

When creating a robot, in addition to the name, the manufacturer, series and model are specified. The model parameter determines how the visual model is controlled and direct connector.

Tools

When creating, the name of the tool and its model are specified. Likewise robot, the model defines a model controller and direct connector.

Parts

When creating a part, its name and model are specified.

Visual Modeling & Physical Simulation

Provided through the SceneKit framework.

The functionality of building visual models is available for production equipment – robots and tools, both individually and as part of a complex.

Physical simulation allows you to evaluate the performance of technological operations by equipment on parts.

Can be endabled/disabled in settings if needed.

Connecting Objects

Connection to real equipment through connectors. For each device, the connector setting is available by pressing the link@8x button.

The connected device can control its visual model, allowing it to be tracked in real time. The user can combine real and virtual devices in one document.

Handling Statistics

The application is available to receive statistical data from selected devices and save them in a document. The statistics data are available in the form of various types of charts and disclosure groups of parameters.

To open the statistics view, press the chart bar@8x button next to the object of interest.

Extensibility

You can add support for new models of industrial equipment or parts.

Create your controllers and connectors, new visual models. If you create your own fork – don't forget to add the models to the appropriate property list files – RobotsInfo, ToolsInfo, PartsInfo. To select the appropriate controller and connector classes, you need to update the passed select_robot_modules and select_tool_modules functions in the ContentView.

External model files and parametric files describing them (similar in structure to internal ones) can be connected in the application settings.

Getting Help

GitHub is our primary forum for RCWorkspace. Feel free to open up issues about questions, problems, or ideas.

License

This project is made available under the terms of a Apache 2.0 license. See the LICENSE file.