README.md
author Edouard Tisserant <edouard.tisserant@gmail.com>
Fri, 26 Apr 2024 09:24:26 +0200
changeset 3938 fc4af5685aa3
parent 3872 5f73b439e78e
permissions -rw-r--r--
merge
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
     1
<!---
1728
9a2d192a7aef fix link to documentation in README.md
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 1727
diff changeset
     2
[![docs](https://readthedocs.org/projects/beremiz/badge/?version=latest)](https://beremiz.readthedocs.io)
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
     3
-->
3836
9b4e94608036 Add testing status badge
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3835
diff changeset
     4
[![CI Automated testing](https://github.com/beremiz/beremiz/actions/workflows/run_tests_in_docker.yml/badge.svg?branch=python3)](https://github.com/beremiz/beremiz/actions/workflows/run_tests_in_docker.yml)
1727
865e157c6474 Add information about built official documentation to README.md
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 1679
diff changeset
     5
1679
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
     6
# Beremiz #
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
     7
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
     8
Beremiz is an integrated development environment for machine automation. It is Free Software, conforming to IEC-61131 among other standards.
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
     9
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
    10
It relies on open standards to be independent of the targeted device, and let you turn any processor into a PLC. Beremiz includes tools to create HMI, and to connect your PLC programs to existing supervisions, databases, or fieldbuses.
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
    11
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
    12
With Beremiz, you conform to standards, avoid vendor lock, and contribute to the better future of Automation. 
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
    13
2253
b0418bb13527 Rework README.md, add examples section, add instructions for Modbus extension, more information about runtime.
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 2012
diff changeset
    14
Beremiz consists of two components:
b0418bb13527 Rework README.md, add examples section, add instructions for Modbus extension, more information about runtime.
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 2012
diff changeset
    15
3450
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
    16
* Integrated Development Environment (IDE), Beremiz.py. It is running on user's computer and is used to write/compile/debug PLC programs and control PLC runtime.
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
    17
* Reference runtime implementation in python, Beremiz_service.py. It's running on target platform, communicates with I/O and executes PLC program.
2253
b0418bb13527 Rework README.md, add examples section, add instructions for Modbus extension, more information about runtime.
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 2012
diff changeset
    18
1679
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
    19
See official [Beremiz website](http://www.beremiz.org/) for more information.
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
    20
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    21
## Install latest release ##
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    22
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    23
Windows installer and Snap package for Linux are available in [Github releases](https://github.com/beremiz/beremiz/releases) and [Snapcraft's store](https://snapcraft.io/beremiz)
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    24
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    25
## Tutorials and examples ##
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    26
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    27
In IDE, find menu "File>Tutorials and examples" to quickly open examples that should run as-is.
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    28
3637
08a078a04f95 Update README.md
etisserant <edouard.tisserant@gmail.com>
parents: 3635
diff changeset
    29
There are more examples in `tests/projects` and `exemples` directories.
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    30
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    31
Some example and test are shown on [Beremiz youtube channel](https://www.youtube.com/channel/UCcE4KYI0p1f6CmSwtzyg-ZA).
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    32
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    33
## Development with Beremiz ##
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    34
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    35
Developers are invited to subscribe to [mailing list](https://sourceforge.net/p/beremiz/mailman/beremiz-devel/) (beremiz-devel@lists.sourceforge.net).
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    36
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    37
The list is moderated and requires subscription before posting.
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    38
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    39
To subscribe to the mailing list go [here](https://sourceforge.net/p/beremiz/mailman/beremiz-devel/).
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    40
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    41
Searchable archive using search engine of your choice is available [here](http://beremiz-devel.2374573.n4.nabble.com/).
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    42
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    43
## Build on Linux (developer setup) ##
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    44
3835
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    45
### System prerequisites (Ubuntu 22.04) :
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    46
```
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    47
# install required system packages as root
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    48
sudo apt-get install \
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    49
  build-essential automake flex bison mercurial \
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    50
  libgtk-3-dev libgl1-mesa-dev libglu1-mesa-dev \
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    51
  libpython3.10-dev libssl-dev \
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    52
  python3.10 virtualenv cmake git mercurial
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    53
```
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    54
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    55
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    56
### Prepare build directory
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    57
3637
08a078a04f95 Update README.md
etisserant <edouard.tisserant@gmail.com>
parents: 3635
diff changeset
    58
All commands hereafter assume that selected directory to contain all downloaded source code and build results is `~/Beremiz`
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    59
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    60
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    61
mkdir ~/Beremiz
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    62
cd ~/Beremiz
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    63
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    64
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    65
### Get Source Code (Mercurial)
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    66
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    67
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    68
cd ~/Beremiz
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    69
hg clone https://hg.beremiz.org/beremiz
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    70
hg clone https://hg.beremiz.org/matiec
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    71
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    72
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    73
### Get Source Code (Git)
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    74
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    75
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    76
cd ~/Beremiz
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    77
git clone https://github.com/beremiz/beremiz
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    78
git clone https://github.com/beremiz/matiec
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    79
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    80
3835
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    81
### Python prerequisites (virtualenv) :
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    82
```
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    83
# setup isolated python environment
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    84
virtualenv ~/Beremiz/venv
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    85
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    86
# install required python packages
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    87
~/Beremiz/venv/bin/pip install -r ~/Beremiz/beremiz/requirements.txt
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    88
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    89
```
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
    90
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    91
### Build MatIEC compiler
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    92
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    93
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    94
cd ~/Beremiz/matiec
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    95
autoreconf -i
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    96
./configure
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    97
make
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    98
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
    99
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   100
### Build CanFestival (optional)
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   101
3637
08a078a04f95 Update README.md
etisserant <edouard.tisserant@gmail.com>
parents: 3635
diff changeset
   102
Only needed for CANopen support. Please read CanFestival manual to choose CAN interface other than `virtual`.
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   103
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   104
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   105
cd ~/Beremiz
3835
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   106
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   107
hg clone http://hg.beremiz.org/canfestival
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   108
#  -- or --
3872
5f73b439e78e Fix typo in README.md
etisserant <edouard.tisserant@gmail.com>
parents: 3836
diff changeset
   109
git clone https://github.com/beremiz/canfestival
3835
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   110
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   111
cd ~/Beremiz/canfestival
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   112
./configure --can=virtual
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   113
make
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   114
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   115
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   116
### Build Modbus library (optional)
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   117
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   118
Only needed for Modbus support.
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   119
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   120
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   121
cd ~/Beremiz
3835
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   122
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   123
hg clone http://hg.beremiz.org/Modbus
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   124
#  -- or --
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   125
git clone https://github.com/beremiz/Modbus
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   126
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   127
cd ~/Beremiz/Modbus
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   128
make
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   129
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   130
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   131
### Build BACnet (optional)
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   132
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   133
Only needed for BACnet support.
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   134
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   135
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   136
cd ~/Beremiz
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   137
svn checkout https://svn.code.sf.net/p/bacnet/code/trunk/bacnet-stack/ BACnet
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   138
cd BACnet
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   139
make MAKE_DEFINE='-fPIC' MY_BACNET_DEFINES='-DPRINT_ENABLED=1 -DBACAPP_ALL -DBACFILE -DINTRINSIC_REPORTING -DBACNET_TIME_MASTER -DBACNET_PROPERTY_LISTS=1 -DBACNET_PROTOCOL_REVISION=16' library
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   140
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   141
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   142
### Launch Beremiz IDE
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   143
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   144
```
3835
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   145
~/Beremiz/venv/python ~/Beremiz/beremiz/Beremiz.py
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   146
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   147
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   148
## Run standalone Beremiz runtime ##
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   149
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   150
* Start standalone Beremiz service
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   151
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   152
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   153
mkdir ~/beremiz_runtime_workdir
3835
5b65b8f6d523 Use requirements.txt and update doc accordingly.
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3638
diff changeset
   154
~/Beremiz/venv/python ~/Beremiz/beremiz/Beremiz_service.py -p 61194 -i localhost -x 0 -a 1 ~/beremiz_runtime_workdir
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   155
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   156
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   157
To connect IDE with runtime, enter target location URI in project's settings (project->Config->BeremizRoot/URI_location) pointed to your running Beremiz service in this case :
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   158
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   159
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   160
PYRO://127.0.0.1:61194
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   161
```
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   162
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   163
If project's URL is 'LOCAL://', then IDE launches on demand a local instance of Beremiz python runtime working on a temporary directory.
1679
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   164
3450
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   165
## Build documentation
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   166
3637
08a078a04f95 Update README.md
etisserant <edouard.tisserant@gmail.com>
parents: 3635
diff changeset
   167
Source code for documentation is stored in `doc` directory in project's source tree.
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   168
It's written in reStructuredText (ReST) and uses Sphinx to generate documentation in different formats.
3450
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   169
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   170
To build documentation you need following packages on Ubuntu/Debian:
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   171
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   172
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   173
sudo apt-get install build-essential python-sphynx
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   174
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   175
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   176
### Documentation in HTML
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   177
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   178
Build documentation
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   179
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   180
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   181
cd ~/Beremiz/doc
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   182
make all
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   183
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   184
3637
08a078a04f95 Update README.md
etisserant <edouard.tisserant@gmail.com>
parents: 3635
diff changeset
   185
Result documentation is stored in directories `doc/_build/dirhtml*`.
3450
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   186
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   187
### Documentation in PDF
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   188
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   189
To build pdf documentation you have to install additional packages on Ubuntu/Debian:
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   190
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   191
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   192
sudo apt-get install textlive-latex-base texlive-latex-recommended \
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   193
     texlive-fonts-recommended texlive-latex-extra
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   194
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   195
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   196
Build documentation
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   197
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   198
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   199
cd ~/Beremiz/doc
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   200
make latexpdf
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   201
```
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   202
3637
08a078a04f95 Update README.md
etisserant <edouard.tisserant@gmail.com>
parents: 3635
diff changeset
   203
Result documentation is stored in `doc/_build/latex/Beremiz.pdf`.
3450
8be4b8f092cd Minor changes to README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 2577
diff changeset
   204
2253
b0418bb13527 Rework README.md, add examples section, add instructions for Modbus extension, more information about runtime.
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 2012
diff changeset
   205
## Documentation ##
1679
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   206
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   207
 * See [Beremiz youtube channel](https://www.youtube.com/channel/UCcE4KYI0p1f6CmSwtzyg-ZA) to get quick information how to use Beremiz IDE.
3605
7aa4209c2b2d update installation instructions
v.petrov <v.petrov@k-soft-spb.ru>
parents: 3450
diff changeset
   208
3635
5107a2712b17 Update README.md
Edouard Tisserant <edouard.tisserant@gmail.com>
parents: 3606
diff changeset
   209
 * [Official documentation](http://beremiz.readthedocs.io/) is built from sources in doc directory.
1729
31e63e25b4cc README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 1728
diff changeset
   210
   Documentation does not cover all aspects of Beremiz use yet.
31e63e25b4cc README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 1728
diff changeset
   211
   Contribution are very welcome!
1727
865e157c6474 Add information about built official documentation to README.md
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents: 1679
diff changeset
   212
   
1679
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   213
 * [User manual](http://www.sm1820.ru/files/beremiz/beremiz_manual.pdf) from INEUM (Russian).
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   214
   Be aware that it contains some information about functions available only in INEUM's fork of Beremiz.
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   215
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   216
 * [User manual](http://www.beremiz.org/LpcManager_UserManual.pdf) from Smarteh (English).
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   217
   Be aware that it contains some information about functions available only in Smarteh's fork of Beremiz.
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   218
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   219
 * Outdated short [user manual](https://www.scribd.com/document/76101511/Manual-Beremiz#scribd) from LOLI Tech (English).
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   220
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   221
 * See official [Beremiz website](http://www.beremiz.org/) for more information.
2fcea15858a5 README.md edited online with Bitbucket
Andrey Skvortsov <andrej.skvortzov@gmail.com>
parents:
diff changeset
   222