yuyuTds / PickAndPlaceSim

TwinCATとFactoryIOを使用して、PickAndPlace装置のシミュレーションを行います
2 stars 1 forks source link

ステップシーケンスの採用について #1

Closed chombooo closed 1 year ago

chombooo commented 1 year ago

なぜmainの制御としてステップシーケンスを採用しようと思ったのでしょうか。OOPの観点から何か有利な点があったりするのでしょうか。

yuyuTds commented 1 year ago

こんにちは、質問ありがとうございます!

ごめんなさい、ステップシーケンスを採用した理由は特にないです。 強いて言うなら、私が普段使い慣れているのが主な理由ですかね。。

もし他の書き方があれば教えてほしいです!

chombooo commented 1 year ago

ご回答ありがとうございます。

私が真っ先に思いつくのは条件シーケンスやインタロック方式と呼ばれる方法です。 このあたりは会社の文化などによるので何とも言えないのですが、私の周囲ではステップシーケンスは珍しいイメージです。(むしろエンドユーザーによっては、ステップシーケンスは原則禁止の会社もあります。中断などを考えると、まあ言いたいことはわかります。)

IEC61131の第3版で組んだことはないため私の勝手な想像で、ステップシーケンスだと二重コイル(今回は二重メソッド?)の管理がしやすかったり利点があるのかなと思い、採用意図を質問させていただきました。 迅速にお返事いただきありがとうございます。

yuyuTds commented 1 year ago

ご返信ありがとうございます!

ステップシーケンスは原則禁止にしているエンドユーザーもいるんですね。。

メゾットの場合、二重に使ったとしても、二重コイルのような問題は発生しません。 (たしか、メゾットはそれぞれ実行されたときにのみメモリを確保して実行されます。そのため、FB内の書き方にもよりますが、各メソッドは独立して動作しており、二重コイルのような問題は発生しません。) なので、条件シーケンスやインタロック方式でも特に問題なく組むことができると思います。

chombooo commented 1 year ago

まあこの辺りはそれぞれ一長一短があると思いますし、好みの問題だと思います。

本質ではないですが、ソフト上は大丈夫だと思いますが、その先のアクチュエータはひとつのはずなので気になったので、自分で調べてみようと思います。(まあそんなことがないようにソフトを組めという問題ですが) ものを動かすあたりが難しくて面白いところですよね。

取り急ぎステップシーケンスの設計意図についてお聞きできてよかったです。 一連のご対応ありがとうございました。

chombooo commented 1 year ago

クローズし忘れました。