Codesys#Util.LIN_TRAFO関数を使って信号を線形変換しよう

今回の記事ではCodesysのUtilライブラリにあるLIN_TRAFO Function Blockを使用し、アナログ信号を線形変換を行います。

さ、FAを楽しもう。

Reference Link

Codesys#Util.BLINK関数とTrace機能を使ってみよう

前書き

いつも私の技術ブログとYouTubeチャンネルをご覧いただき、心より感謝申し上げます。また、いまFullさん(full@桜 八重 (@fulhause) / X)と共に毎週水曜日の夜にお届けしている「高橋クリス」ラジオ番組を運営しています。

現在、私達の活動はほぼ無償で続けており、より多くのコンテンツを提供するためには、皆様の温かいご支援が大変重要です。もし可能であれば、以下のリンクから応援していただけると大変嬉しく思います。

高橋クリスのメンバーシップ

こちらはFullさん(full@桜 八重 (@fulhause) / X)と共にやっているラジオにメンバーシップを登録いただけます。

https://note.com/fulhause/membership/join

AMAZON ギフトリスト

こちらは自分のブログのコンテンツ制作や設備の充実に大いに役立てさせていただきます。

https://www.amazon.co.jp/hz/wishlist/ls/H7W3RRD7C5QG?ref_=wl_share

Patreon

こちらは自分のブログのコンテンツ制作や設備の充実に対する小さな応援の気持ちのPatreonです。

https://www.patreon.com/user?u=84249391

皆様のサポートが、私たちの活動をより充実させる力となります。

どうぞよろしくお願いします。

メールアドレス(*=@)

soup01threes*gmail.com

X

https://x.com/3threes2

Util.LIN_TRAFO

Util.LIN_TRAFOを使用すれば、線形変換を行うことができます。またその変換は、入力の最小値と最大値を用いて出力値を線形近似することになります。

例えば、温度センサーは入力値を提供し、これらは摂氏温度の値(出力OUT)に変換されます。その入力値の範囲はIN_MIN=0とIN_MAX=10で定義されます。出力(摂氏)値の範囲はOUT_MIN=20とOUT_MAX=40で定義されます。従って、5Vの入力の場合、摂氏温度は10度と変換します。

VAR_INPUT

INREAL入力値
IN_MINREAL最小入力値
IN_MAXREAL最大入力値
OUT_MINREAL最小出力値
OUT_MAXREAL最大出力値

VAR_OUTPUT

OUTREAL出力値
ERRORBOOLTRUE: IN_MIN = IN_MAX または IN が入力範囲外

Implementation

Add library

Library ManagerからBLINK ライブラリを追加します。

Add Libraryをクリックします。

Utilライブラリを追加しましょう。

Program

今回の記事でもLD2を使用します。ToolboxからBlockをRung1に追加しましょう。

Add Util.LIN_TRAFO

Editor上で数のようなEmpty Blockが追加されました。

???のところにUtil.LIN_TRAFOを入力します。

Done!Util.LIN_TRAFO Blockが追加されました。

次はUtil.LIN_TRAFOのFB上にある???をクリックし、VARエリアで定義したUtil.LIN_TRAFOインスタンスを選択してください。

Done!

最後はすべてのパラメータを変数と紐つけましょう。

Add ST Block

LD2のプログラム中にもST コードを直接実行できます。ToolbarにST BlockをEmptyのRungに追加しましょう。

Done!

次は先程追加したEmpty Rungをクリックします。

テキストEditorが表示されるので、このエリアでSTコードを書きましょう。

Done!

Result

Util.LIN_TRAFOの関数がエラーなく実行できました、またrSensorINの入力値に沿ってOutがScalingできます。

Traceでもデータ変換の波形を確認することができます。

Footer_Basic

Please Support some devices for my blog

Amazon Gift List

Find ME

Twitter:@3threes2
Email:soup01threes*gmail.com (* to @)
YoutubeChannel:https://www.youtube.com/channel/UCQ3CHGAIXZAbeOC_9mjQiWQ

シェアする

  • このエントリーをはてなブックマークに追加

フォローする