Skip to content

Free and open-source PLC driven warehouse/manufacturing simulation.

License

Notifications You must be signed in to change notification settings

Omnind/Open-Industry-Project

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenIndustryProject

Free and Open-source warehouse/manufacturing simulator made with Godot, JoltPhysics, OPC UA .NET, and libplctag.

The goal is to provide an open platform for developers to contribute to the creation of virtual industrial equipment/devices and for people to be able to test their ideas or simply educate themselves while using standard industrial platforms.

Scroll down to the Getting Started section for information on how to work with this project.

Join our discord group: Open Industry Project

Supported Communication Protocols:

  • OPC UA
  • Ethernet/IP via libplctag
  • Modbus TCP via libplctag

Demo

This demo is located at: Demos

2024-01-28_12-53-25.mp4

Getting Started

The contents of this repo are parts of a regular Godot project. You will import this project via the Godot project manager, just like any other Godot project.

If you are familiar with Godot and you open this project, you will notice that some things look different. This is intentional. This project is meant to be entirely contained with in the editor.

At the moment there is no reason to "run" this project as if it were a game like you normally would for development done in Godot. The editor viewport(s) are where all simulations will take place.

All objects used in a simulation scene will be in the EquipmentAndDevices folder.

All scenes where simulations will take place require a Main node. The easiest way to setup a simulation scene is to have a new one inherient the Main node.

image

The Main node can be selected in Scene tab.

image

This will expose it's properties in the Inspector tab. This is where communications will be setup. (This step can be skipped if no external platform will be used)

image

New devices and equipment can be dragged into the viewport to instantiate it. Once they're in the scene they can be modified.

2024-02-09.16-39-14.mp4

If using the latest version of Godot (4.2 stable), it is recommended to toggle off "View Gizmos" when simulating:

image

Equipment and devices have their properties that can be setup to communicate to a PLC or OPC Server. In this example Ignition was used as an OPC server to write to the conveyor tag.

2024-02-09.16-59-15.mp4

Importing Models

Although this project has a few models, you maybe interested in adding more.

This is a good resource for free industrial parts CAD models: 3dfindit

It is recommened to export the files in their native format (usually STEP), modify them if needed for usage in Godot in any CAD software and then export as FBX for additional work in Blender, or to be imported straight into Godot.

Alternatively most manufacturers provide the CAD files directly on their own website.

Help Wanted

  • More equipment and devices
  • Better exception handling
  • Review code
  • Documentation
  • Training videos?

About

Free and open-source PLC driven warehouse/manufacturing simulation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 86.5%
  • GDScript 13.5%