summaryrefslogtreecommitdiffstats
path: root/README.rst
blob: 05a9d9444ef4fae22635185b2066abfc1962473c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
pyprofibus - PROFIBUS-DP stack
==============================

`https://bues.ch/a/profibus <https://bues.ch/a/profibus>`_

pyprofibus is an Open Source `PROFIBUS-DP <https://en.wikipedia.org/wiki/Profibus>`_ stack written in Python.


Hardware
========

pyprofibus is able to run on any machine that supports Python. It also runs on embedded machines such as the `Raspberry Pi <https://en.wikipedia.org/wiki/Raspberry_Pi>`_ or even tiny microcontrollers such as the `ESP32 <https://en.wikipedia.org/wiki/ESP32>`_ (Micropython).

Please read the hardware documentation for more information:

`pyprofibus hardware documentation <doc/hardware.html>`_


Speed / Baud rate
=================

The achievable Profibus-DP speed depends on the hardware that it runs on and what kind of serial transceiver is used. There is no software side artificial limit.

Please see the `pyprofibus hardware documentation <doc/hardware.html>`_


Examples
========

pyprofibus comes with a couple of examples that can teach you how to use pyprofibus in your project.

* Example that runs pyprofibus without any hardware. This example can be used to play around with pyprofibus.
	* examples/example_dummy_oneslave.py
	* examples/example_dummy_oneslave.conf
	* examples/example_dummy_twoslaves.py
	* examples/example_dummy_twoslaves.conf
	* examples/example_dummy_inputonly.py
	* examples/example_dummy_inputonly.conf

* Example that runs pyprofibus as master connected to an ET200S as slave.
	* examples/example_et200s.py
	* examples/example_et200s.conf

* Example that runs pyprofibus as master connected to an S7-315-2DP as *slave*.
	* examples/example_s7-315-2dp.py
	* examples/example_s7-315-2dp.conf


Dependencies
============

* `Python <https://www.python.org/>`_ 3.5 or later.
* Or alternatively `Micropython <https://micropython.org/>`_. Please see the `pyprofibus Micropython help <micropython/README.html>`_ for more information.


License
=======

Copyright (c) 2013-2021 Michael Buesch <m@bues.ch>

Licensed under the terms of the GNU General Public License version 2, or (at your option) any later version.
bues.ch cgit interface