Project home: https://bues.ch/a/awlsim Original repository at: https://git.bues.ch/git/awlsim.git https://bues.ch/a/awlsim

Michael Buesch 34b03edc3a Bump version 6 rokov pred
awlsim 34b03edc3a Bump version 6 rokov pred
awlsim_loader 1aa01dd38f Add AWL optimizer stub 7 rokov pred
awlsimhw_debug 8b9d372a9b hwmods: Add import of awlsim.common.exceptions 7 rokov pred
awlsimhw_dummy 8b9d372a9b hwmods: Add import of awlsim.common.exceptions 7 rokov pred
awlsimhw_linuxcnc 8b9d372a9b hwmods: Add import of awlsim.common.exceptions 7 rokov pred
awlsimhw_pyprofibus 8b9d372a9b hwmods: Add import of awlsim.common.exceptions 7 rokov pred
awlsimhw_rpigpio 8b9d372a9b hwmods: Add import of awlsim.common.exceptions 7 rokov pred
debian 34b03edc3a Bump version 6 rokov pred
doc 6ac5d4d20c doc: Add more FUP docs 6 rokov pred
examples f4f14ac8c9 Upgrade .awlpro files 6 rokov pred
libs ff65f25a2d linuxcnc_fake_hal: Close file 6 rokov pred
maintenance e2558a44b3 makerelease: Run testbuild without optimization 6 rokov pred
pilc 35a49c4cfa Remove kernel submodule 6 rokov pred
progs 5bcb65a617 Add PuTTY 7 rokov pred
submodules f1a658fc1e pyprofibus: Update 6 rokov pred
tests 51b7bd1a2c tests/run: Disable compiler optimization for cython builds 6 rokov pred
.gitignore 7cde4e890c Add generated doc files to gitignore 7 rokov pred
.gitmodules 35a49c4cfa Remove kernel submodule 6 rokov pred
COMPATIBILITY.md c4e79739bc doc: Fix typo 7 rokov pred
COPYING.txt 193467d27e Clarify license conditions (GPL2+) 10 rokov pred
MANIFEST.in 9433b1f5e7 Move setup_cython.py to maintenance directory 7 rokov pred
QUICK-START.md 4058500794 Add QUICK-START documentation 7 rokov pred
README.md 2e872c4826 Update URL 6 rokov pred
TODO.md 6a74cedb07 fupcompiler: Implement compare box 6 rokov pred
awlsim-client 2d76736f0d Move cython logic to separate awlsim_loader module 7 rokov pred
awlsim-gui 250f25803b Update copyright 8 rokov pred
awlsim-linuxcnc-hal ce4db6dcd8 awlsim-linuxcnc-hal: Add missing server shutdown 6 rokov pred
awlsim-proupgrade 3efb30cac1 proupgrade: Add FUP upgrade 6 rokov pred
awlsim-server 164c250f7f awlsim-server: Fix cython helper check 7 rokov pred
awlsim-server.service.in 74d8702854 service unit: Disable hash randomization and set CPU affinity 7 rokov pred
awlsim-symtab 21e6cad1f8 ASC: Strip white space in ASC files 7 rokov pred
awlsim-test 186d80580d forward optimizer settings to actual optimizer instance 6 rokov pred
awlsim-win.cmd bbaa7ed08d Update windows build scripts 7 rokov pred
awlsimhw_pyprofibus.conf a2825f0256 hw/pyprofibus/conf: Fix py2 compatibility 8 rokov pred
setup.py 56a1ea211a setup: Use explicit UTF-8 encoding 6 rokov pred

README.md

Awlsim - S7 compatible Soft-PLC

Awlsim is a free Step 7 compatible AWL/STL Soft-PLC written in Python.

The latest version of awlsim can be downloaded from the official awlsim site.

Awlsim - Soft-PLC

Awlsim is a free Step 7 compatible AWL/STL Soft-PLC written in Python. Depending on the host machine and the Python interpreter used, it achieves good performance of several thousand to millions of AWL/STL instructions per second. German and English S7 AWL/STL mnemonics are supported.

AWL/STL programs on PLCs are used for automation of industrial processes. However Awlsim is very flexible, so it can be used for other purposes beyond industrial applications, too. Awlsim aims to be compatible with the industry standard S7 software on the AWL/STL level.

Awlsim can emulate CPUs with two and four accumulator registers (S7-3xx and S7-4xx). Compatibility to S7 hardware is a task taken seriously by the awlsim project. We want to be as close as possible to the real PLC hardware with our AWL/STL code execution. For this reason awlsim ships an extensive selftest suite. Missing features and differences between awlsim and Step 7 are documented in the COMPATIBILITY documentation and TODO documentation files.

Quick start tutorial

See the quick start tutorial for a simple example on how to use Awlsim in simulator mode. Simulator mode does not require any special hardware to run.

Example project

If you don't know where to start, you can find an example project in the examples directory as EXAMPLE.awlpro. You can easily run this example in simulation mode without the need for special hardware.

License / Copyright

Copyright (C) Michael Büsch / et al.

Awlsim is Open Source Free Software licensed under the GNU General Public License v2+. That means it's available in full source code and you are encouraged to improve it and contribute your changes back to the community. Awlsim is free of charge, too.