2017年8月31日木曜日

Qラージ入出力ユニットの品揃えについて

http://fa-faq.mitsubishielectric.co.jp/faq/show/16929?category_id=1925

 リニューアルツールの変換アダプタ込みで設計を考えろということ。
 しかしサポートツールがあるから変に悩まなくても素直に置き換え案が出てくるのはよい。

2017年8月30日水曜日

Qラージベースに装着不可のユニットについて

http://fa-faq.mitsubishielectric.co.jp/faq/show/16935?category_id=1925

 今のところこういったユニットを使った更新案件はやったことがない。
 通常のベースユニットに対して更新を行う必要があるんだろうな。

2017年8月29日火曜日

Qラージベース・Qラージ入出力ユニットの特長

http://fa-faq.mitsubishielectric.co.jp/faq/show/16922?back=front%2Fcategory%3Ashow&category_id=1925&sort=sort_access&sort_order=desc

 大型 APLC からの置き換え作業時間の短縮には必須アイテム。
 入出力点数が多ければ多いほど重要。
 ただコモンには気をつけないとハマる。

2017年8月28日月曜日

ラッチ設定について

http://fa-faq.mitsubishielectric.co.jp/faq/show/13639?category_id=835

 ラッチ(2)はラッチクリア操作にてクリアできません。

 長年の謎が解けた。
 長年っていっても数年前のことだしあまり気にしてもいなかった。
 ラッチ(2)はあまり使用したくない項目だな。

2017年8月27日日曜日

ファイルレジスタの容量設定について

http://fa-faq.mitsubishielectric.co.jp/faq/show/13640?category_id=835

 普通に使用したい点数を設定させて欲しい項目である。

2017年8月26日土曜日

GX Works2でのプログラム、パラメータなどとファイルレジスタの同時読み出しについて

 なんだ同時に読み出せないんだろうか。
 プログラムとパラメータを読み出したあとにファイルレジスタを読み出せばいいと思うのは素人だからか。

2017年8月25日金曜日

GX Works2でCPUユニットのファイルレジスタを読み出す方法について

 GX Works2 を使い始めたときには「対象メモリ」の欄には気が付かなかった。
 わかってしまえばそれまでだけど一見さんお断りの仕様には困ったものだ。

2017年8月24日木曜日

BIN命令のオペレーションエラーについて

http://fa-faq.mitsubishielectric.co.jp/faq/show/13667?category_id=694

 SM722 って知らないデバイスだ。
 まあ後者のプログラム側で対応したほうがわかりやすくていいかも。

2017年8月23日水曜日

オペレーションエラーの対処法

http://fa-faq.mitsubishielectric.co.jp/faq/show/14408?category_id=816

 これを事前に知っておけば余計なトラブルを無くせたのにな。
 しかも 2012 年に公開されてるし。

 やっぱり暇を見つけて FAQ を覗いていこう。

2017年8月22日火曜日

PLC 更新

 本当の最終データをもらってから作業着手が正しいんだけど。
 不安要素がいっぱいあったり時間が無かったりするとそんなことを言っていられない。

 しかし最終データを入手する手間は惜しんではいけない。
 絶対にだ。

2017年8月21日月曜日

MELSEC NET II には予約局は無い

http://fa-faq.mitsubishielectric.co.jp/faq/show/14287?back=front%2Fcategory%3Ashow&category_id=947&sort=sort_access&sort_order=desc
 局番を飛ばして設定することは出来ないと書いてある。

 飛ばして設定してあってもなんとなく通信しちゃうのが困り者。
 QPLC との混在時に悩まされたところでもある。

2017年8月20日日曜日

汚名返上と汚名挽回

 どっちが正しいのだろうか。
 前者なのかな。
 それとも後者なのかな。

 調べたり周りに聞くと前者が多いなあ。

2017年8月19日土曜日

オブジェクト指向

 オブジェクトはその状態を表す「属性」とオブジェクトに対する「操作」をもつことができる。

 久しぶりにJavaプログラミング能力認定試験の三級をやってみたらすっかり上記の「属性」のことを忘れてた。

2017年8月18日金曜日

リカバリモードでデバイスを消去してパスコードを削除する

 デバイスを消去って物騒なタイトルだしもう少しわかりやすい翻訳をしてほしいと思う。
https://support.apple.com/ja-jp/HT204306

 知人が iPhone7 のパスコードを忘れてどうのにもならないからなんとかしてほしいと言うことで調べたらリカバリモードから復元してあげればなんとかなりそうなのでやってみた。
 「こんにちは」の画面が出たので設定をしてあげれば使えそうだ。

2017年8月17日木曜日

== 演算子

 String のコンストラクタを使って作成したものはリテラルとは違うオブジェクトとして作成されるので比較の結果は false となる。

 これだけだと意味がなんとなくしかわからんな。
 ここできちんと説明ができるようになるのはいつになるやら。

2017年8月16日水曜日

instanceof 演算子

 継承関係があれば true を返す。
 これはインタフェースを実装した場合も含む。

2017年8月15日火曜日

Java のプログラム

 最初に実行を開始した main メソッド以外に何らかのスレッドが実行されている間は終了しない。

 お行儀が良いので安心。

2017年8月14日月曜日

強制的に終了させるのはよろしくない

 実行中のスレッドに対して強制的に実行の終了や一時的な停止をすることは不適切な動作を招く可能性があるため推奨されていない。
 その推奨されていないメソッドには destroy, resume, stop, suspend がある。

 ごもっとも。

2017年8月13日日曜日

