ラダーのクロスプラットホーム化を考えてみる(6)前回は抽象化したラダーデータをPLC内で解析して実行するという案を出しました。抽象化されたラダーデーターという事で書きましたが、こういうのは名は体を表すというように名前が後々響いてくるんですよね。大事な事ですが、とりあえずLadder(梯子)より早く進める(実行速度ではなく開発期間を早める)という意味でEscalator(エスカレーター)にしておきましょう。今回はそのPLC内部を図式化してみます。Programが抽象化されたラダーデータを表します。用語の統一というのは苦手なのですが、中間ラダーデータとでも呼びましょうか。Runtimeが、その中間ラダーを読み取って実行する部分です。Dataはその処理で使うワークエリアや、ローカル割り当てのエリアとなります。Escalatorの部分となります。Wareが元々のPLCがラダープログラムを実行する部分ですが、その上に同じようなことをするプログラムを置くのですから、非効率ですね。少ないメモリの中に中間ラダーデータを取るわけで、こんなのが本当にできるのか?という感じですね。この様な課題は時間やお金で解決できる場合もありますので、遠い将来にはそういうリソースを持っている方が現れることを願いましょう。元々のラダー*1を併用できますので、速度やクリティカルな部分はネイティブなラダーにお任せします。2016-03有限会社伊藤ソフトデザインの代表をしてます。