日記一覧
当サイトに登録されている日記一覧山形県内の某所への出張、現地調整含め2週間の業務が全て終了しました!
思えば、4月末に見積もりを出した時は、現地近隣の競合他社との競争なのでまあ受注は難しかろうと思っていたのですが、 6月~7月に仕事がぽっかり空きそうだったので、思い切って利益を最小限にカットして回答したところ受注できた案件です。 一人でやっていると出てゆくお金が少ない分、こういう時に融通が効きますね。
仕事の中身は、この時の日記にも書いたように、RS485で専用制御機器と通信せねばならず、それなりに手がかかるだろうけど何とかなるさ、とたかをくくっていたところ。。
RS485通信は、上記の日記のとおり事前シミュレーションが功を奏して、割とスムーズに立ちあがりましたが、 枝葉の部分で事前準備が完全に整っていなかったところに、お客様から早速の多数の要望の洗礼。。
耳栓必須な騒音職場で、耳栓していてもうるさくて、昼間の調整が終わったら早々に定時で引き上げ、夜な夜なホテルでソフトを作り上げる毎日でした。
でも終わってみれば、実にスムーズに完了し、予定より1日早い引き渡しとなった次第。 今日、20ページオーバーの画面操作説明書を暫定版で提出し、一区切り付きました。 成功のカギは、事前の準備で一番危うそうなところを重点的に済ませてあったことと、現地でお客様が早めに要望を出してくれたことでしょうか。
そして忘れてはならないのが・・ ここにきた時だけ味わえる、この肉!
たまには、良いよねー。
さてと、増えた体重の減量計画を立てなくちゃ・・
今日は仕事ネタ。
モーションで多軸制御をしていると、シーケンスで同じ回路を沢山書く場面に良く遭遇しますね。
警報回路とか、各軸の位置決め回路とか。
同じ回路の展開はコピペ+デバイス置換で作ってゆく事が多いと思いますが、どうしてもタイプミスが残ってしまって、立ち上げ時にすぐに動かなかったり潜在バグになったり、変更の際の打ち込みの手間が大変だったり、悩みの種です。
どうしたら良いかなと考えていたところで、ふと三菱のGXWorks2の編集で右クリックしてみると、「CSVファイルからの読出」「CSVファイルへ書込」メニューがあるではないですか!
ということで、今回はこれを試してみました。
GXWorks2の回路編集状態で右クリックすると、コンテキストメニューが出てきます。その一番下に、ありますネ。
私が実行した手順は、以下のとおりです。
標準的な回路を1つ作って、CSVファイルへ書き込む
多軸展開したい回路のベース回路をひとつ、ラダーで作ります。
ここで、次のような注意点があります
- 後で変更する可能性がある回路はできるだけ無くしておく。
実際の運転プログラムからの指令やインターロックなど、軸単位で異なる条件や、現場で変更しそうなところは、総合接点として入れておき、そのコイル回路を別プログラムに書くような構成です。 - デバイスマップをよーく考えて作っておく
当然ながら、デバイスのマッピングには細心の注意を払い、無駄なく、デバイスのかぶりがないように設計しておきます。
書込んだCSVファイルを参考に、EXCELで編集
ここは腕の見せ所です。
- CSVで書きだしたファイルは、ニモニック表記になっています。 「そんなのわからない」 なんて言わずに良く見ているとすぐに理解できてきます。
- 多軸展開となる部分や、位置決めポイント展開となる部分などは変数としてEXCELでデバイス番号の計算式を作ります。
- 書き出しのために1行にしないといけないので、その部分は軸数ぶんのコピペは仕方ないでしょう。 必要に応じてマクロ化したりすれば、割と簡単になりそうですけど、変更しやすいように作っておくのがミソなので最小限がオススメです。
- 最終行に「END」をお忘れなく。
CSVファイルで保存
書き出した時のCSVを参考に、1シートの縦に長ーいシートをつくり、それをタブスペーサのテキスト形式で保存します。
CSV形式で保存すると、カンマ区切りになってしまうので、GXWorks2で読み込めません。 タブ区切りで保存しましょう。 私の場合はテキスト形式でやりました。
文字コードの変換
私のローカルPC環境の問題かもしれないですが、Shift-JISで書かれたタブ区切りのCSVファイルは、読み込みに失敗します。
- 一旦、テキストエディタで開いて、unicodeで保存。
- その後、拡張子をcsvに変更します。
GXWorks2で読み込み
例の右クリックのコンテキストメニューで、読み込みます。 表示中のプログラムにごっそり上書きされるので、要注意。
いかがでしょうか。 使い方は人それぞれですが、なかなか良いと思いますよこれ!
ここ数日、地元の仕事で自宅から現場へ通勤してまして、潜航していました。 制御盤8面を渡り歩いて、鈍っていた足が少し鍛えられたかナ。
残件はありますが、追って変更ソフトをお客様へ提出して試運転はお願いできるようです。よかった。
これで一山越えました。 でもようやく最大の山を越えた、と思って気づくとマイナス最大値に舞い戻って一からやり直しだったりします。 (ってここでDATAカウントの山越えの話を持ち出してもどうかと思いますよね。笑)
次の山は、でっかくて長いぞお。(2ヶ月半、土日休みなしが宣言されてる。。)
神がかりだと、機械メーカーの電気担当のお客様は言ってくれました。
でも、発注者である某素材メーカーの将軍様には、まったく伝わっていないのでしょうなあ。。
昨日までに、何とか前回の4倍分の「なんちゃって自動運転」を終え、本日より新規追加機器分のソフトに取り掛かりました。 朝から作り始め、3軸x2set+吸着その他のIO数点の単動を終えたのが3時頃。
その後、自動ソフトに取り掛かりました。 何とか今日終わらせたい、との担当の方の意向でしたから、わき目も振らずに必死にタイプし続け・・
午後9時を過ぎた頃、もうあと一息です。
そのとき、将軍様がおっしゃいました。
将:「何か遅れている問題があるのか? あるなら言ってごらん。。」
な:「別に問題ないですよ。 新規分があるから時間がかかってます。」
将:「前と同じではないか?」
な:「いえ、半分くらいは物が違いますから。」
将:「○○○くん(メーカーの電気担当の人)、君がなぜこのソフトをやらんのだ?」
な:「○○○さんは、全体統括ですから、他にいろいろやることが・・」
将:「貴方は答えなくていいんだ。○○○くん、どうなんだ?」
★★★ ここでまた、キレました。
今度は、無言で書類を机にたたき付け席を立ち、 出口近くの椅子を蹴飛ばして、まだ気が治まらないので持ち上げて叩き付けました。 私がこれほどがんばってソフトをガシガシ作っている目の前で、なんてことを言うんだよ、、、
無神経にも程があるだろ。
そのままレンタカーでコンビニへ行き、おにぎりを1つ買って食べて、「本当はクビにして欲しい」と思いつつ、 (小社は私の個人経営の会社ですから「やってらんねえ!」って帰っても営業的にも痛手は少ないですが、でも) 困っているお客様のために、30分後に戻りました。 お客様にはお詫びし、(無論、将軍様には口もききません。) 皆さん私の気持ちをよく分ってくれていまして、またソフトの最後の煮詰めにとりかかりました。
ソフトが形になったのが、午後10時半。 すぐに部分的な自動試運転を開始し、奇跡的に大きな間違いはなく、大まかな部分の一連の動きを1時間で確認しました。
このとき、メーカーお客様の電気担当者さんいわく、「神がかり的です。」
そりゃ、レジスタ式+自己保持階段型ステップの複合回路ですから、組みやすく読みやすい、デバグしやすいソフトですから。
本日はこれにて終了。 でも将軍さんよ、これが当たり前だと思うなよ! 普通なら倍はかかるわいな。
それに、あんたの為にがんばってるわけじゃないから。 機械メーカーの電気担当さんのためだからね、間違いないように。
またまた、福岡のお客様よりご注文いただきまして、行って参ります。 サーボモーターを沢山使うお客様は、本当にありがたいです。 毎度ありがとうございます。
今回もMotion制御ですがSFCをほとんど使わず位置決めユニットを踏襲するような使い方ですので深い知恵は要りません。
でもサーボモーター台数がバカ多い(ここには書けませんが)ので、力技を少なくする基本設計が重要です。
その部分は終わっていてプログラミングに入っていますが、マルチCPUの共有メモリ領域が既に満杯です。(涙) シーケンスのSTEP回路も既設を参考に展開という、これまた力技が待っています。
そしていつものようにメカが遅れていて、そのしわ寄せは全て制御屋に来ます。(T_T) ・・これから月末まで、長くて暑い夜が続きそうです。 徹夜は避けたいですが、2時?3時はたびたびありそう・・ これから歳をとってゆくのに、こんな仕事ばっかりだと辛いなあ。 「メカ屋に戻ってみたい」なんて思ってしまいそう。。
今回の出張は体力メインでして、段取り等で頭も使いますが、いつも事務室でやっていたようなソフト設計の業務はほとんど無いため、頭の使い方がかなり違います。 運動が好きな私には、これはこれで楽しいんですけどね。
歳のせいか(?)、しばらくソフトをやっていないと忘れるのが早くなった気がします。 このまま数ヶ月実務をしなかったら、きっと使い物にならないでしょう σ(^^)
注 : 「ボケ」とは違います。
てなわけで、次の仕事がソフト設計からできるならいいなあ・・ と独り言のような、誰かが見ていてくれたらな、との希望を込めて。(笑)
更に贅沢をいえばシーケンスラダーだけでなく、得意のモーションSFCの仕事がしたいっす。 VB.netでもいいなあ。。
遠い出張先でソフトを作りつつ、、
遅れに遅れていたメカをやっと何とかだましだまし動かせるようになって単動が終わり、「やっと自動のテストだ?」 と喜んでバグアウトを開始。
でも2時間もしたら某お客様がすかさず期待どおり「何ですぐ動かんのだ? 前と同じ動きでいいんだぞ」
とのたまわれましたとさ。
いい加減にしてくれ??????????!!
元メカ屋の私でも、こんな物量の装置なら大変な時間がかかることはわかったぞい。 あんた一体何年この仕事しとん? そんくらい誰でもわかろう? 制御屋をなめとん? そげん言うなら自分でやればよかろ?
ちと福岡弁ちっくにしてみました。
福岡に来てから15日。 よくあることとは言え連日深夜の休みなし。 前回の4倍になった物量でもメカの遅れを取り戻すべく頑張って、感謝さえることはあって然るべきなのにこの調子。。 思いっきり追加請求してやる?!
私が無事に千葉に帰れることを、皆さん祈っていてくださいまし。
世の中、シミュレーションが花盛りです。(Speakerの話題では、ないっす)
工場設備用シーケンサの世界でも、常識になってきています。 常識と思っていない、そこのアナタ、遅れていますよ。(笑) これからは、シミュらないと。
筆者は以前よりこれを使ってきていまして、1ユーザーとしてそれなりに意見を持ってメーカーに声を上げてきました。 ここらで少々紹介します。
1、三菱電機製Melsecシーケンサ用のプログラムを、PC上で廻してシミュレーションを行うことが、かなり手軽にできるようになっています。
GX-Simulator(三菱電機のサイト)
さて、上記サイトを見ると結構使い出があると思ってしまいますが、まーだまだ完成度はいまいちです。 何といっても、実CPUで常識な「RUN中書き込み」がこれで可能となったのは、昨年なんです。 それ以前は変更したら一旦STOP処理して、全部書き込んでからRUNさせる、という手順しかありませんでした(ってやってらんないよ!)。 晴れてようやくRUN中で可能となり、使える代物になりました。
動き物でない計算だけの検証は十分に使えます。 ただこれだけなら、実際のCPUがあればそれにソフトを入れて検証しても手間は同じですよね。
それから、筆者の環境ではモーションCPUへのDDRR/DDRW命令があるとエラーが出てRUNできない不具合が出ました(もう改善されているかも知れぬが)。
2、続いて上記にバンドルされている周辺ツールとして、IOシステム設定というのがあります。↓はその設定画面です。
信号やデバイスの条件を4つ(AND2つ、OR2つ)まで設定でき、一定時間経過をもって、信号をONさせたりデータに定数を格納したりできます。 このデバイス格納は、以前私も大いに要望していた機能ですから、少し進んだようです。 また、タイミングチャート形式での設定も可能で、そちらは自由度 が上がります。
しかし、この変数の格納に、どうしてデバイス指定できないのでしょう か。 難しい注文ではありません。 例えば [DMOV D1000 D1010] とか、[BMOV D1000 D1010 K20]とかと同じことができないと、モーションコントローラとの連携ソフトのシミュレーションには使えません。 できればインデックス修飾(間接指定) なども・・言い出すと限りなし。。 (といっても、どのみちモーションとは連携試験軸数も多いので大変ですけど)
結局、電磁弁+シリンダや、 モーターをモデル化した専用のシミュレータ周辺ツールを自分で作ってしまったほうが早い気がします。 GX-simulatorはMX- componentから通信が可能ですので、VB6やVB.netで作れます。 (ここでもマルチスレッドの問題が昨年の夏に解決したばかりですが。)
昔、 豊田スタジアム開 閉屋根システムの操作卓CPUのシミュレーションを行った時には、VB6からCCリンクボード経由でシーケンスCPUデバイスをモニタ/書き込みを行い、 パソコンに26台分の台車駆動インバータの役割をさせていましたが、規模が大きくなればそのような専用ツールの開発も意味が出てきます。
3、GOT(タッチパネル)をシミュレーションして、 GT-simulator2(三菱電機のサイト) という、上記GX-simulatorや実際のCPUとシリアル通信で連携して一環したデバグを行えるツールが(別売で)あります。 ただし、1台分し か接続できませんので複数台のシミュレーションは個別に行うことになります。 また、同様に「局番設定」などの機能は使えず、全てのデバイスは自局デバイ スに書き換わってシミュレーションされることになります。
まあ、ここまで書きましたが筆者は良く使っています。
何といっても既存設備の改造などで、試運転時間を圧縮するには必須のアイテムです。 日中は実機で試運転、夜間はホテルで改造・バグアウト(っていつ寝るん?) ・・最初から立ち上げるようなものでは、それほど重要とは思いませんが。
昨 日も朝から、GP-PRO画面をGOTに変換して1画面テスト用に追加し、改造ソフトを作って夜中の1時にシミューレションまで完了しました。 今回は自 分が試運転に立ち会えずお客様にお渡しするソフトなので、慎重を期すためにシミュりました。 GP-PRO画面をGOTに変換するGT- Converter2が取りこぼしが多く、実使用には耐えませんが部分テストなら何とか使えます。
今後もこの方面は積極的に活用してゆく所存ですので、三菱電機さま、どぞよろしくです。