ユーザ用ツール

サイト用ツール


ja-jp_products:mp_studio:functions

MP STUDIO 2 Phase 4 · ファンクション

ファンクションは、比較・演算・タイマー・カウンターのように複数のセルを占めるラダー命令です。ファンクションパネルから選んで挿入するか、ファンクションの挿入ウィンドウに命令を入力して挿入できます。

図1. ファンクションが実行される流れ

ファンクションブロックの左側の条件がONの間、ファンクションが実行され、ブロックの右側へ結果に応じた信号が伝わります。比較ファンクションは接点と同じように行の中に配置され、比較結果が真のときに導通します。

ファンクションパネル

記号レールのファンクションボタンを押すかAlt+2を押すと、ファンクションパネルが開きます。

図2. ファンクションパネル(Timer分類を展開した状態)

  • ① ファンクションを検索: 名前の一部を入力すると、一致するファンクションだけが表示されます。
  • ② 分類の見出し: クリックすると、分類を展開または折りたたみます。分類ごとに色が異なり、右側の数字は分類内のファンクション数です。
  • ③ ファンクションの行: ダブルクリックすると、カーソルのセルにファンクションが挿入されます。
  • ④ Mark 一覧: プログラムのブックマークの一覧です。

図3. TONで検索したファンクションパネル

ファンクションの挿入ウィンドウ

