なーお さんの日記
アドバンスト同期制御の案件が入ってきました。 私としては使うのは初めてです。
既存の仮想モードのソフトを、このアドバンスト同期制御にコンバートするのですが、マニュアルを開いて確認しつつ、フレキシビリティが沢山詰まったこの制御をどう料理しようか、思い悩んでます。
アドバンスト同期制御では、仮想モードのような全体モード変更は不要です。
しかし元々仮想モードだったアプリケーションをこれに置き換える場合、作業性との兼ね合いが生じてくるので、すんなり外してしまって良いのかどうか悩みます。
ともあれ、これを通じてしっかり使えるようにならないといけないですな。
先日の日記で報告したとおり、サンプルを公開しました。
仕事が立て込んできたので、早めに片付けておきたかったので、予定より早くの公開です。
例によってお約束ですが、これを使用した場合のいかなる不具合も筆者及び(有)モーションクリエイトは保障致しません。 各人で独自に検証のうえ、自己責任でご使用ください。
では。
モーション制御フェチの皆さん、こんにちは。
(そんな奇特な人間は私だけかな)
主題のように、Q17xDCPUの一定バージョンから使えるようになった、ラベル機能を検証中です。
いやぁ、さすが三菱、色々と痒いところに手が届いていないです。 その辺の詳細はまた日を改めてご紹介します。
とはいえ、基本構造的にはなかなか良さそうなので、細部の使い勝手が改善されれば使いどころがありそうです。
何が良いのかって、構造体が使えること。
モーションSFCで一番の苦痛は、何といっても1CPUあたり32軸の各軸のフラグやデータデバイス番号を間違いのないように記述することですね。
ラベル機能を使えば、パソコンのプログラム言語ツールに似た感じのツールヒントが出てきて、入力が容易になって間違いも減ります。
ラベル機能の参考例
以下の例では、「Ax(n)St」でn軸の状態フラグ構造体、「Ax(n)Rq」でn軸の指令フラグ構造体を定義しています。
- まず、軸番号の頭文字「Ax」と入力すると、Ax__と続く構造体ブロックの候補が出てきます。 ここで「↓」矢印キーで候補から該当軸をセレクト状態にして「ENTER」で確定し、「.」ドットを入力すると
- 構造体の(該当軸内の)候補が現れます。 そのままタイプしてゆけば、どんどん絞り込んで表示が減りますから、名称を覚えるにつれて入力が楽になってゆきますね。
- 同様に、状態フラグの入力です。
- もちろん、普通にデバイスで入力することもできます。
- 上記の、デバイスで入力した制御文も、メニューの
- 「検索/置換」
- 「置換」
- 「ラベル名に一括置換」
- 「置換」
- 「検索/置換」
を実行すると、このとおりに同じ記述に変換してくれます。
ラベル名記述をデバイス番号に戻すには?
便利で間違いの生じにくいラベルプログラミングですが、残念なことに「デバイス番号に戻す」という操作ツールがありません。
MT Works2のヘルプ(私が現在使っているのはVer.1.56J)に出てくる説明には、 CPUにSFCソースだけ書いて、ラベルの登録されていないプロジェクトで読み出すと、デバイス表記になると書かれていますが、実際にはデバイス番号に戻らずラベル名記述のままです。
そのプロジェクトにはラベルを登録していないので、SFCを一括返還すると盛大にエラーが出てきて変換に失敗します。
まあおそらくこれはバグだと思うのですが、せめてメニューに「ラベル名をデバイスに戻す」という機能は必須だと思います。 なぜなら、ラベル定義そのものを変更した時に、その機能がないとSFC内の記述を全部手書きで修正する必要があるからです。
一旦デバイス番号記述に戻せれば、修正したラベル定義にあらためて一括置き換えすれば終了します。
今のところ、デバイス番号に戻すには、かなり手順を経る必要がありますが、何とかしてMT Developer1形式のファイルに変換してそれを再度MT Works2にインポートすれば戻る、という確認までは取れています。
その他、ここに書いていない細々とした部分でもまだ痒いところに手が届いていないですが、ベースは良くできていると思うので、今後に期待したいです。
最後に、私からのプレゼントの予告です。
便利で今後に期待できるラベル機能ですが、 なぜだかプリインストールや三菱のサイトでも定義済みのサンプルすらありません。(私が気付いていないだけならどうぞご指摘を)
ということで、感謝の意味を込めて、私が作るサンプルを(たぶん4月中に)このサイトで公開します。 MT Works2の1ファイルプロジェクト形式でダウンロード可能とするので、皆さんどうぞお楽しみに!
このままただ案件を待つだけではいかん!
と思って、C言語コントローラー Q24DHCCPU-V を購入し試しています。 気付いた点をいくつか。
- 買って初めて電源入れて、通信しようとしても ユーザー認証で受け付けされない・・ どうやら最初に初期化が必要らしい。 普通、工場出荷段階で初期化されてくるものじゃないのか?
- 初期化するには、このCPUをベースの一番左のCPU0の位置にセットしないといけない。 マルチCPUの場合にいちいち面倒。
- ユーザーLANポートの通信優先度が高くないので、ユーザープログラムが暴走したり、優先度が高いタスクが占有してしまうと、FTPも何もかもできなくなる。
せめて、「STOP状態」で立ち上げればユーザープログラムの開始をSTOPできるようになっていればFTPも繋げるんだが、トラブル時に毎回、上記の初期化処理が必要でCPUを抜き差しして、IP設定から転送になおして・・ が必要。
- このコントローラで、標準入出力はどこなんだろう? PCだと入力はキーボード/出力はコンソール画面。
- 三菱の技術相談で聞いてみたところ、「このユニットはシーケンサの代わりを務めるためのもので、コンソールやキーボード入力が必要なのであれば、PCユニットのほうが良いのでは?」というような寂しいお答え。 そんなもんなのか??
まだ慣れていないのもあるけど、この先が思いやられる。
ここでブログ書くのは2年ぶりかな。(汗)
三菱のiQプラットフォームのモーションCPU、 Q172DCPU / Q173DCPU には、「アンプ無し運転」ができるようになっています。(本体OSソフトウエアver00H以降) 実行には、簡単なSFCを書くだけです。
ソフトの事前シミュレーションで、CPU周りだけ準備しておけば、シーケンサ~モーション間の通信確認から、仮想アンプ・モーターを運転したシミュレーションまで可能です。
これは、試運転前の事前シミュレーションに限らず、納品後の改造や不具合対応などでアンプを準備しなくても良いわけで、かなり助かりますね。 モーター数十台のシステムなんかだともう大変ですからね。
ということで、私のような一人親方には大変嬉しい機能だと思います。
ずいぶん前に、三菱motion周辺ツール「MTworks2」を買っていたのですが、色々忙しくて使ってませんでした。
今ならキャンペーン中(pdf)で、(2009年3月31日まで)1万円ぽっきりで手に入ります。 ・・知っていたら待ったのに。。
編集アプリケーションが一本化
これまでは、motionOS(SW13、SW22、etc・・)毎にアプリケーションが別々だったのだけれど、ようやく一本化されてすっきりした。
使いやすい編集画面
1ペインでシステム設定・サーボ設定・SFCプログラム編集などが行えるし、左側のプロジェクトエクスプローラーでSFCやサーボプログラムなども同時に一覧できるので、編集がやりやすい。 SFC編集時にもSFC図の拡大/縮小が可能で、最近のアップデートでSFC図のシンボルが水色になって見やすく改善された。
複数のプロジェクトが開ける
周辺ツール自体、1つしか開けなった。 サブproject画面でもうひとつだけプログラム編集は開けたが、システム設定その他は1つだけだった。 今回ようやく複数のプロジェクトを開けるようになって、他プロジェクトとの比較やコピペが非常に楽になった。(もちろん、同じプロジェクトは2つ開けない)
1プロジェクトあたりのファイル数が大幅に減った
今まで、非常識ともいえるファイル数(5000/1プロジェクト、等)を扱っていたので、プロジェクトの開く/保存・閉じる時の待ち時間がばかにならなかった。 今回根本的に改善し、時間とパソコンのパワー浪費が抑えられた。
また、プロジェクトをサーバーに保管したり、USBメモリなどでコピーする際にも 結果として大幅に速度アップされた。
デジタルオシロがwindows仕様に
念願のwindows仕様のデジタルオシロが搭載された。 これまでいかに使いづらかったかを、改めて実感できる。 グラフ印刷もEXCEL変換せずにできる。
前のほうがよかったこと?
あくまで個人的な見解ですが、以下は前のほうがよかったかも?
- SFCのデータが、テキストでなくバイナリファイルになってしまったので、以前のようにテキストで中身を見たり、編集したりできなくなった。 (そんなことしていた人間は私くらいか。)
- デジタルオシロのグラフ印刷機能ができたお陰で、EXCELグラフ変換が無くなった(?)ようで、EXCELのグラフ作成は自分の手でしなければならない。(たいした手間ではないけど)
- 編集画面、なんだかわからないけれども、開いているだけでCPUパワーを相当消費している。。
こんな感じですが、自分的にはどんどんつかってみようと思います。
以上
三菱から新製品
三菱電機から1月に出た新製品、「高速データロガーユニット」(QD81DL96)
を、テスト用に買ってみました。
今ならキャンペーン中で、Q03UDECPUと1Gbのコンパクトフラッシュが付いて、9万8千円。
製品の概要
三菱のサイトでどうぞ。
想定用途とメリット
今まで、この手のロガーは
- パソコンを使っての高価な専用システムで収集するか、
- 三菱ならMX-sheetなどの簡易ロギングでお茶を濁すか
といった組み方が多かったと思います。
今回発売されたユニットを使えば、以下のようなメリットを享受できるらしい。
- 無償の設定ツールを使ってユニットに設定を流し込んでおけば、PCサーバーなしでもロギングが可能。
- ログデータはCSV形式/バイナリ形式/MS-Excelレポート形式でフラッシュカードに保存されるほか、FTPでサーバーに転送したり、メールに添付して送信したりできる。
- ベースに挿すので、管理CPUユニットに対しては高速なロギングが可能。 特に、ユニバーサルモデルとはシーケンススキャンタイムにリンクしたり、最小1msでデータ採取が可能。立ち上げ時のデバグなどにも活躍できるか?
- Etherネットや、MelsecNetなどで接続された、最大64局のCPUにアクセス可能。トータルコストを抑えてシステム化できる可能性。
- MX-sheetの場合、複数の接続先から取得したデータを複数のEXCELファイルに落とせなかったが、これは複数の接続先に対して複数のレポートファイルを個別に選択して保存可能。 本体にもFTP接続可能。
などなど、結構フレキシブル。
使ってみた
さて、買ったからには使ってみないとね。
いつものように、Q06HCPU+Q173モーションCPUのシミュレータに、挿してみました。
本当は、一緒に購入したQ03UDEとマルチCPUで試したかったのですが、このCPUはQ173CPUとは組み合わせ不可。 仕方なく、従来構成でやってみました。 モーションで1軸を連続往復動作させ、高速ロギングできないので最小周期100msで取得。
レポート機能
今回の目玉だと勝手に思っている、EXCELレポート機能。
残念ながら、レポートのレイアウト(テンプレート)ファイル作成には、Excel2003か2007が必要。 ただし、一旦作成してユニットに流し込んでしまえば、以後の編集にはExcel-XPでもできた。
取得したデータ
事前に編集したレイアウトに基づき、上のデータがレポートになった状態。
ポイントは、EXCELで事前に設定できることしかできない、ということ。 細かな修正が必要なら、マクロを組み込んでファイルを開いた時に処理するなどが必要かも。
という感じで、なかなか使い道は広そうだ。
難点として、
- ファイル保存の際のファイル名に、タイムスタンプ方式を使えない。 サーバーに転送した後で自分で何とかする必要あり。
これは早急に改善していただきたいと思います。
こちらに書いた、ワイヤーエンコーダーのデモ品を、モーションコントローラーに接続して入力を確認してみた。
(画像、再掲)
ところがモーションのQ173PXの入力電圧が5Vに対して、このデモ品は10~32Vで直接入力できない。
そのため、Mシステム社のパルスアイソレータ(型式:RPPD-DD7JJ1N-R)を購入。
ようやく入荷したので、テスト開始。
写真右側のスピーカーオフ会用スタンド(笑)に乗っているのがエンコーダーで、そこから2相PLSのトランジスタ出力。 床に置いたアイソレータで TTL/RS422(差動出力)に変換し、モーションコントローラのパルス入力ユニットへ。
仕事でお付き合いの多い方は見た事のあるキャリングケース型の3軸モーションデモパッケージ。 何かあると社外に出動しますが、自社ではこうして時々開けて使ってます。
おっと、肝心の入力状態の確認結果。
- A/B相90度位相パルスで4逓倍カウントにて、0.05mm/PLSを確認。
- モーションの制御周期 0.88msecで、カウントアップを確認。
下の画像は、エンコーダーのワイヤーを引っ張ったり戻したりした時のデジタルオシロ測定グラフと、仮想モードのメカ機構モニタ画面。 実際の回転方向が表示されるのだが、いつも気にしていると、ちょっとした時についつい霊感が働いてしまって困ります。
ということで、デモ品は返却して、20ん万円の実物(コネクタケーブル込み)を購入して実機の測定を行うことにします。 以上、報告はここまで。