static メソッド

 static メソッドからインスタンス変数へ直接アクセスはできない。
 static メソッドはオブジェクトを作成しなくても実行は出来るがオブジェクトを作成しないとインスタンス変数の領域は確保されないので存在しない領域へのアクセスは出来ない。
 またインスタンス変数は個々のオブジェクトにそれぞれ領域が割り当てられるためインスタンス変数名だけではどのオブジェクトのインスタンス変数なのか特定できない。
 そのためコンパイルエラーとなる。

 こう書かれているのを読むとわかったような気になるが繰り返して覚えてしまおう。

 たぶん static メソッドというのがもやもやっとしているからわからないのだろう。
 ここを読んでおこう。
http://nobuo-create.net/java-beginner-21/

 static とは「静的」という意味。

2017年8月12日土曜日

無限ループ

 for ループから抜けることがないためループの次に制御が移ることがないためコンパイルエラーとなる。

 コンパイルエラーにならないものとの違いがよくわからない。

コンストラクタ

 オーバーライドによりサブクラスから手を加えられない。
 サブクラスのコンストラクタから super キーワードを使ってスーパークラスの任意のコンストラクタを呼べる。

 なんかちょっと前にやったような気がするので調べてみたら七月二十二日にやっていた。
 同じミスをしたということはまだ理解していないってことだな。

 同様な問題が出ていたということはまた出そうだな。

2017年8月11日金曜日

通信型位置決めユニット KV-LH20V

https://www.keyence.co.jp/products/controls/plc-building/kv-7000/models/kv-lh20v/

 面白いユニットである。

 オリエンタルモータのステッピングモータと組み合わせ動作確認をしてみたがあっけないくらいに簡単に動いた。
 位置決めテーブルはユニット内部のものとドライバ内部のものとで選択できるようにしてほしかった。
 仕様変更とかを考えるとそういうわけにはいかないか。

2017年8月10日木曜日

指令パルスの論理

 AD75 は正論理。
 QD75 は負論理。

 なんで仕様を変えたんだろう。
 置き換え時に余計な手間が増えてしまう。

2017年8月9日水曜日

Javaプログラミング 能力認定試験 2級過去問題集

 第三十六回の結果は五十八点。
 ビット演算子を知っていればギリギリ合格ライン。
 がっくりとくる点数ではないけれどもう少し欲しいところ。

 三級の試験が来月に控えていることを考えるとそろそろ三級の過去問題集を復習する頃合いだな。

2017年8月8日火曜日

インターフェイス

 インタフェースはインスタンスを new で生成できない。
 インターフェイスは implements キーワードで実装。

 やり取りをする出入り口だから概要しか定義されていないと考えれば良さそうだな。

2017年8月7日月曜日

ビット演算子

https://www.javadrive.jp/start/ope/index8.html

 ^ を論理積と勘違いして間違えた。
 これは排他的論理和なので覚えてしまおう。
 論理積は &
 論理和は |
 ビット反転は ~

 ビットシフトが面白い表記をしていたので合わせて覚えてしまおう。
 左シフトは <<
 右シフトは >> と >>>
 右シフトに二種類あるのは符号ありか符号なしかの違い。
https://www.javadrive.jp/start/ope/index9.html

 ローテートはないんだろうか。

2017年8月6日日曜日

例外への対処は明記すること

 あるメソッドで発生した例外は catch で対処するか throws を用いて自分自身を呼び出したメソッドへ伝えるかを決定する必要がある。
 これを明記しないとコンパイルエラーとなる。
 ただし RuntimeException とそのサブクラスの例外は発生箇所が普遍的なので記述がなくてもコンパイルエラーにならない。

 だそうだ。
 例外をほかっておくといいことはないからな。

2017年8月5日土曜日

this キーワード

 自分自身のオブジェクトを表す this キーワードはコンストラクタだけではなくメソッド内でも使用できるが static メソッドでは使用できない。
 static メソッドはオブジェクトなしでも動作することができるので this キーワードがオブジェクトを特定できないから。

2017年8月4日金曜日

package 宣言

 package 宣言より前にはコメントと空白行以外は書けない。

 肝心な package については調べていない。

2017年8月3日木曜日

総称型

 いまはジェネリクスというらしい。

http://qiita.com/pebblip/items/1206f866980f2ff91e77
 なにがなんだか。
 何度か読み返してみたけれどもレベルが高くて何を言っているのかわからない。

2017年8月2日水曜日

型変換のキャスト

 サブクラス型のオブジェクトの参照をスーパークラス型の変数に代入するときにはキャストは不要。
 スーパークラス型のオブジェクトの参照をサブクラス型の変数に代入するときにはキャストは必要。

 サブクラスはスーパークラスから継承したものだからスーパークラス型を知っている。
 逆にスーパークラスはサブクラスの詳細を知らないからキャストが必要となる。
 ということかな。

2017年8月1日火曜日

コンストラクタ

https://www.javadrive.jp/start/extends/index4.html
クラスは基本的に「java.lang.Object」のサブクラスとなっています。その為、全てのクラスはjava.lang.Objectのコンストラクタが必ず呼ばれています。

 なるほど。
 いきなりクラスが出来ているわけではなかったのか。
 あとは大元のクラスからコンストラクタが呼ばれているのは知らなかった。
 確かに説明をしてもらえれば当たり前のことと気が付かされた。

 コンストラクタを呼び出す super() はコンストラクタの先頭でのみ使えるということを調べようとしてたのにそれとは別に二つのことを知ることが出来た。

MELSECNET/HのリモートI/O局経由のMODBUS(R)通信について

http://fa-faq.mitsubishielectric.co.jp/faq/show/13661  別ネットワークの先にぶら下げるってどういうことだろう。