PLCプログラミング(ラダープログラミング)の知識を深めたい方へ

C#でPLCと通信する方法」の追記です。
ラダープログラミングについてもう少し知識を深めたいという方には、以下の書籍がお奨めです。
こちらもKindle Unlimtedなら無料で閲覧できますので、興味ある方は是非!!

C#でPLCと通信する方法

 例えば、以下のような要望をよく耳にします。

  • 「デバイス値を監視して稼働率を計測したい。」
  • 「デバイス値を監視して予知保全に役立てたい。」
  • 「複数の加工機を統括制御するような.Netプログラムを開発したい。」

このような背景から、C#でPLCと通信するためのプログラム環境構築について、まずは三菱電機さんのGX Works2をターゲットに調査し、書籍に纏めてみました。

現場では、図1のようなシステム構成ですが、本書では、図2のようにエミュレーター環境でプログラムの動作確認ができる方法を紹介しております。

勉強や調査の段階では、PLC実機での動作確認ができない方も多いと思いますので参考にしていただければ幸いです。

Kindle Unlimitedだと無料で閲覧できますので興味のある方は是非!!

図1.製造現場でのシステム構成例

図2.本書でのシミュレータを用いたシステム構成

SendToフォルダを開く

  • ファイル名を指定して実行(Windowsキー + R)を開く

  • 以下のコマンドを実行

shell:sendto

便利なので、是非、試してみて下さい。

Resize, SizeChanged, Layoutイベントの違い

 

イベント説明
Resizeコントロールのサイズが変更された時に発生。
SizeChangedSizeプロパティが変更されたときに発生。
Layoutコントロールが配置し直す時に発生。

上記の説明では、イマイチ違いが解らないので、実際に発生の順序の違いを調べました。

●ユーザのマウス操作でFormサイズを変更した場合

Layoutイベント
 ↓
Resizeイベント
 ↓
SizeChangedイベント

●プログラミングでSizeプロパティを変更した場合

this.Size = new Size(300, 100);
Layoutイベント
 ↓
Resizeイベント
 ↓
SizeChangedイベント

●プログラミングでHeightプロパティを変更した場合

Form.Height += 100;
Layoutイベント
 ↓
Resizeイベント
 ↓
SizeChangedイベント

結果は、どれも同じ順序で発生することが解りました。

なお、Microsoftのドキュメントでは、「Layoutイベントを使用してカスタムレイアウトを処理すること」をお勧めしています。

VimでHTMLを自動インデントする方法

以下のコマンドを実行してみて下さい。

%s/></>\r</g | filetype indent on | setf xml | normal gg=G

Vimのコマンドウィンドウを活用しよう

 

コマンド履歴のコマンドウィンドウを表示

q:

コマンドウィンドウが開くと通常のコマンドモード時の操作が可能になります。

カーソルを再実行したい行に移動してEnterを押下すると再実行されます。

検索履歴のコマンドウィンドウを表示

q/
または、
q?

カーソルを再検索したい行に移動してEnterを押下すると再検索されます。

コマンドウィンドウを閉じる

:q

便利なので、是非、試してみて下さい。

Pokuda Searchの検索機能の仕様

●検索条件1
ファイル名が「稟議」に部分一致するファイル。(ワイルドカード"*稟議*"の検索と同じ。)
または、
ファイル内の文章の転置インデックスに「稟議」を含むファイル。 


●検索条件2
ファイル名が「稟議決裁」に部分一致するファイル。(ワイルドカード"*稟議決裁*"の検索と同じ。)
または、B)
ファイル内の文章の転置インデックスに「稟議」または、「決裁」を含むファイル。 B)


●検索条件3
ファイル名が「稟議 決裁」に部分一致するファイル。(ワイルドカード"*稟議 決裁*"の検索と同じ。)
または、
ファイル内の文章の転置インデックスに「稟議」または、「決裁」を含むファイル。 


●検索条件4
ファイル名が「稟議 決裁」に部分一致するファイル。(ワイルドカード"*稟議 決裁*"の検索と同じ。)
または、
ファイル内の文章の転置インデックスに「稟議」または、「決裁」を含むファイル。 
上記に合致するファイルかつ、
拡張子が「pdf」(大文字小文字を区別しない)に部分一致するファイル。


●検索条件5
ファイル名が「稟議 決裁」に部分一致するファイル。(ワイルドカード"*稟議 決裁*"の検索と同じ。)
または、
ファイル内の文章の転置インデックスに「稟議」または、「決裁」を含むファイル。 
上記に合致するファイルかつ、
拡張子が「pdf」(大文字小文字を区別しない)に部分一致するファイル。
上記に合致するファイルかつ、
ファイル更新日が「2018/06/22 14:17:42」以上のファイル。


●検索条件6
ファイル名が「稟議 決裁」に部分一致するファイル。(ワイルドカード"*稟議 決裁*"の検索と同じ。)
または、
ファイル内の文章の転置インデックスに「稟議」または、「決裁」を含むファイル。 
上記に合致するファイルかつ、
拡張子が「pdf」(大文字小文字を区別しない)に部分一致するファイル。
上記に合致するファイルかつ、
ファイル更新日が「2018/06/22 14:17:42」以上、かつ、「2019/04/10 16:24:17」以下のファイル。


●具体的なマッチング例
No. ファイル名 拡張子 更新日 ファイル内の文章 条件1 条件2 条件3 条件4 条件5 条件6
1 kessai.html html 2019/4/10 16:00:00 権限について。
2 稟議決裁1.docx docx 2019/4/10 16:00:00 規定の説明。
3 稟議 決裁1.docx docx 2019/4/10 16:00:00 規定の説明。
4 稟議規定1.docx docx 2019/4/10 16:00:00 規定の説明。
5 細則.docx docx 2019/4/10 16:00:00 仕事の管理単位と稟議
6 細則1.pdf pdf 2018/6/22 14:17:41 決裁権限
7 細則2.pdf pdf 2018/6/22 14:17:42 決裁権限
8 細則3.pdf pdf 2019/4/10 16:24:17 決裁権限
9 細則4.pdf pdf 2019/4/10 16:24:18 決裁権限

厳選 Visual Studioの便利なショートカット

  エラー箇所にジャンプ 「Ctrl + Shift + F12」 ブレークポイント 設定/解除 「F9」 有効化/無効化 「Ctrl + F9」 ViEmu特有 「:ls」:バッファナンバーのリストを表示。 「:b2」:バッファ2のファイルを開く。 「:n」:次のバッファのファ...