23

PLCコードのCMプロセスを考え出す必要があります。

現在、システムはRSLogix 5000を使用して開発されています。ビルド製品は、PLCにロードして実行し、開発環境で直接編集できるモノリシックファイルです。複数の開発者がいるため、これが問題になっています。彼らはお互いの変化を踏んでいます。

例えとして、Java開発を行う場合、ソースを編集して保存する唯一の方法は、*。jarファイルをIDEにロードし、変更を加えてから、それをjarファイルに保存することです。これは理想的とは言えません。

PLCを使用する複数の開発者間で変更を調整するにはどうすればよいですか?

4

8 に答える 8

7

Unity Proを使用しているため、他のブランドには適用されない場合があります。

Unityは、PLCプログラムとIOセットアップ全体を記述したXMLである「アーカイブ」ファイルをエクスポートできます。変更をコミッショニングした後、エクスポートを作成し、ローカルのGitリポジトリにチェックインします。これにより、注釈付きの変更履歴が得られますが、視覚的な比較はできません。比較のためにいつでもUnityDiffを使用できます。

http://www.mdtsoft.com/もチェックしてください

于 2011-07-06T20:38:11.513 に答える
7

VersionDogのようなPLC専用のバージョン管理システムが必要です。

メーカーから:

「SIMATICS5、SIMATIC S7、SIMATIC PCS 7、WinCC、WinCCflexible、InTouch、CoDeSys、TwinCAT、Phoenix PC WORX、RSLogix、Schneider Modsoft、Schneider Concept、Schneider Unity、SINUMERIK 840D、BoschIndraWorksなどのSmartCompareによる特別サポート。また、ABBとKukaのロボットプログラム、およびMicrosoft Word、Microsoft Excel、Adobe PDFなどのオフィス関連のデータ形式は、versiondogによって完全にサポートされています。

更新:これは、ラダーバージョンの比較を示すスクリーンショットです。これは、ほとんどのPLCの人々が興味を持っていることだと思います。また、PLCで何かが変更されたが、バージョン管理サーバーに入れられていないことを警告するために、PLCのオフラインとオンラインのアプリケーションバージョンが一致する場合の電子メールレポートのスケジュールにも使用します。

于 2015-03-24T13:24:24.297 に答える
6

1つの大きなバイナリファイルについて話している場合、VCS(集中型または分散型)はその仕事に最適なツールではありません。
バッチが現在のPCL状態をコピーしてラベル付けする外部参照(たとえば、共有ディスク)の方が優れています。「ソフトウェア履歴の追跡
を参照してください

改訂の履歴記録の不連続性を回避するには、古いバージョンのプログラムを保存する必要があります。
「しかし、私たちはそれをさらに一歩進めます。MDT AutoSaveを使用して、実際に外に出て機器に問い合わせます。一晩または指定された頻度で、ソフトウェアはPLC内のプログラムを読み取り、その情報を最後の既知のプログラムと比較します。バージョン管理ソフトウェアは、新しいプログラムをコピーして保存し、[次に]最後のプログラムと比較します。

バージョン管理の起動は非常に簡単です。必要なのは、ソフトウェアのインストールとハードウェアの構成です。「サーバーと数週間のエンジニアリングが必要で、準備は万端です」とPerysyn氏は言います。しかし、彼の会社は、ソフトウェアをインストールしてから、ユーザーが空白を埋めてカスタマイズする「シュリンクラップアプローチ」を使用しています。

そうは言っても、複数の開発者から複数の変更がある場合は、実際のサーバーにプッシュする前に、最初の配信を実行して検証できる統合環境が必要です。

この投稿も参照してください。

于 2010-11-18T16:53:33.183 に答える
5

特にRSLogix5000については、開発者がエミュレートされたPLCを使用して、オンラインで変更を加えるのを見てきました。開発された最終製品は、すべてのコメント(PLCに含まれていないため)と一緒にまとめられ、試運転されます。AOIなど、オンラインでは実行できない変更に関する問題があります。2人が同じロジックをオンラインで同時に編集するのを防ぎ、セクションの所有権を取得するためのツールが用意されています。バックアップはアップロードの形で実行できますが、変更を追跡する方法はありません。

これは厄介な問題であり、オンラインに接続できる.ACDが必要なため、システムを保守している場合はさらに厄介です。RSLogix比較ツールで差分をとっていない限り、「+」のような読み取り不可能なマシンコードが表示されるだけです。 |Éû³´¬ÙÆW׿™µ、>Ù、 "

私が(悲しいことに)見た中で最も一般的なリビジョン管理は、最新のファイルを保存し、コピーを取り、現在の日付をファイル名に追加することです。これは、推奨されるcontrol.comの投稿で説明されています。

于 2011-06-10T04:18:59.267 に答える
4

これは非常に良い質問であり、実際に何をしたいかによって異なります。Rockwell機器のみを使用している場合は、そのソリューションを検討すると役立つ場合があります。これはFactoryTalkAssetCentreと呼ばれていると思います。現在、CanonicalのBazaarの使用を検討しています。VonCが指摘したことの1つは、PLCと対話できるソフトウェアは、私の意見では必須ではありませんが、地獄が役立つことは確かです。

私はあなたの質問を正しく読んでいて、複数の開発者が同時に同じPLCコードに取り組んでいますか?恐ろしい考えですが、時々発生する必要があることはわかっています。SiemensPLCは、複数の開発者でプログラミングする方が少し簡単ですが、PLCにコミットする前に、すべての変更を統合してテストする担当者を1人割り当てます。どのCVSシステムでも、すべての開発者のためにブランチを作成できますが、どのように開発者に変更を統合させるかは、何百万ドルもの問題です。

バート。

于 2010-12-01T11:56:11.560 に答える
4

簡単な方法は、.l5kファイルに対してテキスト差分を実行することです。これにより、開発者がスコープ外のファイルの一部をいじっているかどうかを簡単に確認できます。

于 2011-02-01T15:20:30.360 に答える
4

RSLogix5000は、複数のユーザーが同じ.ACDを同時に開いて編集することを常に禁止してきました。ただし、複数のユーザーが同一の.ACDファイルを持っていて、それらを開き、すべてが同じターゲットコントローラーに接続している場合、それぞれがコントローラーで同時に編集できますが、異なるルーチンで作業している場合に限ります。他のプログラマーのルーチンを見た場合、他の人の編集は自動的に表示されます。

このようにオンラインで作業する場合は、通常、PLCが実行されている状態で実行されますが、ターゲットシステム(ある種のマシン)が動作している場合もあります。作業をより早く完了するための、または場合によってはシステムが巨大であるためのこの種の取り決め。これは実際にはデバッグツールであり、大幅な変更には実用的ではないため、このように開発する人は誰もいません。

一方のプログラマーが終了し、もう一方のプログラマーが完了しなかった場合、もう一方のプログラマーの未完了の作業は、保存時に最初のプログラマーの.ACDに保存されます。最後に保存した人は誰でも全員の作業を行います。

他の人がこのスレッドで言及しているように、ファイルの日付を使用することはかなり合理的です。一部の企業は、接続されたHMIに通常表示されるバージョン管理変数を使用しています。他の企業は、誰が何を変更するかを文書化した別の文書を使用しています。メインルーチンの長いラングコメントにバージョンノートが配置されることがあります。

私の会社は別の変更ログを使用しており、日付の付いたアーカイブのコピーが保持されています。複数のプログラマーは、最も極端な場合にのみ使用されます。オフラインファイルの整合性を維持するために常に誰かが指名されます。通常、最も長く作業する人、またはプロジェクトマネージャーです。

以前のバージョンではコントローラーにコメントが保存されていなかったため、RSLogix5000 v21より前では、ラングコメントがユーザー間で伝達されないことに注意してください。

とはいえ、オフライン開発を管理しようとしている可能性があります。私はこれのための洗練された方法を見たことがありません。通常、プログラマーは必要なルーチンを個別に作成し、プロジェクトマネージャーがそれらを単一のプロジェクトにアセンブルします。私が見た中で最もクリーンなアプローチは、プロジェクトマネージャーがグローバル機能を備えたアーキテクチャを作成し、日常業務を他の人に割り当てて、作業する.ACDのコピーを提供することです。変更を加えて.ACDを返し、プロジェクトマネージャーはルーチンをコピーして「マスター」プロジェクトに貼り付けます。

于 2015-03-24T00:22:16.243 に答える
3

スタック交換のリンクからこの質問を見ました: ラダーロジックプログラムのソース管理のための現実的で便利なソリューションはありますか?リンクのみの回答ではなく、ここで回答を複製します。

実際には、あらゆる場所のGE-IPからの缶詰のソリューションがあります。ProficyChangeManagementを確認してください。この製品は、ファイルの観点からの純粋なバージョン管理ではなく、PLC制御システムの観点からバージョン管理を行います-VCSの上にあるレイヤーとして機能します(恐ろしい部分は、元々このVCSがVisual SourceSafeであったことです)権利管理、レポート、チェックアウト/チェックインを処理します。

この製品はGE-IP製ですが、さまざまなPLCおよびHMIシステムをすぐにサポートできるように設計されています。

完全開示、私はPCMを販売およびインストールする会社の仕事に使用しました(しかしそれは7年前でした)。ですから、当時はどうだったのかと聞かれたら、どこがうまくいかなかったのかを教えてくれるでしょう!

于 2015-01-23T22:07:10.407 に答える