Ctrl+E、Ctrl+Enter、[のいずれかを押すか、編集 → ファンクションの挿入を選択すると、ファンクションの挿入ウィンドウが開きます。

  1. ① 命令に、ファンクション名と引数をスペースで区切って入力します。例: MOVE D0 D1、ADD D0 20 D1、TON T0 1s
  2. 名前を入力すると、② 引数の順序と説明(例: [TON] [IN] [SV]、TON: On Delay Timer、動作条件、入力例)が表示されます。一致するファンクションがない場合は、一致する命令がありませんと表示されます。
  3. OKを押すかEnterを押すと、カーソルのセルにファンクションが挿入されます。

図4. 引数の説明が表示されたファンクションの挿入ウィンドウ

引数の修正

  • ファンクションの引数のセルを選択してEnterを押すか、値を直接入力すると、その引数だけを修正できます。
  • ファンクションの名前のセル(先頭)を選択してEnterを押すと、ファンクションの修正ウィンドウが開きます。このウィンドウでは、命令全体を1行で修正できます。

図5. 命令全体を修正するファンクションの修正ウィンドウ

引数に入力したアドレスが、そのファンクションの受け付けるデータ型(ビット・バイト・ワード・ダブルワード・実数)と合わない場合は、セルが赤く表示されます。セルにマウスポインターを合わせると、理由が表示されます。

タイマー

タイマーの設定値(SET VALUE)は10ms単位です。TON T0 100とTON T0 1sはどちらも1秒の設定で、ブロックには1Sと表示されます。

図6. P0が1秒間ONを保つとP33をONにするTON

  • ① P0: タイマーの開始条件
  • ② TON T0 1s: 条件がONの間はT0の現在値が増え、設定値(1秒)に達するとT0がONになります。条件がOFFになると、現在値は0に戻ります。
  • ③ T0接点: T0がONになると導通し、P33をONにします。
  • ④ P33: タイマー出力
ファンクション 動作
TON On Delay Timer — 条件が設定時間以上ONのまま続くと、ONになります。条件がOFFになると、現在値が0になります。
TOFF Off Delay Timer — 条件がOFFになった後も、設定時間の間はONを保持します。
TPL Pulse Timer — 条件がONになると、設定時間の間ONになります。条件が先にOFFになると、一緒にOFFになります。
TMON Pulse Extended Timer — 条件がONになると、設定時間の間ONになります。途中で条件がOFFになっても、設定時間まではONを保持します。
TMR Accumulative Timer — 条件がONの時間を積算します。条件がOFFになっても現在値が残るため、リセットするには別のラングで消去する必要があります。

カウンター

CTUの引数は、COUNT(カウンターアドレス)、SET VALUE(設定値)、RESET(リセットビット)の順です。例: CTU C0 5 P2

  • 左側の条件がOFFからONに変わるたびに、C0の現在値が1ずつ増えます。
  • 現在値が設定値以上になると、C0がONになります。
  • RESETに指定したビット(P2)がONのとき、現在値が0になります。

図7. P1を5回押すとC0がONになり、P34をONにするCTU

CTD(DOWN Counter)の引数はCOUNT、SET VALUE、SETの順で、現在値が0になるとONになります。

比較と転送

比較ファンクション(==・>・U<など)は2つの値を比較し、真であれば導通します。たとえば>= D0 100は、D0が100以上のとき真になります(符号付き比較)。MOVE(ブロック名MOV)は、INの値をOUTへコピーします。

図8. D0が100以上のときD1にD0をコピーするラング

ファンクション一覧

ファンクションパネルの16の分類とファンクションは次のとおりです。かっこ内は引数の順序です。

分類 ファンクション
Comparison ==(等しい) · !=(異なる) · > · < · >= · ⇐ — 符号付き比較、U> · U< · U>= · U⇐ — 符号なし比較 (IN1, IN2)
Conversion H2D(16進→10進) · D2H(10進→16進) · INV(1の補数) · NEG(2の補数) (IN, OUT)
Math ADD · SUB · MUL (IN1, IN2, OUT) · DIV (IN1, IN2, OUT, REM) · INC · DEC (IN) · SCALE (IN, IN_MAX, IN_MIN, OUT, OUT_MAX, OUT_MIN) · FLOOR · SQRT (IN, OUT)
Counter CTU (COUNT, SET VALUE, RESET) · CTD (COUNT, SET VALUE, SET) · CTUD (COUNT, CU, CD, SET VALUE, RESET) · HCNT (CHANNEL, OUT) · HRST (CH) · ENCODER (CHANNEL, OUT) · ENMOV (CHANNEL, IN)
Timer TON · TOFF · TPL · TMON · TMR (TIMER, SET VALUE)
Logic Control JMP · JMPN · LABEL (LABEL) · END
Word Logic WAND · WOR · WXOR (IN1, IN2, OUT) · SHL · SHR (IN, N, OUT) · SWAP (IN, OUT)
Analog ADC · ADC2(4~20mA) · DAC (CHANNEL, MAX VALUE, MIN VALUE, OUT) · AFILTER (IN, WEIGHT, OUT) · NTEMP · PTEMP (CHANNEL, OUT) · PWM (PORT, DUTY, WIDTH) · FPWM (PORT, FREQ) · FDPWM (PORT, FREQ, DUTY) · NPWM (PORT, FREQ, N) · POFF (PORT) · PSR (OUT) · PID (PV, SV, KP, KI, KD, OUT MAX, OUT MIN, MV) · PID_PWM (PORT, PV, SV, KP, KI, KD, MV)
MOVE MOVE (IN, OUT) · GMOVE · FMOVE (IN, OUT, N)
Data Processing MAX · MIN · SUM · AVE · MUX · ENCO · DECO (IN, OUT, N)
Program Control MCS · MCSCLR (NUM)
Serialport PUT (CHANNEL, DATA, LENGTH) · GET (CHANNEL, LENGTH, OUT) · PUT_LEN · GET_LEN (CHANNEL, OUT) · SERID (CHANNEL, ID) · SERRATE (CHANNEL, RATE) · MNET (CH) · MNET_READ (RATE, ADD) · MBTRIG (NO) · UPTRIG (NO)
I2C ISTA (ADDRESS, READ) · ISTP · IWR (DATA) · IRD (OUT, ACK) · ISR (OUT) · IBR (IN)
CLCD (Character LCD) CINI (ADR, TYPE) · CLOC (ADR, X, Y) · CSTR (ADR, STRING) · CINT · CREAL (ADR, IN, DIGIT, ZERO, SIGN) · CHEX (ADR, IN, DIGIT, ZERO) · CCLS · CCON · CCOF (ADR) · CLON · CLOF · CPUT (ADR, ID, DEFINE) · CGET (ADR, ID) · CSCR (ADR, PAGE)
7Segment FINI (CLK, DIO) · FINT (IN, POSITION, LENGTH, DOT, ZERO, SIGN) · FDATA (DATA, POSITION) · FSCR (DSP, PAGE)
DS3231 (RTC) DS3231_WR · DS3231_RD (YEAR, MONTH, DATE, DAY, HOUR, MINUTE, SECOND)

アナログ・パルス・温度のファンクションは、その機能を持つ機種または拡張モジュールでのみ使用できます。チャンネル番号の範囲は、選択した機種に従います。

MBTRIGはModbus 機器テーブルで、UPTRIGはユーザープロトコルで、CSCRはLCD 画面エディタで、FINI・FINT・FDATA・FSCRは7セグメント表示で詳しく説明します。

関連文書

ja-jp_products/mp_studio/functions.txt · 最終更新: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki