Go to file
Andy Whittaker e8223db854
Merge pull request #1 from thiagoralves/master
Sync with master
2020-09-30 11:40:43 +01:00
documentation/EtherNet-IP Included EtherNet/IP documentation 2019-09-16 04:39:39 -07:00
utils Fix for F_TRIG 2020-08-08 07:26:18 +09:00
webserver Fix systems that removed python2 symlink 2020-07-29 13:53:26 -07:00
.gitattributes Make checking out the code from Windows work by default 2019-03-29 11:46:47 -04:00
.gitignore Merge branch 'master' into fix_defunct 2019-04-25 08:55:26 -07:00
.gitlab-ci.yml add gitlab.ci and doxygen 2019-02-06 17:01:59 +00:00
.travis.yml GITHUB_TOKEN not defined on main repo 2019-02-07 22:26:14 +01:00
Dockerfile move installation into install.sh 2019-02-01 19:17:16 +01:00
README.md Update README.md 2019-02-06 23:27:25 +01:00
appveyor.yml test appveyor 2019-02-07 19:29:52 +01:00
background_installer.sh Fix systems that removed python2 symlink 2020-07-29 13:52:55 -07:00
doxygen.conf add gitlab.ci and doxygen 2019-02-06 17:01:59 +00:00
install.sh Added installer log support 2019-06-06 09:06:15 -05:00
requirements.txt Added pymodbus 2019-06-17 12:39:42 -05:00

README.md

OpenPLC Runtime version 3

Build Status Build status

OpenPLC is an open-source Programmable Logic Controller that is based on easy to use software. Our focus is to provide a low cost industrial solution for automation and research. OpenPLC has been used in many research papers as a framework for industrial cyber security research, given that it is the only controller to provide the entire source code. The OpenPLC Project consists of three sub-projects:

  1. Runtime
  2. Programming editor
  3. HMI builder

Installation:

git clone https://github.com/thiagoralves/OpenPLC_v3.git
cd OpenPLC_v3
./install.sh [platform]

Where [platform] can be:

win - Install OpenPLC on Windows over Cygwin

linux - Install OpenPLC on a Debian-based Linux distribution

docker - Used by the Dockerfile (i.e. doesn't invoke sudo)

rpi - Install OpenPLC on a Raspberry Pi

custom - Skip all specific package installation and tries to install OpenPLC assuming your system already has all dependencies met. This option can be useful if you're trying to install OpenPLC on an unsuported Linux platform or had manually installed all the dependency packages before.

Building, Installing and Running inside Docker

Make sure docker is installed

Build

# instead of running install.sh as stated above, run:
docker build -t openplc:v3 .

RUN

Devices can be passed to the docker daemon using the -v flag (e.g. -v /dev/ttyACM0:/dev/ttyACM0)

docker run -it --rm --privileged -p 8080:8080 openplc:v3