ショ和 注:現在、非アクティブです。資金提供された場合、さらなる開発が利用可能です。?連絡先: [email protected]
このプロジェクトは、IEC 61131-3プログラムの静的コード分析のためのオープンソースツールを実装することを目的としています。
このツールは現在、構造化されたテキストプログラミング言語、PLCOPEN XML、およびSEL XML形式をサポートしています。 Matiecトランスピラーと完全に互換性のある拡張構造化されたテキスト方言で動作します。
iec-checkerがPLCベンダーが提供する構造化されたテキスト拡張機能では動作しないことがわかった場合は、お知らせください。これは、おそらくパーサーにいくつかの微調整で簡単に実装できます。
現在、次の機能が実装されています。
--dump引数)にダンプし、JSON形式( --output-format-format json )で警告を作成できます。GitHubリリースからLinuxとWindows X86_64の最新のバイナリリリースをダウンロードできます。
最新のOCAMLコンパイラとオパムをインストールします。 ocaml.orgおよびopam.ocaml.orgでのインストール手順を検討してください。
次に、必要な依存関係をインストールします。
opam install --deps-only . # first time only bin/iec_checkerバイナリを構築してインストールします:
make buildインストールガイドに従ってWindows用のOCAMLをインストールします。グラフィックインストーラーは「箱から出して」うまく機能します。
次に、インストールされたCygwinシェルを開き、リポジトリをクローンし、「Linux」セクションからインストール手順を使用します。
また、OCAMLバイナリをラップし、拡張フォーマットサポートやPythonプラグインの実行などの追加オプションを提供する便利なChecker.pyスクリプトもあります。テストスイートはPythonでも記述されており、追加のパッケージを備えたPythonインタープリターが必要です。
Python 3を取得し、仮想環境に依存関係をインストールします。
virtualenv venv --python=/usr/bin/python3
source venv/bin/activate
pip3 install -r requirements.txt
pip3 install -r requirements-dev.txt次に、ユニットテストを実行します。
make test 構造化されたテキストで書かれたいくつかのデモプログラムを確認してください:
bin/iec_checker test/st/*.st
--help引数を使用してヘルプを表示することもできます。