Skip to content

This Repository contains all files to compile and run the SAMYCore.

License

Notifications You must be signed in to change notification settings

TW-Robotics/SAMYCore

Repository files navigation

SAMYCore

Dependencies and building

Basics

sudo apt-get update
apt install -y build-essential python3.8 python3.8-dev nano cmake git

Open62541 v1.2.4 (OPC UA implementation)

git clone --recursive https://github.com/open62541/open62541.git -b 1.2 --single-branch \
&& cd open62541 && mkdir build && cd build \
&& cmake -DUA_NAMESPACE_ZERO=FULL \
      -DUA_ENABLE_SUBSCRIPTIONS=ON \
      -DUA_ENABLE_SUBSCRIPTIONS_EVENTS=ON \
      -DUA_ENABLE_DA=ON \
      -DUA_ENABLE_METHODCALLS=ON \
      -DUA_ENABLE_NODEMANAGEMENT=ON \
      -DUA_ENABLE_ENCRYPTION=OFF \
      .. \
&& make -j7 && make install

Catch2 v2.13.4 (testing)

git clone https://github.com/catchorg/Catch2.git -b v2.13.4 --single-branch \
&& cd Catch2 && mkdir build && cd build \
&& cmake .. && make -j7 && make install

SPDLog v1.5.0 (Logging)

Included in ThirdParty as header-only library

DyLib (Multiplatform dynamic linking)

Included in ThirdParty as header-only library

LibFFI v3.4.2 (Multiplatform Foreign Function Interface)

As of October 2022, in Ubuntu 20.04 LTS the following works:

apt install -y libffi-dev

Eventually it can built from source: https://github.com/libffi/libffi (see instructions there)

YAML-cpp v0.6.2

As of Marz 2022, in Ubuntu 20.04 LTS the following works:

sudo apt-get install libyaml-cpp-dev

Eventually can be built from source: https://github.com/jbeder/yaml-cpp.git

git clone --recursive https://github.com/jbeder/yaml-cpp.git -b yaml-cpp-0.6.2 --single-branch \
&& cd yaml-cpp && mkdir build && cd build \
&& cmake -DBUILD_SHARED_LIBS=ON .. && make -j7 && make install

Content:

  • OPC_UA Models: The OPC_UA models used in the SAMYCore (CRCL, DI, Robotics, fortiss_di, fortiss_robotics)
  • Tests: testing block for the CRCL information model.
  • build: contains some (correctly) autogenerated files that can be used as reference
  • configFiles_examples: examples of configuration files than are required by the SAMYCore
  • src: Source code of the SAMYCore
  • ThirdPart: External header-only libraries
  • Tools: Scripts for different purposes
  • Skills: Place in this folder you scripted skills. The SAMYCore will automatically look for them and load them (more info coming)

How to set up with Docker

In this section of the readme a step by step instruction is given to set up the samycore with docker.

Installing docker(Windows)

  • To install docker on Windows go to the Docker Install Site for Windows
  • Download the latest version of the Docker Desktop for Windows
  • To run Docker on Windows you need to also enable Virtualisation in the UEFI/BIOS of your computer
  • Furthermore the Docker Setup will prompt you to install the WSL2 Feature
  • After the Setup the computer will need a restart

Installing docker (Ubuntu)

Get the docker image running

  • First, clone this repository with the main branch
  • Windows: Start the Windows Powershell and navigate to the root directory of the repository
  • Ubuntu: Navigate to the root directory of the repository
  • To build the SAMY Core execute the command: $docker build -t core .
  • After the build has finished, the SAMY-Core can be started within a docker-compose file of the Uscases.

Notice: It's not recommended to start SAMY-Core manually.

About

This Repository contains all files to compile and run the SAMYCore.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •