FX0, FX0S, FX0N, FX1, FX2, FX2C プログラミングマニュアル 基本命令,ステップラダー命令,応用命令解説書 三菱マイクロシーケンサ FX0, FX0S, FX0N, FX1, FX2, FX2C プログラミングマニュアル (基本命令, ステップラダー命令, 応用命令解説書) ごあんない 本マニュアルは、 FXシリーズマイクロシーケンサのシーケンスプログラム作成のための 命令解説書です。 シーケンサ本体の仕様,取付けおよび配線などのハードウェアに関する内容と、安全に 使用いただくための注意事項に関しましては、各シーケンサのハンディマニュアルを ご覧ください。 商標について ・Wi ndowsは米国マイクロソフト社の米国およびその他の国における登録商標です。 ・汎用パーソナルコンピュータPC−9 8 0 0は、 NEC社 (日本電気株式会社) の登録商標です。 ・その他の会社名,製品名はそれぞれの会社の商標または登録商標です。 1 もくじ 1. はじめに ........................... 7 1−1.マニュアルの構成と各種資料 ........... 8 1−2. FXシーケンサの主な特長 ............. 10 1−3.製品概要と対応するプログラミング言語 .. 14 1−4. シーケンサを構成する各種の要素 ...... 16 1−5. プログラムメモリとパラメータの構造 ..... 18 1−6.注意事項(入出力処理,応答おくれ,二重コイル).... 21 2.各種要素の役割りと機能 ............ 23 2−1.数値の扱い,定数[K], [H]........... 2−2. FXシリーズ要素番号一覧 ............. 2−3.入出力リレーの番号と機能[X], [Y]... 2−4.補助リレーの番号と機能[M].......... 2−5.ステートの番号と機能 [S]............ 2−6. タイマの番号と機能[T].............. 2−7.内部カウンタの番号と機能[C]........ 2−8.内蔵高速カウンタの番号と機能[C].... 24 26 30 32 34 36 42 46 2−8−1.共通事項 .......................... 46 4. ステップラダー命令解説 ............ 79 4−1.ステップラダー命令[STL], [RET].... 4−2.ステップラダー命令の動作とSFC表現 ... 4−3. SFCの特長 .......................... 4−4. SFCフロー作成のための予備知識 ...... 4−5. SFCフローの形態 .................... 80 82 84 86 90 4−5−1.飛越し・繰返しフロー ................ 90 4−5−2.分岐・合流の複合フロー ............. 91 4−6. イニシャルステートの役割り ............ 92 4−7.中間ステートのプログラム.............. 94 4−7−1.分岐・合流のない一般ステート ........ 94 4−7−2.飛越し・繰返しを伴う一般ステート ..... 95 4−8.分岐・合流ステートのプログラム ........ 96 4−8−1.選択分岐・合流ステート .............. 96 4−8−2.並進分岐・合流ステート .............. 97 4−8−3.分岐・合流の複合 ................... 98 4−9. シングルフローの例 .................. 100 4−10.選択分岐・合流フローの例 ........... 104 4−11.並進分岐・合流フローの例 ........... 106 4−12. イニシャルステート (FNC60IST)命令の活用 ... 108 2−8−2.1相高速カウンタの扱い ............. 48 2−8−3.2相高速カウンタの扱い ............. 50 2−8−4.高速カウンタ使用上の注意 ........... 51 2−9. データレジスタの番号と機能[D]....... 54 2−10. ポインタの番号と機能[P], [I]........ 58 5.応用命令の一般通則 .............. 109 5−1.応用命令の表現と実行形式 ........... 110 5−2.応用命令内での数値の扱い .......... 116 5−3. インデックスレジスタによるオペランドの修飾 ..... 119 3.基本シーケンス命令解説 ............ 59 3−1.基本命令一覧 ....................... 60 3−2. [LD], [LDI], [OUT]命令 ............ 61 3−3. [AND], [ANI]命令 .................. 62 3−4. [OR], [ORI]命令 .................... 63 3−5. [ORB]命令 ......................... 64 3−6. [ANB]命令 ......................... 65 3−7. [MPS], [MRD], [MPP]命令.......... 66 3−8. [MC], [MCR]命令 .................. 70 3−9. [PLS], [PLF]命令 .................. 72 3−10. [SET], [RST]命令 ................. 73 3−11. カウンタ要素に対する [OUT][ ,RST]命令 ...... 74 3−12. [NOP], [END]命令 ................ 75 3−13. プログラム作成上の注意 ............. 76 3−13−1. プログラムの手順と実行順序 ........ 76 3−13−2.二重出力(ダブルコイル)動作と対策 .. 77 3−13−3. プログラムできない回路と対策 ....... 78 2 6.応用命令解説 .................... 123 6−1.応用命令一覧 ...................... 124 6−2.応用命令解説の見方 ................ 126 6−3. FNC0 0∼FNC09 「プログラムフロー」... 129 6−4. FNC10∼FNC19 「転送・比較」........ 141 6−5. FNC20∼FNC29 「四則・論理演算」... 153 6−6. FNC30∼FNC39 「ローテーション・シフト」.... 163 6−7. FNC40∼FNC4 9 「データ処理」....... 173 6−8. FNC50∼FNC59 「高速処理」......... 185 6−9. FNC60∼FNC69 「便利命令」......... 203 6−10. FNC70∼FNC79 「外部機器・ I/O」... 221 6−11. FNC80∼FNC89 「外部機器・SER」... 237 6−12. FNC90∼FNC99 「外部機器・F2」.... 267 6−13. F2機器接続用特殊ブロックの使い方 .... 281 もくじ 7.基本機能の補足事項 .............. 283 7−1.特殊補助リレー,特殊データレジスタ一覧 ..... 284 7−2.特殊要素の補足説明 ................ 305 7−3. プログラムフロー制御命令の相互関係 ..... 320 7−4. ASCI I文字配列 (参考)............ 322 1 8.バージョンアップ経歴と関連情報 .... 323 2 8−1. シーケンサのバージョンアップ経歴 ..... 324 8−2.周辺機器の対応 .................... 326 8−3.バージョンアップ関連情報 ............ 327 3 9.付録 ............................ 329 4 9−1.西暦2000年問題への対応について .... 330 9−1−1. カレンダー機能対応機種とその動作について ..... 330 5 9−1−2.西暦2000年問題に対するテストレポート331 9−2. FXシーケンサの通信,データリンク機能の概要 ..... 334 9−3.問合わせの多い項目と陥りやすい間違い ..... 337 6 さくいん ............................ 340 7 8 9 3 もくじ 《FNC.№順》 ○:対応命令 −:非対応命令 ◎:追加命令 ◆:V3. 30以上(’ 96年6月以降) で削除された命令 区 FNC. 命令 分 No. 記号 プ ロ グ ラ ム フ ロ | 転 送 ・ 比 較 四 則 ・ 論 理 演 算 ロ | テ | シ ョ ン ・ シ フ ト デ | タ 処 理 4 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 CJ CALL SRET IRET EI DI FEND WDT FOR NEXT CMP ZCP MOV SMOV CML BMOV FMOV XCH BCD BIN ADD SUB MUL DIV INC DEC WAND WOR WXOR NEG ROR ROL RCR RCL SFTR SFTL WSFR WSFL SFWR SFRD ZRST DECO ENCO SUM BON MEAN ANS ANR SQR FLT 《命令名称》 条件ジャンプ サブルーチンコール サブルーチンリターン 割込みリターン 割込み許可 割込み禁止 メインプログラム終了 ウォッチドッグタイマ 繰返し範囲開始 繰返し範囲終了 比較 帯域比較 転送 桁移動 反転転送 一括転送 多点転送 データの交換 BCD変換 BIN変換 BIN加算 BIN減算 BIN乗算 BIN除算 BIN増加 BIN減少 論理積 論理和 排他的論理和 補数 右回転 左回転 キャリ付右回転 キャリ付左回転 ビット右シフト ビット左シフト ワード右シフト ワード左シフト シフト書込み シフト読出し 一括リセット デコード エンコード ONビット数 ONビット判定 平均値 アナンシェータセット アナンシェータリセット BIN開平演算 浮動小数点演算 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − 130 133 133 134 134 134 138 139 140 140 142 143 144 145 146 147 149 150 151 152 154 155 156 157 158 158 159 159 159 160 164 164 165 165 166 166 168 168 170 170 174 175 176 177 177 178 179 179 181 182 ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ | 区 FNC. 命令 分 No. 記号 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ 入出力リフレッシュ フィルタ調整 マトリクス入力 比較セット(高速カウンタ) 比較リセット(高速カウンタ) 帯域比較(高速カウンタ) パルス密度 パルス出力 パルス幅変調 ○ − − ○ ○ − − ○ ○ ○ − − ○ ○ − − ○ ○ ○ ○ − ○ ○ − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 186 187 188 190 192 193 198 199 201 イニシャルステート データサーチ ドラムシーケンス(絶対方式) ドラムシーケンス(相対方式) ティーチングタイマ 特殊タイマ 交番出力 傾斜信号 近回り制御 データ整列 テンキー入力 16キー入力 ディジタルスイッチ 7SEGデコーダ 7SEG時分割表示 アロースイッチ アスキー変換 アスキーコードプリント BFM読出し BFM書込み シリアルデータ転送 8進ビット転送 HEX→ASCII変換 ASCII→HEX変換 チェックコード FX-8AVボリューム読出し FX-8AVボリューム目盛 ○ − − − − − ○ ○ − − − − − − − − − − − − − − − − − − − ○ − − − − − ○ ○ − − − − − − − − − − ○ ○ ◎ − ◎ ◎ ◎ − − ○ − − − − − − − − − − − − − − − − − − − − − − − − ○ − ○ ◎ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ◎ ◎ ○ ◎ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 204 210 211 212 213 214 215 217 218 220 222 223 224 226 227 229 231 232 234 234 238 246 248 250 252 254 255 PID演算 − − − ◎ ◎ 256 F-16NP/NT F2-6A読出し F2-6A書込み F2-32RMスタート/ステータス F2-32RM書込み F2-32RM読出し F2-32RMモニタ F2-30GMブロック指定 F2-30GM Mコード − − − − − − − − − 《命令名称》 ジ 50 51 52 高 53 速 54 処 55 理 56 57 58 59 60 61 62 便 63 利 64 命 65 令 66 67 68 69 70 71 72 外 部 73 機 74 器 75 ・ 76 I/O 77 78 79 80 81 82 外 部 83 機 84 器 85 ・ 86 SER 87 88 89 90 91 92 外 部 93 機 94 器 95 ・ 96 F2 97 98 99 REF REFF MTR HSCS HSCR HSZ SPD PLSY PWM − IST SER ABSD INCD TTMR STMR ALT RAMP ROTC SORT TKY HKY DSW SEGD SEGL ARWS ASC PR FROM TO RS PRUN ASCI HEX CCD VRRD VRSC − PID − MNET ANRD ANWR RMST RMWR RMRD RMMN BLK MCDE − − − − − − − − − − − − − − − − − − − ◆ ◆ ◆ ○ ○ ○ ○ ◆ ◆ ◆ ◆ ◆ ○ ○ ○ ○ ◆ ◆ | ジ 268 270 271 273 275 276 277 278 279 もくじ 《命令記号順》 ○:対応命令 −:非対応命令 ◎:追加命令 ◆:V3. 30以上(’ 96年6月以降) で削除された命令W 区 命令 FNC. 分 記号 No. A B C D E F H I M N ABSD ADD ALT ANR ANRD ANS ANWR ARWS ASC ASCI BCD BIN BLK BMOV BON CALL CCD CJ CML CMP DEC DECO DI DIV DSW EI ENCO FEND FLT FMOV FOR FROM HEX HKY HSCR HSCS HSZ INC INCD IRET IST MCDE MEAN MNET MOV MTR MUL NEG NEXT 62 20 66 47 91 46 92 75 76 82 18 19 97 15 44 01 84 00 14 10 25 41 05 23 72 04 42 06 49 16 08 78 83 71 54 53 55 24 63 03 60 98 45 90 12 52 22 29 09 《命令名称》 ドラムシーケンス(絶対方式) BIN加算 交番出力 アナンシェータリセット F2-6A読出し アナンシェータセット F2-6A書込み アロースイッチ アスキー変換 HEX→ASCII変換 BCD変換 BIN変換 F2-30GMブロック指定 一括転送 ONビット判定 サブルーチンコール チェックコード 条件ジャンプ 反転転送 比較 BIN減少 デコード 割込み禁止 BIN除算 ディジタルスイッチ 割込み許可 エンコード メインプログラム終了 浮動小数点演算 多点転送 繰返し範囲開始 BFM読出し ASCII→HEX変換 16キー入力 比較リセット(高速カウンタ) 比較セット(高速カウンタ) 帯域比較(高速カウンタ) BIN増加 ドラムシーケンス(相対方式) 割込みリターン イニシャルステート F2-30GM Mコード 平均値 F-16NP/NT 転送 マトリクス入力 BIN乗算 補数 繰返し範囲終了 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ − ○ ○ − − − − − − − ○ ○ − − − − − ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ − − − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ 211 154 215 179 270 179 271 229 231 248 151 152 278 147 177 133 252 130 146 142 158 175 134 157 224 134 176 138 182 149 140 234 250 223 192 190 193 158 212 134 204 279 178 268 144 188 156 160 140 − ○ ○ − − − − − − ◎ ○ ○ − ○ − − ◎ ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ ○ ◎ − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ − ○ − − − − − − − − ○ ○ − − − ○ − ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ − − − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ◎ ○ ○ ◆ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ ◆ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ | 区 命令 FNC. 分 記号 No. 《命令名称》 ジ P R S T V W X Z PID PLSY PR PRUN PWM RAMP RCL RCR REF REFF RMMN RMRD RMST RMWR ROL ROR ROTC RS SEGD SEGL SER SFRD SFTL SFTR SFWR SMOV SORT SPD SQR SRET STMR SUB SUM TKY TO TTMR VRRD VRSC WAND WDT WOR WSFL WSFR WXOR XCH ZCP ZRST 88 57 77 81 58 67 33 32 50 51 96 95 93 94 31 30 68 80 73 74 61 39 35 34 38 13 69 56 48 02 65 21 43 70 79 64 85 86 26 07 27 37 36 28 17 11 40 PID演算 パルス出力 アスキーコードプリント 8進ビット転送 パルス幅変調 傾斜信号 キャリ付左回転 キャリ付右回転 入出力リフレッシュ フィルタ調整 F2-32RMモニタ F2-32RM読出し F2-32RMスタート/ステータス F2-32RM書込み 左回転 右回転 近回り制御 シリアルデータ転送 7SEGデコーダ 7SEG時分割表示 データサーチ シフト読出し ビット左シフト ビット右シフト シフト書込み 桁移動 データ整列 パルス密度 BIN開平演算 サブルーチンリターン 特殊タイマ BIN減算 ONビット数 テンキー入力 BFM書込み ティーチングタイマ FX-8AVボリューム読出し FX-8AVボリューム目盛 論理積 ウォッチドッグタイマ 論理和 ワード左シフト ワード右シフト 排他的論理和 データの交換 帯域比較 一括リセット 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ − ○ − − ○ ○ − − ○ − − − − − − − − − − − − − ○ ○ − − − − − − − ○ − − − − − − ○ ○ ○ − − ○ − ○ ○ 256 199 232 246 201 217 165 165 186 187 277 276 273 275 164 164 218 238 226 227 210 170 166 166 170 145 220 198 181 133 214 155 177 222 234 213 254 255 159 139 159 168 168 159 150 143 174 − ○ − − ○ ○ − − ○ − − − − − − − − ◎ − − − − ○ ○ − − − − − − − ○ − − ○ − − − ○ ○ ○ − − ○ − ○ ○ − − − − − − − − ○ ○ − − − − − − − − − − − − ○ ○ − − − − − ○ − ○ − − − − ○ − ○ ○ ○ − − ○ − ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ◎ ○ ○ ○ ○ ○ ◎ ○ ◎ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ | ジ 5 MEMO 6 1. はじめに 1 . はじめに この章では、 FXシリーズマイクロシーケンサのプログラミングに関する基本事項を述べます。 基本事項の中には、 プログラミング用各種資料の構成をはじめ、 FXシーケンサの特長ならびにこのシーケンサ の機能を活用いただくための項目が含まれていますので、 シーケンス設計前にご一読いただきますようお願い いたします。 1 1−1.マニュアルの構成と各種資料 1−2.FXシーケンサの主な特長 1−3.製品概要と対応するプログラミング言語 1−4.シーケンサを構成する各種の要素 1−5.プログラムメモリとパラメータの構造 1−6.注意事項(入出力処理,応答おくれ,二重コイル) 7 各種資料 1. はじめに 1−1. マニュアルの構成と各種資料 マイクロシーケンサのマニュアル構成は次のとおりです。 本プログラミングマニュアルには、 FXシリーズマイクロシーケンサのプログラミングに関する解説のみが記載 されておりますので、 その他のハードウェア情報や特殊機器の情報につきましてはそれぞれの製品のマニュア ルをご覧ください。 また、必要なマニュアルや資料につきましては、本製品のご購入店へお問合せください。 マニュアル名称 ■シーケンサ本体■ FX0 ハンディマニュアル JY992D30901 FX0S ハンディマニュアル JY992D58701 FX0N ハンディマニュアル JY992D43901 FX1 ハンディマニュアル JY992D58801 FX2 ハンディマニュアル JY992D58901 FX2C ハンディマニュアル JY992D59001 FX2N ハンディマニュアル JY992D61601 FX2NC ハンディマニュアル JY992D70601 ■プログラミング■ FX0,FX0S,FX0N,FX1,FX2,FX2C プログラミングマニュアル(本書) FX1S,FX1N,FX2N,FX2NC プログラミングマニュアル FX 通信ユーザーズマニュアル ■アナログ入力■ FX-4AD ユーザーズマニュアル FX-2AD-PT ユーザーズマニュアル FX-4AD-TC ユーザーズマニュアル ■アナログ出力■ FX-2DA ユーザーズマニュアル FX-4DA ユーザーズマニュアル ■アナログ入出力■ FX0N-3A ユーザーズマニュアル ■RS-232C通信■ FX-232ADP ユーザーズマニュアル FX0N-232ADP ユーザーズマニュアル ■RS-485通信■ FX/FX0N-485ADP ユーザーズマニュアル FX-485PC-IF ユーザーズマニュアル ■その他、通信・リンク■ FX2N-32CCL ユーザーズマニュアル FX2N-16LNK-M ユーザーズマニュアル FX-16NP/NT ユーザーズマニュアル FX-16NP/NT-S3 ユーザーズマニュアル FX0N-16NT ユーザーズマニュアル 8 マニュアル番号 内容 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 シーケンサ本体の入出力仕様や配線、取付けなどのハードウェアに関する 事項 基本命令解説・応用命令解説・各種デバイスの解説など、シーケンスの プログラミングに関する事項 基本命令解説・応用命令解説・各種デバイスの解説など、シーケンスの JY992D62001 プログラミングに関する事項 簡易PC間リンク・並列リンク・計算機リンク・RS無手順通信・FX2N-232IF JY992D69801 による無手順通信のプログラミングに関する事項 JY992D59101 JY992D52501 4ch アナログ入力ブロックの取扱い要領 JY992D55601 2ch PT100温度センサ入力ブロックの取扱い要領 JY992D55801 4ch 熱電対入力ブロックの取扱い要領 JY992D52701 2ch アナログ出力ブロックの取扱い要領 JY992D60901 4ch アナログ出力ブロックの取扱い要領 JY992D48601 2ch アナログ入力,1ch アナログ出力ブロックの取扱い要領 JY992D41401 RS-232C アダプタの取扱い要領 JY992D51201 RS-232C アダプタの取扱い要領 JY992D53101 RS-485 アダプタの取扱い要領 JY992D53301 RS-232C/RS-485 変換インタエフェースの取扱い要領 JY992D71701 JY992D72101 JY992D56101 JY992D34501 JY992D48101 CC-Link 接続ブロックの取扱い要領 MELSEC-I/O LINK リモート I/O システムマスタブロックの取扱い要領 MELSECNET/MINI 接続ブロックの取扱い要領 MELSECNET/MINI 接続ブロックの取扱い要領 MELSECNET/MINI 接続ブロックの取扱い要領 各種資料 1. はじめに マニュアル名称 ■高速カウンタ・位置決め・カムスイッチ・ID■ FX-1HC ユーザーズマニュアル FX2N/FX-1PG ユーザーズマニュアル FX-10GM,FX(E)-20GM ハンディマニュアル FX-1DIF ユーザーズマニュアル ■周辺機器・ソフトウェア■ FX-10P オペレーションマニュアル FX-20P オペレーションマニュアル FX-PCS/WIN オペレーションマニュアル FX-PCS-KIT/98 オペレーションマニュアル FX-PCS-LNK/WIN ユーザーズマニュアル FX-PCS-CNV/WIN オペレーションマニュアル FX-PCS-BFM/WIN オペレーションマニュアル FX-PCS-KIT-GM/98 オペレーションマニュアル E-20TP オペレーションマニュアル ■学習用テキスト(有償頒布)■ はじめてのシーケンサ 新・よくわかるシーケンサ(KISO) 新・よくわかるシーケンサ(STL) 新・よくわかるシーケンサ(SFC) 新・使いこなせるシーケンサ(OYO) マニュアル番号 内容 JY992D52901 JY992D63001 JY992D57601 JY992D43001 ハードウェア高速カウンタの取扱い要領 パルス出力ブロックの取扱い要領 1軸、2軸位置決めユニットの取扱い要領 三菱 ID システム D シリーズ接続ブロックの取扱い要領 JY992D33301 JY992D17101 JY992D59701 JY992D27101 JY992D61801 JY992D71401 JY992D71501 JY992D46701 JY992D39201 ハンディプログラミングパネルの操作要領 ハンディプログラミングパネルの操作要領 プログラミングソフトの操作要領 プログラミングソフトの操作要領 計算機リンクサポートソフトの取扱い要領 ファイル変換ソフトの操作要領 バッファメモリモニタリングソフトの操作要領 位置決めプログラミングソフトの操作要領 位置決めティーチングパネルの操作要領 FX-NYUM-TEX FX-KISO-TEX FX-STL-TEXT FX-SFC-TEXT FX-OYO-TEXT 入門編(¥600 税別) リレーラダー編(¥1,000 税別) ステップラダー編(¥1,000 税別) SFCプログラミング編(¥1,500 税別) 応用命令編(¥1,500 税別) 1 トレーニングスクールのご案内 全国15ヶ所で上記学習用テキストの内容に添ったトレーニングスクールを開催しております。 詳細につきましては、本製品のご購入店へお問合せいただくか、 「FXシーケンサ総合カタログ」 でご確 認ください。 形名,価格, トレーニング開催日程等につきましては、本製品のご購入店へお問合せください。 9 1. はじめに 特 長 1−2. FXシーケンサの主な特長 FXシリーズシーケンサのプログラミングに関する特長は次のとおりです。 プログラミング 言語 【全シリーズ、 3種類のプログラミング言語をサポート】 (☞1−3) FXシリーズシーケンサでは、 プログラムのベースとなるリストプログラム方式のほか、 グラフィック画 面上にラダーシンボルを作図する回路プログラム方式,機械の動作の流れに応じたシーケンス設計 が行えるSFC (シーケンシャルファンクションチャート)方式によるプログラミングが行えます。 また、 これらのプログラムは相互変換も可能であり、 リストプログラムや回路プログラムについても一 定のルールに従って作成することでSFC図への逆変換も実現しています。 【高速入力の計数には、 1相あるいは2相の高速カウンタを利用できます】 (☞2−8) シーケンサ内の一般カウンタは、 演算周期上で動作するためその応答速度は通常数1 0Hz程度です。 これに対して、 FXシーケンサが内蔵している高速カウンタは特定の入力リレーからの高速パルスを 割込みで処理するため、演算時間とは無関係に数kHzの計数が行えます。 計数した結果は、高速カウンタ専用の比較命令を使ってただちに出力することができます。 さらにFX2, FX2Cシーケンサでは、高速カウンタの計数値に対して高速カウンタ割込みを行ったり、増 設機器として用意されたハードウェアカウンタを用いて最高50kHz (1相時) の高速パルスを取込む こともできます。 高速処理 【最新情報の取込みと出力には「入出力リフレッシュ」機能】 (☞FNC50) 一括リフレッシュ方式で動作しているシーケンサの入力端子情報は、 0ステップの演算前に一括して 入力イメージメモリに取込まれます。 また出力情報は、 END命令実行時に一括出力されます。 入力リフレッシュ命令を用いると、 シーケンス演算の途中で最新情報を得たり、演算結果をただちに 出力することができます。 【入力リレーの時定数変更には「入力フィルタ調整」機能】 (☞FNC50, 7−2) シーケンサの入力リレーには、 入力信号のチャタリングやノイズ対策として約10msのC−Rフィルタが 設けてあります。 しかし、入力リレーの内X0∼X7 (FX0, FX0SはX0∼X17) に関してはディジタルフィルタが用いられ ているため、 シーケンスプログラムによってフィルタ値を変更することができます。 【パルスキャッチ機能】 (☞7−2) 短時間のパルス信号を取込むための一つの方法として、パルスキャッチ機能があります。 パルスキャッチでは特定の入力リレーからの信号を監視し、入力とともに割込み処理で特殊補助リ レーをセットします。 パルスキャッチでは50μs以上のパルス幅があれば確実に入力を取込めるため幅広い用途で用い ることができます。 また、 特定のトリガ信号によって複雑な演算を割込みで優先処理したいばあいには、 次項の 「割込み」 機能が適しています。 【短時間パルスの取込みや優先処理には3種類の「割込み」機能】 (☞FNC03, 2−10) 外部信号をトリガとする 「入力割込み」 は、特定の入力リレーからの信号を監視して入力の立上り、 ま たは立下りで指定された割込みルーチンを最優先に処理します。 また、 FX2, FX2Cシーケンサの 「タイマ割込み」 は一定時間ごとに、指定された割込みルーチンを最優 先に処理します。 さらに、 FX2, FX2Cシーケンサの 「カウンタ割込み」 は、内蔵高速カウンタの現在値によって、指定され た割込みルーチンを最優先に処理します。 10 1. はじめに 特 長 【シーケンサの演算周期を一定化する 「コンスタントスキャン」 モード】 (☞7−2) サイクリック演算方式のシーケンサの演算周期は、 プログラムの実行内容によって変化します。 コンスタントスキャンモード(M803 9, D803 9) を用いると演算周期を一定化できるため、演算に同期し て実行される命令を一定の周期で処理することができます。 シーケンス制御をサポートする関連機能 【出力信号を一括してOFFする 「全出力禁止」 モード】 (☞7−2) 特殊補助リレーM8034を駆動することで、出力ラッチメモリがクリアされます。 これにより、 シーケンサは運転を継続した状態で出力リレー (Y) のみがすべてOFFになります。 【RUN中の出力状態をSTOP中にも保持する 「メモリホールドストップ」機能】 (☞7−2) 特殊補助リレーM8033を駆動することで、 RUN中の出力状態を保持したままでシーケンサをSTOP できます。 1 【プログラムを保護する 「キーワード」登録】 (☞1−5) 作成したシーケンスプログラムの誤書込み防止や盗用防止策として、 キーワードが登録できます。 また、 FX−10P/FX−20P形ハンディプログラミングパネルなどのオンライン操作に対しては、 キー ワードの指定方法でプログラムの保護レベルを設定することもできます。 このばあい、 「プログラムの 変更は禁止するがモニタや現在値変更は許可する」 といった指定も行えます。 【シーケンスプログラムに対する 「コメント」 の付加】 (☞1−5,周辺機器マニュアル) パラメータ設定により、 プログラムメモリ内に要素コメント (カナ/英数)エリアを確保できます。 また、漢字入力が可能な周辺機器側には、 プログラムに漢字コメントを付加して表示する機能もあり ます。 【RUN中のプログラム書込み】 (☞ハンディマニュアル) FX0N, FX2, FX2Cシーケンサでは、 シーケンサ運転中にプログラムを変更する機能を備えています。 これにより、機械を停止させることなく効率的に調整やプログラム変更を行うことができます。 【充実の基本性能】 (☞5章, 6章) FXシーケンサでは、 データの転送や比較、四則演算や論理演算、 データのローテションやシフトなど の基本的な応用命令をはじめ、入出力リフレッシュ,割込み,高速カウンタ専用比較命令,高速パル ス出力, などの高速処理命令、機械制御の定石動作をSFC制御上でパッケージ化したイニシャルス テート命令など、”基本機能,高速処理,使い易さ” を求めた仕様が用意されています。 応用命令群 【高度な制御も簡単に】 (☞5章, 6章) さらにFX2, FX2Cシーケンサにおいては、複雑なシーケンス制御をパッケージ化した便利命令を多数 用意することで、 シーケンスプログラム作成の負担軽減と入出力点数の節約が図られています。 また、 より高度な制御に対応するための浮動小数点演算やPID演算、 さまざまな外部機器との通信手段を 提供するRS−232C, RS−4 85アダプタのほか、 Aシリーズシーケンサを親局とするMELSECNET/ MINに対して子局接続し、集中管理による分散制御も構成できます。 【主な命令】 (☞6章) 応用命令種類とその対応はシーケンサのシリーズによって異なりますので一覧表でご確認ください。 《プログラムフロー》 ・条件ジャンプ(FNC00、 CJ) ・サブルーチンコール(FNC01、 CALL) ・割込み許可(FNC04、 EI) ・割込み禁止(FNC05、 DI) ・繰返し範囲開始(FNC08、 FOR) など 《転送比較》 ・比較(FNC10、 CMP) ・帯域比較(FNC11、 ZCP) ・データ転送(FNC12、 MOV) ・BCD変換(FNC18、 BCD) ・BIN変換(FNC19、 BIN) など 11 特 長 1. はじめに 応用命令群 《四則・論理演算》 ・BIN加算(FNC20、 ADD) ・BIN減算(FNC21、 SUB) ・BIN乗算(FNC22、 MUL) ・BIN除算(FNC23、 DIV) ・BIN増加(FNC24、 INC) など 《ローテション・シフト》 ・右回転(FNC30、 ROR) ・左回転(FNC31、 ROL) ・キャリ付右回転(FNC32、 RCR) ・ビット右シフト (FNC34、 SFTR) ・ワード右シフト (FNC36、 WSFR) など 《データ処理》 ・一括リセット (FNC4 0、 ZRST) ・デコード(FNC41、 DECO) ・エンコード(FNC42、 ENCO) ・ONビット数(FNC43、 SUM) ・平均値(FNC4 5、 MEAN) など 《高速処理》 ・入力リフレッシュ (FNC50、 REF) ・フィルタ調整(FNC51、 REFF) ・高速カウンタ比較(FNC53∼FNC55) ・パルス密度(FNC56、 SPD) ・パルス出力(FNC57、 PLSY) など 《便利な命令・外部機器用命令》 ・イニシャルステート (FNC60、 I ST) ・ティーチングタイマ(FNC64、 TTMR) ・交番出力(FNC66、 ALT) ・傾斜信号(FNC67、 RAMP) ・近回り制御(FNC68、 ROTC) ・テンキー入力(FNC70、 TKY) ・ディジタルスィッチ時分割取込み(FNC72、 DSW) 《複雑な制御》 ・平方根演算(FNC48、 SQR) ・浮動小数点演算(FNC49、 FLT) ・データサーチ(FNC61、 SER) ・データ整列命令(FNC69、 SORT) ・PID演算(FNC88、 PID) など 12 ・7セグメントデコーダ(FNC73、 SEGD) ・7セグメント時分割表示(FNC74、 SEGL) ・アスキー変換(FNC76、 ASC) ・特殊ユニット制御(FNC78、FROM,FNC79、TO) ・シリアルデータ転送(FNC80、 RS) ・HEX→ASCI I変換(FNC82、 ASCI) ・ASCI I→HEX変換(FNC83、 HEX) など 1. はじめに 特 長 【アナログ入出力制御】 ・アナログ入力 ・アナログ出力 ・PT−100温度センサ入力 ・熱電対温度センサ入力 特殊制御 【位置決め制御】 ・パルス出力ブロック (シーケンスプログラムで制御) ・位置決めユニット (位置決め専用命令で制御) ・高速カウンタ (ハードウェアカウンタ,逓倍機能付) ・カムスイッチ(レゾルバ検出) 1 【IDシステム制御】 ・ IDインタフェース (三菱IDシステム Dシリーズに対応) 詳細は各製品のマニュアルをご覧ください。 【簡易PC間リンク】 FX2N, FX2NCシーケンサを最大8台接続し、 その間で自動的にデータを交信します。 FX0N, 【並列リンク】 FX2, FX2C、 またはFX0Nシーケンサを1対1で接続し、 その間で自動的にデータを交信します。 【計算機リンク】 パソコンなどの計算機1台に対して、最大1 6台のFX2, FX2C, FX0N, FX2N, FX2NC, Aシーケンサを接 続し、計算機から直接シーケンサのデバイス指定をしてデータを交信します。 リンク・通信 【CC−L i nk】 Aシーケンサ、 またはQnAシーケンサを親局として、 子局 (リモートデバイス局) にFX0N, FX2N, FX2NC シーケンサを接続します。 CC−L i nkは、 FXシーケンサのほか、当社製インバータやACサーボあるいはパートナメーカのセンサ などが接続できるオープンネットワークです。 【I/Oリンク】 FX0Nシーケンサを親局とするリモートI/Oシステムです。 リモート側ユニットは、 MELSEC−I/O LINKリモートI/Oシステム用のユニット (Aシーケンサと同 一)が使えます。 【計算機リンクサポートソフトウェア】 FX0N, FX2, FX2C, FX2N, FX2NCシーケンサとパソコンを接続し、 データの読出/書込みを簡単に行うための、 Wi nd ows対応ソフトウェアパッケージです。 表計算等ソフトのExc e lと直接データの交信ができるほか、付属の通信関数をベーシックやC言語な どの開発ツールで制御することで、 より高度なインタフェースを開発することも可能です。 【無手順通信】 バーコードリーダ, プリンタ,パソコン,計測器などのRS−232C/RS−422インタフェース機器との間 で無手順のシリアル通信ができます。 詳細は9章をご参照ください。 13 概 要 1. はじめに 1−3.製品概要と対応するプログラミング言語 《製品の概要》 FX0 FX0S FX0N FX1 14 ●入出力14∼30点(端子台) ●バッテリレスのEEPROMメモリ内蔵 (800ステップ) ●基本命令20種,ステップラダー命令2種(SF C表現可),応用命令35種・50個 ●アナログボリューム1点,RUN/STOPス イッチ内蔵 ●入出力10∼30点(端子台) ●バッテリレスのEEPROMメモリ内蔵 (800ステップ) ●基本命令20種,ステップラダー命令2種(SF C表現可),応用命令35種・50個 ●アナログボリューム1点,RUN/STOPス イッチ内蔵 ●入出力24∼128点(端子台) ●バッテリレスのEEPROMメモリ内蔵(2000 ステップ) オプションカセット使用可。ただし MAX2000ステップ ●基本命令20種,ステップラダー命令2種(SF C表現可),応用命令42種・59個 ●アナログボリューム2点,RUN/STOPス イッチ内蔵 ●RUN中書込可,各種特殊機器接続可 ●入出力16∼128点(端子台) ●RAMメモリ内蔵(2 000ステップ)、 オプション カセット使用時はプログラム領域以外にも2 000ステップ分のコメント領域を確保可能 ●基本命令20種,ステップラダー命令2種(SF C表現可),応用命令35種・88個 FX2 ●入出力16∼256点(端子台) ●RAMメモリ内蔵(2 000ステップ)、 オプション カセット使用時は、 MAX8000ステップまで 可能 ●基本命令20種,ステップラダー命令2種(SF C表現可),応用命令96種・229個 ●RUN/STOPスイッチ内蔵 ●RUN中書込可,各種特殊増設機器接続可 FX2C ●入出力64∼256点(コネクタ) ●RAMメモリ内蔵(2 00 0ステップ),オプション カセット使用時は、 MAX8000ステップまで 可能 ●基本命令20種,ステップラダー命令2種(SF C表現可),応用命令96種・229個 ●RUN/STOPスイッチ内蔵 ●RUN中書込可、各種特殊増設機器接続可 《プログラム作成のポイント》 [周辺機器の機種選択] を ●FX1シーケンサは機種選択画面で“FX1” 選択してください。 ●FX1以外の機種は “FX2” を選択してください。 なお “FX0”, “FX0S”, “FX0N” など個別形名 が表示される周辺機器では各形名を選択 してください。 [要素と命令の範囲] FX0S, FX0Nシーケンサでは、入出力リ FX0, レーや補助リレーなどの各種要素や応用命令 は各シーケンサがサポートする要素や応用命 令の範囲内でプログラムしてください。 [プログラムステップ], [ パラメータ] 1−5項をご覧ください。 [シーケンスプログラムの互換性] 作成したシーケンスプログラムを他シリーズ へ流用(例:FX2で作成→FX1へ流用)するば あいは、必ず流用先機種の仕様範囲内であ ることを確認してください。具体的には次の項 目を確認します。 ・プログラムステップの容量 ・各種要素番号の範囲と機能の差異 ・応用命令,基本命令の種類とその機能内容 ・パラメータの設定内容 概 要 1. はじめに プログラム の方式 《リストプログラミング》 リストプログラムは、 シーケンス命令を “LD”, “AND” , “OUT” などと命令語で入力していく方 式です。 この方式は、 シーケンスプログラムを考える上で基本となる入力形態ですが、 制御内 容が視覚的に理解しにくい一面もあります。 例: ステップ 0 1 2 3 命令 LD OR AN I OUT 要素番号 X000 Y005 X002 Y005 対応する周辺機器 FXシリーズ用のプログラマおよび、 プログラミング ソフトウェア全部。ただし、 A6GPP/A6PHP形プロ グラマ用の「SFC入力専用ソフトウェア」ではサ ポートしていません。 1 《ラダー回路プログラミング》 ラダー回路プログラムは、 シーケンスシンボルと要素番号を使って、 グラフィック画面上にシー ケンス回路を作図していく方式です。 この方式では、 シーケンス回路が接点記号やコイル記 号で表現されるためプログラムの内容が理解しやすくなっています。 また、回路表示の状態で シーケンサの動作モニタを行うこともできます。 例: X000 X002 Y005 対応する周辺機器 パソコン,A7PHP/HGP,A6GPP/PHPとそれぞれ に対応したプログラミングソフトウェア Y005 上記リストプログラムを回路図で表現 《SFCプログラミング》 SFCプログラムは、機械の動作の流れに応じてシーケンス設計ができる入力方式です。 パソコンやA7PHP/HGPなどのグラフィック画面を備えた周辺機器では、下図のような画面 作図でシーケンス制御の流れを決めることができます。 例: イニシャルステート S 0 移行条件→ スタート S 20 上昇 対応する周辺機器 パソコン,A7PHP/HGP,A6GPP/PHPと、 それぞれ に対応したプログラミングソフトウエア 上限 ステート→ (工程) 下降 S 21 下限 S 22 上昇 上限 S 0へ戻る 互 換 性 上記3通りの手段によって作成されたシーケンスプログラムは、すべて命令語(リストプログラミング時の 内容)でFXシーケンサのプログラムメモリに格納されています。 したがって、下図のとおり各種の入力 方式によって作成されたプログラムをすべて相互変換して表示,編集することができます。(リストプロ グラムにおいても、 SFC変換のためルールに従うことにより命令語ベースのプログラムをSFC図対応 ソフトウエアで表示可能) リスト 回路 SFC 15 シーケンサの構成 1. はじめに 1−4. シーケンサを構成する各種の要素 シーケンサ内には多数のリレーやタイマ, カウンタが内蔵されていて、いずれも無数のa接点(常開接点) とb接 点(常閉接点) をもっています。 これらの接点とコイルを接続して、 シーケンス回路を構成します。矢印は信号の 受け渡しを示します。 ○○○○○○○○○○○○○○○○○○○○○○○ 入力端子または 入力コネクタ 入力リレー:X シーケンサが外部の入力スイッチから信号を受取る窓口が入力リレーであり、 要素記号はXを用います。 シーケンサの規模に応じた点数の入力リレーが内蔵されています。 1234 補助リレー:M シーケンサ内に は多数の補助リ レーがあり、要素 記号はMを用い ます。 ステート:S シーケンサ内に は多数のステート があり、 要素記号 はSを用います。 出力端子または 出力コネクタ タイマ:T シーケンサ内に は多数のタイマ があり、 要素記号 はTを用います。 カウンタ:C シーケンサ内に は多数のカウン タが内蔵されて います。 要素記号はCを 用います。 出力リレー:Y シーケンサが外 部の負荷を駆動 する窓口が出力 リレーであり、要 素記号はYを用 います。 シーケンサ内に は多数の出力リ レーがあります。 出力リレーの外部出力用接点(1個のa接点) シーケンサの規模に応じた点数の出力接点が内蔵され ています。 ○○○○○○○○○○○○○○○○○○○○○○○ また、 シーケンサには数値データを格納するための記憶要素として、 データレジスタ (D) などが用意されています。 16 シーケンサの構成 1. はじめに 入力 ︵X︶ ・出力 ︵Y︶ リレー ●各基本ユニットには、 X00 0∼X007, X0 10∼X017…,Y000∼Y00 7,Y010∼Y017…のように8進数の入 力リレー,出力リレーの番号が割当てられています。 増設ユニットや増設ブロックの番号も、基本ユニットの接続順にX, Yそれぞれ8進数の連続番号となり ます。 ●特定の入力リレーの入力フィルタには、 ディジタルフィルタが用いられており、 プログラムによってフィル タ値を変更することができます。 したがって、 高速取込みを目的とした用途には、 この入力リレー番号を 割当てます。 (フィルタ調整,入力割込み, 高速カウンタ,各種応用命令などの解説をご参照ください。) 1 タイマ ︵T ) ●タイマは、 シーケンサ内の1ms,10ms,100msなどのクロックパルスを加算計数し、 これが所定の設定 値に達したときに出力接点が動作するものです。 タイマはベースとなるクロックパルスによって、 0.001∼3276.7秒までが計測できます。 ●T192∼T199は、サブルーチンや割込みルーチン専用のタイマです。 ●T250∼T255は、 100msのベースクロックのタイマですが、 その現在値は積算形となっていますので、 タイマコイルの駆動入力がOFFしても現在値は保持され、積算動作となります。 ステート︵S 補助リレー ︵M ) ●シーケンサ内部に持っているリレーが補助リ レーです。入出力リレーとは異なり外部の入 力を取込んだり、 直接外部負荷を駆動するこ とのできないプログラム用リレーです。 ●シーケンサの電源を 断しても、 そのON/OFF 状態が記憶できる停電保持リレーもあります。 ) ●ステップラダーまたは、 SFC表現の工程番号と して用いられるリレーです。 ●工程番号として用いないときには、補助リレー と同様一般の接点/コイルとしてプログラムす ることもできます。また、 アナンシェータとして 外部故障診断用としても利用できます。 カウンタ︵C ) ●カウンタは、次の種類が用意されています。目的や用途によって使い分けができます。 【内部計数用】一般用/停電保持(キープ)用 16ビットカウンタ :アップ用,計数範囲 1∼32,767 32ビットカウンタ :アップ/ダウン用,計数範囲 −2,14 7,483,648∼+2,14 7,483,64 7 これらのカウンタは、 シーケンサの内部信号用であり、 その応答速度は通常数10Hz以下。 【高速カウント用】停電保持(キープ)用 32ビットカウンタ :アップ/ダウン用,計数範囲 −2,14 7,483,648∼+2,14 7,483,64 7 (1相1計数, 1相2計数, 2相2計数)特定の入力リレーに割付け。 高速カウンタはシーケンサの演算とは無関係に数kHzの計数が行えます。 データレジスタ ︵D︵V ) ︶︵Z︶ ●数値データを格納するための要素がデータレジスタです。FXシーケンサのデータレジスタはすべて 1 6ビット (最上位は正負ビット) ですが、 2つのレジスタを組合わせて32ビット (最上位は正負ビット) の数 値を扱うことができます。(数値範囲は「カウンタ」 を参照ください) 他の要素同様データレジスタにも一般用と停電保持(キープ)用があります。 ●データレジスタの中には、 インデックス (修飾)用と呼ばれるV,Zのレジスタがあります。 V,Zは次のように他の要素に付加して用います。 〔V,Z=5のばあい〕 D100V = D105 C20Z = C25 ←要素番号+V またはZの値 データレジスタやインデックスレジスタは、 タイマやカウンタの設定値の間接指定や、応用命令の中で 用いられます。 ポインタ ︵P︵I )︶ 定数︵K︵H ) ︶ ●シーケンサで用いるさまざまな数値のうち、 Kは 1 0進整数値、 Hは1 6進数値を表わしています。 これらは、 タイマやカウンタの設定値や現在 値あるいは、応用命令のオペランドとして用 います。 ●ポインタには、分岐用と割込み用があります。 分岐用ポインタは、 FNC00(CJ)条件ジャンプ やFNC0 1(CALL)サブルーチンコールの飛び 先を指定します。 割込用ポインタは、入力割込み, タイマ割込み またはカウンタ割込みの割込みルーチンを指 定します。 17 メモリとパラメータ 1. はじめに 1−5. プログラムメモリとパラメータの構造 FXシーケンサのメモリ構造は次のとおりです。 また、 メモリ内の各要素はそのイニシャライズ内容 によって、 A, B, Cの3通りに区分できます。 メモリ構造 《データメモリ》 内蔵メモリ内 システムメモリ ROM CPU ●データレジスタ C: 一般用 A: 停電保持用 A:RAMファイル用 B: 特殊用 A: 時計データ 《プログラムメモリ》 内蔵RAM内または、オプションカセット内 0ステップ → パラメータに より確 保 可 。 ただし機種に より設 定 でき る内容が異な ります。 { 800∼ → 8000ステップ A:パラメータ A:シーケンスプログラム A:コメント A:ファイルレジスタ ●タイマ現在値レジスタ C:100ms用 A: 積算100ms用 C:10ms用 A:1ms用 FX1, FX2, FX2Cの内蔵 RAMメモリの内 容は、 バッテリによって停電保 持されています。 FX0, FX0S, FX0Nはバッ クアップを必要としない EEPROMを内蔵してい ます。 オプションメモリカセット を装着すると内蔵メモリ は切り離され、 カセット側 が優先動作します。 ●カウンタ現在値レジスタ C: 一般用16ビット,32ビット A: 停電保持用16ビット,32ビット A: 高速カウンタ用 《ビットデバイスメモリ》 内蔵メモリ内 ●接点イメージメモリ C:入力リレー C:一般用補助リレー A:停電保持用補助リレー B:特殊補助リレー C:一般用ステート A:停電保持用ステート A:アナンシェータ プログラムメモリの設定範囲につきましては、 次ページの「①メモリ容量設定」 を参照ください。 メモリの種類 電源OFF 電源OFF→ON A バックアップ系メモリ B 特M,特D,インデックスレジスタ C その他非バックアップ系メモリ ●タイマ接点,計時コイル C:100ms用 A:積算100ms用 C:10ms用 A:積算1ms用 ●カウンタ接点、計数コイル、 リセットコイル C:一般用16ビット, 32ビット A:停電保持用16ビット, 32ビット A:高速カウンタ用 STOP→RUN RUN→STOP 変化せず クリア 初期値設定※ クリア C:出力 ラッチ メモリ C:出力リレー データメモリやビットデバイスメモリはシーケンサ の内蔵メモリ内に確保されています。電源OFF 時やRUN→STOP時にはクリアされますが、停電 保持用要素や一部の特殊要素はその内容がバッ テリによってバックアップされています。 なお、 EEPROMメモリを内蔵したFX0, FX0S, FX0Nの停電保持情報はシステムが管理し、自動 的にEEPROMに保存します。 変化せず※ 変化せず クリア M8033駆動時は変化せず ※一部のものはSTOP→RUN時にクリアされますのでご注意ください。 ※M8074は停電保持されています。 18 ●インデックスレジスタ B:Vレジスタ B:Zレジスタ メモリとパラメータ 1. はじめに パラメータ の構造 パラメータは、停電保持要素の範囲をはじめ、 コメントやファイルレジスタの領域を確保するため に用いられます。 なお、パラメータの設定や変更はすべてプログラミング機器(FX−10P/20P,パソコン, A7PHP など) から行います。設定方法および操作の詳細につきましては、各プログラミング機器のマニュ アルをご覧ください。 《パラメータの種類と設定内容》 ①メモリ容量設定 :シーケンスプログラムを格納するためのプログラムメモリは前述の とおり、 あらかじめシーケンサに内蔵されたメモリと、必要に応じて 取り付けるオプションメモリがあります。 メモリ容量設定では、 これ らの領域をどのような目的で使用するのかを指定します。 具体的に は、 FX0N, FX1, FX2, FX2Cシーケンサではこの領域をコメントや ファイルレジスタ (FX1除く) に割り当てることができます。 メモリの種類 単位:ステップ 機種 設定内容 ※1:オプションメモリカ シーケンスプログラム セットを装着すると内 FX0 ファイルレジスタ 蔵メモリは切り離され、 FX0S コメント 合計 カセット側が優先動 シーケンスプログラム 作します。 FX0N ※2 :プログラム容量は最 大2K、ただし、 オプ ションカセット使用時 にはプログラム領域 以外にも2 0 0 0ステップ 分のカナコメント領域 を確保できます。 ②ラッチ範囲設定 オプションメモリカセット※1 内蔵メモリ 0.8K FX-RAM-8(C) FX-EPROM-8 FX-EEPROM-8(C) − − − パラメータ固定 0∼2K 0∼2K 0∼2K (RAM不可) 0∼1.5K 0∼1.5K 0∼1.5K(RAM不可) コメント 0∼1.5K 0∼1.5K 0∼1.5K(RAM不可) 合計 FX1 FX-EEPROM-4(C) ファイルレジスタ シーケンスプログラム ファイルレジスタ コメント 合計 シーケンスプログラム FX2 ファイルレジスタ FX2C コメント 合計 1 0∼2K 2K 2K 0∼2K 0∼2K − − − 0∼2K 0∼4K 0∼4K 2K ※2 ※2 0∼2K 0∼4K 0∼8K 0∼2K 0∼2K 0∼2K 0∼2K 0∼4K 0∼4K 2K 最大4K,2Kも可 最大8K,2K/4Kも可 :シーケンサが停電保持する要素範囲を変更することができます。 (詳細は次ページを参照ください。) ③プログラムタイトルの登録 :プログラミング用の周辺機器がプリントアウトの際プログラムタイト ルとして用いる文字を設定できます。 ④キーワードの登録 :作成したシーケンスプログラムの誤書込み防止や盗用防止策とし て、 キーワードが設定できます。 なお、 FX−1 0P/FX−2 0P形ハンディプログラミングパネルのオン ライン操作に対しては、 キーワードの先頭文字をA, B, Cと区分す ることで3段階の保護レベルが設定できます。 ・全操作禁止(周辺機器操作不可) :A□□□□□□□または■□□□□□□□ ↑ ・盗用防止(モニタや現在値変更などに限定):B□□□□□□□ 先 頭はA, B, C ・誤書込み防止(読出し,モニタ,現在値変更などに限定):C□□□□□□□ 以外の英数字 キーワードの□部にはA∼Fまたは0∼9の英数字を8桁分指定します。 19 メモリとパラメータ 1. はじめに 《パラメータ設定の初期値と各シーケンサの設定要件》 項目 メモリ容量 初期値 FX1 2000ステップ カナコメント容量 0 ファイルレジスタ容量 ラッチ範囲 FX2(FX2C,FX0N,FX0S,FX0) プログラム容量 0 補助リレー[M] 500∼1023 500∼1023 ステート[S] 500∼ 999 500∼ 999 カウンタ[C](16) 100∼ 135 100∼ 199 カウンタ[C](32) 235∼ 254 220∼ 255 データレジスタ[D] 100∼ 127 200∼ 511 プログラムタイトル 未登録 キーワード 未登録 [FX0, FX0Sシリーズ]: “キーワード” のみが登録できます。 “メモリ容量” “ラッチ範囲” , および “プログラムタイトル” は初期値で使用 してください。 [FX0Nシリーズ] : “カナコメント容量” “ ,ファイルレジスタ容量” “ ,プログラムタイトル” および “キーワード”が変更できます。 “プログラム容量” および “ラッチ範囲” は初期値で使用してください。 : “ファイルレジスタ容量”以外はすべて変更できます。 [FX1シリーズ] [FX2, FX2Cシリーズ]:すべてのパラメータを変更することができます。 付 記 20 ●“メモリ容量” の変更に際しては、前ページの一覧表をご参照ください。 ●“ラッチ範囲” は各シーケンサによって変更できる要素範囲が異なりますので各要素解 説項目に従ってください。 また、停電保持固定領域となっている要素番号は、変更しな いでください。 注意事項 1. はじめに 1−6.注意事項(入出力処理,応答おくれ,二重コイル) 《入出力リレーの動作タイミングと応答おくれ》 ① [入力処理] 入力イメージメモリ 読込み スキャンタイム (演算周期) 入力端子のON/OFFを一括取込み 入力イメージを読出し、 ② [プログラム処理] プログラムに従って演算 各要素のイメージ メモリ更新 ③ [出力処理] 出力ラッチメモリ へ転送 一括入出力方式 (リフレッシュ方式) FXシーケンサは、①∼③の処理をくり返し実行して入出力 処理を行っています。 したがって、 シーケンサが行う制御には、入力フィルタや出 力素子の駆動時間の他に、 演算周期による応答おくれがあ ります。 1 〈最新情報で最新出力を得る〉 上記演算周期の途中で、 入力の最新情報がほ しいときや演算結果をただちに出力したいばあ いは、 「入出力リフレッシュ命令」 を用いることが できます。 出力要素 の駆動 《幅の狭い入力パルスは取込めない》 シーケンサの入力のON時間幅やOFF時間幅は、 シーケンサのサイクルタイムよりも長い時間を必要とします。 入力フィルタの応答おくれ1 0msを考慮し、 サイクルタイムを1 0msとすると、 ON時間, OFF時間はそれぞれ2 0msが 必要です。 したがって、 1, 000/(2 0+2 0) =2 5Hz以上の入力パルスは扱うことができません。 ただし、 シーケンサの特殊機 能や応用命令を用いると、 これを改善することができるようになっています。 OFF ON この入力ONは取込めます 入力ONが この入力OFFは 取込めません 取込めません OFF ON プログラム処理 プログラム処理 プログラム処理 入力処理 出力処理 ( 時間) 《二重出力(ダブルコイル)の動作》 入力処理 X001=ON X001 X002=OFF ☞ 最初 Y003 X002 二度目 入力処理 Y003=OFF ☞ Y003 プログラム処理 演算周期 〈改善のための便利な機能〉 ・高速カウンタ機能 ・入力割込み機能 ・パルスキャッチ機能 ・入力フィルタ値調整機能 これらの機能を用いることで、演算周期よりも 短いパルスの取込みが可能。 左図のように同一コイルY0 03が複数個所に使われているば あいを考えてみましょう。 一例として、 X001=ON, X002=OFFとします。 最初のY003はX001がONのため、 そのイメージメモリがON となり、出力Y004もONとなります。 Y004 Y003 Y004=ON 以上のとおり二重出力(ダブルコイル使用) を行うと、 後側のものが優先動作となります。 しかし、二度目のY003は入力X002がOFFのため、そのイ メージメモリはOFFに書換えられます。 したがって、 実際の外部出力はY0 03=OFF, Y0 04=ONとな ります。 〈対応策〉 ・接点をOR条件にしてプログラムする。 ・ 「SET」, 「RST」命令による出力駆動。 ・ 「ジャンプ命令」や「ステップラダー命令」の 利用。 21 1. はじめに MEMO 22 2. 各種要素の役割り と機能 2 . 各種要素の役割り と機能 本章では、 シーケンサが扱う数値や内蔵されている入出力リレー,補助リレー, ステート, カウンタ, データレジス タなどの各種要素(デバイス) について、 その役割りと機能を説明します。 この項目は、 シーケンサを取扱うための基礎となります。 2−1.数値の扱い、定数 ・・・・・・・・・・・・・・[K], [H] 2−2.FXシリーズ要素番号一覧 2 2−3.入出力リレーの番号と機能・・・・・・・[X], [Y] 2−4.補助リレーの番号と機能・・・・・・・・・[M] 2−5.ステートの番号と機能 ・・・・・・・・・・・[S] 2−6.タイマの番号と機能 ・・・・・・・・・・・・[T] 2−7.内部カウンタの番号と機能 ・・・・・・[C] 2−8.内蔵高速カウンタの番号と機能 ・・[C] 2−9.データレジスタの番号と機能 ・・・・・[D] 2−10.ポインタの番号と機能 ・・・・・・・・・・[P], [I] 23 2.各種要素の役割りと機能 定 数 2−1.数値の扱い,定数 [K], [H] シーケンサ が扱う数値 FXシーケンサでは、 それぞれの用途や場面によって5種類の数値が用いられます。 これらの役割 と機能は次のとおりです。 《10進数》(DEC:DECIMAL NUMBER) ●タイマやカウンタの設定値(K定数) ●補助リレー (M), タイマ(T), カウンタ (C),ステート (S) などの番号(要素番号) ●応用命令のオペランド中の数値指定や命令動作の指定(K定数) 《16進数》(HEX:HEXADECIMAL NUMBER) ●10進数同様、応用命令のオペランド中の数値指定や命令動作の指定(H定数) 16,384 8,192 4,096 2,048 1,024 512 256 128 64 32 16 8 4 2 1 《2進数》(BIN:BINARY NUMBER) ●タイマ, カウンタあるいはデータレジスタに対する 10進数入力の例 キーイン (10進) K 7 8 9 数値指定は、上記のとおり10進数や16進数で行 0:正の値 1:負の値 われますが、 シーケンサの内部では、 これらの数 値はすべて2進数で扱われています。 なお、 これ らの要素を周辺機器でモニタしたばあいには、 右 (2進) 図のとおり1 0進数に自動変換されて表示されます。 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 1 (16進切換えも可) 自動変換 1+4+16+256+512 =789 (10進) K 7 8 9 周辺機器のモニタ 《8進数》(OCT:OCTAL NUMBER) ●FXシーケンサの入力リレー,出力リレーの要素番号は8進数値で割当てられています。 したがって 「0∼7, 10∼1 7…70∼77, 100∼107」 と桁上げされます。 8進数では、 「8, 9」 は存在し ません。 《BCD》(BCD:BINARY CODE DECIMAL) ●BCDは、 10進数の各桁を構成する0∼9の数値を4ビットのBINで表現する方式です。各桁ごと の取扱いが容易であることから、 BCD出力形のディジタルスイッチや7セグメント表示器制御 などに用いられます。 《その他の数値(フロート値)》 ●FX2 (V3. 07以上)およびFX2Cシーケンサでは、高精度な演算を行うための浮動小数点演算 機能があります。 浮動小数点演算のためには2進フロート値が用いられるとともに、 これをモニタするための10進 フロート値が用いられます。 浮動小数点演算で用いられるこれらの数値の詳細につきましては後述の 「5−2.応用命令内 での数値の扱い」 をご参照ください。 24 定 数 2.各種要素の役割りと機能 定 数 K, H シーケンスプログラム上で数値を扱うばあいには、必ず定数K (10進数) または、定数H (16進数) を用います。 (ただし、入出力リレーの番号には8進数が用いられています) これらの役割と機能は次のとおりです。 《定数K》 ●「K」 は、 10進数の整数を表す記号であり、主にタイマやカウンタの設定値あるいは、応用命令 のオペランド中の数値指定に用います。 《定数H》 ●「H」 は、 16進数の表示記号であり、主に応用命令のオペランドの数値指定に用います。 なお、 プログラミング用周辺機器でも命令上の数値に関する操作では、 10進数はK、 16進数はH を数値に付加して入力します。 (例 K100, H64) 2 FXシーケンサが扱う数値は、下表のとおり変換することができます。 数値の変換 8進数 10進数 16進数 2進数 (OCT) (DEC) HEX (BIN) 0 0 00 0000 0000 0000 0000 1 1 01 0000 0001 0000 0001 2 2 02 0000 0010 0000 0010 3 3 03 0000 0011 0000 0011 4 4 04 0000 0100 0000 0100 5 5 05 0000 0101 0000 0101 6 6 06 0000 0110 0000 0110 7 7 07 0000 0111 0000 0111 10 8 08 0000 1000 0000 1000 11 9 09 0000 1001 0000 1001 12 10 0A 0000 1010 0001 0000 13 11 0B 0000 1011 0001 0001 14 12 0C 0000 1100 0001 0010 15 13 0D 0000 1101 0001 0011 16 14 0E 0000 1110 0001 0100 17 15 0F 0000 1111 0001 0101 20 16 10 0001 0000 0001 0110 : : : : : : : : : 143 99 63 0110 0011 1001 1001 入力リレー 定数Kおよび入出 主な 出力リレーの 力リレーを除く 定数Hなど 用途 要素番号 内部要素番号 シーケンサ内部の処理 BCD BCDディジタルスイッチ, 7セグメント表示器 25 要素番号一覧 2.各種要素の役割りと機能 2−2. FXシリーズ要素番号一覧 FXシリーズシーケンサの要素番号は各シリーズごとに次のとおり割り付けられています。 なお、基本ユニットに対して、入出力増設機器や特殊増設機器を接続したばあいの入力リレーや出力リレーの 番号は、 それぞれの製品のマニュアルでご確認ください。 FX0, FX0S 要素一覧 FX0S-10M FX0/FX0S-14M FX0/FX0S-20M FX0/FX0S-30M X 00∼X 05 X 00∼X 07 X 00∼X 13 X 00∼X 17 X 6点 8点 12点 16点 出力リレー Y 00∼Y 03 Y 00∼Y 05 Y 00∼Y 07 Y 00∼Y 15 4点 6点 8点 14点 入力リレー Y M 0∼M 495 補助リレー 【M 496∼M 511】 M8000∼M8254 16点 キープ用 57点 496点 M 一般用 特殊用 S 0∼S 63 ステート 64点 一般用 ---------------------------- S イニシャル用 S 0∼S 9 原点復帰用 S 10∼S 19 T タイマ 0∼T 55 T 32∼T 55 56点 100ms 24点 10ms T 内蔵ボリューム形 1点 特殊補助リレーM8028で D8013による間接指定 100ms→10msへ切換え 0∼255分割 16ビット アップ カウンタ C 0∼C 13 32ビット 高速可逆カウンタ 最大4点 【C14,15】 【C235,C241, 【C246∼ C244】 C D 14点 2点 C236∼C238,C242 一般用 キープ用 1相1入力 0∼D 29 【D 30,D31】 データレジスタ 1相2入力 D8000∼ 2点 30点 【C251∼ C249】 D8069 キープ用 C254】 2相入力 V,Z 2点 27点 D,V,Z 一般用 N ネスティング 0∼N 特殊用 7 P 8点 ポインタ 64点 4点 分岐ポインタ 入力割込み用ポインタ K 16ビット -32,768∼32,767 32ビット -2,147,483,648∼2,147,483,647 H 16ビット 0∼FFFFH 32ビット 0∼FFFFFFFFH 【 】内の要素は停電保持領域 注記 26 インデックス用 I00*∼I30* ジャンプ,サブルーチン用 マスタコントロール用 定数 0∼P 63 パラメータによる停電保持領域の変更はできません。 要素番号一覧 2.各種要素の役割りと機能 FX0N 要素一覧 入力リレー FX0N-24M FX0N-40M FX0N-60M 増設付き X000∼X015 X000∼X027 X000∼X043 X000∼X137 X 14点 24点 36点 96点 出力リレー Y000∼Y011 Y000∼Y017 Y000∼Y027 Y000∼Y127 10点 16点 24点 88点 Y M 0∼M 383 補助リレー 入 出 力 合 計 128 点 【M 384∼M 511】 M8000∼M8254 128点 67点 384点 キープ用 並列リンク用------------- M 親→子【M 400∼M 449】 一般用 2 特殊用 子→親【M 450∼M 499】 【S 0∼S 127】 ステート 128点 キープ用 ---------------------------- S イニシャル用 S 0∼S 9 原点復帰用 S 10∼S 19 T タイマ 0∼T 62 T 32∼T 62 T 63 63点 100ms 31点 10ms 1点 1ms T 特殊補助リレーM8028で 100ms→10msへ切換え 16ビット アップ カウンタ C 32ビット 高速可逆カウンタ 最大4点 0∼C 15 【C 16∼ 【C235∼C238】 【C246,C247, C 31】 C D 16点 16点 一般用 キープ用 0∼D127 【C251,C252, C249】 C254】 C244】 1相1入力 1相2入力 【D128∼D255】 【D1000∼D2499】 128点 ファイル用 1500点 データレジスタ 128点 【C241,C242, 2相入力 D8000∼ キープ用 D8129 V,Z 2点 38点 並列リンク用------------ D,V,Z 親→子【D230∼D239】 一般用 N ネスティング 0∼N 7 P 8点 ポインタ 0∼P 63 64点 特殊用 インデックス用 I00*∼I30* 4点 ジャンプ,サブルーチン用 マスタコントロール用 定数 ファイルレジスタ 子→親【D240∼D249】 分岐ポインタ 入力割込み用ポインタ K 16ビット -32,768∼32,767 32ビット -2,147,483,648∼2,147,483,647 H 16ビット 0∼FFFFH 32ビット 0∼FFFFFFFFH 【 】内の要素は停電保持領域 注記 パラメータによる停電保持領域の変更はできません。 27 要素番号一覧 2.各種要素の役割りと機能 FX1 要素一覧 入力リレー FX1-16M FX1-24M FX1-32M FX1-48M FX1-64M FX1-80M 増設付き X000∼ X000∼ X000∼ X000∼ X000∼ X000∼ X000∼ X007 X013 X017 X027 X037 X047 X137 X 8点 12点 16点 24点 32点 40点 96点 出力リレー Y000∼ Y000∼ Y000∼ Y000∼ Y000∼ Y000∼ Y000∼ Y007 Y013 Y017 Y027 Y037 Y047 8点 12点 16点 24点 32点 40点 Y M 補助リレー Y137 96点 0∼M 499 【M 500∼M1023】 M8000∼M8255 500点 524点 キープ用 ※2 60点 入 出 力 合 計 128 点 M 一般用 ※1 ステート 特殊用 S 0∼S 499 【S 500∼S 899】 【S 900∼S 999】 500点 一般用 ※1 400点 100点 キープ用 ※2 アナンシェータ用 ※3 ---------------------------S イニシャル用 S 0∼S 9 原点復帰用 S 10∼S 19 T 0∼T 199 T 200∼T 245 タイマ 200点 100ms T ルーチンプログラム用------- 46点 10ms T 192∼T 199 16ビット アップ カウンタ C 32ビット 高速可逆カウンタ 最大3点 0∼C 99 【C100∼ 【C235∼ C135】 C C237】 100点 36点 【C241,C244】 一般用 ※1 キープ用 ※2 1相1入力 ※2 D 0∼D 99 【D100∼D127】 データレジスタ 【C246,C247, 【C251,C252, C249】 1相2入力 ※2 C254】 2相入力 ※2 D8000∼ 28点 キープ用 ※2 D8069 100点 V,Z 2点 70点 D,V,Z 一般用 ※1 N ネスティング 0∼N 特殊用 7 P 8点 ポインタ 64点 3点 分岐ポインタ 入力割込み用ポインタ K 16ビット -32,768∼32,767 32ビット -2,147,483,648∼2,147,483,647 H 16ビット 0∼FFFFH 32ビット 0∼FFFFFFFFH 【 】内の要素は停電保持領域 注記 28 インデックス用 I00*∼I20* ジャンプ,サブルーチン用 マスタコントロール用 定数 0∼P 63 ※1:非停電保持領域。パラメータ設定により、停電保持領域に変更可能。 ※2:停電保持領域。パラメータ設定により、非停電保持領域に変更可能。 要素番号一覧 2.各種要素の役割りと機能 FX2, FX2C 要素一覧 FX2-16M FX2-24M FX2-32M FX2-48M FX2/FX2C-64M X000∼ X000∼ X000∼ X000∼ X000∼ X007 X013 X017 X027 X037 X 8点 12点 16点 24点 32点 出力リレー Y000∼ Y000∼ Y000∼ Y000∼ Y000∼ 入力リレー ①→ →① Y007 Y013 Y017 Y027 Y037 Y 8点 12点 16点 24点 32点 FX2-80M FX2C-96M FX2/FX2C-128M FX2C-160M 増設付き 入力リレー X000∼ X000∼ X000∼ X000∼ X000∼ X267(X177) X047 X057 X077 X117 X 40点 48点 64点 80点 184点(128点) 出力リレー Y000∼ Y000∼ Y000∼ Y000∼ Y000∼ Y047 Y057 Y077 Y117 Y267(Y177) 40点 48点 64点 80点 184点(128点) Y M 補助リレー 0∼M 499 【M 500∼M1023】 【M1024∼M1535】 M8000∼M8255 500点 524点 キープ用 ※2 512点(なし) 173点 入 出 力 合 計 256 点 2 並列リンク用------------- M 親→子【M 800∼M 899】 一般用 ※1 ステート キープ用 ※3 子→親【M 900∼M 999】 特殊用 S 0∼S 499 【S 500∼S 899】 【S 900∼S 999】 500点 一般用 ※1 400点 100点 ---------------------------S イニシャル用 S 0∼S 9 原点復帰用 S 10∼S 19 T 0∼T 199 タイマ 200点 100ms T ルーチンプログラム用------- キープ用 ※2 【T 246∼T 249】 【T 250∼T 255】 46点 10ms 4点 6点 1ms積算 ※3 100ms積算 ※3 T 192∼T 199 16ビット アップ カウンタ C 32ビット 可逆 0∼C 99 【C100∼ 32ビット 高速可逆カウンタ 最大6点 C200∼C219 【C220∼ C199】 C 【C235∼ C234】 100点 100点 20点 15点 一般用 ※1 キープ用 ※2 一般用 ※1 キープ用 ※2 D 0∼D199 【D200∼D511】 データレジスタ 【D512∼ 312点 キープ用 ※2 200点 親→子【D490∼D499】 【C246∼ C245】 N 0∼N 7 P 8点 ポインタ V,Z 2点 85点 RAMファイル用 2000点 (【D1000∼D2999】) I00*∼I50* I6**∼I8** 6点 3点 特殊用 ジャンプ,サブルーチン用 マスタコントロール用 定数 0∼P 127 128(64)点 2相入力 ※2 D8135 【D6000∼D7999】 一般用 ※1 子→親【D500∼D509】 キープ用 ※3 (2000点)ファイルレジスタ※3 ネスティング C255】 D8000∼ ファイル用 2000点 (なし) 【C251∼ C250】 1相1入力 ※2 1相2入力 ※2 【D1000∼D2999】 D999】 488点 並列リンク用----------D,V,Z アナンシェータ用 ※3 T 200∼T 245 インデックス用 I010∼I060 6点 (なし) 分岐ポインタ 入力割込み用ポインタ タイマ割込み用ポインタ カウンタ割込み用ポインタ K 16ビット -32,768∼32,767 32ビット -2,147,483,648∼2,147,483,647 H 16ビット 0∼FFFFH 32ビット 0∼FFFFFFFFH 【 】内の要素は停電保持領域 ( )内の内容は、バージョンV2. 30以下のFX2シーケンサの仕様(参考値) 注記 ※1:非停電保持領域。パラメータ設定により、停電保持領域に変更可能。 ※2:停電保持領域。パラメータ設定により、非停電保持領域に変更可能。 ※3:停電保持固定領域。領域特性変更不可。 29 入出力リレー 2.各種要素の役割りと機能 2−3.入出力リレーの番号と機能 [X], [Y] 入力リレー 出力リレー の番号 入 力 リ レ | / 出 力 リ レ | 入力リレー, 出力リレーの番号は基本ユニットが持つ固有の番号と、 増設機器に対してその接続順 に割当てられたものがあります。 これらの番号には8進数が用いられているため、 “8” “ ,9” といった 数値は存在しません。 なお、入出力リレー番号の割付け方法につきましては、各シーケンサのハンディマニュアルをご 覧ください。 形名 FX0S-10M FX0/FX0S-14M FX0/FX0S-20M FX0/FX0S-30M 増設時 増 FX0 入 X000∼X005 X000∼X007 X000∼X013 X000∼X017 設 入力リレー,出力リレーの番号は、 FX0S 力 6点 8点 12点 16点 な 8進数が用いられています。 − シリーズ 出 Y000∼Y003 Y000∼Y005 Y000∼Y007 Y000∼Y015 し 力 4点 6点 8点 14点 形名 合 FX0N-24M FX0N-40M FX0N-60M 増設時 増設時 FX1 ←各シリーズ共、入力 入 X000∼X015 X000∼X027 X000∼X043 X000∼X127 計 X000∼X137 FX0N 1 と出力の合計点数は 力 84点 96点 14点 24点 36点 2 シリーズ 「合計□□□点」以 出 Y000∼Y011 Y000∼Y017 Y000∼Y027 Y000∼Y77 8 Y000∼Y137 下としてください。 力 64点 96点 10点 16点 24点 点 形名 FX1/FX2-16M FX1/FX2-24M FX1/FX2-32M FX1/FX2-48M FX1/FX2-64M FX1/FX2-80M FX2-128M FX1 入 X000∼X007 X000∼X013 X000∼X017 X000∼X027 X000∼X037 X000∼X047 X000∼X077 FX2 力 8点 12点 16点 24点 32点 40点 64点 シリーズ 出 Y000∼Y007 Y000∼Y013 Y000∼Y017 Y000∼Y027 Y000∼Y037 Y000∼Y047 Y000∼Y077 力 8点 12点 16点 24点 32点 40点 64点 形名 合 FX2C-64M FX2C-96M FX2C-128M FX2C-160M 増設時 増設時FX2* 入 X000∼X037 X000∼X057 X000∼X077 X000∼Y117 X000∼X267 計 X000∼X267 FX2C 2 力 184点 184点 32点 48点 64点 80点 5 シリーズ 出 Y000∼Y037 Y000∼Y057 Y000∼Y077 Y000∼Y117 Y000∼Y267 6 Y000∼Y267 力 184点 184点 32点 48点 64点 80点 点 *シーケンサバージョンV2.10∼V2.30は、X000∼X177.128点、Y000∼Y177.128点、合計256点 外部電源 機能と役割 COM COM1 入力 信号 X000 X000 X000 プログラム例 X000 X001 Y000 Y000 Y000 負荷 Y000 常開接点 入力端子 X000 シーケンサ シーケンサが、外部のスイッチから信号 を受取る窓口が入力端子です。 シーケンサ内で、 シーケンサの入力端子 に接続されている入力リレー (X) は光絶 縁された電子的リレーであり、無数の常 開接点(a接点) と常閉接点(b接点) を 持っています。 これらの接点はシーケン サ内で自由に用いることができます。 この入力リレーはプログラムによって駆動 することはできません。 30 出力端子 Y000 常閉接点 シーケンサが、外部の負荷に信号を出す 窓口が出力端子です。 出力リレーの外部出力用接点(リレー接 点,トライアック,トランジスタなどの出力 素子) はシーケンサ内でこの出力端子に 接続されています。 出力リレーは電子的な常開接点,常閉接 点を無数に持っていてシーケンサ内で 自由に用いることができます。 なお、外部出力接点(出力素子) と内部 接点の動作のちがいは次ページのとおり です。 合 計 1 2 8 点 合 計 2 5 6 点 入出力リレー 2.各種要素の役割りと機能 入力リレー の動作 タイミング シーケンサは次に示す処理手順をくり返し実行することでシーケンス制御を行っています。 この ような一括入出力方式では1−6項にも述べたとおり、入力フィルタや出力素子の駆動時間の他に 演算周期による応答おくれがあります。 ●入力処理 シーケンサはプログラムの実行前にシーケンサの全入 力端子のON/OFF状態を入力イメージメモリに読込み ます。 プログラムの実行中に入力が変化しても入力イメージメ モリの内容は変化せず、 次のサイクルの入力処理時にこ の変化を読込みます。 なお、 入力接点がON→OFF、 OFF→ONに変化してもそ のON/OFFの判定までには入力フィルタによる応答おく れ (約1 0ms) があります。 (ディジタルフィルタが用いられて いる入力端子の入力フィルタは、 シーケンスプログラムに よって値を書換えることができます) 入力処理 ①読込 X000 X001 X002 入 入力 力 イメージ 端 メモリ 子 X000 ●プログラム処理 シーケンサはプログラムメモリの命令内容に応 じて、 入力イメージメモリやその他要素のイメー ジメモリから、 各要素のON/OFF状態を読出し、 0ステップから順次演算を行って、 そのつど結果 をイメージメモリに書込みます。 したがって、 各要素のイメージメモリはプログラ ムの実行に伴って逐次内容が変化しています。 なお、出力リレーの内部接点は出力イメージメ モリの内容により動作がきまります。 プログラム処理 ②読出 Y000 ③書込 ④読出 各要素 Y000 M 0 ⑤書込 イメージ 補助リレー メモリ ( 繰 り 返 し 動 作 2 ) 一 巡 の 動 作 所 要 時 間 を 演 算 周 期 と い い ま す 出力処理 ⑥出力 出 出力 力 ラッチ 端 メモリ Y000 Y001 Y002 ●出力処理 全ての命令の実行が終わると出力Yのイ メージメモリのON/OFF状態を出力ラッ チメモリへ転送し、 これがシーケンサの実 際の出力となります。 シーケンサ内の外部出力用接点は、出力 用素子の応答おくれ時間をおいて動作し ます。 子 以上のような方式を一括入出力方式(またはリフレッシュ方式) といいます。 31 補助リレー 2.各種要素の役割りと機能 2−4.補助リレーの番号と機能 [M] 補助リレー の番号 補助リレー (M)番号は次表のとおりです。 (番号は10進数割付け) ※1:非停電保持領域。パラメータ設定により、停電保持(キープ)領域に変更可。 ※2:停電保持領域(キープ)。パラメータ設定により、非停電保持領域に変更可。 ※3:停電保持領域(キープ)固定。 (RST、 ZRST命令で内容クリア可) ※4:非停電保持領域固定。領域特性変更不可 一般用 FX0 M 0∼M 495 FX0シリーズ 496点 ※4 FX0Nシリーズ 補 助 FX1シリーズ リ レ FX2 | FX2Cシリーズ M 0∼M 383 384点 ※4 − − M 500∼M1023 524点 ※2 M 0∼M499 500点 ※1 FX2 機能と 動作例 停電保持(キープ)用 停電保持(キープ)専用 特殊用 M 496∼M 511 M8000∼M8254 16点 ※3 57点 M 384∼M 511 M8000∼M8254 128点 ※3 − 67点 M8000∼M8255 60点 M 500∼M1023 M1024∼M1535 M8000∼M8255 524点 ※2 512点 ※3 173点 − M8000∼M8255 リンク用--------------- (V2.30以下) 親→子:M800∼M899 参考 子→親:M900∼M999 169点 シーケンサ内には多数の補助リレーがあります。 この補助リレーのコイルは、出力リレーと同様に シーケンサ内の各種要素の接点によって駆動されます。 補助リレーは、無数の電子的常開接点、常閉接点を持っていて、 シーケンサ内で自由に使うこと ができます。 ただし、 この接点によって外部負荷を直接駆動することはできず、外部負荷の駆動 は出力リレーを介して行います。 M100 一 般 用 M100 FX2およびFX2Cシーケンサの一般用補助リレーと停電 FX1, 保持(キープ)用補助リレーの配分は、周辺機器からのパラ メータ設定で変更することができます。 なお、 FX0, FX0S, FX0NシーケンサとFX2 (V3. 07以上), FX2Cシーケンサの一部は、停電保持専用です。 常開接点 M100 常閉接点 補助リレー回路 停 電 保 持 用 32 シーケンサの運転中に停電すると、出力リレーや一般の補助リレーはすべてOFFになります。 再運転時も入力条件がONのものを除き、 OFFとなります。 しかし、制御対象によっては停電直前の状態を 記憶して、再運転時にこれを再現したいことがあります。 停電保持用補助リレー (別名キープリレー) は、 このような目的で使うものであり、停電保持は、 シーケンサ に内蔵されたバックアップ用バッテリ (オプションの大容量コンデンサも選択可) によって行われます。 なお、 FX0, FX0S, FX0Nシーケンサには、バックアップ用バッテリを装備していませんが、電源 断時には、 内蔵のEEPROMメモリへバックアップ情報を待避させます。 停電保持専用の補助リレーを一般用補助リレーとして用いるばあいには、 プログラムの先頭ステップで RSTまたはZRST命令を用いて内容をクリアしてください。 補助リレー 2.各種要素の役割りと機能 停 電 保 持 用 X000 X001 左図は、 M6 0 0の動作を停電保持した例を示しています。 この回路で、 X000がONして、 M600が動作すれば、 X0 00が開路しても、 M600は動作を自己保持しています。 したがって、停電によってX0 00が開路しても、再運転時 には、 M6 0 0は動作をつづけています。 しかし、 再運転時 X0 0 1の常閉接点が開路していると、 M6 0 0は不作動とな ります。 M600 M600 シーケンサ 停電保持回路(自己保持方式) X000 X001 SET M600 RST M600 セット, リセット命令を用いたばあいは、左図のような回 路となります。 2 シーケンサ 停電保持回路(セット,リセット方式) 停電前の進行方向と同じ方向で再始動したいことがあ ります。 停 電 保 持 用 の 用 途 例 X000 X001 M600 右駆動指令 M601 左駆動指令 M600 X001 X000 X000=ON (左限)→M600=ON→右駆動→停電→ テーブル中間停止→再始動 (M6 0 0=ON) →X0 0 1=ON (右限)→M600=OFF、 M601=ON→左駆動 M601 シーケンサ内には多数の特殊補助リレーがあります。 (詳細☞「7.基本機能の補足事項」) これらの特殊補助リレーはそれぞれ特定の機能を持っており、次の2種類に分類されます。 特 殊 用 《接点利用形の特殊補助リレー》 コイルはシーケンサによって自動的に駆動されてお り、 ユーザはその接点を利用することができます。 《コイル駆動形の特殊補助リレー》 ユーザがコイルを駆動するとシーケンサが特定の 動きをするものです。 (例)M8000 :RUNモニタ (RUN中にON) M8002 :イニシャルパルス (RUN開始時に一瞬だけON) M8012 :100msクロックパルス (例)M8030 :BATT. LED消灯指令 M8033 :ストップ時の出力保持 M8034 :全出力禁止 M8039 :コンスタントスキャン 未定義の特殊補助リレーはユーザ側で用いない でください。 このうちコイル駆動時に有効になるものと、 END命令 実行後に有効となるものがありますので、 ご注意 ください。 33 ステート 2.各種要素の役割りと機能 2−5. ステートの番号と機能 [S] ステートの 番号 ステート (S)番号は次表のとおりです。 (番号は10進数割付け) ※1:非停電保持領域。パラメータ設定により、停電保持(キープ)領域に変更可。 ※2:停電保持領域(キープ)。パラメータ設定により、非停電保持領域に変更可。 ※3:停電保持領域(キープ)固定。 (RST、 ZRST命令で内容クリア可) ※4:非停電保持領域固定。領域特性変更不可。 一般用 FX0 ス テ FX0Sシリーズ | ト FX0Nシリーズ FX1,2 FX2Cシリーズ 機能と 動作例 イニシャル用 停電保持 停電保持 原点復帰用 (キープ)用 (キープ)専用 イニシャル用 − − − − S 0∼S 63 S 0∼S 9 64点 ※4 (10点) − − − S 0∼S499 S 0∼S 9 S10∼S19 S 500∼S 899 500点 ※1 (10点) (10点) 400点 ※2 − S 0∼S127 S 0∼S 9 128点 ※3 (10点) − − − S900∼S999 100点 ※2 ステートSは工程歩進形の制御を手軽にプログラムする上で重要な要素であり、ステップラダー 命令STLと組合わせて用いられます。 S 2 イニシャル ステート スタート X000 S 20 Y000 下降 下限 X001 S 21 Y001 クランプ 左図のような工程歩進制御において、 スタート信号X0 00がONす るとステートS20がセット (ON) され、下降用電磁弁Y000が働き ます。その結果、下限リミットスイッチX001がONするとステート S21がセット (ON) され、 クランプ用電磁弁Y001が働きます。 クランプ確認リミットスイッチX002がONするとステートS22が セット (ON) します。 ステートは動作が移行するに伴って自動的に移行元がリセット (OFF) されます。 一 般 用 / キ ー プ 用 クランプ X002 S 22 Y002 上昇 上限 X003 一般用ステートはシーケンサの電源が切れるとすべてOFFにな りますが停電保持 (キープ) 用ステートは、停電直前のON/OFF 状態を記憶していますので、途中工程からの運転も可能です。 ●ステートは補助リレーと同様に無数の常開接点、常閉接 点を持っていてシーケンスプログラム内で自由に用いる ことができます。 また、ステップラダー命令に対して用い ないときはステート (S) も補助リレー (M) と同様に一般の シーケンスの中で用いることができます。 (右図) ●FX1, FX2およびFX2Cシーケンサの一般用ステートと停 電保持(キープ)用ステートの配分は周辺機器からのパ ラメータ設定で変更することができます。 なお、 FX0Nシーケンサは全点停電保持専用です。一般 用として用いるばあいはプログラムの先頭に右図のよう なリセット回路を設けてください。 34 アナンシェータ用 X001 S10 S10 M30 Y005 M8002 0 FNC 40 ZRST S 0 イニシャル パルス S0∼S127を初期化 S127 ステート 2.各種要素の役割りと機能 アナンシェータ用ステートは、外部故障診断用の出力としても用いることができます。 例えば下図のような外部故障診断回路を作り、特殊データレジスタD804 9の内容をモニタすると、 S900∼ S999のうちの動作ステートの最小番号が表示されます。 複数の故障が発生しているときは、最小番号の故障を解除してから次の故障番号を知ることができます。 M8000 ●特殊補助リレーM804 9を駆動するとモニタが有効と なります。 M8049 RUNモニタ Y000 X000 ア ナ ン シ ェ ー タ 用 X001 X002 X003 X004 M8048 X005 FNC 46 ANS T 0 K 10 S900 ●前進出力Y000を駆動してから前進端検出X000が1 秒以内に働かなければS900が動作します。 FNC 46 ANS T 1 K 20 S901 ●上限X0 01と下限X002が2秒以上同時に不作動であ れば、 S901が動作します。 FNC 46 ANS T 2 K100 S902 ●タクトタイムが10秒未満の機械で連続運転モード入 力X003がONしているときに、機械の1サイクル運転 中に動作するスイッチX004が働かなかったばあい にS902が動作します。 Y010 FNC 47 ANR P 2 ●S900∼S999のどれかがONすると特殊補助リレーM 8048が動作し、故障表示出力Y010が働きます。 ●外部故障診断プログラムによって動作したステートを リセットボタンX00 5でOFFにします。 X00 5をONするたびに若い番号の動作ステートが順 次リセットされます。 特殊補助リレーM8049を駆動していないときは、停電保持(キープ)用ステートとして一般ステート同様に シーケンスプログラム内で用いることができます。 35 タイマ 2.各種要素の役割りと機能 2−6. タイマの番号と機能 [T] タイマ(T)番号は次表のとおりです。 (番号は10進数割付け) タイマの 番号 ※1:特殊補助リレーM8028を駆動することで、 100ms→10msに切換えて使用。 FX0シーケンサはシーケンサバージョンV1. 01以上で対応。 ※2:特殊補助リレーM8028を駆動することで、 100ms→10msに切換えて使用。 ※3:停電保持 100ms形 0.1∼3276.7秒 10ms形 0.01∼327.67秒 T 0∼T 55 (T 32∼T 55) 56点 (24点) ※1 T 0∼T 62 (T 32∼T 62) 63点 (31点) ※2 FX0 FX0Sシリーズ タ イ マ FX0Nシリーズ 1ms形 0.001∼32.767秒 100ms積算形 0.1∼3276.7秒 − − T 63 − 内蔵ボリューム形 0∼255の数値 D8013の間接指定 1点 VR1:D8013(D8030) VR2:D8031の間接指定 T 0∼T199 FX1シリーズ 200点 − ----------------- FX2 FX2Cシリーズ − T200∼T245 T246∼T249 ※3 T250∼T255 ※3 ルーチンプログラム用 46点 4点 積算形 6点 T192∼T199 割込み実行 特殊ブロックとして、 FX-8AV形ボリュームアダプタ が接続可能 タイマとして用いないタイマ番号は、数値記憶用のデータレジスタとして用いることもできます。 機 能 タイマはシーケンサ内の1ms, 10ms, 100msなどのクロックパルスを加算計数し、 これが所定の設 定値に達したときに出力接点が動作するものです。 設定値としてはプログラムメモリ内の定数 (K) を用いたり、 データレジスタ (D) の内容で間接指定 することができます。 (次ページ参照) X000 T200 T200 K123 一 般用 設定値(定数) データレジスタ も指定可 Y000 1.23秒 X000 設定値 現在値 タイマコイルT200の駆動入力X000がONすると T200用現在値カウンタは10msクロックパルスを 加算計数し、その値が設定値K123に等しくなると タイマの出力接点が動作します。 すなわち、出力接点はコイル駆動後1. 23秒で動作 します。 駆動入力X000がOFFしたり、停電するとタイマは リセットされ出力接点は復帰します。 Y000 X001 T250 X002 積 算形 t1 X001 積算 時間 現在値 Y001 X002 36 T250 K345 設定値(定数) データレジスタ も指定可 Y001 RST t2 T250 t1+t2=34.5秒 積算時間 設定値 タイマコイルT250の駆動入力X001がONすると T250用現在値カウンタは100msクロックパルスを 加算計数し、その値が設定値K345に等しくなると タイマの出力接点が動作します。 計数途中で入力X001がOFFしたり、停電しても再 動作時は計数を続行します。 その積算動作時間は 34. 5秒となります。 リセット入力X0 02がONするとタイマはリセットされ出 力接点は復帰します。 タイマ 2.各種要素の役割りと機能 ルーチン内の注意 ●サブルーチンや割込みルーチン内ではT1 92∼T199のタイマを用いてください。 このタイマは、 コイル命 令実行時またはEND命令実行時に計時します。 これが設定値に達すると、 コイル命令実行時または、 END命令実行時に出力接点が動作します。 一般のタイマは、 コイル命令実行時にのみ計時(次ページ参照) を行うため、 ある条件下においてのみ コイル命令が実行されるサブルーチン内で用いると計時が行われれず正常に動作しません。 ●サブルーチンや割込みルーチン内で、 1ms積算タイマを用いると、 これが設定値に達した後、最初のコ イル命令実行時に出力接点が動作しますので注意が必要です。 設定値の 指定方法 《定数指定(K)》 X003 定数(10進整数) 10秒タイマ T10 K100 T10は100ms (0. 1 s)ベースのタイマです。 定数として1 00を指定することで0. 1 s×100=10 s のタイマとして働きます。 2 《間接指定(D)》 X001 X003 FX0,FX0S, FX0Nシーケ ンサの扱い FNC 12 MOV T10 K100 D 5 D 5 D5=K100 10秒タイマ 間接指定するデータレジスタの内容は、 あらかじ めプログラム上で書き込むか、 ディジタルスイッ チなどで取り込んでおきます。 FX1, FX2, FX2Cでは停電保持(キープ)用レジ スタを指定したばあい、 バッテリ電圧が低下する と設定値が不定になりますので注意が必要です。 《内蔵ボリュームを用いた設定値の間接指定》 応用例 基本例 X003 M8000 T10 D8013 (0∼25.5秒) アナログボリューム値格納 レジスタ(0∼255の整数) RUNモニタ X003 FNC 22 MUL D8013 K 2 D0(D1) D8013(VR1)の値 ×2→D0(D1)へ転送 (0∼51秒) T10 D 0 レジスタの内容をn倍することで設定値の 範囲を変更できます(最大値は32,767以下) D1は他のプログラムで用いないでください。 《10ms形タイマの扱い》 FX0 (V1. 0 1以上) , FX0S, FX0Nシーケンサの 1 0msタイマは、特殊補助リレーM802 8をプロ グラム上で駆動することで、 100msタイマの 一部が10msクロックベースで動作するタイ マに変更されます。 数値要素と しての扱い M8000 RUNモニタ X003 M8028 T32 K100 1秒タイマ タイマの現在値は数値として応用命令などで用いることができます。 数値要素としての扱いにつきましては、 「2−7.内部カウンタの番号と機能」 をご参照ください。 37 タイマ 2.各種要素の役割りと機能 タイマ動作 の詳細と タイマ精度 割込み実行形タイマを除くタイマはコイルが駆動されてから計時が始まり、 タイマがタイムアップ した後の最初のコイル命令実行時に出力接点が動作します。 入力処理 X010 X010=OFF→ON 計時動作(演算周期が長いばあい、自動的に複数 クロックを計数します) ここでは接点は 動作しません タイマ計時開始 T 0 K12 T 0 1.2秒 タイム アップ Y010 第1サイクル 第2サイクル T 0 接点動作 Y010 ON 第nサイクル 第n+1サイクル 上の動作図から、 コイルを駆動してから接点が動作するまでのタイマ接点の動作の精 度は概略次式で示されます。 α :1ms,10ms,100msタイマに応じて0. 001,0. 01,0. 1 (秒) +T0 −α T :タイマ設定時間(秒) T0:演算周期(秒) タイマコイルよりも接点を先にプログラムすると、最悪時に+2T0になります。 なお、 タイマの設定値が0のときは、次のサイクルのコイル命令実行時に出力接点が動 作します。 また、割込み実行形の1msタイマはコイル命令実行後、割込みで1msクロッ クパルスを計数しています。 T 38 タイマ 2.各種要素の役割りと機能 《オフディレイタイマ》 動作例 X001 T 5 Y000 X001 Y000 X001 T 5 K200 Y000 T5 (20秒) 《フリッカ (点滅)》 X001 X001 T 2 2秒 1秒 2秒 T1 T2 T1 T 1 K20 T 1 T 2 K10 2 Y000 T 2 ( Y000 1演算周期 ) このほか、 FNC66 (ALT)命令によってフリッカ動作を行うこともできます。 《応用命令FNC65を使ったマルチタイマ》 FX2, FX2Cシリーズ この命令で、 オフディレイタイマ, ワンショットタイマ, フリッカタイマを手軽に作ることができます。 X000 FNC 65 STMR S・ m D・ T 10 K100 M 0 S・ で指定され ●mで指定された値が たタイマの設定値となります。 この例では10秒になります。 X000 M 0 10秒 10秒 ●M0はオフディレイタイマです。 M 1 10秒 10秒 ●M1は入力ON→OFF後のワンショット タイマです。 M 2 10秒 ●M2, M3はフリッカ用であり、 下図のとおり 接続します。 M 3 X000 X000 M 2 M 1 M 3 FNC 65 STMR T 10 K100 M 0 ●M3を左図のとおりに接続するとM2, M1がフリッカ出力となります。 ●X000をOFFにすると設定時間後M0, M1,M3はOFFになり、 T10もリセット されます。 ●ここで用いられたタイマは他の一般の 回路では重複使用しないでください。 このほか、 FNC64 (TTMR) ティ−チングタイマ命令を用いるとスイッチの入力時間に応じたタイマ 時間設定を行うこともできます。 39 タイマ 2.各種要素の役割りと機能 《短時間パルス幅の測定》 FX2, FX2Cシリーズ 積算形の1msタイマまたは特殊データレジスタD8099 (高速リングカウンタ) を用いると、 1ms単位 または0. 1ms単位で短時間のパルス幅を測定することができます。 SW COM RUN X010 測定準備 X000 X001 SW(X000,X001) シーケンサ この時間幅を測定する ―1msタイマを用いたとき― ―D8099を用いたとき― X010 FNC 06 FEND I 001 M8000 X010 RST T246 RST M 0 RST D 0 T246 K32767 FNC 03 IRET I 100 X010 FNC 12 MOV SET M 0 M8000 FNC 06 FEND リセットイメージ 解除 I 001 X010 T246 D 0 M 0 測定完了 RST D8099 RST M 0 FNC 03 IRET タイマ駆動 測定データ M8099 D8099動作 X010 I 100 FNC 12 MOV SET 測定データ D8099 D 0 M 0 FNC 03 IRET END T246 K 1 RST T246 タイマ停止 タイマリセット FNC 03 IRET END ●X000がONになるとI 001の割込みにより1ms タイマT24 6が起動されます。 ●X001がOFFになるとI 100の割込みにより、 T246の現在値が測定値格納用データレジ スタD0へ転送され、完了信号用M0が動作 します。 ●同左ですが1msタイマのかわりにD8099 を用いています。 ●この特殊データレジスタはM80 99が駆動 された次の演算サイクルより、 0. 1msク ロックをアップ計算しています。 その値が 32, 76 7を越えると再び0から計算します。 ●メインプログラム中には割込み許可命令(EI) をプログラムしておく必要があります。 40 2.各種要素の役割りと機能 MEMO 2 41 カウンタ 2.各種要素の役割りと機能 2−7.内部カウンタの番号と機能 [C] カウンタの 番号 カウンタ番号(C) は次表のとおりです。 (番号は10進数割付け) ※1:非停電保持領域。パラメータ設定により、停電保持(キープ)領域に変更可。 ※2:停電保持領域(キープ)。パラメータ設定により、非停電保持領域に変更可。 ※3:停電保持領域(キープ)固定。 (RST、 ZRST命令で内容クリア可) ※4:非停電保持領域固定。領域特性変更不可。 16ビットアップカウンタ 0∼32,767カウント 一般用 FX0 C 0∼C 13 カ FX0Sシリーズ ウ ン FX0Nシリーズ タ 14点 ※4 C 0∼C 15 16点 ※4 停電保持(キープ)用 停電保持(キープ)専用 − FX2 36点 ※2 100点 ※1 C100∼C199 FX2Cシリーズ C 16∼C 31 − 16点 ※3 − − 100点 ※2 停電保持(キープ)用 − 2点 ※3 − C 0∼C 99 一般用 C 14,C 15 C100∼C135 FX1シリーズ 32ビット アップ/ダウンカウンタ -2,147,483,648∼+2,147,483,647 − C200∼C219 C220∼C234 20点 ※1 15点 ※2 カウンタとして用いないカウンタ番号は、数値記憶用のデータレジスタとして用いることもできます。 《32ビットカウンタ アップ/ダウン切換用補助リレー番号》 (FX2, FX2Cシリーズ) カウンタ No. 方向切換え カウンタ No. 方向切換え カウンタ No. 方向切換え カウンタ No. 方向切換え カウンタの 特徴 C200 M8200 C209 M8209 C218 M8218 C226 M8226 C201 M8201 C210 M8210 C219 M8219 C227 M8227 C202 M8202 C211 M8211 − − C228 M8228 C203 M8203 C212 M8212 C220 M8220 C229 M8229 C204 M8204 C213 M8213 C221 M8221 C230 M8230 C205 M8205 C214 M8214 C222 M8222 C231 M8231 C206 M8206 C215 M8215 C223 M8223 C232 M8232 C207 M8207 C216 M8216 C224 M8224 C233 M8233 C208 M8208 C217 M8217 C225 M8225 C234 M8234 16ビットカウンタと32ビットカウンタの特徴は次のとおりです。計数方向の切換えや、 カウント範囲 等の使用条件に合わせて使い分けができます。 項目 計数方向 設定値 32ビットカウンタ アップ/ダウン切換え使用可(上表) 1∼32,767 -2,147,483,648∼+2,147,483,647 設定値の指定 定数Kまたはデータレジスタ 同左、ただしデータレジスタはペア(2個分) 現在値の変化 カウントアップ後変化しない カウントアップ後も変化(リングカウンタ) 出力接点 カウントアップ後動作保持 アップで動作保持、ダウンでリセット リセット動作 RST命令実行時にカウンタの現在値は0となり出力接点も復帰 現在値レジスタ 42 16ビットカウンタ アップ 16ビット 32ビット カウンタ 2.各種要素の役割りと機能 FX1, FX2およびFX2Cシーケンサの一般用カウンタと停電保持 (キープ)用ステートの配分は、周 辺機器からのパラメータ設定で変更することができます。 なお、 FX0, FX0S停電保持専用カウンタ を一般用として用いるばあいには、 プログラムの先頭スッテプでRSTまたはZRST命令を用いて 内容をクリアしてください。 機能と 動作例 16ビットのバイナリアップカウンタの設定値は、 K1∼K32, 767 (10進定数)が有効です。 K0はK1と同意義であり、初回計数時に出力接点が動作します。 X010 ビットカウンタ 一般用/停電保持用 16 ビット アップ/ダウンカウンタ 一般用/停電保持用 32 RST X010 C 0 X011 X011 C 0 K10 C 0 設定値(定数) 間接指定も可能 Y000 現在値 一般用カウンタは、 シーケンサの電源が切れると、 カウ ント値はクリアされますが、停電保持(キープ)用カウン タは、停電直前のカウント値を記憶していますので前 0 1 2 3 4 5 6 7 8 9 10 2 Y000 回値に積算するカウントが可能です。 ●計数入力X0 1 1によりC0コイルが駆動されるたびにカウンタの現在値は増加し、 1 0回目のコイル命令実行 時点で出力接点が動作します。 その後、計数入力X01 1が動作してもカウンタの現在値は変化しません。 ●リセット入力X0 1 0がONするとRST命令実行時点で、 カウンタの現在値は0になり出力接点も復帰します。 ●カウンタの設定値としては、上記のような定数Kによる設定のほかにデータレジスタ番号で指定すること ができます。例えばD10を指定しD10の内容が123であればK123の設定と同意義になります。 ●現在値レジスタに対し設定値以上のデータをMOV命令などで書込んだばあい、次の計数入力が入っ た時点でOUTコイルがONし、現在値レジスタが設定値となります。 32ビットのバイナリアップ/ダウンカウンタの設定値は、 −2, 14 7, 4 83, 64 8∼+2, 14 7, 4 83, 64 7 (10進定数) が有効です。 アップ/ダウンの方向は特殊補助リレーM8200∼M8234により指定します。 X012 M8200 X013 RST X014 C200 K-5 C200 X012 C200 Y001 設定値(定数) 間接指定も可能 アップ ダウン ●C△△△に対し、 M8△△△を駆動するとダウンカウン タ、非駆動のときはアップカウンタになります。 (次ペー ジ参照) ●設定値は定数KまたはデータレジスタDの内容により正 負の値を用いることができます。 データレジスタは連番 のものをペアにして3 2ビットデータとして扱います。 この ため、 D0を指定したばあいはD1, D0の2個が32ビット 設定値として扱われます。 アップ X013 X014 現在値 2 0 1 3 45 4 3 2 1 -1 既に出力が動作 していたばあい Y001 0 0 -2 -3-4 -4-3 -5 -5 -6 -6 -7 -7 -8 計数入力X0 14によりC2 0 0コイルが駆 動された時点でアップまたはダウン します。 ●出力接点はカウンタの現在値が −6→−5に増加した時点でセット され−5→−6に減少した時点でリ セットされます。 43 カウンタ 2.各種要素の役割りと機能 一般用/停電保持用 ●出力接点の動作とは無関係に現在値は増減しますが、 2, 147, 483, 647からアップカウントすると −2, 147, 483, 648になります。同様に−2, 147, 483, 648からダウンカウントすると2, 147, 483, 647に なります。 (このような動作をリングカウンタといいます) ●リセット入力X0 13がONするとRST命令実行時点でカウンタの現在値は0になり、 出力接点も復帰します。 ●停電保持用のばあい、 カウンタの現在値や出力接点動作、 リセット状態が停電保持されます。 ●32ビットカウンタはこれ1点で32ビットのデータレジスタとして用いることもできます。 また、 32ビットカウン タは16ビット応用命令の中の対象要素とはなりません。 ●現在値レジスタに対し設定値以上のデータを D MOV命令等で書込んだばあい、次の計数入力が入 るとカウンタはそのまま計数を続け接点も変化しません。 《定数指定(K)》 設定値の 指定方法 X003 ビットカウンタ 16 C 0 定数(10進定数) 1∼32, 767 100カウント K100 《間接指定(D)》 X001 X003 FNC 12 MOV C 0 K100 D 5 D 5 D5=100 100カウント 《定数指定(K)》 X003 ビットカウンタ C200 K43,210 32 《間接指定(D)》 X001 X003 カウンタの 応答速度 44 FNC 12 D MOV C200 K43210 D5(D6) D5(D6) 間接指定するデータレジスタの内容は、 あ らかじめプログラム上で書き込むか、 ディ ジタルスイッチなどで取り込んでおきます。 FX1, FX2, FX2Cでは、停電保持(キープ) 用レジスタを指定したばあい、バッテリ電 圧が低下すると設定値が不定になります ので注意が必要です。 定数(10進定数) −2, 147, 4 83, 648∼+2, 14 7, 4 83, 64 7 43210カウント 間接指定用データレジスタは2個がペア で扱われます。設定値の書込みには32 ビット命令を用いると共に、 データレジスタ が他のプログラムと重複しないように注意 してください。 カウンタは、 シーケンサの内部信号X, Y, M, S, Cなどの接点の動作をサイクリック演算しながら 計数します。例えばX011を計数入力としたばあい、 そのON時間やOFF時間の幅はシーケンサ のサイクルタイムよりも長い時間にする必要があります。 (通常は数10Hz以下) これに対し後述の高速カウンタは、特定の入力に対し割込み処理で計数を行うものであり、サイ クルタイムとは無関係に数kHzの計数が行えます。 カウンタ 2.各種要素の役割りと機能 数値要素と しての扱い カウンタやタイマは、設定値に応じて動作する出力接点を用いるばあいと、 カウント数(現在値) を 数値データとして制御に利用するばあいがあります。 カウンタの現在値レジスタの構造は下記のとおりであり、応用命令中のオペランドにカウンタ番号 を指定すると、 データレジスタと同様16ビットまたは32ビットのデータ格納要素として扱われます。 《カウンタ, タイマ(16ビットのみ)の現在値レジスタ,設定値レジスタの構造》 ※1 b15 符号 0:正数 1:負数 下位 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 16,384 8,192 4,096 2,048 1,024 512 256 128 64 32 16 8 4 2 1 ビット C( 16 16ビット 上位 b0 ●取扱い数値の範囲 16ビット:0∼32, 767 32ビット:−2, 14 7, 483, 648∼ +2, 14 7, 483, 64 7 ) 2 ※1:データレジスタの代用として用いるばあいのみ有効です。 b31 符号 0:正数 1:負数 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1,073,741,824 536,870,912 268,435,456 134,217,728 67,108,864 33,554,432 16,777,216 8,388,608 4,194,304 2,097,152 1,048,576 524,288 262,144 131,072 65,536 32,768 16,384 8,192 4,096 2,048 1,024 512 256 128 64 32 16 8 4 2 1 ビット︵C ︶ 32 32ビット 上位 下位 b0 《応用命令での利用例》 32ビットカウン タに対しては、 必ず D 命令を 用いてください FNC 12 MOV C 20 D 10 FNC 10 CMP K100 C 30 FNC 18 BCD C 10 K2Y000 C10 (現在値) の内容をBCD変換し、 Y000∼Y0 07に出力。 (7セグメント表示器を制御) FNC 22 MUL C 5 C5 (現在値) を2倍し、 (D5, D4) に転送する。 FNC 12 D MOV C200 D0(D1) FNC 11 D ZCP K100 K20000 C200 C20 (現在値)→D10へ転送。 10進整数100とC30 (現在値) を比較し結果を M0∼M2に出力。 M 0 K 2 D4(D5) C200 (現在値)→(D1, D0)へ転送。 M10 C2 00 (現在値) を、 10進整数100∼2 0000の帯域 と比較し、結果をM10∼M11に出力。 カウンタ, タイマを数値要素として活用いただくためには、後述の応用命令解説をご覧ください。 45 高速カウンタ 2.各種要素の役割りと機能 2−8.内蔵高速カウンタの番号と機能 [C] 1234567890 1234567890 1234567890 1234567890 1234567890 2−8−1.共通事項 高速カウン タの番号 各シーケンサの内蔵高速カウンタは、 カウンタ番号 (C) に応じて、入力X000∼X007 (X003) が下 表のとおり割付けされていて、 X000∼X007 (X003) は重複して用いることはできません。 なお、 高速カウンタとして用いない入力番号は、 一般の入力リレーとしてシーケンスプログラム内 で使うことができます。 また、高速カウンタとして用いない高速カウンタ番号は、数値記憶用の32 ビットデータレジスタとして用いることもできます。 U:アップ入力 D:ダウン入力 A:A相入力 B:B相入力 R:リセット入力 S:スタート入力 《FX0, FX0S, FX0Nシリーズ》 割込み 入力 1相1計数入力 1相2計数入力 2相2計数入力 C235 C236 C237 C238 C241 C242 C244 C246 C247 C249 C251 C252 C254 X000 U/D X001 U/D X002 U/D U/D U U U A A A R R D D D B B B R R R R U/D X003 U/D U/D R S S S FX0Nシーケンサの現在値は全点停 電保持されています。 FX0, FX0S シーケンサは、 C235, C241, C24 4∼C254のみ現在値が停電保持 されています。 いずれも、パラメータによる領域特 性変更不可。 (RST, ZRST命令に よるクリアは可能) 《FX1シリーズ》 現在値は全点停電保持されています。パラメータ設定による非停電保持領域への変更可能。 割込み 入力 1相1計数入力 1相2計数入力 2相2計数入力 C235 C236 C237 C238 C239 C240 C241 C242 C243 C244 C245 C246 C247 C248 C249 C250 C251 C252 C253 C254 C255 X000 U/D − − − U/D − − U/D − U U − U − − − − R − − R − D D − D − − − − − − − R − R − X003 − − − − − − − − X004 − − − − − − − − − X005 − − − − − − − − − X006 − − − − − − − − − X007 − − − − − − − − − X001 U/D X002 U/D S S R − R − B B − B − B B − B − A A − A − − − S − − FX1シリーズの2相カウンタにおけるB相入力は2端子の並列使用となっています。 《FX2, FX2Cシリーズ》 現在値は全点停電保持されています。パラメータ設定による非停電保持領域への変更可能。 割込み 入力 1相1計数入力 X000 U/D X001 X002 X003 X004 X005 X006 X007 1相2計数入力 2相2計数入力 C235 C236 C237 C238 C239 C240 C241 C242 C243 C244 C245 C246 C247 C248 C249 C250 C251 C252 C253 C254 C255 U/D U/D U/D U/D U/D U/D U/D U U U A A A R R D D D B B B U/D U/D R R R R R R U U A A U/D D D B B R R R R S S S R S S S 例えば、 FX2, FX2CシーケンサでC235はX000を入力とする、 1相1入力カウンタであり、割込みリセットや 割込みスタート入力は持っていません。 C235を用いるとC241, C244, C246, C24 7, C249, C251, C252, C254や割込みI 00□あるいは、 M8170 (パルスキャチ) を用いることはできません。 また、 C254はX003をA相入力、 X001とX002をB相入力、 X000を割込みリセット入力、 X006を割込みス タート入力とする2相2入力カウンタであり、 X000∼X003, X006が占有されます。 46 高速カウンタ 2.各種要素の役割りと機能 機 能 高速カウンタは前ページの表で示された特定の入力によって動作するものであり、 シーケンス演 算とは無関係に割込み処理によって高速動作を行っています。 このカウンタは、 32ビットのアップ/ダウン形バイナリカウンタですが、 アップ/ダウンの切換えの 方法により、次の3種類のものがあります。 項 目 1相1計数入力 1相2計数入力 アップ計数入力、ダウン計数入 M8235∼M8245を駆動するか 力の動作に応じて、自動的 しないかによりC235∼C245 にアップまたはダウンします。 計数方向の指定方法 はダウンまたは アップ動作を 行います。 計数方向のモニタ − 2相2計数入力 A相入力がONのときで、B相 入力がOFF→ONのときにアッ プ、ON→OFFのときにダウンし ます。 (1逓倍カウンタ) M8246∼M8255のモニタによりアップ(OFF)ダウン(ON)の方向を知 ることができます。 また、各高速カウンタの中には、割込みリセット入力や計数開始時点を割込み入力で決定するこ とのできるものもあり、前ぺージの表で示すR (リセット入力) , S (スタート入力) がこれにあたります。 《アップ/ダウン切換用特殊補助リレー番号》 種類 1相1計数入力 カウンタ№ UP/DN 指定 C235 C236 C237 M8237 C238 2 《計数方向モニタ用特殊補助リレー番号》 種類 カウンタ№ UP/DN モニタ M8235 C246 M8246 M8236 C247 M8247 C248 M8248 M8238 C249 M8249 C239 M8239 C250 M8250 C240 M8240 C251 M8251 C241 M8241 C252 M8252 C242 M8242 C253 M8253 C243 M8243 C254 M8254 C244 M8244 C255 M8255 C245 M8245 1相2計数入力 2相2計数入力 47 2.各種要素の役割りと機能 1234567890 1234567890 1234567890 1234567890 1234567890 高速カウンタ 2−8−2.1相高速カウンタの扱い 動作例 X010 X011 X012 1相1入力 X010 X011 X012 M8235 ダウン/アップ RST C235 リセット C235 K-5 M8244 ダウン/アップ RST C244 C244 ●C235はX012がONしているときに入力X000のOFF→ ONを計数します。 ●X0 1 1がONするとRST命令の実行時にリセットされます。 リセット D0(D1) ●C244はX012がONしているときで入力X006がONする と直ちに計数開始します。 計数入力はX000であり、 この 例での設定値は間接指定のデータレジスタ内容 (D1, D0) となります。 ●図のようにX011によりシーケンス上でリセットすることも できますが、 X001が閉じると直ちにリセットされます。 そのプログラムは不要です。 設定値は(D1,D0) ●M823 5∼M824 5の駆動/非駆動により、 カウンタC235∼C24 5はダウン/アップにかわります。 X011 X012 RST C246 C246 ●C246はX012がONしているときに入力X000のOFF→ ONによりアップカウント、入力X001のOFF→ONにより ダウンカウントします。 D2(D3) 1相2入力 設定値は(D3,D2) X011 X012 RST C249 C249 K1234 ●C24 9はX0 12がONしているときで、 入力X0 0 6がONする と直ちに計数開始します。 アップ計数入力はX000、 ダウン計数入力はX001です。 ●図のようにX0 1 1により、 シーケンス上でリセットすることも できますが、 X002が閉じると直ちにリセットされます。 そのプログラムは不要です。 ●C24 6∼C2 5 0のダウン/アップ動作はM824 6∼M82 50のON/OFF動作によりモニタできます。 48 高速カウンタ 2.各種要素の役割りと機能 前ページのカウンタC235の動作は次のとおりとなります。 X010 アップ X011 リセット入力 X012 スタート入力 アップ ダウン X000 計数入力 2 C235 1 現在値 0 3 4 5 4 3 2 1 0 -1 既に出力が動作して いたばあい 0 -2 -3 -4 -5 C235出力接点 -6 -7 -8 -7 -6 -4 -5 -3 2 計数入力X000により割込みでC235がアップまたはダウンします。 ●出力接点はカウンタの現在値が−6→−5に増加した時点でセットされ−5→−6に減少した時点でリセットさ れます。 ●出力接点の動作とは無関係に現在値は増減しますが、 2, 147, 483, 647からアップカウントすると −2, 14 7, 4 83, 648になります。同様に−2, 14 7, 4 83, 648からダウンカウントすると2, 14 7, 4 83, 64 7になり ます。 (このような動作をリングカウンタといいます) ●リセット入力X0 1 1がONするとRST命令実行時点でカウンタの現在値は0になり、 出力接点も復帰します。 ●停電保持用の高速カウンタでは、 カウンタの現在値や出力接点動作、 リセット状態が電源を切っても停 電保持(キープ) されています。 カウント 結果の出力 高速カウンタの現在値が設定値に達したときに、即座に出力処理を行いたいばあいは、次の応用 命令を用いてください。 《高速カウンタ用比較セット/リセット命令》 駆動入力 ●比較値に達すると割込んで出力を行います。 比較セット FNC 53 D HSCS K 5 C241 Y000 比較値 高速カウ 出力先 ンタ番号 シーケンサの出力はトランジスタ出力タイプを ご使用ください。 リレー出力タイプのばあいは機 械的な動作おくれ(約10ms)があります。 比較リセット FNC 54 D HSCR K 10 C241 Y000 比較値 高速カウ 出力先 ンタ番号 《高速カウンタ用帯域比較命令(FX2, FX2C)》 駆動入力 FNC 55 D HSZ K 10 K 20 C241 ●高速カウンタ用帯域比較命令です。 Y000 K 10 > C241 現在値 →Y000 ≦ C241 現在値 ≦ K20 →Y001 比較値1 比較値2 高速カウ 出力先 C241 現在値 > K20 →Y002 ンタ番号 一般の比較命令FNC10 (CMP)や帯域比較命令FNC11 (ZCP) は、 シーケンサの演算周期の中 で処理されるため、 その比較出力結果を得るまでには演算遅れがあり、 高速処理を要求される制 御ではこれが問題となるばあいがあります。 演算遅れを回避するためには、演算周期とは無関係 に割込み処理で比較が行え、 出力リレーへのダイレクト出力も可能な上記命令を用いてください。 49 高速カウンタ 2.各種要素の役割りと機能 1234567890 1234567890 1234567890 1234567890 1234567890 2−8−3.2相高速カウンタの扱い 2相2入力 32ビットアップ/ダウンのバイナリカウンタであり、現在値に対する出力接点の動作は前述の1相 高速カウンタと同じです。 《FX2, FX2Cの例》 X011 RST X012 C251 C251 C251 K1234 Y002 M8251 ●X012がONしているときにC2 51は入力X000 (A相), X001 (B相) の動作を割込みで計数します。 X011がONするとRST命令実行時にリセットされます。 ●現在値が設定値以上になるとY002が0Nし、設定値以下 に変化するとOFFします。 ●計数方向によりY003が0N (ダウン), OFF (アップ) します。 Y003 《FX2, FX2Cの例》 X011 RST X012 C254 C254 C254 D0(D1) Y004 M8254 Y005 ●X012がONしているときで、 X006がONすると直ちにC254 の計数が開始します。 その計数入力はX000 (A相) , X001 (B相) となっています。 ●X011によるシーケンス上のリセットのほかにX002がONす るとただちにC254はリセットされます。 ●現在値が設定値 (D1, D0) 以上になったときにY0 04が動作 し、設定値以下に変化するとOFFします。 ●計数方向によりY005が0N (ダウン), OFF (アップ) します。 ●このカウンタは、 A相入力がONのときでしかもB相入力がOFF→ONのときにアップ、 ON→OFF のときにダウンとなり、 C2 51∼C255のダウン/アップ状態はM8251∼M8255のON/OFF作動 によってモニタすることができます。 2相入力信号 の動作 ●2相式エンコーダは90゜ 位相差のあるA相, B相の出力を発生します。 これにより、 2相高速カウンタは、下図のとおり自動的にアップ/ダウンを行います。 ●この2相高速カウンタは、 1逓倍カウンタとして動作します。 A相 +1 +1 B相 →時間 正転時のアップ動作 カウント 結果の出力 50 A相 -1 -1 B相 →時間 逆転時のダウン動作 高速カウンタの現在値が設定値に達したときに、即座に出力を出したいばあいは、高速カウンタ 専用の比較命令を用います。 詳細は、 2−8−2項をご参照ください。 高速カウンタ 2.各種要素の役割りと機能 1234567890 1234567890 1234567890 1234567890 1234567890 2−8−4.高速カウンタ使用上の注意 FX1 シリーズ ●1相カウンタの最大周波数は5kHz (ON/OFF比率が50%/50%のとき)であり、入力端子番 号に重複がないようにして最大3点まで用いることができます。 ただし、 3点合計で5kHz以下と なります。 ●2相カウンタの最大周波数は1. 5kHzであり、 C2 51∼C2 54のどれか1点を用いることができます。 また、 C251とC235は併用することができます。 ただし、 2相の周波数の4倍の値と1相の周波数 の合計値は5kHz以下となるようにしてください。 ● D HSCSや D HSCR命令を併用するばあいは、 最大許容周波数や合計周波数は半分になり ます。 ●2相カウンタのB相入力は下図のとおり、 X001, X002の2入力を占有します。 2 U/D COM B A X000 X001 X002 X003 X010 X011 シーケンサ X010 X010 X011 X011 C235 K 0 RST C251 M8235が駆動されていませんのでX010がONのときにX000 の動作をアップカウントします C235 K 0 RST A相入力(X003), B相入力(X001, X002) によりアップ/ ダウンカウントします。 C251 X000 周波数 1kHz X001 X002 X003 周波数 0.5kHz 合計 1+0.5×4=3kHz ●1相カウンタと2相カウンタの合計周波数は左図のとお り計算し、 これを5kHz以下にする必要があります。 ●ただしX000と (X001∼X003)が同時に動作しないと きやX010とX011が同時にONしないような使い方の ばあい両者の周波数を加算する必要はありません。 ●高速カウンタは割込み入力と重複した入力番号を用 いることはできません。 ●これらのカウンタはカウンタとして用いないときは32 ビットのデータレジスタとして用いることができます。 なお、 C238∼C240, C242, C243, C245, C248, C250, C2 5 3, C2 5 5はカウンタとしては存在しませんが、 3 2ビット のデータレジスタとして使うことができます。 51 高速カウンタ 2.各種要素の役割りと機能 FX2 FX2C シリーズ 内蔵高速カウンタC235∼C255の一般的な周波数応答性は、 1相カウンタ周波数合計+ (2相カウ ンタ周波数合計) ×4≦最大20kHz (FNC53/FNC54命令未使用、 または非駆動時) となってい ますが、使用するカウンタや、 ダイレクト出力機能「FNC53 ( D HSCS)命令, FNC54 ( D HSCR) 命令, FNC55 ( D HSZ)命令」 により応答周波数が変化します。以下に各カウンタの最高周波数 を示しますので、 この値以下でご使用ください。 《高速カウンタの最高応答周波数》 値は高速カウンタ1点あたりの最高応答周波数を示します。 高速カウンタの 組み合わせ 1相カウンタの 同時駆動数 2相カウンタの 同時駆動数 FNC53,54,55 未使用時,非駆動時 FNC53,54駆動時 FNC55を1点または2点 駆動時 1相カウンタの最高応答周波数(kHz) 1相カウンタのみを3個まで同時駆動 X0,X2,X3 する場合のカウンタ入力端子番号→ 2相カウンタ1点 (1kHz以下) と1相カウンタ (1∼4点) 1 2 3 4 5 6 1 2 3 4 − − − − − − 1 1 1 1 2相カウンタのみ の使用 − − 1 2 1相カウンタのみ の使用 X1,X4,X5 X0,X2,X3 X1,X4,X5 X0,X2,X3 X1,X4,X5 7.0 3.5 2.5 7.0 4.0[B] 2.5 5.0 2.5 2.0 5.0 2.5 2.5 4.0 1.5 1.5 10 10[A] 6.6 2.5 2.5 2.5 5.0 4.0 3.0 2.0 1.5 1.5 1.5 4.0 2.0 2.0 1.0 1.5 1.5 1.0 3.0 1.0 1.0 1.0 2相カウンタの最高応答周波数(kHz) 2.0 2.0 2.0 1.5 2.0 1.3 ●FNC53∼55を使用するとカウンタの最高応答周波数は変化します。例えば、上表において、 C235 (X000入力) とC23 7 (X002入力)が同時にカウントできる最高周波数はそれぞれ10kHz ([A]点)ですが、 FNC53 ( D HSCS)やFNC54 ( D HSCR)命令を駆動すると、最高周波数は それぞれ4kHz ([B]点) に低下します。 ●FNC53, 54とFNC55を同時に駆動したばあいの最高周波数はFNC55駆動時の周波数になり ます。 52 高速カウンタ 2.各種要素の役割りと機能 FX0 FX0N シリーズ ①1相カウンタと2相カウンタの混用はできません。 ②1相カウンタの入力信号は、 1点あたり5kHz以下、 4点でも5kHz以下としてください。 ③2相カウンタは、 1点で2kHz以下です。 FX0S シリーズ ①1相カウンタと2相カウンタは混用できます。 ②1相カウンタの入力信号は、 1点あたり7kHz以下、 2相カウンタは1点で2kHz以下とし、すべての 合計が14kHz以下としてください。 共通の 注意事項 ●高速カウンタのコイル駆動用接点は、高速カウント時常にONしている接点を用いてください。 例:M8000(RUNモニタ) C235 計数の間常時ONしている接点を プログラムしてください。 X000 C235に対応する入力番号 2 C235 計数用入力リレーの番号を指定 すると高速カウンタは正確にカウ ントできません。 ●高速カウンタの動作をシュミレーションスイッチなどの有接点機器で行うと、スイッチのチャタリ ングにより、 カウンタが誤計測しますのでご注意ください。 ●高速カウンタのコイルをプログラムすると、 これに対応する入力リレーの入力フィルタは自動的 に50μs (初期値10ms) に変更されます。 したがって、 FX2, FX2CシーケンサではFNC51 (REFE)命令、 FX0, FX0S, FX0Nシーケンサで は特殊データレジスタD8020を用いる必要はありません。 なお、高速カウンタの入力として使われない入力リレーの入力フィルタは10ms (初期値) を 維持しています。 ●高速カウンタの入力として用いた入力リレー番号は、同じ入力を使う他の命令とは併用できません。 例)入力割込み処理(ポインタ) パルス密度命令FNC56 (SPD) ●すべての高速カウンタは、例えば現在値=設定値の状態で命令が実行されても計数入力パルス が与えられないかぎり、出力接点は動作しません。 ●高速カウンタの出力コイル(OUT C***) をON/OFFさせることにより、 カウントスタート/ ストップさせることができますが、 この出力コイルはメインルーチン上にプログラムしてください。 ステップラダー (SFC)回路内やサブルーチン、割込みルーチン内にプログラムすると、 これら ステップラダーやルーチンが実行されるまで、 カウントやストップができなくなります。 応答 周波数 高速カウンタに入力する信号は、前述の周波数以下にしてください。 この周波数を越える信号を 入力すると、WDTエラーが発生したり、並列リンクが正常に動作しなくなることがありますので、 注意が必要です。 53 データレジスタ 2.各種要素の役割りと機能 2−9. データレジスタの番号と機能 [D] データレジスタ (D) の番号は次表のとおりです。 (番号は10進数割付け) データレジ スタの番号 ※1:非停電保持領域。パラメータ設定により、停電保持(キープ)領域に変更可。 ※2:停電保持領域(キープ)。パラメータ設定により、非停電保持領域に変更可。 ※3:停電保持領域(キープ)固定。 (RST、 ZRST命令で内容クリア可) ※4:非停電保持領域固定。領域特性変更不可。 停電保持 (キープ)用 一般用 FX0 D 0∼D 29 FX0Sシリーズ 30点 ※4 FX0Nシリーズ デ | タ FX1シリーズ レ ジ FX2 ス タ FX2Cシリーズ D 0∼D127 128点 ※4 − D 0∼D 99 D100∼D127 100点 ※1 28点 ※2 D 0∼D199 200点 ※1 FX2 − 停電保持 (キープ)専用 D30,31 2点 ※3 ファイル用 − D128∼D255 D1000∼D2499 128点 ※3 1500点 特殊用 インデックス用 D8000∼D8069 27点 D8000∼D8129 38点 D8000∼D8069 − − D200∼D511 D512∼D999 D1000∼D2999 2000点 D8000∼D8137 312点 ※2 488点 ※3 D6000∼D7999 2000点 (RAMファイル) 85点 − D1000∼D2999 D8000∼D8135 2000点 69点 34点 V,Z 2点 ※4 リンク用------------ (V2.30以下) 親→子:D490∼D499 参考 子→親:D500∼D509 数値データを格納するための要素がデータレジスタであり、次のような種類があります。いずれも 16ビット (最上位は正負の符号) ですが、二つのデータレジスタを組合わせて32ビット (最上位は 正負の符号) の数値データを格納することもできます。 レジスタの 機能と構造 データレジスタ1個分(16ビット) では、 −32, 768∼+32, 767の数値が扱えます。 上位 b15 符号 0:正数 1:負数 D 0(16ビット) 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 16,384 8,192 4,096 2,048 1,024 512 256 128 64 32 16 8 4 2 1 ビット 16 下位 b0 データレジスタに対する数値の読出/書込は、 一般には応用命令を用いて行います。 また、 データアクセスユニット (表示器) やプログラミ ング装置から、直接読出/書込を行うことも できます。 隣接するデータレジスタ2個を使って、 3 2ビットデータを表現します。 (上位は老番、 下位は若番。 インデックス レジスタではVが上位、 Zが下位) これにより、 −2, 14 7, 4 83, 648∼+2, 14 7, 483, 64 7の数値が扱えます。 ビット 32 b31 符号 0:正数 1:負数 D 1(上位16ビット) D 0(下位16ビット) 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1,073,741,824 536,870,912 268,435,456 134,217,728 67,108,864 33,554,432 16,777,216 8,388,608 4,194,304 2,097,152 1,048,576 524,288 262,144 131,072 65,536 32,768 16,384 8,192 4,096 2,048 1,024 512 256 128 64 32 16 8 4 2 1 上位 下位 b0 32ビット指定をするばあいは下位側(例:D0) を指定すると上位側はこれにつづく番号(例:D1)が自動的 に占有されます。下位側には奇数,偶数どちらの要素番号でも指定できますが、周辺機器のモニタ機能な どを考慮し、下位側は偶数要素番号とすることをおすすめします。 54 データレジスタ 2.各種要素の役割りと機能 一般用/停電保持用 ●データレジスタに一度書込まれたデータは、他のデータを書込まない限り変化しません。 ただし、 RUN→ STOP時および停電時には、すべてのデータが0にクリアされます。 (特殊補助リレーM8033を駆動して おくと保持できます。) これに対して、停電保持 (キープ)用データレジスタは、 RUN/STOPおよび停電時にもその内容を保持 しています。 ●一般用と停電保持用の配分は、周辺機器のパラメータ設定により変更できます。 なお、停電保持専用の データレジスタを一般用として用いるばあいには、 プログラムの先頭ステップでRSTまたはZRST命令 を用いて内容をクリアしてください。 ●並列リンクアダプタ (FX−4 0AP/AW) を用いるとD490∼D509がリンク用として占有されます。 ファイル用 FX2, FX2Cシーケンサでは、周辺機器からのパラメータ設定により、 プログラムメモリ内に500点 ●FX0N, 単位のファイルレジスタを確保することができます。 ●FX2, FX2Cシーケンサでは、特殊補助リレーM8074を駆動し、サンプリングトレースの禁止を行うこと により、 D6000∼D7999をファイルレジスタとして扱うことができます。 また、 このレジスタは上記プログ ラムメモリ内に確保されるファイルレジスタと異なり、 シーケンサのシステムメモリ内に確保されること から、 「RAMファイルレジスタ」 として区別することがあります。 (停電保持要素) ●ファイルレジスタに対する読出し/書込は、一般のデータレジスタとは異なり、周辺機器または、 FNC 15 (BMOV),FNC80 (RS)命令のみがファイルレジスタを扱うことができます。 各シーケンサのファイルレジスタに対する機能は次表のとおりです。 FX0Nシリーズ FX2 FX2Cシリーズ FX2 (V2.30以下)参考 周辺機器 による 読出/書込 BMOV命令 による 読出 BMOV命令 による 書込 RS命令の ソース指定 ○ ○ × × ○ ○ ○ ○ ○ ○ × × 2 ファイルレジスタは、 あらかじめ定められたデータ テーブルや基準値などの格納に適しています。 ファイルレジスタの内容は、 FNC1 5 (BMOV) 命令に よって、 他の要素に一度読出してから利用してくだ さい。 プログラムメモリがオプションのEEPROMカセットのばあい、 プロテクトスイッチをOFFにしてから書込みます。 EPROMメモリのばあいは書込みできません。 特 殊用 ●特定目的のデータを書込んだり、 あらかじめ特定の内容が書込まれているデータレジスタです。 その内容は電源ON時に初期値にセットされます。 (一般には0にクリアされ、初期値を有するものはシス テムROMよりこれが書込まれます。) ●例えば、 D8000にはウオッチドックタイマの時間がシステムROMより初期設定されますが、 これを変更し たいときは転送命令(FNC12 MOV) によってD8000に目的の時間を書込みます。 M8002 イニシャルパルス FNC 12 MOV FNC 07 WDT K200 D8000 ウォッチドッグタイムを200msに設定 ウォッチドッグタイマリフレッシュ 特殊データレジスタの種類と機能につきましては、後述の「7.基本機能の補足事項」 をご覧ください。 55 2.各種要素の役割りと機能 データレジスタ インデックスレジスタV, Zは一般用データレジスタと同様、数値データの書込み/読出しが行える16ビット のレジスタであり、 V, Zの2点を有しています。 このインデックスレジスタは、一般のデータレジスタと同じ使い方ができるほか、応用命令のオペランド中 で他の要素番号や数値と組み合わせて用いることで、 要素の番号や数値の内容をプログラムで変更する ことができる特別なレジスタです。 なお、 LD, AND, OUTなどの基本シーケンス命令やステップラダー命令の要素番号とインデックスレジス タを組み合わせて使うことはできませんので注意してください。 16ビット V 16ビット Z V, Zそれぞれのインデックスレジスタは、 前述した一般のデータレジ スタと同様の構造を持っています。 32ビット V (上位) Z (下位) インデックス ︵修飾︶用 ●3 2ビットの応用命令中の要素を修飾するばあいや、 16ビット範囲を越える数値を扱うばあいは必ずZを用 います。 これは、上図に示すV, Zの組合わせのとおりFXシーケンサがZ側を3 2ビットレジスタの下位側として動作 するためであり、上位側であるVを指定しても修飾は行われません。 なお、 32ビットとして指定すると、 V (上位), Z (下位)が同時に参照されるため、 V (上位)側に別の用途 で使用した数値が残っていると、大変大きな数値となり演算エラーが発生します。 32ビット応用命令中で用いるインデックス値が16ビット数値範囲を越えないばあいであっても、 Zに対 する数値書込みは左図に示すとおり D MOVなどの32ビット命令を用い、 V (上位), Z (下位) を同時 に書換えてください。 32ビットインデックスレジスタの書込み例 FNC 12 K300 Z D MOV K300→(V,Z) 修飾可能な要素と、 その修飾内容は次のとおりです。 ● 10進数要素・数値 :M, S, T, C, D, KnM, KnS, P, K 例えば、 V=K5とし、 D20Vを実行すると、要素番号D25 (D20+5) に対して命令が実行されます。 また、定数の修飾も可能であり、 K3 0Vを指定すると、 1 0進数値K3 5 (3 0+5) として命令が実行されます。 ● 8進数要素 :X, Y, KnX, KnY 例えば、 Z=K8とし、 X0Zを実行すると、要素番号X10 (X0+8:8進数加算) に対して命令が実行され ます。要素番号が8進数で扱われる要素に対するインデックス修飾では、 V, Zの内容についても8進数 換算された数値の加算が行われます。 したがって、 Z=K10としたばあい、 X0ZはX12が指定されたことであり、 X10ではないということに注意 してください。 ● 16進数数値 :H 例えば、 V=K30とし、定数H30Vを指定すると、 H4E (30H+K30) として扱われます。 また、 V=H30とし、定数H30Vを指定すると、 H60 (30H+30H) として扱われます。 《修飾例と注意事項》 応用命令中のオペランドの修飾方法と使用上の注意事項につきましては、 「5-3. インデックスレジスタに よるオペランドの修飾」 をご参照ください。 56 データレジスタ 2.各種要素の役割りと機能 データレジスタは数値データを扱う、 さまざまな制御で利用できます。本項では、 これらの用途の 中から基本命令と応用命令の代表例をあげ動作を説明します。 なお、 データレジスタを有効に活用いただくためには、後述の応用命令解説をご覧ください。 動作例 《基本命令におけるデータレジスタ》 ●タイマやカウンタの設定値として指定する。 T 2 D 0 カウンタやタイマは指定されたデータレジスタの内 容をそれぞれの設定値として動作します。 C 10 D 20 《応用命令におけるデータレジスタ》 FNC12 (MOV)命令における動作例 ●カウンタの現在値を変更する。 FNC 12 MOV D 5 C 2 2 カウンタ (C2) の現在値をD5の内容に変更します。 ●タイマやカウンタの現在値をデータレジスタに読み出す。 FNC 12 MOV C 10 D 4 カウンタ (C10) の現在値をD4に転送します。 ●数値をデータレジスタに格納する。 16 ビット FNC 12 MOV 32 ビット FNC 12 D MOV K200 D 10 200 (10進数) をD10に転送します。 K80000 D10(D11) 80, 000 (10進数) をD10 (D11) に転送します。 32, 767を越える数値は、 32ビットであるため命令 はダブル データレジスタは下 D 命令を用います。 位側 (D1 0) を指定すると上位側 (D1 1) は自動的に 占有されます。 ●データレジスタの内容を他のデータレジスタに転送する。 FNC 12 MOV D 10 D 20 D10の内容をD20に転送します。 《未使用のタイマやカウンタをデータレジスタとして使う》 FNC12 (MOV)命令における動作例 プログラム中で使われていないタイマやカウンタは16ビットまたは32ビットの数値格納要素 (データレジスタ) として用いることができます。 FNC 12 MOV K300 T 10 300 (10進数) をT10に転送します。 FNC 12 MOV T 10 C 20 T1 0の内容をC2 0の現在値レジスタに転送します。 C 20 K300 このばあい、 T10はタイマとしての役割を持たずに、 データレジスタとして働いています。 32ビットとして使うばあいは、 データレジスタと同様16ビット要素(例:C1, C0など) 2個分で3 2ビット 数値を表現します。 なお、 3 2ビットカウンタ (例:C2 0 0など) は1個で3 2ビット数値の取扱いができます。 57 ポインタ 2.各種要素の役割りと機能 2−10.ポインタの番号と機能 [P], [I] ポインタの 番号 ポインタ (P), (I)番号は次表のとおりです。 (番号は10進数割付け) なお、入力割込み用ポインタを用いたばあい、 これに割当てられた入力番号は、同じ入力範囲を 使う 「高速カウンタ」や「パルス密度(FNC56)」 などとは併用できません。 分岐用 FX0 FX0Sシリーズ FX0Nシリーズ ポ イ FX1シリーズ ン タ FX2 FX2Cシリーズ FX2 P 0∼P 63 64点 P 0∼P127 *1 128点 P 0∼P 63 *1 (V2.30以下) 参考 64点 入力割込み用 I00□(X000) I10□(X001) I20□(X002) I30□(X003) 4 点 I00□(X000) I10□(X001) I20□(X002) 3 点 I00□(X000) I10□(X001) I20□(X002) I30□(X003) I40□(X004) I50□(X005) タイマ割込み用 カウンタ割込み用 − − − − − − I6□□ I7□□ I8□□ 6 点 3 点 I010 I040 I020 I050 I030 I060 6 点 − *1:P63は、 FNC (CJ)命令使用時のENDジャンプとなります。 機能と 動作例 分岐用ポインタと割込み用ポインタの役割りと動作は次のとおりです。 なお、 これらのポインタはすべて、応用命令と組合わせて用いますので、使用方法の詳細は各命 令の解説をご覧ください。 分岐用ポインタ (P) は、次の応用命令の中で用います。 ①FNC00 (CJ)条件ジャンプ X001 FNC 00 CJ ②FNC01 (CALL)サブルーチンコール X001 P 0 分 岐用 飛 越 し FNC 06 FEND ラベル P0 X0 0 1がONすると、 FNC0 0 (CJ) 命令 で指定したラベル位置まで飛越して これ以降のプログラムを実行します。 FNC 01 CALL ラベル P1 FNC 02 SRET P 1 メイン プログラム 飛 越 し 戻 る サブルーチン プログラム X001がONすると、 FNC01 (CALL)命令で指定 したラベル位置のサブルーチンを実行し、 FNC 02 (SRET)で元の位置に戻ります。 割込み用ポインタには次の3種類があり、応用命令FNC03 (IRET)割込みリターン, FNC04 (EI)割込み 許可, FNC05 (DI)割込み禁止と組み合わせて用います。 ①入力割込み用 割込み用 58 :特定の入力番号からの入力信号を、 シーケンサの演算周期の影響を受けずに取込 みできます。 この入力信号をトリガにして、割込みルーチンプログラムを実行します。 入力割込みは、演算周期よりも短い信号を扱うことができるため、 シーケンス制御途 中で必要な優先処理や短時間パルスを扱う制御で用います。 ②タイマ割込み用 :指定された割込みサイクル時間(10ms∼99ms) ごとに、割込みルーチンプログラム を実行します。 シーケンサの演算周期とは別にサイクリックな割込み処理の必要が ある制御で用います。 ③カウンタ割込み用:シーケンサ内蔵の高速カウンタの比較結果によって、割込みルーチンを実行します。 高速カウンタによる計数結果を優先する制御で用います。 3. 基本シーケンス命令解説 3 . 基本シーケンス命令解説 本章では、 FXシリーズシーケンサ共通の基本シーケンス命令の種類とその機能について述べます。 シーケンス制御がはじめての方には、学習用テキスト 「入門編」 「リレーラダー編」 , を準備いたしておりますので ご参照ください。 (☞1−1) 3−1.基本命令一覧 3−2.[LD], [LD I], [OUT]命令 3−3.[AND], [AN I]命令 3 3−4.[OR], [OR I]命令 3−5.[ORB]命令 3−6.[ANB]命令 3−7.[MPS], [MRD], [MPP]命令 3−8.[MC], [MCR]命令 3−9.[PLS], [PLF]命令 3−10. [SET], [RST]命令 3−11. カウンタ要素に対する [OUT], [RST]命令 3−12. [NOP], [END]命令 3−13. プログラム作成上の注意 59 命令一覧 3.基本シーケンス命令解説 3−1.基本命令一覧 FXシリーズシーケンサの基本シーケンス命令は、次の20種類です。 記号・呼称 機 能 [LD] 演算開始 ロード a接点 [LDI] 演算開始 ロードインバース b接点 [AND] 直列接続 アンド a接点 [ANI] 直列接続 アンドインバース b接点 [OR] 並列接続 オア a接点 [ORI] 並列接続 オアインバース b接点 [ANB] ブロック間 アンドブロック 直列接続 [ORB] ブロック間 オアブロック 並列接続 [OUT] コイル駆動 アウト 命令 回路表示と対象要素 ①接点扱いの命令 XYMSTC XYMSTC XYMSTC 動作保持 セット コイル命令 [RST] 動作保持解除 リセット コイル命令 [PLS] 立上り検出 パルス コイル命令 [PLF] 立下り検出 パルフ コイル命令 [MC] 共通直列接点用 マスタコントロール コイル命令 XYMSTC XYMSTC YMSTC SET YMS RST YMSTCDVZ PLS YM PLF YM MC N MCR N YM MPS MRD およびリセット [END] プログラム エンド 終了 MPP プログラム終了 0ステップへリターン 60 PLF SET RST ANB ORB MPS MRD プログラム消去またはスペース用 記憶読出 ポップ PLS ③接続命令 演算記憶 記憶読出 ORI 要素番号を伴います。 接点を通じて駆動します。 プッシュ [MPP] OR OUT [MPS] リード ANI ②コイル扱いの命令 [MCR] 共通直列接点 マスタコントロール 解除命令 リセット [MRD] AND XYMSTC ノップ [SET] LDI 要素番号を伴います。 [NOP] 無処理 LD MPP 要素番号を伴いません。 ④その他の命令 MC MCR NOP END LD, LD I, OUT 3.基本シーケンス命令解説 3−2. [LD], [LD I], [OUT]命令 記号,呼称 記号と機能 LD 機能 回路表示と対象要素 プログラムステップ ロード a接点論理演算開始 X,Y,M,S,T,C 1 LDI ロードインバース b接点論理演算開始 X,Y,M,S,T,C 1 OUT アウト コイルの始動 Y,M,S,T,C Y,M :1 T :3 S,特M :2 C :3∼5 ●LD, LDI命令は、母線につながる接点に用いられます。 その他、後述のANB命令と組合わされて、分岐の始まりにも使います。 ●OUT命令は、出力リレー,補助リレー, ステート, タイマ, カウンタに対するコイル駆動命令であり、 入力リレーに対しては用いません。 ●並列のOUT命令は、何度でも引きつづいて用いることができます。 (下図では、 OUT M100につづくOUT T0が該当) 命令解説 LD X000 Y000 X001 ☞ 母 線 タイマ, カウンタの プログラム OUT M100 LDI T 0 T 0 ☞ プログラ ミング Y001 K19 K LD OUT LDI OUT OUT SP 7 LD 8 OUT 0 1 2 3 4 X000 Y000 X001 M100 T 0 K 19 T 0 Y001 3 母線との接続 駆動命令 タイマ駆動命令 定数設定 プログラムステップは自動的に管理さ れます(SPはスペースキーのことです) ●タイマの計時コイルやカウンタの計数コイルに対するOUT命令後には定数Kの設定が必要です。 その他、 データレジスタ番号で間接指定することもできます。 ●定数Kの設定範囲および実際のタイマ定数、 OUT命令に対するプログラムスッテプ数 (含設定 値) は、 次表のとおりです。 タイマ,カウンタ 1msタイマ 10msタイマ 100msタイマ 16ビットカウンタ Kの設定範囲 実際の設定値 ステップ数 1∼32,767 0.001∼32.767秒 3 1∼32,767 1∼32,767 32ビットカウンタ -2,147,483,648∼+2,147,483,647 0.01 ∼327.67秒 0.1 ∼3,276.7秒 3 同左 3 同左 5 61 AND, AN I 3.基本シーケンス命令解説 3−3. [AND], [AN I]命令 記号,呼称 記号と機能 命令解説 機能 回路表示と対象要素 プログラムステップ AND アンド a接点直列接続 X,Y,M,S,T,C 1 ANI アンドインバース b接点直列接続 X,Y,M,S,T,C 1 ●AND, ANI命令は、 1接点の直列接続を行います。 直列接点の個数には制限なく、何度でも引きつづいて、 この命令を用いることができます。 ●OUT命令後、接点を通じて他のコイルにOUTすることを縦続出力といいます。 (下図のOUT M101とOUT Y004) このような縦続出力は、順序をまちがわなければ何度でも繰返すことができます。 また、 直列接点数や縦続出力回数に制限はありませんが、 DOS版のプログラミングソフトやA6G PP/A7PHPなどでは表示量やプリンタの印字機能に制限があります。 これらの周辺機器を用いるばあいは、 1行は10接点,1コイル以下,合計24行以下にすることを おすすめします。 AND プログラ ミング X002 X000 Y003 X003 ANI M101 ☞ T 1 Y004 ☞ AND MPS, MPP 命令の 関係 Y003 LD OUT LD OUT OUT X002 X000 Y003 Y003 X003 M101 T 1 Y004 直列接点 直列接点 直列接点 接続OUT MPS Y003 X003 T1 Y004 M101 MPP 62 0 1 2 3 4 5 6 7 上図のOUT Y004のようにOUT M101に つづいて、接点T1を通じて駆動すること はできますが、 これを左図のように逆順に するときは、後述のMPS命令を使う必要 があります。 OR, OR I 3.基本シーケンス命令解説 3−4. [OR], [OR I]命令 記号,呼称 記号と機能 命令解説 プログラ ミング 機能 回路表示と対象要素 プログラムステップ オア a接点並列接続 X,Y,M,S, T,C 1 ORI オアインバース b接点並列接続 X,Y,M,S, T,C 1 OR ●OR, ORIは、 1接点の並列接続命令として用いられます。 2個以上の接点が直列接続されているとき、 このような直列回路ブロックを他の回路に並列接続 するときは、 後述のORB命令を用います。 ●OR, ORIは、 この命令のあるステップから、 その前のLD, LDI命令のあるステップに対して並列 接続されます。 並列接続の回数には制限はありませんが、 DOS版のプログラミングソフトやA6GPP/A7PHPな どでは表示量やプリンタの印字機能に制限があります。 これらの周辺機器を用いるばあいは、 24行以下にすることをおすすめします。 X004 0 1 2 3 4 5 6 7 8 9 Y005 X006 OR M102 ORI X007 Y005 X010 M103 M103 LD OR ORI OUT LDI AND OR ANI OR OUT X004 X006 M102 Y005 YOO5 X007 M103 X010 M110 M103 3 直列接点 並列接続 M110 ANB命 令 の関係 ANB LD LD OR OR, ORI命令による並列接続は原則 として、 その前のLD, LDI点とつなが りますが、後述のANB命令後は、 1つ 前のLD, LDI点へ接続されます。 OR ANB命令前 OR OR ANB命令後 63 ORB 3.基本シーケンス命令解説 3−5. [ORB]命令 記号,呼称 機能 回路表示と対象要素 プログラムステップ 記号と機能 ORB オアブロック 直列回路ブロックの並列接続 1 対象要素:なし 命令解説 プログラ ミング ●2個以上の接点が直列接続された回路を直列回路ブロックといいます。 直列回路ブロックを並列接続するときは、分岐の始まりはLD, LDI命令、分岐終端はORB命令 を用います。 ●ORB命令は、後述のANB命令などと同様に、要素番号を伴わない単独命令です。 ●多数の並列回路があるときは、 1回路ブロックごとにORB命令を用いれば、並列回路数に制限 はありません。 (下記の好ましいプログラム) ●ORB命令は一括使用してもさしつかえありませんが、 LD, LDI命令の繰返し使用回数が8回以 下に制限されていますので、 ご注意ください。 (下記の好ましくないプログラム) X000 X001 X002 X003 X004 X005 Y006 ORB ORB 直列回路ブロック 64 好ましいプログラム 0 LD X000 1 AND X001 2 LD X002 3 AND X003 4 ORB 5 LDI X004 6 AND X005 7 ORB 8 OUT Y006 好ましくないプログラム 0 LD X000 1 AND X001 2 LD X002 3 AND X003 4 LDI X004 5 AND X005 6 ORB 7 ORB 8 OUT Y006 ANB 3.基本シーケンス命令解説 3−6. [ANB]命令 記号,呼称 機能 回路表示と対象要素 プログラムステップ 記号と機能 ANB アンドブロック 並列回路ブロックの直列接続 1 対象要素:なし 命令解説 ●分岐回路(並列回路ブロック) を前の回路と直列接続するときは、 ANB命令を用います。 分岐の始まり点はLD, LDI命令を用い、並列回路ブロックを完成してからANB命令により前の 回路と直列接続します。 ●多数の並列回路ブロックを順次、前の回路と直列接続すれば、 ANBの使用回数に制限はあり ません。 一括してANB命令を用いることもできますが、 このばあい、 ORB命令と同様にLD, LDI命令の 使用回数制限(8回以下) に注意する必要があります。 3 ANB ☞ プログラ ミング LD X000 X002 X003 X001 X004 X005 X006 X003 並列ブロック ANB命令前のOR命令 ANB命令後のOR命令 ANB と LD,OR Y007 ORB 0 1 2 3 4 5 6 7 8 9 10 LD OR LD AND LDI AND ORB OR ANB OR OUT X000 X001 X002 X003 X004 X005 分岐開始点 並列ブロック完成 X006 前の回路と直列接続 X003 Y007 65 MPS, MRD, MPP 3.基本シーケンス命令解説 3−7. [MPS], [MRD], [MPP]命令 記号,呼称 記号と機能 機能 MPS プッシュ スタックプッシュダウン MRD リード スタックリード MPP ポップ スタックポップアップ 回路表示と対象要素 プログラムステップ 1 MPS 命令解説 1 2 3 ② ① MPP MRD MPS MPP 10 11 スタック 18 MPS X004 X005 X006 MRD MRD MPP Y002 Y003 Y004 X007 Y005 MRD MPP 1 1 このシーケンサには、 演算の途中結果 (ONまたはOFF) を記憶す るスタックと呼ばれる11個のメモリがあります。 MPS命令を1回用いると、 その時点の演算結果がスタックの1段 目に格納されます。 再びMPS命令を用いると、 その時点の演算結 果はスタックの1段目に格納され、前の格納データは順次下段の スタックに移動します。 MPP命令を用いると、 各データは順次上段へ移り、 最上段のデータ が読出されるとともに、 そのデータはスタックから消失します。 MRDは、最上段に格納されている最新データの読出し専用命令 であり、スタック内のデータの移動は生じません。 いずれも要素番号を伴わない単独命令です。 18 19 20 21 22 23 24 25 26 27 28 29 30 LD MPS AND OUT MRD AND OUT MRD OUT MPP AND OUT END X004 X005 Y002 X006 Y003 Y004 X007 Y005 ●この命令は、上図のような分岐多重出力回路のプログラムを行うための便利な命令です。 MP S命令により演算の途中結果を記憶させてから出力Y002を駆動します。 MRD命令によりその 記憶を読出し出力Y003を駆動します。 ●MRD命令は何回でもプログラムできますが、 プリンタやグラフィックプログラミングパネルの画 面表示の上で制限があります。 (並列回路24行以下) ●最終出力回路はMRD命令のかわりにMPP命令を用います。 これにより、上記の記憶が読出さ れると共に、 これがリセットされます。 ●MPS命令は重複して用いることもできますが、 MPS命令とMPP命令の個数の差は11以下とし、 最終的には同一個数にする必要があります。 66 MPS, MRD, MPP 3.基本シーケンス命令解説 プログラ ミング例1 MPS X000 X001 X002 1段スタック Y000 Y001 MPS X003 X004 MPP Y002 X005 Y003 MPP MPS X006 X007 Y004 X010 MRD X011 MRD X012 Y005 Y006 Y007 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 LD AND MPS AND OUT MPP OUT LD MPS AND OUT MPP AND OUT LD MPS AND OUT MRD AND OUT X000 X001 0 1 2 3 4 5 6 7 8 9 10 11 LD MPS LD OR ANB OUT MRD LD AND LD AND ORB X000 この例では、 スタック は一段しか用いてい ません。 X002 Y000 Y001 X003 X004 Y002 X005 Y003 X006 X007 Y004 21 22 23 24 25 26 MRD AND OUT MPP AND OUT 12 13 14 15 16 17 18 19 20 ANB OUT MPP AND OUT LD OR ANB OUT X011 Y006 3 X012 Y007 X010 YOO5 MPP プログラ ミング例2 MPS X000 X001 Y000 X002 1段スタック ANB, ORB 併用 MRD X003 X004 X005 X006 X007 MPP Y001 Y002 X010 X011 Y003 X001 X002 Y000 X003 X004 X005 X006 Y001 X007 Y002 X010 X011 YOO3 67 MPS, MRD, MPP 3.基本シーケンス命令解説 プログラ ミング例3 2段スタック X000 MPS MPP X001 X002 MPS X003 MPP X004 X005 MPS X006 Y000 Y001 Y002 Y003 MPP プログラ ミング例4 MPS MPS MPS MPS X000 X001 X002 X003 X004 4段スタック Y000 Y001 MPP Y002 MPP Y003 MPP Y004 0 1 2 3 4 5 6 7 8 LD MPS AND MPS AND OUT MPP AND OUT X000 0 1 2 3 4 5 6 7 8 LD MPS AND MPS AND MPS AND MPS AND X000 X001 X002 Y000 X003 Y001 X001 X002 X003 X004 9 10 11 12 13 14 15 16 MPP AND MPS AND OUT MPP AND OUT 9 10 11 12 13 14 15 16 17 OUT MPP OUT MPP OUT MPP OUT MPP OUT X004 X005 Y002 X006 Y003 Y000 Y001 Y002 Y003 Y004 MPP X000 Y004 X001 Y003 X002 Y002 X003 Y001 X004 Y000 LD OUT AND OUT AND OUT AND OUT AND OUT X000 Y004 X001 Y003 X002 Y002 X003 Y001 X004 Y000 ●上側のような回路はMPS命令を三重に用いてプログラムする必要があります。 しかし、 これを下側のような回路におきなおすとMPS命令を用いないで手軽にプログラムする ことができます。 68 3.基本シーケンス命令解説 3 69 MC, MCR 3.基本シーケンス命令解説 3−8. [MC], [MCR]命令 記号,呼称 記号と機能 MC マスタコントロール 機能 回路表示と対象要素 MC 共通直列接点の接続 プログラムステップ N Y,M 3 Mは特殊補助リレーを除く MCR マスタコントロールリセット 共通直列接点の解除 命令解説 MCR 2 N ●下記のプログラム例において、入力X000がONのときは、 MCからMCRまでの命令はそのまま 実行されます。 入力X000がOFFのときは、次のとおりとなります。 現状保持 :積算タイマ, カウンタ, SET/RST命令で駆動されている要素 OFFになるもの :積算タイマ, OUT命令で駆動されている要素 ●MC命令後、 母線 (LD, LDI点) はMC接点後に移動し、 これを元の母線に戻す命令がMCRです。 MC命令使用後は必ずMCR N0命令が必要です。 ●要素番号Y, Mを変更することにより、 MC命令は何度でも用いることができます。 ただし同一要 素番号を用いると、 OUT命令と同様にダブルコイルとなります。 プログラ ミング例1 ネスティング (入れ子) なし X000 N 0 MC N 0 M100 X001 Y000 X002 Y001 MCR X003 N 0 MC N 0 X000 N 0 3ステップ命令です M100 X001 Y000 X002 Y001 N 0 ←2ステップ命令です ←母線復帰(N0はネスティングレベル) M150 ←ネスティング (入れ子) 構造にしないばあ いは、 再びN0を用いてプログラムします。 N0の使用回数に制限はありません。 ネスティング構造のときのみ次ページの 例2のように、 ネスティングレベルNをN0 →N1…N6→N7と番号を大きくします。 Y002 X005 4 5 6 7 8 LD MC SP LD OUT LD OUT MCR N 0 M150 X004 Y003 MCR 70 M100 0 1 N 0 ←MC命令使用後は、必ず「MCR N0」命 令が必要です。 MC, MCR 3.基本シーケンス命令解説 ●MC命令内でMC命令を用いるときは、順次ネスティングレベルNの番号を大きくします。 (N0→N1→N2→N3→N4→N5→N6→N7) これを復帰させるときはMCR命令で、大きいネスティングレベルのものから解除します。 (N7→N6→N5→N4→N3→N2→N1→N0) ●例えば、 MCR N6, MCR N7をプログラムしないで、 MCR N5をプログラムするとネスティング レベルは一気に5まで復帰します。 ●ネスティングの深さは、最大8階層(N7) までプグラムできます。 プログラ ミング例2 ネスティング (入れ子) あり X000 OFF時 X000 MC N 0 M100 N 0 [A] N 0 M100 X001 Y000 レベルN0 母線Bは、 X000がONのとき活線状態 となります。 [B] X002 OFF時 X002 MC N 1 M101 N 1 3 N 1 M101 X003 Y001 [C] X004 OFF時 X004 MC N 2 M102 レベルN1 母線Cは、 X000, X002がともにONのと きに活線状態になります。 N 2 N 2 M102 X005 [D] Y002 MCR X006 [C] N 2 レベルN2 母線Dは、 X0 00, X0 02, X0 04がすべて ONのときに活線状態になります。 N 2 Y003 MCR X007 N 1 レベルN1 MCR N2により、母線はCの状態に戻 ります。 N 1 Y004 レベルN0 MCR N1により、母線はBの状態に戻り ます。 [B] MCR X010 [A] N 0 Y005 N 0 ← 一連のMC命令の最後は必ず 「MCR N0」 としてください。 「N0」以外の「N1∼N7」が最後にあると、 プログラムエラーとなります。 初期状態 MCR N0により、母線は最初のAの状態 に戻ります。 したがって、 X000, X002, X004とは無関係にX010のON/OFF により、Y005はON/OFFします。 71 PLS, PLF 3.基本シーケンス命令解説 3−9. [PLS], [PLF]命令 記号,呼称 記号と機能 命令解説 機 能 回路表示と対象要素 プログラムステップ PLS パルス 立上りの微分出力 PLS Y,M 特Mを除く 2 PLF パルフ 立下りの微分出力 PLF Y,M 特Mを除く 2 ●PLS命令を用いると、駆動入力ON後の1演算周期の間だけ対象要素Y, Mが動作します。 ●PLF命令を用いると、駆動入力OFF後の1演算周期間だけ対象要素Y, Mが動作します。 ●例えば、駆動入力がONのままでシーケンサをRUN→STOP→RUNにしたときにPLS M0は動 作しますが、 PLS M600 (バッテリバックアップ) は動作しません。 (後側のRUNのとき) これはSTOP中にもM600の動作が保持されているためです。 プログラ ミング X000 PLS M0 SET Y000 PLF M1 RST Y000 M0 X001 M1 0 1 3 4 LD PLS LD SET X000 M 0 M 0 Y000 5 6 8 9 LD PLF LD RST X001 M 1 M 1 Y000 X000 X001 M 0 M 1 Y000 72 演算周期 演算周期 ←2ステップ命令です ←2ステップ命令です SET, RST 3.基本シーケンス命令解説 3−10. [SET], [RST]命令 記号,呼称 記号と機能 命令解説 プログラ ミング 機 能 回路表示と対象要素 SET セット 動作保持 SET Y,M,S RST リセット 動作保持の解除 現在値およびレジスタのクリア RST Y,M,S,T,C,D,V,Z プログラムステップ Y,M S,特M T,C D,V,Z,特D :1 :2 :2 :3 ●下記のプログラム例においてX0 0 0が一度ONすると、 これがOFFしてもX0 0 0は動作をつづけます。 X001が一度ONすると、 これがOFFしてもY000は不作動のままとなります。 M, Sに対しても同様です。 ●SET, RST命令は同一要素に対して何回も用いることができ、順番も自由ですが、 後で実行し た方が有効となります。 ●なお、 データレジスタ (D) やインデックスレジスタ (V) (Z) , の内容を0にしたいときにもRST命令 を用いることができます。 (定数K0の転送命令を用いても同じ結果が得られます。) ●また、積算タイマT246∼T255の現在値のリセットと接点復帰にもRST命令を用います。 X000 X001 X002 X003 X004 X005 X006 SET Y000 RST Y000 SET M 0 RST M 0 SET S 0 RST S 0 RST D 0 X000 X007 T250 RST T250 K10 0 1 2 3 4 5 6 7 8 9 11 12 14 15 16 17 LD SET LD RST LD SET LD RST LD SET LD RST LD RST LD OUT SP 20 LD 21 RST X000 Y000 X001 Y000 X002 M 0 X003 M 0 X004 S 0 X005 S 0 X006 D 0 X000 T250 K 10 X007 T250 3 X000 X001 Y000 73 OUT, RST 3.基本シーケンス命令解説 3−11. カウンタ要素に対する [OUT], [RST]命令 記号,呼称 記号と機能 機 能 OUT アウト 出力接点の復帰 X010 X011 C 0 現在値のクリア RST C 0 C 0 K10 Y000 RST プログラムステップ K ○○ D ○○ C 計数コイルの駆動 RST リセット 内部カウン タのプログ ラミング 回路表示と対象要素 C 32ビットカウンタ : 5 16ビットカウンタ : 3 2 X011のOFF→ON回数をC0がアップカウントし、 これが設 定値K10に達すると出力接点C0が動作します。 その後X0 1 1がOFF→ONに変化してもカウンタの現在値は変化せず、 出力接点も動作したままです。 これをクリアし、 出力接点を復帰させるためにX0 1 0をONし ます。 OUT C命令の後に定数Kまたは間接設定用データレジス タ番号を指定する必要があります。 停電保持(キープ)用カウンタのば あい、停電しても現在値および出 力接点の動作状態やリセット状態 が保持されています。 高速カウン タのプログ ラミング 計数方向 X010 X011 X012 M8△△△ シーケンス リセット回路 RST C△△△ 計数コイル C△△△ KまたはD C△△△ Y002 ●C23 5∼C24 5の1相1入力カウンタでは、計数方向を指定 するために特殊補助リレーM82 3 5∼M824 5を用います。 X010:ON時ダウン X010:OFF時アップ ●X01 1がONするとカウンタC△△△の出力接点が復帰し、 カウンタの現在値も0になります。 リセット入力付のカウンタ (C24 1, C242,…) では該当の リセット入力がONしたときにも割込み動作で同上の働き をしますが、 そのためのプログラムは不要です。 ●X012がONすると、 カウンタ番号に応じて定められた計 数入力X000∼X005のON/OFFを計数します。 スタート入力付のカウンタ (C2 4 4, C2 4 5, …) では該当スター ト入力もONしなければ計数しません。 ●カウンタの現在値が増加して、設定値(KまたはDの内 容) を通過したときに出力接点がセットされ、 減少方向に 通過したときにはリセットされます。 高速カウンタの計数コイルを駆動する接点には、高速カウントを実行するときに常時ONしている 接点をプログラムしてください。 計算コイルの駆動に、高速カウンタ用入力番号として割り付けられた入力リレー (X000∼X005) を用いると正確な計数は行えません。(☞2−8−4) 74 NOP, END 3.基本シーケンス命令解説 3−12. [NOP], [END]命令 記号,呼称 機 能 記号と機能 NOP ノップ 回路表示と対象要素 NOP 無処理 プログラムステップ 対象要素:なし 1 回路表示は行われません 命令解説 ●プログラムの全消去を行ったときは、全命令がNOPになっています。 一般の命令と命令の間にNOP命令が介在していると、 シーケンサはこれを無視して動作します。 プログラムの途中にNOP命令を入れておくと、 プログラムの変更、追加時にスッテプ番号の変 動が少なくてすみますがプログラムステップが余分に必要になります。 ●また、 既に書込まれている命令をNOP命令におきかえることで、 回路が変化しますので注意が 必要です。 OUT→NOP(エラー) 3 AND→NOP ANI→NOP 接点のショート OR→NOP 回路の切断 ORI→NOP 記号,呼称 記号と機能 END エンド 機 能 入出力処理と0ステップへの リターン 入力処理 命令解説 ステップ000 001 002 LD X000 OUT END NOP NOP Y000 NOP 出力処理 回路表示と対象要素 END 対象要素:なし プログラムステップ 1 シーケンサは、入力処理、 プログラム実行、出力処 理を繰返しますが、 プログラムの最後にEND命令 を書込んでおくと、以下の余分のスッテプを実行 せずに、直ちに出力処理を実行します。 (プログラ ム中にEND命令がないばあいFXシーケンサは、 最終ステップまでを処理した後、 0ステップからの 処理を繰返し実行します) また、試運転時にシーケンスの区切りにEND命令 を挿入しておけば、各ブロックの動作を順次拡大 点検することができます。 このばあい前の回路ブロックの動作確認後、 END 命令を順次削除してください。 なお、 RUN開始時の初回はEND命令から実行されます。 END命令実行時には、 ウオッチドッグ タイマ (演算周期がながすぎないかどうかをチェックしているタイマ) のリフレッシュも行われます。 75 注意事項 3.基本シーケンス命令解説 3−13. プログラム作成上の注意 1234567890 1234567890 1234567890 1234567890 1234567890 3−13−1. プログラムの手順と実行順序 接点の構成 とステップ 同じ動作のシーケンス回路であっても、接点の構成方法によって、 プログラムの単純化と、ステッ プ数の節約ができます。 《直列接点の多い回路は上に書くとよい》 ①LD ①LD ②AND ⑤OUT ②LD ③AND ④OUT ③OR ④ORB ORB命令が不要 《並列接点の多い回路は左に書くとよい》 ②LD ①LD ☞ ①LD ③AND ⑤OUT ④OUT ④ANB ③OR ②OR ANB命令が不要 プログラム の実行順序 シーケンスプログラムは、 「上から下」へ「左から右へ」処理を進めます。 シーケンス命令リストもこの流れに沿ってコーディングしてください。 実行 ① ⑤ ③ ② ⑦ ⑨ ⑩ ⑥ ④ ⑧ 76 ⑪ 注意事項 3.基本シーケンス命令解説 1234567890 1234567890 1234567890 1234567890 1234567890 3−13−2.二重出力(ダブルコイル)動作と対策 二重出力 の動作 シーケンスプログラム内でコイルの二重出力(ダブルコイル) を行うと、後側のものが優先動作と なります。 入力処理 X001=ON 最初 X001 ☞ Y003 Y003 一例として、 X001=ON、 X002=OFFとします。 最初のY003はX001がONのため、そのイメージ メモリがONとなり、出力Y004もONとなります。 Y004 ☞ 2度目 X002 出力処理 Y003=OFF 二重出力 の対策 左図のように同一コイルY003が複数個所に使われ ているばあいを考えてみましょう。 X002=OFF Y003 しかし、 2度目のY003は入力X002がOFFのため、 そのイメージメモリはOFFに書換えられます。 Y004=ON したがって、実際の外部出力はY003=OFF、 Y004 =ONとなります。 3 二重出力(ダブルコイル) は、 プログラム上では入力違反ではありませんが、上記のとおり動作が 複雑になるため、次の例にならってプログラムを変更してください。 A B E B C E Y000 Y000 D 無視されます C A Y000 D A B C E M100 または M101 D この他にジャンプ命令を用いる方法やス テップラダー命令を用いて、ステートごとに 同一出力コイルをプログラミングする方法も あります。 なお、ステップラダー命令を用いたばあい、 メインルーチンにある出力コイルをステート 内にもプログラムすると二重コイルと同一の 扱いとなりますのでご注意ください。 M100 Y000 M101 77 注意事項 3.基本シーケンス命令解説 1234567890 1234567890 1234567890 1234567890 1234567890 3−13−3. プログラムできない回路と対策 橋渡し回路 両方向に電流が流れるような回路は右図のように変更してください。 (Dがないときの回路とBが ないときの回路を並列に接続したものです。) A B F C A コイルの 接続位置 E D F D C ●コイルの右側に接点を書かないでください。 ●接点間のコイルは先にプログラムすることをおすすめします。 A B C E 78 B A E C E D A E B D C 4. ステップラダー命令解説 4 . ステップラダー命令解説 本章では、工程歩進命令であるステップラダー命令についてその種類と機能を述べます。 また、 FXシーケンサでは、 SFC図(Sequen t i a Func l t i on Cha r t :状態遷移図) もステップラダー命令を基に表 現することができるほか逆変換も可能となっています。 SFC制御がはじめての方には、学習用テキスト 「ステップラダー編」, 「SFCプログラム編」 を準備いたしておりま すのでご参照ください。 (☞1−1) 4−1.ステップラダー命令[STL], [RET] 4−2.ステップラダー命令の動作とSFC表現 4−3.SFCの特長 4−4.SFCフロー作成のための予備知識 4 4−5.SFCフローの形態 4−6.イニシャルステートの役割り 4−7.中間ステートのプログラム 4−8.分岐・合流ステートのプログラム 4−9.シングルフローの例 4−10.選択分岐・合流フローの例 4−11.並進分岐・合流フロー例 4−12.イニシャルステート (FNC60 I ST)命令の活用 79 STL・RET 4. ステップラダー命令解説 4−1. ステップラダー命令 [STL], [RET] 記号,呼称 記号と機能 命令解説 機 能 STL ステップラダー ステップラダー開始 RET リターン ステップラダー終了 S ステップ数 1 RET 1 ステップラダー (STL)命令は、内部要素ステート (S) を用いて工程歩進形制御をシーケンスプロ グラム上で行うものです。 リターン (RET) はステート (S) の流れの終了を意味し、 メインプログラム (母線) へ復帰するための命令です。 後述の一定ルールに従ってプログラムされたステップラダー 回路はSFC図として扱うこともできます。 また、 SFC図からはステップラダー回路が逆生成されます。 プログラミ ングと動作 S20 Y001 STL S21 Y002 S22 Y002 スキャン タイム 実行 非実行 Y002 S 20 Y001 正転 Y001 S 21 Y002 逆転 ステート番号 S 40 T 1 K 10 S 42 T 1 不可 S 43 T 1 K 20 T 1 80 回路表示と対象要素 《ステートの動作と出力の重複使用》 ●ステート番号は重複して使用することはできません。 ●STL接点がONするとこれにつながる回路が動作します。 STL接点がOFFするとこれにつながる回路は不作動になりま すが、 1演算周期以降は命令の実行が行われません。 (ジャン プの状態) ●異なるステート間では、左図のとおり同じ出力要素(Y002) をプ ログラムすることができます。 このばあいS2 1またはS2 2がONし ているときにY002は出力されます。 (通常のリレーラダー回路で は、 二重コイル扱いとなり動作が複雑となりますので二重コイル をプログラムしないことを、 おすすめします。 ) なお、 このばあいでもメインプログラム上にステート内のアウトコ イルと同じ要素(Y002) をプログラムしたり、 1つのステート内に 同じ出力コイルをプログラムすると、一般の二重コイルと同じ扱 いになりますので注意してください。 《出力のインタロック》 ●ステートの移行過程では、一瞬(1演算周期) だけ両ステートが 同時にONしています。したがって、同時ONしてはならない 一対の出力間には同時ONをさけるため各シーケンサの 「ハン ディマニュアル」 に従ってシーケンサの外部にインタロックを設 けてください。 また、 あわせてプログラム上にて左図のとおり互 いにインタロックを施してください。 《タイマの重複使用》 ●タイマコイルも出力コイル同様異なるステートに同一要素をプ ログラムすることができますが、隣接ステートにはプログラムで きません。 隣接ステートにプログラムすると工程移行時にタイマコイルが OFFされず現在値がリセットされません。 STL・RET 4. ステップラダー命令解説 ステートに 対する命令 の扱い LD X005 Y001 S 10 STL内 母線 X005 Y002 《出力の駆動方法》 左図のようにステート内の母線から一旦LDまたはLD I命令を書込んだ後に接点を必要としない命令をプ ログラムすることはできません。 このような回路は下図のとおり変更してください。 Y003 位置変更 S 10 Y003 X005 X001 S 10 MPS STL内 母線 S 41 移行 条件 LD X001 X003 X004 MRD MPP S 10 Y001 X005 SET Y001 Y002 常閉接点の挿入 Y001 X005 または M8000 Y002 RUNモニタ Y002 Y003 《MPS/MRD/MPP命令の位置》 ステート内ではSTL内母線から直接MPS/MRD/ MPP命令を用いることはできません。 左図のとおりLDまたはLDI命令以降にプログラムし てください。 4 Y003 S 42 次段ステートへの移行 S 50 分離ステートへの移行 《ステートの移行方法》 ●STL命令後のステートSに対するOUT命令とSET 命令は同じ機能を持っており、いずれも移行元を 自動リセットします。 また、 自己保持機能も持ってい ます。 しかし、 OUT命令のばあいはSFC図における 分離ステートへの移行に対して用います。 《ステート内で取扱い可能なシーケンス命令一覧》 ステート 命令 LD/LDI,OUT,NOP AND/ANI,SET/RST OR/ORI,PLS/PLF ANB/ORB MPS/MRD/MPP MC/MCR イニシャルステート/一般ステート 使用可 使用可 使用不可 出力処理 使用可 使用可 使用不可 移行処理 使用可 使用不可 使用不可 分岐,合流 ステート ●割込みプログラムやサブルーチンプログラムの内ではSTL命令を用いることはできません。 ●STL命令内でジャンプ命令を用いることは禁止ではありませんが複雑な動きとなりますので、 用いないようおすすめします。 81 SFC表現 4. ステップラダー命令解説 4−2. ステップラダー命令の動作とSFC表現 命令役割 FXシリーズシーケンサは、 SFC図(Sequen t i a Func l t i on Cha r t :状態遷移図・ IEC規格) による シーケンス制御機能を内蔵しています。 このSFC図から命令語レベルのリストプログラムを生成 したり、逆に命令語やラダー表現のプログラムをSFC図に変換するための命令がステップラダー (STL)命令です。 ●ステップラダー命令は、 ラダー図で表現することができます。 ステップラダーでは、ステート (S) を1つの制御工程と見立て、 この中に入力条件と出力制御のシーケンスをプログラムしていき ます。 この制御における 最大の特徴は、工程が進むと前工程が不導通となるため、各工程ご との簡単なシーケンスで機械が制御できることです。 ステップラダー命令自身は、 ラダー表現では次のような動作を行います。 異なるステートには、出力コイルを 重複プログラムできます。 S 31 導通 X001 この接点には STL命令を 用います S 32 Y030 動作 SET S 32 S 31 S32が導通し、 S31は自動的 に不導通とな ります Y030 Y030 不動作 X001が ONすると X001 S 32 導通 S 32 Y030 動作 Y032 X002 SET Y032 SET S 33 X002 SET S 33 ●上図のステップラダー回路をSFC図として表すと、次のような表現になります。 Y030 S 31 X001 S 32 X002 → 動作 X001が ONすると S 31 移行条件といいます Y030 Y032 Y030 X001 S32が導通し、 S31は自動的 に不導通とな ります 動作 S 32 Y030 X002 Y032 SFC図では各工程ごとに機械が果たす役割りと、 全体の制御の流れがわかりやすく表現できるた め、 シーケンス設計が容易になるうえ、第三者に対しても厳密な動きが伝えられるため、 メンテナ ンスや仕様変更、 トラブル発生時の対応などに有効です。 SFC図とステップラダー命令は、 それぞれ一定のルールに従ってプログラミングすることで相互 変換ができます。 このため、実質的な内容は全く同一のものであり見なれたリレーラダー図として 扱うこともできます。 SFC図として扱うためには前述の対応する周辺機器とプログラミングソフトウェアが必要です。 82 SFC表現 4. ステップラダー命令解説 表現の実際 ステップラダー命令とSFC図が実質同じものであることは前述のとおりですが、 実際のプログラム は次のように表現されます。 STL図はあくまでもリレーラダー風の表現ですが、 SFC図はステート (工程) の流れを基本とした 機械制御の流れで表されています。 《STL図》 《SFC図》 M8002 S 0 SET X000 SET M8002 S 0 S 20 → Y023 S 0 X011 S 21 Y021 X012 S 22 T 0 S 23 Y023 X013 S 24 Y021 X012 スタートボタン Y023 Y021 前進 SET S 21 Y023 後退 S 0 SFCに属さない回路の 冒頭にこの記号を用 います。 X000 S 20 SET LAD 0 Y021 S 20 前進 X011 前進小 Y021 Y023 S 21 4 後退 SET S 22 T 0 K 50 SET S 23 Y021 前進 SET S 24 Y023 後退 X012 後退 T 0 S 22 タイマ T 0 K 50 休止タイマ Y023 S 23 Y021 前進 X013 前進大 Y021 S 24 X012 S 0 Y023 後退 後退 S 0 RET END プログラミ ング用機器 ステップラダー終了 RET LAD 1 ステップラダー終了 END SFC図によるプログラミングは、パソコンやA7PHP/HGPなどのグラフィック画面を備えた周辺 機器と、 これに対応したプログラミングソフトウェアで行います。 《ソフトウェア形名》 ●SW□PC−FXGP/WIN(Wi ndows用) ●SW□PC−FXGP/98形 (PC−9800用日本電気㈱製) ●SW□HX−GPPFX形 (A7HGP用) SW□RX−GPPFX形 (A7PHP用) ●SW□GP−SFCFX形 (A6GPP/PHP用) なお、 SFC図によって作成されたシーケンスプログラムも命令語と してシーケンサに保存されるため、 FX−1 0PやFX−2 0Pなど命令 語ベースの周辺機器でも扱うことができます。 (☞1−3) 83 SFCの特長 4. ステップラダー命令解説 4−3. SFCの特長 簡単な 動作例 機械の動作を書きもので第三者に伝えようとしたばあい、 一般にはタイムチャートや機構図に基づ いて、 その動作を箇条書きで整理する必要があります。 その一例を考えてみましょう。 スタート 前進 LS12 休止 5秒 LS12 LS11 1回目 後退 前進 LS13 2回目 後退 動 作 ①スタートボタンPBを押すと、 台車が前進し、 リミットスイッチLS1 1が動作すると直ちに後退します。 (LS1 1は常時ONしていて前進限界でOFFするものとします。 他のリミットスイッチも同様です。 ) ②後退により、 リミットスイッチLS12が動作すると、 5秒間休止してから再び前進し、 リミットスイッチ LS13が動作すると、直ちに後退します。 ③やがてリミットスイッチLS12が動作すると、台車駆動モートルが停止します。 このような動作を文章で正確に伝えることは、複雑な機械では無理があり、機械技術者と電気技 術者間で綿密な打合わせを行う必要があります。 その上で、電気技術者が、 シーケンスの設計を行います。 なぜならば、一般のシーケンサはこれ を動かすためのシーケンス図がなければ、 プログラムができないからです。 しかも、工程歩進的な動作を行う機械のシーケンス設計は、大変複雑となり、相当の経験と設計 時間が必要となります。 さらに、 シーケンス図は第三者が見てもわかり難く、 このためシーケンス設計者は、 いつまでもその 機械から離れることができないという宿命を背負ってしまうことにもなりかねません。 84 SFCの特長 4. ステップラダー命令解説 シングルフ ロー処理 工程移行の基本スタイルがシングルフロー形式の制御です。単純動作を要求されるシーケンス 制御ではシングルフローだけで十分対応できますが、 さまざまな入力条件やオペレータ操作が介 在するばあいは後述の選択分岐や並進分岐フローと組み合わせることで、複雑な条件をより簡 単に扱うことができます。 M8002 LAD 0 → スタートボタン Y023 S 20 X011 前進 Y021 後退 T 0 K 50 休止タイマ タイマ Y023 S 23 X013 前進 Y021 4 Y023 後退 後退 S 0 LAD 1 複数工程の 選択処理と 同時処理 Y021 ●ラダーブロック (LAD0) ではシーケンサのSTOP→ RUN時に、一瞬動作する特殊補助リレーM8002を 用いて、 イニシャルステートS0をセット (ON) させて います。 ●機械の初期工程に対して、 このシーケンサでは S0∼S9のイニシャルステートと呼ばれる要素を割 付けます。 ●各動作工程にはS2 0∼S8 9 9などのステートを割付け ます。 この中には、 停電してもその動作状態を記憶し ておくことのできる停電保持用ステートもあります。 またS10∼S19はI ST命令を用いたときには特殊な 目的で使われます。 ●シーケンサ内には多数のタイマ, カウンタ, 補助リレー などの要素があり、 自由に用いることができます。 ここではタイマT0を用いていますが、 このタイマは 0. 1秒クロックで動作しますので、設定値K50のば あい、 コイルが駆動されてから5秒後に出力接点が 動作します。 前進大 S 24 X012 Y023 後退 S 22 T 0 Y021 前進小 S 21 X012 S 0 SFCに属さない回路の冒頭 にこの記号を用います。 S 0 X000 SET RET SFCの終了を意味します。 END プログラムの終了を意味します。 複数のフローのうちどれか一つのフロー が選択実行されるものを選択分岐とい います。 S 20 分岐ステート X000 S 21 S 31 X001 S 22 X011 S 32 X002 S 50 X010 X012 合流ステート 複数のフローのすべてが同時に進行す るような分岐を並進分岐といいます。 S 20 X020 S 41 X021 S 42 X022 分岐ステート X000 S 21 S 24 X001 S 22 X002 S 25 X004 S 23 X005 S 26 S 27 X003 S 28 X006 S 29 X007 S 30 合流ステート 85 予備知識 4. ステップラダー命令解説 4−4. SFCフロー作成のための予備知識 フローの 分離 複数のイニシャルステートを持つSFC図のプログラムは各イニシャルステートごとに分離してプ ログラムします。 OUT OUT S 3 S 4 S 20 S 40 OUT S 41 S39 S 39 分岐回路 数の制限 左図の例ではイニシャルステートS3に従属するステー トS2 0∼S3 9に対するSTL命令のプログラムをすべて終 了してから次のイニシャルステートS4に関連するプロ グラムを行います。 ただし、自分側のプログラムの中で相手側のステート 番号をSTL以外の命令で用いることは可能です。 左図の例ではイニシャルステートS3側のプログラムの 中にOUTS41の命令が含まれることになります。 また、 イニシャルステートS4側のプログラムの中にLDS 3 9の命令が含まれていることになります。 要はSTL命令 を混在させてはなりません。 S 59 一つの並進分岐または選択分岐については1分岐あたり8回路以下に制限されています。 ただし多数の並進分岐や選択分岐があるときに全体としての回路数は一つのイニシャルステー トあたり16回路以下となっています。 1分岐 8回路以下(並進または選択) ① ② ③ ④ OUT ⑤ OUT ⑥ RST ⑦ ⑧ OUT 《注》 OUT 1 2 3 OUT 4 5 6 7 8 9 16 合計 16回路以下 合流線や合流前ステートから分離ステートへの移行処理やリセット処理を行うことはできません。 ダミーステートを設けて必ず分岐線上から分離ステートへの移行やリセット処理を行ってください。 86 予備知識 4. ステップラダー命令解説 複雑な移 行条件の プログラム X004 X000 X002 X001 X003 X004 Y000 S 30 Y000 S 30 X000 X001 X002 X003 M 0 M 0 S 31 ●移行条件回路の中 ではANB, ORB, M PS, MRD, MPP,命 令は使えません。 左の要領でプログ ラムしてください。 S 31 このように変形 してください ▽▼ の動作 ステートに対するリセットの処理をフローで 表現するときは 印で示します。 ▽ S 0 S 90 S 10 S 70 S 90 S 80 自己リセット S 19 S 80に 飛越す S 0 なお、 印のばあいは、 上方ステートへの ▼ 移行(繰返し)や下方への移行(飛越し)、 分離された他のフロー上のステートへの移 行を意味します。 4 S 0へ戻る ステートの リセットと 出力禁止 非常停止に相当 する出力禁止に つ きまし て は 、 シーケンサのマ ニュアルに記 載 された 「安全上の ご注意」 に従って ください。 ●動作中のステートの任意の出力を禁止する ●ステートを範囲リセットする リセット FNC 40 ZRST S 0 S 50 リ セ ッ ト S 0 禁止 SET S 10 S0∼S50までの 5 1点分が一括リセ S 50 S 0 ットされます。 M 10 Y001 M10 Y005 M30 T 4 出 力 O F F ●シーケンサの全出力リレー (Y) をOFFする 禁止 M8034 特殊補助リレーM8 0 3 4をONさせている間、 シーケンスプログラムの演算は継続され ますが出力リレー (Y) はすべてOFFします。 87 予備知識 4. ステップラダー命令解説 特殊補助 リレー SFC図を効率よく作成するためには、 いくつかの特殊補助リレーを用いる必要がありますが、 その 主なものは下表のとおりです。 要素番号 停電保持 (キープ用) ステート RET命令の 役割り 88 名 称 機能と用途 M8000 RUNモニタ シーケンサRUN中に常時ONしているリレーです。常時駆動が必要なプログラムの入力条件やシーケンサ の運転状態表示として使用。 M8002 イニシャルパルス シーケンサのSTOP→RUN時に一瞬(1演算周期)だけONするリレーです。プログラムの初期設定やイニ シャルステートのセットに用います。 M8040 移行禁止 このリレーを駆動すると、すべてのステート間で移行が禁止されます。なお、移行禁止状態で もステート内のプログラムは動作していますので出力コイルなどが自動的にOFFするものでは ありません。 M8046 STL動作 ステートが1つでもONしているときには、M8046が自動的にONします。他フロートと同時起動を さけるためや、工程の動作フラグとして用います。 M8047 STLモニタ有効 このリレーを駆動すると、プログラミング機能側で動作中のステートを自動的に読出して表示で きるようになります。詳細は各周辺機器のマニュアルをご覧ください。 ●停電保持用ステート (S) は、 その動作状態がバッテリでバックアップされています。 機械動作の 途中で停電が生じた後、再通電時にここから継続運転したいようなばあいにこれらのステート を用います。 ●RET命令は一連のSTL命令の最後に必ずプログラムします。 これにより、ステップラダー回路の終了を意味します。一連の工程を中断してメインルーチンに プログラムしたいばあいなども同様にRET命令が必要となります。 RET命令は複数回プログラムすることができます。 ●STL命令の最後にRET命令をプログラムしなかったばあいは「プログラムエラー」が発生し、 シーケンサは運転できません。 予備知識 4. ステップラダー命令解説 移行条件 プログラム のテクニック 《移行条件成立済ステートの処理》 リミットスイッチ X030 S 30 モートル Y030 M100 M101 M X030 PLS M100 PLS M101 S 31 正転 Y030 ●移行条件となるリミットスイッチX030がす でに動作していて、 さらに、 1回転させてか ら次の移行を行いたいことがあります。 ●このばあい、 上図のとおり移行条件のパル ス化を行い、 S30の初回動作時はM100で 移行が生じないようにします。 《同一信号によるステートの移行》 1つの押ボタンスイッチのON/OFF動作などでステートの移行を行いたいばあいがあります。 このような移行を行うためには、移行信号をパルス化してプログラムします。 M 0 パルス信号 S 50 M 1 M 0 S 51 M 2 M 0 PLS M 1 M0がONしてS50が動作した直後では移行条件M1 (b接点) が開 路しておりS50のONと同時にS51に移行することがないようになっ ています。再度M0がONするとこのときS51へ移行します。 4 パルス信号 PLS M 2 パルス信号 89 フロー形態 4. ステップラダー命令解説 4−5. SFCフローの形態 SFC図のシングルフローの動作パターンと、 選択分岐や並進分岐を組合せたばあいの動作パターンを示します。 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 飛越し 4−5−1.飛越し・繰返しフロー 下方ステートへの直接移行や系列外ステートへの移行を、飛越しといい、 印で移行先ステー ト ▼ を表示します。 S 20 S 20 S 30 S 40 S 30 S 21 S 21 S 31 S 41 S 31 S 41 S 22 S 22 S 32 S 42 S 32 S 42 S 23 S 23 S 33 S 43 S 33 S 43 S 22 S 42 S 40 上方ステートへの移行を繰返しといい、上記と同様に 印で移行先ステー トを表示します。 ▼ 繰返し S 0 S 50 S 51 S 59 S 0 S 60 S 61 S 61 S 62 S 62 S 63 S 63 S 50 S 51 S 59 S 0 90 S 60 S 60 フロー形態 4. ステップラダー命令解説 1234567890 1234567890 1234567890 1234567890 1234567890 4−5−2.分岐・合流の複合フロー S 40 左図のようなフローはいず れもプログラム可能です。 ただしBの流れは問題あり ませんが、 Aの流れのばあい、 並進合流部で動作待ちの 状態になりますからご注意 ください。 S 50 A B S 41 S 44 S 51 S 54 B S 42 S 45 S 46 S 43 S 52 S 55 A S 56 S 53 4 S 60 S 60 S 61 S 62 S 63 S 64 S 65 S 61 S 66 S 62 交差しては いけません S 63 S 65 S 64 フローが交差するSFC図は 作図できません。 左図のようなフローは右側 のようなフローにおきなおし てプログラムしてください。 これにより命令語ベースの プログラムからSFC図への 逆変換も可能となります。 S 66 S 63 91 イニシャルステート 4. ステップラダー命令解説 4−6. イニシャルステートの役割り イニシャル ステートの 扱い ●SFC図の先頭に位置づけられるステートがイニシャルステートであり、ステート番号S0∼S9を 用いることができます。 ●イニシャルステートも他のステート (上図の例ではS23) を介して駆動されますが、運転の開始 時は他の手段によってあらかじめ駆動しておく必要があります。 ●下図の例ではシーケンサのSTOP→RUN切換時に、一瞬だけ動作する特殊補助リレーM80 02により駆動しています。 ●イニシャルステート以外の一般のステートは必ず他のステートからSTL命令を介して駆動する 必要があり、ステート以外から駆動されることはありません。 ●このようにSTL命令以外の接点を通じて駆動されることのあるステートをイニシャルステートと 呼び、必ずフローの最先頭に記述します。 また、 イニシャルステートに対するSTL命令は、 これ 以降の一連のSTL命令よりも必ず前にプログラムしてください。 SET命令を 用います。 イニシャル ステート M8002 イニシャルパルス S 0 X000 スタートボタン S 20 Y001 X001 S 21 Y002 X002 S 22 Y003 X003 S 23 Y004 X004 S 0 上方ステートへの移行は矢印で 示し、OUT命令で駆動します 92 0 1 3 4 5 7 8 9 10 12 13 14 15 17 18 19 20 22 23 24 25 27 28 LD SET STL LD SET STL OUT LD SET STL OUT LD SET STL OUT LD SET STL OUT LD OUT RET END M8002 S 0 S 0 X 000 S 20 S 20 Y 001 X 001 S 21 S 21 Y 002 X 002 S 22 S 22 Y 003 X 003 S 23 S 23 Y 004 X 004 S 0 イニシャルステートの 初期駆動 ステート S 0 ステート S 20 ステート S 21 ステート S 22 ステート S 23 一連のSTL命令 の最後には、RET (リターン)命令 4. ステップラダー命令解説 イニシャル ステートの 役割り イニシャルステート 《逆変換のための識別要素として》 ●命令リストからSFC図への逆変換を行うにあたって、 フローの先頭を識別する必要があります。 このために、 イニシャルステートとしてはS0∼S9を用いてください。 これ以外の番号を用いると 逆変換ができません。 ●また、 イニシャルステートに対するSTL命令は、 これにつづく一連のステートに対するSTL命令 よりも先にプログラムし、最後にはRET命令をプログラムします。 これにより独立した複数のフ ローがあるばあい、 フロー相互の分離が行われます。 《二重スタート防止のために》 前ページの例において、例えばステートS21が動作しているときに再びスタートボタンを押しても、 これは無効となります。 (S0が不作動のため) したがって、二重スタートが防止されます。 4 93 中間ステート 4. ステップラダー命令解説 4−7.中間ステートのプログラム 1234567890 1234567890 1234567890 1234567890 1234567890 4−7−1.分岐・合流のない一般ステート SFC図の中から一つのステートを代表的に抽出したのが下図(a)です。各ステートは負荷に対する駆動処理、 移行先指定とその移行条件指定の三つの機能を備えています。 このSFC図をリレーシーケンス風に表現した のが下図(b) のステップラダー図です。 プログラムはSFC図、 またはステップラダー図のどちらからでも行えますが、 まず負荷に対する駆動処理、つづ いて移行処理の順で行います。 もちろん負荷を伴わないステートでは駆動処理は必要ありません。 STL命令を用います S 20 S 20 X010 X000 X001 S 21 X010 X011 X011 X000 主母線 (a)SFC図 STL OUT LD OR OUT LD ANI SET S 20 Y010 X010 X011 Y011 X000 X001 S 21 Y011 Y011 SET 0 1 2 3 4 5 6 7 Y010 Y010 STL X001 SET S 21 副母線 (b)ステップラダー図 上図のプログラムを命令語リストで表現すると左記のようになります。 STL命令は主母線につながる常開接点命令であり、 これにつづく副母線にはコイル を直接接続したり、接点を通じてコイルを駆動することもできます。 副母線につながる接点にはLD (LDI) 命令を用います。 これを元の主母線に戻したい ときにはRET (リターン)命令を用います。 なおSTL接点を通じて、ステート (S)が駆動されると移行元のステートは自動的に リセットされています。 ステートに対する SET, RST命令は 2ステップ命令と なっています 一連のSFC図に対し、各々のステートのプログラムを行いすべてのステートを忘れなくプログラムすればこれで プログラムは完了であり、 その順番は自由です。 ただし一連のSTL命令の先頭はイニシャルステート、最後には 必ずRET命令をプログラムしてください。 94 中間ステート 4. ステップラダー命令解説 1234567890 1234567890 1234567890 1234567890 1234567890 4−7−2.飛越し・繰返しを伴う一般ステート OUT ☞ S 0 S 1 S 2 S 3 S 4 S 20 S 30 S 40 S 50 S 60 S 21 S 51 S 22 S 23 OUT S 31 S 41 S 32 S 42 S 33 S 43 ☞飛越し OUT ☞ S 52 S 61 S 53 S 62 S 54 S 63 ☞ S 64 S 65 RST 繰返し (上方への移行) (下方への移行) 系列外への飛越し リセット処理 上図のように上方への移行(繰返し)、下方への移行(飛越し)、系列外への移行などの分離ステートへの移行 は4−5項に記載のとおり移行先ステート番号を 印で表示し、 次のとおりOUT命令を用いてプログラムします。 ▼ 4−5−1項の交差するフローのばあいも同様です。 移 行 元 の プ ログ ラム STL LD OUT LD SET LD OUT S 40 X001 Y001 X002 S 41 X003 S 52 X001 S 40 Y001 X004 S 52 X003 X002 S 41 X005 S 52 S 53 4 移 行 先 の プ ログ ラム Y002 STL LD OUT LD SET S 52 X004 Y002 X005 S 53 OUT命令を 用います S4 0からX003を通じてS52が駆動されると、 OUT命令であってもS52は自己保持動作をするとともに移行元の S40は自動的にリセットされます。 リセット回路 のプログラム STL LD OUT LD RST S 65 X006 Y003 X007 S 65 X006 S 65 X007 Y003 左図の例は、 S6 5からX0 0 7を通じてS6 5をリセットするばあ いです。 S6 5から他のステート (例えばS70) をリセットするばあいも 同様ですが、 これは移行動作ではありませんので、 S65は リセットされません。 S 65 RST命令を 用います 95 分岐・合流 4. ステップラダー命令解説 4−8.分岐・合流ステートのプログラム 1234567890 1234567890 1234567890 1234567890 1234567890 4−8−1.選択分岐・合流ステート 選択分岐 の例 S 20 X000 X002 X001 SET S 21 STL OUT LD SET LD SET LD SET Y000 STL SET SET S 41 S 31 S 20 Y000 X000 S 21 X001 S 31 X002 S 41 ― 駆動処理 ― 直下ステートへの移行 ― 第1分岐ステートへの移行 ― 第2分岐ステートへの移行 一般のステートに対するプログラムと同様にまず駆動処理、続いて移行処理を行います。すべて の移行処理を順次継続して行ってください。 選択合流 の例 S 29 S 39 STL Y010 S 49 Y011 STL X010 X011 STL Y012 X012 S 50 SET STL OUT S 29 Y010 ― 駆動処理 STL OUT S 39 Y011 ― 駆動処理 STL OUT S 49 Y012 ― 駆動処理 STL LD SET STL LD SET STL LD SET S 29 X010 S 50 S 39 X011 S 50 S 49 X012 S 50 分岐、合流の移行処理 プ ログラムではMPS, MRD, MPP, ANB, ORBの命令を 用いないでください。 また負荷駆動回路でもSTL 命令の直後にはMPS命令 は使えません。 直下ステートへの移行 第1合流移行 分岐列と合流列が交差しな いようにプログラムの順番に ご注意ください。 第2合流移行 合流前ステートの駆動処理のみをまず行います。 その後合流ステートへの移行処理のみを順次継 続して行います。 これはSFC画面への逆変換のために必要なルールとなっています。 96 分岐・合流 4. ステップラダー命令解説 1234567890 1234567890 1234567890 1234567890 1234567890 4−8−2.並進分岐・合流ステート 並進分岐 の例 S 20 STL OUT LD SET SET SET Y000 STL X000 SET S 21 SET SET S 20 Y000 X000 S 21 S 31 S 41 ― 駆動処理 ― 直下ステートへの移行 ― 第1並進ステートへの移行 ― 第2並進ステートへの移行 S 41 S 31 一般のステートに対するプログラムと同様にまず駆動処理、続いて移行処理を行います。すべて の移行処理を順次継続して行ってください。 並進合流 の例 S 29 S 39 STL X010 X011 X012 SET S 50 Y010 S 49 STL Y011 STL Y012 合流前ステートの駆動処理のみをまず行い ます。 その後、 合流ステートへの移行処理のみを順 次継続して行います。 分岐列と合流列が交差しない ようにプログラムの順番にご注 意ください。 STL OUT S 29 Y010 ― 駆動処理 STL OUT S 39 Y011 ― 駆動処理 STL OUT S 49 Y012 ― 駆動処理 STL STL STL LD AND AND SET S 29 S 39 S 49 X010 X011 X012 S 50 4 並進分岐・合流点では※印や*印の移行条件は許され ません。右側のように変更してください。 付 記 ※ 1 * 1 ※ 2 ※ 1 ※ 2 * 2 * 1 * 2 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 移行処理 STL命令の継続は並進合流 を意味しています。 8並進以下に制限されてい ます。 97 分岐・合流 4. ステップラダー命令解説 1234567890 1234567890 1234567890 1234567890 1234567890 4−8−3.分岐・合流の複合 S 20 X000 S 30 X001 S 40 S 20 S 30 S 40 X002 S 20 X000 S 30 X004 S 50 S 30 X001 X000 X003 S 20 X000 S 50 X001 S 60 S 60 X002 S 40 S 50 S 40 S 50 S 20 S 30 S 20 S 30 このように 変形します S 20 X000 S 30 X001 S 40 S 20 S 30 X002 S 40 X000 X001 X000 ダミー ステート S100 X000 S101 ダミー ステート S101 X003 S102 ダミー ステート X001 S 60 ダミー ステート S102 X004 S 50 S103 S 50 S 60 S 40 S 50 X002 S 40 S 50 このように プログラム します STL LD SET STL LD SET STL LD SET STL S 20 X000 S100 S 30 X001 S100 S 40 X002 S100 S100 LD SET X003 S 50 LD SET X004 S 60 STL STL STL LD SET STL LD SET SET S 20 S 30 S 40 X000 S101 S101 S101 S 50 S 60 STL LD SET STL LD SET STL LD SET SET S 20 X000 S102 S 30 X001 S102 S102 S102 S 40 S 50 STL STL LD SET STL S 20 S 30 X000 S103 S103 LD SET X001 S 40 LD SET X002 S 50 上図のように合流線から分岐線へステートを介さないで直接つながるようなものでは、 この間にダミーステート を介在させることをおすすめします。 98 分岐・合流 4. ステップラダー命令解説 S 20 S 20 X000 X010 X001 X004 S 21 X002 X011 S 23 X005 S 22 X003 X012 X006 X010 X010 X004 X011 X014 S 21 S 27 X002 X015 S 26 X013 X007 X000 X001 X014 S 25 S 24 このように変形 してください X000 S 23 X005 S 22 S 28 X016 S 25 X012 S 24 S 27 X015 S 26 S 28 X003 X006 X013 X016 X007 X007 X017 X017 X017 S 29 S 29 4 S 20 X000 X001 S 21 X002 S 23 X003 S 22 S 25 X004 S 24 X006 ※ ※ ※ ※ * * * * S 27 X005 S 26 S 28 X007 S 29 このように プログラム します 合流部移行 STL LD SET SET LD SET SET STL STL LD SET STL STL LD SET S 20 X000 S 21 S 23 X001 S 25 S 27 S 22 S 24 X006 S 29 S 26 S 28 X007 S 29 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 左のようなフローは選択か並進かが確定しませんので、 右のとおりプログラムしてください。 付 記 分岐部移行 並進分岐後に選択移行条件※があったり、移行条件* 後の並進合流は行うことができません。 4−8−2項の付 記に示すとおりです。 X000 X001 X000 X000 X000 X001 X001 99 シングルフロー 4. ステップラダー命令解説 4−9. シングルフローの例 噴水制御 の例 M8000 STLモニタ M8047 有 効 RUNモニタ X000 X002 X000 歩進 スタート M8040 移 行 禁 止 Y000 待機表示 S 3 スタートボタン Y001 中央ランプ S 20 T 1 K 20 T 1 M8002 SET イニシャル パルス S 3 イニシャル ステート Y002 中央噴水 S 21 T 2 K 20 T 2 ①一巡運転 (X0 01=OFF, X002=OFF) スタートボタンX00 0を押すと、 Y0 00→Y0 01→Y002→Y003→Y007→Y000の順 で動作し、待機状態に戻ります。 各出力は2秒おきにタイマで順次切換わ るようにします。 ②連続運転(X001=ON) Y001∼Y007の動作を繰返します。 Y003 環状線ランプ S 22 T 3 K 20 T 3 Y007 環状噴水 S 27 T 7 K 20 T 7 T 7 X001 X001 S 20 連続/一巡、歩進 S 3 RET ③歩進運転(X002=ON) スタートボタンを押すたびに順次各出力 が動作します。 フリッカ 回路の例 ①シーケンサをRUNさせると、 イニシャルパルス (M8 0 02) によってステートS3が駆動されます。 ②ステートS3ではY000を出力し、 1秒後にス テートS20に移行します。 ③ステートS2 0ではY0 0 1を出力し、 1. 5秒後にス テートS3へ戻ります。 M8002 S 3 S 20 T 1 Y001 1秒 100 1.5秒 S 3 イニシャル パルス T 0 Y000 SET END S 3 Y000 T 0 K 10 Y001 T 1 K 15 RET END シングルフロー 4. ステップラダー命令解説 カム軸旋回 制御の例 逆転小 正転小 X011 X011 逆転大 X013 X012 原 点 正転大 正転角度大,小2位置にリミットスイッチX013, X011があります。 また逆転角度大,小の2位置 にリミットスイッチX012, X010があります。 スタートボタンを押すと、正転小→逆転小→正 転大→逆転大の動作を行って停止します。 Y023 逆転 Y021 正転 M M8000 M8047 0 RUNモニタ M8002 リミットスイッチX010∼X013は常時OFFして いて、 カム軸が所定の角度に達したときにON するものとします。 STLモニタ有効 M8040 3 イニシャル スタート パルス ボタン 移行禁止 M8034 全出力禁止 M8002 M8046 イニシャル ステート パルス 動作中 スタートボタン S 521 X011 S 522 X010 S 6 イニシャル ステート S 523 Y021 X012 S 6 Y023 逆転 Y021 正転 正転大角でON X013 S 524 ●M804 7が動作すると、動作ステートモニタ が有効となるとともに、 S0∼S899のどれか が動作していると、 END命令実行後M8 0 4 6 が動作します。 ●このSFC図ではバッテリバックアップ系の ステートが用いられており、動作の途中で 停電してもスタートボタンを押すと、 この 工程から動作を再開するようになってい ます。ただしスタートボタンを押すまでは Y020以外の全出力は動作禁止になって います。 4 逆転小角でON Y023 SET Y021 正転 正転小角でON Y021 Y020 10 X000 Y023 X000 M8040 Y020 原点表示 S 6 Y023 逆転 逆転大角でON RET END 《全出力禁止M8034》 M8034を駆動すると、 シーケンサとしてはRUNのままで各プログラムを実行していますが、外部 への出力はすべてOFFになります。 101 シングルフロー 4. ステップラダー命令解説 順序始動・ 停止の例 モートルM1∼M4をタイマで順次始動し、逆順で順次停止させます。 このSFCフローは、 シングルフローをベースとしてステートの飛越しを行っています。 M8002 イニシャルパルス S 0 X000 スタートボタン SET S 20 モートル M 1始動 T 0 K 20 T 0 X001 Y000 X001 ストップボタンを押すとステートS 27へ移行 S 27 SET S 21 モートル M 2始動 T 1 K 30 T 1 X001 Y001 X001 ストップボタンを押すとステートS 26へ移行 S 26 SET S 22 モートル M 3始動 T 2 K 40 T 2 X001 Y002 X001 ストップボタンを押すとステートS 25へ移行 S 25 S 23 X001 RST Y003 モートル M 4停止 Y002 モートル M 3停止 Y001 モートル M 2停止 Y000 モートル M 1停止 RST T 5 K 30 RST S 26 T 6 モートル M 4始動 T 4 K 40 S 25 T 5 Y003 ストップ S 24 T 4 SET T 6 K 20 RST S 27 Y000 S 0 RET END このSFC図は条件によって一部のフローを飛越して、下方のステートへ移行する例を示しています。上方への 飛越しも可能です。 102 シングルフロー 4. ステップラダー命令解説 M8002 前ページの部分飛越しのフローは、 次のように選択分岐合流の フローで表現することもできます。 フローは必ず上から下へ流 れるようにし、分岐、合流線以外で交差することはできません。 イニシャルパルス S 0 X000 スタートボタン SET S 20 Y000 T 0 K 20 T 0 X001 X001 SET S 21 ストップ Y001 T 1 K 30 T 1 X001 X001 SET S 22 ストップ 4 Y002 T 2 K 40 T 2 X001 X001 S 23 X001 S 24 T 4 S 25 T 5 S 26 T 6 S 27 SET Y003 RST Y003 ストップ S 30 S 31 S 32 ストップ ダミーステート T 4 RST Y002 T 5 K 30 RST S 31 Y001 T 6 K 20 RST 例えば、 ステートS2 0の動作中にX0 0 1 がONするとステートS32が動作し、 その接点が動作して、 直ちにステー トS27へ移行します。 分岐ラインには必ず1個以上のス テートが必要であり、そのためにダ ミーステートを設けています。 S 30 K 40 S 32 Y000 Y000 S 0 RET END 103 選択・合流フロー 4. ステップラダー命令解説 4−10.選択分岐・合流フローの例 選択分岐 の動作 S 20 分岐ステート X000 S 21 X010 S 31 X001 S 22 X011 S 32 X002 S 50 大小ボール の選別 搬送の例 X012 X020 S 41 X021 S 42 X022 合流ステート ●複数のフローのうちどれか一つのフローが選択実行される ものを選択分岐といいます。 ●左図の例でX000, X010, X020は同時にはONしないこと が必要です。 ●例えばS2 0が動作していてX0 00がONすると動作ステート はS21へ移行し、 S20は不作動となります。 したがってその後X010やX020が動作してもS3 1やS4 1は 動作しません。 ●合流ステートS50はS22, S32, S4 2のどれか一つから駆動さ れます。 下図はコンベアを用いて、大小ボールを選別搬送する機構を示しています。 左上を原点とし、 下降,吸着, 上昇, 右行,下降, 解放, 上昇,左行の順で動作させます。 なお、 アー ムが下降し、電磁石が大ボールを押したときは下限リミットスイッチLS2がOFF、小ボールを押し たときはONとなります。 X001 LS1 左限 右 Y003 左 Y004 M X004 LS4 X005 LS5 X003 LS3 上限 原点表示 Y007 + 上昇 Y002 下降 Y000 + CY1 大ボールのときは、ピストンが 下限まで到達せず、X002は動作 しません X002 LS2 下限 電磁石 Y001 近接SW PS0 X000 104 小 大 選択・合流フロー 4. ステップラダー命令解説 このような大小選別や良否判定などのSFC図は、下図のような選択分岐・合流のSFC図となります。 例えばイニシャルパルスM8002で駆動しておきます S 0 各個操作シーケンス X026 スタート Y007 原点条件(上限 左限 解放) Y000 下降 S 21 T 0 K 20 X002のb接点(常閉接点)の意味です T 0 X002 T 0 SET S 22 T 1 X005 X005 吸着 右(大バケツ) Y003 右行 ●ボールが小さいとき (X002=ON)は 左 側のフロー、ボール が大きいときは右側 のフローが有効とな ります。 4 Y000 下降 ●小ボールのときはX004、大ボールのときはX005が動 作したときに合流ステートS30へ移行します。 下限 RST T 2 Y001 解放 T 2 K 10 Y002 上昇 S 32 上限 X001 Y004 左行 S 33 S 0 上限 S 27 右(小バケツ) S 31 X001 Y002 上昇 S 26 Y003 右行 Y001 T 1 K 10 X003 S 30 X003 SET T 1 上限 X004 X002 下限未達(大ボール) S 25 吸着 Y002 上昇 S 24 X004 Y001 T 1 K 10 S 23 X003 X002 下限(小ボール) ●後述の特殊補助リレーM804 0を駆動するとすべての ステートの移行が禁止されます。ステートS24, S27, S33では右行出力Y003、左行出力Y004にそれぞれ インタロック接点を直列接続しています。 左限 RET END 105 並進・合流フロー 4. ステップラダー命令解説 4−11.並進分岐・合流フローの例 並進分岐 の動作 S 20 分岐ステート X000 S 21 S 24 X001 S 22 X002 S 25 X004 S 23 X005 S 26 S 27 X003 S 28 X006 S 29 ●複数フローのすべてが同時に進行するような分岐を並進 分岐といいます。 ●左図の例ではS20が動作していてX000がONするとS21, S24, S27が同時に動作し、各フローの動作が始まります。 ●各フローの動作がすべて終了しX007がONしたときに合 流ステートS3 0が動作し、移行元S2 3, S2 6, S2 9はすべて不 作動になります。 ●このような合流を別名では待合流ということもあります。 (先 着フローは全フローが動作完了して合流するまで動作を つづけています。) X007 S 30 合流ステート 部品A, B, Cをそれぞれ並行して加工し、加工終了後これを組立てたいようなばあいも並進分 岐・合流のフローとなります。 押ボタン式 横断歩道 の例 下図のような押しボタン式横断歩道の例は、並進分岐・合流のフローで表現することができます。 Y003:青 Y002:黄 Y001:赤 Y005:赤 Y006:青 X001 X000 106 並進・合流フロー 4. ステップラダー命令解説 押しボタン式横断歩道のSFC図は次のとおりですが、歩道の青の点滅部分では部分フローの繰返し動作(上 方ステートへの飛越し) を行った例を示しています。 M8002 イニシャルパルス S 0 Y003 車道青 Y005 歩道赤 X001 横断ボタン X000 S 21 Y003 車道青 T 0 K300 T 0 S 22 T 2 Y002 車道黄 S 23 Y006 歩道青 S 31 T 1 K100 T 1 Y005 歩道赤 S 30 T 3 K150 T 3 Y001 車道赤 T 4 K 5 S 32 T 2 K 50 T 4 「滅」 「点」 Y006 歩道青 S 33 C 0 K 5 ステートS 33(点滅の点)の 動作回数を数えるカウンタ であり、5回目で接点C 0 が働きます。 T 5 K 5 C 0 C 0 T 5 T 5 S 32 S 34 Y005 歩道赤 RST ●シーケンサのSTOP→RUN時 にイニシャルステートS0が働き 常時は車道=青、歩道=赤に なっています。 ●横断ボタンX000またはX001 が押されるとステートS21で車 道=青、ステートS30で歩道= 赤となっており、状態は変化し ません。 ●3 0秒後に車道=黄、 さらに1 0秒 後に車道=赤となります。 ●その後タイマT2 (5秒)が動作 すると歩道=青となります。 ●1 5秒後歩道は青の点滅を行い ます。 (S32=滅, S33=点) ●点滅中はS32, S33が動作を繰 返していますが、カウンタC0 (設定値5回)が働くと動作ス テートはS34へ移行し、歩道= 赤の5秒後に初期状態へ復帰 します。 ●動作の途中で横断ボタンX0 00, X0 0 1を押しても無効となってい ます。 4 C 0 T 6 K 50 T 6 RET END S 0 107 I ST命令紹介 4. ステップラダー命令解説 4−12. イニシャルステート (FNC 60I ST)命令の活用 機械の運転モードには一般に次のようなものがあり、 このうちの一部または全部のモードが用いられます。 手動 各個操作 :各負荷を個別の押しボタンで入切りするためのモードです。 原点復帰 :原復用押しボタンを押したときに、 機械を自動的に原点へ復帰させるためのモードです。 自動 歩進 :スタートボタンを押すたびに1工程ずつ進みます。 一巡運転 :原点位置でスタートボタンを押すと、 1サイクルの自動運転を行って原点で停止します。 途中でストップボタンを押すと、 その工程で停止し、スタートボタンを押すとここから継続 動作して原点で自動停止します。 連続運転 :原点位置でスタートボタンを押すと連続繰返し運転が開始します。 ストップボタンを押す と原点位置まで動作してから停止します。 通常これらの制御はステップラダー命令(SFCフロー) のプログラムを作成することで実現することができます が、 FXシーケンサの応用命令にはこのような、機械の定番動作を簡単に制御できる便利な命令があります。 M8000 RUNモニタ FNC 60 IST X020 S 20 S 29 応用命令FNC60 (I ST) は、上記の運転モードに対し てステートや特殊補助リレーを自動制御するパッケー ジ命令です。 I ST命令を用いることにより、各運転モードの切換え制御やくり返し制御などのプログラムが不要となるため、 ス テート内の機械動作のみのプログラムに重点を置いたシーケンス設計が行えます。 この命令の詳細につきましては、 「6.応用命令解説」 のFNC60 (I ST)命令をご参照ください。 108 5. 応用命令の一般通則 5 . 応用命令の一般通則 本章では、 FXシーケンサの応用命令の表現方法や基本ルールを述べます。 応用命令をプログラムするにあたっては、命令内における要素の扱いやその実行形式などを一通り理解して おく必要があります。 また、 応用命令がはじめての方には、 学習用テキスト 「応用命令編」 を準備いたしておりますのでご参照ください。 (☞1−1) 5−1.応用命令の表現と実行形式 5−2.数値の扱い 5−3.インデックスレジスタによるオペランドの修飾 5 109 表現と実行形式 5.応用命令の一般通則 5−1.応用命令の表現と実行形式 命令と オペランド ●このシーケンサの応用命令はファンクション番号FNC00∼FNC99で指定され、各命令にはそ の内容を表すシンボル (ニーモニック) が与えられています。 例えばFNC4 5にはMEAN (平均) というシンボルが与えられています。 FX−10P, 2 0Pではプログラムの書込み時は、 HELP機能 によりシンボルを基準にしてFNC番号を見つけ、 これをキーインしますが、 読出し時はシンボル とFNC番号が併記されています。 (パソコンやA6GPP/PHP, A7PHPではニーモニックでも プログラムできます。) ●応用命令には命令部 (FNC番号) のみで機能するものもありますが、 多くのばあい、 これにつづ くオペランドとの組合わせで構成されます。 X000 FNC 45 MEAN S・ D・ n D 0 D 4Z K 3 S :命令の実行によってその内容が変化しないオペランドをソースといい、 この記号で示します。 S・ で表し、 インデックスにより要素番号の修飾ができるばあいには ソースが多数ある 1 S ・ S 2 ・ ときは などで示します。 (☞5−3) D :命令の実行によってその内容が変化するオペランドをデスティネーションといい、 この記号 で示します。 同様にインデックス修飾が可能であったりデスティネーションが多いばあい D1・ D2・ などで表示します。 (☞5−3) m, n:定数KまたはHのみが指定できるオペランドをmやnで表現します。 このようなオペランドが 多数あるときはm1, m2, n1, n2などで示します。 一部の命令ではK, Hにかわりデータレジス タDによる間接指定が行えます。 ●応用命令の命令部のプログラムステップは常に1ステップですが、各オペランドは1 6ビット命令 か32ビット命令かに応じて2または4ステップとなります。 オペランド の対象要素 110 ●X, Y, M, Sなどのビットデバイスそのものを取扱うことがあります。 ●これらのビットデバイスを組合わせて、 KnX, KnY, KnM, KnSと表現することで数値データと して扱うこともあります。 (☞5−2) ●データレジスタDやタイマT, カウンタCの現在値レジスタを扱うことがあります。 データレジスタDは16ビットですが、 32ビットデータを扱うときは一対のデータレジスタの組合わ せとなります。 例えば、 32ビット命令のオペランドとしてデータレジスタD0が指定されたばあい、 (D1, D0) の 32ビットデータを扱うことになります。 (D1は上位16ビット、 D0は下位16ビット) T, Cの現在値レジ スタもこれを一般のデータレジスタとして用いるばあいは同様の扱いとなります。 ただし、 C200∼C255の32ビットカウンタは1点で32ビットのデータを扱うことができ、 16ビット命 令のオペランドとして指定することはできません。 表現と実行形式 5.応用命令の一般通則 FXシーケンサの応用命令は扱う数値の大きさにより、 「16ビット命令」 と 「32ビット命令」 に分類で きます。 またこの命令はそれぞれ実行形態によって 「連続実行形」 と 「パルス実行形」 の特性を持っ ています。 応用命令によっては、 これらのすべての組合わせを有するものとそうでないものがあります。 命令形態と 実行形式 ●数値を扱う応用命令では数値データのビット長により16ビットのばあいと32ビットのばあいがあります。 X000 ビット/ ビット命令 16 32 X001 S・ D・ FNC 12 MOV D 10 D 12 FNC 12 D MOV D 20 D 22 D10の内容をD12へ転送する命令です。 (D2 1, D2 0) の内容を (D2 3, D2 2) へ転送する命令です。 D MOVあるいはFNC D 12 ●32ビット命令のばあい (FNC12 D でも同じ) などと D の記号を付加し て表現します。 ●指定要素は偶数または奇数が使え、 これにつづく上の番号の要素と組合わせて用いられます。 (T, C, Dなどのワードデバイスのばあい) 混乱をさけるために3 2ビット命令のオペランドで指定する下位側要素は偶数番号とすることをおすすめ します。 ●32ビットカウンタ (C200∼C2 55) はこの要素1個で32ビットとなり、 16ビット命令のオペランドとして用いる ことはできません。 5 《パルス実行形》 X000 FNC 12 MOV P D 10 D 12 P の記号はパルス実行形の命令を 示します。 P D MOV も同様です。 左図のばあいX000がOFF→ONに変化したときには、 いつでも1 回だけ命令が実行され、 それ以外は実行されません。 したがって非実行時の処理時間が速くなりますので、 なるべくパ ルス実行形命令の利用をおすすめします。 パルス実行/連続実行命令 《連続実行形》 X001 FNC 12 MOV D 10 D 12 左図は連続実行形の命令であり、 X0 0 1がONしているときに各演算周 期ごとに実行されます。 FNC24 (INC), FNC25 (DEC) など、命令の内容によっては連続実行形命令を用いると演算周期ごとにソー スの内容が変化する命令があります。 このように連続実行形命令を使用するときに注意を要する命令については、下図に示すとおり応用命令解説 記事のタイトル部分に の記号をつけて区別しています。 D FNC 24 INC 連続実行命令使用時は、演算周期ごとにソースの内容が変化する命令です。 P INCREMENT ●いずれのばあいも駆動入力X000やX001がOFFのときには命令は実行されず、特記された命令以外の ものはデスティネーションも変化しません。 111 表現と実行形式 5.応用命令の一般通則 フラグの 扱い 《一般フラグ》 ●応用命令の種類によっては、次のようなフラグが動作します。 (例)M8020:ゼロフラグ M8022:キャリフラグ M8021:ボローフラグ M8029:実行完了 これらのフラグは、各種命令をON実行するたびにONまたはOFFに動作しますがOFF実行の ときやエラー発生時は変化しません。 このフラグに影響をおよぼす命令が多数あるときは、 これらの命令を実行するたびにON/OFF 状態が変化します。 フラグのプログラムは下記の例を参照ください。 ●複数のフラグのプログラム (実行完了フラグの例) 同じフラグが動作する応用命令を複数使うばあい、 フラグの接点は各命令の直下にプログラ ムしてください。 M8000 FNC 72 DSW M8029 M8029はDSW の実行完了 フラグとし て動作 実行完了 X000 M 0 M8029は D PLSYの実行 完了フラグと して動作 SET FNC 57 D PLSY M8029 X010 FNC 22 MUL Y010 D 0 D 0 K 10 RST D 20 ディジタルSW取り込み DSWの実行完了フラグを トリガとして値を10倍する D PLSY起動起動 M 0 K1000 K 1 D 20 M 0 実行完了 Y000 ディジタルSWの値×10倍 のパルス数をY000に1kHz で出力 D 設定パルス出力後、 PLSY の実行完了フラグをトリガ としてM0をリセット M8029 実行完了 M8000 X000 M 0 M8029 実行完了 112 FNC 72 DSW SET FNC 57 D PLSY X010 Y010 D 0 D 20 Y000 M 0 K1000 K 1 左図のように、同じフラグを動作させ る応用命令に対して実行完了フラグを ひとまとめにプログラムすると、どの 命令の実行内容でフラグ制御が行なわ れているのかを判断しにくくなるとと もに、個々の命令に対応するフラグが 取れなくなります。 表現と実行形式 5.応用命令の一般通則 《演算エラーフラグ》 応用命令の構成や対象要素とその番号範囲などに誤りがあって、 演算実行中にエラーが発生す ると、次のフラグが動作すると共にエラー情報が記憶されます。 M8067 D8067 D8069 演算エラーが発生するとM8067が動作保持し、 D806 7に演算エラーコード番号、 D 8069にエラー発生ステップ番号が格納されます。 他のステップで新たにエラーが発生すると、 その命令のエラーコードやステップ番 号に順次更新されます。 (エラー解除時はOFFになります。) いずれもシーケンサのSTOP→RUN時には一瞬クリアされています。 M8068 D8068 演算エラーが発生するとM8068が動作保持し、 D8068にエラー発生ステップ番号 が格納されます。 他の命令で新たにエラーが発生しても内容は更新されず、強制リセットまたは電源 をOFFするまで動作保持しています。 《機能拡張用フラグ》 一部の応用命令では、 その応用命令により定められた固有の特殊補助リレーを併用することによ り機能拡張が行えるようになっており、以下にその一例を説明します。 X000 FNC 17 XCH P D 10 D 11 ●X000がONすると D10の内容とD11の内容 を交換する命令です。 5 X000 M8160 FNC 17 XCH P M8000 M8160 XCH用の 機能拡張 フラグ D 10 D 10 同一番号 ●XCH命令の前にM8 1 6 0を駆動しておき、 XCH 命令のソースとデスティネーションを同じデバ イスに指定しておくと、 上位8ビットと下位8ビッ トの交換を行います。 ●通常のXCH命令に戻すためにはM8160を OFFさせておく必要があります。 なお、割込みプログラムの中で機能拡張フラグを必要とする命令を使用しているときには、機能 拡張フラグの駆動前にDI命令 (割込み禁止) 、機能拡張フラグのOFF後にEI命令 (割込み許可) をプログラムしてください。 113 表現と実行形式 5.応用命令の一般通則 命令の使用 回数制限 応用命令の中には、 1回 (DSW, SEGL, PRは2回) だけしかプログラムすることのできない重複使用禁 止命令があります。 FNC52(MTR) FNC57(PLSY) FNC58(PWM) FNC60 (I ST) FNC62 (ABSD) FNC63 (INCD) FNC68 (ROTC) FNC69 (SORT) FNC70 (TKY) FNC71 (HKY) FNC72 (DSW) 2回 FNC74 (SEGL) 2回 FNC75 (ARWS) FNC77 (PR)2回 これらの命令は1回または2回しかプログラムできませんが、 オペランドにインデックス修飾が可能 な命令については、 インデックスレジスタを用いて命令内の要素番号や数値を変更することが できます。 (☞5−3) これにより複数同時駆動を必要としないばあいには、実質的に複数回用いる制御と同様の効果 が得られます。 命令の同時 駆動制限 応用命令の中には、命令としては複数回プログラミングできても、同時駆動点数が決められてい る命令があります。 《6命令以下(FX1, FX2, FX2C), 4命令以下(FX0, FX0S, FX0N)》 FNC 53 ( H FNC 54 ( H FNC 55 ( H D SCS), D SCR), D SZ) 《1命令以下(FX0N, FX2, FX2C)》 FNC 80 (RS) 114 5.応用命令の一般通則 表現と実行形式 5 115 数値の扱い 5.応用命令の一般通則 5−2.応用命令内での数値の扱い ビットデバ イスの扱い ●X, Y, M, SのようにON/OFF情報のみを扱う要素をビットデバイスといいます。 これに対し、 T, C, Dなどの数値を扱う要素はワードデバイスといいます。 ビットデバイスであってもこれを組合 わせて用いることにより数値を扱うことができ、 このばあい桁数Knと先頭要素番号の組合わせ で表現します。 ●桁数は4ビット単位でK1∼K4 (16ビットデータ)、 K1∼K8 (32ビットデータ) となります。 例えば、 K2M0はM0∼M7による2桁のデータです。 0 1 0 1 0 1 0 1 0 1 0 符号ビット(0=正数 1=負数) M15 M14 M13 M12 M11 0 0 0 0 1 0 1 下位 K2M0 0 M10 M9 M8 0 0 0 1 0 1 0 1 0 1 M7 M6 M5 M4 M3 M2 M1 M0 0 D 1 1 0 下位 1 転送 符号ビット(0=正数 1=負数) 0 0 D 0 転送 変化しません 1 0 0 1 0 1 ●16ビットデータをK1M0∼K3M0へ転送するとデータ長の不足する上位ビットには転送は行わ れません。 32ビットデータのばあいも同様です。 ●16ビット (または32ビット)演算の中で ビットデバイスに対する桁指定がK1∼K3 (またはK1∼ K7) のときは、不足する上位ビットは常に0とみなします。 したがってこれは常に正数を扱うこと になります。 M 0 FNC 19 BIN K 2X004 D 0 X004∼X013によるBCD2桁データをB I Nに変換してD0 へ転送します ●指定されるビットデバイスの番号は、特にことわりがないかぎり自由ですが、 なるべくX, Yのば あいは最下位番号を0にすることをおすすめします。 (X000, X010, X020…Y000, Y010, Y02 0…などを指定します。) M, Sについては8の倍数が理想的ですが、混乱をさけるためにはM0, M10, M20…などにすることをおすすめします。 《連続ワードの指定》 D1を先頭とする一連のデータレジスタと言えば、 D1, D2, D3, D4…………のことです。 桁指定によるワードのばあいもこれを一連のワードとして扱うときは次のとおりとなります。 付 記 K1X000 K1X004 K1X010 K1X014……、K2Y010 K2Y020 Y2X030…… K3M 0 K3M 12 K3M 24 K3M 36……、K4S 16 K4S 32 K4S 48…… すなわち要素の飛びがないように各桁単位で上記のような要素を用います。 ただし、 32ビット演算でK4Y000を用いると上位16ビットを0とみなします。 32ビットデータが必要 なときはK8Y000とする必要があります。 116 数値の扱い 5.応用命令の一般通則 浮動小数点 演算での数 値の扱い シーケンサ内部ではBINの整数値が取扱われます。 整数の除算では、例えば4 0÷3=13アマリ1のような答えが得られます。 また、整数の開平演算では小数点は切捨てられます。 FX2Cシーケンサでは、 これらの演算をより高精度に行うために、 浮動小数点演算が行えます。 FX2, ●浮動小数点演算機能は次の命令に対して有効です。 FNC18(BCD), FNC19(BIN), FNC20(ADD), FNC21 (SUB) FNC22(MUL), FNC23(DIV), FNC48(SQR) ●浮動小数点演算のためには2進フロート値が用いられ、 これを手軽にモニタするために10進フ ロート値への変換も行えます。 これらのフロート値を扱う命令には、機能拡張用フラグとしてM8023が用いられます。 FLT(M8023=OFF) BIN 整数 BCD(M8023=ON) 2進 フロート FLT(M8023=ON) M8023=OFF 整数演算 10進 フロート BCD(M8023=ON) M8023=ON 2進フロート演算 ADD SUB MUL DIV SQR モニタ 書込み 5 ●M8023=OFFのとき、 ADD (加算), SUB (減算), MUL (乗算), DIV (除算), SQR (開平算) は BIN整数演算となり、少数は扱いません。 M8 02 3=ONのときは、 2進フロート演算となりますので、 ソースデータはあらかじめ2進フロート値 に変換しておく必要があります。 (FLT命令によります) ●2進フロート値はユーザにとっては判りにくい数値であるため、 これを10進フロート値に変換す ることもできます。 ただし、内部の演算は2進フロート値によります。 《10進フロート値》 10進フロート値は連続番号の一対のデータレジスタで扱われ、若番側が仮数部、老番側が指数 部となります。 例えば、 データレジスタ (D1, D0) を用いたばあい次のとおりであり、 MOV命令によってD0やD1へ の書込みも行えます。 〔指数D1〕 10進フロート値 =〔仮数D0〕 ×10 仮数D0= ± (1, 000∼9, 999) または0 指数D1= −41∼+35 なお、 D0, D1の最上位ビットが正負の符号ビットであり、いずれも2の補数として扱われます。 また、仮数D0には、例えば100は存在しません。 100のばあいは1000×10−1となります。 10進フロー ト値の取扱い範囲は、次のとおりです。 最小絶対値 1175×10−41 最大絶対値 3402×1035 117 数値の扱い 5.応用命令の一般通則 《2進フロート値》 2進フロート値も連続番号の一対のデータレジスタを用います。 これが例えば (D1 1, D1 0) のばあい、 次のとおりとなります。 D 11(b15∼b0) D 10(b15∼b0) 27 26 25 21 20 2-1 2-2 2-3 S E7 E6 E5 E1 E0 A22 A21 b31 b30 b29 b28 b24 b23 b22 b21 指数部8ビット A20 2-21 A2 2-22 A1 2-23 A0 b20 b2 b1 b0 仮数部23ビット E 0∼E 7=0または1 A 0∼A22=0または1 仮数部符号(0:正,1:負) b 0∼b31=0のときは0となります 2進フロート値=± (20+A22×2−1+A21×2−2+……+A0×2−23) 7 6 0 (E7×2 +E6×2 +……+E0×2 ) /2127 ×2 (例)A22=1, A21=0, A20=1, A19∼A0=0 E7=1, E6∼E1=0, E0=1 2進フロート値=± (20+1×2−1+0×2−2+1×2−3+……+0×2−23) 7 6 0 (1×2 +0×2 +……+1×2 )/2127 ×2 =±1. 625×2129/2127=±1. 625×22 正負はb31の符号ビットによりますが、補数扱いではありません。 ●ゼロ (M8020), ボロー (M8021), キャリ (M8022) の扱い フロート演算における各種フラグの動作は、次のとおりです。 ゼロフラグ : 結果が真に0のときに1 ボローフラグ : 結果が最小単位に達しないが、 0ではないときに1 キャリフラグ : 結果の絶対値が取扱い可能数値を超えるときに1 付 記 118 《2進フロート値のモニタ》 ●パソコン系周辺機器では、 2進フロート値を1 0進フロート値に変換してモニタすることができます。 ただし、 ソフトウェアバージョンはPC9800 (日本電気㈱製)用V3. 00, MAXY用V3. 00, J 3100 (㈱東芝製)用V2. 00, A7PHPではV2. 00以降のものが必要です。 ●FX−10P, FX−20P, A6GPP, A6PHPではこの機能がありませんので、 プログラムにより10進 フロート値に変換してモニタしてください。 インデックス修飾 5.応用命令の一般通則 5−3. インデックスレジスタによるオペランドの修飾 使用可能な 応用命令 応用命令解説では、 インデックス修飾が可能なオペランドを表わす方法として下図に示すとおり、 S D 記号の中に ソース またはデスティネーション 「・」印を付加することで修飾機能を持 たないオペランドと区別しています。 インデックス修飾可能なことを表わします。 FNC 12 MOV インデックス 修飾例 S・ D・ K100 D 10 インデックスレジスタの機能と構造については、 「2-9. インデックスレジスタ」 で詳述されています ので、 あらかじめご覧ください。 《データレジスタ番号の修飾》 X000 FNC 12 MOV P ● 16ビット命令のオペランド修飾 K 0 V K 0 → V X000 FNC 12 MOV P K 10 V K10 → V X001 X002 FNC 12 K500 D0V MOV V=0 : K500→D0 (D0+0) V=10 : K500→D10 (D0+10) K 0 Z K 0 → V,Z X002 *1 FNC 12 D MOV P X001をONすると、 V=0のばあいは 「D0+0=D0」 と なりK500はD0に転送されます。 また、 V=10のばあ いは「D0+10=D10」 となりK500はD10に転送され ます。 5 ● 32ビット命令のオペランド修飾 *1 FNC 12 D MOV P インデックスレジスタVに対して、 K0またはK10を転 送しておきます。 K 10 Z K10 → V,Z D MOV命令は32ビット命令であるため、 この命令 中で用いるインデックスレジスタも3 2ビットで指定す る必要があります。 インデックスレジスタは、 Z側を3 2 ビット命令中で指定すると、 これと組みになるV側を 含めて32ビットレジスタとして働きます。 X003 FNC 12 K69000 D0Z D MOV V0,Z=0 : K69000→D1 ,D0 (D0+0) V0,Z=10 : K69000→D11,D10 (D0+10) *1:Zに対して書込む数値が16ビットの数値範囲(0∼3 2, 767) を越えないばあいであっても、必ず32ビット 命令でV, Z両方を書換えてください。 Z側のみ書換 えたばあい、 V側に他の数値が残っていると大変大 きな数値となり演算エラーが発生します。 《定数Kの修飾》 X004 FNC 12 MOV P K 0 V K 0 → V X004 FNC 12 MOV P K 20 V 定数のばあいも要素番号の修飾と同様でありX005 をONするとV=0のばあいは「K6+0=K6」 となり、 D10に対してはK6が転送されます。 また、 V=20のばあいは「K6+2 0=K2 6」 となり、 D10 に対してはK26が転送されます。 K20 → V X005 FNC 12 K6V D10 MOV V=0 : K6 (K6+0) → D10 V=20 : K26(K6+20) → D10 119 5.応用命令の一般通則 《入出力リレー (8進要素番号) の修飾》 X010 X011 X012 FNC 12 MOV P K 0 X, Y, KnX, KnYの8進数要素番号をインデックス 修飾するばあいは、要素番号に対してインデックス レジスタの内容が8進数換算で加算されます。 V K 0 → V FNC 12 MOV P K 8 左図の例では、 MOV命令でY7∼Y0を出力します が、 その入力はインデックス修飾によってX7∼X0, X17∼X10, X27∼X20に切換えます。 V K 8 → V FNC 12 MOV P K 16 V 切換えは、 インデックス値を0, 8, 1 6と書換えることで、 「X0+0=X0」, 「X0+8=X10」, 「X0+16=X20」 と 8進数換算で要素番号が加算されソースとなる入 力端子が変化します。 K16 → V X013 FNC 12 K2X0V K2Y0 MOV V=0 : X7 ∼X0 → Y7∼Y0 V=8 : X17∼X10 → Y7∼Y0 V=16 : X27∼X20 → Y7∼Y0 《タイマ現在値の表示例》 タイマT0∼T9の現在値を表示するためのシーケンスは、 インデックスレジスタを用いて手軽に 構成することができます。 M8000 RUNモニタ FNC 19 BIN K1X000 Z (X003∼X000)BCD→(Z)BIN FNC 18 BCD T 0Z K4Y000 (T0Z)BIN→(Y017∼Y000)BCD Z=0∼9に応じて、 T0Z=T0∼T9となります。 《使用回数が制限される命令の修飾》 対象要素番号をインデックスレジスタV, Zで修飾すれば、 プログラムによって、対象要素番号を 変更することができます。 これを、 命令の使用回数制限がある命令に対して用いると、 同一命令 を複数回プログラミングしたのと同じ効果が得られます。 X010 X010 X011 FNC 12 MOV K 0 Z (K 0)→(Z) FNC 12 MOV K 1 Z (K 1)→(Z) FNC 58 PWM D 10 パルス幅 パルス幅 変調 120 K 50 Y000Z 周期 出力 番号 D10の内容で定まるパルス幅を、 Y000ま たはY001へ出力します。 その切換えは、 X0 1 0のON, OFFによって 決まります。 FNC5 8は一度しかプログラムできない命 令ですが、出力の複数同時駆動を必要 としないばあいは、出力番号を修飾する ことで制御先を変更することができます。 なお、命令の実行中にZを変化させても この切換えは無効です。変更を有効に するためには、命令の駆動を一度OFF してください。 5.応用命令の一般通則 注意事項 ● 16ビットカウンタをインデックス修飾して32ビットカウンタとして扱うことはできません。 インデッ クス修飾の結果として32ビットカウンタが必要なばあいは、 カウンタC200以降に対してZを付 加してください。 ● V, Z自身や桁指定用のKnの” n” は修飾することはできません。 (K4M0Zは有効、 K0ZM0は不可) ● LD, AND, OUTなどの基本シーケンス命令やステップラダー命令を修飾することはできません。 5 121 5.応用命令の一般通則 MEMO 122 6. 応用命令解説 6 . 応用命令解説 本章では、 FXシーケンサの応用命令についてその機能と動作を述べます。 FXシーケンサには、 シーケンスプログラム作成の負担を軽減するための便利な命令や複雑な制御で要求され る高度な命令を内蔵しています。 なお、 応用命令がはじめての方には、学習用テキスト 「応用命令編」 を準備いたしておりますのでご参照ください。 (☞1−1) 6−1.応用命令一覧 6−2.応用命令解説の見方 6−3.FNC00∼09 「プログラムフロー」 6−4.FNC10∼19 「転送・比較」 6−5.FNC20∼29 「四則・論理演算」 6−6.FNC30∼39 「ローテーション・シフト」 6−7.FNC40∼49 「データ処理」 6 6−8.FNC50∼59 「高速処理」 6−9.FNC60∼69 「便利命令」 6−10. FNC70∼79 「外部機器・ I/O」 6−11. FNC80∼89 「外部機器・SER」 6−12. FNC90∼99 「外部機器・F2」 6−13. F2 機器接続用特殊ブロックの使い方 123 命令一覧 6.応用命令解説 6−1.応用命令一覧 FXシリーズシーケンサが持つ応用命令の種類と、各シリーズの対応は、下表のとおりです。 《FNC.№順》 ○:対応命令 −:非対応命令 ◎:追加命令 ◆:V3. 30以上(’ 96年6月以降) で削除された命令 区 FNC. 命令 分 No. 記号 プ ロ グ ラ ム フ ロ | 転 送 ・ 比 較 四 則 ・ 論 理 演 算 ロ | テ | シ ョ ン ・ シ フ ト デ | タ 処 理 124 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 CJ CALL SRET IRET EI DI FEND WDT FOR NEXT CMP ZCP MOV SMOV CML BMOV FMOV XCH BCD BIN ADD SUB MUL DIV INC DEC WAND WOR WXOR NEG ROR ROL RCR RCL SFTR SFTL WSFR WSFL SFWR SFRD ZRST DECO ENCO SUM BON MEAN ANS ANR SQR FLT 《命令名称》 条件ジャンプ サブルーチンコール サブルーチンリターン 割込みリターン 割込み許可 割込み禁止 メインプログラム終了 ウォッチドッグタイマ 繰返し範囲開始 繰返し範囲終了 比較 帯域比較 転送 桁移動 反転転送 一括転送 多点転送 データの交換 BCD変換 BIN変換 BIN加算 BIN減算 BIN乗算 BIN除算 BIN増加 BIN減少 論理積 論理和 排他的論理和 補数 右回転 左回転 キャリ付右回転 キャリ付左回転 ビット右シフト ビット左シフト ワード右シフト ワード左シフト シフト書込み シフト読出し 一括リセット デコード エンコード ONビット数 ONビット判定 平均値 アナンシェータセット アナンシェータリセット BIN開平演算 浮動小数点演算 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − 130 133 133 134 134 134 138 139 140 140 142 143 144 145 146 147 149 150 151 152 154 155 156 157 158 158 159 159 159 160 164 164 165 165 166 166 168 168 170 170 174 175 176 177 177 178 179 179 181 182 ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ | 区 FNC. 命令 分 No. 記号 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ 入出力リフレッシュ フィルタ調整 マトリクス入力 比較セット(高速カウンタ) 比較リセット(高速カウンタ) 帯域比較(高速カウンタ) パルス密度 パルス出力 パルス幅変調 ○ − − ○ ○ − − ○ ○ ○ − − ○ ○ − − ○ ○ ○ ○ − ○ ○ − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 186 187 188 190 192 193 198 199 201 イニシャルステート データサーチ ドラムシーケンス(絶対方式) ドラムシーケンス(相対方式) ティーチングタイマ 特殊タイマ 交番出力 傾斜信号 近回り制御 データ整列 テンキー入力 16キー入力 ディジタルスイッチ 7SEGデコーダ 7SEG時分割表示 アロースイッチ アスキー変換 アスキーコードプリント BFM読出し BFM書込み シリアルデータ転送 8進ビット転送 HEX→ASCII変換 ASCII→HEX変換 チェックコード FX-8AVボリューム読出し FX-8AVボリューム目盛 ○ − − − − − ○ ○ − − − − − − − − − − − − − − − − − − − ○ − − − − − ○ ○ − − − − − − − − − − ○ ○ ◎ − ◎ ◎ ◎ − − ○ − − − − − − − − − − − − − − − − − − − − − − − − ○ − ○ ◎ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ◎ ◎ ○ ◎ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 204 210 211 212 213 214 215 217 218 220 222 223 224 226 227 229 231 232 234 234 238 246 248 250 252 254 255 PID演算 − − − ◎ ◎ 256 F-16NP/NT F2-6A読出し F2-6A書込み F2-32RMスタート/ステータス F2-32RM書込み F2-32RM読出し F2-32RMモニタ F2-30GMブロック指定 F2-30GM Mコード − − − − − − − − − 《命令名称》 ジ 50 51 52 高 53 速 54 処 55 理 56 57 58 59 60 61 62 便 63 利 64 命 65 令 66 67 68 69 70 71 72 外 部 73 機 74 器 75 ・ 76 I/O 77 78 79 80 81 82 外 部 83 機 84 器 85 ・ 86 SER 87 88 89 90 91 92 外 部 93 機 94 器 95 ・ 96 F2 97 98 99 REF REFF MTR HSCS HSCR HSZ SPD PLSY PWM − IST SER ABSD INCD TTMR STMR ALT RAMP ROTC SORT TKY HKY DSW SEGD SEGL ARWS ASC PR FROM TO RS PRUN ASCI HEX CCD VRRD VRSC − PID − MNET ANRD ANWR RMST RMWR RMRD RMMN BLK MCDE − − − − − − − − − − − − − − − − − − − ◆ ◆ ◆ ○ ○ ○ ○ ◆ ◆ ◆ ◆ ◆ ○ ○ ○ ○ ◆ ◆ | ジ 268 270 271 273 275 276 277 278 279 命令一覧 6.応用命令解説 《命令記号順》 ○:対応命令 −:非対応命令 ◎:追加命令 ◆:V3. 30以上(’ 96年6月以降) で削除された命令 区 命令 FNC. 分 記号 No. A B C D E F H I M N ABSD ADD ALT ANR ANRD ANS ANWR ARWS ASC ASCI BCD BIN BLK BMOV BON CALL CCD CJ CML CMP DEC DECO DI DIV DSW EI ENCO FEND FLT FMOV FOR FROM HEX HKY HSCR HSCS HSZ INC INCD IRET IST MCDE MEAN MNET MOV MTR MUL NEG NEXT 62 20 66 47 91 46 92 75 76 82 18 19 97 15 44 01 84 00 14 10 25 41 05 23 72 04 42 06 49 16 08 78 83 71 54 53 55 24 63 03 60 98 45 90 12 52 22 29 09 《命令名称》 ドラムシーケンス(絶対方式) BIN加算 交番出力 アナンシェータリセット F2-6A読出し アナンシェータセット F2-6A書込み アロースイッチ アスキー変換 HEX→ASCII変換 BCD変換 BIN変換 F2-30GMブロック指定 一括転送 ONビット判定 サブルーチンコール チェックコード 条件ジャンプ 反転転送 比較 BIN減少 デコード 割込み禁止 BIN除算 ディジタルスイッチ 割込み許可 エンコード メインプログラム終了 浮動小数点演算 多点転送 繰返し範囲開始 BFM読出し ASCII→HEX変換 16キー入力 比較リセット(高速カウンタ) 比較セット(高速カウンタ) 帯域比較(高速カウンタ) BIN増加 ドラムシーケンス(相対方式) 割込みリターン イニシャルステート F2-30GM Mコード 平均値 F-16NP/NT 転送 マトリクス入力 BIN乗算 補数 繰返し範囲終了 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ − ○ ○ − − − − − − − ○ ○ − − − − − ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ − − − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ 211 154 215 179 270 179 271 229 231 248 151 152 278 147 177 133 252 130 146 142 158 175 134 157 224 134 176 138 182 149 140 234 250 223 192 190 193 158 212 134 204 279 178 268 144 188 156 160 140 − ○ ○ − − − − − − ◎ ○ ○ − ○ − − ◎ ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ ○ ◎ − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ − ○ − − − − − − − − ○ ○ − − − ○ − ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ − − − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ◎ ○ ○ ◆ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ ◆ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ | 区 命令 FNC. 分 記号 No. 《命令名称》 ジ P R S T V W X Z PID PLSY PR PRUN PWM RAMP RCL RCR REF REFF RMMN RMRD RMST RMWR ROL ROR ROTC RS SEGD SEGL SER SFRD SFTL SFTR SFWR SMOV SORT SPD SQR SRET STMR SUB SUM TKY TO TTMR VRRD VRSC WAND WDT WOR WSFL WSFR WXOR XCH ZCP ZRST 88 57 77 81 58 67 33 32 50 51 96 95 93 94 31 30 68 80 73 74 61 39 35 34 38 13 69 56 48 02 65 21 43 70 79 64 85 86 26 07 27 37 36 28 17 11 40 PID演算 パルス出力 アスキーコードプリント 8進ビット転送 パルス幅変調 傾斜信号 キャリ付左回転 キャリ付右回転 入出力リフレッシュ フィルタ調整 F2-32RMモニタ F2-32RM読出し F2-32RMスタート/ステータス F2-32RM書込み 左回転 右回転 近回り制御 シリアルデータ転送 7SEGデコーダ 7SEG時分割表示 データサーチ シフト読出し ビット左シフト ビット右シフト シフト書込み 桁移動 データ整列 パルス密度 BIN開平演算 サブルーチンリターン 特殊タイマ BIN減算 ONビット数 テンキー入力 BFM書込み ティーチングタイマ FX-8AVボリューム読出し FX-8AVボリューム目盛 論理積 ウォッチドッグタイマ 論理和 ワード左シフト ワード右シフト 排他的論理和 データの交換 帯域比較 一括リセット 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ − ○ − − ○ ○ − − ○ − − − − − − − − − − − − − ○ ○ − − − − − − − ○ − − − − − − ○ ○ ○ − − ○ − ○ ○ 256 199 232 246 201 217 165 165 186 187 277 276 273 275 164 164 218 238 226 227 210 170 166 166 170 145 220 198 181 133 214 155 177 222 234 213 254 255 159 139 159 168 168 159 150 143 174 − ○ − − ○ ○ − − ○ − − − − − − − − ◎ − − − − ○ ○ − − − − − − − ○ − − ○ − − − ○ ○ ○ − − ○ − ○ ○ − − − − − − − − ○ ○ − − − − − − − − − − − − ○ ○ − − − − − ○ − ○ − − − − ○ − ○ ○ ○ − − ○ − ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ◎ ○ ○ ○ ○ ○ ◎ ○ ◎ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ | ジ 6 125 解説の見方 6.応用命令解説 6−2.応用命令解説の見方 命令解説 の見方 本マニュアルの応用命令は、次のような様式で説明します。 ① D ② FNC 20 ADD P BIN加算 ADDITION 16ビット命令 対 ワード 要素 象 要 (連続実行形) 32ビット命令 ADD P (パルス実行形) 13ステップ S1・ S2・ K,H KnX KnY KnM KnS T D・ ビット 要素 X Y M 素 S X000 C D V,Z D ADD (連続実行形) D ADD P (パルス実行形) ファイルレジスタ (FX2 V2.30以下は、拡張機能なし) ④ 機能と動作 対象機種 備考 シリーズ名 ADD 7ステップ ⑥ ③ FNC 20 ADD S1・ S2・ D・ D 10 D 12 D 14 ● ● ● ● ● ● フ ラ グ 番 号 FX0 FX0S FX0N FX1 FX2 FX2C ゼロ ボロー キャリー P P P 命令なし 命令なし 命令なし バージョンによる 機能差あり M8020 M8021 M8022 ⑤ (D 10)+(D 12)→(D 14) ●二つのソースデータをバイナリ加算してデスティネーションへ転送します。各データの最上位ビッ トは正(0)、負(1) の符号ビットでありこれらのデータは代数的に加算されます。 (5+ (−8) =−3) ●演算結果が0のときはゼロフラグが動作します。 演算結果が32, 767 (16ビット演算) または2, 14 7, 4 83, 64 7 (32ビット演算) を超えるときにはキャ リフラグが動作します。 ( 次ページ参照) 演算結果が−32, 768 (16ビット演算) または−2, 14 7, 4 83, 64 8 (32ビット演算)未満になるときに はボローフラグが動作します。 ( 次ページ参照) ⑦ ①応用命令番号(FNC.№) と命令記号。 簡略表現の意味は次のとおりです。 左側上下の点線は16ビット32ビット命令に関係のない単独命令です。 (例:FNC07 WDT) FNC□□ ○○○ FNC□□ 左側上段の実線は16ビット命令、下段の D は32ビット命令が利用できること を示します。 (例:FNC12 MOV) FNC□□ 32ビット命令がない命令は左側下段を点線とし、上段の実線は16ビット命令の みが利用できることを示します。 (例:FNC00 CJ) FNC□□ 16ビット命令がない命令は左側上段を点線とし、下段の D は32ビット命令の みが利用できることを示します。 (例:FNC53 HSCS) FNC□□ 右側上段の実線は連続実行形命令、下段の P はパルス実行形命令が利用 できることを示します。 (例:FNC10 CMP) D ○○○ ○○○ D ○○○ ○○○ FNC□□ ○○○ 126 P パルス実行形命令がない命令は右側下段を点線とし、上段の実線は連続実行 形のみが利用できることを示します。 (例:FNC52 MTR) 解説の見方 6.応用命令解説 FNC□□ ○○○ 右側上段の P は、 連続実行形命令を用いると、 演算周期ごとにデスティネーショ ンの内容が変化する命令です。 (例:FNC24 INC) 命令駆動時に1度だけ演算を行なわせるばあいは、右側下段に P で示すパ ルス実行形命令を使います。 (☞5−1) ②命令の名称 ③①で簡略表現された命令体系を、 16ビット命令、 32ビット命令ごとに詳述し、入力パターンとし て示します。 また、各命令が消費するプログラムステップ数も示します。 これらの命令が実行に要する時間については、 「7−6.命令実行時間一覧」 をご参照ください。 ④命令のオペランド中に指定できる要素を表示します。 (☞5−1, 5−2) 《ビット要素》 《ワード要素》 X :入力リレー (X) K :10進整数 Y :出力リレー (Y) H :16進整数 *1 M: 補助リ レー (M) KnX :入力リレー (X) の桁指定 *1 S :ステート (S) KnY :出力リレー (Y) の桁指定 *1 KnM :補助リレー (M) の桁指定 KnS :ステート (S) の桁指定*1 T :タイマ(T) の現在値 C :カウンタ (C) の現在値 D :データレジスタ (ファイルレジスタ) V, Z :インデックスレジスタ *1:指定のないKnは、 16ビット時K1∼K4, 32ビット時K1∼K8。 前ページの例では、 S1・ ・ , には、 ワード要素すべてが指定可能。 S2・ D・ ・ には、 K, H, KnXを除くワード要素が指定可能。 D・ S1・ S2・ ・ , , には、 ビット要素は指定不可。 であることを示しています。 D・ S1・ のよ また、 , うに 「・」 マークを付加したオぺランドはインデックス修飾が可能であ ることを示しています。 (☞5−3) S1 D インデックス修飾が行なえないオペランドは、 , のよ うに表現されています。 ⑤命令の動作に応じて動作するフラグを表示します。 直接的なフラグを持たない命令のばあいは表示していません。 ⑥この命令をサポートしているばあいは、 「●」 マークを表示します。 ⑦命令の基本動作と使い方,応用例,拡張機能,注意点などを順次説明します。 127 6.応用命令解説 MEMO 128 プログラムフロー 6.応用命令解説 6−3. FNC00∼FNC09 「プログラムフロー」 ∼ FNC00 FNC09 FNC10 ∼ FNC00∼FNC09にはプログラムの条件実行や優先処理など、主にシーケ ンスプログラムの制御フローに関連する命令が用意されています。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 FNC29 00 CJ 条件ジャンプ 01 CALL サブルーチンコール 02 SRET サブルーチンリターン 03 IRET 割込みリターン 04 EI 割込み許可 05 DI 割込み禁止 06 FEND メインプログラム終了 07 WDT ウォッチドッグタイマ 08 FOR 繰返し範囲開始 FNC50 09 NEXT 繰返し範囲終了 FNC59 ∼ FNC30 FNC39 ∼ FNC40 FNC49 ∼ ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 129 プログラムフロー 6.応用命令解説 FNC 00 CJ FNC00 シリーズ名 CONDITIONAL JUMP CJ 対 象 要 素 対象機種 条件ジャンプ P 16ビット命令 CJ (連続実行形) 3ステップ CJ P (パルス実行形) 32ビット命令 ● ● ● ● ● ● ― ●ポインタ(P)は、機種により下記の番号が指定できます。ただし、P63はENDス テップへのジャンプを意味しますので、ラベルのプログラムは不要です。 :P0∼P63 ・FX0,FX0S,FX0N,FX1 :P0∼P63 ・FX2(V2.30以下) ・ FX2(V3.07以上),FX2C :P0∼P127 ●ポインタ番号は、インデックス修飾が可能です。 機能と動作 FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 バージョンによる 番号差あり FX2C シーケンスの一部を実行させない命令としてCJ、 CJ P 命令があり演算周期の短縮やダブルコ イルの使用が可能となります。 下図の例においてX000がONすると1ステップから3 6ステップ(ラベルP8の次のステップ)へジャ ンプします。 X000がOFFのときはジャンプは行われず、 1ステップから4ステップへ移ります。 ジャンプされている命令は実行されません。 X000 FNC 00 0 X001 4 X002 6 X003 8 X004 11 X005 15 X006 18 X007 22 X010 25 Y001 区分 M 1 S 1 T 0 Y,M,S K 10 RST T246 K1000 RST C 0 36 X012 40 ラベル P 9 X013 CJ 1ms タイマ C 0 K 20 X000 FNC 00 D 0 P 9 Y001 RST T246 RST C 0 ルーチンタイマT192∼T199 (FX1, FX2, FX2C)や高速カウンタC23 5∼ C255は、駆動後にジャンプすると動 作を続行し、出力接点も動作します。 130 ジャンプ前の 接点状態 カウンタ ジャンプ中の 接点動作 ジャンプ中の コイルの動作 X001,X002, X003 OFF X001,X002, X003 ON Y001,M1,S1 OFF X001,X002, X003 ON X001,X002, X003 OFF Y001,M1,S1 ON X004 ON タイマ不作動 X004 OFF 計時中断 X000 OFF後継続 X005 OFF X006 OFF X006 ON タイマ不作動 X005 OFF X006 ON X006 OFF 計時続行 X000 OFF後接点動作 X007 OFF X010 OFF X010 ON 計数不作動 X007 OFF X010 ON X010 OFF 計数中断 X000 OFF後継続 X011 OFF X011 ON X011 ON X011 OFF 10ms X004 OFF 100ms タイマ X004 ON T246 MOV ラベル P 8 ジャンプ中に変化してもコイルはこうなる! P 8 X011 FNC 12 K 3 29 43 CJ 応用 命令 ジャンプ中はFNC命令 は実行されません ただし、FNC52∼58 は動作を継続しま す ●Y0 01はダブルコイルになっていますが、 X000 =OFFのときはX001により、 X000=ONのとき はX012により動作します。条件ジャンプで区 切られたプログラムであっても、 ジャンプ内ま たはジャンプ外に同一コイルを2個以上プロ グラムしたばあいは一般のダブルコイルと同 一の扱いとなります。 ●積算タイマやカウンタのリセット命令がジャン プ外にあるときは、 計時コイルや計数コイルが ジャンプされていてもリセット (接点の復帰や 現在値のクリア) は有効です。 プログラムフロー 6.応用命令解説 X020 FNC 00 CJ P 9 FNC 00 CJ P 9 ●オペランド中のポインタ番号が同一番号で、 ラベルが FNC00 1個のばあい次のような動作になります。 ●X020がONのときはここからラベルP9へジャンプしま CJ す。 X020がOFFでX021がONのときはX021のCJ命 令からラベルP9へジャンプします。 ●ラベル番号は後述のCALL命令用のラベルを含め、 重複番号を用いるとエラーになります。 X021 ラベル P 9 ラベル P 10 ●CJ命令より若いステップ番号の位置にラベルをプロ グラムすることもできますが、 X022を約100ms (FX2, FX2C) または約200ms (FX0, FX0S, FX0N, FX1)以 上ONするとウオッチドッグタイマエラーが発生します ので注意が必要です。 X022 FNC 00 CJ M8000 FNC 00 RUNモニタ CJ ラベル P 5 ラベル P 6 X022 FNC 00 CJ P X023 P 10 P 5 ●M8000はシーケンサの運転中は常時ONしています ので左のような使い方は無条件ジャンプとなります。 P 6 ●CJ P 命令を用いるとX022がOFF→ONに変化した 後の1回だけジャンプが有効になります。 PLS M 0 M 0 FNC 00 CJ X023 P 7 ●左図の例ではX023がOFF→ONに変化してから1演 算周期後にCJP7が有効になります。 この方法によりCJP7∼P7間の出力をすべてOFFに してからジャンプをさせることができます。 ラベル P 7 ●ラベルのプログラムは次のとおりとなります。 X030 FNC 00 CJ P 20 X031 LD CJ X030 P 20 LD OUT X031 Y010 P 20 X032 Y011 Y010 ラベル P 20 X032 Y011 LD OUT FNC 00 CJ ラベル P 63 END P 63 ●ENDステップへのジャンプを意味するポインタP63を プログラムしたばあいは、 ラベルP63はプログラムしな いでください。 ラベルP63をプログラムしたばあいシー ケンサは、 エラーコード6 5 0 7 (ラベル定義不良) を表示 し停止します。 プログラムしません 131 プログラムフロー 6.応用命令解説 マスタコント ロールとジャ ンプ命令 マスタコントロール命令とジャンプ命令の関係と動作内容は次のとおりです。 CJ P 0 MC N 0 M 0 CJ P 2 ③MC内からMC内へ。 M 0=OFFのときは ジャンプできません。 P 2 CJ P 3 MCR N 0 P 3 P 0 132 MC N 0 M 1 CJ P 4 MCR N 0 ⑤MC内から 他のMC内 へのジャ ンプ MC N 0 M 2 ④MC内からMC外へ。 M 0=OFFのときは ジャンプできません。 M 0=ONのときは ジャンプしますが、 MCRが無効になります。 マスタ コントロール マスタコントロール P 1 ②MC外からMC内へ。 MCの動作とは無関係 にジャンプ。 M 0がOFFであっても P1 以降はM 0をONとみ なします。 マスタ コントロール CJ P 1 ①MC外からMC外へ。 自由にジャンプで きます。 P 4 MCR N 0 M 1がONならばジャンプできます。ジャンプ 以降の回路は、M 2のON/OFFとは無関係にこ れをONとみなして動作します。また最初の MCR N 0は無視されます。 プログラムフロー 6.応用命令解説 FNC 01 CALL P シリーズ名 SUB ROUTINE CALL FNC 02 SRET 16ビット命令 CALL (連続実行形) 3ステップ CALL P (パルス実行形) 要 素 ― SRET 単独命令 1ステップ 象 32ビット命令 サブルーチンリターン SUB ROUTINE RETURN 対 対象機種 サブルーチンコール ― ― ― ● ● ● 備考 FX0 FX0S FNC01 FNC02 CALL SRET FX0N FX1 FX2 FX2C 駆動接点を必要としない単独命令です。 ●サブルーチンコールのポインタ(P)は、下記の番号が指定できます。 ・FX1,FX2(V2.30以前) : P0∼P62 ・FX2(V3.07以上),FX2C : P0∼P62, P64∼P127 P63は、FNC00(CJ)命令使用時のENDジャンプとなるため、 FNC01(CALL)命令のポインタとしては動作しません。 (☞FNC00) ●ポインタ番号は、インデックス修飾が可能です。 ネスティングは、5重まで可能。 ●サブルーチンリターンには対象要素はありません。 X000 FNC 01 CALL 機能と動作 P 10 メ イ ン FNC 06 FEND ラベル P 10 サ ブ ル | チ ン FNC 02 SRET ●X000がONしていると、 CALL命令が実行されラベル P10のステップへジャンプします。 ここでサブルーチンプログラムを実行してから、 SRET命令を実行することにより元のステップ1 04へ 戻ります。 ●ラベルは後述のFEND命令後にプログラムしてく ださい。 ●CJ命令のラベルと重複番号を用いないでください。 ただし、 CALL命令のオペランドとしての番号重複 はさしつかえありません。 END X001 ラベル P 11 ラベル P 12 FNC 01 CALL P P 11 FNC 06 FEND FNC 01 CALL P 12 FNC 02 SRET ① FNC 02 SRET END ② メ イ ン サ ブ ル | チ ン サ ブ ル | チ ン ●X001=OFF→ON後の1回だけCALL P P11命 令が実行されラベルP11へジャンプします。 ●P1 1のサブルーチンプログラムを実行中にP1 2 のCALL命令が実行されると、 P12のサブルーチン プログラムを実行し、 SRET命令②によりP1 1のサブ ルーチンプログラムへ戻ります。 ●ここでSRET命令①を実行するとメインプログラム へ復帰します。 ●このようにサブルーチンプログラム内のCALL命令 は4回まで、全体として5重のネスティングが許され ています。 サブルーチンや割込みルーチンの中ではタイマとして、 T192∼T1 99または、 T24 6∼T24 9を用い てください。 (FX1, FX2, FX2C) 133 プログラムフロー 6.応用命令解説 FNC03 FNC04 FNC05 FNC 03 IRET INTERRUPTION RETURN I RET E I D I シリーズ名 単独命令 1ステップ FNC 04 EI INTERRUPTION ENABLE 象 要 素 単独命令 FX0S FX0N FX1 FX2 FX2C 駆動接点を必要としない単独命令です。 対象機種 割込み禁止 シリーズ名 単独命令 1ステップ 要 EI ● ● ● ● ● ● ●割込みの入力パルス幅は、機種により次のとおりです。 : 100μs以上 ・FX0,FX0S,FX0N : 500μs以上 ・FX1 : 200μs以上 ・FX2,FX2C ●FX2,FX2Cでは、多重割込みは二重まで動作します。 INTERRUPTION DISENABLE 象 駆動接点を必要としない単独命令です。 備考 FX0 割込みリターンおよび割込み許可には、対象要素はありません。 FNC 05 DI 対 IRET 割込み許可 1ステップ 対 対象機種 割込みリターン DI 駆動接点を必要としない単独命令です。 割込み禁止には、対象要素はありません。 ●割り込み禁止区間が必要ないばあいには、DI命令をプログラムする必要はありま せん。 ● ● ● ● ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C 素 FNC 04 EI 機能と動作 X010 M8050 FNC 05 DI FNC 04 EI 割り込み ポインタ I001 割り込み ポインタ I101 FNC 06 FEND FNC 03 IRET FNC 03 IRET END 134 割込み 許可範囲 割込み 禁止範囲 割込み 許可範囲 割込み ルーチン① ●シーケンサは通常割込み禁止状態になっています。 EI命令∼DI命令のプログラムをスキャン中に X0 0 0かX001がONすると、割込みルーチン①や② が実行され、 IRET命令により元のメインプログラムに 復帰します。 ●割込み禁止用の特殊補助リレーM805△が駆動され ていると、割込み許可範囲であっても割込みI**は 実行されません。 左図の例でX010がONしているときは割込み入力 X000=OFF→ONになってもI 001の割込みは実行さ れません。 ●割込み用ポインタ (I**) は、必ずFEND命令後にラ ベルとしてプログラムしてください。 割込み ルーチン② ●割込みプログラムの実行中は他の割込みは禁止され ます。 FX2およびFX2Cでは、割込みプログラムの中に EI, DI命令をプログラムすることにより二重の割込み まで受付け可能になっています。 プログラムフロー 6.応用命令解説 ●サブルーチンや割込みルーチンの中ではタイマとして、 T1 92∼T199 (FX1, FX2, FX2C) または T24 6∼T24 9(FX2, FX2C) を用いてください。 (☞2−6) ●多数の割込みが順次発生したばあいは先発優先であり、完全同時発生のときはポインタ番号 の若いものが優先されます。 ●DI∼EI命令間(割込み禁止区間) に割込みが発生しても、 これを記憶していてEI命令後に実 行されます。(特殊補助リレーM8 0 5△が駆動されているものを除きます) 禁止区間の時間が長いと割込みの受付けは遅れます。 ●割込み禁止が不要なときは、 EI命令のみプログラムしてください。必ずしもDI命令をプログラ ムする必要はありません。 割込み用 ポインタ FNC03 FNC04 FNC05 I RET E I D I ●割込みポインタとして用いる入力リレーの番号は、同じ入力範囲を用いる 「高速カウンタ」や 「パルス密度(FNC56)」 などの応用命令とは重複しないようにしてください。 ●ポインタ番号はラベルとして重複プログラムすることはできません。 また、 I 100とI 101あるいは I 610とI 620など100の桁の重複番号は使えません。 《入力割込み 6点》 I□0□ 重複使用不可 0:立下り割込み ︵多重割込み 2重︶ FX2 FX2C 1:立上り割込み 入力X000∼X005に応じて0∼5 入力割込みの動作 : 例えばI 001は入力X000がOFF→ONに変化したときに、 このポインタに よるラベルの後でプログラムされているシーケンスを割込み実行し、 IRET命令により元に戻ります。 《タイマ割込み 3点》 I□□□ 重複使用不可 10∼99 (ms) 6, 7, 8 タイマ割込みの動作 : 例えばI 610のばあい10msごとにラベルI 6 10の後でプログラムされてい るシーケンスを割込み実行し、 IRET命令により元に戻ります。 タイマ割込みは、高速処理や一定時間毎に実行させたいプログラム等 に利用します。 135 プログラムフロー 6.応用命令解説 《カウンタ割込み 6点》 (FX2は、V3. 07以上で有効) I0□0 重複使用不可 1∼6 ︵多重割込み 2重︶ FX2 FX2C カウンタ割込みの動作:I 0□0は高速カウンタの現在値を利用した割込みであり、 HSCS (比較セッ ト)命令と併用します。 高速カウンタ用比較命令 FNC 53 K1000 C255 I010 D HSCS ●左図の例では、高速カウンタC2 55の現在 値がK1000になった時点で割込みが発 生し、割込みプログラムを実行した後に 元のプログラムに復帰します。 FNC 06 FEND I010 割り込みプログラム FNC 03 IRET 割り込みリターン ●特殊補助リレーM8059=ONのときには、 カウンタ割込みI 010∼I 060はすべて禁止 となります。 また、個別禁止M805□の影 響は受けません。 END 《入力割込み 3点》 ︵多重割込み不可︶ FX1 I□0□ 重複使用不可 0:立下り割込み 1:立上り割込み 入力X000∼X002に応じて0∼2 入力割込みの動作 : 前述のFX2, FX2Cの入力割込みの動作と同一です。 《入力割込み 4点》 ︵多重割込み不可︶ FX0 FX0S FX0N 注意事項 136 I□0□ 重複使用不可 0:立下り割込み 1:立上り割込み 入力X000∼X003に応じて0∼3 入力割込みの動作 : 前述のFX2, FX2Cの入力割込みの動作と同一です。 入出力動作を伴う制御に対して割込み処理を行うばあいは、入出力リフレッシュ (FNC50REF) 命令もプログラムする必要があります。 プログラムフロー 6.応用命令解説 タイマ 割込み の利用例 ①タイマ割込みは6, 7, 8を使用。重複番号は指定できません。 I○○○ ②10∼99msの割込み周期を指定します。 ① ② FNC67 (RAMP), FNC71 (HKY), FNC74 (SEGL), FNC75(ARWS), FNC77 (PR)命令は スキャン時間に同期して、一連の動作を行う命令です。 このばあい、全体時間が長くかかりすぎたり、時間変動が問題になることがありますので、 このよう なばあいにタイマ割込みを用います。 なお、 タイマ割込みを用いないばあいは、 コンスタントスキャンモードをご使用ください。 《傾斜信号発生回路の例》 0 X000 1 スタート FNC 04 EI 割込み許可 FNC 12 MOV K 1 D 1 FNC 12 MOV K255 D 2 14 16 I610 次のような傾斜信号出力回路を10msの タイマ割込みでプログラムしてみましょう。 (D 3) (D 1)=1 M 1 X000=ON SET M8029 M 1 D 1 D 2 初期値 終期値 RST M 1 FNC 03 IRET 31 実行完了 D 4は実行回数の計数用レジスタであり、 ユーザは使えません。 FNC 67 RAMP M8029 30 10秒 M 0 FNC 06 FEND 18 I RET E I D I (D 2)=255 PLS M 0 FNC03 FNC04 FNC05 END D 3 K1000 現在値 移行回数 1,000回(10秒)の命令実行の 間で(D 3)の内容は(D 1)から (D 2)の値へ移行します。 ●実行完了フラグM802 9が動作したらRAMP命 令の駆動入力をOFFしています。 連続ONのばあ いは、 (D3) の値が最終値(D2) に達するとただち に初期値(D1) に復帰し、再度同じ動作を繰返し ます。 (V1. 2 0以上) またはFX2Cシーケンサでは、 M8026を駆動しておくことにより、 (D3) の値が最 FX2 終値(D2) に達した後はその値を保持するようになっています。 《FNC71 (HKY)のタイマ割込み処理の例》 20msのタイマ割込み処理で HKY命令を駆動。 FNC 04 EI FNC 06 FEND M8000 I620 FNC 50 REF X000 K 8 FNC 71 HKY X000 Y000 FNC 50 REF Y000 K 8 D 0 M 0 FNC 03 IRET END 137 プログラムフロー 6.応用命令解説 FNC 06 FEND FNC06 FIRST END シリーズ名 単独命令 FEND 1ステップ 対 対象機種 メインプログラム終了 FEND ● ● ● ● ● ● 駆動接点を必要としない単独命令です。 メインプログラム終了には、対象要素はありません。 象 備考 FX0 FX0S FX0N FX1 FX2 FX2C 要 素 CJ P 20 メインルーチン プログラム メインルーチン プログラム FNC 06 FEND END メインルーチン プログラム X011 FNC 01 CALL P 21 メインルーチン プログラム X011=OFFのとき X011=ON のとき X010 FNC 00 FNC 06 FEND P20 0 メインルーチン プログラム ジャンプ X010=OFFのとき 0 X010=ONのとき 機能と動作 この命令はメインルーチンのプログラムの終了を意味しますが、 この命令を実行するとEND命令 のときと同様に出力処理, 入力処理, ウオッチドッグタイマのリフレッシュを行ってから0ステップの プログラムへ戻ります。 FNC 06 FEND P21 I100 サブルーチン プログラム 割込みルーチン プログラム END ●CALL、 CALL P 命令のラベルはFEND命令後にプログラムし必ずSRET命令が必要にな ります。 割込み用ポインタも必ずFEND命令後にプログラムしIRET命令が必要になります。 ●CALL、 CALL P 命令を実行後SRET命令を実行するまでにFEND命令を実行したり、 FOR 命令実行後NEXT命令を実行する前にFEND命令を実行するようなプログラムはエラーにな ります。 ●FEND命令が複数用いられているばあい、最後のFEND命令とEND命令間にサブルーチン プログラムや割込みルーチンプログラムをプログラムしてください。 138 プログラムフロー 6.応用命令解説 FNC 07 WDT シリーズ名 WATCHDOG TIMER 単独命令 1ステップ 対 象 要 素 対象機種 ウォッチドッグタイマ P WDT (連続実行形) ● ● ● ● ● ● WDT P (パルス実行形) ウォッチドッグタイマには、対象要素はありません。 機能と動作 FX0 FX0S FX0N FNC07 備考 P P P 命令なし 命令なし WDT 命令なし FX1 FX2 FX2C シーケンスプログラムの中でウオッチドッグタイマのリフレッシュを行う命令がWDT命令です。 シーケンサの演算周期(0∼ENDまたはFEND命令実行時間)が100ms (FX2, FX2C) または 2 00ms (FX0, FX0S, FX0N, FX1) を超えるようなばあいシーケンサはCPU−E LEDが点灯しSTO Pしますので、 プログラムの途中に挿入して用います。 X000 X000 X000 FNC 07 WDT P 1 スキャン実行 FNC 07 WDT 毎スキャン実行 60msの プログラム 120msの プログラム WDT 60msの プログラム END 例えば12 0msのプログラ ムを2分割して、その中 間にWDT命令をプログ ラムすると前半後半とも に10 0ms以下となります。 END ●WDT命令は、 CJ命令のラベルがCJ命令よりも若いステップ番号にプログラムされているときに ラベルの後にプログラムしたり、 FOR∼NEXT命令間にプログラムして用いることもあります。 ウォッチドッ グタイマ 時 間の変更 ●D8000 (ウォッチドッグタイマ時間) の内容を書き換えることでウォッチドッグタイマの検出時間 を変更することができます。 (☞7−2) 下記のプログラムを入力することで、 これ以降のシーケンスプログラムは新しいウォッチドッグ タイマ時間で監視されるようになります。 M8002 0 イニシャルパルス FNC 12 MOV FNC 07 WDT K300 D8000 ウォッチドッグタイマ時間 300ms ウォッチドッグタイマリフレッシュ FNC07 (WDT) 命令をプログラムしなかったばあいは、 END処理時にD8000の値が有効となります。 ●位置決め, カムスイッチ, IDインタフェース, リンク, アナログなどの特殊増設機器の接続台数 が多い構成では、 シーケンサRUN時に行われるバッファメモリの初期化時間が長くなり演算時 間が延びます。 また多数のFROM/TO命令を実行したり、多数のバッファメモリを転送したば あいにも演算時間が延びます。 このようなばあいにもウォッチドッグタイマエラーが発生することがありますので、先頭ステップ 付近に上記プログラムを入力してウォッチドッグタイマ時間を延ばすか、 FROM/TO命令の 実行タイミングをずらしてください。 139 プログラムフロー 6.応用命令解説 FNC08 FNC09 FNC 08 FOR シリーズ名 FOR FOR NEXT 対象機種 繰返し範囲開始 FOR 16ビット命令 (連続実行形) 32ビット命令 ― 3ステップ 対 ワード 要素 K,H KnX KnY S・ KnM KnS T C D 象 要 素 ファイルレジスタ V,Z S・ ビット 要素 X Y M FNC08 FOR S ● ● ● ● ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C n ネスティング : 5重 FNC 09 NEXT NEXT シリーズ名 単独命令 1ステップ 対 象 要 素 対象機種 繰返し範囲終了 NEXT 駆動接点を必要としない単独命令です。 繰返し範囲終了には、対象要素はありません。 機能と動作 ● ● ● ● ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C FOR∼NEXT命令間の処理をn回(ソースデータで指定された回数) だけ実行した後、 NEXT命 令以降のスッテップの処理を行います。 n=1∼32, 767が有効であり、 −32, 768∼0を指定したときはn=1として処理します。 X010 FNC 08 FOR K 4 FNC 08 FOR D 0Z FNC 00 CJ P 22 FNC 08 FOR K1X000 FNC 09 NEXT ① FNC 09 NEXT ② FNC 09 NEXT ③ P 22 [A] [B] [C] ●[C]のプログラムを4回実行しNEXT命令③以 降のプログラムへ移ります。 ●[C]のプログラムを1回実行する間にデータレ ジスタD0Zの内容が6であれば[B] のプログラ ムが6回実行されます。 したがって [B] のプログラムは合計24回実行さ れます。 ●FOR∼NEXTのプログラムを実行させたくな いときはCJ命令で、 ジャンプさせます。 (X010=ON) X010がOFFのときは、例えばK1X000の内容 が7であれば[A] のプログラムは[B] のプログ ラムの実行1回の間に7回実行され、 全体として 4×6×7=168回実行されます。 ●このようなネスティングは5重まで有効となって います。 ●繰返し回数が多く、演算が長くなるばあいは ウォッチドッグタイマエラーとなることがあります のでご注意ください。 (前ページ参照) ●NEXT命令がFOR命令の前にあったり、 NEXT命令がないときあるいはFEND, END命令以降に NEXT命令があるとき、 FOR命令とNEXT命令の個数が一致しないときなどはエラーとなります。 140 転送・比較 6.応用命令解説 6−4. FNC10∼FNC19 「転送・比較」 ∼ FNC00 FNC09 FNC10 ∼ FNC10∼FNC19には、 応用命令を使う上で最も重要とされるデータの転送 や比較など基本的なデータ操作命令が用意されています。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 FNC29 10 CMP 比較 11 ZCP 帯域比較 12 MOV 転送 13 SMOV 桁移動 14 CML 反転転送 15 BMOV 一括転送 16 FMOV 多点転送 17 XCH データの交換 18 BCD BCD変換 FNC50 19 BIN BIN変換 FNC59 ∼ FNC30 FNC39 ∼ FNC40 FNC49 ∼ ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 141 転送・比較 6.応用命令解説 D FNC 10 CMP P COMPARE 対象機種 比較 シリーズ名 CMP D CMP (連続実行形) CMP 7ステップ P (パルス実行形) 13ステップ D CMP P (パルス実行形) 16ビット命令 FNC10 対 ワード 要素 CMP 象 要 素 ビット 要素 機能と動作 S2・ S1・ K,H X KnX Y KnY M KnM 32ビット命令 (連続実行形) KnS T C D ファイルレジスタ V,Z ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし FX1 FX2 FX2C D・ は3点を占有します。 S D・ X000 FNC 10 CMP M 0 M 1 M 2 S1・ S2・ D・ K100 C 20 M 0 K100>C 20現在値でON K100=C 20現在値でON K100<C 20現在値でON ●ソース S1・ とソース S2・ の内容を比 較し、その大小一致に応じて D・ が 動作します。 大小比較は代数的に行われます。 (−10<2) ●すべてのソースデータはバイナリ値とし て扱われます。 ●デスティネーションとして、例えばM0を 指定すると、左記のとおり自動的にM0, M1, M2が占有されます。 X000=OFFでCMP命令が不実行になっても、M 0∼M 2は X000がOFFする前の状態を保持しています。 命令不実行時に比較結果をクリアしたいばあいは、 リセット命令などを用いてください。 X000 142 命令なし RST M 0 RST M 1 RST M 2 X000 または FNC 40 ZRST M 0 M 2 M 0∼M 2 リセット 転送・比較 6.応用命令解説 D FNC 11 ZCP P ZONE COMPARE 対 ワード 要素 対象機種 帯域比較 シリーズ名 ZCP D ZCP (連続実行形) ZCP 9ステップ P (パルス実行形) 17ステップ D ZCP P (パルス実行形) 16ビット命令 K,H KnX KnY 32ビット命令 (連続実行形) S1・ S2・ S・ KnM KnS T C D ファイルレジスタ V,Z 象 要 素 ビット 要素 機能と動作 X Y M ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FNC11 FX1 FX2 FX2C ZCP D・ は3点を占有します。 S D・ X000 FNC 11 ZCP M 3 M 4 S1・ S2・ S・ D・ K100 K120 C 30 M 3 K100>C 30現在値 のときON K100≦C 30現在値≦K120 のときON M 5 C 30現在値>K120 のときON 2点の設定値に対する大小比較 命令です。 ●ソース S1・ の内容はソース S2・ の内容より大きくないも のとします。 例えば S1・ =K100 S2・ =K90 のときは S2・ =K 1 0 0とみな して演算が行われます。 X000=OFFでZCP命令が不実行になっても、M 3∼M 5は X000がOFFする前の状態を保持しています。 ●大小比較は代数的に行われます。 (−10<2) ●上下2点の比較値とソースデータの内容を比較し、 その大小帯域内に応じてM3, M4, M5が働 きます。 デスティネーションとしてM3を指定すると、 上例のようにM3, M4, M5が自動的に占有されます。 命令不実行時に比較結果をクリアしたいばあいは、 リセット命令などを用いてください。 X000 RST M 3 RST M 4 RST M 5 X000 または FNC 40 ZRST M 0 M 3 M 3∼M 5 リセット 143 転送・比較 6.応用命令解説 D FNC 12 MOV P MOVE 対象機種 転送 シリーズ名 16ビット命令 MOV (連続実行形) 5ステップ MOV P (パルス実行形) FNC12 対 ワード 要素 S・ K,H KnX KnY KnM KnS T D・ MOV 象 要 素 ビット 要素 機能と動作 D MOV (連続実行形) 9ステップ D MOV P (パルス実行形) 32ビット命令 X Y X000 M S C D ファイルレジスタ V,Z ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 FX2C (注)ファイルレジスタに対するデータ転送は、 FNC15(BMOV)命令をご使用ください。 FNC 12 MOV S・ D・ K100 D 10 (K100)→(D 10) データをそのまま転送するための 命令です。 ●ソースの内容がデスティネーションへ転送されます。 X0 0 0がOFFのときデータは変化しません。 ●定数K100は自動的にBINに変換されています。 《タイマ,カウンタ,現在値読出し例》 X001 FNC 12 MOV T 0 D 20 (T 0現在値)→(D 20) カウンタについても同様です。 《タイマ,カウンタの設定値の間接指定例》 X002 FNC 12 MOV M 0 K100 T 20 D 10 D 10 (K100)→(D 10) D 10=K100(10秒タイマ) 《ビット要素の転送》 X000 Y000 X001 Y001 X002 Y002 左記のシーケンスプログラムは、下記のMOV 命令で表現することができます。 M8000 RUNモニタ X003 FNC 12 MOV K1X000 K1Y000 Y003 《32ビットデータの転送》 演算結果が3 2ビットとして出力される応用命令(MULなど) や32ビットの数値あるいは32ビット要 素である高速カウンタ現在値などの転送は必ず D 命令を用いてください。 144 FNC 12 D MOV D0(D1) D10(D11) FNC 12 D MOV C235 D20(D21) (D 1,D 0)→(D 11,D 10) (C235現在値)→(D 21,D 20) 転送・比較 6.応用命令解説 FNC 13 SMOV 対象機種 桁移動 P シリーズ名 SHIFT MOVE SMOV 16ビット命令 11ステップ SMOV 対 素 S・ ワード 要素 ビット 要素 ― ― ― ― ● ● ― P (パルス実行形) K,H KnX KnY KnM KnS T D・ 象 要 32ビット命令 (連続実行形) m1,m2,n 機能と動作 X Y M C D ファイルレジスタ V,Z 備考 FX0 FX0S FX0N FNC13 FX1 バージョンによる 機能差あり FX2 FX2C SMOV m1,m2,n=1∼4 S (FX2 V2.30以下は、拡張機能なし) X000 FNC 13 SMOV S・ m1 m2 D・ n D 1 K 4 K 2 D 2 K 3 ソースデータ (BIN)のBCD変 換値についてその4桁目 (m1= 4) から下位2桁分(m2=2) をデ スティネーションの3桁目 (n=3) を先頭として転送しこれをBIN に変換します。 1 00桁はD1′ からの転 D2′ 1 03桁、 送時に何等影響を受けません。 データの分配・合成を行う命令 です。 D 1(バイナリ16ビット) ↓自動変換 103 102 101 D 1′(BCD 4桁) 100 ↓桁移動 103 102 101 変化しない 100 D 2′(BCD 4桁) 変化しない ↓自動変換 D 2(バイナリ16ビット) BCDの値が、0∼9,999を越えるとエラーになります。 《応用例》 M8000 FNC 19 BIN K2X020 D 2 (X020∼X027)BCD 2桁 →D 2(バイナリ) FNC 19 BIN K1X000 D 1 (X000∼X003)BCD 1桁 →D 1(バイナリ) FNC 13 SMOV 非連続の入力端子に接続された3 個のディジタルスイッチのデータを 合成します。 拡張機能 (FX2, FX2C) X010 K 1 K 1 D 2 K 3 ●D1の1桁分(BCD) をD2の3桁目 (BCD) に転送し自動的に BINに変換します。 ●以上のシーケンスで3桁のディジタルスイッチのデータが合 成されてD2へバイナリで格納されます。 M8168 FNC 13 D SMOV D 1 1 K 4 K 2 D 2 K 3 ●M8168を駆動してからSMOV命令を 実行すると、 上例D1′ , D2′ のようにBCD 変換を行わないで、 そのまま4ビット単 位で桁移動が行われます。 M8168 X010 145 転送・比較 6.応用命令解説 D FNC 14 CML P COMPLEMENT 対象機種 反転転送 シリーズ名 16ビット命令 CML (連続実行形) 5ステップ CML P (パルス実行形) D CML (連続実行形) 9ステップ D CML P (パルス実行形) 32ビット命令 FNC14 対 ワード 要素 CML 象 要 素 ビット 要素 S・ K,H X KnX KnY Y KnM M KnS T D・ C X000 ファイルレジスタ V,Z FX0S FX0N FX1 FX2 FX2C S S・ 機能と動作 D ― ― ― ― ● ● 備考 FX0 FNC 14 CML D 0 D・ データを反転して転送する命令です。 K1Y000 (D 0)→(K1Y000) ●ソースデータの各ビットを反転(0→1, 1→0) してデスティネーションへ転送します。 ソースに定 数Kを用いると自動的にバイナリに変換されています。 ●シーケンサの出力として論理反転出力がほしいときに役立ちます。 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 符号ビット(0=正数 1=負数) 0 1 0 1 Y017 Y016 Y015 Y014 Y013 Y012 Y011 Y010 Y007 Y006 Y005 Y004 Y003 Y002 Y001 Y000 変化しません 反転データが 転送されます 《反転入力の取込み》 X000 X001 X002 X003 146 左記のシーケンスプログラムは、下記の CML命令で表現することができます。 M 0 M 1 M 2 M8000 RUNモニタ M 3 FNC 14 CML K1X000 K1M0 転送・比較 6.応用命令解説 FNC 15 BMOV P BLOCK MOVE 対 ワード 要素 素 対 ビット 要素 ワード 要素 素 対 素 (連続実行形) 7ステップ BMOV P (パルス実行形) 32ビット命令 ― S・ S・ K,H KnX KnY KnM KnS X K,H T C D V,Z ファイルレジスタ D・ Y KnX M KnY KnM ビット 要素 ワード 要素 X M S・ S・ KnS ファイルレジスタ T C D V,Z S KnX KnY KnM n ビット 要素 機能と動作 X FX0N P 命令なし FNC15 FX1 FX2 バージョンによる 機能差あり FX2C BMOV D・ n≦512 FX2,FX2C S・ S・ K,H FX0 FX0S FX0N n Y ― ― ● ― ● ● 備考 n≦512 S D・ 象 要 BMOV n 象 要 シリーズ名 16ビット命令 n 象 要 対象機種 一括転送 KnS T C D V,Z ファイルレジスタ D・ Y X000 M8000 M S FNC 15 BMOV FNC 15 BMOV n≦512 S・ D・ D 5 D 10 S・ D・ K1M0 K1Y000 FX2,(V2.30以下) n K 3 D 5 D 10 D 6 D 11 D 7 D 12 M 0 Y000 M 1 Y002 M 2 Y003 M 3 Y004 M 4 Y005 M 5 Y006 M 6 Y007 M 7 Y008 n=3点 n K 2 n=2点 ●ソースで指定された要素を先頭とするn点のデータをデスティネーションで指定された要素を 先頭とするn点の要素に一括転送します。 (要素番号範囲オーバーのときは可能な範囲で転送 します。) ●桁指定を有するビットデバイスのばあい、 ソースとデスティネーションは同じ桁数としてください。 147 転送・比較 6.応用命令解説 ●下図のように転送番号範囲に重なりがあるばあい、転送元データが未転送にもかかわらず書 換わってしまうことを防止するために、番号の重なり方によって①∼③の順で自動的に転送さ れています。 X001 FNC 15 BMOV D 10 D 9 K 3 D 10 D 11 D 12 X002 FNC 15 BMOV D 10 D 11 K 3 D 10 D 11 D 12 ファイル レジスタの 扱い FX0N FX2 FX2C ① ② ③ ③ ② ① D 9 D 10 D 11 D 11 D 12 D 13 ファイルレジスタ (D) に対するデータの読出し/書込みは必ずBMOV命令を用いてください。 また、 ファイルレジスタに対する各シーケンサの機能は次のとおりです。 ●シーケンスプログラム上では、 ファイルレジスタD1000∼D24 99 (パラメータで領域設定必要) からの読出しのみが行えます。 ファイルレジスタの値は一度汎用のデータレジスタなどの要素に読出してから他の命令で使っ てください。 ●ファイルレジスタの内容は周辺機器から書込んでください。 ●ファイルレジスタD1 00 0∼D2 9 9 9 (パラメータで領域設定必要) とD6 0 00∼D79 9 9 (M8 0 74=ON) に対して、 シーケンスプログラム上および周辺機器からデータの読出し,書込みが行えます。 (FX2 V2. 30以下の製品はシーケンスプログラム上ではD1000∼D2999からの読出しのみに対応) ●ファイルレジスタは、 プログラムメモリ内に確保されているため、 EPROMカセットのばあいや EEPROMカセットをプロテクトスイッチONの状態で用いているときは、 D1000∼D2999への書 込みは行えません。 (EEPROMカセットをプロテクトスイッチOFFの状態で用いているばあい は書込み可能ですが、 8点当たり約10ms e cが必要となり、 プログラムの実行が中断されて自動 的にWDTがリフレッシュされますので、注意が必要です。) また、 EEPROMの書込み許容回数は1万回以下となっています。 ●汎用レジスタ (D0∼D999) とファイルレジスタ (D1000∼) を連続して1つのBMOV命令で転 送すると演算エラーとなります。 例 : BMOV D990 D0 K20 ...... D990 ∼D1009→D0 ∼D19へ転送 汎用レジスタとファイルレジスタの要素番号が連続 このばあいは、汎用レジスタとファイルレジスタは2つのBMOV命令に分けて転送してください。 例 : BMOV D990 D0 K10 ...... D990 ∼D999 →D0 ∼D9 へ転送 BMOV D990 D10 K10 ...... D1000∼D1009→D10∼D19へ転送 《読出し例》FXON ,FX2,FX2C X001 X002 FNC 15 BMOV D1000 D 0 K100 (D1000∼D1099)→(D 読出し FNC 10 CMP C 50 D 0 M 0 カウンタ C50の現在値とD 0を比較し、結果を M 0∼M 2へ出力 《書込み例》FX2,FX2C X001 X002 148 FNC 15 BMOV K123 D1000 K 1 (K123)→(D1000) 書込み FNC 15 BMOV D 0 D1000 K 1 (D 0)→(D1000) 書込み 0∼D 99) 転送・比較 6.応用命令解説 D FNC 16 FMOV シリーズ名 FILL MOVE 対 ワード 要素 素 FMOV D FMOV (連続実行形) 7ステップ FMOV P (パルス実行形) 13ステップ D FMOV P (パルス実行形) 16ビット命令 K,H KnX KnY KnM ビット 要素 機能と動作 X Y M X000 S FNC 16 FMOV 32ビット命令 (連続実行形) S・ KnS T D・ n 象 要 対象機種 多点転送 P C D ファイルレジスタ V,Z ― ― ― ― ● ● 備考 FX0 FX0S FX0N FNC16 FX1 FX2 バージョンによる 機能差あり FMOV FX2C n≦512 (FX2 V2.30以下は、32ビット命令なし) S・ D・ n K 0 D 0 K 10 D 0∼D 9にK 0を転送します。 同一データの多点転送命令です。 ●ソースで指定された要素の内容をデスティネーションで指定された要素を先頭とするn点の要 素に転送します。n点の要素の内容はすべて同一になります。 デスティネーションの要素番号範囲がオーバするときは可能な範囲で転送します。 K 0 K 0 D 0 K 0 D 1 K 0 D 2 K 0 D 3 K 0 D 4 n K 0 D 5 K 0 D 6 K 0 D 7 K 0 D 8 K 0 D 9 149 転送・比較 6.応用命令解説 D FNC 17 XCH P EXCHANGE 対象機種 交換 シリーズ名 16ビット命令 XCH (連続実行形) 5ステップ XCH P (パルス実行形) FNC17 対 ワード 要素 K,H KnX KnY KnM D1・ D2・ KnS T C D XCH (連続実行形) 9ステップ D XCH P (パルス実行形) 32ビット命令 D ファイルレジスタ V,Z XCH 象 要 素 ビット 要素 機能と動作 X Y X000 M S X000 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C (FX2 V2.30以下は、拡張機能なし) FNC 17 XCH P D1・ D2・ D 10 D 11 デスティネーション相互間でデータの交換を行います。 連続実行命令を用いると各演算周期ごとにデータが交 換されますので注意が必要です。 実行前(D 10) =100 (D 11)=101 拡張機能 (FX2, FX2C) ― ― ― ― ● ● 備考 M8160 SWAP FNC 17 D XCH P M8160 D 10 D 10 → 実行後(D 10) =101 (D 11)=100 ●M8160がONで D1・ と D2・ が同一デバイス のばあい、 下位8ビットと上位8ビットの交換を行い ます。 ●32ビット命令のばあいも同様です。 D 11 D 10 上8ビット 下8ビット 上8ビット 下8ビット M8000 ●M8160がONで D1・ と D2・ のデバイス番号が異なるときは、エラーフラグM8067がONと なり、命令は実行されません。 150 転送・比較 6.応用命令解説 FNC 18 BCD D P BINARY CODE TO DECIMAL 対 ワード 要素 K,H 対象機種 BCD変換 シリーズ名 16ビット命令 BCD (連続実行形) 5ステップ BCD P (パルス実行形) KnX KnY KnM S・ KnS T 象 要 素 C D BCD (連続実行形) 9ステップ D BCD P (パルス実行形) 32ビット命令 D V,Z ファイルレジスタ D・ ビット 要素 機能と動作 X Y X000 M S ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FNC18 FX1 FX2 バージョンによる 機能差あり FX2C BCD (FX2 V2.30以下は、拡張機能なし) FNC 18 BCD S・ D・ D 12 K2Y000 ソース(BIN)→デスティネーション(BCD)の変換転送命 令です。 ●BCD, BCD P 命令ではBCD変換結果が0∼9, 999以外になるときはエラーとなります。 D BCD, D BCD P 命令ではBCD変換結果が0∼99, 999, 999以外になるときはエラーとな ります。 ●シーケンサ内のバイナリデータをセブンセグメント表示器などのBCDデータにして外部へ出力 するときに用います。 拡張機能 (FX2, FX2C) X000 M8023 FNC 18 D BCD M8023をONして D BCD命令を実行すると、 2進 フロート→10進フロートへの変換が行われます。 (5−2項参照) S・ D・ D 0 D 2 2進フロート値 M8023 D 1 D 0 D 3 D 2 変換 M8000 10進フロート値 S・ , D・ はデータレジスタ フロート変換のばあい、 (D) のみが有効です。 BCD入出力 の扱い 四則演算 (+−×÷) やインクリメント, デクリメント命令な どシーケンサ内の演算はすべてBINで行われます。 したがってBCDのディジタルスイッチ情報をシーケンサ に取込むときはFNC19 (BCD→BIN)変換転送命令を 用い、 またBCDのセブンセグメント表示器へ出力したい ときはFNC18 (BIN→BCD)変換転送命令を用いてくだ さい。 ただしFNC72 (DSW) , FNC74 (SEGL) , FNC75 (ARW S) などの特殊な命令では自動的にBCD/BIN変換が 行われています。 151 転送・比較 6.応用命令解説 D FNC 19 BIN P BINARY シリーズ名 16ビット命令 BIN (連続実行形) 5ステップ BIN P (パルス実行形) FNC19 対 ワード 要素 K,H 対象機種 BIN変換 KnX KnY KnM S・ KnS T B I N 象 要 素 C D BIN (連続実行形) 9ステップ D BIN P (パルス実行形) 32ビット命令 D V,Z ファイルレジスタ D・ ビット 要素 X Y M S FX0 FX0S FX0N P P P 命令なし 命令なし 命令なし FX1 FX2 バージョンによる 機能差あり FX2C (FX2 V2.30以下は、拡張機能なし) 機能と動作 X000 ● ● ● ● ● ● 備考 FNC 19 BIN S・ D・ K2X000 D 13 数値範囲:0∼9, 999または0∼99, 999, 999が有効 ソース (BCD)→デスティネーション (BIN) の変換転送 命令です。 ●BCDのディジタルスイッチの設定値をシーケンサに取込むときに用います。 ソースデータがBCD でないときにはM8 0 6 7 (演算エラー) が発生しますが、 M8 0 6 8 (演算エラーラッチ) は働きません。 ●定数Kは自動的にバイナリ変換して扱われますのでこの命令の対象要素になりません。 拡張機能 (FX2, FX2C) X000 M8023 FNC 19 D BIN S・ D・ D 4 D 6 M8023をONして D BIN命令を実行すると、 10進 フロート→2進フロートへの変換が行われます。 (5−2項参照) 10進フロート値 M8023 2進フロート値 BCD入出力 の扱い 152 D 4 D 7 D 6 変換 M8000 フロート変換のばあい、 S・ D 5 , D・ はデータレジスタ (D) のみが有効です。 BCD出力のディジタルスイッチの取込みや、 BCD入力のセブンセグメント表示器の扱いにつきま しては、 FNC18 (BCD) をご参照ください。 四則・論理演算 6.応用命令解説 6−5. FNC20∼FNC29 「四則・論理演算」 ∼ FNC00 FNC09 FNC10 ∼ FNC20∼FN29には、数値データに対する演算命令が用意されています。 FX2, FX2Cシーケンサでは浮動小数点を用いた演算を行うこともでき、 高精 度な結果が得られます。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 FNC29 20 ADD BIN加算 21 SUB BIN減算 22 MUL BIN乗算 23 DIV BIN除算 24 INC BIN増加 25 DEC BIN減少 26 WAND 論理積 27 WOR 論理和 28 WXOR 排他的論理 FNC50 29 NEG 補数 FNC59 ∼ FNC30 FNC39 ∼ FNC40 FNC49 ∼ ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 153 四則・論理演算 6.応用命令解説 D FNC 20 ADD P ADDITION 対 ワード 要素 シリーズ名 ADD D ADD (連続実行形) ADD 7ステップ P (パルス実行形) 13ステップ D ADD P (パルス実行形) 16ビット命令 K,H KnX KnY KnM FNC20 素 32ビット命令 (連続実行形) S1・ 象 要 対象機種 BIN加算 S2・ KnS T C D V,Z ファイルレジスタ D・ ビット 要素 X Y M S (FX2 V2.30以下は、拡張機能なし) ● ● ● ● ● ● フ ラ グ 番 号 FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 バージョンによる 機能差あり FX2C ゼロ ボロー キャリー M8020 M8021 M8022 ADD 機能と動作 X000 FNC 20 ADD S1・ S2・ D・ D 10 D 12 D 14 (D 10)+(D 12)→(D 14) ●二つのソースデータをバイナリ加算してデスティネーションへ転送します。各データの最上位 ビットは正(0)、負(1) の符号ビットでありこれらのデータは代数的に加算されます。 (5+ (−8) =−3) ●演算結果が0のときはゼロフラグが動作します。 演算結果が32, 76 7 (16ビット演算) または2, 14 7, 4 83, 64 7 (32ビット演算) を超えるときにはキャ リフラグが動作します。 (次ページ参照) 演算結果が−32, 768 (16ビット演算) または−2, 14 7, 4 83, 64 8 (32ビット演算)未満になるときに はボローフラグが動作します。 (次ページ参照) ●32ビット演算のばあいワードデバイスでは下位16ビット側の要素が指定され、 これにつづく要 素番号の要素が上位側になります。番号が重複しないようにするために例えば指定要素は常 に偶数番号にすることをおすすめします。 ●ソースとデスティネーションに同一要素番号を指定することもできます。 このばあい連続実行形の 命令 (ADD,D ADD) を用いると各演算周期ごとに加算結果が変化しますのでご注意ください。 X001 FNC 20 ADD P D 0 K 1 D 0 (D 0)+1→(D 0) ●上図のようなシーケンスではX0 0 1がOFF→ONに変化するたびにD0の内容に1が加算されます。 これは後述のINC P 命令と似ていますが上図のばあいゼロ, ボロー, キャリのフラグが動作します。 拡張機能 (FX2, FX2C) 154 特殊補助リレーM8023をONさせてから D ADD,D ADD P 命令を実行すると、 2進フロート演算 D・ 1 S 2 ・ S ・ が行われます。 このばあい、 はK, H, D, はDのみが有効です。 ソースデータはFNC4 9 (FLT) 命令によりあらかじめ2進フロート値に変換しておく必要があります。 ただし、定数K, Hは自動的に2進フロート値に変換して扱われます。 四則・論理演算 6.応用命令解説 D FNC 21 SUB シリーズ名 SUBTRACTION 対 ワード 要素 対象機種 BIN減算 P SUB D SUB (連続実行形) 7ステップ SUB P (パルス実行形) 13ステップ D SUB P (パルス実行形) 16ビット命令 S1・ K,H KnX KnY KnM S2・ KnS T 象 要 素 32ビット命令 (連続実行形) C D ファイルレジスタ V,Z D・ ビット 要素 機能と動作 X Y X000 M S FNC 21 SUB フ ラ グ 番 号 (FX2 V2.30以下は、拡張機能なし) S1・ S2・ D・ D 10 D 12 D 14 ● ● ● ● ● ● 備考 P P P FX0 FX0S FX0N 命令なし 命令なし 命令なし FX1 FX2 バージョンによる 機能差あり FX2C ゼロ ボロー キャリー M8020 M8021 M8022 FNC21 SUB (D 10)−(D 12)→(D 14) ● S1・ で指定された要素の内容から S2・ で指定された要素の内容を代数的に減算し、 その 結果を D・ で指定された要素に格納します。 (5− (−8) =13) ●各種フラグの働き、 3 2ビット演算における要素の指定方法、 連続実行形とパルス実行形のちが いなどはすべて前ページのADD命令と同じです。 X001 FNC 21 D SUB P D 0 K 1 D 0 (D 1,D 0)−1→(D 1,D 0) ●上図の例は後述の D DEC P 命令と似ていますが上図のばあいは各種フラグが得られます。 ●フラグの動作と数値の正負の関係は次のとおりです。 ゼロフラグ -2 、 -1 、 0 、 -32,768 ボローフラグ データの最 上位ビットが 1になります -2 、 -1 、 0 、 -2,147,483,648 拡張機能 (FX2, FX2C) 32,767 、 0 、 1 、 2 -1 、 0 、 1 データの最 上位ビットが 0になります ゼロフラグ ボローフラグ ゼロフラグ ゼロフラグ キャリフラグ ゼロフラグ -1 、 0 、 1 ゼロフラグ 2,147,483,647 、 0 、 1 、 2 キャリフラグ 特殊補助リレーM8023をONさせてから D SUB,D SUB P 命令を実行すると、 2進フロート演 算が行われます。 このばあい、S1・ S2・ はK, H, D, D・ はDのみが有効です。 ソースデータはFNC4 9 (FLT)命令によりあらかじめ2進フロート値に変換しておく必要があります。 ただし、定数K, Hは自動的に2進フロート値に変換して扱われます。 155 四則・論理演算 6.応用命令解説 FNC 22 MUL D P MULTIPLICATION 対 ワード 要素 シリーズ名 MUL D MUL (連続実行形) 7ステップ MUL P (パルス実行形) 13ステップ D MUL P (パルス実行形) 16ビット命令 FNC22 素 32ビット命令 (連続実行形) S1・ K,H KnX KnY KnM 象 要 対象機種 BIN乗算 S2・ KnS T C D Z ファイルレジスタ D・ ビット 要素 X Y M ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 バージョンによる 機能差あり FX2C 16ビット演算時に限り、「Z」のみ指定可能 S (FX2 V2.30以下は、拡張機能なし) MUL 《16ビット演算》 機能と動作 X000 FNC 22 MUL S1・ S2・ D・ D 0 D 2 D 4 BIN BIN BIN (D 0) × (D 2) →(D 5,D 4) 16ビット 16ビット 32ビット ●各ソースで指定された要素の内容の積をデスティネーションで指定された要素(下位側) とこ れにつづく要素(上位側)へ32ビットデータとして格納します。 上図の例で(D0) =8, (D2) =9のとき (D5, D4) =72になります。 ●結果の最上位ビットは正(0)負(1) の符号となります。 ● D・ としてVは指定できません。 またビットデバイスのばあいK1∼K8の桁指定を行うことが できます。 K4の指定では積のうち下位16ビットしか求められません。 《32ビット演算》 X001 FNC 22 D MUL S1・ S2・ D・ D 0 D 2 D 4 BIN BIN BIN (D 1,D 0)×(D 3,D 2)→(D 7,D 6,D 5,D 4) 32ビット 32ビット 64ビット ●32ビット演算においてデスティネーションにビットデバイスを用いたときは下位32ビットのみの 結果が得られ上位32ビットの結果は得られません。 一度ワードデバイスに転送した上で演算を 行ってください。 ●ワードデバイスを用いたときでも演算結果としての64ビットデータを一括してモニタすることは できません。 このようなばあい、 フロート演算を行うことをおすすめします。 ●結果の最上位ビットは正(0)負(1) の符号になります。 ● D・ としてV, Zは指定できません。 拡張機能 (FX2, FX2C) 156 D MUL P 命令を実行すると、 特殊補助リレーM8023をONさせてから D MUL, 例えば(D1, D0) × (D3, D2) = (D5, D4) のように2進フロート演算が行われます。 ソースデータはFNC4 9 (FLT)命令によりあらかじめ2進フロート値に変換しておく必要があります。 (定数K, Hは自動的に2進フロート変換されます。) S1・ S2・ はK, H, D, D・ はDのみが有効となります。 四則・論理演算 6.応用命令解説 D FNC 23 DIV シリーズ名 DIVISION 対 DIV D DIV (連続実行形) 7ステップ DIV P (パルス実行形) 13ステップ D DIV P (パルス実行形) 16ビット命令 素 32ビット命令 (連続実行形) S1・ ワード 要素 K,H KnX KnY KnM 象 要 対象機種 BIN除算 P S2・ KnS T C D Z ファイルレジスタ D・ ビット 要素 X Y M ● ● ● ● ● ● FX0 備考 FX0S P P FX0N P 命令なし 命令なし 命令なし FX1 FX2 バージョンによる 機能差あり FX2C 16ビット演算時に限り、「Z」のみ指定可能 S FNC23 (FX2 V2.30以下は、拡張機能なし) D IV 《16ビット演算》 機能と動作 X000 FNC 23 DIV S1・ S2・ D・ D 0 D 2 D 4 被除数 除数 商 剰余 BIN BIN BIN BIN (D 0) ÷ (D 2) → (D 4) … (D 5) 16ビット 16ビット 16ビット 16ビット ● S1・ で指定された要素の内容を被除数、 S2・ で指定された要素の内容を除数とし、 D・ で指定された要素とその次の番号の要素に対して商と剰余が格納されます。 D・ ● としてVは指定できません。 《32ビット演算》 X001 FNC 23 D DIV S1・ S2・ D・ D 0 D 2 D 4 被除数 除数 商 剰余 BIN BIN BIN BIN (D 1,D 0)÷(D 3,D 2)→(D 5,D 4)…(D 7,D 6) 32ビット 32ビット 32ビット 32ビット ●被除数は S1・ で指定された要素とその次の番号の要素の組合わせによる内容、除数は S2・ で指定された要素とその次の番号の要素の組合わせによる内容となり、 その商と剰余は 上図のとおり D・ で指定された要素につづく4点の要素に格納されます。 ● D・ としてV, Zは指定できません。 付記 拡張機能 (FX2, FX2C) ●除数が0のときは演算エラーとなり命令は実行されません。 ● D・ としてビットデバイスを指定すると剰余は得られません。 ●商と剰余の最上位ビットは正(0)負(1) の符号を表わします。商が負になるのは被除数または 除数のどちらかが負のときです。剰余が負になるのは被除数が負のときです。 特殊補助リレーM8023をONさせてから D DIV,D DIV P 命令を実行すると、例えば(D1, D0) ÷ (D3, D2) = (D5, D4) のように2進フロート演算が行われます。 ソースデータはFNC4 9 (FLT)命令によりあらかじめ2進フロート値に変換しておく必要があります。 (定数K, Hは自動的に2進フロート変換されます。) S1・ S2・ はK, H, D, D・ はDのみが有効となります。 157 四則・論理演算 6.応用命令解説 D FNC 24 INC P INCREMENT D FNC 25 DEC P DECREMENT FNC24 FNC25 I NC DEC 対 ワード 要素 K,H 対象機種 BIN増加 シリーズ名 16ビット命令 INC (連続実行形) 3ステップ INC P (パルス実行形) BIN減少 16ビット命令 DEC (連続実行形) 3ステップ DEC P (パルス実行形) KnX KnY KnM KnS 象 要 素 D INC (連続実行形) 5ステップ D INC P (パルス実行形) 32ビット命令 T C D DEC (連続実行形) 5ステップ D DEC P (パルス実行形) 32ビット命令 D ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 FX2C ファイルレジスタ V,Z D・ ビット 要素 X Y M S D・ 機能と動作 X000 FNC 24 INC P D 10 (D 10)+1→(D 10) ●X001がONするたびに D・ で指定された要素の内容から1 を減じます。 連続実行形命令では各演算周期ごとに減算され ますので注意が必要です。 ●−32, 768や−2, 14 7, 4 83, 64 8から1を減じると+32, 767や+ 2, 14 7, 483, 64 7になりますがフラグは動作しません。 D・ X001 FNC 25 DEC P ●X000がONするたびに D・ で指定された要素の内容に1を 加えます。 連続実行形命令では各演算周期ごとに加算されますので注 意が必要です。 ●16ビット演算では+32, 767に1を加えると−32, 768になります が、 フラグは動作しません。 32ビット演算では+2, 14 7, 4 83, 64 7に1を加えると−2, 14 7, 4 83, 648になりますがフラグは動作しません。 D 10 (D 10)-1→(D 10) 《応用例》 X010 FNC 12 MOV P K 0 Z FNC 18 BCD P C 0Z K4Y000 FNC 24 INC P Z FNC 10 CMP P K 10 0→(Z) M 1 X011 158 (C 0Z)→(K4Y000) BIN BCD (Z)+1→(Z) Z M 0 (Z)=10の時 M 1=ON ●カウンタC0∼C9の 現在値をBCD変換 してK4Y000へ出力 します。 ●リセット入力X010でZ をクリアしておきます。 ●X011をONするたび にC0, C1…C9の現 在値が順次出力さ れます。 四則・論理演算 6.応用命令解説 W D FNC 26 AND P AND W D D D AND (連続実行形) WAND 7ステップ P (パルス実行形) 13ステップ D AND P (パルス実行形) FNC 27 OR P WOR D OR WOR 7ステップ P (パルス実行形) 13ステップ D OR FNC 28 XOR ワード 要素 P 素 32ビット命令 (連続実行形) (連続実行形) ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 FX2C P (パルス実行形) WXOR FNC26 FNC27 FNC28 AND OR XOR 排他的論理和 D XOR (連続実行形) 7ステップ WXOR P (パルス実行形) 13ステップ D XOR P (パルス実行形) 16ビット命令 32ビット命令 (連続実行形) S1・ K,H KnX KnY KnM S2・ KnS T 象 要 32ビット命令 (連続実行形) 論理和 16ビット命令 EXCLUSIVE OR 対 シリーズ名 WAND 16ビット命令 OR W 対象機種 論理積 C D V,Z ファイルレジスタ D・ ビット 要素 X Y M S 《論理積》 機能と動作 X000 FNC 26 WAND S1・ S2・ D・ D 10 D 12 D 14 (D 10) ∧ (D 12)→(D 14) 《論理和》 X001 FNC 27 WOR S1・ S2・ D・ D 10 D 12 D 14 (D 10) ∨ (D 12)→(D 14) 《排他的論理和》 X002 FNC 28 WXOR S1・ S2・ D・ D 10 D 12 D 14 (D 10) ∀ (D 12)→(D 14) X003 FNC 28 WXOR D 10 D 12 FNC 14 CML D 14 D 14 D 14 ●各ビット対応で論理積演算が行われます。 1∧1=1 0∧1=0 1∧0=0 0∧0=0 となります。 ●各ビット対応で論理和演算が行われます。 1∨1=1 0∨1=1 0∨0=0 1∨0=1 となります。 ●各ビット対応で排他的論理和演算が行われます。 1∀1=0 0∀0=0 1∀0=1 0∀1=1 となります。 この命令とFNC14 (CML) を組合わせると 排他的論理和否定(XOR NOT) の演算も 行うことができます。 159 四則・論理演算 6.応用命令解説 D FNC 29 NEG P NEGATION 対 ワード 要素 K,H 対象機種 補数 シリーズ名 16ビット命令 NEG (連続実行形) 3ステップ NEG P (パルス実行形) KnX KnY KnM KnS 象 FNC29 要 素 T D NEG (連続実行形) 5ステップ D NEG P (パルス実行形) 32ビット命令 C D ファイルレジスタ V,Z D・ ビット 要素 X Y M ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C S NEG D・ 機能と動作 X000 FNC 29 NEG P (D 10)+1→(D 10) D 10 ● D・ で指定された、要素の内容を各ビットごとに反転(0→1, 1→0) し、 これに1を加算した結 果を元の要素に格納します。 ●連続実行形の命令を用いると各演算周期ごとに実行されますので注意が必要です。 絶対値の 取得 ●この命令を使って負のBIN値に対する絶対値を得ることができます。 《応用回路 1》 負数の絶対値化 FNC 44(ONビット判定) M8000 RUNモニタ M 0 FNC 44 BON D 10 FNC 29 NEG P D 10 《応用回路 2》 X000 K 15 D1 0の1 5ビット目 (b0∼b1 5のb1 5) が1のと きにM0がONします。 M0がONしたときのみD10に補数命令を 適用します。 減算の絶対値処理 FNC 10 CMP M 10 M 0 D 10 D 20 M 10 (D 10)>(D 20) (D10)=(D 20) (D 10)<(D 20) M 10=ON M 11=ON M 12=ON FNC 21 SUB D 10 D 20 D 30 (D 10)≧(D 20) のときは、 (D 10)−(D 20)→(D 30) FNC 21 SUB D 20 D 10 D 30 (D 10)<(D 20) のときは、 (D 20)−(D 10)→(D 30) M 11 M 12 以上の回路により補数演算を行わなくても (D 30) は常に差の絶対値を表します。 160 6.応用命令解説 四則・論理演算 負数の表現と絶対値(参考) (D 10)=2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 (D 10)=1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 このシーケンサでは負の数は左列のとおりに2 の補数で表現されています。 最上位ビットが1のときは負の数であり、補数命 令を用いて絶対値を求めることができます。 (D 10)=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (D 10)=−1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 (D 10)+1=1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 (D 10)=−2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 (D 10)+1=2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 (D 10)=−3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 (D 10)+1=3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 (D 10)=−4 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 (D 10)+1=4 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 (D 10)=−5 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 (D 10)+1=5 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 (D 10)=−32,765 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 (D 10)+1=32,765 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 (D 10)=−32,766 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 (D 10)+1=32,766 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 (D 10)=−32,767 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 (D 10)+1=32,767 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 (D 10)=−32,768 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (D 10)+1=−32,768 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 FNC29 NEG 絶対値の最大値は32,767までしか得られません。 161 6.応用命令解説 162 四則・論理演算 ローテーション・シフト 6.応用命令解説 6−6. FNC30∼FNC39 「ローテーション・シフト」 ∼ FNC00 FNC09 FNC10 ∼ FNC30∼FNC39には、 ビットデータやワードデータを指定方向に回転させ たり、 シフトさせる命令が用意されています。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 FNC29 30 ROR 右回転 31 ROL 左回転 32 RCR キャリ付右回転 33 RCL キャリ付左回転 34 SFTR ビット右シフト 35 SFTL ビット左シフト 36 WSFR ワード右シフト 37 WSFL ワード左シフト 38 SFWR シフト書込み FNC50 39 SFRD シフト読出し FNC59 ∼ FNC30 FNC39 ∼ FNC40 FNC49 ∼ ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 163 ローテーション・シフト 6.応用命令解説 D FNC 30 ROR P ROTATION RIGHT D FNC 31 ROL P ROTATION LEFT FNC30 対 FNC31 象 要 RCR 素 RCL ワード 要素 ビット 要素 対象機種 右回転 シリーズ名 16ビット命令 ROR (連続実行形) 5ステップ ROR P (パルス実行形) D ROR (連続実行形) 9ステップ D ROR P (パルス実行形) 32ビット命令 ― ― ― ― ● ● 左回転 16ビット命令 ROL (連続実行形) 5ステップ ROL P (パルス実行形) K,H n KnX X Y KnY KnM KnS T C D ROL (連続実行形) 9ステップ D ROL P (パルス実行形) 32ビット命令 D フ ラ グ 番 号 備考 FX0 FX0S FX0N FX1 FX2 FX2C キャリー M8022 ファイルレジスタ V,Z D・ M 回転量:n≦16(16ビット命令) n≦32(32ビット命令) S 16または32ビットデータの各ビット情報を左右に回転させる命令です。 機能と動作 《左回転》 《右回転》 D・ X000 FNC 31 ROL P D 0 D・ n D 0 K 4 n X000 K 4 左回転 上位 下位 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 FNC 30 ROR P 右回転 上位 下位 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 ※ ※ nビット nビット M8022 キャリ M8022 キャリ 1回の 実行後 1回の 実行後 上位 下位 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 上位 下位 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 ※ 1 M8022 ※ M8022 0 ※ ●X0 00がOFF→ONに変化するたびにnビッ ト左回転が行われ、最終ビットはキャリフラ グに格納されます。 ※ ●X00 0がOFF→ONに変化するたびにnビッ ト右回転が行われ、最終ビットはキャリフラ グに格納されます。 ●連続実行形の命令では各演算周期ごとに回転しますので注意が必要です。 ●32ビット命令のばあいも同様です。 ●桁指定要素のばあいK4 (16ビット命令) またはK8 (32ビット命令) のみが有効です。 (例K4Y010, K8M0) 164 ローテーション・シフト 6.応用命令解説 D FNC 32 RCR ROTATION RIGHT WITH CARRY D FNC 33 RCL ワード 要素 象 要 素 ビット 要素 シリーズ名 16ビット命令 RCR (連続実行形) 5ステップ RCR P (パルス実行形) D RCR (連続実行形) 9ステップ D RCR P (パルス実行形) 32ビット命令 キャリ付左回転 P ROTATION LEFT WITH CARRY 対 対象機種 キャリ付右回転 P 16ビット命令 RCL (連続実行形) 5ステップ RCL P (パルス実行形) K,H n KnX X Y KnY KnM KnS T C D RCL (連続実行形) 9ステップ D RCL P (パルス実行形) 32ビット命令 D V,Z ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C フ ラ グ 番 号 キャリー M8022 FNC32 FNC33 ファイルレジスタ D・ M 回転量:n≦16(16ビット命令) n≦32(32ビット命令) S RCR RCL 16または32ビットデータの各ビット情報を左右に回転させる命令です。 機能と動作 《右回転》 《左回転》 D・ X000 FNC 33 RCL P D 0 n K 4 左回転 上位 下位 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 X000 FNC 32 RCR P D・ n D 0 K 4 右回転 上位 下位 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 ※ ※ M8022 nビット回転 キャリ 例 M8022=OFF 1回の 実行後 上位 下位 1 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 M8022 ※ ●X000がOFF→ONに変化するたびに nビット左回転が行われます。 nビット回転 例 M8022 キャリ M8022=ON 1回の 実行後 上位 下位 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 M8022 0 ※ ●X000がOFF→ONに変化するたびに nビット右回転が行われます。 ●回転ループの中にキャリフラグが介在していますので回転命令の前にM8022を駆動しておく と、 これがデスティネーション内に送り込まれます。 ●連続実行形の命令では各演算周期ごとに回転しますので注意が必要です。 ●32ビット命令のばあいも同様です。 ●桁指定要素のばあいK4 (16ビット命令) またはK8 (32ビット命令) のみが有効です。 (例K4Y010, K8M0) 165 ローテーション・シフト 6.応用命令解説 FNC 34 SFTR シリーズ名 SHIFT RIGHT FNC 35 SFTL 要 SFTR 素 STTL ワード 要素 ビット 要素 機能と動作 16ビット命令 SFTR (連続実行形) 9ステップ SFTR P (パルス実行形) 32ビット命令 ● ● ● ● ● ● ― ビット左シフト P SHIFT LEFT FNC34 対 FNC35 象 対象機種 ビット右シフト P 16ビット命令 SFTL 9ステップ SFTL 32ビット命令 (連続実行形) FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 FX2C ― P (パルス実行形) n1,n2 K,H KnX KnY KnM S・ X Y M S D・ KnS T C D ファイルレジスタ V,Z FX0,FX0S,FX0N : n2≦n1≦512 FX1 : n2≦n1≦1024(256) 実行時間短縮のため256を原則とし、これ以上の ばあいはWDT(D8000)の値に注意してください。 FX2,FX2C : n2≦n1≦1024 ●n1ビット (シフトレジスタの長さ) のビットデバイスに対しn2ビットの右シフト、 または左シフトを行う (命令実行のたびn2ビットのシフトを実行する)命令です。 ●パルス実行形の命令では駆動入力がOFF→ONに変化するたびにn2ビットシフトしますが、 連続実行形の命令では各演算周期ごとにシフトしますので注意が必要です。 ●シフト1回につき1ビットシフトするばあいn2はK1となります。 《ビット右シフト》 X010 FNC 34 SFTR P S・ D・ n1 n2 X000 M 0 K 16 K 4 X003 X002 X001 X000 n2ビット右シフト ①M 3∼M 0 → オーバフロー ②M 7∼M 4 → M 3∼M 0 ③M 11∼M 8 → M 7∼M 4 ④M 15∼M 12 → M 11∼M 8 ⑤X003∼X000 → M 15∼M 12 ⑤ M 15 M 14 M 13 M 12 M 11 M 10 M 9 M 8 M 7 M 6 M 5 M 4 M 3 M 2 M 1 M 0 ③ ④ ② ① 《ビット左シフト》 X010 FNC 35 SFTL P S・ D・ n1 n2 X000 M 0 K 16 K 4 ①M 15∼M 12 → オーバフロー ②M 11∼M 8 → M 15∼M 12 ③M 7∼M 4 → M 11∼M 8 ④M 3∼M 0 → M 7∼M 4 ⑤X003∼X000 → M 3∼M 0 n2ビット左シフト X003 X002 X001 X000 ⑤ M 15 M 14 M 13 M 12 M 11 M 10 M 9 M 8 M 7 M 6 M 5 M 4 M 3 M 2 M 1 M 0 ① 166 ② ③ ④ ローテーション・シフト 6.応用命令解説 F1, F2用 命令の 等価回路 F2シリーズにおけるSFT命令とFXシリーズにおけるFNC3 5 (SFTL)命令との対応関係は次 F1、 のとおりとなっています。 ●F1,F2シリーズ X000データ入力 OUT M100:入力データ M101∼M117:シフトレジスタ 15段 (8進番号) M100 X001シフト入力 SFT X002リセット入力 RST M117 ●FXシリーズ X000データ入力 X001シフト入力 M101∼M115:シフトレジスタ 15段 (10進番号) M100 FNC 35 SFTL P M100 M101 入力データ 先頭要素 X002リセット入力 1ビットデー タの条件付 き歩進 FNC 40 ZRST M101 M115 K 15 K 1 段数 1ビット シフト FNC34 FNC35 SFTR STTL M101∼M115の一括リセット X000∼X007を順次ONさせてY000∼Y007を順次動作させます。 順番をまちがうと動作しないようになっています。 X000 M8046 データ 入力 M8046 X000 S 0 X001 S 1 X002 S 7 M8000 X000 先頭データ M 0 ※1 FNC 35 SFTL M 0 S 0 K 8 K 1 M 0の1ビットを先頭入力とし S 0∼S 7の8ビット長シフトレジスタ を構成しています。 ※1:ステート(S)を用いると、ステートの ダイナミックモニタ機能により動作中の ステートをモニタすることができます。 FNC 12 MOV M8047 K2S 0 K2Y000 (S 7∼S 0)→(Y007∼Y000) STLモニタ有効 END X000 X001 X000をONしてもY000は動作しません X007 Y000 Y001 Y007 167 ローテーション・シフト 6.応用命令解説 FNC 36 WSFR シリーズ名 WORD SHIFT RIGHT FNC 37 WSFL 要 WSFR 素 WSFL ワード 要素 16ビット命令 WSFR (連続実行形) 9ステップ WSFR P (パルス実行形) 16ビット命令 WSFL 9ステップ WSFL 機能と動作 ― ― ― ― ● ● ― 32ビット命令 (連続実行形) 備考 FX0 FX0S FX0N FX1 FX2 FX2C ― P (パルス実行形) S・ K,H KnX KnY KnM X KnS T C D ファイルレジスタ V,Z D・ n1,n2 ビット 要素 32ビット命令 ワード左シフト P WORD SHIFT LEFT FNC36 対 FNC37 象 対象機種 ワード右シフト P Y M n2≦n1≦512 S ●n1ワードのワードデバイスに対しワード単位でn2ワードの右シフト、 または左シフトを行う命令 です。 (n2≦n1≦512) ●パルス実行形の命令では駆動入力がOFF→ONするたびにn2ワードのシフトを行いますが、 連続実行形の命令では各演算周期ごとにシフトしますので注意が必要です。 《ワード右シフト》 X000 FNC 36 WSFR P S・ D・ n1 n2 D 0 D 10 K 16 K 4 D 3 D 2 D 1 D 0 n2ワード右シフト ①D 13∼D 10 → オーバフロー ②D 17∼D 14 → D 13∼D 10 ③D 21∼D 18 → D 17∼D 14 ④D 25∼D 22 → D 21∼D 18 ⑤D 3∼D 0 → D 25∼D 22 ⑤ D 25 D 24 D 23 D 22 D 21 D 20 D 19 D 18 D 17 D 16 D 15 D 14 D 13 D 12 D 11 D 10 ③ ④ ② ① 《ワード左シフト》 X000 FNC 37 WSFL P S・ D・ n1 n2 D 0 D 10 K 16 K 4 ①D 25∼D 22 → オーバフロー ②D 21∼D 18 → D 25∼D 22 ③D 17∼D 14 → D 21∼D 18 ④D 13∼D 10 → D 17∼D 14 ⑤D 3∼D 0 → D 13∼D 10 n2ワード左シフト D 3 D 2 D 1 D 0 ⑤ D 25 D 24 D 23 D 22 D 21 D 20 D 19 D 18 D 17 D 16 D 15 D 14 D 13 D 12 D 11 D 10 ① 168 ② ③ ④ ローテーション・シフト 6.応用命令解説 桁指定要素 のシフト S・ X000 FNC 36 WSFR P D・ K1X000 K1Y000 n1 n2 K 4 K 2 桁指定要素では同一桁指定としてください。 桁数は合わせてください(Kn□□□□) X 7 X 6 X 5 X 4 X 3 X 2 X 1 X 0 ③ Y 17 Y 16 Y 15 Y 14 Y 13 Y 12 Y 11 Y 10 Y 7 Y 6 Y 5 Y 4 Y 3 Y 2 Y 1 Y 0 ② ① FNC36 FNC37 WSFR WSFL 169 ローテーション・シフト 6.応用命令解説 FNC 38 SFWR シリーズ名 SHIFT REGISTER WRITE 対 ワード 要素 象 要 素 ビット 要素 対象機種 シフト書込み P 16ビット命令 SFWR (連続実行形) 7ステップ SFWR P (パルス実行形) 32ビット命令 ― S・ K,H n KnX X Y FNC38 FNC39 KnY KnS T C D ファイルレジスタ V,Z D・ M X000 機能と動作 KnM SFWR SFRD 2≦n≦512 S FNC 38 SFWR P S・ D・ n D 0 D 1 K 10 ― ― FX0 ― ― ● ● FX0N FX0S FX1 FX2 FX2C フ ラ グ 番 号 キャリー M8022 先入れ先出し制御のためのデータ 書込み命令です。 n=10点 ソース D 0 備考 D 1はあらかじめ 0にリセットして おきます。 D 10 D 9 D 8 D 7 D 6 D 5 D 4 D 3 D 2 D 1 ③ ② ① ポインタ ●X000がOFF→ONに変化すると、 D0の内容がD2に格納され、 (D1) の内容は1になります。 D0 の内容を変更してから再びX00 0をOFF→ONすると、 そのD0の内容はD3に格納され、 (D1) の 内容は2になります。 (連続実行形命令では各演算周期ごとに順次格納されます。) ●以下同様に順次右端よりつめ合わされ、 データの格納点数はポインタD1の内容で示されます。 D1の内容がn−1を超えると無処理になりキャリフラグM8022が動作します。 FNC 39 SFRD P SHIFT REGISTER READ 対 ワード 要素 象 要 素 ビット 要素 機能と動作 対象機種 シフト読出し シリーズ名 16ビット命令 SFRD (連続実行形) 7ステップ SFRD P (パルス実行形) 32ビット命令 ― S・ K,H n KnX X Y KnY KnM KnS T C D V,Z ファイルレジスタ D・ M X001 2≦n≦512 S FNC 39 SFRD P S・ D・ n D 1 D 20 K 10 ― ― ― ― ● ● フ ラ グ 番 号 備考 FX0 FX0S FX0N FX1 FX2 FX2C ゼロ M8020 先入れ先出し制御のためのデータ 読出し命令です。 ポインタ D 10 D 9 D 8 D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 20 ●X001がOFF→ONに変化すると、 D2の内容がD20へ転送されます。 これとともに、 ポインタD1の内容が減少し左側のデータは1ワードずつ右側へシフトされます。 (連続実行形命令では各演算周期ごとにシフトします。) ●データの読出しは常にD2から行われますがポインタの内容が0のときは無処理となりゼロフラ グM8020が動作します。 この読出しによりD10の内容が変化することはありません。 170 ローテーション・シフト 6.応用命令解説 《先入れ先出し制御の例》 シフト書込み, シフト読出し命令の例 製品番号を登録しながら順次倉入れされた品物の倉出しに当たり、先入れ先出しのために、今 取出すべき製品番号を出力する回路例を示します。 製品番号は16進数で4桁以下、最大在庫量は99点以下としています。 倉入れ要求ボタン X020 FNC 12 MOV P K4X000 D 256 FNC 38 SFWR P D 256 D 257 K 100 X000∼X01 7から製品番号が入力され、 こ れをD256へ転送します。 D257をポインタ、 D258∼D356の99点を製 品番号格納用データレジスタとします。 倉出し要求ボタン X021 M8000 RUNモニタ FNC 39 SFRD P D 257 FNC 12 MOV D 357 K4Y000 D 357 K 100 倉出し要求に応じて先入れ製品番号が D357へ出力されます。 取り出すべき製品番号が1 6進数4桁でY0 0 0∼ Y017へ出力されます。 FNC38 FNC39 SFWR SFRD 171 6.応用命令解説 172 ローテーション・シフト データ処理 6.応用命令解説 6−7. FNC40∼FNC49 「データ処理」 ∼ FNC00 FNC09 FNC10 ∼ FNC40∼FNC49には、 FNC10∼FNC39の基本的な応用命令に対してさらに 複雑な処理を行ったり、特定処理を目的とした命令が用意されています。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 40 ZRST 一括リセット 41 DECO デコード 42 ENCO エンコード 43 SUM ONビット数 44 BON ONビット判定 45 MEAN 平均値 46 ANS アナンシェータセット 47 ANR アナンシェータリセット 48 SQR BIN開平演算 FNC50 49 FLT 浮動小数点演算 FNC59 FNC29 ∼ FNC30 FNC39 ∼ FNC40 FNC49 ∼ ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 173 データ処理 6.応用命令解説 FNC 40 ZRST P ZONE RESET 対 ワード 要素 K,H シリーズ名 16ビット命令 ZRST (連続実行形) 5ステップ ZRST P (パルス実行形) KnX KnY KnM KnS T 象 要 素 対象機種 一括リセット C D1・ ビット 要素 機能と動作 X Y M D1・ S D2・ M8002 イニシャル パルス FNC 40 ZRST FNC 40 ZRST ZRST ● D1・ D1・ D ― ファイルレジスタ V,Z D2・ ● ● ● ● ● ● FX0 FX0S FX0N 備考 P P P 命令なし 命令なし 命令なし FX1 FX2 FX2C D1・ 番号≦ D2・ 番号 同一要素系を指定 FNC 40 ZRST FNC40 32ビット命令 D1・ D2・ M500 M599 D1・ D2・ C235 C255 D1・ D2・ S 0 S127 ビットデバイスM500∼M599を一括リセットします。 ワードデバイスC235∼C255を一括リセットします。 (0の書込みおよび、接点のクリア) ステートS0∼S127を一括リセットします。 FX0Nシーケンサのステート (S) は、全点停電保持 用となっていますので、前回の動作状態をクリアす るためにはこのようなプログラムが必要です。 D2・ は同一種類の要素を指定し D1・ 番号≦ D2・ 番号とします。 番号> D2・ 番号のときは D1・ で指定された要素のみをリセットします。 ●この命令は16ビットとしての扱いになっていますが、D1・ D2・ に32ビットカウンタを指定する ことができます。 ただし、D1・ に16ビットカウンタ、 D2・ に32ビットカウンタのように混在指定することはできま せん。 その他の リセット命令 ●要素の単独リセット命令としてはビットデバイスY, M, SやワードデバイスT, C, Dに対しRST命 令を用いることができます。 ●定数K0の一括書込み命令としてFNC16 (FMOV)命令があり、 KnY, KnM, KnS, T, C, Dの 要素に0を書込むことができます。 X001 X002 174 RST M0 M 0をリセット RST T0 T 0の現在値をリセット RST D0 D 0をリセット FNC 16 FMOV K 0 D 0 K100 D 0∼D 99に対してK 0を書込み データ処理 6.応用命令解説 FNC 41 DECO P DECODE 対 ワード 要素 象 要 素 ビット 要素 対象機種 デコード シリーズ名 16ビット命令 DECO (連続実行形) 7ステップ DECO P (パルス実行形) S・ K,H n KnX KnY KnM KnS T C D ファイルレジスタ V,Z D・ Y M D・ S・ X004 FNC 41 DECO 6 5 0 0 M16 M15 P P P FX0 FX0S FX0N 命令なし 命令なし 命令なし FX1 FX2 FX2C D・ X000 M 10 《 D・ がワードデバイスのとき》 n≦8 n 4 0 M14 ③ 1 M13 X004 K 3 X002 X001 X000 0 1 1 4 ② ① 7 0 M17 備考 n=1∼8 n=0は無処理 , 0∼8以外はエラー S 《 D・ がビットデバイスのとき》 機能と動作 ● ● ● ● ● ● ― S・ S・ X 32ビット命令 2 1 0 0 M12 M11 0 0 M10 ●ソースが1+2=3であるため、 M10から3番 目のM13が1になります。 ソースがすべて0 のときはM10が1となります。 ●n=0のときは無処理、 n=0∼8以外のときは 演算エラーとなります。 FNC 41 DECO n≦4 S・ D・ n D 0 D 1 K 3 b15 D0 0 1 0 1 0 1 0 1 0 1 0 1 0 0 4 すべて0になります 7 6 5 4 ③ 2 0 0 0 0 0 0 0 0 0 0 0 0 1 0 b15 D1 b0 1 1 ②① FNC41 DECO 1 0 0 0 b0 ●ソースの下位nビット (n≦4) がデスティネー ションにデコードされます。 n≦3のときはデ スティネーションの上位のビットはすべて0 になります。 ●n=0のときは無処理、 n=0∼4以外のときは 演算エラーとなります。 ●n=8のときデコード命令の D・ がビットデバイスであれば、 その点数は28=256点となります。 ●駆動入力がOFFのときは命令は実行されず、動作しているデコード出力は動作のままです。 《データレジスタの数値に対応して、 ビット要素をONさせる》 D0に格納された数値に応じて、補助リレー (M) の同一番号をONさせます。 D0には、 0∼15までの数値が格納されるものとします。 M8000 FNC 41 DECO S・ D・ n D 0 M 0 K 4 D0(16ビット) b15 8 7 6 5 4 3 2 1 b0 0 0 0 0 0 1 1 1 0 256 128 64 32 16 8 4 2 1 数値に 対応した ビット制御 K8 K7 K6 K5 K4 K3 K2 K1 M255 まで M127 まで M63 まで S・ ←2n ←n M31 まで 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 D・ M15 M14 M13 M12 M11 M10 M9 M8 M7 M6 M5 M4 M3 M2 M1 M0 ●n=K4とすることで、 D0 (0∼15) の数値に対応して、 M0∼M15のいずれか1点がONします。 ●nをK1∼K8まで変化させることで0∼255までの数値に対応することができます。 ただし、 これ に応じて、 デコードに必要とされるデスティネーションの要素範囲が占有されますので、他の制 御と重複しないように注意が必要です。 175 データ処理 6.応用命令解説 FNC 42 ENCO P ENCODE 対 ワード 要素 象 要 素 ビット 要素 対象機種 エンコード シリーズ名 16ビット命令 ENCO (連続実行形) 7ステップ ENCO P (パルス実行形) 32ビット命令 ● ● ● ● ● ● ― S・ K,H n KnX KnY KnM KnS C D V,Z ファイルレジスタ D・ S・ X T Y M 機能と動作 S・ FNC 42 ENCO FX0S FX0N P P P 命令なし 命令なし 命令なし FX1 FX2 FX2C n=1∼8 n=0は無処理 , 0∼8以外はエラー S 《 S・ がワードデバイスのとき》 n≦4 《 S・ がビットデバイスのとき》 n≦8 X005 FX0 備考 D・ M 10 D 10 n K 3 X005 FNC 42 ENCO S・ D・ n D 0 D 1 K 3 FNC42 ENCO M17 0 7 M16 M15 0 0 6 5 M14 0 4 M13 1 ③ M12 M11 0 0 2 1 M10 0 0 4 ②① b15 D10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 b0 すべて0になります b15 D0 0 1 0 1 0 1 0 1 0 0 0 0 1 0 6 5 4 ③ 2 7 無視されます 4 b15 D1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 すべて0になります b0 0 0 1 0 ②① 1 1 b0 ●ソース内の複数ビットが1のときは下位側を無視します。 また、 ソースがすべて0のときは演算 エラーとなります。 ●駆動入力がOFFのときは命令は実行されず、エンコード出力は変化しません。 ●n=8のときエンコード命令の S・ がビットデバイスであれば、 その点数は28=256点となります。 176 データ処理 6.応用命令解説 FNC 43 SUM D P SUM 対 ワード 要素 シリーズ名 16ビット命令 SUM (連続実行形) 5ステップ SUM P (パルス実行形) 素 D SUM (連続実行形) 9ステップ D SUM P (パルス実行形) 32ビット命令 ― ― ― ― ● ● S・ K,H KnX KnY KnM KnS T 象 要 対象機種 ONビット数 C D V,Z ファイルレジスタ D・ ビット 要素 X Y M X000 機能と動作 フ ラ グ 番 号 S FNC 43 SUM S・ D・ D 0 D 2 備考 FX0 FX0S FX0N FX1 FX2 FX2C ゼロ M8020 D 0の中の1の数をD 2へ格納します。 1がない時にはゼロフラグM8020が動作します。 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 8 4 2 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 D 0 D 2 ● D SUMや D SUM P 命令では上図の例のばあい(D1, D0) の32ビット中の1の数をD2へ書 込むとともにD3はすべて0になります。 FNC 44 BON D P BIT ON CHECK 対 ワード 要素 象 要 素 ビット 要素 機能と動作 シリーズ名 BON D BON (連続実行形) 7ステップ BON P (パルス実行形) 13ステップ D BON P (パルス実行形) 32ビット命令 (連続実行形) S・ K,H n KnX X Y X000 KnY M D・ KnM KnS T C D V,Z ファイルレジスタ ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C n=0∼15(16ビット命令) n=0∼31(32ビット命令) S FNC 44 BON SUM BON 対象機種 ONビット判定 16ビット命令 FNC43 FNC44 S・ D・ n D 10 M 0 K 15 D 10の中のn=b15が1(ON)のとき、 M 0が動作します。 X000がOFFのとき、M 0は変化しません。 D 10 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 b15 b0 M 0=ON 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 M 0=OFF ●16ビット演算のときはn=0∼15、 32ビット演算のときはn=0∼31となります。 177 データ処理 6.応用命令解説 D FNC 45 MEAN P MEAN 対 ワード 要素 象 要 素 ビット 要素 機能と動作 FNC45 MEAN 178 対象機種 平均値 シリーズ名 MEAN D MEAN (連続実行形) MEAN 7ステップ P (パルス実行形) 13ステップ D MEAN P (パルス実行形) 16ビット命令 32ビット命令 (連続実行形) S・ K,H n X KnX KnY KnM KnS T C D V,Z ファイルレジスタ D・ Y X000 M FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C n=1∼64 (FX2 V2.30以下は、32ビット命令なし) S FNC 45 MEAN ― ― ― ― ● ● 備考 S・ D・ n D 0 D 10 K 3 (D 0)+(D 1)+(D 2) 3 (D 10) ●n点のソースデータの平均値(代数和をnで割ります) をデスティネーションへ格納します。 剰余は切捨てとなります。要素番号がオーバーするときは可能な範囲でnを小さな値として扱 います。 ●nが1∼64以外のときはエラーになります。 データ処理 6.応用命令解説 FNC 46 ANS 対象機種 アナンシェータセット シリーズ名 ANNUNCIATOR SET ANS 16ビット命令 (連続実行形) 32ビット命令 ― 7ステップ 対 ワード 要素 S・ K,H KnX KnY KnM KnS T 0∼T199 C D V,Z T ファイルレジスタ 象 要 素 ビット 要素 m=1∼32,767(100ms単位) X Y M X000 FX0S FX0N FX1 FX2 FX2C S D・ 機能と動作 ― ― ― ― ● ● 備考 FX0 X001 S900∼S999 FNC 46 ANS S・ m D・ T 0 K 10 S900 アナンシェータを駆動するための 便利な命令です。 ●X0 0 0とX0 0 1が1秒以上同時にONするとS9 0 0がセットされ、 その後X0 00やX0 0 1がOFFして もS900は動作のままです。 (タイマはリセットされます) 1秒未満でX000やX001がOFFするとタイマはリセットされます。 ●M804 9 (アナンシェータ有効) をONさせておくと、 アナンシェータリレーS900∼S999の最小ON ステート番号がD804 9 (ONステート最小番号) に格納されます。 また、 S90 0∼S99 9のどれかがONしているときには、 M804 8 (アナンシェータ動作) がONします。 FNC 47 ANR ANNUNCIATOR RESET 対 P シリーズ名 ANR (連続実行形) 1ステップ ANR P (パルス実行形) 32ビット命令 アナンシェータリセットには、対象要素はありません。 象 ANS ANR 対象機種 アナンシェータリセット 16ビット命令 FNC46 FNC47 ― ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C 要 素 X003 機能と動作 FNC 47 ANR P X003がONするとアナンシェータS900∼S999のうち動作中のものをリセットします。複数のものが 動作していると、若い番号のものをリセットします。 再びX003をONさせると次の番号のステートをリセットします。 ANR命令を用いると各演算周期ごとに順次リセットされますからご注意ください。 179 データ処理 6.応用命令解説 例えば下図のような外部故障診断回路を作り、特殊データレジスタD804 9の内容をモニタすると、 S900∼S999のうちの動作ステートの最小番号が表示されます。 複数の故障が同時に発生しているときは、最小番号の故障を解除してから次の故障番号を知る ことができます。 アナンシェータ による故障 番号の表示 M8000 M8049 ●特殊補助リレーM804 9を駆動するとモニタ が有効となります。 FNC 46 ANS T 0 K 10 S900 FNC 46 ANS T 1 K 20 S901 FNC 46 ANS T 2 K100 S902 ●前進出力Y0 0 5を駆動してから前進端検出 X00 0が1秒以内に働かなければS90 0が動 作します。 ●ドッグの異常により上限X001と下限X002 が2秒以上同時に不作動であればS901が 動作します。 ●タクトタイムが1 0秒未満の機械で連続運転 モード入力X003がONしているときに、機 械の1サイクル運転中に動作するスイッチ X004が働かなかったばあいにS902が動 作します。 0 RUNモニタ 3 12 21 Y005 X000 前進 前端 X001 X002 上限 下限 X003 X004 連続 サイクル 30 X005 Y005 前進 32 M8048 Y006 アナンシェータ動作 34 X007 リセット 36 故障表示 FNC 47 ANR P END 《アナンシェータ有効M8049》 これを駆動すると、 S9 0 0∼S9 9 9のうち動作 ステートの最小番号が特殊データレジスタ D8 04 9に格納されます。 180 ●S900∼S999のどれかがONすると特殊補 助リレーM804 8が動作し、故障表示出力 Y006が働きます。 ●外部故障診断プログラムによって動作した ステートをリセットボタンX0 0 7でOFFにしま す。 X0 0 7をONにするたびに若い番号の動 作ステートが順次リセットされます。 《アナンシェータ動作M8048》 M8 04 9が駆動されていて、 ステートS9 0 0∼ S9 9 9のどれかが動作していると、 M8 04 8が 動作します。 データ処理 6.応用命令解説 D FNC 48 SQR P SQUARE ROOT 対 ワード 要素 対象機種 BIN開平算 シリーズ名 16ビット命令 SQR (連続実行形) 5ステップ SQR P (パルス実行形) S・ K,H S・ KnX KnY KnM KnS T C 象 要 素 D SQR (連続実行形) 9ステップ D SQR P (パルス実行形) 32ビット命令 D V,Z ファイルレジスタ D・ ビット 要素 機能と動作 X Y X000 M S (FX2は、V3.07以上で追加されました) FNC 48 SQR S・ D・ D 10 D 12 ― ― ― ― ● ● フ ラ グ 番 号 備考 FX0 FX0S FX0N FX1 FX2 追加命令 FX2C ゼロ ボロー M8020 M8021 D 10→D 12 ●平方根(ルート) を演算する命令です。 S・ ● は正の数のみ有効であり、負数のときは演算エラーフラグM8067が動作して、命令は実 行されません。 ●演算結果は小数点が切捨てられて整数となります。 切捨てが生じたときはボローフラグM8021が動作します。 ●演算結果が真の0のときはゼロフラグM8020が動作します。 拡張機能 (FX2, FX2C) X000 M8023 FNC 48 D SQR M8000 M8023 D 10 D 12 FNC48 SQR ●特殊補助リレーM8023をONさせてから D SQR命令 を実行すると、 2進フロート演算が行われます。 ●ソースデータはFNC4 9 (FLT)命令によりあらかじめ 2進フロート値に変換しておく必要があります。 ただし、 定数K, Hは自動的に2進フロート値に変換して扱わ れます。 ●2進フロート演算では、 ゼロフラグのみが動作します。 181 データ処理 6.応用命令解説 D FNC 49 FLT P FLOAT 対 ワード 要素 対象機種 浮動小数点演算 シリーズ名 16ビット命令 FLT (連続実行形) 5ステップ FLT P (パルス実行形) S・ K,H KnX KnY KnM KnS T C 象 要 素 D V,Z ファイルレジスタ D・ ビット 要素 機能と動作 X Y M S (FX2は、V3.07以上で追加されました) ― ― ― ― ● ● フ ラ グ 番 号 備考 FX0 FX0S FX0N FX1 FX2 追加命令 FX2C ゼロ ボロー キャリー M8020 M8021 M8022 BIN整数値と2進フロート値間の変換命令です。定数K, Hは各フロート演算命令の中で自動変 換されますので、 このFLT命令の中では扱いません。 X000 FNC49 FLT D FLT (連続実行形) 9ステップ D FLT P (パルス実行形) 32ビット命令 X000 FNC 49 FLT M8000 X000 D・ D 10 D 12 (D 10) → (D 13, D 12) BIN整数 2進フロート値 D 10 D 12 (D 11, D 10) → (D 12) 2進フロート値 BIN整数 小数点以下切捨て D 10 D 12 (D 11, D 10) → (D 13, D 12) BIN整数 2進フロート値 D 10 D 12 (D 11, D 10) → (D 13, D 12) 2進フロート値 BIN整数 小数点以下切捨て M8023 FNC 49 FLT X000 S・ M8023 FNC 49 D FLT M8023 FNC 49 D FLT M8000 M8023 ●上記のとおり、 M8 0 2 3=ONで命令実行すると、 2進フロート値→BIN整数 (小数点以下は切捨て) の変換、 M8023=OFFのときは逆方向の変換となります。 ●2進フロート値→BIN整数への変換時に切捨てが生じ、 結果が0になるとボローフラグ(M8 02 1)、 オーバーフローが生じるとキャリフラグ(M8 02 2)がONします。 結果が真に0のときはゼロフラグ (M802 0) がONします。 ●フロート演算についてはあらかじめ5−2項をご参照ください。 182 データ処理 6.応用命令解説 浮動小数点 演算の例 下記の例題に対するシーケンス例を示します。 × K34.5 (D 0) ÷ (X017∼X010) 16ビットBIN BCD 2桁 ① ② (D 21, D 20) 2進フロート ⑤ (D 22)BIN ③ (D 11, D 10) 2進フロート ⑥ ⑦ ④ (D 13, D 12) 10進フロート ⑧ (D 27, D 26) 2進フロート (D 15, D 14) 32ビットBIN (D 25, D 24) 2進フロート (D 29, D 28)2進フロート M8000 ① FNC 49 FLT D 0 D 20 (D 0) → (D 21, D 20) BIN 2進フロート ② FNC 19 BIN K2X010 D 22 (X017∼X010) → (D 22) BCD BIN ③ FNC 49 FLT D 22 D 24 (D 22) → (D 25, D 24) BIN 2進フロート M8023 FLT FLT演算 ④ FNC 23 D DIV K 345 K 10 D 26 K345÷K 10 → (D 27, D 26) 2進フロート ⑤ FNC 23 D DIV D 20 D 24 D 28 (D 21, D 20)÷(D 25, D 24) → (D 29, D 28) ⑥ FNC 22 D MUL D 28 D 26 D 10 (D 29, D 28)×(D 27, D 26) → (D 11, D 10) ⑦ FNC 18 D BCD D 10 D 12 (D 11, D 10) → (D 13, D 12) 2進フロート 10進フロート モニタ用 ⑧ FNC 49 D FLT D 10 D 14 (D 11, D 10) → (D 15, D 14) 2進フロート 32ビットBIN M8000 FNC49 M8023 183 6.応用命令解説 184 データ処理 高速処理 6.応用命令解説 6−8. FNC50∼FNC59 「高速処理」 ∼ FNC00 FNC09 FNC10 ∼ FNC50∼FNC59には、最新の入出力情報でシーケンス制御を行ったり、 シーケンサの高速処理能力を活かした割込み処理形の高速処理命令が 用意されています。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 50 REF 入出力リフレッシュ 51 REFF フィルタ調整 52 MTR マトリクス入力 53 HSCS 比較セット 54 HSCR 比較リセット(高速カウンタ) 55 HSZ 帯域比較 (高速カウンタ) 56 SPD パルス密度 57 PLSY パルス出力 58 PWM パルス幅変調 (高速カウンタ) FNC39 FNC40 ∼ FNC49 FNC50 ∼ − FNC30 ∼ 59 FNC29 − FNC59 ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 185 高速処理 6.応用命令解説 FNC 50 REF シリーズ名 REFRESH 対 ワード 要素 象 要 素 ビット 要素 機能と動作 対象機種 入出力リフレッシュ P K,H n 16ビット命令 REF (連続実行形) 5ステップ REF P (パルス実行形) KnX X Y KnY M KnM KnS S T D C 32ビット命令 D FX0 FX0S FX0N P P P 命令なし 命令なし 命令なし FX1 FX2 FX2C ,nの設定は下記による。 D このシーケンサは入出力一括リフレッシュ方式となっていて、入力端子情報は0ステップの演算 の前に入力イメージメモリに取込まれます。 また、出力端子にはEND命令後に、出力イメージメモリからラッチメモリを介して出力されます。 しかし、演算過程で最新の入力情報がほしいときや演算結果をただちに出力したいときは、 この 入出力リフレッシュ命令を用いることができます。 《出力リフレッシュ》 D X000 REF ファイルレジスタ V,Z 《入力リフレッシュ》 FNC50 ● ● ● ● ● ● ― 備考 FNC 50 REF X010 n K 8 ●多数の入力のうちX0 1 0∼X0 1 7の8点のみが リフレッシュされます。 この命令が実行される時点よりも約1 0ms (入 力フィルタの応答おくれ時間)前にX010∼ X0 1 7がONしていれば、 この命令の実行時に 入力イメージメモリX010∼X017がONします。 X001 FNC 50 REF D n Y000 K 24 ●多数の出力のうちY000∼Y007、 Y010∼ Y0 1 7、 Y02 0∼Y02 7の24点がリフレッシュ されます。 Y000∼Y027のどれかがONしていると、 この命令実行時点で出力ラッチメモリの 該当出力もONします。 ●指定先頭要素番号 D は、 X000, X010…、 Y000, Y010, Y020…のように最下位桁番号を0 としてください。 ●リフレッシュ点数「n」 は、 8, 16…2 56のように8の倍数とし、 これ以外の数値はエラーになります。 ・FX0, FX0S :K8 (H8) またはK16 (H10) ・FX0N, FX1:K8 (H8), K16 (H10)…K128 (H80) ・FX2, FX2C:K8 (H8), K16 (H10)…K256 (H100) ●FOR∼NEXT命令間やラベル(若番ステップ) ∼CJ命令(老番ステップ)間などには一般には REF命令が必要となることがあります。 ●入出力動作を伴う割込み処理を行うばあいにも割込みルーチン内で入出力リフレッシュを 実行し、最新の入力情報の取り込みと演算結果の即時出力を行います。 ●出力リフレッシュでは、出力リレーの応答時間後に出力接点が動作します。 リレー出力タイプのばあい約1 0ms, トランジスタ出力タイプのばあい0. 2ms以下の応答遅れが あります。 詳細は、 シーケンサ本体のマニュアルの出力仕様をご覧ください。 186 高速処理 6.応用命令解説 FNC 51 REFF P REFRESH AND FILTER ADJUST 対 ワード 要素 象 要 素 ビット 要素 K,H n 対象機種 フィルタ調整 シリーズ名 16ビット命令 REFF (連続実行形) 3ステップ REFF P (パルス実行形) KnX KnY KnM KnS T D V,Z n=0∼60(フィルタ定数 ms) X Y M S X000∼X007(指定不要) 機能と動作 (FX1, 2, 2C) C 32ビット命令 X010 ― ファイルレジスタ ※ ※ ※ ● ● ● 備考 FX0 FX0S ※詳細下記 FX0N FX1 FX2 FX2C ※FX0, FX0S, FX0シー ケンサの入力フィル タ調整は特殊データ レジスタの変更で行 います。詳細は7章を ご参照ください。 n FNC 51 REFF K 1 X000 X010がONのとき、入力フィルタ1msとして入力X000∼X007の イメージメモリをリフレッシュします。 0ステップからこの命令まではフィルタ1 0msとして処理されます。 X001 M8000 FNC51 FNC 51 REFF K 20 これ以降はENDまたはFEND命令まで入力フィルタは20msに なります。 REFF X000 X001 ●一般にシーケンサの入力には入力接点のチャッタリングやノイズ対策として約1 0msのC−Rフィ ルタが設けられています。 しかし、無接点入力でノイズの混入しないように配慮された入力のばあい、高速取込みを行う ためには上記のフィルタが邪魔になります。 ●このシーケンサでは入力X000∼X007に関してディジタルフィルタが用いられており、命令に よってその値を0∼60msに変更することができます。ただし、実際にはこの入力にも最小の C−Rフィルタが設けられていて50μs以下にはなりません。 ●X010がONのとき、 REFF命令のばあいは各演算周期ごとに実行されます。 REFF P 命令のときはX010がOFF→ONになったときのみ実行されます。 X010がOFFのときはこの命令は実行されずX000∼X007の入力フィルタは10msになります。 (入力処理のときの値です) フィルタの 自動変更 (全機種) 割込みポインタが用いられているとき、高速カウンタでX000∼X007が用いられているとき、 ある いはFNC56 (SPD)命令を用いているときは、 これらの命令に対する入力フィルタは自動的に50 μsになっています。 なお、 これら高速処理命令で使用した入力番号を一般プログラム上で用い ると、 10msまたはREFF命令で指定したフィルタ時間になります。 187 高速処理 6.応用命令解説 FNC 52 MTR マトリクス入力 MATRIX 16ビット命令 対象機種 シリーズ名 MTR (連続実行形) 32ビット命令 Y M 52 S D1 D2 n X010 Y020 M 30 K 3 M 47 M 46 M 45 M 44 M 43 M 40 X011 X01 X013 X014 X015 X016 X017 2 M 37 M 36 M 35 M 34 M 33 M 32 M 31 X011 X01 X013 X014 X015 X016 X017 2 M 30 フ ラ グ 番 号 D2 :Y , M , S …最下位桁は 0 とします n :K , H , n … 2∼8 が有効 FNC 52 MTR M 51 M 0 0.1A50Vダイオード が必ず必要です MTR S D2 機能と動作 FNC52 M M 41 素 ビット 要素 M 50 要 M 57 X 象 ファイルレジスタ KnS T C D V,Z 命令使用回数:1回 S :X000,X010,X020…など最下位桁 0 の X D1 :Y000,Y010,Y020…など最下位桁 0 の Y M 56 D1 KnM M 55 S KnY M 54 KnX M 53 K,H n M 42 対 ワード 要素 ― ― ― ― ● ● ― 9ステップ 備考 FX0 FX0S FX0N FX1 FX2 FX2C 完了実行 M8029 8点n列の入力信号を8点の入力とn 点の出力を用いて順次読込むため の命令です。 ● S で指定された入力を先頭として8 点の入力が占有されます。 ● D1 で指定された出力を先頭としてn 点のトランジスタ出力が占有されます。 ●図の例ではn=3点の出力Y0 2 0, Y02 1, Y022が順次繰返してONします。 その つど第1列、第2列、第3列の入力が順 次繰返して取込まれ、 M3 0∼M3 7, M4 0 ∼M4 7, M50∼M57へ格納されます。 M0 第1列入力取込み Y020 ① ④ 第2列入力取込み COM X010 X011 X012 X013 X014 X015 X016 X017 ② Y021 ⑤ 第3列入力取込み COM5 Y020 Y021 Y022 Y023 Y024 Y025 Y026 Y027 Y022 ③ ⑥ 20ms M8029 ●各出力は入力フィルタの応答おくれ10msを考慮して20msごとに順次割込みで即時入出力処 理が行われます。 ●駆動入力は常時ONにしてください。 また、初回動作サイクル後に実行完了フラグM8029がセット されます。 ●この命令を用いると8点の入力と8点のトランジスタ出力を用いて64点の入力を取込むことが できます。 ただしこのばあい、全入力の取込みには20ms×8列=160msが必要となりますので 応答を急ぐ入力には適しません。 (入力X000∼X007を用いると各列10ms、合計80msとなりま すがプルアップ抵抗を必要としますので、次ページをご参照ください。) 188 高速処理 6.応用命令解説 使用上の注意 《駆動入力について》 MTR命令の駆動入力は、常時ONにしてください。 M 0 (常時ON) FNC 52 MTR X010 Y040 M 0 K 8 駆動入力をON/OFFさせて使用するばあい、 OFFした瞬間に指定出力Yから16点(例では Y04 0∼Y0 5 7) がOFFしますので、次のように出力YのデータをMTR前後で退避・復帰させ、 Y データを保護してください。 M100 M100 M100 FNC 12 MOV K4Y040 D100 FNC 52 MTR X010 Y040 FNC 12 MOV D100 K4Y040 M 0 K 8 《MTR命令で使用する入力番号について》 ①MTR命令で用いる入力は、通常X010以降を使用してください。 ②入力X0 0 0∼X0 0 7を使用するばあい、 取込みスピードは速くなりますが、 出力トランジスタの回復 時間が長いことと、 入力感度が高いことにより誤入力することがあります。 そのため、 X0 0 0∼X0 0 7を 使用するばあいは、 MTR命令で使うトランジスタ出力にプルアップ抵抗 (3. 3kΩ/0. 5W) を接 続してください。 プルアップに使う電源は、 FX2, FX2Cシーケンサのサービス電源としてください。 FNC52 MTR マトリクス 回路 COM 24V X000 X001 X002 X003 X004 X005 X006 X007 前ページ参照 FX2,FX2Cシーケンサ トランジスタ出力 COM Y040 Y041 Y042 Y043 Y044 Y045 Y046 Y047 3.3kΩ/0.5W プルアップ抵抗 《入力信号ON/OFF時間について》 8列64点の入力で8 0ms、 または1 6 0msの取込み周期で動作するため、 各入力信号のON/OFF幅 は次の値以上が必要となります。 入力X000∼X007使用時 80ms 80ms 入力X010以降を使用時 160ms 160ms 189 高速処理 6.応用命令解説 D FNC 53 HSCS シリーズ名 SET BY HIGH SPEED COUNTER 対 ワード 要素 16ビット命令 K,H KnX KnY 素 ビット 要素 X Y M KnM S1・ KnS S D・ M8000 機能と動作 RUNモニタ C255 32ビット命令 ― 象 要 D HSCS (連続実行形) 13ステップ ファイルレジスタ D Z S2・ :C235∼C255 (高速カウンタ番号) FX2,FX2Cでは D・ として、I010∼I060の カウンタ割込み用ポインタを指定するこ とができます。 T C Y010 M8000 RUNモニタ HSCS Y010の動作は 演算周期の 影響あり C255 K2,147,483,647 FNC 53 D HSCS ● ● ● ● ● ● 備考 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C ●高速カウンタはカウンタ番号に応じた入 力のOFF→ONを割込みで計数するも のです。 カウンタの現在値が設定値に 等しくなるとカウンタの出力接点もただ ちに動作します。 しかし、左図のように、 これを外部へ出 力することをシーケンスに依存すると演 算周期の影響を受けます。 C255 K100 SET Y010も同じ FNC53 対象機種 比較セット(高速カウンタ用) S1・ S2・ D・ K100 C255 Y010 ●FNC53命令を用いると比較、 外部出力 ともに割込みで処理されるため、 C255 の現在値が99→100や101→100に変 化した時点でただちにY010がセットさ れます。 ただちにセット ●高速カウンタの現在値比較結果をただちに外部出力したいばあいにFNC53を用います。 ただ し、 D・ に指定した要素を外部へ出力することをシーケンスに依存すると、最初のケースと 同様に演算周期の影響を受け、 END処理後に出力が駆動されます。 注意事項 FNC 53 FNC 54 FNC 55 共通事項 ●この命令は32ビット専用命令です。必ず D HSCS命令として入力してください。 ●これらの命令はパルスが入力されたときに比較結果が動作します。 したがって、比較対象と なるワードデバイスの内容を D MOV命令などで書換えたり、 カウンタの現在値をプログラム 上でリセットしたりすることで、比較結果としては出力がONまたはOFFされるべき条件になっ たばあいでも、単に命令を駆動しただけでは比較結果は変化しません。 ●FNC53, FNC54, FNC55は一般の命令と同様に何度でも用いることができます。 しかしこれら の命令が同時に駆動されている点数は総合計で6命令以下に制限されています。 ●FNC53命令を複数駆動するばあいや、 FNC54, FNC55命令と同時駆動するばあいには、対 象出力Yの上位2桁は同一番号の要素としてください。 (例:Y000を用いたばあいはY000∼Y007, Y010のばあいはY010∼Y017など) M8000 190 FNC 53 D HSCS K100 C255 Y000 FNC 53 D HSCS K100 C255 Y010 左記プログラムのばあい、 C255がK100に 達すると、 Y000の出力駆動は割込みで行 われますが、 Y010の駆動は、 END処理時 に行われます。 割込み駆動としたいばあい は上2桁番号が同じY00 1∼Y00 7を用いて ください。 ●FX1, FX2, FX2Cの高速カウンタの許容最大周波数は、D HSCS,D HSCR,D HSZなどの 命令を用いると大きな影響を受けます。 ( 2−8−4) 高速処理 6.応用命令解説 外部端子 に よ るリ セット動作 FNC 53 FNC 54 FNC 55 共通事項 高速カウンタの出力接点やFNC53 ( D HSCS), FNC54 ( D HSCR), FNC55 ( D HSZ)命令に おける比較出力は、計数入力に伴う現在値レジスタの変化に対して動作します。 したがって、転 送命令などにより現在値が変更されても、計数入力が入らないかぎり比較出力は変化しません。 これは、前述の 「注意事項」 のとおりですが、高速カウンタの内C24 1などのように外部リセット端子 (R) を備えたものについては、 リセット入力信号の立上がりによって、命令が実行され比較結果が 出力されるようになっています。詳細は次のとおりです。 《FX1, FX2, FX2Cのばあい》 (FX2はV1. 20以上’ 90年2月生産以降で有効) M8000 RUNモニタ ●FX1, FX2, FX2Cでは特殊補助リレー M 8 0 2 5 を駆動した状態でF NC53∼ X001 C241用の外部 リセット端子 55を用いると、外部リセット端子に C241 K9,999 よって高速カウンタ (C24 1) の現在値 がクリアされた時点で命令が再実行 FNC 54 K 0 C241 Y000 D HSCR され、計数入力を必要とせずに、比 較結果を出力します。 M8025 外部リセットモード 上の例では、 C24 1の現在値が例えば100のときに外部リセット入力X001がONすると、 C24 1の現 在値は0になり、計数入力がなくてもこの時点でY000がリセットされます。 《FX0, FX0S, FX0Nのばあい》 FX0S, FX0Nにおいては、上記の機能を用いるために、 特殊補助リレーM802 5を駆動する ●FX0, 必要はありません。 基本機能として上記の外部リセット動作が行われます。 カウンタ 割込みの動作 ステップ 0 (FX2はV3. 30 以上で有効) HSCS FNC 04 EI M8000 FX2, FX2C FNC53 RUNモニタ C255 K2,147,483,647 FNC 53 D HSCS S1・ S2・ D・ K100 C255 I010 FNC 06 FEND 割込み ポインタ I010 割り込みルーチン FNC 03 IRET ●FX2, FX2Cでは D HSCS命令の D・ としてI 0□0= (□=1∼6) を指定することができます。 (□=1∼6の重複番号使用はできません。) ●これにより、 S2・ で指定した高速カウンタの現在値が S1・ で指定した値に変化したときに D・ で指定したラベルI 0□0の割込みプログラムが実行されます。 ●特殊補助リレーM8059=ONのときはI 010∼I 060による割込みはすべて禁止されます。 割込み処理の詳細につきましては FNC03 (IRET) ∼FNC05 (DI) をご参照ください。 191 高速処理 6.応用命令解説 D FNC 54 HSCR シリーズ名 RESET BY HIGH SPEED COUNTER 対 ワード 要素 16ビット命令 K,H KnX KnY 素 ビット 要素 X Y M D・ M8000 機能と動作 RUNモニタ 32ビット命令 ― KnM S1・ KnS 象 要 対象機種 比較リセット(高速カウンタ用) S D HSCR (連続実行形) 13ステップ ファイルレジスタ D Z S2・ :C235∼C255 (高速カウンタ番号) D・ には S2・ と同じ高速カウンタを 指定することができます。 T C C255 K2,147,483,647 FNC 54 D HSCR S1・ S2・ D・ K200 C255 Y010 ● ● ● ● FX0 ● ● FX2 備考 FX0S FX0N FX1 FX2C ●FNC54命令を用いると比較、外部 出力ともに割込みで処理されるため、 C2 55の現在値が19 9→2 00や2 0 1→ 200に変化した時点で演算周期の 影響を受けずにただちにY010がリ セットされます。演算周期の影響に つきましては前述のFNC53を参照く ださい。 FNC54 《自己リセット回路の例》 HSCR M8000 RUNモニタ ●C255の現在値が4 00になるとただち にC255のリセットが行われ、現在値 は0、出力接点は不作動になります。 C255 K300 FNC 54 D HSCR K400 C255 C255 400 C255 300 現在値 C255出力接点 注意事項 192 ●この命令は32ビット専用命令です。必ず D HSCR命令として入力してください。 その他の注意事項につきましては、 FNC53の「注意事項」 をご覧ください。 高速処理 6.応用命令解説 D FNC 55 HSZ シリーズ名 ZONE CONPARE FOR H.S.C 対 ワード 要素 16ビット命令 ― S1・ K,H KnX KnY 32ビット命令 KnM 素 ビット 要素 X Y M D・ M8000 機能と動作 RUNモニタ D HSZ (連続実行形) 17ステップ S2・ KnS T C 象 要 対象機種 帯域比較(高速カウンタ用) ファイルレジスタ D Z S・ :C235∼C255 (高速カウンタ番号) ― FX0 ― ― ― FX0S ● ● FX2 備考 FX0N FX1 FX2C S 出力要素の指定は下記「注意事項」参照 C251 K2,147,483,647 FNC 55 D HSZ S1・ S2・ S・ D・ K1000 K2000 C251 Y000 <比較出力の動作> K1000>C251現在値 Y000 K1000≦C251現在値≦K2000 Y001 K2000<C251現在値 Y002 ON ON ON ● S1・ ,S2・ の内容は S1・ ≦ S2・ としてください ●FNC5 5を用いると比較,外部出力ともに割込みで処理されます。 K1 0 00>C2 5 1現在値のときは、 Y0 0 0がONします。 またC2 3 5現在値が9 9 9→1 00 0や19 9 9→2 0 00 に変化した時点で、 ただちに出力Y001またはY002がONします。 これらの出力は演算周期の影響を受けずに動作します。 注意事項 FNC55 HSZ ●この命令は32ビット専用命令です。必ず D HSZ命令として入力してください。 ●この命令はパルスが入力されたときに動作します。 したがって、 比較結果として出力がONされ るべき状態であっても単に命令をONしただけでは比較出力はONしません。 例えば、 カウンタの現在値を D MOV命令などで書換えても、次のカウントパルスが入力され ない限り比較結果は動作しません。次ページにある 「高低速停止制御の例」 において、比較出 力の初期駆動の例を示しますのでご参照ください。 ●FNC55命令を複数駆動するばあいや、 FNC53, FNC54命令と同時駆動するばあいには、 対象出力Yの上位2桁は同一番号の要素としてください。 ●FNC55命令の比較出力の下1桁は0∼5の要素としてください。 したがって、出力要素として指定する番号は、□□0∼□□5の範囲に限られます。 (例Y005=○, Y006=×) これは、本命令が要素番号□□0∼8点分に対してのみ高速出力を行っているためであり、 これを越えた番号は比較出力として動作しません。 要素番号の指定方法に関する注意事項の詳細と、 その他の注意につきましてはFNC53の 「注意 事項」 をご覧ください。 193 高速処理 6.応用命令解説 高速帯域比較 の初期駆動例 《プログラム例》 X010 RST FNC 40 ZRST M8000 スタート Y010 Y012 Y010∼Y012をリセット C235 K9999…パルス入力:X000 RUNモニタ X010 C235 FNC 11 D ZCP P FNC 55 D HSZ K1000 K1200 C235 Y010 S1・ S2・ S・ D・ K1000 K1200 C235 Y010 ●スタート直後、1スキャンのみ比較実行 K1000>C235 :Y010 ON K1000≦C235≦K1200 :Y011 ON K1200<C235 :Y012 ON ●スタート後、X000からのパルス入力時 割込みで比較実行 K1000>C235 :Y010 ON K1000≦C235≦K1200 :Y011 ON K1200<C235 :Y012 ON 《動作チャート》 X000 (C235入力パルス) X010 (スタート) Y010 ① (範囲下) Y011 (範囲内) A B Y012 (範囲上) C 1200 1000 0 (カウンタの現在値) 《動作説明》 ●出力Y010∼Y012の動作は右図のとおりです。 Y010=ON 0 Y011=ON 1,000 Y012=ON 1,200 C235の現在値 ● D HSZ命令は、計数パルスが入力されたときにのみ比較結果出力を駆動しますので、 C2 3 5の現在値が0であってもスタート時にはY0 1 0はOFFしたままの状態となります。 このため、 Y010を初期駆動させるために一般の帯域比較命令である D ZCP P を用いて、スタート 時のみのパルス実行でC23 5の現在値とK1000, K12 00を比較し、 Y010を駆動しておきます。 (動作チャート①部) Y010の比較結果は、入力パルスが入力され D HSZ命令によって比較出力が駆動される まで保持され(①部)、 その後はカウンタの現在値に従って D HSZ命令が A , B または C の出力を駆動します。 194 高速処理 6.応用命令解説 テーブル 高速比較 モード FX2C FX2, (FX はV 2 3. 07 以上で有効) 《HSZ命令のテーブル高速比較モード(高速パターン出力)》 D HSZ命令の D・ としてテーブル高速比較モード宣言用特殊補助リレーM8130を指定する ことにより、以下のような特殊な機能となります。 このばあい、 S1・ はデータレジスタDのみ、 S2・ はK, Hのみで1≦K, H≦128に制限され、 S・ は高速カウンタC2 35∼C255が指定できます。 X010 FNC 55 D HSZ S1・ S2・ S・ D・ D200 K 5 C251 M8130 テーブル高速比較モード (帯域比較ではありません。) ●この命令は1回だけ用いることができます。 また、他の用途で用いられているFNC53∼55命令 と合わせて同時に駆動できる命令は、 6点以下に制限されています。 《制御例》 出力制御特性 テーブルの構成とデータ設定例 比較データ 下位 上位 出 力 Y番号 SET/RST D 200 K123 D 201 K0 D 202 H10 D 203 K1 0 D 204 K234 D 205 K0 D 206 H10 D 207 K0 1 D 208 K345 D 209 K0 D 210 H11 D 211 K1 2 D 212 K456 D 213 K0 D 214 H11 D 215 K1 3 345 ↓ 234 D 216 D 217 D 218 D 219 4 K567 K0 H11 K1 ↓ テーブル カウンタ C251 現在値 ※他のシーケンスで カウンタや出力を リセットします。 ↓ ↓ ↓ 567 ※ 456 FNC55 HSZ 123 0からくり返し 出力Y番号 (例H10=Y010) K0:リセット S1・ で指定した先頭番号 K1:セット S2・ で指定した行数 (ダイレクト出力) Y010 Y011 ※ ● S1・ で指定した先頭レジスタから S2・ で指定した行数のテーブルを作成し、 あらかじめ所 定のデータを書込んでおきます。 ● S・ で指定された高速カウンタC251の現在値が比較データ (D201, D200) の値と等しくなっ た時点で、 D2 02により指定された出力 (HキーでY番号を指定) がセットまたはリセットされます。 ●セットかリセットかはD203の内容によります。 (D203) =0ならリセット、 (D203) =1ならセットとな ります。 このセット、 リセットは割込みでダイレクト制御されます。 ●1行目のデータが一致するとテーブルカウンタD8130は1となり、 2行目の動作に入ります。以下 同様に動作し、やがて最終行の動作が完了すると完了フラグM8131が動作し、最初の行にも どって動作を繰返します。 ●駆動入力X010をOFFすると実行を中断し、 テーブルカウンタD813 0はリセットされます。 ただし、 それまでにセット/リセットされた出力はその状態を保持します。 ●この命令は初回命令実行後のEND命令でテーブル作成が完了し、 それ以降有効となります。 195 高速処理 6.応用命令解説 周波数 制御モード 《HSZ, PLSY命令による周波数制御モード》 D HSZ命令の D・ として周波数制御モード宣言用特殊補助リレーM8132を指定すると、 D PLSY命令との組み合わせにより、以下のような特殊な機能となります。 FX2, FX2C S1・ はデータレジスタDのみ、S2・ はK, このばあい、 Hのみで1≦K, H≦128に制限されます。 (FX はV 2 3. 07 以上で有効) また S・ は高速カウンタC2 35∼C255が指定できます。 X010 FNC 55 D HSZ PLS M100 FNC 57 D PLSY S1・ S2・ S・ D・ D300 K 5 C251 M8132 K 0 Y023 周波数制御モード(帯域比較 ではありません。) M100 D8132 PLSY命令は左記のとおりとし、パル ス出力のみユーザ側で自由に変更 できます。 周波数 パルス量 パルス出力 (連続) ●この命令は1回だけ用いることができます。 また、他の用途で用いられているFNC53∼55命令 と合わせて同時に駆動できる命令は、 6点以下に制限されています。 《制御例》 テーブルの構成とデータ設定例 比較データ 周波数 出力パルス特性 テーブル カウンタ 下位 上位 0∼1000 Hz D 300 D 301 D 302, D 303 0 K 20 K 0 K300 ↓ D 304 D 305 D 306, D 307 1 K600 K 0 K500 ↓ D 308 D 309 D 310, D 311 2 K700 K 0 K200 ↓ D 312 D 313 D 314, D 315 3 K800 K 0 K100 ↓ D 316 D 317 D 318, D 319 4 K 0 K 0 K 0 ↓ 0からくり返し S1・ S2・ 出力パルス 周波数(HZ) ↑ 300 200 100 0 0 20 600 700 →C251現在値 800 で指定された先頭レジスタ(32ビット) で指定された行数 ●テーブルを構成するデータレジスタにはあ らかじめ所定のデータを書込んでおきます。 ● S・ で指定された高速カウンタC251の現 在値が(D3 01, D300) に等しくなるまでPLSY 命令の出力周波数は(D303, D302)の値と なります。 (D3 02は下位16ビットです。 D3 03は 上位16ビットですが、常に0となります。) ●その後、 2行目の動作に入り、順次各行の 動作が進行します。 196 500 最終行の動作が完了すると完了フラグM8133 が動作し、 1行目に戻って動作を繰返します。 ●最終行で動作を止めたいときは最後の テーブルの周波数をK0にします。 ●駆動入力X01 0をOFFするとパルス出力は OFFとなり、 テーブルカウンタD8 1 3 1もリセッ トされます。 ●この命令は初回命令実行後のEND命令 でテーブル作成が完了し、 それ以降有効 となります。 高速処理 6.応用命令解説 前ページのテーブルを参考にして、 シーケンス例を示します。 X010 FNC 12 D MOV P K300 D302 FNC 12 D MOV P K500 D306 FNC 12 D MOV P K200 D310 FNC 12 D MOV P K100 D314 FNC 12 D MOV P K 0 D318 FNC 12 D MOV P K 20 D300 FNC 12 D MOV P K600 D304 FNC 12 D MOV P K700 D308 FNC 12 D MOV P K800 D312 FNC 12 D MOV P K 0 D316 FNC 55 D HSZ D300 K 5 PLS M100 ●テーブルへのデータ書込みは、本例のようにプログラムで書 込んだり、周辺機器のキー操作で直接書込みすることがで きます。 M8132: 周波数制御モード宣言用の特殊補助リレーです。 FNC 57 M100 D PLSY D8132 D8132: 周波数制御モードにおいて、テーブルカウンタD8131 のカウントアップに応じて、順次テーブル内の設定周波 数がD8132に取込まれます。 D8134 (下位) , D813 5 (上位) : 周波数制御モードにおいて、 テーブルカウンタのカ ウントアップに応じて、 順次テーブル内の比較データ が取込まれます。 ●HSZ命令の駆動中はテーブルデータの変更は行わないでく ださい。 ●テーブルはEND命令実行時に作成されますので、 これが完 了するまでPLSY命令の実行を遅らせることが必要です。 FNC55 C251 K 0 M8132 HSZ Y023 周波数 パルス量 パルス出力 197 高速処理 6.応用命令解説 FNC 56 SPD 対象機種 パルス密度 シリーズ名 SPEED DETECT 16ビット命令 SPD (連続実行形) 32ビット命令 7ステップ 対 ワード 要素 S2・ K,H KnX KnY KnM KnS T C D 象 要 素 V,Z ファイルレジスタ D・ ビット 要素 機能と動作 X S1・ :X000∼X005 Y M S X010 FNC 56 SPD S1・ S2・ D・ X000 K100 D 0 X000 D 1:現在値 ― ― ― ― ● ● FX2 備考 FX0S FX0N FX1 FX2C 命令数:入力X000∼X005の1点あたり、1命令以下 (ただし、インデックス修飾可能) X010 FNC56 ― FX0 D 0:測定値 SPD 100ms 100 100ms ● S1・ で指定した入力のパルスを S2・ で 指定された時間(単位はms) の間だけ計 D・ 数し、 その結果を で指定した要素に 格納するものです。 ●これを繰返すことにより D・ には、パルス 密度(すなわち回転速度に比例した値) が得られます。 D・ には3点の要素が占 有されます。 ●図の例ではX010をONするとD1がX000 のOFF→ON動作を計数し100ms後にそ の結果をD0へ格納します。 ●これに伴ってD1はリセットされ、 再びX000 の動作を計数します。 ●D2は残り時間を測定するために用いられ ています。 ●以上によるD0の値は左図のとおり回転数 に比例しています。 D 2:残時間(ms) N= 60(D 0) (r/mi n) ×103 nt tは S2・ で指定した測定時間幅(ms) ●ここで指定された入力X000∼X005は高 速カウンタや割込み入力と重複して用い ることはできません。 ●入力X000∼X005のON/OFFの最大周波数は1相高速カウンタと同じ扱いとしてください。 198 高速処理 6.応用命令解説 D FNC 57 PLSY 対象機種 パルス出力 シリーズ名 PULSE Y 16ビット命令 PLSY (連続実行形) 32ビット命令 7ステップ 対 ワード 要素 13ステップ S1・ K,H KnX KnY KnM S2・ KnS T 象 要 素 ビット 要素 X C D V,Z ファイルレジスタ 命令使用回数:1回 (ただし、インデックス修飾可能) D・ :FX2,FX2C M S Y D PLSY (連続実行形) ● ● ● ― ● ● フ ラ グ 番 号 D :FX0,FX0S,FX0Nは「Y000」のみ指定可 備考 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C 実行完了 M8029 D 機能と動作 X010 FNC 57 PLSY S1・ S2・ D・ K1000 D 0 Y000 パルス量(D 0) Y000 1kHz ●所定の周波数で所定の量のパルスを発生するための命令です。 S1・ で周波数を指定します。 FX0, FX0S, FX0N :10∼2000 (Hz) FX2C :1∼1000 (Hz) FX2, FNC57 S2・ で発生パルス量を指定します。 16ビット命令では1∼32, 767、 32ビット命令では1∼ 2, 14 7, 4 83, 64 7パルが指定できます。 この指定を0にすると無制限にパルスを発生します。 D・ または PLSY D でパルスが出力されるY番号を指定します。 FX0, FX0S, FX0N :Y000のみ有効 トランジスタ出力タイプ FX2, FX2C :Y要素すべて有効 ] パルスのデューティは5 0%ON、 5 0%OFFであり割込み処理で直接ON/OFF出力が行われます。 ● D PLSY命令では(D1, D0)が設定パルス量となります。 ●設定パルスの発生が完了すると実行完了フラグM8029が動作します。 ●FX2, FX2Cでは、出力したパルス数がD8136 (下位), D813 7 (上位) に格納されます。 (FX2はV3. 07以上で有効) ●X010をOFFすると出力発生を中断し、 再度ONされると最初から動作を開始します。 連続パル ス発生時には、 X010をOFFするとY000はOFFとなります。 ● S1・ の内容は、 この命令の動作中に変更することができます。 しかし S2・ の内容はこれを動 作中に変更しても動作内容には反映されず、次回の命令駆動時(命令のOFF→ON時) に発 生パルス量が更新されます。 注意事項1 ●シーケンサはトランジスタ出力を用いてください。 また、高周波パルスの出力を行うためには、次ページに記載のとおり、十分な負荷電流を流す ようにしてください。 ●旧バージョンFX2シーケンサにおいてPLSY,D PLSY命令をご使用になるばあい、 PLSY命 令初期化回路を必ずプログラムしてからご使用ください。 (次ページ参照) 199 高速処理 6.応用命令解説 注意事項2 《初期化プログラム》 バージョンV2. 2以下のFX2シーケンサのPLSY,D PLSY命令を使用されるばあい、下図のよ うに特殊補助リレーM8002とM8034を組合わせたPLSY命令初期化回路を必ずプログラムして ください。 PLSY命令初期化回路 M8002 M8034 注意① 駆動命令 PLSY M8002 K500 D 20 Y001 注意② ①M8034 (全出力禁止) をM8002 (イニシャルパルス)でRUN直後1スキャンの間ONさせます。 ②RUN直後にPLSY命令または D PLSY命令をM8002で駆動し、 PLSY命令を初期化します。 このとき、 M8034が動作していますのでパルスは出ず、 M8002がOFFする次のスキャンから出 力可能となります。 ③このPLSY命令の初期化回路が無いばあい、 PLSY命令のプログラム位置によっては出力Yの 動作が不安定になることがありますので、 必ず初期化回路をプログラムするようお願いします。 ●FX2CおよびV2. 3以上のFX2では自動的に初期化が行われています。 《出力回路》 PLSY, PWM出力用トランジスタ回路 トランジスタのOFF時間は、軽負荷時に長くなります。 PLSY命令やPWM命令のように高速応答を必要とするトランジスタ出力で負荷が軽いばあいには、 上図のとおりダミー抵抗を並列接続し、 出力トランジスタの定格電流に近い電流を流してください。 (FX2Cでは100mA、 FX0, FX0S, FX0N, FX2および増設では200mA) 200 高速処理 6.応用命令解説 FNC 58 PWM 対象機種 パルス幅変調 シリーズ名 PULSE WIDTH MODULATION 16ビット命令 PWM (連続実行形) 32ビット命令 7ステップ 対 ワード 要素 S1・ K,H KnX KnY KnM S2・ KnS 象 要 素 ビット 要素 X D・ :FX2,FX2C M S Y ― T C D ファイルレジスタ V,Z 命令使用回数:1回 (ただし、インデックス修飾可能) ● ● ● ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C D :FX0,FX0S,FX0Nは「Y001」のみ指定可 D 機能と動作 X010 FNC 58 PWM t S1・ S2・ D・ D 10 K 50 Y000 Y000 左図のt/T0 を制御する 命令です。 T0 パルス幅 周 期 t T0 S1・ でパルス幅t=0∼32, 767msを指定します。 S2・ で周期T0=1∼32, 767msを指定します。 ただし、 S1・ ≦ S2・ D・ または D でパルスが出力されるY番号を指定します。 FX0S, FX0N :Y001のみ有効 FX0, トランジスタ出力タイプ FX2, FX2C :Y要素すべて有効 この出力のON/OFFは割込み処理で行われます。 FNC58 PWM ] ●上図の例でD10の内容を0∼50に変化させるとY000の平均出力は0∼100%になります。 (D10) の内容が50を超えるとエラーになります。 ●X010をOFFするとY000はOFFになります。 《平滑回路の例》 平均出力電流eの中のリップル値Δeは概略 注意事項 Δe T0 ≦ となります。 e τ ●シーケンサはトランジスタ出力を用いてください。 また、高周波パルスの出力を行うためには、 前ページ゙に記載のとおり、十分な負荷電流を流すようにしてください。 201 6.応用命令解説 202 高速処理 便利命令 6.応用命令解説 6−9. FNC60∼FNC69 「便利命令」 ∼ FNC00 FNC09 FNC10 ∼ FNC60∼FNC69には、最小限のシーケンスプログラムで複雑な制御が 行える便利命令が用意されています。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 FNC29 60 IST イニシャルステート 61 SER データサーチ 62 ABSD ドラムシーケンス(絶対方式) 63 INCD ドラムシーケンス(相対方式) 64 TTMR ティーチングタイマ 65 STMR 特殊タイマ 66 ALT 交番出力 67 RAMP 傾斜信号 68 ROTC 近回り制御 FNC50 69 SORT データ整列 FNC59 ∼ FNC30 FNC39 ∼ FNC40 FNC49 ∼ ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 203 便利命令 6.応用命令解説 FNC 60 IST 対象機種 イニシャルステート シリーズ名 INITIAL STATE 16ビット命令 IST (連続実行形) 32ビット命令 7ステップ 対 ワード 要素 K,H KnX KnY KnM 象 要 素 ビット 要素 機能と動作 S・ X Y M D2・ D1・ M8000 RUNモニタ S・ S ファイルレジスタ KnS T C D V,Z 命令使用回数:1回(ただし、インデックス修飾可能) D1・ D2・ :FX0,FX0S …………S20∼S63 FX0N ………………S20∼S127 FX1,FX2,FX2C ……S20∼S899 ただし、 D1・ < D2・ FNC 60 IST I ST S・ D1・ D2・ X020 S 20 S 40 ● ● ● ● ● ● FX0S FX0N FX1 FX2 FX2C ステップラダーにおけるイニシャルステート および特殊補助リレーを自動的に制御す る命令です。 で運転モードの先頭入力を指定します。 X020:各個操作 X021:原点復帰 X022:歩進 X023:一巡運転 FNC60 ― 備考 FX0 X024:連続運転 X025:原復スタート X026:自動スタート X027:ストップ D1・ で自動モードにおける実用ステートの最小番号を指定します。 D2・ で自動モードにおける実用ステートの最大番号を指定します。 ●この命令を駆動すると次の要素が自動的に切換え制御されます。 ただし、駆動入力がOFFさ れると変化しません。 M804 0:移行禁止 M804 1:移行開始 M8042:スタートパルス M804 7:STLモニタ有効 S0:各個操作イニシャルステート S1:原点復帰イニシャルステート S2:自動運転イニシャルステート ●この命令を用いると、 S10∼S19が原点復帰用として使われます。 このため、 これらのステートは 一般のステートとしてはプログラムしないでください。 また、 S0∼S9はイニシャルステートとして扱われますが、 S0∼S2は上記のとおり各個操作用,原 点復帰用,自動運転用として用いられます。 S3∼S9については自由に使うことができます。 ●この命令はステートS0∼S2などの一連のSTL回路よりも先にプログラムする必要があります。 ●上例のX020∼X024は、同時ONしないようロータリスイッチにする必要があります。 ●原復完了(M804 3) が動作していないときに各個(X02 0),原復(X021),自動 (X022, X023, X024)間の切換えを行うと全出力がOFFとなります。 なお、自動運転は原点復帰完了後に再開可能となります。 この命令の導入にあたっては、 4章および次ページ以降の導入事例をご参照ください。 204 便利命令 6.応用命令解説 I ST命令導入事例 《ワーク移送機構の例》 運転モード 右図のようなロボット ハンドの各 個 操 作 用です。 手動 負荷の電源を入/切 する外部回路用の押 しボタンです。 各個操作 : 各負荷を個別の押しボタンで入切りするためのモードです。 原点復帰 : 原復用押しボタンを押したときに、機械を自動的に原点へ復帰させるた めのモードです。 歩進 : スタートボタンを押すたびに1工程ずつ進みます。 一巡運転 : 原点位置でスタートボタンを押すと、 1サイクルの自動運転を行って原点 で停止します。途中でストップボタンを押すとその工程で停止し、スター トボタンを押すとここから継続動作して原点で自動停止します。 連続運転 : 原点位置でスタートボタンを押すと、連続繰返し運転が開始します。ス トップボタンを押すと原点位置まで動作してから停止します。 自動 スタート 移送機構 ロボットハンドによりワークをA点からB点 へ移送する機構です。 FNC60 I ST 左限 X004 X026 ⑧左行 Y004 原点 ④右行 Y003 ①下降 Y000 上限 X002 ③上昇 Y002 下限 X001 クランプ ②クランプ Y001 ON 原点条件は? 上限(X002=ON)、左限(X004= ON)、アンクランプ(Y001=OFF) となります 上限 X002 右限 X003 ⑤下降 Y000 ⑦上昇 Y002 下限 X001 アンクランプ ⑥アンクランプ Y001 OFF 左上を原点とし、下降、 クランプ、上昇、右行、下降、 アンクランプ、上昇、左行の順でワークを左か ら右へ移します。 下降/上昇、左行/右行にはダブルソレノイド(駆動/非駆動の2入力) の電磁 弁、 クランプにはシングルソレノイド(通電中のみ動作) の電磁弁が用いられています。 205 便利命令 6.応用命令解説 モード選択 入力の 割付け I ST命令を用いるためには、 モード入力は次のような連続番号の入力を割付ける必要があります。 連続番号でないときや一部のモードを省略するときは、下図のように補助リレーを用いて配列変 更し、 これをモード指定の先頭入力として用います。 X020:各個操作 X021:原点復帰 X022:歩進 X023:一巡運転 X024:連続運転 X025:原復スタート X026:自動スタート X027:ストップ X020∼X024は同時ONしないようロータ リスイッチ(セレクタスイッチ) を用います。 入力が連続番号でないとき (例) X030: 各個操作 X035: 原点復帰 X033: 歩進 X040: 一巡運転 X032: 連続運転 X034: 原復スタート X026: 自動スタート X041: ストップ X030 X035 X033 X040 X032 X034 X026 X041 M 0 各個操作 M 1 原点復帰 連続/原復モードのみのとき (例) X030: 原点復帰 (例) X030: 各個操作 X031: 連続運転 X031: 連続運転 X032: 自動スタートおよ X032: 自動スタート び原復スタート兼 X033: ストップ 用 X033: ストップ M8000 RUNモニタ X030 M8000 M 2 歩進 M 3 一巡運転 M 4 連続運転 M 5 原復スタート X031 X032 M 6 自動スタート M 7 ストップ M 0 動作しません M 1 原点復帰 FNC 60 RUNモニタ IST 206 M 0 S 20 M8000 M 0 各個操作 M 1 M 2 M 3 M 3 〃 M 4 連続運転 M 5 原復スタート M 6 自動スタート X033 X030 M 2 動作しません M 7 ストップ ●この例ではモード指定先頭入力としてM0を用いています。 M8000 連続/各個モードのみのとき S 29 X031 M8000 X032 X033 M 4 連続運転 M 5 M 6 自動スタート M 7 ストップ 便利命令 6.応用命令解説 I ST命令の ための特殊 補助リレー I ST命令で用いる補助リレーは、命令自身が状況に応じて自動的に制御するものと、運転の準備 や制御目的によってプログラムで制御する必要があるものに区分されています。 I ST命令が自動的に制御するもの 《移行禁止 M8040》 この補助リレーが働くとすべてのステートの移 行が禁止されます。 各個 :常にM804 0が働きます。 原復,一巡 :ストップボタンを押すとスタートボタ ンを押すまで動作保持されます。 歩進 :常にM8 04 0が働きます。 ただしス タートボタンを押したときのみ不 作動となり移行が行われます。 その他 :シーケンサのSTOP→RUN切 換え時にも動作保持し、 スタート ボタンを押すと解除されます。 移行禁止状態時においても、ス テート内の出力はそのまま動作 を継続しています。 《移行開始 M8041》 イニシャルステートS2から次のステートへの移 行条件となる補助リレーです。 各個,原復 :働きません。 歩進,一巡 :スタートボタンを押しているとき のみ動作します。 連 続 :スタートボタンを押すと動作保持 し、 ストップボタンを押すと解除さ れます。 シーケンスプログラムで駆動するもの 《原復完了 M8043》 原復モードにおいて、機械が原点に復帰した ときにユーザ側のプログラムにより、 この特殊補 助リレーを動作させてください。 《原点条件 M8044》 機械の原点条件を検出して、 この特殊補助リ レーを駆動させてください。全モードで有効な 信号となります。 《全出力リセット禁止 M8045》 各個、 原復、 自動モード間の切換えを行うと、 機 械が原点位置でないときに全出力と動作ス テートのリセットが行われます。 しかしM804 5を 駆動しておくと、動作ステートのみリセットされ ます。 《STLモニタ有効 M8047》 M804 7を駆動しておくと、現に動作中のステー ト番号(S0∼S899)が若い番号順に特殊補助 リレーD8 04 0∼D8 04 7に格納されます。 これによ り動作ステート番号を8点までモニタすることが できます。 また、 これらのステートのどれかが動 作していると特殊補助リレーM8046が動作す るようになっています。 FNC60 I ST 《スタートパルス M8042》 スタートボタンを押したときのみ一瞬だけ動作 します。 これらの制御については次ページをご参照ください。 207 便利命令 6.応用命令解説 下記のシーケンス回路の内、 以外は定石回路となります。 部の回路を制御の内容に合わせてプログラムしてください。 シーケンス プログラム の例 ●機械運転中には《自動運転》 モード 内の運転切換えは自由に行えます。 原点状態を検出し、自動運転の移行 開始の条件とします。 (歩進 一巡 連続) ●機械運転中に《各個操作》 《原 X004 X002 Y001 M8044 原点条件 点復帰》 《自動運転》間で切換 左限 上限 アンクランプ えを行ったばあいは、 安全のため全 出力を一旦リセッ ト した後、 切換え M8000 FNC 60 X020 S 20 S 27 イニシャル 後のモードが有効になります。 ステート RUNモニタ IST (M8 04 5駆動時はリセットされません) 《初期回路》 《各個操作》 《自動運転》 (歩進/一巡/連続) 各個モードがないときは プログラム不要です。 X012 クランプ指令 S 0 SET X007 アンクランプ指令 各個用イ ニシャル ステート S 2 クランプ RST X005 上昇指令 Y000 Y001 Y001 Y002 上昇 X010 下降指令 Y002 M8041 M8044 X011 右行指令 X002 Y004 X001 Y003 右行 原復用イニシャルステート 上限 X002 X003 RST Y001 アンクランプ RST Y000 下降解除 RST 上昇 左限 Y004 Y003 S 24 X001 右行解除 SET S 12 原点復帰の動作では必ずステートS 10∼S 19を用い、最終ステートではM8043を駆動 してから自己リセットしてください。 M8043 原復完了 Y003 右行 Y000 下降 T 1 X002 X004 上昇 RST S 26 左行 Y002 下限 T 1 S 12 リセット K 10 右限 S 25 Y002 Y001 クランプ 上限 S 23 M8043 208 T 0 Y001 アン クランプ K 10 Y002 上昇 上限 S 27 S 11 X004 SET S 22 原復スタート X002 下降 下限 T 0 です。ただし自動運転前には、 M8043 (原復完了) を一度SETしておく必要が あります。 S 10 Y000 S 21 《原点復帰》原復モードがないときはプログラム不要 X025 原点条件 Y004 左行 上限 S 1 移行開始 S 20 Y000 下降 X006 左行指令 X002 Y003 自動運転用 イニシャルステート Y004 左行 左限 S 2 RET END 便利命令 6.応用命令解説 前ページの全体のプログラムは次のとおりになります。 初期回路 0 1 2 3 5 6 32 STL S 1 33 LD X 025 34 SET S 10 36 STL S 10 37 RST Y 001 38 RST Y 000 39 OUT Y 002 40 LD X 002 41 SET S 11 43 STL S 11 44 RST Y 003 45 OUT Y 004 46 LD X 004 4 7 SET S 12 49 STL S 12 50 SET M8043 52 LD M8043 53 RST S 12 (RET) 55 STL S 2 56 LD M804 1 57 AND M8044 58 SET S 20 60 STL S 20 61 OUT Y 000 62 LD X 001 63 SET S 21 自動運転 プログラム不要です。 原点復帰 各個操作 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 LD X 004 AND X 002 AN I Y 001 OUT M8044 LD M8000 I ST 60 SP X 020 SP S 20 SP S 27 STL S 0 LD X 012 SET Y 001 LD X 007 RST Y 001 LD X 005 AN I Y 000 OUT Y 002 LD X 010 AN I Y 002 OUT Y 000 LD X 006 AND X 002 AN I Y 003 OUT Y 004 LD X 011 AND X 002 AN I Y 004 OUT Y 003 (RET) 65 STL S 21 66 SET Y 001 67 OUT T 0 SP K 10 70 LD T 0 71 SET S 22 73 STL S 22 74 OUT Y 002 75 LD X 002 76 SET S 23 78 STL S 23 79 OUT Y 003 80 LD X 003 81 SET S 24 83 STL S 24 84 OUT Y 000 85 LD X 001 86 SET S 25 88 STL S 25 89 RST Y 001 90 OUT T 1 SP K 10 93 LD T 1 94 SET S 26 96 STL S 26 97 OUT Y 002 98 LD X 002 99 SET S 27 101 STL S 27 102 OUT Y 004 103 LD X 004 104 OUT S 2 106 RET 107 END FNC60 I ST ●I ST命令は、ステートS0∼S2などの一連のSTL命令よりも先にプログラムする必要があります。 ●STL S1命令は、 S10∼S12に対するSTL命令よりも先にプログラムする必要があります。 同様にSTL S2命令は、 S20∼S27に対するSTL命令よりも先にプログラムする必要があります。 209 便利命令 6.応用命令解説 D FNC 61 SER P DATA SERCH シリーズ名 16ビット命令 SER 9ステップ SER 対 象 要 素 ワード 要素 ビット 要素 K,H n 対象機種 データサーチ KnX KnY KnM D SER (連続実行形) P (パルス実行形) 17ステップ D SER P (パルス実行形) S2・ S1・ KnS T C D n D・ X Y M S X010 ファイルレジスタ V,Z n=1∼256(16ビット命令) 1∼128(32ビット命令) ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 追加命令 FX2C (FX2は、V3.07以上で追加されました) S1・ 機能と動作 32ビット命令 (連続実行形) FNC 61 SER S2・ D100 D 0 D・ n D 10 K 10 同一データ検索、最大値、最小値の 検索を行う命令です。 《検索テーブルの構成とデータの例》 被検索デバイス 被検索データの例 FNC61 SER 比較データ データの位置 D 100 (D 100)=K100 0 D 101 (D 101)=K111 1 D 102 (D 102)=K100 2 D 103 (D 103)=K 98 3 D 104 (D 104)=K123 D 105 (D 105)=K 66 D 106 (D 106)=K100 6 D 107 (D 107)=K 95 7 D 108 (D 108)=K210 8 D 109 (D 109)=K 88 9 D0=K100 S1・ で指定された 先頭デバイス番号 nで指定された被検索データの個数 最大値 同一致 最小値 同一 同一 4 5 最小 同一 最大 S1・ の指定デバイスからの順番 S2・ で指定されたデバイスの内容 《検索結果テーブル》 デバイス番号 内 容 備 考 D 10 3 同一データの個数 D 11 0 同一データの位置(初回) D 12 6 同一データの位置(最終) D 13 5 最小値の最終位置 D 14 8 最大値の最終位置 ●大小比較は代数的に行われます。 (−10<2) ●最小値、最大値が複数あるときは後側の位置 を示します。 D 命令では D・ もダブルワードを用います。 D・ で指定された先頭デバイス番号 連番で5点が占有されます。 ● S1・ を先頭とするn個のデータに対し、 S2・ のデータと同一のデータのものを検索し、 その個 数を D・ に格納します。 ● D・ を先頭とする5点のデバイスには上表のとおり、同一データや最小値、最大値の位置が 格納されます。同一データが不在のときは、上例では(D10) ∼ (D12) =0となります。 210 便利命令 6.応用命令解説 D FNC 62 ABSD シリーズ名 ABSOLUTE DRUM 16ビット命令 ABSD (連続実行形) 17ステップ S1・ ワード 要素 象 要 素 ビット 要素 K,H n X K*X K*Y K*M K*S S2・ C T D ファイルレジスタ V,Z X,Y,M,Sは8の倍数 命令使用回数:1回(ただし、インデックス修飾可能) 番号を指定 Y M S *は16ビット命令時:4 1≦n≦64 32ビット命令時:8 D・ S1・ 機能と動作 D ABSD (連続実行形) 32ビット命令 9ステップ 対 対象機種 ドラムシーケンス絶対方式 X000 C 0 FNC 62 ABSD D300 X001 X001 S2・ C 0 RST C 0 C 0 D・ n M 0 K 4 ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C (FX2:V2.30以下は、 32ビット命令なし) カウンタの現在値に対応して多数の 出力パターンを作る命令です。 ●テーブルの1回転の間で補助リレーM 0∼M 3をON /OFF制御する例に基づいて説明します。 K360 1度1パルスの回転角度信号 ●あらかじめ転送命令を用いてD300∼D307に次のようなデータを書込んでおきます。 立上り点 立下り点 対象出力 D300= 40 D301=140 M 0 D302=100 D303=200 M 1 D304=160 D305= 60 M 2 D306=240 D307=280 M 3 例えば、立上り点データは偶数番号 の要素、立下り点データは奇数番号 の要素に格納しておきます。 FNC62 ABSD ●X000をONするとM0∼M3が次のとおりに変化します。各立上り点・立下り点は、 D300∼D307 のデータの書換えにより個別に変更できます。 40 140 ●n値によって対象とな る出力点数が定まり ます。 ●X0 0 0をOFFしても出 力は変化しません。 M 0 100 200 M 1 60 M 2 160 240 280 M 3 ● 0 180 360 S2・ に高速カウンタを指定することもできます。 ● D ABSD命令では しかしこのばあい、 カウンタ現在値に対し、出力パターンにはスキャンサイクルによる応答遅れ があります。 応答性が必要なばあい、 HSZ命令によるテーブル高速比較機能を用いてください。 211 便利命令 6.応用命令解説 FNC 63 INCD 対象機種 ドラムシーケンス相対方式 シリーズ名 INCREMENT DRUM 16ビット命令 INCD (連続実行形) 32ビット命令 ― 9ステップ S1・ 対 ワード 要素 象 要 素 ビット 要素 K,H n X K4X K4Y K4M K4S X,Y,M,Sは8の倍数 番号を指定 Y M S D・ S2・ C T X000 1≦n≦64 FNC 63 INCD M8013 ファイルレジスタ V,Z 命令使用回数:1回 (ただし、インデックス修飾可能) S1・ 機能と動作 D D300 S2・ C 0 D・ n M 0 K 4 C 0 K9999 ― ― ― ― ● ● フ ラ グ 番 号 備考 FX0 FX0S FX0N FX1 FX2 FX2C 実行完了 M8029 一対のカウンタを用いて多数 の出力パターンを作る命令 です。 1秒クロック タイムチャートに基づいて、 n=4点のM0∼M3を制御する例をあげて説明します。 ●あらかじめ転送命令を用いて S1・ に次のようなデータを書込んでおくものとします。 (D300) =20(D301) =30(D302) =10(D303) =4 0 FNC63 X000 40 30 20 I NCD 20 10 C 0 現在値 C 1 現在値 0 1 M 0 M 1 M 2 M 3 M8029 212 30 完了フラグ 2 3 0 1 0 ●カウンタC0はD300∼D303で 設定された値に達すると自動 的に順次リセットされます。 ●そのリセット回数を工程カウン タC1が計数します。 ●工程カウンタC1の現在値に 応じて、 M0∼M3が順次働き ます。 ●nで指定された最終工程が終 るとフラグM802 9が働き、再度 同様の働きを繰返します。 ●X000をOFFするとC0、 C1は クリアされ、 M0∼M3もOFFし ます。 X00 0を再度ONしたとき は最初から動作します。 便利命令 6.応用命令解説 FNC 64 TTMR 対象機種 ティーチングタイマ シリーズ名 TEACHING TIMER 16ビット命令 TTMR (連続実行形) 32ビット命令 5 ステップ 対 ワード 要素 象 要 素 ビット 要素 機能と動作 K,H n X KnX KnY KnM KnS T C D V,Z ― ― ― ― ● ● ― ファイルレジスタ D・ Y M X010 備考 FX0 FX0S FX0N FX1 FX2 FX2C n=0∼2 S FNC 64 TTMR D・ n D300 K 0 X010 ●押しボタンX010の押し時間をD301で測定し、 これにnで指定された倍率をかけてD3 0 0へ格 納します。 これによりタイマの設定時間を押し ボタンにより調整することができます。 ●押しボタンX0 1 0の押し時間をτ0 (秒) としたと き、 nの値によって実際のD3 00の値は次のとお りになります。 D301 D301 D300 D300 τ0 τ0 押し時間(秒) 押し時間(秒) n K 0 K 1 K 2 D300 τ0 10τ0 100τ0 ●X010がOFFするとD301はリセットされ、 D300 は変化しません。 FNC64 TTMR 機能と 動作例 《10種類のデータレジスタに、 ティーチング時間を書込む》 T 0 D 400 T 1 D 401 T 9 D 409 M8000 RUNモニタ X010 ティーチン グボタン X010 M 0 D400∼D409にはあらかじめ設定値が書込まれ ているものとします。 このタイマは1 0 0msタイマですから、 ティーチング データの1/10時間が実際の動作時間(秒) とな ります。 FNC 19 BIN K1X000 Z X000∼X003に接続した1桁のディジタルスイッ チの入力をBIN変換してZへ転送します。 FNC 64 TTMR D300 K 0 X010の押し時間(秒)がD300へ格納されます。 PLF M 0 FNC 12 MOV ティーチングボタン復帰検出 D300 D400Z ディジタルスイッチで選択されているタイマの設 定用レジスタD4 00Zへティーチング時間D3 00を 転送します。 213 便利命令 6.応用命令解説 FNC 65 STMR 特殊タイマ SPECIAL TIMER 16ビット命令 STMR 対象機種 シリーズ名 (連続実行形) 32ビット命令 7ステップ 対 ワード 要素 象 要 素 ビット 要素 ― S・ K,H m X KnX Y KnY KnM M KnS T C D V,Z ファイルレジスタ S・ : T0∼T199(100msタイマ) m : 1∼32,767 S ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C D・ オフディレイタイマ, ワンショットタイマ, フリッカタイマを手軽に作るための命令です。 機能と動作 X000 FNC 65 STMR S・ m D・ T 10 K100 M 0 X000 ●mで指定された値が S・ で指定され たタイマの設定値となります。 この例で は10秒になります。 ●M0はオフディレイタイマです。 M 0 10秒 10秒 M 1 10秒 10秒 ●M1は入力ON→OFF後のワンショットタ イマです。 M 2 10秒 FNC65 ●M2、 M3はフリッカ用であり、下図のとお り接続します。 M 3 STMR X000 M 3 X000 M 2 M 1 214 FNC 65 STMR T 10 K100 M 0 ●M3を左図のとおりに接続するとM2, M1がフリッカ出力となります。 ●X000をOFFすると設定時間後、 M0, M1, M3はOFFになり、 T10もリセットさ れます。 ●ここで用いられたタイマは他の一般の 回路では重複使用しないでください。 便利命令 6.応用命令解説 FNC 66 ALT P ALTERNATE 対 対象機種 交番出力 シリーズ名 16ビット命令 ALT (連続実行形) 3ステップ ALT P (パルス実行形) ワード 要素 K,H KnX ビット 要素 X Y KnY KnM M S KnS T C 象 要 素 D・ D・ 機能と動作 X000 32ビット命令 D V,Z ― ファイルレジスタ 備考 FX0 ● P 命令なし FX 0S ● P 命令なし FX0N ● P 命令なし FX1 ― ※ FX2 ● FX2C ● ※次ページに代用 シーケンス回路 があります。 FNC 66 ALT P M 0 ●駆動入力X000がOFF→ONに変化するたび にM0が反転します。 連続実行形命令を用いると各演算周期ごとに 反転動作をしますからご注意ください。 FNC 66 ALT P M 1 ●上図のM0を入力としてM1をALT P 命令で 駆動すると多段の分周出力が得られます。 X000 M 0 M 0 X000 FNC66 M 0 M 1 反復動作 の応用 ALT 《1入力によるスタート/ストップ》 X000 M 0 M 0 FNC 66 ALT P ●押しボタンX000を押すとスタート出力Y001が 動作します。 ●押しボタンX0 0 0を再度押すとストップ出力 Y000が動作します。 M 0 Y000 ストップ Y001 スタート 《フリッカ(点滅)動作》 X006 T 2 X006 T 2 X006 T 2 K 50 FNC 66 ALT Y007 ●入力X006をONするとタイマT2の接点は5秒 おきに一瞬だけ動作します。 ●T2の接点が、 ONするたびに出力Y0 0 7は交互 にON/OFFします。 5秒 5秒 T 2 Y007 215 便利命令 6.応用命令解説 補助リレー を用いた交 番出力動作 下記のシーケンス回路によって交番 FX1シーケンサのように交番出力命令を持たない機種では、 出力動作が行えます。 X000 M 1 X000 216 M 0 X000をONすると、 1演算周期だけM0がONするパルス出力 回路です。 M 1 M 0 Y000 M 0 Y000 Y000 M0の初回のON時にY00 0が自己保持動作し、 2度目のON時 に自己保持を解除しています。 便利命令 6.応用命令解説 FNC 67 RAMP 対象機種 傾斜信号 シリーズ名 RAMP 16ビット命令 RAMP (連続実行形) 32ビット命令 ― 9ステップ 対 ワード 要素 象 要 素 K,H n KnX KnY KnM S1・ S2・ KnS T D・ C D ファイルレジスタ V,Z n=1∼32,767 ビット 要素 X Y M フ ラ グ 番 号 S S1・ 機能と動作 X000 ● ● ● ― ● ● FNC 67 RAMP D 1 S2・ D 2 D・ n D 3 K1000 備考 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C 実行完了 M8029 ●あらかじめD1, D2に所定の初期値と目標値を書込んでおきX000をONすると、 D3の内容は D1の値からD2の値まで徐々に変化します。 その移行時間はnスキャンとなります。 (D 2) (D 1) (D 3) D 4にはスキャン回数が 格納されます。 (D 2) (D 1) (D 3) nスキャン (D 1)<(D 2)のとき nスキャン (D 1)>(D 2)のとき FNC67 ●D803 9に所定のスキャンタイム (実際のスキャンタイムよりも少し長い目の値とします。) を書 込みM8 0 3 9を駆動するとシーケンサは、 コンスタントスキャンモードになります。 この値が例え ば20msのばあい上記の例では20秒で(D3) の値は(D1) から (D2)へ変化します。 RAMP ●動作の途中でX000をOFFすると実行中断状態となり、再度X000をONするとD4はクリアされ D1から動作を再開します。 ●移行完了後にフラグM8029が動作し、 D3の値はD1の値に復帰します。 (下記詳細) ●この命令とアナログ出力を組合わせてクッションスタート/ストップ指令を出力することができ ます。 ●X0 00がONのままでRUN開始するときはD4はあらかじめクリアしておいてください。 (D4がキー プ領域のばあい) 完了フラグ の動作 モードフラグM8026の動作により、 D3の内容は次のとおりとなります。 このフラグはFX2CおよびV1. 20以上のFX2で有効であり、 V1. 11以下のFX2はM802 6=OFFの ばあいの特性と同じです。 また、 FX0, FX0S, FX0Nは、 M8026がONのばあいと同じ動作です。 M8026 =ON 駆動命令 X000 (D 2) (D 1) M8029 M8026 =OFF 駆動命令 X000 (D 2) (D 3) (D 1) (D 3) M8029 217 便利命令 6.応用命令解説 FNC 68 ROTC 対象機種 近回り制御 シリーズ名 ROTARY TABLE CONTROL 16ビット命令 ROTC (連続実行形) 32ビット命令 対 ワード 要素 K,H 象 要 素 KnX KnY KnM m1,m2 ビット 要素 X Y KnS T S・ D C ― ― ― ― ● ● ― 9ステップ ファイルレジスタ V,Z 命令使用回数:1回 (ただし、インデックス修飾可能) M 備考 FX0 FX0S FX0N FX1 FX2 FX2C S D・ 機能と動作 X010 FNC 68 ROTC S・ m1 m2 D・ D200 K 10 K 2 M 0 m1:分割数 2∼32、767 m2:低速区間数 0∼32、767 m1≧m2 下図のようにm1=10分割されたロータリテーブル上の品物を出し入れするために、要求出し入 れ窓口に応じてテーブルを近回り回転させるのに適した命令です。 0番窓口 品物 0点検出 X002 8 9 7 X000 6 0 FNC68 検出 スイッチ ROTC 正転 5 1 1番窓口 X001 2 4 3 ロータリ テーブル この命令を使う上で必要となる条件は次の例に示すとおりです。 動作条件 回 転 検 出 信 号 X000 X001 X002 218 テーブルの正転/逆転を検出するための2相スイッチと品物0番が0番窓口 に来たときに動作するスイッチ X002を設けてください。 A相 (X000) M 0 M 1 X000∼X002でM 0∼M 2を 駆動しておきます。 (XやMの先頭番号は自由です) B相 (X001) 正転時アップカウント信号 M 2 計 数 用レジ スタの 指 定 例えばD200を指定すると、 これは0番窓口に何番の品物が来ているかを計 数するカウンタとして用いられます。 分 割 数 と 低 速 期 間 テーブルの分割数m1 (上図では10)や低速運転区間m2 (例えば2分割分) などを指定する必要があります。 便利命令 6.応用命令解説 呼出し条件の 指定レジスタ D200につづくD201には呼出したい窓口番号を設定します。 また、 これにつ づくD202には呼出し品物番号を設定します。 以上の条件を指定すると命令のデスティネーションで指定した出力に正/逆転、高速/低速/ 停止などの出力が得られます。 X010 FNC 68 ROTC S・ m1 m2 D・ D200 K 10 K 2 M 0 m1:分割数 2∼32、767 m2:低速区間数 0∼32、767 m1≧m2 D200: 計数用レジスタとして用いられます。 D201: 呼出し窓口番号の設定 転送命令によりあらかじめ設定しておきます。 D202: 呼出し品物番号の設定 M 0:A相信号 あらかじめ入力Xから駆動する回路を構成しておきます。 M 1:B相信号 M 2:0点検出信号 M 3: 高速正転 M 4: 低速正転 X010をONしてこの命令を駆動すると自動的にM3∼M7の結果 M 5: 停止 が得られます。 M 6: 低速逆転 X010をOFFするとM3∼M7はOFFになります。 M 7: 高速逆転 ) ) ) ●X010がONで、 0点検出信号(M2)がONしたときに計数用レジスタD200の内容は0にクリアさ れます。 あらかじめこのクリア操作を行ってから運転開始する必要があります。 なお、回転検出信号が、例えば品物1分割区間の間で10回動作するようなばあい、分割数設 定、呼出し窓口の番号設定、品物番号の設定はすべて10倍の値にしてください。 これにより低速区間の設定値は、分割量の中間値などに設定することができます。 《例》 10分割で回転検出信号が100パルス/回転のときに、前ページの例ではm1=100、品物番号 や呼出し窓口番号は0, 10, 20, 30……90とします。 低速区間として品物ピッチの1. 5倍がほしいときにはm2=15とします。 FNC68 ROTC 219 便利命令 6.応用命令解説 FNC 69 SORT 対象機種 データ整列 シリーズ名 SORT 16ビット命令 SORT (連続実行形) 32ビット命令 対 ワード 要素 K,H 象 要 素 ビット 要素 KnX KnY n,m1,m2 KnM S T KnS D C D n X Y M ファイルレジスタ V,Z 命令使用回数:1回 S ― ― ― ― ● ● ― 11ステップ m1:1∼32 m2:1∼6 n :1∼m2 フ ラ グ 番 号 (FX2は、V3.07以上で追加されました) X010 機能と動作 FNC 69 SORT S m1 m2 D n D100 K 5 K 4 D200 D 0 備考 FX0 FX0S FX0N FX1 FX2 追加命令 FX2C 実行完了 M8029 X010=ONでデータ整列を開始し、実行完了フラグM8029=ONで実行停止します。動作中 はオペランドやデータの内容を変化させないでください。再実行時は一度X010をOFFにして ください。 《テーブル構成とデータの例》 群数m2個 列番 行番 1 SORT データ数m1個 FNC69 2 3 4 5 1 2 3 4 マンナンバー 身 長 体 重 年 令 D 100 D 105 D 110 D 115 1 150 45 20 D 101 D 106 D 111 D 116 2 180 50 40 D 102 D 107 D 112 D 117 3 160 70 30 D 103 D 108 D 113 D 118 4 100 20 8 D 104 D 109 D 114 D 119 5 150 50 45 《D 0=K2で命令実行したとき》 列番 行番 1 2 3 4 5 ●テーブルの先頭データレジスタは S により 指定されます。 ●1列目にはマンナンバーなどの通し番号を入 れておくと便利です。 (その内容で元の行番が 判断できます。) 《D 0=K3で命令実行したとき》 1 2 3 4 マンナンバー 身 長 体 重 年 令 D 200 D 205 D 210 D 215 4 100 20 8 D 201 D 206 D 211 D 216 1 150 45 20 D 202 D 207 D 212 D 217 5 150 50 45 D 203 D 208 D 213 D 218 3 160 70 30 D 204 D 209 D 214 D 219 2 180 50 40 列番 行番 1 2 3 4 5 1 2 3 4 マンナンバー 身 長 体 重 年 令 D 200 D 205 D 210 D 215 4 100 20 8 D 201 D 206 D 211 D 216 1 150 45 20 D 202 D 207 D 212 D 217 5 180 50 40 D 203 D 208 D 213 D 218 5 150 50 45 D 204 D 209 D 214 D 219 3 160 70 30 ●演算結果のデータは D で指定されたデバイスを先頭にしてm1×m2個のデータレジスタを 占有します。 S と D を同一デバイスにするばあいは実行完了まで S の内容を変化 させないよう、特に注意してください。 ●この命令はm1スキャンで実行完了となり、 データ整列完了によりフラグM8029が動作します。 220 ∼ 外部機器・ I/O 6.応用命令解説 6−10. FNC70∼FNC79 「外部機器・ I/O」 FNC00 《命令名称》 71 HKY 16キー入力 72 DSW ディジタルスイッチ 73 SEGD 7SEGデコーダ 74 SEGL 7SEG時分割表示 75 ARWS アロースイッチ 76 ASC アスキー変換 77 PR アスキーコードプリント 78 FROM BFM読出し 79 TO BFM書込み FNC29 FNC30 FNC40 FNC49 FNC50 FNC59 ∼ テンキー入力 ∼ TKY FNC20 FNC39 ∼ 70 FNC19 ∼ 命令記号 FNC10 ∼ ∼ FNC.No. FNC09 ∼ ∼ FNC70∼FNC79には、主にシーケンサの入出力を使って外部機器と データの授受を行う命令が用意されています。 これらの命令は、 最小限のシーケンスプログラムと外部配線によって複雑な 制御が簡単に行えることから、 前述の便利命令と似た特徴を持っています。 また、特殊ユニットや特殊ブロックを制御するためにかかせないFROM, TO命令もこの中に含まれています。 FNC60 FNC69 ∼ FNC70 FNC79 FNC80 FNC89 FNC90 FNC99 221 外部機器・ I/O 6.応用命令解説 D FNC 70 TKY 対象機種 テンキー入力 シリーズ名 TEN KEY TKY 16ビット命令 (連続実行形) 32ビット命令 7ステップ 対 ワード 要素 D TKY (連続実行形) 13ステップ D1・ K,H KnX KnY KnM KnS T C D V,Z ファイルレジスタ 象 要 素 ビット 要素 機能と動作 S・ X Y M 命令使用回数:1回 (ただし、インデックス修飾可能) S ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C D2・ X030 FNC 70 TKY S・ D1・ D2・ X000 D 0 M 10 テンキーにより数値を書込むための命令です。 ●入力X000を先頭とし てテンキー0∼9を接 続した例を示します。 X000 ④ X001 X002 FNC70 ② ① X003 ③ TKY M 10 M 11 M 12 M 13 キーセンス出力 M 20 222 ① ② ③ ④ ●テンキーを①②③④の順で押すとD0の内容 は2, 130となり、 9, 999以上の数値は上位桁か ら順次オーバフローします。 (実際のD0の内容 はバイナリです。) ● D TKY命令のばあいは、 D1, D0が組合わ せて用いられ、 99, 99 9, 999以上の桁はオーバ フローします。 ●X002を押すと他のキーを押すまでM12が働き ます。 その他のキーも同様です。 ●このようにして、入力X000∼X011の動作に応 じてM10∼M19が動作します。 ●どれかのキーが押されると、押している間だけ キーセンス出力M20が働きます。 複数キーを押したときは先押しキーのみ有効 です。 ●駆動入力X030をOFFしてもD0の内容は変化し ませんが、 M10∼M20はすべてOFFになります。 外部機器・ I/O 6.応用命令解説 D FNC 71 HKY 対象機種 16キー入力 シリーズ名 HEXA DECIMAL KEY 16ビット命令 HKY (連続実行形) 32ビット命令 9ステップ 対 ワード 要素 素 ビット 要素 機能と動作 (連続実行形) ― ― ― ― ● ● 17ステップ D2・ K,H KnX KnY KnM KnS T 象 要 D HKY Y S・ D1・ M X004 D ファイルレジスタ V,Z 命令使用回数:1回 (ただし、インデックス修飾可能) D3・ X C S FNC 71 HKY S・ D1・ D2・ D3・ X000 Y000 D 0 M 0 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C フ ラ グ 番 号 (FX2 V2.30以下には、拡張機能なし) 備考 実行完了 M8029 16キーにより数値や機能条件入力を 書込むための命令です。 《数字キー》 9 8 7 6 5 4 BCD オーバフロー 103 102 101 D 0(BIN) 3 2 1 各桁 100 HKY 0 ●数字キーを押すたびに9, 999までD0にBINで 格納され、 これ以上はオーバフローします。 ● D HKY命令では、 D1, D0に対し99, 999, 999 まで有効です。 ●複数キーを押すと先押キーのみが有効です。 ●Y000∼Y003の一巡の動作後、 M8029 (実行 完了) フラグが動作します。 《ファンクションキー》 F E D C B A M 5 M 4 M 3 M 2 M 1 M 0 ●Aを押せばM0が動作保持、 Dを押せばM0が OFFしてM3が動作保持します。 ●複数キー操作時は先押しキーが有効です。 FNC71 HKY 《キーセンス出力》 ●A∼Fキーのどれかを押すと、 これを押してい る間だけM6が働きます。 ●0∼9キーのどれかを押すと、 これを押している 間だけM7が働きます。 ●駆動入力X004をOFFするとD0は変化しませ んがM0∼M7はOFFになります。 拡張機能 注意事項 あらかじめM8167をONしておくことにより0∼Fまでの16進データをそのまま D2・ に書込みます。 例:キー入力“123BF” のばあい、 D2・ に対して“123BFH”がBINで格納されます。 この命令はシーケンサのスキャンタイムに同期して実行されます。一連のキースキャン完了には 8スキャンを要します。 キー入力のフィルタ遅れによる取込ミスを防止するため、 コンスタントスキャ ンモードやタイマ割込み処理をご使用ください。 223 外部機器・ I/O 6.応用命令解説 FNC 72 DSW 対象機種 ディジタルスイッチ シリーズ名 DIGITAL SWITCH 16ビット命令 DSW (連続実行形) 32ビット命令 ― 9ステップ 対 ワード 要素 象 要 素 ビット 要素 機能と動作 D2・ K,H n KnX KnY KnM KnS Y M S D ファイルレジスタ V,Z n=1または2 D1・ X000 C 命令使用回数:2回(ただし、インデックス修飾可能) (FX2:V2.30以下は、使用回数1回です) S・ X T FNC 72 DSW S・ D1・ D2・ n X010 Y010 D 0 K 1 ― ― ― ― ● ● フ ラ グ 番 号 備考 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C 実行完了 M8029 4桁1組(n=1) または2組(n=2)の ディジタルスイッチの設定値を読込 む命令です。 FNC72 DSW 《第一組入力》 X010∼X013に接続したBCD4桁のディジタルスイッチはY010∼Y013によって順 次読込まれ、 D0へBIN値として格納されます。 《第二組入力》 X014∼X01 7に接続した4桁のディジタルスイッチもY010∼Y013によって順次読 込まれ、 D1へ格納されます。 (n=2のときのみ有効) X000 Y010 Y011 繰返し動作 0.1秒 0.1秒 0.1秒 Y012 Y013 M8029 完了フラグ 224 0.1秒 中断 0.1秒 0.1秒 ●X000をONしている間Y010∼Y013 が順次動作し、 1サイクル動作後に 実行完了フラグM8029が動作しま す。 ●DSWの値を連続的に取込むために は、必ずトランジスタ出力のシーケン サを用いてください。 なお、 「DSW読 込み入力」 を設けることによって、 リ レー出力のシーケンサでも用いるこ とができるようになります。詳細は、次 ページをご参照ください。 外部機器・ I/O 6.応用命令解説 リレー出力タ イプシーケン サでの利用 X000 SET M 0 FNC 72 DSW M8029 RST M 0 X010 Y010 D 0 K 1 X000がONしている間は、 FNC72は動作しています。 X000をOFFすると、 FNC72 が実行完了するまでM0が 動作しています。 M 0 実行完了 X000が押しボタン入力であれば、押しボタンを押したときのみFNC72が一連の動作を行います。 したがって、 この命令のばあいはY01 0∼Y013がリレー出力であっても寿命の心配がありません。 FNC72 DSW 225 外部機器・ I/O 6.応用命令解説 FNC 73 SEGD P SEVEN SEGMENT DECODER 対 ワード 要素 シリーズ名 16ビット命令 SEGD (連続実行形) 5ステップ SEGD P (パルス実行形) 素 32ビット命令 ― S・ K,H KnX KnY KnM KnS 象 要 対象機種 7 SEG デコーダ T C D ファイルレジスタ V,Z D・ ビット 要素 機能と動作 X Y M X000 ― ― ― ― FX0 ● ● FX2 備考 FX0S FX0N FX1 FX2C S FNC 73 SEGD S・ D・ D 0 K2Y000 S・ の下位4ビットで指定された0∼F (16進数) のデータを7セグメント表示用データにデコードし て D・ に格納します。 D・ の上位8ビットは変 化しません。 《7セグメントデコード表》 ソース FNC73 SEGD 7セグメントの構成 デスティネーション 16進数 ビットパターン B7 B6 B5 B4 B3 B2 B1 B0 0 0000 0 0 1 1 1 1 1 1 1 0001 0 0 0 0 0 1 1 0 2 0010 0 1 0 1 1 0 1 1 3 0011 0 1 0 0 1 1 1 1 4 0100 0 1 1 0 0 1 1 0 5 0101 0 1 1 0 1 1 0 1 6 0110 0 1 1 1 1 1 0 1 7 0111 0 0 1 0 0 1 1 1 8 1000 0 1 1 1 1 1 1 1 9 1001 0 1 1 0 1 1 1 1 A 1010 0 1 1 1 0 1 1 1 B 1011 0 1 1 1 1 1 0 0 C 1100 0 0 1 1 1 0 0 1 D 1101 0 1 0 1 1 1 1 0 E 1110 0 1 1 1 1 0 0 1 F 1111 0 1 1 1 0 0 0 1 表示データ ビットデバイスの先頭(例ではY000) または { ワードデバイスの最下位ビットをB0としています。 226 外部機器・ I/O 6.応用命令解説 FNC 74 SEGL 対象機種 7 SEG 時分割表示 シリーズ名 SEVEN SEGMENT WITH LATCH 16ビット命令 SEGL (連続実行形) 32ビット命令 7ステップ 対 ワード 要素 象 要 素 ビット 要素 機能と動作 ― S・ K,H n KnX X Y KnY M KnM S T C D V,Z FNC 74 SEGL ファイルレジスタ 命令使用回数:2回 (ただし、インデックス修飾可能) (FX2 V2.30以下は、使用回数1回です) n=0∼7 D・ X000 KnS S・ D・ n D 0 Y000 K 0 ― ― ― ― ● ● フ ラ グ 番 号 備考 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C 実行完了 M8029 4桁1組または2組のラッチ付7セグメントを制 御する命令です。 (nは次ページ参照) FNC74 《4桁一組のとき》 n=0∼3 ●D0 (バイナリですがBCD換算で0∼9, 999 の範囲が有効)のBCD換算各桁を順次 (Y000∼Y003) に出力します。 ●ストローブ信号 (Y0 0 4∼Y0 0 7) により順次4桁 第1組のラッチ付7セグメントでラッチします。 《4桁二組のとき》 n=4∼7 ●同様にD0は (Y0 00∼Y00 3) へ、 D1は (Y0 10∼ Y013)へ出力されます。 D1、 D0はそれぞれBCD換算で0∼9, 999が有 効です。 ●ストローブ信号は各組ともに (Y0 0 4∼Y0 0 7) を用います。 SEGL ●この命令では4桁(1組または2組) の表示を行うために演算周期の12倍の時間を必要とし、 4桁 分の出力を終えた後、完了フラグM8029が動作します。 ●この命令の駆動入力がONのときは繰返し動作しますが、一連の動作の途中で駆動入力を OFFすると動作を中断し、再駆動は最初から動作を開始します。 注意事項 ●この命令はシーケンサのスキャンタイム (演算周期) に同期して実行されます。一連の表示を行 うためにはシーケンサのスキャンタイムは10ms以上が必要です。 10ms未満のばあいには、 コンスタントスキャンモードを用いて、 10ms以上のスキャンタイムで 運転してください。 ●本シーケンサのトランジスタ出力のON電圧は、約1. 5Vとなっております。 7セグメントはこれに 合ったものをご使用ください。 227 外部機器・ I/O 6.応用命令解説 パラメータ nの選択 パラメータnは7セグメントのデータ入力やストローブ信号の正負の論理や4桁1組の制御か2組の 制御かに応じて選択される番号です。 《シーケンサの論理》 PNPトランジスタ出力タイプでは内部論理が 1のときに出力はHIGHレベルになります。 これを 正論理 といいます。 NPNトランジスタ出力タイプでは内部論理が 1のときに出力はLOWレベルになります。 これを 負論理 といいます。 《7セグメント表示器の論理》 区 分 データ入力 正論理とは 負論理とは HIGHレベルでBCDデータとなるもの LOWレベルでBCDデータとなるもの ストローブ信号 HIGHレベルでラッチされたデータが保持されるもの LOWレベルでラッチされたデータが保持されるもの 《パラメータnの選択》 シーケンサ側の論理の正負と7セグメント側の論理の正負が一致しているかいないかに応じて 次のように選択します。 ●4桁1組のとき データ入力 一 致 不一致 ●4桁2組のとき ストローブ信号 n 一 致 0 不一致 1 一 致 2 不一致 3 データ入力 一 致 不一致 ストローブ信号 n 一 致 4 不一致 5 一 致 6 不一致 7 《例》 シーケンサ=負論理、表示器のデータ入力=負論理、表示器のストローブ信号=正論理のとき、 4桁1組ならばn=1、 4桁2組ならばn=5となります。 228 外部機器・ I/O 6.応用命令解説 FNC 75 ARWS 対象機種 アロースイッチ シリーズ名 ARROW SWITCH 16ビット命令 ARWS (連続実行形) 32ビット命令 対 ワード 要素 象 要 素 ビット 要素 機能と動作 K,H n KnX KnY KnM T C D ファイルレジスタ V,Z D1・ S・ X KnS ― ― ― ― ● ● ― 9ステップ Y M S D2・ X000 FNC 75 ARWS 備考 FX0 FX0S FX0N FX1 FX2 FX2C 命令使用回数:1回 (ただし、インデックス修飾可能) n=0∼3 S・ D1・ D2・ n X010 D 0 Y000 K 0 桁移動と各桁数値増減用の矢印ス イッチによりデータを入力する命令で す。 X011 X012 桁上げ X013 インクリメント 桁下げ X010 デクリメント 各桁の選択と選択された桁の数値の増減を行 うためのアロースイッチ (矢印スイッチ) です。 設定中の数値を目視するためのラッチ付7セ グメント表示器です。 ●D0には16ビットバイナリ (BCD換算0∼9, 999が有効) のデータが格納されますが便宜上以下 の説明ではBCD換算で表現します。 ●駆動入力X000をONすると桁指定は103桁となっています。桁下げ入力を押すたびに桁指定 は103→102→101→100→103のように変化します。 また桁上げ入力を押すたびに103→100→101→102→103のように桁指定が変化します。 指定桁 はストローブ信号(Y004∼Y007) によるLEDで表示することができます。 ●指定された桁に対しインクリメント入力を押すたびにD0の内容が0→1→2→…→8→9→0→1 のように変化します。 デクリメントキーのばあいは0→9→8→7…1→0→9のように変化します。 その内容は7セグメン ト表示器で表示することができます。 以上のように、表示器を見ながらD0に目的とする数値を書込むのがこの命令です。 注意事項 FNC75 ARWS ●パラメータnは前ページの表によります。 ●シーケンサの出力は、 トランジスタ出力タイプを用いる必要があります。 ●この命令は、 シーケンサのスキャンタイム (演算時間) に同期して実行されます。 スキャンタイム が短いときには、 コンスタントスキャンモードやタイマ割込みを用いて定時間隔で運転して ください。 229 外部機器・ I/O 6.応用命令解説 《タイマの設定変更と現在値表示の例》 プログラム例 ●3桁のディジタルスイッチでタイマ番号を 指定します。 操 作 ●読出し/書込みキーを押すたびに読出し、書込みLEDが切換わって点灯。 ●読出しのときはディジタルスイッチでタイマ番号を設定してからX003を押します。 ●書込みのときはアロースイッチで7セグメントを見ながら数値設定しX003を押します。 Y014 X003 T 0 D300 読出 設定 T 1 D301 実用 タイマ回路 T 99 D399 X000 X001 X002 M8000 M 0 デクリメント X004 M100 読出 Y015 M 1 インクリメント M 2 桁下げ M 3 桁上げ Y015 X003 書込 設定 FNC 66 読出/書込 ALT P M100 Y014 書込 RUNモニタ 230 ●アロースイッチで定数設定を行います。 M100 Y014 読出し表示 Y015 書込み表示 FNC 72 X010 Y010 Z DSW ディジタルスイッチ→Z FNC 74 T 0Z Y000 K 1 SEGL T 0Z→7 セグメント FNC 12 D300Z MOV P K 1 4桁1組 4桁1組 負論理 D511 FNC 75 M 0 D511 Y000 K 1 ARWS (M 0∼M 3)→(D511)→ (Y000∼Y007)→7セグメント 4桁1組 FNC 12 D511 D300Z MOV P 外部機器・ I/O 6.応用命令解説 FNC 76 ASC 対象機種 アスキー変換 シリーズ名 ASCII CODE 16ビット命令 ASC (連続実行形) 32ビット命令 ― 11ステップ 対 ワード 要素 K,H KnX KnY KnM KnS T 象 要 素 C D ファイルレジスタ V,Z D・ ビット 要素 S X Y M S ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C :パソコン,A7PHP/HGP,A6GPP/PHP から 入力された8文字の英数字 (FX2 V2.30以下には、拡張機能なし) 機能と動作 X000 100 101 112 FNC 76 ASC LD ASC S D・ A B C D E F G H D300 X000 ABCDEFGH D300 ●この命令はエラーメッセージなどを外部表 示器に選択表示するのに適しています。 拡張機能 (FX2, FX2C) A∼Hをアスキー変換してD3 00∼ D303へ転送します。 上位8ビット 下位8ビット D300 42 (B) 41 (A) D301 44 (D) 43 (C) D302 46 (F) 45 (E) D303 48 (H) 47 (G) 上位8ビット 下位8ビット 00 41 A 00 42 B 00 43 C D303 00 44 D D304 00 45 E D305 00 46 F D306 00 47 G D307 00 48 H ●M8161をONさせてからこの命令を実行すると D300 D・ へは下位8ビットのみへの転送となり、 転送 文字数(8文字) と同じ数のデバイスを占有します。 D301 D302 このばあい、上位8ビットは0となります。 FNC76 ASC 231 外部機器・ I/O 6.応用命令解説 FNC 77 PR 対象機種 アスキーコードプリント シリーズ名 PRINT 16ビット命令 PR (連続実行形) 32ビット命令 5ステップ 対 ワード 要素 ― S・ K,H KnX KnY KnM KnS T C D ファイルレジスタ V,Z 象 要 素 ビット 要素 機能と動作 X Y M 命令使用回数:2回 (ただし、インデックス修飾可能) S FX0 FX0S FX0N FX1 FX2 バージョンによる 機能差あり FX2C (FX2 V2.30以下は、使用回数1回です) D・ X000 ― ― ― ― ● ● 備考 FNC 77 PR S・ D・ D300 Y000 アスキーデータをYへ出力します。 ●アスキーデータが前ページのとおりD300∼D303に格納されているとしますと送信の順序はA を先頭にして最後にHが送信されます。 ●送信出力はY000 (下位ビット) ∼Y007 (上位ビット) であり、 その他ストローブ信号Y010、実行 中フラグY011が動作します。 X000 駆動入力 Y000∼Y007 データ A T0 B T0 C D H T0:スキャンタイム(ms) T0 Y010 ストローブ FNC77 Y011 実行中フラグ PR ●駆動入力X000が、命令の実行中にOFFされると転送は中断されます。再度X000がONすると 最初から動作を開始します。 注意事項 232 ●この命令はスキャンタイム (上図T0) に同期して実行されます。 スキャンタイムが短いばあいには、 コンスタントスキャンモード、 長すぎるばあいにはタイマ割込みを用いて駆動することもできます。 ●シーケンサはトランジスタ出力タイプを用いる必要があります。 外部機器・ I/O 6.応用命令解説 1 6バイト シリアル出力 FNC77 (PR) は、 8ビットパラレルデータを順次シリアル出力するための命令であり、特殊補助リ レーM8027=OFFのときは8バイトシリアル出力(全バージョン)、 M8027=ONのときは、 1∼16バ イトシリアル出力(FX2CおよびFX2のV1. 20以上のもの) となっています。 ここでは、 A6FD形外部表示ユニットを用いて、 16文字(1字/1バイト)以下の表示を行う例につ いて説明します。 表示データは、例えばD300∼D307に16進コードで格納されているものとします。 《PR命令の動作》 M8027=ONのとき X000=OFF→ON変化時に動作開始します。 駆動入力 X000 データ Y007∼Y000 先頭文字 T T T 最終文字 T:演算周期または 割込み時間 FNC77 ストローブ Y010 PR 実行中フラグ Y011 実行完了フラグ M8029 データの中に、 00H(NUL)があるとここで実行完了し、残りのデータは出力されません。 ●駆動入力X000が、連続ONであっても一巡の出力が終わると実行完了します。 ただし、 M8029はX000をOFFしたときまで動作しません。 233 外部機器・ I/O 6.応用命令解説 D FNC 78 FROM P FROM 対 ワード 要素 素 ビット 要素 シリーズ名 FROM D FROM (連続実行形) 9ステップ FROM P (パルス実行形) 17ステップ D FROM P (パルス実行形) 16ビット命令 32ビット命令 (連続実行形) D・ K,H 象 要 対象機種 BFM読出し X KnX KnY m1,m2,n Y M X000 機能と動作 KnM KnS T C D ファイルレジスタ V,Z m1=0∼7:特殊ユニット,特殊ブロック№ m2=0∼32,766*1:バッファメモリ(BFM)番号 n =1∼32,767*2:転送点数 *1:FXON,FX2 V2.30以下は、0∼31 *2:FXON,FX2 V2.30以下は、1∼32( D 命令時、1∼16) S FNC 78 FROM m1 m2 D・ n K 1 K 29 K 4M 0 K 1 ユニット BFM # № 転送元 ― ― ● ― ● ● 備考 FX0 FX0S FX0N P 命令なし FX1 FX2 追加命令 FX2C FX2は、V2.10以上で 追加されました。 FROM命令は、 特殊増設機器のバッ ファメモリ (BFM) の内容をシーケン サに読出すための命令です。 転送先 転送点数 ●特殊ユニット (ブロック)№1のバッファメモリ (BFM) #29から、 シーケンサのK4M0へ16ビット データを読出します。 ●X000=ONで読出しが実行されます。 X000=OFFのときは転送は実行されず、転送先のデー タは変化しません。パルス命令実行後も同様です。 D FNC 79 TO P TO FNC78 FNC79 対 ワード 要素 素 ビット 要素 機能と動作 シリーズ名 16ビット命令 TO 9ステップ TO D TO P (パルス実行形) 17ステップ D TO 32ビット命令 (連続実行形) (連続実行形) P (パルス実行形) S・ K,H 象 FROM 要 TO 対象機種 BFM書込み X KnX KnY m1,m2,n Y X000 M KnM S FNC 79 D TO KnS T C D ファイルレジスタ V,Z m1=0∼7:特殊ユニット,特殊ブロック№ m2=0∼32,766*1:バッファメモリ(BFM)番号 n =1∼32,767*2:転送点数 *1:FXON,FX2 V2.30以下は、0∼31 *2:FXON,FX2 V2.30以下は、1∼32( D 命令時、1∼16) m1 m2 S・ n K 1 K 12 D 0 K 1 ユニット BFM # № 転送元 ― ― ● ― ● ● 備考 FX0 FX0S FX0N P 命令なし FX1 FX2 追加命令 FX2C FX2は、V2.10以上で 追加されました。 T0命令は、特殊増設機器のバッファ メモリ (BFM) に対してシーケンサか らデータを書込むための命令です。 転送先 転送点数 ●特殊ユニット (ブロック) No. 1のバッファメモリ (BFM) #13, #12に対しシーケンサの (D1, D0) から32ビットデータを書込みます。 ●X000=ONで書込みが実行されます。 X000=OFFのときは転送は実行されず、転送先のデー タは変化しません、パルス命令実行後も同様です。 ビットデバイスの桁指定はK1∼K4 (16ビッ ト命令)、 K1∼K8 (32ビット命令) としてください。 234 外部機器・ I/O 6.応用命令解説 FROM/TO命 令のオペラ ンドの扱い 《特殊ユニット, ブロック番号「m1」》 FX−8EX X030∼ X037 FX2−48MR X000∼X027 Y000∼Y027 FX−4AD 特殊ブロック No. 0 FX−32ER X040∼X057 Y030∼Y047 FX−4DA 特殊ブロック No. 1 FX−2AD−PT 特殊ブロック No. 2 ●FX0N, FX2, FX2Cシーケンサに対して接続された特種増設機器にはブロック番号が与えられます。 ブロック番号は、基本ユニットに近いものから№0→№1→№2…と順に続きます。 ●ブロック番号は、 FROM/TO命令がどの機器に対して働くのかを指定するために用います。 《バッファメモリ (BFM)番号「m2」》 ●特殊増設機器内には1 6ビットのRAMメモリが3 2点内蔵されていてこれをバッファメモリといいます。 バッファメモリの番号は#0∼#32 766となり、 その内容は各機器の制御目的に応じて決められ ています。 ●32ビット命令の中でBFMを扱ったときは、指定のBFMが下位16ビット、 これにつづく番号のB FMが上位16ビットとなります。 上位16ビット 下位16ビット BFM #10 BFM #9 ←指定BFM番号 FNC78 FNC79 《転送点数「n」》 指定要素 指定BFM 指定要素 指定BFM D100 D101 D102 D103 D104 BFM #5 #6 #7 #8 #9 D100 D101 D102 D103 BFM #5 #6 #7 #8 16ビット命令 n=5のとき FROM TO 32ビット命令 n=2のとき ●転送ワード点数をnで指定します。 1 6ビット命令のn=2と3 2ビット命令のn=1は同意義となります。 235 外部機器・ I/O 6.応用命令解説 《特殊補助リレーM8028の役割り (FX2, FX2C)》 ●M8028=OFFのとき FROM, TO命令実行中は自動的に割込み禁止状態となり、入力割込みやタイム割込みは実 行されません。 この間に発生した割込みはFROM, TO命令の実行完了後にただちに実行されます。 なお、 FROM, TO命令は割込みプログラムの中でも用いることができます。 ●M8028=ONのとき FROM, TO命令実行中に割込みが発生すると、 実行中断して割込みプログラムが実行されます。 ただし割込みプログラムの中でFROM, TO命令を用いることはできません。 ウォッチ ドッグタイマ 時間の変更 ●位置決め, カムスイッチ, IDインタフェース, リンク, アナログなどの特殊増設機器の接続台数多 い構成では、 シーケンサRUN時に行われるバッファメモリの初期化時間が長くなり演算時間が 延びます。 また多数のFROM/TO命令を実行したり、多数のバッファメモリを転送したばあいにも演算時 間が延びます。 このようなばあいウォッチドッグタイマエラーが発生することがありますので、 先頭ステップ 付近に下記プログラムを入力してウォッチドッグタイマ時間を延ばすか、 FROM/TO命令の 実行タイミングをずらしてください。 M8002 0 イニシャルパルス FNC 12 MOV FNC 07 WDT 特殊増設機 器の扱いに ついて 236 K300 D8000 ウォッチドッグタイマ時間 3 00ms ウォッチドッグタイマリフレッシュ FNC07 (WDT)命令をプログラムしなかったばあいは、 END処理時にD80 00の値が必要となります。 特殊増設機器の接続方法, 接続可能台数および入出力番号の扱い等につきましては、 シーケンサ のハンディマニュアルと、各機器に付属する専用マニュアルをご覧ください。 外部機器・SER 6.応用命令解説 6−11. FNC80∼FNC89 「外部機器・SER」 ∼ FNC00 FNC09 FNC10 ∼ FNC80∼FNC89には、主にシリアルポートに接続された特殊アダプタに 対する制御命令が用意されています。 また、 FX2, FX2CシーケンサのP I D演算命令もこの中に含まれます。 FNC19 ∼ FNC20 FNC.No. 命令記号 《命令名称》 80 RS シリアルデータ転送 81 PRUN 8進ビット転送 82 ASCI HEX→ASCII変換 83 HEX ASCII→HEX変換 84 CCD チェックコード 85 VRRD FX-8AVボリューム読出し 86 VRSC FX-8AVボリューム目盛 87 − FNC40 FNC49 − FNC50 ∼ − FNC39 ∼ 89 PID FNC30 ∼ 88 FNC29 PID演算 − FNC59 ∼ FNC60 FNC69 ∼ FNC70 FNC79 ∼ FNC80 FNC89 ∼ FNC90 FNC99 237 外部機器・SER 6.応用命令解説 FNC 80 RS 対象機種 シリアルデータ転送 シリーズ名 RS232C RS 16ビット命令 (連続実行形) 32ビット命令 ― 9ステップ 対 ワード 要素 K,H 象 要 素 ビット 要素 機能と動作 S・ S・ X KnX m,m Y X010 KnY M KnM S FNC 80 RS KnS T C m,n, D・ D ファイルレジスタ (FX2,FX2Cのみ) V,Z m,n:0∼256 (FX0NはV1.20以上、FX2はV3.07以上で追加 されました) S・ m D200 D 0 送信データの アドレスと点数 D・ D500 n D 1 受信データ格納 アドレスと点数 ― ― ● ― ● ● フ ラ グ 番 号 備考 FX0 FX0S FX0N 追加命令 FX1 FX2 追加命令 FX2C 送信待機 送信 受信完了 M8121 M8122 M8123 この命令は、 RS−232CやRS−485 (FX0N)のアダプタを用いて、 シリア ルデータの送受信を行うための命令 です。 ●データの伝送フォーマットは、後述の特殊データレジスタD8120によって設定します。 RS命令駆動中は、 D8120の設定変更を行っても実際には受付けません。 ●送信しないシステムのばあいは、送信点数を “K0” としてください。 また、受信しないシステムのばあいは、受信点数を “K0” としてください。 関連資料 FNC80 RS 238 ●「FX通信ユーザーズマニュアル」 FXシーケンサにおける通信関係の総合マニュアルであり、次の項目について詳述されていま すので本プログラミングマニュアルとあわせてご覧ください。 ・無手順通信(FNC80 (RS)命令) ・簡易PC間リンク ・並列リンク ・計算機リンク ●各通信機器のマニュアル(ハードウェア,配線) ・FX−232ADPユーザーズマニュアル ・FX0N−232ADPユーザーズマニュアル ・FX0N−485ADPユーザーズマニュアル 外部機器・SER 6.応用命令解説 通信仕様 《通信フォーマット 「D8120」》 通信フォーマットD8120は、 FNC80 (RS)命令による無手順通信のほか、計算機リンク接続時にも 使用する特殊データレジスタです。 したがって、 FNC80 (RS)命令使用時には、計算機リンクに関する設定は無効ですので、下記注 意事項に従ってフォーマットを設定してください。 ビット 番号 b0 データ長 b1 b2 パリティ b3 ストップビット b4 b5 b6 b7 内容 名称 ボーレート (bps) b8※1 ヘッダ b9※1 ターミネータ 制御線 b12 使用不可 1(ビットがON) 7bit 8bit b2,b1 (0, 0):なし (0, 1):奇数(ODD) (1, 1):偶数(EVEN) 1bit 2bit b7,b6,b5,b4 (0, 0, 1, 1): 300 (0, 1, 0, 0): 600 (0, 1, 0, 1):1,200 (0, 1, 1, 0):2,400 無手順 b10 b11 0(ビットがOFF) b7,b6,b5,b4 (0, 1, 1, 1): 4,800 (1, 0, 0, 0): 9,600 (1, 0, 0, 1):19,200 なし あり(D8124) 初期値:STX(02H) なし あり(D8125) 初期値:ETX(03H) b11,b10 (0, 0):なし<RS-232Cインタフェース> (0, 1):通常モード<RS-232Cインタフェース> (1, 1):モデムモード<RS-232Cインタフェース,RS-485インタフェース>※3 b11,b10 計算機リンク (0, 0):RS-485インタフェース ※4 (1, 0):RS-232Cインタフェース b13※2 サムチェック 付加しない 付加する b14※2 プロトコル 使用しない 使用する 形式1 形式4 b15※2 制御手順 ※1: ヘッダ, ターミネータの内容はユーザで変更可能です。 計算機リンクを使用するばあいは、必ず“0” でご使用ください。 ※2:b13∼b15は、計算機リンク接続時の設定項目です。 FNC80 (RS)命令を使用するばあいは、必ず“0”でご使用ください。 85ADP ※3:RS−485では制御線という考え方はありませんが、 FX−4 85ADP, FX0N−4 を使用されるばあいは、 (b11, b10) = (1, 1)でご使用ください。 ※4: 計算機リンク接続時の設定です。 FNC80 (RS)命令では関係ありません。 FNC80 RS ●通信フォーマットの設定例 データ長 7bit パリティ 奇数 (ODD) ストップビット 1bit 伝送速度 19,200bps ヘッダ なし ターミネータ なし 制御線 なし 左表の通信設定は、 次のようなプログラムにて設定を行うか、 周辺機器のシリアル通信設定にて設定を行ってください。 b15 D8120 0 0 0 b12 b11 0 0 0 0 0 b8 b7 0 1 0 0 0 9 b4 b3 1 0 0 1 b0 0 2 D8120 = 0092H イニシャルパルス M8002 FNC 12 MOV H0092 D8120 239 外部機器・SER 6.応用命令解説 送受信の シーケンス RS命令は次ページに詳述するとおり、 シーケンサからの送信データの先頭アドレスとデータ点数 および受信データ格納用先頭アドレスと受信可能な最大データ点数を指定するものです。 ここではRS命令を用いたデータ送受信のシーケンスについて、 まず説明します。 X010 FNC 80 RS S・ m D200 D 0 送信データの アドレスと点数 D・ D500 n D 1 受信データ格納 アドレスと点数 送信要求 パルス 送信データの内容の書込み SET M8122 送信要求 M8123 受信データの移動 受信完了 RST 送信要求 M8 12 2 受信完了 M8 1 23 キャリア検出 M8 1 24 (FX2, FX2C) 注意事項 240 動作の詳細は次ページを ご参照ください。 M8123 受信完了リセット D 0(送信点数)やD200∼の内容 を書込みます。 送信完了で自動的にリセットされます。 シーケンスでリセットしないでください。 受信データは専用の格納エリア に転送しておきます。 受信完了フラグM8123のリセットは連続 動作のシーケンスにしないでください。 ●RS命令の駆動入力X0 1 0をONすると、 シーケンサは受信待ちの状態となります。 ●受信待ちの状態または受信完了の状態で、 M8122をパルス命令でセットす ると、 D200からD0点のデータが送信され、送信完了時にM8122は自動的に リセットされます。 ●シーケンサがデータを受信中であるときは、 その受信完了を待って送信が行 われます。 この間、送信待機フラグM8121が動作します。 ●先頭データ受信後、 受信完了フラグM8 12 3がONするまでは受信中となります。 先頭データの受信中に送信要求を行うと、 データの混信が生じます。 ●受信完了フラグM8123がONしたら、受信データを他の格納先に転送してか らM8123をリセットしてください。 ●M8123をリセットすると、再び受信待ちの状態となります。 M8123の動作中に送信要求を行ってもM8123はリセットされませんが、送信 は行われます。 M8123のリセットは上記のとおり、 シーケンスにより行ってください。 ●(D1) =0でRS命令を実行するとM8123 (実行完了フラグ) は動作せず、 受信 待機にもなりません。一度M8123をON→OFFすると、受信待機となります。 ●MODEMの回線成立時にCD (DCD)信号(チャンネル受信キャリア検出) を 受信(MODEM→シーケンサ)すると、 M8124がONします。 ●M8124=OFFのときはダイヤル番号の送信、 M8124=ON後はデータの送受 信が行えます。 ●この命令は何回でもプログラムできますが、 駆動命令は1個とし (2個以上の同時ON不可) 、切 換えには1サイクルタイム以上のOFF時間を設けてください。 ●送信完了→受信開始または受信完了→送信開始の間には、 2サイクルタイム以上のOFF時間 を設けてください, (次ページ詳細) ●RS命令駆動中は、 D8120の設定変更を行っても実際には受付けません。 RS命令を一度OFF し設定変更を有効にしてください。 外部機器・SER 6.応用命令解説 《16ビットデータの扱い》 M8161=OFFのとき(M8161は、ASCI, HEX, CCD命令で共用) RUN中OFF M8000 X010 OFF 16ビットデータ M8161 FNC 80 RS 送信データ (シーケンサ →外部機器) 上位8ビット 16ビットモード S・ m D・ n D200 K 4 D500 K 10 下位8ビット 16ビットデータは下位、上位 の8ビットに分割して送受信 されます。 STX D200 下 D200 上 D201 下 D201 上 ETX ヘッダ ターミ ネータ S・ で指定した先頭アドレス mで指定した送信バイト数 受信データ (外部機器 →シーケンサ) STX D500 下 D500 上 D501 下 D501 上 D502 下 D502 上 ETX ターミ ヘッダ ネータ D・ で指定した先頭アドレス nで指定した受信上限点数(バイト数) 以上にはなりません。 ターミネータEXTまたはn点受信によ り受信完了となります。 駆動入力 X010 送信フラグ M8122 4 3 2 1 0 下 上 下 上 送信データ D8122 残数 送信データ TXD 受信完了 STX D200 D200 D201 D201 ETX 2サイクルタイム以上 としてください この間の送信要 求は送信待ちの 状態になります (M8121=ON) 送信可能区間 受信待ち FNC80 M8123 RS 受信待ち状態開始 下 上 下 上 下 上 シーケンスで リセットしな かったとき 受信データ RXD STX D500 D500 D501 D501 D502 D502 ETX 無手順 双方向通信 送信可能区間 受信 データ数 D8123 0 1 2 3 4 5 6 ●送受信中にエラーが発生するとM8063がONし、エラー内容をD8063へ格納します。 241 外部機器・SER 6.応用命令解説 《8ビットデータの扱い(拡張機能)》 M8161=ONのとき(M8161は、ASCI, HEX, CCD命令と共用) 16ビットデータ M8000 X010 M8161 FNC 80 RS 送信データ (シーケンサ →外部機器) 無視 8ビットモード S・ m D・ n D200 K 4 D500 K 10 下位8ビット 上位8ビットは無視、下位8 ビットのみ有効データとみな します。 STX D200 下 D201 下 D202 下 D203 下 ETX ヘッダ ターミ S・ で指定した先頭アドレス ネータ mで指定した送信バイト数 受信データ (外部機器 →シーケンサ) STX D500 下 D501 下 D502 下 D503 下 D504 下 D505 下 ETX ターミ ヘッダ ネータ D・ で指定した先頭アドレス nで指定した受信上限点数(バイト数) 以上にはなりません。 ターミネータEXTまたはn受信点によ り受信完了となります。 駆動入力 X010 送信フラグ M8122 4 3 2 1 0 送信データ TXD 受信完了 STX D200 D201 D202 D203 ETX 下 下 下 下 送信データ D8122 残数 2サイクルタイム以上 としてください この間の送信要 求は送信待ちの 状態になります (M8121=ON) 送信可能区間 受信待ち M8123 シーケンスで リセットしな かったとき 下 下 下 下 下 下 受信待ち状態開始 STX D500 D501 D502 D503 D504 D505 ETX 受信データ RXD 送信可能区間 受信 データ数 D8123 0 1 2 3 4 5 6 ●送受信中にエラーが発生するとM8063がONし、エラー内容をD8063へ格納します。 242 外部機器・SER 6.応用命令解説 FX−232ADP導入プログラム例 次に示すプログラムは、 FNC80 (RS)命令を用いたデータ転送プログラムの例です。 このプログラム例は、 「マ イクロシーケンサFAX情報サービス」 (裏表紙詳細) の掲載内容と同一です。 また、同「FAX情報サービス」 に はこの他にもプリンタへの印字やバーコードリーダとの通信などのプログラム例が掲載されていますので必要 に応じてご利用ください。 1234567890 1234567890 1234567890 1234567890 1234567890 パソコンとの接続1 (1)概要 FX−232ADP形RS232C用アダプタを用いて、パソコンと接続しデータの授受を行います。 (2)使用する機器とシステム構成 (V3. 07以上), FX2Cシーケンサ ・シーケンサ :FX2 ・インタフェース :FX−232ADP形RS232C用アダプタ ・パソコン :PC−9801NV (NEC社製) ・ケーブル :F2−232CAB パソコン PC−9801NV FX2(V3.07以上) FX2Cシーケンサ F2−232CAB RS−232C端子 FX−232ADP (3)パソコン側の通信設定 パソコンのメモリスイッチ設定を下記の内容とします。 ・ボーレート 9600bp s ・データビット長 8ビット 設定方法の詳細は、パソコンの取扱説明書をご覧ください。 ・パリティチェック 偶数 ・ストップビット長 2ビット *メモリスイッチ変更後は、必ずパソコンをリセットし設定を有効としてください。 (4)動作内容 電源投入 シーケンサ データ受信 シーケンサ データ送信 FNC80 〔 〔 〔 パソコン、 シーケンサに電源を投入し、パソコン、 シーケ ンサともプログラムを実行させます。 シーケンサはプログ ラムを実行させると、受信待ちの状態になっています。 パソコンからA$の内容「4 0」が送られてきて、 そのデー タがD0に格納されます。 D0に格納されたデータをD1 0 0に転送し、 D1 00の内容を パソコンに送信します。パソコンには受け取ったデータ を表示して、 プログラムが終了します。 〕 〕 〕 RS パソコンの表示 r un 4 0 OK 243 外部機器・SER 6.応用命令解説 (5)動作内容 ●シーケンサ側プログラム例 M8002 M8000 M8123 M 20 FNC 40 ZRST D 0 FNC 12 MOV H048F D8120 FNC 80 RS D100 K 4 D 0 FNC 15 BMOV D 0 D100 K 2 D300 起動時 D 0∼D300をクリア 通信フォーマットの設定 K 4 RS命令駆動 シーケンサが受信した内容 を再度パソコンへ送信 PLF M 20 RST M8123 受信完了フラグリセット SET M8122 送信要求 END ●パソコン側プログラム例 10 CLOSE #1:A$=” 40” ASCI I文字格納 20 OPEN ” COM1:” AS #1 ファイルオープン 30 PRINT #1, A$ シーケンサへデータ書込 4 0 CLOSE #1:FOR I=J TO 2000:NEXT * 50 OPEN ” COM1:” AS #1 60 FOR I=1 TO 100 * 70 IF LOC (1) >=4 GOTO 100 シーケンサのデータ読出のためのデータ長、 チェック 80 NEXT 90 CLOSE #1:PRINT ” TIME OUT ERROR” :END 100 B$=INPUT$ (LOC (1), #1) シーケンサのデータ読出 110 PRINT B$ 120 END *パソコン、 シーケンサの処理速度により、各カウンタ値を任意に変更してください。 各カウンタは、 データ受信時の待ち時間用として使用しています。 通信フォーマット D8120=H048F 244 データ長 8bit パリティ 偶数 ストップ 2bit ボーレート 9600bps ヘッダ なし ターミネータ なし 制御線 H/W モード 通常モード 6.応用命令解説 245 外部機器・SER 6.応用命令解説 D FNC 81 PRUN P PARALLEL RUNNING 対 ワード 要素 K,H シリーズ名 16ビット命令 PRUN (連続実行形) 5ステップ PRUN P (パルス実行形) S・ S・ KnX KnY KnM D・ 象 要 素 ビット 要素 X 対象機種 8進ビット転送 Y M S KnS T S・ C および D PRUN (連続実行形) 9ステップ D PRUN P (パルス実行形) 32ビット命令 D ファイルレジスタ V,Z D・ のnは1∼8、 ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 バージョンによる 機能差あり FX2 FX2C 指定要素番号の最下位桁は0としてください。 桁指定されたソースとデスティネーションの要素番号を8進数として扱い、 データを転送します。 機能と動作 X030 FNC 81 PRUN S・ D・ K4X000 K4M0 X000∼X017→M0∼M7,M10∼M17 8進数要素 X17 X16 X15 X14 X13 X12 X11 X10 M17 M16 M15 M14 M13 M12 M11 M10 M9 M8 X7 X6 X5 X4 X3 X2 X1 X0 M7 M6 M5 M4 M3 M2 M1 M0 10進数要素 変化しない X002 FNC 81 PRUN S・ D・ K4M0 K4Y000 M0∼M7,M10∼M17→Y0∼Y17 転送されない FNC81 M17 M16 M15 M14 M13 M12 M11 M10 M9 10進数要素 M8 M7 M6 M5 M4 M3 M2 M1 M0 Y17 Y16 Y15 Y14 Y13 Y12 Y11 Y10 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 PRUN 8進数要素 246 6.応用命令解説 247 外部機器・SER 6.応用命令解説 FNC 82 ASCI シリーズ名 HEX→ASCII 対 ワード 要素 象 要 素 ビット 要素 対象機種 HEX→ASCII変換 P 16ビット命令 ASCI (連続実行形) 7ステップ ASCI P (パルス実行形) 32ビット命令 ― S・ K,H n KnX KnY KnM KnS T C D ファイルレジスタ V,Z D・ X Y M n:1∼256 (FX0NはV1.20以上、FX2はV3.07以上で追加されました また、FXONには、パルス実行形命令はありません) S ― ― ● ― ● ● 備考 FX0 FX0S FX0N 追加命令 FX1 FX2 追加命令 FX2C 《16ビット変換モード》 M8161=OFFのとき(M8161は、 RS, HEX, CCD命令と共用) 機能と動作 RUN中OFF M8000 OFF M8161 16ビットモード S・ X010 FNC 82 ASCI D100 D・ n D200 K 4 のHEXデータの各桁をASCI I変換して、 D・ の上下各8ビットへ転送する命令です。変換 する文字はnで指定します。 D・ は下位8ビット、 上位8ビットに分けてASCI Iデータが格納されます。 S・ 16ビット 変換の例 上側のプログラムのばあい、次のとおり変換が実行されます。 S・ で指定した先頭デバイス 「0」=3 0H 「1」 =31H (D100) =0ABCH 「A」 = 4 1 「 2 」 = 3 2 H H (D101) =1234H 「B」 =42H 「3」 =33H (D102) =5678H 「C」 = 4 3 「 4 」 = 3 4 H H 「5」 =35H 「6」 =36H 「7」 =37H 「8」 =38H D・ で指定した先頭デバイス n FNC82 (D・) D 200下 K1 K2 K3 K4 K5 K6 K7 K8 K9 「C」 「B」 「A」 「0」 「4」 「3」 「2」 「1」 「8」 「C」 「B」 「A」 「0」 「4」 「3」 「2」 「1」 「C」 「B」 「A」 「0」 「4」 「3」 「2」 「C」 「B」 「A」 「0」 「4」 「3」 「C」 「B」 「A」 「0」 「4」 「C」 「B」 「A」 「0」 「C」 「B」 「A」 「C」 「B」 D 200上 ASC I D 201下 D 201上 D 202下 D 202上 D 203下 変化しません D 203上 D 204下 「C」 n=K 4のばあいのビットの構成 D 100=0ABCH 0 0 0 0 1 0 D 200 0 1 0 0 0 0 1 0 1 0 A 0 1 248 0 0 0 0 「C」→43H 1 1 0 0 0 1 0 0 0 0 0 0 0 0 「B」→42H 1 0 C 1 「A」→41H D 201 0 1 1 B 1 0 「0」→30H 1 1 0 1 0 ●プリンタなどでBCDデータとして出 力するばあいは、本命令の実行前 にBIN→BCD変換をしておく必要 があります。 外部機器・SER 6.応用命令解説 拡張機能 (FX2, FX2C) 《8ビット変換モード》 M8161=ONのとき(M8161は、 RS, HEX, CCD命令と共用) M8000 M8161=ONにすると8ビットモードとなり、 下記のとおり変換処理が行われます。 M8161 8ビットモード S・ X010 FNC 82 ASCI D100 D・ n 16ビット D200 K 4 0 下位8ビット デスティネーション S・ のHEXデータの各桁をASCI I変換して、 D・ の各下8ビットへ転送する命令です。変換 する文字数はnで指定します。 D・ の上位8ビットは0となります。 8ビット 変換の例 上側のプログラムのばあい、次のとおり変換が実行されます。 S・ で指定した先頭デバイス (D100) =0ABCH (D101) =1234H (D102) =5678H 「0」=30H 「A」 =41H 「B」 =42H 「C」 =43H 「1」 =31H 「2」 =32H 「3」 =33H 「4」 =34H 「5」 =35H 「6」 =36H 「7」 =37H 「8」 =38H で指定した先頭デバイス D・ n (D・) D 200 K1 K2 K3 K4 K5 K6 K7 K8 K9 「C」 「B」 「A」 「0」 「4」 「3」 「2」 「1」 「8」 「C」 「B」 「A」 「0」 「4」 「3」 「2」 「1」 「C」 「B」 「A」 「0」 「4」 「3」 「2」 「C」 「B」 「A」 「0」 「4」 「3」 「C」 「B」 「A」 「0」 「4」 「C」 「B」 「A」 「0」 「C」 「B」 「A」 「C」 「B」 D 201 D 202 D 203 D 204 D 205 D 206 変化しません D 207 D 208 「C」 FNC82 n=K 2のばあいのビットの構成 D 100=0ABCH 0 0 0 0 1 0 0 1 0 1 0 A 1 1 1 1 B 0 0 1 0 1 1 C ●プリンタなどでBCDデータとして出 力するばあいは、本命令の実行前 にBIN→BCD変換をしておく必要 があります。 ASC I D 200=BのASCⅡコード=42H 0 0 0 0 0 0 0 0 0 1 0 0 0 0 4 D 201=CのASCⅡコード=43H 0 0 0 0 0 0 0 0 0 1 2 0 4 0 0 0 3 249 外部機器・SER 6.応用命令解説 FNC 83 HEX P ASCII→HEX 対 ワード 要素 象 要 素 ビット 要素 対象機種 ASCII→HEX変換 シリーズ名 16ビット命令 HEX (連続実行形) 7ステップ HEX P (パルス実行形) 32ビット命令 ― ― ● ― ● ● ― S・ K,H n X KnX KnY Y M KnM KnS T D・ C D ファイルレジスタ V,Z n:1∼256 (FX0NはV1.20以上、FX2はV3.07以上で追加されました また、FXONにはパルス実行形命令はありません) S 備考 FX0 FX0S FX0N 追加命令 FX1 FX2 追加命令 FX2C RS, ASCI, CCD命令と共用) 《16ビット変換モード》 M8161=OFFのとき(M8161は、 機能と動作 RUN中OFF M8000 OFF M8161 16ビットモード S・ X010 FNC 83 HEX D200 D・ n D100 K 4 S・ の上下各8ビットに格納されているASC D・ I I文字をHEXデータに変換して、 4桁ごとに へ転送します。変換する文字数はnで指定します。 本命令で変換できるコードは、 0∼9, A∼Fのアスキーコードのみです。 16ビット 変換の例 FNC83 HEX 上例のプログラムのばあい、次のとおり変換が実行されます。 (D・) (S・) ASCII コード HEX 変換 D 200下 30H 0 1 D 200上 41H A 2 D 201下 42H B 3 D 201上 43H C 4 D 202下 31H 1 5 ・・・0H ABC1H D 202上 32H 2 6 ・・0AH BC12H D 203下 33H 3 7 ・0ABH C123H D 203上 34H 4 8 0ABCH 1234H D 204下 35H 5 9 ・・・0H ABC1H 2345H 0 0 1 n=K 4のばあい D 200 n 0 D 102 D 101 D 100 ・・・0H 変化しません ・は0です ・・0AH ・0ABH 0ABCH 1 0 0 0 0 0 1 41H→「A」 D 201 0 1 0 0 0 0 1 1 0 1 0 43H→「C」 D 100 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 30H→「0」 0 0 42H→「B」 0 1 A 0 1 0 1 B 1 1 C ●入力データがBCDのばあいは本命令の実行後、 BCD→BIN変換しておく必要があります。 S・ ●HEX命令では に格納されているデータが、 ASCI Iコードでないばあい、演算エラーとな りHEX変換ができません。特にM8161がOFFのばあい、 S・ の上位8ビットにもASCI Iコード を格納しておく必要がありますので注意してください。 250 外部機器・SER 6.応用命令解説 拡張機能 (FX2, FX2C) 《8ビット変換モード(拡張機能)》 M8161=ONのとき(M8161は、 RS, ASCI, CCD命令と共用) M8000 M8161 8ビットモード S・ X010 FNC 83 HEX D200 D・ D100 16ビット n K 無視 下位8ビット ソースデータ 4 S・ の下8ビットに格納されているASC I I文字をHEXデータに変換して、 4桁ごとに D・ へ転 送します。変換する文字数はnで指定します。 M8161はRS, ASCI, HEX, CCD命令と共用になっており、 8ビットで使用するばあいは常時ONし てください。 8ビット 変換の例 上例のプログラムのばあい、次のとおり変換が実行されます (D・) (S・) ASCII コード HEX 変換 D 200 30H 0 1 D 201 41H A 2 D 202 42H B 3 D 203 43H C 4 D 204 31H 1 5 ・・・0H ABC1H D 205 32H 2 6 ・・0AH BC12H D 206 33H 3 7 ・0ABH C123H D 207 34H 4 8 0ABCH 1234H D 208 35H 5 9 ABC1H 2345H n=K 2のばあい n D 200 D 102 D 101 D 100 ・・・0H 変化しません ・は0です ・・0AH ・0ABH 0ABCH ・・・0H 0 0 1 1 0 3 0 D 201 1 0 4 D 100 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 A ●入力データがBCDのばあいは本命令の実行後、 BCD→BIN変換しておく必要があります。 FNC83 HEX 251 外部機器・SER 6.応用命令解説 FNC 84 CCD シリーズ名 CHECK CODE 対 ワード 要素 象 要 素 対象機種 チェックコード P 16ビット命令 CCD (連続実行形) 7ステップ CCD P (パルス実行形) 32ビット命令 ― ― ● ― ● ● ― S・ K,H n KnX KnY KnM KnS T C D n ファイルレジスタ V,Z D・ ビット 要素 X Y M 備考 FX0 FX0S FX0N 追加命令 FX1 FX2 追加命令 FX2C n:1∼256 (FX0NはV1.20以上、FX2はV3.07以上で追加されました また、FXONにはパルス実行形命令はありません) S 《16ビット変換モード》M8161=OFFのとき(M8161は、RS,ASCI,HEX命令と共用) 機能と動作 RUN中OFF OFF M8000 M8161 16ビットモード S・ X010 FNC 84 CCD D100 D・ n D 0 K 10 ● S・ で指定されたデバイスを先頭とするn点のデータについて、 その上下各8ビットデータの 加算データと水平パリティデータを D・ と D・ +1のデバイスへ格納します。 ●FX(0N)−232ADPによる通信データのチェックに用いることができます。 16ビット 変換の例 FNC84 CCD 上例のプログラムのばあい、次のとおり変換が実行されます。 (S・) データの内容の例 D 100下 K100 =01100100 D 100上 K111 =0110111① ← D 101下 K100 =01100100 D 101上 K 98 =01100010 D 102下 K123 =0111101① ← D 102上 K 66 =01000010 D 103下 K100 =01100100 D 103上 K 95 =0101111① ← D 104下 K210 =11010010 D 104上 K 88 =01011000 合 計 K1091 水平パリティ 252 1の個数が奇数ならば水平パリティは1 1の個数が偶数ならば水平パリティは0 1000010① ← D 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 BCDでは1091 D 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 水平パリティ 外部機器・SER 6.応用命令解説 拡張機能 (FX2, FX2C) 《8ビット変換モード》M8161=ONのとき(M8161は、 RS, ASCI I, HEX命令と共用) M8000 M8161 8ビットモード S・ X010 FNC 84 CCD D100 16ビット D・ n D 0 K 10 無視 下位8ビット ソースデータ ● S・ で指定されたデバイスを先頭とするn点のデータ (下位8ビットのみ) について、その加 算データと水平パリティデータを D・ と D・ +1のデバイスへ格納します。 ●FX(0N)−232ADPによる通信データのチェックに用いることができます。 8ビット 変換の例 上例のプログラムのばあい、次のとおり変換が実行されます。 (S・) データの内容の例 D 100 K100 =01100100 D 101 K111 =0110111① ← D 102 K100 =01100100 D 103 K 98 =01100010 D 104 K123 =0111101① ← D 105 K 66 =01000010 D 106 K100 =01100100 D 107 K 95 =0101111① ← D 108 K210 =11010010 D 109 K 88 =01011000 合 計 K1091 水平パリティ 1000010① ← 1の個数が奇数ならば水平パリティは1 1の個数が偶数ならば水平パリティは0 D 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 BCDでは1091 D 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 1 水平パリティ FNC84 CCD 253 外部機器・SER 6.応用命令解説 FNC 85 VRRD P VOLUME READ 対 ワード 要素 ボリューム読出し シリーズ名 16ビット命令 VRRD (連続実行形) 5ステップ VRRD P (パルス実行形) 素 32ビット命令 K,H KnX KnY KnM KnS T C D ビット 要素 X Y M X000 X001 S FNC 85 VRRD T 0 ボリューム 値の順次 読出し ― ― ― ● ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C S・ :ボリューム番号0∼7 S・ D・ K 0 D 0 ボリューム№0のアナログ値をBIN8ビットに変換 して0∼255をD0へ転送します。 用途例としてD0をタイマの設定値として用いて います。 これによりアナログタイマが得られます。 タイマ定数として、 2 56以上の値が必要なばあい には取込値にFNC22 (MUL)命令で定数をかけ た値をタイマ定数として間接設定します。 D 0 アナログタイマとしての用途例 ボリュームVR0∼VR7に応じて、 VRRD命令の指定値はK0∼K7とします。 図のシーケンスでは、 インデックス (Z=0∼7) により、修飾されておりK0Z=K0∼K7となります。 0 M8000 RUNモニタ 4 7 M8000 VRRD 21 23 27 59 63 65 RST Z インデックスレジスタ Zのリセット(Z)=0 FNC 08 FOR K 8 FOR∼NEXT間を8回 繰返します。 FNC 85 VRRD K 0Z D200Z FNC 24 INC Z ボリューム 値をデータ レジスタへ (Z)+1→(Z) FNC 09 NEXT 16 17 254 ファイルレジスタ V,Z D・ 機能と動作 FNC85 ― S・ 象 要 対象機種 FX-8AV用 X000 T 0 X001 T 1 X007 T 7 T 0 D200 Y000 T 1 D201 Y001 T 7 Y007 END D207 タイマ回路です。 ボリュームの目盛0∼10 に応じて、データレジ スタには0∼255の値が 格納されます。 T 0∼T 7は100msタイマ ですから、0∼255の設 定値に対して、0∼25.5 秒が得られます。 《FOR∼NEXT命令の動作》 4ステップから1 6ステップまでの命 令をFOR命令の指定回数8回だ け繰返した後、 17ステップ以降へ 移行します。 この間でインデックス レジスタZの値は、 0,1,2,……,7 と順次増加し、 VR0→D200 VR1 →D2 01……VR7→D20 7の8回の 転送が行われます。 外部機器・SER 6.応用命令解説 FNC 86 VRSC P VOLUME SCALE 対 ワード 要素 ボリューム目盛 シリーズ名 16ビット命令 VRSC (連続実行形) 5ステップ VRSC P (パルス実行形) 素 32ビット命令 ― S・ K,H KnX KnY KnM 象 要 対象機種 FX-8AV用 KnS T C D V,Z ファイルレジスタ D・ ビット 要素 X Y 機能と動作 X000 ロータリス イッチとし ての利用 X000 X001 M ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C S・ :ボリューム番号0∼7 S S・ D・ FNC 86 VRSC K 1 D 1 ボリューム№1の目盛0∼1 0をD1へBIN値で格納 します。 ツマミが目盛の途中にある時は四捨五入により 0∼10の正数値にまるめます。 FNC 86 VRSC K 1 D 1 ボリューム目盛り0∼10に応じて補助リレー M0∼M10のいずれか1点をONさせます。 FNC 41 DECO D 1 M 0 K 4 FNC41 (DECO)命令によって、補助リレー がM0∼M15まで占有されます。 M 0 目盛 0 のときにON M 1 目盛 1 のときにON M 10 目盛10 のときにON ※シンボルのVRSCは、 VARIABLE RES I STOR SCALEの略称です。 FNC86 VRSC 255 外部機器・SER 6.応用命令解説 FNC 88 PID 対象機種 PID演算 シリーズ名 PID PID 16ビット命令 (連続実行形) 32ビット命令 ― 9ステップ 対 ワード 要素 K,H KnX KnY KnM S1 S2 S3 KnS T C D 象 要 素 ファイルレジスタ V,Z D ビット 要素 機能と動作 X Y M S ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 追加命令 FX2C 追加命令 S3 :D0∼D975 (V3.30以上で追加されました。) X000 FNC 88 PID S1 S2 S3 D D 0 D 1 D100 D150 目標値 測定値 パラメータ 出力値 (SV) (PV) (MV) ●PID制御を行うためのPID演算プログラムです。 サンプリングタイムに達したPID命令が、 その後にスキャンされたときPID演算を実行します。 ● S1 に目標値(SV) を設定しプログラムを実行すると D に S2 に測定現在値 (PV) 演算結果(MV)が格納されます。 S3 ∼ S3 +6に制御パラメータ } D に対しては、 非バッテリバックアップ領域のデータレジスタを指定してください。 (バッテリ バックアップ領域のデータレジスタを指定するばあいは、下記のプログラムによってシーケ ンサRUN時にバックアップ内容をクリアする処置を必ず行ってください) M8002 (プログラム例) イニシャルパルス RST D*** D に指定したバッテリバックアップ FNC88 P I D 256 領域のデータレジスタ番号 ● S3 から25点分の要素が占有されます。 この例ではD100∼D124が占有されます。 (ただし、次ページに示す制御パラメータのACT設定でBIT1、 BIT2が共に“0” のときは、 3 S から20点分だけの占有となります) 外部機器・SER 6.応用命令解説 パラメータ の設定 S3 S3 +1 制御用パラメータの設定値は、 PID演算開始前にMOV命令などによりあらかじめ書き込んでお く必要があります。 また、 メモリバックアップ領域のデータレジスタを指定したばあいには、 シーケンサの電源OFF後 も設定値が保持されるため、 2回目以降の書込み処理は不要です。 サンプリングタイム (Ts) 動作方向(ACT) 1∼32767 〔ms〕 (ただし、演算周期より短い値での実行は不可能) BIT0 0:正動作 1:逆動作 BIT1 0:入力変化量警報なし 1:入力変化量警報有効 BIT2 0:出力変化量警報なし 1:出力変化量警報有効 BIT3 使用不可 BIT4∼BIT15 0∼99 〔%〕 1∼32767 〔%〕 0∼32767 〔×100ms〕 0のときは∞として扱う (積分なし) 0∼100 〔%〕 0∼32767 〔×10ms〕 0は微分なし } S3 +2 S3 +3 S3 +4 S3 +5 S3 +6 S3 +7 入力フィルタ定数(α) 比例ゲイン (Kp) 積分時間(TI) 微分ゲイン (KD) 微分時間(TD) } PID演算の内部処理で占有します S3 +1 9 S3 +2 0 入力変化量(増側)警報設定値 0∼32 767 S3 +2 1 入力変化量(減側)警報設定値 0∼32 767 S3 +2 2 出力変化量(増側)警報設定値 0∼32 767 S3 +2 3 出力変化量(減側)警報設定値 0∼32 767 S3 +2 4 警報出力 BIT0入力変化量 (増側) オーバ BIT1入力変化量 (減側) オーバ BIT2出力変化量 (増側) オーバ BIT3出力変化量 (減側) オーバ } 使用の有無はユーザが設定する S3 1のACTがK2∼K7のとき有 + 効(BIT1またはBIT2がONのとき) ●PID命令は同時に複数回実行できます(ループ数に制限はありません)が、演算に使用する S3 や D は要素番号が重複しないよう注意してください。 ●PID命令はタイマ割込みやサブルーチン、ステップラダー、 ジャンプ命令内でも使用できます S3 +7をクリアしてから使用してください。 が、 このようなばあいにはPID命令の実行直前に FNC88 X000 I610 FNC 12 MOV P K 0 D107 FNC 88 PID D 0 D 1 S3 +7をリセット (初回の割込みルーチン実行時に、内部処理 I D 用レジスタをパルス化指令でクリアします) P D100 D150 PID演算実行 257 外部機器・SER 6.応用命令解説 ●サンプリングタイムTsの誤差は最大で− (1演算周期+1ms) ∼+ (1演算周期) となります。 この変動が問題になるばあいは、 コンスタントスキャンモードで実行するか、 あるいはタイマ割 込みルーチン内にプログラムしてください。 ●サンプリングタイムTs≦シーケンサの1演算周期となると下記PID演算エラー (K674 0)が発生 しますが、 Ts=演算周期としてP ID演算が実行されます。 このようなばあいはP ID命令をタイマ 割込み(I 6□□∼I 8□□)内で使用することをおすすめします。 ●入力フィルタ定数は、測定値の変化をなめらかにする効果があります。 ●微分ゲインは、出力値の急激な変化をやわらげる効果があります。 ●動作方向( S3 +1(ACT)) 1)動作方向[bit0] システムの動作方向を正動作、逆動作で指定します。 2)警報設定(入力変化量、出力変化量)[bit1,bit2] S3 +1 (ACT)のb i t 1, b i t2をONさせると、ユーザ任意で入力変化量・出力変化量の S3 S3 チェックが行えます。チェックは + 20∼ + 23の値に従って行います。設定 S3 された入出力変化量をオーバしたとき、警報フラグとして + 24の各ビットが、 その PID命令実行直後にONします。(下図参照) S3 +23を警報値として使用するばあい、 ただし、 S3 +21, 設定された値は、負の値と して扱います。 a)変化量とは、 (前回の値) − (今回の値) =変化量 S3 b)警報フラグの動作( + 24) i)入力変化量(b i t 1=1) i i)出力変化量(b i t 2=1) 入力変化量 出力変化量 増側 増側 サンプ リング 回数 0 減側 減側 警報フラグ S3 +24 bit0 ON OFF S3 +24 bit1 警報フラグ S3 +24 bit2 ON OFF OFF ON 258 サンプ リング 回数 0 S3 +24 bit3 OFF ON 外部機器・SER 6.応用命令解説 P I Dの3定数 の求め方 PID制御において良好な制御結果を得るためには、制御対象に合った各定数(パラメータ) の最 適値を求めなければなりません。 ここでは、 PIDの3定数(比例ゲイン (KP)、積分時間(TI)、微分 時間(TD)) の最適値を求めなければなりません。 その方法としてステップ応答法があり、 ここでは、 そのステップ応答法について説明します。 ステップ応答法とは、 制御システムに対し0→1 0 0%※1のステップ状の出力を与えることによって、 入 力変化から求められる動作特性 (最大傾斜 (R) 、 無駄時間 (L) ) よりP IDの3定数を求める方法です。 ※1 ステップ状の出力は、 0→75%や0→50%でも求めることはできます。 〈動作特性〉 100% 出力値 出力値(MV) 0% 時間 入力値の 変化量 最大傾斜(R) 時間(Sec) 無駄時間(L) [Sec] 1(Sec) 〈動作特性と3定数〉 比例ゲイン (KP)[%] 積分時間 (TI)[×100ms] 比例制御(P動作)のみ 1 RL PI制御(PI動作) 0.9 出力値 × RL (MV) 33L PID制御(PID動作) 1.2 出力値 × RL (MV) 20L 微分時間 (TD)[×10ms] 出力値 × (MV) FNC88 50L P I D 259 外部機器・SER 6.応用命令解説 ●制御パラメータの設定値やPID演算中のデータにエラーが発生すると演算エラーM8 06 7が ONし、 そのエラー内容に従ってD8067に下記データが格納されます。 コード エラー内容(D8067) 処 理 K6705 応用命令のオペランドが対象要素外 K6706 応用命令のオペランドが対象範囲外 K6730 サンプリングタイム(TS)が対象範囲外(TS<0) K6732 入力フィルタ定数(α)が対象範囲外(α<0または100≦α) K6733 比例ゲイン(KP)が対象範囲外(KP<0) PID演算停止 K6734 積分時間(TI)が対象範囲外(TI<0) K6735 微分ゲイン(KD)が対象範囲外(KD<0または201≦KD) K6736 微分時間(TD)が対象範囲外(TD<0) K6740 サンプリングタイム(TS)≦演算周期 K6742 測定値変化量オーバ(ΔPV<-32768または32767<ΔPV) K6743 偏差オーバ(EV<-32768または32767<EV) K6744 積分計算値がオーバ(-32768∼32767以外) K6745 微分ゲイン(KP)オーバによる微分値オーバ 演算データをMAX値 として演算続行 K6746 微分計算値がオーバ(-32768∼32767以外) K6747 PID演算結果オーバ(-32768∼32767以外) PIDの測定値(PV) は、 PID演算実行前までに正常なデータが読み込まれている必要があります。 特にFX−4AD, FX−2AD−PTまたはFX−4AD−TCの入力値をPID演算するばあいは、 その 変換時間に注意してください。 260 外部機器・SER 6.応用命令解説 P I D命令の 基本演算式 (参考) 本命令は、速度形・測定値微分形演算式により、 PID演算を行っています。 PID制御では、 S3 で指定した“動作方向” の内容によって正動作または逆動作の演算式が 実行されます。 また、 この演算に必要とされている各値は、 S3 に指定したデータレジスタの内容が用いられ ます。 P I D基本演算式 動作方向 PID演算方式 ΔMV=KP {(EVn−EVn−1) + TS EVn+Dn} TI EVn=PVnf−SV 正動作 Dn= α α TD D・ TD (2PVnf−1−PVnf−PVnf−2) + ・Dn−1 TS+ D・TD TS+ D・TD α MVn=ΣΔMV ΔMV=KP {(EVn−EVn−1) + TS EVn+Dn} TI EVn=SV−PVnf 逆動作 Dn= α α TD D・ TD (2PVnf−1−PVnf−PVnf−2) + ・Dn−1 TS+ D・TD TS+ D・TD α MVn=ΣΔMVΔ 記号解説 EVn EVn−1 SV PVnf PVnf−1 PVnf−2 ΔMV MVn ○ ○ ○ ○ ○ : 今回サンプル時の偏差 :1周期前の偏差 : 目標値 : 今回サンプル時の測定値(フィルタ後) :1周期前の測定値(フィルタ後) :2周期前の測定値(フィルタ後) : 出力変化量 : 今回の操作量 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ Dn Dn−1 Kp Ts TI TD αD ○ ○ ○ ○ ○ ○ : 今回の微分項 :1周期前の微分項 : 比例ゲイン : サンプリング周期 : 積分定数 : 微分定数 : 微分ゲイン ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ FNC88 P I D ○ ○ ○ ○ ○ PVnfは、読込んだ測定値を基に、次の演算式から求めた値です。 「フィルタ後の測定値PVnf」 =PVn+L (PVnf−1−PVn) PVn : 今回サンプル時の測定値 L :フィルタ係数 PVnf−1 :1周期前の測定値(フィルタ後) 261 外部機器・SER 6.応用命令解説 周辺機器 の対応 FNC88 (PID演算) をプログラミングできる周辺機器とそのバージョンは下表のとおりです。 機種区分 ソフトウェア形名 備 考 バージョン FX-10P 内蔵ROM交換(サービスセンター) V2.00 以上 FX-20P システムメモリカセット V3.00 以上 SW1GP-GPPFX FXシステム立上げ(ラダー) V3.00 以上 A6GPP SW1GP-SFCFX FXシステム立上げ(SFC) V2.00 以上 A6PHP SW1GP-FXCADIF CADインタフェース V1.10 以上 FX-MEM1GP-GPPFX 高速立上げメモリカード(ラダー) V3.00 以上 A7HGP SW1HX-GPPFX FXシステム立上げ(ラダー,SFC) V1.00 以上 A7PHP SW1RX-GPPFX FXシステム立上げ(ラダー,SFC) V2.00 以上 PC9801 SW1PC-FXGP/98-5 FXシステム立上げ 5型(ラダー,SFC) V3.00 以上 NEC SW1PC-FXGP/98-3 FXシステム立上げ 3.5型(ラダー,SFC) V3.00 以上 SW0PC-FXGP/WIN FXシステム立上げ(ラダー,SFC) V1.00 以上 SW□D5C(F)-GPPW A,QnA,FXシステム立上げ(ラダー) SW2 以上 MAXY 三菱 SW1PC-FXGP/AX-3 FXシステム立上げ 3.5型(ラダー) V3.00 以上 J3100 東芝 SW1PC-FXGP/J3-3 FXシステム立上げ 3.5型(ラダー) V2.00 以上 HPP Windows版 《命令入力操作例》 ●リストモード: F N C 8 8 ●回路モード : F N C SP D 8 0 8 SP SP D D 1 0 SP SP D D 2 1 SP SP D D 1 2 0 SP 0 D 1 0 0 “PID” という命令記号によるキー入力には対応していませんので、必ずFNC.№「FNC88」 を指 定して入力してください。 (Wi ndows版については、 “PID”命令記号による入力も可能です) 262 外部機器・SER 6.応用命令解説 プログラム例 下記システムにて動作させたときのPID制御のサンプルプログラムです。 ただし、 各パラメータの値は制御システムによって異なりますので、 それぞれの実システムに合わ せて設定してください。 ●システム構成 COM X0 V+ FX2-32MR COM0 V- V+ FX-2DA COM FX-4AD Y0 L ●設定内容 目標値 パラメータ 〈 S1 〉 1000(5V) サンプリングタイム(Ts) 〈 S3 〉 80(ms) 入力フィルタ(α) 〈 S3 +2〉 70(%) 比例ゲイン(KP) 〈 S3 +3〉 70(%) 積分時間(TI) 〈 S3 +4〉 40(x100ms) 微分ゲイン(KD) 〈 S3 +5〉 10(%) 微分時間(TD) 〈 S3 +6〉 10(x10ms) 動作方向 動作方向 (ACT) 〈 S3 +1のbit0〉 逆動作(ON) 入力変化量警報 〈 S3 +1のbit1〉 なし(OFF) 出力変化量警報 〈 S3 +1のbit2〉 なし(OFF) FNC88 P I D 263 外部機器・SER 6.応用命令解説 ●プログラム例 M8002 イニシャルパルス M8000 RUNモニタ 264 FNC 12 M0V K1000 D0 目標値をK1000 (5V)に設定 FNC 12 M0V K80 D10 サンプリングタイムを 80msに設定 FNC 12 M0V H01 D11 動作方向を 逆動作に設定 FNC 12 M0V K70 D12 入力フィルタを70% に設定 FNC 12 M0V K70 D13 比例ゲインを70% に設定 FNC 12 M0V K40 D14 積分時間を 4000msに設定 FNC 12 M0V K10 D15 微分ゲインを10% に設定 FNC 12 M0V K10 D16 微分時間を 100msに設定 FNC 79 TO P K0 K0 H00 K1 FX-2DAを 電圧出力に設定 FNC 79 P TO K1 K0 H0000 K1 FX-4ADを 電圧入力に設定 FNC 78 FROM K1 K5 D1 K1 FX-4ADのch1を D1に読出 FNC 79 TO K0 K1 D2 K1 FX-2DAのch1に D2を書込 外部機器・SER 6.応用命令解説 X0 PID制御開始 M8067 FNC 88 PID D0 D1 D10 Y000 D2 PID命令 エラー発生 エラーフラグ END FNC88 P I D 265 6.応用命令解説 MEMO 266 外部機器・F2 6.応用命令解説 6−12. FNC90∼FNC99 「外部機器・F2」 ∼ FNC00 FNC09 FNC10 ∼ FNC90∼FNC99には、 F2シリーズシーケンサの特殊増設機器を制御する ための命令が用意されていますが、 シーケンサのバージョンにより下記の 変更がありますのでご注意ください。 FNC19 ∼ FNC20 F2シリーズ用特殊ユニット制御命令について 《推奨代替機種名》 FNC50 FNC59 FNC60 FNC69 FNC70 ∼ FNC79 FNC80 ∼ ・FNC90(MNET)F2−16NT/F2−16NP用 ・FNC91(ANRD)F2−6A用 ・FNC92(ANWR) F2−6A用 ・FNC97(BLK) F2−30GM用 ・FNC98(MCDE)F2−30GM用 FNC49 ∼ 《廃止命令リスト》 FNC40 ∼ N I用)→ ・FX−16NT(MELSECNET/MI N I用) ・F2−16NT (MELSECNET/MI ・F2−16NP (MELSECNET/MI N I用)→ ・FX−16NP(MELSECNET/MI N I用) → ・FX−2DA (アナログ出力用) ・F2−6A (アナログ入出力用) ・FX−4AD (アナログ入力用) ・F2−30GM(1軸位置決め用) → ・FX−1GM (1軸位置決め用) ・FX−10GM(1軸位置決め用) ・FX−20GM(2軸位置決め用) ・FX−1PG (パルス出力用) FNC39 ∼ 《生産中止機種名》 FNC30 ∼ F2シリーズ用特殊ユニットの生産中止に伴い、 これに関連する応用命令がFX2,FX2Cシーケンサ バ ージョンV3. 30以 上( ’ 96年6月 以 降 )から 削 除され まし た 。詳 細 は 次 のとおりで す 。 FNC29 FNC89 ∼ ∼ F N C 9 0 F N C 9 0 F N C 9 9 F N C 9 9 267 外部機器・F2 6.応用命令解説 FNC 90 MNET P MELSECNET MINI 対 ワード 要素 K,H 対象機種 F−16NP/NT交信 シリーズ名 16ビット命令 MNET (連続実行形) 5ステップ MNET P (パルス実行形) KnX KnY KnM KnS T C 32ビット命令 D V,Z ― ― ― ― ◆ ◆ ― ファイルレジスタ 象 要 素 ビット 要素 機能と動作 S X Y D X000 M 本命令は、V3.30以上('96年6月以降) から廃止されました。 S FNC 90 MNET S D X040 Y030 備考 FX0 FX0S FX0N FX1 FX2 V3.30以上で削除 FX2C V3.30以上で削除 F-16NP/NTとの交信 先頭入出力番号 ●この命令はFX2, FX2CシーケンサとF−16NP/NT形インタフェースユニットとの間でON/ OFF信号の交信を行うための命令です。 ●先頭入出力番号は、 FX2−24EI形特殊ブロックの接続位置によって決まります。 ●上記の命令により次の信号が交信されます。 FX2シーケンサ FX2Cシーケンサ Y030∼Y037 リンクデータ X050∼X057 FX2-24EI形 特殊ブロック 8 点 F-16NP/NT形 インターフェース ユニット Aシリーズ シーケンサ 8 点 X044∼X047 ステータス信号 ●FX−16NP/NTやFX−16NP/NT−S3形インタフェースブロックのばあいは、 この応用命令 は用いず、 FX2−24EIも不要です。 FNC90 MNET 268 外部機器・F2 6.応用命令解説 《F2シーケンサでは》 入出力番号 《FX2, FX2Cシーケンサでは》 F2シーケンサ F-16NP/NT 000番 X014∼X027 コネクタ Y040∼Y047 F-16NP/NT FX2,FX2Cシーケンサ (FX2-24EI) X044∼X057 X040 Y030 Y030∼Y037 内 内 部 400番 X414∼X427 部 要 コネクタ Y440∼Y447 要 素 素 500番 X514∼X527 コネクタ Y540∼Y547 (FX2-24EI) X060 Y040 (FX2-24EI) X100 Y050 X064∼X077 Y040∼Y047 X104∼X117 Y050∼Y057 先頭入出力番号 増設ケーブル用コネクタ番号 ●F−16NP/NTに対する入出力の番号は 増設ケーブルのコネクタ番号に応じて上 図のとおりとなっています。 ●F−16NP/NTに対する入出力の番号は 先頭入出力番号に応じて上図のとおりとな ります。 入出力番号は、 FX2−24EIの接続位置に 応じて基本ユニットからの連続番号となり ます。上記接続例のばあい、 FX2−24EIを 3台用います, ●詳細はF−16NP/NT形インタフェースユニットのユーザ−ズマニュアルをご参照ください。同 マニュアルの中ではF2シリーズを基本として入出力番号が記載されていますので、 これを上 図の対応で読換えてFX2のプログラムを行ってください。 《入出力番号の対応例》 F2 FX2,FX2C 備 考 F2 FX2,FX2C 備 考 X414 X064 入力データ正常 X420∼X427 X070∼X077 シーケンサへの入力 X415 X065 入力データ異常 Y440∼Y447 Y040∼Y047 シーケンサからの出力 X416 X066 出力データ正常 X417 X067 出力データ異常 ●F−16NTのSG端子とFX2シリーズシーケンサのSG端子は内容が異なりますので両者間を接 続しないでください。 ON/OFF信号の交信の ●FX−16NP/NT−S3を用いたばあいも、 FX2−24EIは不要となり、 他に最大28点/28点のワードデータの送受信が可能となります。 FNC90 MNET 269 外部機器・F2 6.応用命令解説 FNC 91 ANRD P ANALOG READ 対 ワード 要素 象 要 素 ビット 要素 機能と動作 K,H n シリーズ名 16ビット命令 ANRD (連続実行形) 9ステップ ANRD P (パルス実行形) KnX KnY KnM KnS S X 対象機種 F2−6A 読出し T D2・ C 32ビット命令 D ― ファイルレジスタ V,Z n=10∼13(入力チャンネル番号) Y D1 X000 M S FNC 91 ANRD ― ― ― ― ◆ ◆ 備考 FX0 FX0S FX0N FX1 FX2 V3.30以上で削除 FX2C V3.30以上で削除 本命令は、V3.30以上('96年6月以降) から廃止されました。 S D1 D2・ n X040 Y030 D300 K 10 アナログ入力CH 10→D300 読出し命令 先頭入出力番号 ●F2−6A形アナログ入出力ユニットのアナログ入力をFX2, FX2Cシーケンサに読込むための命 令です。 ●nはアナログ入力のチャンネル番号であり、 n=10, 11, 12, 13となります。 S D1 はFX2−2 ● 4EI形特殊アダプタの接続位置によって決まります。 D2・ には8ビットバイナリのアナログデータが格納されます。 ● 平均値の 算出 アナログ入力の変動を少なくするために、 100ms単位の時系列データ3点の平均値を求めます。 M8000 RUNモニタ FNC 91 ANRD X040 Y030 D 20 先頭入出力番号 M8012 100ms クロック FNC91 ANRD 270 FNC 37 WSFL P D 20 D 0 K 3 FNC 45 MEAN P D 0 D 10 K 3 X04 0、 Y03 0を先頭として接続さ れたF2−6A形アナログ入出力 0の チャンネル ユニットの入力チャンネル1 番号 データをD20へ格納します。 K 10 K 1 D20の内容を100ms単位でD0, D1, D2へシフトします。 D0, D1, D2の平均値をD1 0へ格 納します。 外部機器・F2 6.応用命令解説 FNC 92 ANWR P ANALOG WRITE 対 ワード 要素 象 要 素 ビット 要素 機能と動作 K,H n シリーズ名 16ビット命令 ANWR (連続実行形) 9ステップ ANWR P (パルス実行形) KnX KnY KnM S1・ KnS T C 32ビット命令 D ― ファイルレジスタ V,Z n=0,1 S2・ X 対象機種 F2−6A 書込み Y D X000 M S FNC 92 ANWR ― ― ― ― ◆ ◆ 備考 FX0 FX0S FX0N FX1 FX2 V3.30以上で削除 FX2C V3.30以上で削除 本命令は、V3.30以上('96年6月以降) から廃止されました。 S1・ S2 D n D310 X040 Y030 K 0 D 310→アナログ出力CH 0 書込み命令 先頭入出力番号 ●F2−6A形アナログ入出力ユニットに対しFX2, FX2Cシーケンサからデータを書込み、 これをア ナログで出力するための命令です。 ●nはアナログ出力のチャンネル番号であり、 n=0または1となります。 S2 D はFX2−2 ● 4EI形特殊アダプタの接続位置によって決まります。 S1・ には8ビットバイナリデータを格納しておきます。 ● FNC92 ANWR 271 外部機器・F2 6.応用命令解説 入出力 チャンネル 番号 《F2シーケンサでは》 F2シーケンサ 《FX2, FX2Cシーケンサでは》 F2-6A 000番 K000∼K001 コネクタ K010∼K013 内 FX2,FX2Cシーケンサ (FX2-24EI) X040 Y030 内 部 400番 K400∼K401 部 要 コネクタ K410∼K413 要 素 素 500番 K500∼K501 コネクタ K510∼K513 増設ケーブル用コネクタ番号 ●F2−6Aのアナログ入出力チャンネル番号 は増設ケーブルのコネクタ番号に応じて上 図のとおりとなっています。 (FX2-24EI) X060 Y040 (FX2-24EI) X100 Y050 F2-6A K000∼K001 K010∼K013 K000∼K001 K010∼K013 K000∼K001 K010∼K013 先頭入出力番号 ●F2−6Aのアナログ入出力チャンネル番号 は上図のとおりすべて同一の扱いとなりま す。 各F2−6Aの区別は先頭入出力番号の 相違によって自動的に判別されます。 入出力番号は、 FX2−24EIの接続位置に 応じて基本ユニットからの連続番号となり ます。上記接続例のばあい、 FX2−24EIを 3台用いています。 ●詳細はF2−6A形アナログ入出力ユニットのユーザーズマニュアルをご参照ください。同マニュ アルの中ではF2シリーズを基本として入出力チャンネル番号が記載されています。 FX2C形シーケンサでのプログラムは複数のF2−6Aが用いられていても、すべて統一的 ●FX2, に次のとおりとなります。 アナログ出力チャンネル K000∼K001 アナログ入力チャンネル K010∼K013 272 外部機器・F2 6.応用命令解説 FNC 93 RMST F2−32RMスタート RM-START 16ビット命令 対象機種 シリーズ名 RMST (連続実行形) 32ビット命令 ― 9ステップ 対 ワード 要素 象 要 素 ビット 要素 機能と動作 K,H n KnX S X KnY KnM KnS T X000 M D ファイルレジスタ V,Z n=0,1 D2・ Y D1 C ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C S FNC 93 RMST S D1 D2・ n X040 Y030 M300 K 0 FX2→F2−32RM スタート指令 F2−32RM→FX2 ステータス情報 先頭入出力番号 ●この命令はF2−32RM形プログラマブルカムスイッチに対してFX2, FX2Cシーケンサからスター ト指令を与えたり、逆にステータス情報を受取るための命令です。 ●nはF2−32RMのプログラム番号(バンク0または1) に応じて0または1となります。 S D 1 ● はFX2−24EI形特殊アダプタの接続位置によって決まります。 D2・ にはステータス情報が次のとおり格納されます。 ● ON OFF M307 M306 M305 M304 M303 M302 正常 正常 CW 常時ON 1.0° START 0.5° STOP S/Wエラー H/Wエラー CCW M301 M300 BANK1 常時OFF BANK0 各ステータスの意味はF2−32RM形プログラマブルカムスイッチのユーザーズマニュアルをご参 照ください。 FNC93 RMST 273 外部機器・F2 6.応用命令解説 《F2シーケンサでは》 《FX2, FX2Cシーケンサでは》 入出力番号 F2シーケンサ F2-32RM 000番 Y000∼Y037 コネクタ BANK 0、1 FX2,FX2Cシーケンサ (FX2-24EI) X040 内 内 F2-32RM Y000∼Y037 Y030 BANK 0、1 部 400番 Y000∼Y037 部 (FX2-24EI) X060 Y000∼Y037 要 コネクタ BANK 0、1 要 Y040 BANK 0、1 素 素 500番 Y000∼Y037 (FX2-24EI) X100 Y000∼Y037 コネクタ BANK 0、1 Y050 BANK 0、1 増設ケーブル用コネクタ番号 ●シーケンサとF2−32RM間のデータの交信 は増設ケーブル用コネクタ番号のちがい によって複数台のF2−3 2RMに対する区別 を行います。 先頭入出力番号 ●シーケンサとF2−3 2RM間のデータの交信 は先頭入出力番号のちがいによって複数 台のF2−32RMに対する区別を行います。 入出力番号は、 FX2−24EIの接続位置に 応じて基本ユニットからの連続番号となり ます、上記接続例のばあい、 FX2−24EIを 3台用いています ●詳細はF2−32RM形プログラマブルカムスイッチのユーザーズマニュアルをご参照ください。 ●同マニュアルの中ではF2シリーズを基本として説明されていますがF2−32RM内のプログラ ムはすべて共通であり、 その出力番号Y000∼Y037バンク番号0、 1を用いて行います。 274 外部機器・F2 6.応用命令解説 D FNC 94 RMWR P RM-WRITE 対 ワード 要素 対象機種 F2−32RM書込み シリーズ名 RMWR D RMWR (連続実行形) RMWR 7ステップ P (パルス実行形) 13ステップ D RMWR P (パルス実行形) 16ビット命令 K,H KnX KnY KnM 32ビット命令 (連続実行形) KnS T C D ファイルレジスタ V,Z 象 要 素 ビット 要素 機能と動作 S1・ X S2 Y D X000 M ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C S FNC 94 RMWR S1・ S2 D M500 X040 Y030 出力禁止情報の書込み 先頭入出力番号 ●この命令はFX2, FX2CシーケンサからF2−32RM形プログラマブルカムスイッチに対して出力 禁止情報を送るための命令です。 S2 D はFX2−2 ● 4EI形特殊アダプタの接続位置によって決まります。 S1・ は出力禁止テーブルであり次の例に示すとおり8進番号で扱われています。 ● RMWR RMWR P D RMWR D RMWR P Y007 M507 Y006 M506 Y005 M505 Y004 M504 Y003 M503 Y002 M502 Y001 M501 Y000 M500 F2−32RMの 出力番号 Y017 M517 Y016 M516 Y015 M515 Y014 M514 Y013 M513 Y012 M512 Y011 M511 Y010 M510 Y027 M527 Y026 M526 Y025 M525 Y024 M524 Y023 M523 Y022 M522 Y021 M521 Y020 M520 例えばM500を ONさせると Y000は出力禁 止となりONす ることがで きません。 Y037 M537 Y036 M536 Y035 M535 Y034 M534 Y033 M533 Y032 M532 Y031 M531 Y030 M530 FX2,FX2Cの補助 リレー番号 FNC94 RMWR 275 外部機器・F2 6.応用命令解説 D FNC 95 RMRD P RM-READ 対 ワード 要素 対象機種 F2−32RM読出し シリーズ名 RMRD D RMRD (連続実行形) RMRD 7ステップ P (パルス実行形) 13ステップ D RMRD P (パルス実行形) 16ビット命令 K,H KnX KnY KnM 32ビット命令 (連続実行形) KnS T C D ファイルレジスタ V,Z 象 要 素 ビット 要素 機能と動作 S X D2・ Y D1 X000 M ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C S FNC 95 RMRD S D1 D2・ X040 Y030 M600 ON/OFF情報の読出し 先頭入出力番号 ●この命令はF2−32RM形プログラマブルカムスイッチの出力のON/OFF状態をFX2, FX2C シーケンサに読出すためのものです。 S D1 はFX2−2 ● 4EI形特殊アダプタの接続位置によって決まります。 D2・ は読出されたON/OFF情報が格納される要素であり、 ● 次の例に示すとおり8進番号で 扱われています。 RMRD RMRD P D RMRD D RMRD P Y007 M607 Y006 M606 Y005 M605 Y004 M604 Y003 M603 Y002 M602 Y001 M601 Y000 M600 Y017 M617 Y016 M616 Y015 M615 Y014 M614 Y013 M613 Y012 M612 Y011 M611 Y010 M610 Y027 M627 Y026 M626 Y025 M625 Y024 M624 Y023 M623 Y022 M622 Y021 M621 Y020 M620 Y037 M637 Y036 M636 Y035 M635 Y034 M634 Y033 M633 Y032 M632 Y031 M631 Y030 M630 FNC95 ●X000がOFFしても D2・ の内容は変化しません。 RMRD 276 F2−32RMの 出力番号 例えばY000が ONであれば M600がONしま す。 FX2,FX2Cの補助 リレー番号 外部機器・F2 6.応用命令解説 FNC 96 RMMN P RM-MONITOR 対 ワード 要素 K,H シリーズ名 16ビット命令 RMMN (連続実行形) 7ステップ RMMN P (パルス実行形) KnX KnY KnM KnS 象 要 素 ビット 要素 機能と動作 対象機種 F2−32RMモニタ T D2・ C 32ビット命令 D V,Z S X Y D1 X000 M ― ファイルレジスタ ― ― ― ― ● ● 備考 FX0 FX0S FX0N FX1 FX2 FX2C S FNC 96 RMMN S D1 D2・ X040 Y030 D100 回転速度または現在角度のモニタ 先頭入出力番号 2RM形プログラマブルカムスイッチに接続されたレゾルバの回転速度 (rpm) ●この命令はF2−3 または現在角度をFX2、 FX2Cシーケンサに読出すためのものです。回転速度か現在角度かは F2−32RMの設定スイッチ#4がOFFかONかで決まります。 S D1 はFX2−2 ● 4EI形特殊アダプタの接続位置によって決まります。 2 D ・ ● は読出された回転速度または現在角のデータが格納される要素です。 D100 8 3 0 回転速度(rpm)のばあい(実際はバイナリ値です) D100 3 5 0 現在角(deg)のばあい(0.5°を切捨てたバイナリ値です) FNC96 RMMN 277 外部機器・F2 6.応用命令解説 FNC 97 BLK P BLOCK 対 ワード 要素 K,H 対象機種 F2−30GMブロック指定 シリーズ名 16ビット命令 BLK (連続実行形) 7ステップ BLK P (パルス実行形) KnX KnY KnM S1・ KnS T C 32ビット命令 D V,Z ― ファイルレジスタ 象 要 素 ビット 要素 機能と動作 S2・ X Y D X000 M S FNC 97 BLK 本命令は、V3.30以上('96年6月以降) から廃止されました S1・ S2・ D K 0 X040 Y030 ― ― ― ― ◆ ◆ 備考 FX0 FX0S FX0N FX1 FX2 V3.30以上で削除 FX2C V3.30以上で削除 FX2,FX2C→F2-30GM ブロック番号0∼31(10進数) 先頭入出力番号 ●この命令はFX2, FX2CシーケンサからF2−3 0GM形パルス出力ユニットに対してそのブロック 番号を指定するためのものです。 S1・ の内容で指定されその値はB ブロック番号は INですがBCD換算で0∼31の範囲が有 効です。 S1・ としてBCDのディジタルスイッチを用いる時は、 ● これをBIN値に変換してからその結果 を指定する必要があります。 (定数Kは自動的にBIN値に変換されますので0∼31をそのまま キーインしてください) D はFX2−2 S2・ ● 4EI形特殊ブロックの接続位置によって決まります。 ●F2−30GMを用いるときは必ずこの命令を使ってください。 FX2CシーケンサからF2−3 0GMに対してブロック番号の指定が不要なばあいは次のとお FX2, りプログラムしてください。 M8000 FNC 97 BLK K 0 X040 Y030 先頭入出力番号 ●FX−1GM形パルス出力ユニットでは、 BLK命令にかわってTO命令を用い、 FX2−24EI形 インタフェースブロックは不要です。 FNC97 BLK 278 外部機器・F2 6.応用命令解説 FNC 98 MCDE P MACHINE CODE 対 ワード 要素 対象機種 F2−30GM Mコード シリーズ名 16ビット命令 MCDE (連続実行形) 7ステップ MCDE P (パルス実行形) K,H KnX S D1 X Y KnY KnM KnS T C 32ビット命令 D V,Z ― ファイルレジスタ 象 要 素 ビット 要素 機能と動作 M S D2 X000 FNC 98 MCDE 本命令は、V3.30以上('96年6月以降) から廃止されました ― ― ― ― ◆ ◆ 備考 FX0 FX0S FX0N FX1 FX2 V3.30以上で削除 FX2C V3.30以上で削除 最下位桁=0←ゼロ S D1 D2 X040 Y030 M500 F2-30GM→FX2,FX2C Mコード信号M 0∼77(8進数) 先頭入出力番号 ●この命令はF2−30GM形パルス出力ユニットからMコード番号M0∼M77をFX2, FX2Cシーケ ンサに送る命令です。 S D1 はFX2−2 ● 4EI形特殊ブロックの接続位置によって決まります。 0GM側でMコード出力命令が実行されるとその値0∼77 (8進数) に応じて入力Xが動作 ●F2−3 しその結果がM500∼M577に8進番号対応で格納されます。 例えばMコード23であればM523がONします。 D2 で指定 ●シーケンサ側とF2−30GM側のMコード番号の対応をわかりやすくするためには されるM、 Sの要素番号の下2桁は00にすることをおすすめします。 ●FX−1GM形パルス出力ユニットでは、 MCDE命令にかわってFROM命令を用います。 FNC98 MCDE 279 外部機器・F2 6.応用命令解説 《F2シーケンサでは》 入出力番号 F2シーケンサ X014∼ X027 内 X414∼ X427 要 Y440∼ Y447 素 F2-30GM 000 Y040∼ Y047 部 X514∼ X527 Y540∼ Y547 《FX2, FX2Cシーケンサでは》 400 500 X000∼X006 X014∼X027 Y040∼Y047 Y000∼Y006 X000∼X006 X414∼X427 Y440∼Y447 Y000∼Y006 X000∼X006 X514∼X527 Y540∼Y547 Y000∼Y006 増設ケーブル用コネクタ番号 ●F2シーケンサおよびF2−30GMそれぞれ のプログラムは上図の要素番号で行われ ます。 両者間の交信信号について、 複数の F2−30GMに対する区別のために増設 ケーブル用コネクタ番号に応じて異なる要 素番号が用いられています。 FX2,FX2Cシーケンサ 内 X044∼ X057 X040 Y030∼ Y037 Y030 部 X064∼ X077 要 Y040∼ Y047 素 X104∼ X117 Y050∼ Y057 X060 Y040 X100 Y050 F2-30GM X 000∼X 006 X□14∼X□27 Y□40∼Y□47 Y 000∼Y 006 X 000∼X 006 X□14∼X□27 Y□40∼Y□47 Y 000∼Y 006 X 000∼X 006 X□14∼X□27 Y□40∼Y□47 Y 000∼Y 006 先頭入出力番号 ●FX2, FX2CシーケンサおよびF2−3 0GMそ れぞれのプログラムは上図の要素番号で 行われます。 ●□の値は0, 4, 5いずれでも使えますが単 純化のため□=0としてください。 ●例えばFX2でY03 7をONするとF2−30GM 0GM のY□4 7がONします。 またこのF2−3 側でX□14をONするとFX2側でX044が ONします。 ●詳細はF2−30GM形パルス出力ユニットのハンディマニュアルをご参照ください。同マニュア FX2側でのプログ ルの中ではF2シリーズを基本として入出力信号が記載されていますので、 ラムを行う時は上図の例にならって要素番号を読換える必要があります。 ●F2−3 0GM側でブロック番号指定を行う時でもFX2シーケンサ側ではFNC97 (BLK)命令をプ ログラムしてください。 280 F2−24E I 6.応用命令解説 6−13. F2機器接続用特殊ブロックの使い方 先頭入出 力番号の 考え方 FX2−24EI形特殊ブロックは、次のようなF2シリーズ用特殊ユニットとFX2, FX2Cシーケンサとの 間で信号を交信するための簡易なインタフェースユニットです。 ●F−16NP/NT形 M−NET/MINIインタフェースユニット ●F2−6A形 アナログ入出力ユニット ●F2−32RM形 プログラマブルカムスイッチ ●F2−30GM形 パルス出力ユニット これらの特殊ユニットとシーケンサ間で信号交信を行うためにはFX2−24EI形特殊ブロックの接 続位置によって決定される先頭入出力番号を明確にする必要があり、 その例を下図で示します。 入力 X000∼X027 X030∼ X040∼ X060∼ X100∼ X037 X057 X077 X117 FX2-24E I形 特殊ブロック 出力 Y000∼Y027 Y030∼ Y040∼ Y050∼ Y037 Y047 Y057 №1 №2 №3 上図の編成例では基本ユニットから近い順に次のような先頭入出力番号となります。 №1(X,Y) =X04 0,Y030 №2(X,Y) =X060,Y040 I/O小計72点 シーケンサ総合計では256点 №3(X,Y) =X100,Y050 ] ①一般の入出力を含め全体として256点以下の範囲で3台まで接続することができます。 ②FX2−24EI形特殊ブロックの占有する入力は16点、出力は8点となります。 ③基本ユニットや増設ユニットから制御電源を供給されますが、 その値は5V5mAとなります。 ●先頭入出力番号は最下位桁が0のXとYを指定します。 (例:X120、 Y070) TO命令で扱いませんので入出力番号の割付けが必要となります。 ●FX2−24EIはFROM、 ●これら特殊ユニットの 端子はシーケンサ基本ユニットの 端子または SG 端子と 互いに接続してください。 281 6.応用命令解説 FX2−24 E I の仕様 282 《入出力点数》 ●入力16点、出力8点、合計24点を占有しま す。 3台まで使えますがFX2, FX2Cシリーズ の最大入出力点数の範囲内でご使用くだ さい。 ●なお特殊ユニット側では、入力16点のうち の12点分と出力の8点を実用しています。 20以前のものは、 ●FX2シーケンサではV1. 基本ユニットから最も遠い位置に接続し、 そ の後に増設ユニットや増設ブロックを接続 しないでください。 V1. 2 0以後のものではこの制約はありません。 ただし、 V2. 10のものでF2−6Aを使用する ばあいは、 I/Oが128点以内の位置にFX2 −24EIを接続してください。 V2. 20以降のものやFX2Cにはこれらの制約 はありません。 F2−24E I 《消費電力》 ●この特殊ブロックは基本ユニットまたは増 設ユニットから供給されます。 その消費電力は5V5mAです。 ●各種特殊ブロックの5V消費電流の合計値 は所定の値以下にする必要があります。 ●一般環境仕様は、シーケンサの基本ユ ニットと同じです。 7. 基本機能の補足事項 7 . 基本機能の補足事項 この章では、 FXシーケンサの基本的な機能のうち特殊要素に関連する項目と、 これまでの解説を補足する事 項を述べます。 7−1.特殊補助リレー,特殊データレジスタの種類と機能 7−2.特殊要素に関連する基本機能 7−3.プログラムフロー制御命令の相互関係 7−4.ASC I I文字配列(参考) 7 283 特殊要素 7.基本機能の補足事項 7−1.特殊補助リレー,特殊データレジスタ一覧 FXシーケンサの特殊要素の種類とその機能は次のとおりです。 なお、 シーケンサのシリーズによっては同一要素番号であっても機能内容が異なるものもありますのでご注意 ください。 [M]、 [D] のように[ ] で囲まれた要素や、未使用要素あるいは記載されていない未定義要素は、 プログラム 上で駆動したり書込みしたりしないでください。 PCステータス (M) 番号・名称 [M]8000 RUNモニタ 動作・機能 対象機種 FX0,0S RUN 入力 FX0N FX1 FX2 FX2C ○ a接点 [M]8001 M8061エラー発生 RUNモニタ b接点 [M]8002 ○ M8000 M8001 イニシャルパルス a接点 [M]8003 ○ M8002 M8003 イニシャルパルス ○ スキャンタイム b接点 [M]8004 エラー発生 M8060∼M8067のどれかがON しているときに動作 →D8004 ○ [M]8005 バッテリ電圧低下 バッテリ電圧異常低下中に動作 [M]8006 バッテリ電圧低下 ラッチ [M]8007 ※1 瞬停検出 [M]8008 ※1 停電検出中 [M]8009 DC24Vダウン − ○ →D8005 バッテリ電圧異常低下後動作保 持 − ○ →D8006 M8007が動作してもD8008時 間以内であればPC運転継続 − ○ →D8007 M8008がON→OFFするとM8000 がOFFする − ○ →D8008 増設ユニット,増設ブロックのどこ かでDC24Vがダウンしていると きに動作 − ○ →D8009 ※1:停電検出時間(D8008) の変更 AC電源 約5ms M8000 RUN スキャンタイム M8007 瞬停 M8008 停電 D8008 10ms 284 停電検出時間 シーケンサの電源がAC200V系のときは、 シーケンスプログラムによってD8 008の内容 を変更して停電検出時間を1 0∼10 0msにす ることができます。 DC24V電源タイプの設定方法、および詳細 は7−2項をご参照ください。 特殊要素 7.基本機能の補足事項 PCステータス (D) 番号・名称 D 8000 ウォッチドッグタイマ レジスタの内容 システムバージョン [D]8002 メモリ容量 FX0,0S FX0N 初期値は右記(1ms単位) (電源ON時システムROMより転送) プログラムによる書換えは、END,WDT 命令実行後有効 [D]8001 PCタイプおよび 対象機種 4…4Kステップ FX2 200ms BCD変換値 FX2: 2 バージョン V1. 0 2 FX1: 1 2…2Kステップ FX1 ○ FX2C 100ms FX0,FX0S,FX0N,FX2Cは、FX2と して表示されます。 − ○ − ○ 8…8Kステップ [D]8003 ※2 メモリ種類 [D]8004 RAM/EEPROM/EPROM内蔵/カセット の別やメモリプロテクトスイッチの ON/OFF状態が格納されます 8 0 6 0 BCD変換値 M8004← エラーM番号 ○ 8060∼8068(M8004 ON時) [D]8005 M8005← バッテリ電圧 3 6 BCD変換値 (0.1V単位) 7 − ○ 初期値 3.0V(0.1V単位) (電源ON時システムROMより転送) − ○ M8007の動作回数が格納され ます。電源断時クリアされます。 − ○ AC電源タイプ:初期値 10ms 詳細別記 − ○ DC24Vがダウンしている基本ユ ニット,増設ユニットのうちの最小 入力要素番号 − ○ バッテリ電圧の現在値(例:3.6V) [D]8006 M8006← バッテリ電圧低下 検出レベル [D]8007 M8007← 瞬停検出 D 8008 ※1 M8008← 停電検出時間 [D]8009 M8009← DC24Vダウン ユニット番号 ※2:メモリ種類(D8003) の内容 00H=オプションRAMメモリ 01H=オプションEPROMメモリ 02H=オプションEEPROMメモリ (プロテクトOFF) 0AH=シーケンサ内蔵メモリ (プロテクトON) 10H=シーケンサ内蔵RAM 285 特殊要素 7.基本機能の補足事項 クロック (M) 番号・名称 対象機種 動作・機能 FX0,0S FX0N FX1 FX2 FX2C M 8010 [M]8011 10msクロック [M]8012 100msクロック [M]8013 1sクロック [M]8014 1minクロック M 8015 リアルタイムクロック M 8016 リアルタイムクロック M 8017 リアルタイムクロック [M]8018 リアルタイムクロック M 8019 リアルタイムクロック 10ms周期で発振 ○ 100ms周期で発振 ○ 1s周期で発振 ○ 1min周期で発振 ○ 計時停止およびプリセット − ○ 時刻読出し表示の停止 − ±30秒補正 − RTCカセット装着検出 − ○ リアルタイムクロック(RTC)エラー − ○ ○ V2.1 以上で 有効 ○ ○ フラグ (M) 番号・名称 [M]8020 ゼロ 動作・機能 対象機種 FX0,0S FX0N 減算結果が負の最大値以下 ボロー になったとき M 8022 FX2 FX2C ○ 加減演算結果が0のとき [M]8021 キャリ FX1 ○ 加算結果の桁上発生時シフト結 果のオーバフロー発生時 ○ M 8023 浮動小数点演算を行うため 小数点演算フラグ のフラグ ○V3.07 − 以上有効 ○ M 8024 M 8025 HSCモード (FNC 53∼55) M 8026 RAMPモード (FNC 67) M 8027 PRモード (FNC 77) M 8028 ※3 [M]8029 命令実行完了 − ○ − ○ ○ V2.1 以上で 有効 − FROM/TO(FNC 78,79)命令実行 10msタイマ切換え 中割込み許可 フラグ − DSW(FNC 72)などの動作完了 時に動作する ○ ○ ○ ○ ※3:FX0, FX0S, FX0Nシーケンサでは、 100msタイマ→10msタイマへの切換え用フラグと して働きます。 286 特殊要素 7.基本機能の補足事項 クロック (D) 番号・名称 [D]8010 スキャン現在値 [D]8011 MINスキャンタイム [D]8012 MAXスキャンタイム レジスタの内容 スキャンタイムの最小値 (0.1ms単位) 0∼59秒 (リアルタイムクロック用) D 8014 0∼59分 D 8015 D 8016 日 D 8017 月 D 8018 FX1 FX2 FX2C M8039駆動時のコンスタントスキャン運転 の待ち時間は含まれません ○ スキャンタイムの最大値 (0.1ms単位) 秒 時 FX0N 0ステップからの累計命令実行 時間(0.1ms単位) D 8013 ※4 分 対象機種 FX0,0S アナログボリューム1 番のアナログ値 0∼23時 (リアルタイムクロック用) 1∼31日 (リアルタイムクロック用) 1∼12月 (リアルタイムクロック用) 西暦年の下2桁 (リアルタイムクロック用) [D]8019 0(日)∼6(土) 曜日 (リアルタイムクロック用) ○ − (リアルタイムクロック用) 年 − ○ − ○ ○ − V2.1 以上で 有効 ○ − ○ − ○ − ○ ※4 :FX0, FX0S, FX0Nシーケンサでは、 アナログボリューム1番のアナログ値(0∼255)が格納さ れています。 7 フラグ (D) 番号・名称 D 8020 入力フィルタ調整 レジスタの内容 対象機種 FX0,0S X00∼X07の入力フィルタ値0∼15 (初期値10ms) D 8021 X10∼X17の入力フィルタ値0∼15 入力フィルタ調整 (初期値10ms) FX0N FX1 FX2 ○ FX2C − ○ − D 8022 D 8023 D 8024 D 8025 D 8026 D 8027 [D]8028 [D]8029 Zレジスタの内容 ○ Vレジスタの内容 ○ 287 特殊要素 7.基本機能の補足事項 PCモード (M) 番号・名称 M 8030 ※5 バッテリLED 消灯指令 M 8031 ※5 非キープメモリ オールクリア M 8032 ※5 キープメモリ オールクリア M 8033 メモリホールド ストップ M 8034 ※5 全出力禁止 動作・機能 M8030を駆動するとバッテリ電 圧が低下しても、PCパネル面 のLEDは点灯しない 対象機種 FX0,0S FX0N FX1 − FX2 FX2C ○ このMを駆動するとY、M,S, T,CのON/OFFイメージメモリやT,C,D の現在値が0にクリアされる 特Dやファイルレジスタはクリアされま せん ○ ○ RUN→STOP時に、イメージメモリや データメモリの内容がそのまま保 持される ○ PCの外部出力接点はすべて OFFとなる ○ M 8035 ※6 強制RUN モード M 8036 ※6 強制RUN 指令 M 8037 ※6 強制STOP M8035,M8036をM8000で駆動 しM8037をX○○で押ボタン駆 動することにより、RUN入力 ボタンとストップボタンX○○によ る2入力RUN/STOPが行えます M8036はプログラミング機器によ る強制操作用です ○ プログラミング機 器による強制 RUNおよび強制 STOPのみが行 えます ○ ○ 指令 M 8038 ※5 RAMファイルレジスタ オールクリア M 8039 コンスタント スキャンモード M8074=ONのとき、M8038=ONに するとD6000∼D7999をクリアし ます。 M8039をONするとPCはD8039 で指定されたスキャンタイムまで 待ってサイクリック演算を行う ※5:END命令実行時に処理 ※6:RUN→STOP時にクリア 288 ○ V3.07 以上で 有効 − ○ ○ →D8039 特殊要素 7.基本機能の補足事項 PCモード (D) 番号・名称 D 8030 レジスタの内容 対象機種 FX0,0S FX0N FX1 FX2 アナログボリューム1番のアナログ値 0∼255の整数値 (D8013と同じ値) − ○ − アナログボリューム2番のアナログ値 0∼255の整数値 − ○ − FX2C [D]8031 [D]8032 [D]8033 [D]8034 [D]8035 [D]8036 [D]8037 7 [D]8038 D 8039 M8039← コンスタント スキャンタイム 初期値0ms(1ms単位) (電源ON時システムROMより転送) プログラムにより書換え可 ○ 289 特殊要素 7.基本機能の補足事項 ステップラダー (M) 番号・名称 M 8040 移行禁止 M 8041 ※6 移行開始 M 8042 スタートパルス M 8043 ※6 原復完了 M 8044 ※6 原点条件 動作・機能 対象機種 FX0,0S FX0N M8040駆動時ステート間の移行が 禁止される FX1 FX2 FX2C ○ 自動運転時にイニシャルステートから の移行ができる スタート入力に対するパルス出力 原点復帰モードの終了ステートで 動作させる ○ FNC60(IST)用運転フラグ 機械原点検出時に動作させ る M 8045 モード切換時に全出力のリセット 全出力リセット禁止 を行わないようにする [M]8046 ※5 STLステート動作 M 8047 ※5 STLモニタ有効 [M]8048 ※5 アナンシェータ動作 M 8049 ※5 アナンシェータ有効 M8047動作中のときS0∼S899の どれかがONしていると動作 ○ ← M8047 この特Mを駆動するとD8040 ∼D8047が有効 ○ → M8049動作中のときS900∼S999 のどれかがONしていると動作 − ○ この特Mを駆動したときに D8049の動作が有効 − ○ → ※5:END命令実行時に処理 ※6:RUN→STOP時にクリア 割込み禁止 (M) (パルスキャッチ) 番号・名称 動作・機能 対象機種 FX0,0S FX0N M8050 (入力割込み) M8051 (入力割込み) M8052 (入力割込み) M8053 (入力割込み) M8054 (入力割込み) I40□禁止 M8055 (入力割込み) I50□禁止 M8056 (タイマ割込み) FNC04(EI)命令実行後、 割込み許可されていて も、このMが働いている 入力割込み またはタイ マ割込み番号について は、個別に割込み動作 が禁止される 例えばM8050がONして いると割込みI00□は 禁止される ○ ○ − M8057 (タイマ割込み) ○ − ○ パルスキャッチとし て動作します 次ページ詳細 I7□□禁止 M8058 (タイマ割込み) I8□□禁止 M8059 290 I010∼I060による割込 み禁止 ○ − I6□□禁止 カウンタ割込み禁止 FX2C ○ I10□禁止 I30□禁止 FX2 ○ I00□禁止 I20□禁止 FX1 − ○ − ○ − ○ − ○V3.07 以上有効 ○ D8040∼ D8047 D8049 M8048 特殊要素 7.基本機能の補足事項 ステップラダー (D) 番号・名称 M8047 → M8047 → M8047 → M8047 → M8047 → M8047 → M8047 → M8047 → レジスタの内容 対象機種 FX0,0S FX0N [D]8040 ※5 [D]8041 ※5 [D]8042 ※5 ONステート番号4 [D]8044 ※5 ONステート番号5 [D]8045 ※5 FX2C ○ ONステート番号2 [D]8043 ※5 FX2 ○ ONステート番号1 ONステート番号3 FX1 ○ ステートS0∼S899のうち動作し ているステートの最も若い番号 をD8040へ格納 つぎのONステート番号をD8041へ 格納 以下順次8点まで最大ステート番 号がD8047へ格納される ○ ○ ○ ONステート番号6 [D]8046 ※5 ○ ONステート番号7 [D]8047 ※5 ○ ONステート番号8 [D]8048 M8049 → [D]8049 ※5 アナンシェータリレーS900∼S999のONス ONステート最小番号 テート最小番号が格納される − ○ ※5:END命令実行時に処理 7 FX0, FX0S, FX0N パルスキャッチ (M) 番号・名称 レジスタ内容 M 8056 パルスキャッチ X00 M 8057 パルスキャッチ X01 M 8058 パルスキャッチ X02 M 8059 パルスキャッチ X03 M805□は対応する入力信号の 立上りでセットされます。 OFFするためにはRST命令を用 います 対象機種 FX0,0S FX0N FX1 ○ − ○ − ○ − ○ − FX2 FX2C 割込み処理の 禁止用として 働きます 前ページ詳細 FX2, FX2Cシーケンサのパルスキャッチ機能は、 M8170∼M8175をご覧ください。 291 特殊要素 7.基本機能の補足事項 エラー検出 (M) 番 号 対象機種 PROG-E シーケンサ LED の状態 FX0,0S 名 称 FX0N FX1 FX2 FX2C [M]8060 I/O構成エラー OFF RUN [M]8061 PCハードエラー 点滅 STOP [M]8062 PC/PP通信エラー OFF RUN OFF RUN [M]8064 パラメータエラー 点滅 STOP ○ → D8064 [M]8065 文法エラー 点滅 STOP ○ → D8065 D8069 [M]8066 回路エラー 点滅 STOP ○ → D8066 D8069 [M]8067 演算エラー ※7 OFF RUN ○ → D8067 D8069 M 8068 演算エラーラッチ OFF RUN M 8069 I/Oバスチェック ※8 − − [M]8063 並列リンクエラー ※7 RS232C通信エラー − ○ → D8060 ○ → D8062 → D8061 ○ − − ○V1.20 以上有効 − ○ → D8063 → D8068 ○ − ○ M8 0 6 0∼M8 0 6 7のどれかがONするとその若い番号がD8 0 0 4へ格納されM8 0 0 4が動作します。 ※7:シーケンサのSTOP→RUN時にクリアされます。 M8068, D8068はクリアされませんの でご注意ください。 ※8:M8069を駆動するとI/Oバスチェックが実行され、エラー発生時はD8061にエラー コード6103が書込まれるとともにM8061がONします。 エラーの 検出タイミ ング 電 源 電源ON後の初回 OFF→ON STOP→RUN時 M8060 I/O構成エラー チェック チェック 演算中 M8061 PCハードエラー チェック − 演算中 M8062 PC/PP通信エラー − − PPから信号受信時 M8063 リンク,通信エラー − − 相手局から信号受信時 チェック チェック プログラム変更時(STOP) プログラム転送時(STOP) − − エラー項目 M8064 パラメータエラー M8065 文法エラー M8066 回路エラー M8067 演算エラー M8068 演算エラーラッチ 292 その他 演算中(RUN) 特殊要素 7.基本機能の補足事項 エラー検出 (D) 番 号 データレジスタの内容 M8060 ← [D]8060 I/O構成エラーの非実装I/O先頭番号 ※9 M8061 ← [D]8061 PCハードエラーのエラーコード番号 M8062 ← [D]8062 PC/PP通信エラーのエラーコード番号 [D]8063 並列リンクエラーのエラーコード番号 対象機種 FX0,0S FX0N FX1 − FX2C ○ ○ − ○ ○V1.20 以上有効 M8063 ← M8064 ← [D]8064 パラメータエラーのエラーコード番号 ○ M8065 ← [D]8065 文法エラーのエラーコード番号 ○ M8066 ← [D]8066 回路エラーのエラーコード番号 ○ M8067 ← [D]8067 演算エラーのエラーコード番号 ※7 ○ M8068 ← ○ RS232C通信エラーのエラーコード番号 ※7 FX2 − D 8068 演算エラー発生ステップ番号ラッチ M8065∼ ← [D]8069 M8065∼7のエラー発生ステップ番号 ※7 M8067 − ○ ○ ※7:シーケンサのSTOP−RUN時にクリアされます。 M8068, D8068はクリアされませんのでご注 意ください。 ※9:プログラムされているI/O番号のユニットやブロックが実装されていないときにM80 60が動作 するとともにD8060にその先頭要素番号が書込まれます。 (例) X020非実装のとき 1 0 2 0 要素番号10∼337 1:入力X 0:出力Y エラー 検出 用特殊要素 の動作関係 エラー検出用の特殊補助リレーと、特殊データレジスタは次の関係で動作しています。 これらの 発生状況は、周辺機器から補助リレーやデータレジスタの内容をモニタしたり、 PC診断機能を 使って知ることができます。 7 D8009 → M8009 DC24Vダウン D8060 → M8060 I/0構成エラー M8069 → I/0 バス チェック D8061 → M8061 PCハードエラー D8062 → M8062 PC/PP通信エラー D8063 → M8063 並列リンクエラー D8004 エラー発生の 特M番号 (若い番号) M8004 エラー発生時 ONします M8073 並列リンクモード M8063 RS232C通信エラー D8064 → M8064 パラメータエラー D8065 → M8065 文法エラー Dの内容を モニタする とエラー コードが 見れます D8066 → M8066 回路エラー D8069 発生ステップ番号 エラー解除後PPより強制 クリアしてください D8067 → M8067 演算エラー M8068 演算エラーラッチ D8068 初回発生ステップ 番号ラッチ 293 特殊要素 7.基本機能の補足事項 エラーコード 一覧 区分 エラー コード エラー内容 例 実装されていないI/Oの先頭要素番号 I/O構成エラー M8060(D8060) 1020 “1 020”のばあい 1=入力X(0=出力Y) 020=要素番号 運転継続 PCハードエラー M8061(D8061) 運転停止 0000 異常なし 6101 RAMエラー 6102 演算回路エラー 6103 I/Oバスエラー(M8069駆動時) 処置方法 実装されていない入力リレー, 出力リレーの番号がプログラム されています。シーケンサは継 続運転しますが、プログラムミ スであれば修正してください。 増設ケーブルの接続が正しく行わ れているかチェックしてください。 0000 異常なし PC/PP通信エラー M8062(D8062) 運転継続 6201 パリティエラー,オーバランエラー,フレーミングエラー 6202 通信キャラクタ不良 6203 通信データのサム不一致 6204 データフォーマットの不良 6205 コマンド不良 プログラミングパネル(PP)あるいはプ ログラム用コネクタに接続された機器 とシーケンサ(PC)間の接続が確実に 行われているかどうかチェックして ください。 0000 異常なし 6301 パリティエラー,オーバランエラー,フレーミングエラー 並列リンク通信 6302 通信キャラクタ不良 アダプタエラー M8063(D8063) 6303 通信データのサム不一致 6304 データフォーマットの不良 運転継続 6305 コマンド不良 6306 監視タイマオーバ 両方のシーケンサの電源がONされて いるか、アダプタとシーケンサ間の接 続、リンクアダプタ間の接続が正しく 行われているかどうかチェックして ください。 0000 異常なし 6401 プログラムのサム不一致 パラメータエラー M8064(D8064) 運転停止 6402 メモリ容量の設定不良 6403 キープ領域の設定不良 6404 コメントエリアの設定不良 シーケンサをSTOPし、パラメータモードで正 しい値を設定してください。 6405 ファイルレジスタのエリア設定不良 6409 その他の設定不良 0000 異常なし 6501 命令−要素記号−要素番号の組合わせ不良 6502 設定値の前にOUT T,OUT Cがない 6503 ①OUT T,OUT Cの後に設定値がない 文法エラー ②応用命令のオペランド数不足 M8065(D8065) 6504 ①ラベル番号が重複している 運転停止 ②割込み入力や高速カウンタ入力が重複している 6505 要素番号範囲オーバ 6509 その他 294 プログラム作成時に命令個々の使 い方の良否をチェックしているもの であり、不良発生時プログラムモード で命令を修正してください。 特殊要素 7.基本機能の補足事項 区分 エラー コード エラー内容 処置方法 0000 異常なし 6601 LD,LDIの連続使用回数が9回以上 6602 ①LD,LDI命令がない。コイルがない。 LD,LDIとANB,ORBの関係不正。 ②STL,RET,MCR,P(ポインタ),I(割込み),EI,DI,SRET,IRET, FOR,NEXT,FEND,ENDが母線につながっていない。 ③MPPを忘れている 6603 MPSの連続使用回数が12回以上 6604 MPSとMRD,MPPの関係不正 6605 ①STLの連続使用回数が9回以上 回路エラー ②STL内にMC,MCR,I(割込み),SRETがある。 M8066(D8066) ③STL外にRETがある。RETがない。 6606 ①P(ポインタ),I(割込み)がない。 運転停止 ②SRET,IRETがない。 ③I(割込み),SRET,IRETがメインプログラム中にある。 回路ブロック全体として命令の組 合せ方が正しくないときやペア となっている命令の関係が正し くないときにこの不良が発生し ます。 プログラムモードにおいて命令の相 互関係が正しくなるように修正 してください。 ④STL,RET,MC,MCRがサブルーチンや割込みルーチンの中にある。 6607 ①FORとNEXTの関係不正。ネスティングが6重以上。 ②FOR∼NEXT間にSTL,RET,MC,MCR,IRET,SRET,FEND,END がある 6608 ①MCとMCRの関係不正 ②MCR NOがない。 ③MC∼MCR間にSRET,IRET,I(割込み)がある 6609 その他 0000 異常なし 6701 ①CJ,CALLの飛び先がない 演算実行中に発生するエラーで あり、プログラムの見直しまた ③FOR∼NEXT間やルーチンプログラムの間に単独のラベルがある は応用命令のオペランドの内容 をチェックしてください。 6702 CALLのネスティングレベルが6以上 文法,回路エラーが発生しなく 6703 割込みのネスティングレベルが3以上 ても、例えば次のような理由で 演算エラーが発生します。 6704 FOR∼NEXTのネスティングが6以上 6705 応用命令のオペランドが対象要素以外 (例)T200Zそのものはエラーで 6706 応用命令のオペランドの要素番号範囲やデータの値がオーバ はないが演算結果としてZ=100 6707 ファイルレジスタのパラメータ設定なしでファイルレジスタをアクセスした であればT300となり、要素番号 オーバになります。 6708 FROM/TO命令エラー 6709 その他(IRET,SRET忘れ,FOR∼NEXT関係不正など) ②END命令以降にラベルがある 7 演算エラー M8067(D8067) 6730 サンプリングタイム(Ts)が対象範囲外(Ts<0) 6732 入力フィルタ定数(α)が対象範囲外(α<0または100≦α) 運転継続 6733 比例ゲイン(Kp)が対象範囲外(Kp<0) PID演算停止 制御パラメー 6734 積分時間(TI)が対象範囲外(TI<0) タの設定値や 6735 微分ゲイン(KD)が対象範囲外(KD<0または201≦KD) PID演算中 6736 微分時間(TD)が対象範囲外(TD<0) にデータエラ 6740 サンプリングタイム(TS)≦演算周期 ーが発生して います。パラメ 6742 測定値変化量オーバ(ΔPV<-32768または32767<ΔPV) ータの内容を 6743 偏差オーバ(EV<-32768または32767<EV) 演算データを チェックして 6744 積分計算値がオーバ(-32768∼32767以外) MAX値として ください。 演算続行 6745 微分ゲイン(KP)オーバによる微分値オーバ 6746 微分計算値がオーバ(-32768∼32767以外) 6747 PID演算結果オーバ(-32768∼32767以外) 295 特殊要素 7.基本機能の補足事項 並列リンク (M) 番 号 名 称 対象機種 FX0,0S FX0N FX1 FX2 FX2C M 8070 並列リンク 親局のときに駆動 ※10 − ○ M 8071 並列リンク 子局のときに駆動 ※10 − ○ [M]8072 並列リンク 運転中にON − ○ [M]8073 並列リンク M8070/M8071設定不良時にON − ○ ※10:STOP→RUN時にクリア サンプリングトレース (M) 番 号 名 称 対象機種 FX0,0S FX0N FX1 FX2 FX2C V3.01 以上有効 ○ M 8074 RAMファイルレジスタ使用モード(停電保持) − M 8075 サンプリングトレース 準備開始指令 − ○ M 8076 サンプリングトレース 準備終了 実行開始指令 − ○ [M]8077 サンプリングトレース 実行中モニタ − ○ [M]8078 サンプリングトレース 実行完了モニタ − ○ [M]8079 トレース回数512回以上でON − ○ [M]8080 [M]8081 [M]8082 [M]8083 [M]8084 [M]8085 [M]8086 [M]8087 [M]8088 [M]8089 [M]8090 [M]8091 [M]8092 [M]8093 [M]8094 [M]8095 [M]8096 [M]8097 [M]8098 M80 75がONするとD80 80∼D809 8で指定されたデバイスのON/OFF状態やデータ内容 を順次サンプリングチェックし、 これをシーケンサ内の特殊なメモリ領域に格納します。 サンプリングデータが512回を越えると、旧データにかわって新データが順次格納されます。 M80 76がONするとD80 75で指定されたサンプル回数のサンプリングを行って実行完了し ます。 サンプリングの周期はD8076の内容により決定されます。詳細は後述のタイムチャートをご 参照ください。 296 特殊要素 7.基本機能の補足事項 並列リンク (D) 番 号 データレジスタの内容 対象機種 FX0,0S [D]8070 並列リンクエラー判定時間 500ms FX0N FX1 FX2 − FX2C ○ [D]8071 [D]8072 [D]8073 サンプリングトレース (D) 番 号 データレジスタの内容 対象機種 FX0,0S FX0N FX1 FX2 FX2C [D]8074 サンプル残り回数 − ○ [D]8075 サンプル回数の設定(1∼512) − ○ [D]8076 サンプル周期《注1》 − ○ [D]8077 トリガ指定《注2》 − ○ [D]8078 トリガ条件要素番号設定《注3》 − ○ [D]8079 サンプルデータポインタ − ○ [D]8080 ビットデバイス番号 No.0 − ○ [D]8081 ビットデバイス番号 No.1 − ○ [D]8082 ビットデバイス番号 No.2 − ○ [D]8083 ビットデバイス番号 No.3 − ○ [D]8084 ビットデバイス番号 No.4 − ○ [D]8085 ビットデバイス番号 No.5 − ○ [D]8086 ビットデバイス番号 No.6 − ○ [D]8087 ビットデバイス番号 No.7 − ○ [D]8088 ビットデバイス番号 No.8 − ○ [D]8089 ビットデバイス番号 No.9 − ○ [D]8090 ビットデバイス番号 No.10 − ○ [D]8091 ビットデバイス番号 No.11 − ○ [D]8092 ビットデバイス番号 No.12 − ○ [D]8093 ビットデバイス番号 No.13 − ○ [D]8094 ビットデバイス番号 No.14 − ○ [D]8095 ビットデバイス番号 No.15 − ○ [D]8096 ワードデバイス番号 No.0 − ○ [D]8097 ワードデバイス番号 No.1 − ○ [D]8098 ワードデバイス番号 No.2 − ○ 7 《注1》 ∼ 《注3》 は次ページを参照ください。 サンプリングトレースはA6GPP, A6PHP, A7PHP,パソコンを用いたばあいに有効であり、 デバイ ス番号(要素番号) をモニタすると特殊な数値になっています。 297 特殊要素 7.基本機能の補足事項 《注1》 D8 0 76 サンプリング 周期 0 0 0 0 2 BCD変換値 サンプリング周期は20msになります(10ms単位) 0 0 0 0 0 END命令実行時にサンプリングが行われます 《注2》 D8 0 77 トリガ指定 ∼ b2 b1 b0 b0 :0=M8076のON時、無条件でサンプリングを実行開始します。 1=M8076がONで次の条件が成立したときにサンプリングを実行開始します。 〔条件〕 D8078で指定された要素の立上り (b1=1) または立下り (b2=1) b1 :0=非実行 1=立上り実行 ともに0または1のときは無条件実行になります。 b2 :0=非実行 1=立下り実行 ) 《注3》 D8 0 78 トリガ条件 要素番号 周辺機器よりX, Y, M, S, T, Cなどの要素番号を指定します。 このデータレジスタの内容をモニタすると特殊な番号となっています。 《タイムチャートの例》 D8075=10回サンプル D8077=立上り条件指定 M8075 M8076 Y010 サンプル 20ms 1 2 3 4 5 6 7 8 9 10 D8075 M8077 D8076=20ms周期 D8078=Y010指定 準備開始指令M8075がONすると、サンプリングは 継続実行されます。 準備終了 (実行開始) M80 76がONし指定条件Y01 0がOFF→ONに変化したときに実行中モニタM80 77がセットされます。 その後D8075で指定された回数のサンプリングを 行って動作が完了します。 このときM8077はリセット され、実行完了モニタM8078がセットされます。 M8078はM8075のOFF時にリセットされます。 M8078 ●M8074を駆動するとサンプリングトレースは無効となり、 RAMファイルレジスタ使用モードとなります。 298 特殊要素 7.基本機能の補足事項 高速リングカウンタ (M) 番 号 名 称 対象機種 FX0,0S M 8099 高速リングカウンタ動作 ※11 FX0N FX1 FX2 − FX2C ○ ※11:M8099動作後のEND命令実行以降、高速リングカウンタD8099が動作します。 高速リングカウンタ (D) 番 号 データレジスタの内容 0∼32,797(0.1ms単位)のアップ動作リング D 8099 カウンタ ※11 対象機種 FX0,0S FX0N − FX1 FX2 FX2C ○ 7 299 特殊要素 7.基本機能の補足事項 特殊アダプタ (M) 番 号 対象機種 名 称 FX0,0S M 8120 通信設定キープ用 ※12 FX0N − ○ [M]8121 RS232C送信待機中 ※10 ※13 − M 8122 RS232C送信フラグ ※10 ※13 − M 8123 RS232C受信完了フラグ ※10 ※13 − V1.20 以上で 有効 [M]8124 RS232Cキャリア受信中 FX1 FX2 FX2C − − ○ ○ − V3.07 以上で 有効 ○ → D8122 ○ → D8123 ○ ○ − − ○ M 8125 [M]8126 グローバル信号 ※14 − [M]8127 オンデマンドハンドシェイク信号 ※14 − M 8128 オンデマンドエラーフラグ ※14 − M 8129 オンデマンドワード/バイト切換え ※14 − ○ − V1.20 以上で 有効 − − − V3.30 V3.30 以上で 以上で 有効 有効 ※10:STOP→RUN時にクリア ※1 2 :M8 1 2 0をONさせると、 キープ用データレジスタD2 5 4, D2 5 5が非キープに変更されます。 なお、 これらのデータレジスタは、一般用のデータレジスタとしてプログラム上で用い ることができます。 ※13:FX(0N)−232ADP形通信アダプタ用 85ADP形通信アダプタ用 ※14:FX(0N)−4 高速テーブル (M) 番 号 対象機種 名 称 FX0,0S M 8130 FNC 55(HSZ)命令テーブル比較モード FX0N FX1 − [M]8131 同上完行完了フラグ − M 8132 FNC 55(HSZ),FNC 57(PLSY)速度パターンモード − [M]8133 同上完行完了フラグ − FX2 FX2C ○ ○ V3.07 以上で 有効 ○ ○ ○ [M]8134 → D8130 → D8131 D8132 D8134 [M]8135 [M]8136 [M]8137 [M]8138 [M]8139 拡張機能 (M) 番 号 機 能 対象機種 FX0,0S M 8160 FNC 17(XCH)のSWAP機能 FX0N FX1 − M 8161 8ビット処理モード ※15 − ※16 − M 8162 高速並列リンクモード指令 − ○ − FX2 FX2C ○ ○ V3.07 以上で 有効 ○ ○V3.07 以上で 有効 ○ ○ [M]8163 [M]8164 [M]8165 [M]8166 M 8167 FNC 71(HKY)HEXデータ扱い機能 − M 8168 FNC 13(SMOV)のHEX扱い機能 − ○ [M]8169 300 ※1 5 :FNC7 6 (ASC) , FNC8 0 (RS) , FNC8 2 (ASCI) , FNC8 3 (HEX) , FNC84 (CCD) に適用 ※16:V1. 20以上で有効 特殊要素 7.基本機能の補足事項 特殊アダプタ (D) 番 号 対象機種 名 称 FX0,0S D 8120 通信フォーマット ※17 − D 8121 局番設定 ※17 − M8122 ← [D]8122 RS232C送信データ残数 ※10 − M8123 ← [D]8123 RS232C受信データ数 ※10 − FX0N ○ V1.20 以上で 有効 FX1 FX2 FX2C − V3.07 以上 ○ − ○V3.30以上有効 − − D 8124 ヘッダ(8ビット)初期値STX − − D 8125 ターミネータ(8ビット)初期値ETX − − ○ ○V3.07 以上で 有効 ○ ○ ○ [D]8126 D 8127 オンデマンド用先頭番号指定 − D 8128 オンデマンドデータ数指定 − D 8129 タイムアウト判定時間 ※17 − ○ V1.20 以上で 有効 − − − ○ ○ V3.30 V3.30 以上で 以上で 有効 有効 ※10:STOP→RUN時にクリア ※17:停電保持 高速テーブル (D) 番 号 対象機種 機 能 FX0,0S FX0N FX1 FX2 FX2C M8130 ← [D]8130 高速比較テーブルカウンタ HSZ − ○ M8132 ← [D]8131 速度パターンテーブルカウンタ HSZ,PLSY − ○ M8132 ← [D]8132 速度パターン周波数 [D]8133 FNC 55(HSZ),FNC 57(PLSY) 下位 M8132 ← [D]8134 速度パターン目標パルス数 [D]8135 FNC 55(HSZ),FNC 57(PLSY) 下位 [D]8136 [D]8137 出力パルス数 FNC 57(PLSY) あき 上位 下位 上位 − − − ○ V3.07 以上で 有効 7 ○ ○ ○ [D]8138 [D]8139 301 特殊要素 7.基本機能の補足事項 パルスキャッチ (M) 番 号 対象機種 機 能 FX0,0S FX0N FX1 M 8170 入力X000 パルスキャッチ ※10 − − M 8171 入力X001 パルスキャッチ ※10 − − M 8172 入力X002 パルスキャッチ ※10 − − M 8173 入力X003 パルスキャッチ ※10 − − M 8174 入力X004 パルスキャッチ ※10 − − M 8175 入力X005 パルスキャッチ ※10 − − FX2 FX2C ○ ○ V3.07 以上で 有効 ○ ○ ○ ○ ○ [M]8176 [M]8177 [M]8178 [M]8179 FX0S, FX0Nシーケンサのパルスキャッチ機能は、 M8056∼M8059をご覧ください。 FX0, ※10:RUN→STOP時にクリア 代用機能 (M) 《高速カウンタ割込み機能》 番 号 機 能 対象機種 FX0,0S FX0N FX1 FX2 FX2C [M]8180 M 8181 I010代用 − − M 8182 I020代用 − − M 8183 I030代用 HSCS(FNC 53)のデスティネーション としてポインタのかわりに、 M 8184 I040代用 この特Mを書込む M 8185 I050代用 − − − − − − M 8186 I060代用 − − ○ ○ V3.07 以上で 有効 ○ ○ ○ ○ ○ [M]8187 [M]8188 [M]8189 《代用命令機能》 番 号 機 能 対象機種 FX0,0S FX0N FX1 FX2 FX2C M 8190 SQR代用 : M8190+MOV − ○ M 8191 FLT代用 : M8191+MOV − ○ M 8192 SORT代用 : M8192+SMOV − M 8193 SER代用 : M8193+RAMP − M 8194 RS代用 : M8194+RAMP − M 8195 CCD代用 : M8195+FMOV − M 8196 ASCI代用 : M8196+FMOV − ○ M 8197 HEX代用 : M8197+FMOV − ○ M 8198 BMOVの(S・)(D・)方向反転 − ○ ○ ○ V3.07 以上で 有効 ○ ○ ○ [M]8199 3 0以下用周辺機器でFX( 2V 3. 0 7以上) またはFX2Cシーケンサの新機能をプログラム FX2V2. する際に用います。 新機能対応にバージョンアップされた周辺機器では不要です。 302 特殊要素 7.基本機能の補足事項 内部アップ/ダウンカウンタ計数方向 (M) 対象機種 番 号 対象カウンタ 番号 M 8200 C200 − ○ M 8201 C201 − ○ M 8202 C202 − ○ M 8203 C203 − ○ M 8204 C204 − ○ M 8205 C205 − ○ M 8206 C206 − ○ M 8207 C207 − ○ M 8208 C208 − ○ M 8209 C209 − ○ M 8210 C210 − ○ M 8211 C211 − ○ M 8212 C212 − ○ M 8213 C213 − ○ M 8214 C214 − ○ M 8215 C215 − ○ M 8216 C216 − ○ M 8217 C217 − ○ M 8218 C218 − ○ M 8219 C219 − ○ M 8220 C220 − ○ M 8221 C221 − ○ M 8222 C222 − ○ M 8223 C223 − ○ M 8224 C224 − ○ M 8225 C225 − ○ M 8226 C226 − ○ M 8227 C227 − ○ M 8228 C228 − ○ M 8229 C229 − ○ M 8230 C230 − ○ M 8231 C231 − ○ M 8232 C232 − ○ M 8233 C233 − ○ M 8234 C234 − ○ 機 能 M8□□□が動作すると、これ に対応するC□□□がダウンカウ ントモードになります。 M8□□□非駆動時はカウンタ はアップカウントで動作します。 FX0,0S FX0N FX1 FX2 FX2C 7 303 特殊要素 7.基本機能の補足事項 高速カウンタの計数方向とモニタ (M) 区 分 1 相 1 入 力 対象機種 番 号 対象カウンタ 番号 M 8235 C235 ○ M 8236 C236 ○ M 8237 C237 M 8238 C238 M 8239 C239 M 8240 C240 M 8241 C241 M 8242 C242 M 8243 C243 M 8244 C244 M 8245 C245 [M]8246 C246 ○ C247 ○ 2 相 [M]8247 1 [M]8248 入 [M]8249 力 [M]8250 [M]8251 2 相 [M]8252 2 [M]8253 入 [M]8254 力 [M]8255 C248 C249 C250 C251 C252 C253 機 能 FX0,0S FX0N FX1 FX2 FX2C ○ M8□□□が動作すると、これ に対応するC□□□がダウンモー ドになります。 M8□□□が非駆動時はカウンタ はアップカウントで動作します。 ○ − − ○ ○ − ○ ○ ○ − − ○ ○ ○ − 1相2入力カウンタ,2相2入力カウンタ のC□□□がダウンモードのとき は、これに対応するM□□□ □がONします。 アップモードのときはOFFしま す。 ○ − ○ ○ − ○ ○ ○ − C254 ○ ○ C255 − ○ 未定義,使用禁止 (M), (D) 次の特殊補助リレーや特殊データレジスタは、 未定義もしくはシステム処理上メーカが専有 している領域です。 したがって、 シーケンスプログラム内では使用しないでください。 未定義および使用禁止の特殊補助リレー,データレジスタ [M]8100∼[M]8109 [D]8100∼[D]8109 [M]8110∼[M]8119 [D]8110∼[D]8119 [M]8140∼[M]8149 [D]8140∼[D]8149 [M]8150∼[M]8159 [D]8150∼[D]8159 [D]8160∼[D]8199 [D]8200∼[D]8255 304 特殊要素の補足 7.基本機能の補足事項 7−2.特殊要素の補足説明 シーケンサの 運転フラグ M8 0 00∼ M8 00 3 《RUNモニタ, イニシャルパルスの利用》 ●シーケンサの運転状態を示すRUNモニタ (M8 0 0 0, M8 0 0 1) を用いて、 命令の駆動条件としたり、 “正常運転中表示” としての外部表示に利用できます。 M8000 Y000 “正常運転中” RUNモニタ(a接点) RUN中は常時ON 常時駆動したい出力 M8001は、 RUN中は常時OFFしています。 ●イニシャルパルス (M8 0 0 2, M8 0 0 3) は、 シーケンサの運転が開始された後、 一瞬 (1演算周期分) だけON、 またはOFFします。 このパルスは、 プログラムの初期化や規定値書込みなどプログラムの初期設定信号として利用 できます。 M8002 FNC40 ZRST D200 D299 イニシャルパルス(a接点) キープ用データレジスタ D200∼D299のクリア M8003は、 RUN後一瞬(1演算周期分) だけOFFします。 ●フラグの動作タイミング RUN入力 M8000 RUNモニタ(a接点) RUN中 STOP中 ON ON M8001 RUNモニタ(b接点) M8002 ON イニシャルパルス(a接点) M8003 イニシャルパルス(b接点) RUN中 7 ON 1演算周期 ON ON ON 305 特殊要素の補足 7.基本機能の補足事項 ウォッチドッグ タイマ時間 D8 000 《ウォッチドッグタイマ時間の変更》 ●ウォッチドッグタイマは、 シーケンサの演算時間を監視し、規定時間内に完了しないときは CPU・E LEDを点灯させ出力をすべてOFFにします。 1 00ms、 または2 0 0msが初期値として電源投入時システムから転送されますが、 これを超えるよ うなプログラムを実行するばあいにはシーケンスプログラムによってその値を変更することがで きます。 M8002 0 イニシャルパルス FNC 12 MOV FNC 07 WDT K300 D8000 ウォッチドッグタイマ時間 300ms ウォッチドッグタイマリフレッシュ FNC07 (WDT) 命令をプログラムしなかったばあいは、 END処理時にD8000の値が有効となります。 ●ウォッチドッグタイマ時間は最大32, 767msまで設定することができますが、 これにともなって 演算異常の検出タイミングが遅れる結果となります。 したがって、 運転に支障ないばあいは初期値 (FX0, FX0S, FX0N, FX1は2 0 0ms, FX2, FX2Cは10 0ms) の状態としてください。 ●位置決め, カムスイッチ, I Dインタフェース, リンク, アナログなどの特殊増設機器の接続台数 が多い構成では、 シーケンサRUN時に行われるバッファメモリの初期化時間が長くなり演算時 間が延びます。 また多数のFROM/TO命令を実行したり、多数のバッファメモリを転送したば あいにも演算時間が延びます。 このようなばあいにもウォッチドッグタイマエラーが発生することがありますので、 先頭ステップ 付近に上記プログラムを入力して、 ウォッチドッグタイマ時間を延ばすか、 FROM/TO命令の 実行タイミングをずらしてください。 ●ウォッチドッグタイマ時間自体の変更とは異なり、 FNC0 7 (WDT) 命令を用いるとシーケンスプロ グラム中においてウォッチドッグタイマを途中リセットすることができます。 特定のシーケンスプログラムの演算時間が長くなるばあいや、特殊増設機器を多く接続したば あいには、 FNC07 (WDT)命令を用いてウォッチドッグタイマをリセットすることをおすすめ します。 詳細は、 FNC07 (WDT) の命令解説をご覧ください。 バッテリの 低下検知 M8 00 5 M8 00 6 《バッテリ電圧の低下検知と外部出力》 メモリバックアップ用リチウムバッテリの電圧低下を検知する特殊要素です。 シーケンサがバッテ リ低下を検知すると、 BATTエラーランプが点灯しますが、外部に対して通報するばあいはシー ケンスプログラムを用います。 M8005 0 Y001 “バッテリ低下” バッテリ低下 M8006は、バッテリ電圧の低下をラッチしています 306 特殊要素の補足 7.基本機能の補足事項 停電検出 時間 FX2Cシーケンサ、 AC電源タイプのばあい》 《FX2, シーケンサの電源がAC200V系のときは、 シーケンスプログラムによってD8008の内容を変更し て停電検出時間を1 0∼100msに変更することができます。 (初期値:10ms) D8 00 8 M8 0 08 M8 0 07 AC電源 M8002 FNC 12 イニシャル MOV パルス K 50 D8008 約5ms M8000 RUN D8008を50msに変更 スキャンタイム M8007 瞬停 M8008 停電 D8008 10ms 停電検出時間 《FX2シーケンサ、 DC24V電源タイプのばあい》 DCタイプの許容瞬停時間は、 5msが保証値となっており、停電検出時間を補正するために、 デー タレジスタD8008にK−4を書き込みます。 D8008は停電検出時間設定用データレジスタであり、 K−4 (マイナス4) を書込むことにより5msと なります。 M8002 FNC 12 イニシャル MOV パルス K-4 D8008 D8008にK-4を書込む 演算時間 (スキャン タイムモニタ) 《シーケンサの演算時間(スキャンタイム)の確認》 シーケンサの演算時間は、 D8010∼D8012に格納されています。 D8010: 現在値 D80 1 0∼ D 8011: 最小値 D8 01 2 D8012: 最大値 これらは、 周辺機器を用いて各要素をモニタすることで値を知るこ とができます。 7 これらの値には、後述のコンスタントスキャンタイムの待ち時間は含まれていません。 内部クロック M8 0 11∼ M8 01 4 《定周期クロックの動作》 次の4種類の内部クロックを備えており、 シーケンサに電源が入っている間は常に発振してい ます。 10ms M8011 (10ms) M8012 (100ms) M8013 (1秒) 100ms 100Hz 注) シーケンサがSTOP中であってもクロックは常に発振 しています。 したがってRUNモニタ (M8 0 0 0) の立上 りとクロックの開始タイミングは同期していません。 10Hz 1s 1min M8014 (60秒) 307 特殊要素の補足 7.基本機能の補足事項 リアル タイムクロック M80 1 5∼ M8 019 《リアルタイムクロックの設定》 ●特殊補助リレー (特M),特殊データレジスタ (特D) の割付け 番 号 M8015 名 称 動作機能 時計停止およ び時刻合せ 番 号 名 称 ONで時計停止 ON→OFFのエッジで時刻が書込まれ、再動 作します。 M8016 時刻表示の停止 ONで時刻表示の停止(計時は動作中) D80 13∼ D8 019 M8017 ±30秒補正 OFF→ONのエッジで秒を補正する。 (秒が0∼29秒のときは、秒を0にする。 また、秒が30∼59秒のときは、分を桁上 げして秒を0にする。) M8018 装着検出 リアルタイムクロックカセット装着時ON M8019 RTCエラー 時刻合せのときに、特殊データレジスタのデータ が、設定範囲をオーバしているとONする。 レジスタの範囲 D8013 秒 0∼59 D8014 分 0∼59 D8015 時 0∼23 D8016 日 1∼31 D8017 月 D8018 年 D8019 曜日 1∼12 00∼99 (西暦下2桁) 0∼6 動作機能 時刻合せ の初期値 を書込ん だり、現 在時刻の 読出しを 行うため に用いま す。 (日∼土に対応) 時計精度:±4 5秒/月(2 5℃時) うるう年補正:あり 《時刻合わせ》 リアルタイムクロックの時刻合せには次の2通りの方法があります。 ①[表示器からの時刻合せ] ユーザ画面の制作例 シーケンサの時刻設定 月: 年: D8018 日: D8017 D8015 時: M8015 セット 変更開始 曜日: D8016 D8014 分: D8019 0∼6 (日∼土) D8013 秒: 時刻設定 M8015 リセット 1) M8015をセット (ON) します。・・・・ 時刻変更開始 2) 数値変更機能などを使い、 各データレジスタに合わせたい日時 (数分先の時刻) を入力します。 3)設定時刻に到達した時点で、 M8015をリセット (OFF) します。・・・・ 時刻変更完了 308 特殊要素の補足 7.基本機能の補足事項 ②[プログラミング機器からの時刻合せ] 1) M8015を強制セット (ON) します。・・・・・ 時刻変更開始 2) データレジスタの現在値変更機能を使い、各データレジスタに合わせたい日時(数分先の時 刻) を入力します。 3)設定時刻に到達した時点で、 M8015を強制リセット (OFF) します。・・・・・ 時刻変更完了 X000(注1) M8015 PLF M 0 内が 設定項目です X001(注2) M 0 FNC 12 MOV K 30 D8013 秒 FNC 12 MOV K 20 D8014 分 FNC 12 MOV K 10 D8015 時 FNC 12 MOV K 25 D8016 日 FNC 12 MOV K 4 D8017 月 FNC 12 MOV K 0 D8018 年 FNC 12 MOV K 2 D8019 曜日 M8017 例 :2000年4月25日(火) 10時20分30秒 ●設定するばあい、正確な時刻の2∼3分ほ ど先の時刻を設定し、 シーケンサに書込 みます。 そして、正確な時刻に達した時点で、入 力スイッチX00 0をON→OFFにすると、 時 刻が設定され、時計動作が始まります。 ●X001をOFF→ONにするたびに、 ±30秒 補正ができます。 補正 ③[時刻合わせの注意事項] ●M8015がOFFの状態では、日時レジスタを変更できません。 必ずM8015をONした状態で新しい日時を入力してください。 ●設定時刻の入力は、現在の時刻より数分先の時刻を設定しておきます。 設定した時刻に到達した時点で、 M8 015をON→OFFに変化させると、新しい時刻が有効とな り計時が始まります。 ●ありえない日時を示す数値が入力されているばあいには、 時刻変更できません。 正しい日時を 再入力して操作してください。 7 《西暦2000年問題に対する対応》 「9−1.西暦2000年問題への対応について」 をご参照ください。 309 特殊要素の補足 7.基本機能の補足事項 FX0Nのフィ ルタ調整 端子 フィルタ X000 0ms 0 1ms 1 D8020の内容に より切替え 初期値は10 D8 020 10 入力 リフレシュ 15 イメージ メモリ 10ms X007 15ms ●X000∼X007はそれぞれ0∼15msのフィルタ 回路を備えており、 どのフィルタ定数を用いる かは特殊データレジスタD8020の内容0∼15 により決定されます。 ●電源OFF→ON後のD802 0の内容は、自動的 に10となっています。 ●次のようなプログラムが実行されると、 フィルタ 定数は0msに変更されます。 M8000 RUNモニタ FNC 12 MOV K 0 D8020 ただし、実際にはこの入力にもハード的にC− Rフィルタが設けられており、 X0 0 0∼X0 03では 50μs、 X004∼X007では200μsとなります。 ●プログラムの途中で何度でも、 この定数変更 を行うことができます。 ●高速カウンタ,入力割込み,パル スキャッチ (M8056∼M8059) を使用するにあたって、本 フィルタ調整を行う必要はありません。 FX0, FX0S のフィルタ 調整 端子 フィルタ X00 0ms 0 1ms 1 D80 20, D8 021 D8020の内容に より切換え 初期値は10 10 入力 リフレシュ 15 イメージ メモリ 10ms X07 15ms ●X00∼X07はそれぞれ0∼15msのフィルタ回 路を備えており、 どのフィルタ定数を用いるか は特殊データレジスタD802 0の内容0∼1 5によ り決定されます。 ●電源OFF→ON後のD802 0の内容は、自動的 に10となっています。 ●次のようなプログラムが実行されると、 フィルタ 定数は0msに変更されます。 M8000 RUNモニタ 端子 フィルタ X10 0ms 1ms 0 D8021の内容に 1 より切換え 初期値は10 10 入力 リフレシュ 15 イメージ メモリ 10ms X17 15ms 310 FNC 12 MOV K 0 D8020 ただし、実際にはこの入力にもハード的にC −Rフィルタが設けられており、 X00∼X05で は50μs、 X06∼X17では200μsとなります。 ●プログラムの途中で何度でも、 この定数変更 を行うことができます。 ●入力X10∼X17についても同様ですが、特殊 データレジスタはD8021となります。 ●高速カウンタ,入力割込み,パルスキャッチ (M8056∼M8059) を使用するにあたって、本 フィルタ調整を行う必要はありません。 特殊要素の補足 7.基本機能の補足事項 BATT. V LED 消灯指令 M8 0 30 《バッテリレス運転とBATT. V LED消灯指令》 (FX1, FX2, FX2C) プログラムメモリとしてFX−EEPROM−4,8やFX−EPROM−8を用いているときで、 しかもキー プメモリを用いず、停電保持ステートやリアルタイムクロックを使わない用途ではバッテリや大容 量コンデンサは不要となります。 なお、バッテリレス運転を行うばあいは、運転開始時にメモりバックアップ領域の要素をクリアす るための命令をプログラムの先頭に入力してください。 メモリバックアップ領域クリアのプログラム例(パラメータのラッチ範囲設定が初期値のばあい) M8000 M8030 バッテリLED消灯 RUNモニタ M8002 イニシャル パルス M1535 補助リレー (M1023) FNC 40 ZRST M500 FNC 40 ZRST S500 S899 ステート FNC 40 ZRST T246 T249 タイマ (FX1は不要) FNC 40 ZRST C100 C199 (C135) カウンタ FNC 40 ZRST C220 C255 (C235) (C254) カウンタ FNC 40 ZRST D200 D999 (D100) (D127) データレジスタ ( )内はFX1の要素番号です。 注:特殊データレジスタD8 12 0 (通信フォーマット) およびD8 12 1 (局番設定) , D8 12 9 (タイムアウト判 定時間) は、 バッテリバックアップ要素となっています。 該当機能を用いるばあいには、上記と同様にリセットし、その後プログラムで設定値を転送 してください。 7 《M8031 (非キープメモリオールクリア), M8032 (キープメモリオールクリア)》 クリア指令 要素番号 クリア要素 ●入力リレー(X),出力リレー(Y),一般用補助リレー(M),一般用ステート(S)の接点イメージ ●タイマ(T)の接点,計時コイル ●一般用カウンタの接点,計数コイル,リセットコイル M 8031 (非キープエリア) ●一般用データレジスタ(D)の現在値レジスタ ●タイマ(T)の現在値レジスタ ●一般用カウンタ(C)の現在値レジスタ ●キープ用補助リレー(M),キープ用ステート(S)の接点イメージ ●積算タイマ(T)の接点,計時コイル M 8032 (キープエリア) ●キープ用カウンタと高速カウンタの接点,計数コイル,リセットコイル ●キープ用データレジスタ(D)の現在値レジスタ ●積算用と1ms用タイマ(T)の現在値レジスタ ●キープ用カウンタと高速カウンタの現在値レジスタ 《M8038 (RAMファイルオールクリア)》 要素番号 M 8038 (RAMファイル) クリア要素 ●RAMファイルレジスタ(D6000∼D7999) 311 特殊要素の補足 7.基本機能の補足事項 メモリ ホールド ストップ M8 03 3 全出力の 禁止指令 《STOP中の出力保持》 特殊補助リレーM8033を駆動しておくと、 シーケンサのRUN→STOP後もRUN中の出力状態を そのまま保持しています。 たとえばシーケンサでヒータを駆動しているようなばあい、 ヒータやその他の機器を駆動したまま で、 シーケンサをSTOPし、 プログラムの変更を行ってから再運転することができます。 《出力リレー (Y)の全停止》 M8 034を駆動すると出力ラッチメモリがクリアされることにより全出力リレー (Y) がOFFとなり、 シー ケンサはイメージメモリ上で運転されます。 M8 03 4 M8034 全出力禁止(イメージRUN) 《RUN/STOP入力の独立操作》 (FX1, FX2, FX2C) FX1, FX2, FX2CシリーズのRUN/STOP入力は、 RUN入力ONでRUN、 RUN入力OFFでSTOP となっています。 しかし、 RUN, STOPそれぞれの押しボタンスイッチでシーケンサの運転/停止を行いたいとき M80 3 5∼ (内蔵RUN/STOPスイッチはOFF側) M8 037 は次の要領によります。 強制 RUN/STOP STOP ※1 STOP用の入力はX001以外の任意の 入力を用いることができます。 STOP RUN RUN M8000 COM X001 シーケンサ M8035 強制RUNモード M8036 強制RUN X001 ※1:RUNスイッチとSTOPスイッチを同 時にONするとRUN入力が優先し ますので図に示すインタロックを 設けてください。 M8037 強制STOP シーケンサには、このようなプログラムをしておきます。 《周辺機器によるRUN/STOP》 (FX0, FX0S, FX0N, FX1, FX2, FX2C) ●RUN入力OFFの状態でも周辺機器の強制ON/OFF操作によりM8035, M8036をONさせる とシーケンサはRUNになります。 (内蔵RUN/STOPスイッチはOFF側) ここでM8037を強制ONさせるとシーケンサはSTOPします。 ●RUN入力がONまたは内蔵RUN/STOPスイッチがRUN側のままであっても、 FX−10P/F X20P (HPP) をシーケンサに接続し、書込キーを押したままでシーケンサの電源をONすると、 シーケンサはSTOPのままであり、 プログラムが行えます。 プログラム後、再度電源のみをOFF→ONするとシーケンサはRUNになります。 312 特殊要素の補足 7.基本機能の補足事項 コンスタント スキャン モード M8 0 39 D8 03 9 《演算処理時間の一定化》 特殊補助リレーM8039を駆動し、 データレジスタD8039に目的のスキャンタイム (1ms単位) で書 込んでおくと、 シーケンサの演算周期はこの値以下にはなりません。 すなわち演算が早く終わったばあい、残り時間を休止してから0ステップへ戻ります。 M8000 M8039 コンスタントスキャンモード RUNモニタ FNC 12 MOV P K 20 D8039 コンスタントスキャンタイム 20msに設定 FNC6 7 (RAMP) , FNC71 (HKY) , FNC74 (SEGL), FNC75 (ARWS) , FNC7 7 (PR) などスキャン と同期して実行される命令を用いるときは、 このコンスタントスキャンモードを用いるか、 またはタ イマ割込みで定時間隔で駆動することをおすすめします。 特にFNC71 (HKY)命令では、 キー入力のフィルタによる応答おくれがありますので、スキャンタ イムは20ms以上にして用いる必要があります。 注) コンスタントスキャンモードで指定した時間は、 D8010∼D8012のスキャンタイム表示時間に は含まれません。 ステート間の 移行禁止 M8 0 40 《STL命令,SFC図によるプログラムのステート制御》 M8040を駆動すると、移行条件が整っていてもステート移行は行われません。 なお、停止したス テート内の出力はそのまま動作を継続しています。 ステート内の出力リセットにつきましては、 4− 4項をご覧ください。 7 313 特殊要素の補足 7.基本機能の補足事項 シーケンサの基本ユニット間で並列リンクによるデータ転送を行うことができます。 並列リンク 機能 M80 7 0∼ M8 073 D8 070 《FX2, FX2Cシリーズの伝送信号》 FX2/FX2C/ FX2N/FX2NC M800∼M899 M900∼M999 M8000 M8 16 2 M8070 親局 D490∼D499 D500∼D509 自動交信 自動交信 親局ではM8070を駆動します 伝送信号 :親局→子局 M800∼M899 (100点) D490∼D499 (10点) M800∼M899 FX2/FX2C/ FX2N/FX2NC M900∼M999 D490∼D499 D500∼D509 M8000 M8071 子局 子局ではM8071を駆動します 子局→親局 M900∼M999 (100点) D500∼D509 (10点) 《FX0Nシリーズの伝送信号》 FX0N M400∼M449 M450∼M499 M8000 M8070 親局 D230∼D239 D240∼D249 親局ではM8070を駆動します 伝送信号 314 :親局→子局 M400∼M449 (50点) D230∼D239 (10点) 自動交信 自動交信 FX0N M400∼M449 M450∼M499 D230∼D239 D240∼D249 M8000 M8071 子局 子局ではM8071を駆動します 子局→親局 M450∼M499 (50点) D240∼D249 (10点) 特殊要素の補足 7.基本機能の補足事項 《交信所要時間》 往復で70+親局の演算周期+子局の演算周期(ms) 《並列リンク機能の交信タイミング》 子局シーケンサ M8071駆動 親局シーケンサ M8070駆動 ① END 入出力リフレッシュ ② PRUN命令 ③ END 入出力リフレッシュ 交信完了 シーケンサ/アダプタ END 入出力リフレッシュ ①′ PRUN命令 ②′ END 入出力リフレッシュ ③′ 親局アダプタ 間のデータ転送 M800∼M899 D490∼D499 ④リンク 交信 交信完了 子局アダプタ シーケンサ/アダプタ 間のデータ転送 END 入出力リフレッシュ ⑤リンク 交信 M900∼M999 D500∼D509 交信完了 シーケンサ/アダプタ ⑥ END 入出力リフレッシュ 親局アダプタ 間のデータ転送 ●①のEND命令で入出力のリフレッシュが行われ、 その入力情報に基づいて②でPRUN命令 が実行されます。 その結果は③のEND命令実行時にアダプタに転送されます。 7 ●親局→子局アダプタの交信完了(約35ms)後の初回の子局END命令実行時③´に子局アダ プタ←→子局シーケンサ間のデータ転送が行われます。 ●子局から親局に対しても同様であり、一往復のデータ交信には35ms×2+親局演算周期+子 局演算周期の時間がかかります。 《拡張機能》M8162 (高速並列リンクモード) FX2は、 V3. 07以上で対応 親局 M8070 M8000 RUN モニタ 両局シーケンサ内で、特M8162を 駆動しておくと2ワード交信モードと なり、交信時間は70→20msに短縮 されます。 M8162 子局 M8000 RUN モニタ M8071 M8162 自動交信 伝送信号 FX2/FX2C:親局→子局 D490, D491 (2点) FX0N :親局→子局 D230, D231 (2点) 子局→親局 D500, D501 (2点) 子局→親局 D240, D241 (2点) 315 7.基本機能の補足事項 《対応する通信アダプタ》 ・FX2, FX2C用 :FX2−4 0AP (光ファイバ用) FX2−4 0AW(ワイヤ用) ・FX0N用 :FX0N−4 85ADP ・FX2N用 :FX2N−485BD FX2N−CNV−BD+FX0N−485ADP ・FX2NC用 :FX0N−4 85ADP 《伝送距離》 10∼500m 伝送距離は、通信アダプタの種類、組み合わせにより異なります。 《技術資料》 「9−2. FXシーケンサの通信, データリンク機能の概要」 を参照してください。 316 特殊要素の補足 7.基本機能の補足事項 《短時間パルスのキャッチ》 FX2Cシーケンサのばあい ●FX2, FNC04 (EI)命令実行後に、入力リレーX000∼X005がOFF→ONに変化すると、特殊補助リ レーM8170∼M8175が割込み処理でセットされます。 〈FX2, FX2C〉 入力を再度取込むためには、 セットされた要素をプログラムによってリセットする必要があります。 M8 1 70∼ パルスキャッチ動作は、個別の割込み禁止用補助リレーM8050∼M8055の動作とは無関係に M8 17 5 実行されます。 FX0S, 〈FX0, FNC 04 EI FX0N〉 X000の立上り EI M8 0 56∼ を検出し、割 50μs以上 込みでセット M8 05 9 X000(入力) M8170 Y000 パルスキャッチ 機能 M8170 X002(リセット) X002 RST M8170 リセット入力 ●FX0, FX0S, FX0Nシーケンサのばあい 入力リレーX000∼X0 03がOFF→ONに変化すると、 特殊補助リレーM8 056∼M80 59が割込み 処理でセットされます。入力を再度取込むためには、 セットされた要素をプログラムによってリ セットする必要があります。 なお、 FX0, FX0S, FX0NシーケンサではFNC04 (EI)命令は不要です。 M8057 X01の立上りを検出 し、割込みでセット Y000 50μs以上 X001(入力) M8057 X002 パルスキャッチ入力 X000 X001 X002 X003 X004 X005 RST M8057 X002(リセット) 7 パルスキャッチリレー FX2,FX2C FX0,FX0S,FX0N M8170 M8056 M8171 M8057 M8172 M8058 M8173 M8059 M8174 − M8175 − 317 特殊要素の補足 7.基本機能の補足事項 0 7以上およびFX2Cシーケンサで追加された新命令に対応していない旧バー FX2シーケンサV3. ジョンの周辺機器から、追加命令を入力するためには、 補助リレーと既存命令を組合わせた代用 代用機能 機能を用います。 なお、 これらの周辺機器につきましては、バージョンアップ処理によって、新命令対応に変更され M81 8 1∼ るこ とをおすすめします。 M8 186 D81 90∼ D8 198 《代用命令一覧》 新機能 特殊補助リレー 代用命令 対象要素 ファイルレジスタへの書込み FNC 15 FNC 15 BMOV S・ D・ n BMOV 開平演算 FNC 48 SQR FNC 12(MOV) FNC 49 FLT FNC 49 FLT M8198+ S・ はファイルレジスタのみ FNC 15 n はK,Hのみ (BMOV) D・ はデータレジスタのみ M8190+ FNC 48 SQR 浮動小数点 S・ D・ FNC 12 (MOV) M8191+ S・ D・ FNC 12 FNC 12(MOV) (MOV) D・ にはI0□0(□=1∼6) 高速カウンタ割込み FNC 53 FNC 53 HSCS S1・ S2・ FNC 53 (HSCS) D・ HSCS サーチ命令 FNC 61 SER データ整列 FNC 69 SORT RS-232C送受信 FNC 61 SER S1・ FNC 69 SORT FNC 83 HEX チェックコード FNC 84 CCD n FNC 67 (RAMP) m1 m2 D・ FNC 13(SMOV) RS ASCII→HEX変換 D・ FNC 82 ASCI S・ m D・ S2・ D・ はDのみ n はK,Hのみ n FNC 13 n はK,Hのみ n M8194+ S・ はDのみ FNC 67 m はDのみ (RAMP) n はK,Hのみ M8196+ S・ D・ n FNC 16 (FMOV) M8197+ S・ D・ n FNC 16(FMOV) FNC 84 CCD S1・ (SMOV) FNC 16(FMOV) FNC 83 HEX 32ビット命令,パルス実行は不可 M8192+ S・ FNC 67(RAMP) ASCII S2・ FNC 67(RAMP) FNC 80 FNC 82 のかわりにM8181∼M8186を 指定 M8193+ FNC 80 RS HEX→ASCII変換 代用命令の使用条件 FNC 16 D・ はV,Z不可 (FMOV) M8195+ S・ FNC 16(FMOV) D・ n FNC 16 はK,Hのみ n (FMOV) 新命令を入力する際は、特殊補助リレーをセットした後、代用命令各オペランドを新命令の内容に読み換 えて入力してください。 (詳細は次ページ) 各オペランドの対象要素につきましては、新命令の解説ページをご覧ください。 318 特殊要素の補足 7.基本機能の補足事項 《代用プログラム例》 X010 SET FNC 15 BMOV X011 FNC 15 BMOV X012 SET FNC 12 MOV SET FNC 12 MOV M8023 FNC 20 D ADD SET FNC 12 MOV X012 M8023 M8198 BMOV方向反転フラグ(必ずセット命令としてください) S・ D・ n D1000 D100 K 10 S・ D・ n D1100 D200 K 5 M8191 D 10 M8191 D 14 データレジスタ ファイルレジスタ (D 100∼D 109)→(D1000∼D1009) D・ にファイルレジスタを指定す 既存周辺機器では S・ 側に入力しM8 ることができないため 198によっ て転送方向を反転させます。 (D1100∼D1104)→(D 200∼D 204) これが正常な転送方向です FLT命令代用フラグ(必ずセット命令としてください) D 12 (D 10)→(D 13, D 12) BIN整数 2進フロート値 FLT命令代用フラグ(必ずセット命令としてください) D 16 (D 14)→(D 17, D 16) BIN整数 2進フロート値 FLT演算用フラグ D 12 M8191 D 18 D 16 7 D 18 (D 13, D 12) + (D 17, D 16)→(D 19, D 18) 2進フロート値 2進フロート値 2進フロート値 FLT命令用代用フラグ(必ずセット命令としてください) D 20 (D 19, D 18)→(D 20) 2進フロート値 BIN整数 M8023が駆動されていますので、変換方向が反対になっています。 M8023をOFFすると、 これ以降の演算は整数演算となります。 319 プログラムフロー 7.基本機能の補足事項 7−3. プログラムフロー制御命令の相互関係 MC−MCR命令とCJ命令の相互関係については、 FNC00 (CJ)の命令解説で詳述しましたが、 その他各種 プログラムフロー制御命令について相互の関連を以下に示します。 下表中で は包含関係にあるばあい、 は区間が前後に重複しているばあいを示します。 上列の命令 上列の命令 左列の命令 左列の命令 例1 MC ― CJ ― P ― MCR 上列 左列 MC-MCR 8重 例2 MC ― CJ ― MCR ― P CJ-P EI-DI FOR-NEXT STL-RET 例1 MC-MCR 例2 (6607) (6605) CJ-P EI-DI (6607) 5重 (6607) FOR-NEXT (6607) ※2 (6605) 1つの STL内 (6605) (6607) STL-RET (6606) (6607) (6606) P-SRET (6608) (6607) (6606) (6605) (6606) I-IRET (6606) (6607) (6606) (6607) (6605) (6607) (6605) (6607) (6605) FEND-END (6608) (6701) ※1 O-FEND (6608) O-END (FENDなし) 320 (6608) (6701) ※1 プログラムフロー 7.基本機能の補足事項 ○ :問題なく使える組合わせです。 × :使用禁止の組合わせで( )内はエラー番号を示します。 △ :使用禁止ではないが、動作が複雑となりますのでなるべく使わないことをおすすめする組合わせです。 P-SRET I-IRET FEND-END 備 考 (6608) (6608) (6608) ※1 DI忘れの状態となります。 エラーではありません。 (6606) (6606) (6608) (6701) ※1 ※2 FOR FOR NEXT NEXT 実線のような動作になります。 (6607) (6607) ※3 最初のFENDやENDが有効になり、 意図したプログラムになりません。 (6607) エラーではありません。 (6701) (6607) (6607) (6605) (6605) (6605) (6606) (6606) (6605) (6606) (6606) (6606) (6606) (6606) (6606) 一部の例外を除き包含関係にある命令の組合せ (6709) は可能です。 ただし、次の例外にご注意ください。 (6709) ①MC−MCRはFOR−NEXT, STL−RET,P−SRET, (6606) I−RET中に使えません。 (6606) (6606) ②STL−RETはFOR−NEXT, (6606) P−SRET,I−IRET中に使えません。 ※3 (6709) (6709) ※3 (6606) (6606) ※3 (6709) (6606) ※3 (6606) (6606) ※3 (6709) (6706) ※3 7 ③MC−MCR,FOR−NEXT, P−SRET,I−IRET命令間を I,IRET,SRET, FEND,ENDなどの命令でさえぎっては なりません。 321 ASC I Iコード表 7.基本機能の補足事項 7−4. ASC I I文字配列 (参考) 応用命令FNC76 (ASC), FNC82 (ASCI) または特殊補助リレーD8124 (ヘッダ), D8125 (ターミネータ) などで 扱われるASCI Iコードは次表のとおりです。 《ASC I Iコード表(7ビットコード, 16進表現)》 16進 0 1 2 3 4 5 6 7 0 NUL DLE SP 0 @ P ` p 1 SOH DC1 ! 1 A Q a q 2 STX DC2 ” 2 B R b r 3 ETX DC3 # 3 C S c s 4 EOT DC4 $ 4 D T d t 5 ENQ NAK % 5 E U e u 6 ACK SYN & 6 F V f v 7 BEL ETB ’ 7 G W g w 8 BS CAN ( 8 H X h x 9 HT EM ) 9 I Y i y A LF SUB * : J Z j z B VT ESC + ; K [ k { C FF FS , < L \ l ¦ D CR GS − = M ] m } E SO RS . > N ^ n ∼ F SI US / ? O _ o DEL 《ASC I Iコードの例》 322 10進数 ASCII (16進数) 英 字 ASCII (16進数) 英 字 ASCII (16進数) コード ASCII (16進数) 0 30 A 41 N 4E STX 02 1 31 B 42 O 4F ETX 03 2 32 C 43 P 50 3 33 D 44 Q 51 4 34 E 45 R 52 5 35 F 46 S 53 6 36 G 47 T 54 7 37 H 48 U 55 8 38 I 49 V 56 9 39 J 4A W 57 K 4B K 58 L 4C Y 59 M 4D Z 5A 8. バージョ ンアップ経歴と関連情報 8 . バージョ ンアップ経歴と関連情報 FXシーケンサ本体のバージョンアップ内容とこれらに関連する周辺機器の対応などを述べます。 8−1.シーケンサのバージョンアップ経歴 8−2.周辺機器の対応 8−3.バージョンアップ関連情報 8 323 8.バージョンアップ経歴と関連情報 8−1. シーケンサのバージョンアップ経歴 FX0, FX0S シーケンサ FX0N シーケンサ バージョンNo. バージョンNo. V1.10以上 V1.20以上 変更内容 本マニュアル作成時点は、バージョンアップによる経歴変更はありま せん。 変更の内容 ① RUN中書込み機能の追加 ① FNC 80(RS),FNC 82(ASCI),FNC 83(HEX),FNC 84(CCD) 命令を追加 ② FX0N-232ADP形RS232アダプタの接続機能追加 周辺機器の対応と参照項目 周辺機器の対応と参照項目 周辺機器側が対応している必 要あり ①,②は周辺機器側が対応して いる必要あり ③ FX0N-485ADP形RS485アダプタの接続機能追加 V2.00以上 FX1 シーケンサ 324 バージョンNo. ① 簡易PC間リンク機能の追加 変更内容 本マニュアル作成時点は、バージョンアップによる経歴変更はありま せん。 周辺機器の変更は不要 周辺機器の対応と参照項目 8.バージョンアップ経歴と関連情報 FX2 シーケンサ バージョンNo. V2.1以上 ('91年4月以降) 変更の内容 ① 特殊増設機器用のデータ転送命令,FNC 78(FROM), FNC 79(TO)命令を追加 周辺機器の対応と参照項目 ② リアルタイムクロック機能カセットへの対応 ①∼③は周辺機器側が対応し ている必要あり ③ RUN中書込み機能の追加 ④ 最大入出力点数128点→256点への拡張とDC24Vサービス電 流およびDC5V電源容量アップ ① 基本命令,応用命令の演算速度短縮と機能向上 ② 補助リレー(M),入力リレー(X),出力リレー(Y),データレジスタ(D), ファイルレジスタ(D)のデバイス点数拡大 ③ FNC 48(SQR),FNC 49(FLT),FNC 61(SER), V3.07以上 ('94年11月以降) FNC 69(SORT),FNC 80(RS),FNC 82(ASCI), FNC 83(HEX),FNC 84(CCD)命令を追加 ④ FX-232ADP形RS232Cアダプタの接続機能追加 ②∼④は周辺機器側が対応し ている必要あり。ただし、③,④ については未対応の周辺機器 であっても代用命令で使用可 能 ⑤ 基本ユニットに内蔵RUN/STOPスイッチを追加 ① FNC 88(PID)命令を追加 V3.30以上 ('96年6月以降) FX2C シーケンサ バージョンNo. V3.30以上 ('96年6月以降) ② FX-485ADP形RS485アダプタの接続機能追加 ③ F2シリーズシーケンサ用特殊増設機器の生産中止にともない、 次の応用命令を削除 FNC 90(MNET),FNC 91(ANRD),FNC 92(ANWR), FNC 97(BLK),FNC 98(MCDE) 変更内容 ①のみ周辺機器側が対応して いる必要あり。 周辺機器の対応と参照項目 FX2シーケンサのV3.30以上の変更内容と同一です。 上記FX2シーケンサ、V3.30以上と同 なお、V3.30未満のすべてのFX2Cシーケンサの機能は、V3.07のFX2 一内容。 シーケンサと同一です。 8 325 8.バージョンアップ経歴と関連情報 8−2.周辺機器の対応 対応一覧 シーケンサの各バージョンアップに対応する周辺機器のバージョン№は次表のとおりです。 表中に示すバージョン№以上であれば、追加機能に対応しています。 なお、 この表はソフトウェア の最新バージョンを示すものではありません。 【記号】 「V2. 00↑」 :V2. 00以上で対応 「X」 :対応機能なし 「−」 :関係なし FX2シーケンサのバージョン№ FX0Nシーケンサのバージョン№ ソフトウェア形名 HPP FX-10P プログラミング FX-20P(FX-20P-MFXB) プログラミング V2.10の追加機能 V1.20の 追加機能 V1.10の 追加機能 (RUN中書込) V3.30の 追加機能 V3.07の 追加機能 V2.00↑ × V2.00↑ V2.00↑ × V1.00↑ V1.00↑ V3.00↑ × V3.00↑ V3.00↑ × V2.10↑ V1.00↑ RUN中書込 FROM/TO命令 時計カセット I/O 256点 周 SW1GP-GPPFX プログラミング V3.10↑ V3.10↑ V3.00↑ V3.00↑ V2.00↑ V2.00↑ V1.00↑ 辺 SW1GP-SFCFX プログラミング V2.00↑ × V2.00↑ V2.00↑ × V1.10↑ V1.00↑ V1.00↑ − V1.00↑ V1.00↑ − V1.00↑ V1.00↑ V1.00↑ − V1.00↑ V1.00↑ − V1.00↑ V1.00↑ SW1GP-GPPFFX A6GPP F1,F2→FXプログラム変換 A6PHP SW1GP-FXPCIF 器 周辺機間プログラム転送 機 の SW1GP-FXCADIF CADインタフェース V1.10↑ − V1.10↑ V1.10↑ − V1.00↑ V1.00↑ バ FX-MEM1GP-GPPFX 高速立上げメモリカード V3.00↑ × V3.00↑ V3.00↑ V2.10↑ V2.10↑ V2.10↑ V1.10↑ V1.10↑ V1.00↑ V1.00↑ V1.00↑ V1.00↑ V1.00↑ V2.10↑ V2.10↑ V2.00↑ V2.00↑ V1.00↑ V1.00↑ V1.00↑ SW1HX-GPPFX A7HGP プログラミング A7PHP SW1RX-GPPFX ジ プログラミング | ョ SW1PC-FXGP/98-5,3 プログラミング PC-9800 NEC V3.10↑ V3.10↑ V3.00↑ V3.00↑ V2.00↑ V2.00↑ V1.00↑ ン SW1PC-FXGP/AX-3 プログラミング MAXY 三菱 V3.00↑ × V3.00↑ V3.00↑ V2.00↑ V2.00↑ V1.00↑ № パソコン SW1PC-FXGP/J3-3 プログラミング J3100 東芝 V2.00↑ × V2.00↑ V2.00↑ V1.00↑ V1.00↑ V1.00↑ SW1PC-FXGP/V-3 プログラミング DOS/V V1.10↑ V1.10↑ V1.00↑ V1.00↑ V1.00↑ V1.00↑ V1.00↑ SW0PC-FXGP/WIN プログラミング Windows V1.00↑ V1.00↑ V1.00↑ V1.00↑ V1.00↑ V1.00↑ V1.00↑ GP-80MFXA プログラミング × × × × × V1.10↑ V1.00↑ GP-80 326 (FX2Cシーケンサは、FX2シーケンサのV3.07以上と同一です) 8.バージョンアップ経歴と関連情報 8−3.バージョンアップ関連情報 FX2 (V3. 07以上), FX2CシリーズシーケンサはFX2 (V2. 30以上) シリーズシーケンサに比べて、 次のような新命令が追加されています。 また、 FX2 (V3. 07以上) , FX2CではFX2 (V2. 30以下) シ リーズの命令の一部が高機能化されています。 FX2, FX2C シーケンサの 高機能化内容 機能/FNC №名称 0 1 2 CJ CALL SRET 〈IRET〉 〈EI〉 CMP ZCP MOV 〈SMOV〉 CML 〈ADD〉 〈SUB〉 〈MUL〉 〈DIV〉 INC DEC WAND WOR WXOR NEG SFTR SFTL WSFR WSFL SFWR SFRD 0 プログラムフロー 1 転送・比較など 2 四則・論理演算 3 4 5 6 7 8 9 DI FEND WDT FOR NEXT 〈BMOV〉 〈FMOV〉 〈XCH〉 〈BCD〉 〈BIN〉 3 ローテーション・シフト ROR ROL RCR 4 データ処理 ZRST DECO ENCO SUM BON 〈MEAN〉 ANS ANR 5 高速処理 REF REFF MTR 〈HSCS〉 HSCR 〈HSZ〉 SPD 〈PLSY〉 PWM RCL (SQR) (FLT) 6 便利命令 IST (SER) 〈ABSD〉 INCD TTMR STMR ALT RAMP ROTC (SORT) 7 外部機器・I/O TKY 〈HKY〉 〈DSW〉 SEGD 〈SEGL〉 ARWS 〈ASC〉 PR FROM TO 8 外部機器・SER (RS) PRUN (ASCI) (HEX) (CCD) VRRD VRSC 9 外部機器・F2 MNET ANRD RMRD RMMN BLK MCDE ANWR RMST RMWR 表中の ( ) は追加命令です。 〈 〉 は機能向上命令であり、向上内容は下表のとおりです。 その他、 高速パ ラランモード(M8162)があります。 なお、 FNC90∼92, FNC97, 98は、 V3. 30以上で削除されました。 《向上機能の概要》 命令番号 機能向上内容(FX2:V3.07以上,FX2C) FNC 03 IRET 割込みリターン 割込みポインタ 9→15個 FNC 04 EI EI命令駆動後、入力X000∼X005がOFF→ONに変化すると、M8170∼M8175がセットされる。(パルス キャッチ機能) 割込み許可 FNC 13 SMOV 桁移動 M8168駆動時はHEX扱いの桁移動になります。 FNC 15 BMOV 一括転送 (S・)(D・)としてD1000∼D2999,D6000∼D7999が指定でき、ファイルレジスタへのリード/ライトができる。 FNC 16 FMOV 多点転送 FMOVに32ビット命令追加 FNC 17 XCH 交換 M8160駆動時(D1・)(D2・)が同一デバイスのばあい、上位16ビットと下位16ビットデータを交換する。 (SWAP機能) FNC 18 BCD BCD変換 M8023駆動時 2進フロート→10進フロート値への変換 FNC 19 BIN BIN変換 M8023駆動時 10進フロート→2進フロート値への変換 FNC 20 ADD BIN加算 FNC 21 SUB BIN減算 FNC 22 MUL BIN乗算 FNC 23 DIV BIN除算 M8023駆動時(S1・)(S2・)(D・)を2進フロート値として浮動小数点演算を行う。ただし、K,Hは自動 的に2進フロート値に変換される。 その他の整数値はFNC 49(FLT)命令で2進フロート値に変換しておく必要があります。 FNC 45 MEAN 平均値 MEANに32ビット命令追加 FNC 53 HSCS 比較セット (D・)としてI0□0(□=1∼6)を追加 FNC 55 HSZ (D・)としてM8130を指定するとテーブル高速比較モード、M8123を指定するとPLSY命令に対する周 波数制御モード 帯域比較 8 FNC 57 PLSY パルス出力 出力パルス数をD8136(下位),D8137(上位)に書込む FNC 55(HSZ)と組合わせたパルスパターン出力モードあり FNC 62 ABSD ドラムシーケンス ABSDに32ビット命令追加。(S2・)にC235∼C255指定可 FNC 71 HKY 16キー入力 (D3・)=M8167のとき、0∼Fキーデータをそのまま(D2・)へ順次格納 FNC 72 DSW ディジタルスイッチ 使用可能回数 1回→2回 FNC 74 SEGL 7SEG時分割表示 使用可能回数 1回→2回 FNC 76 ASC アスキー変換 M8161駆動時(D・)の下位8ビットへの転送となります。 327 8.バージョンアップ経歴と関連情報 簡易PC間 リンク機能 FX0NシーケンサV2. 00 (製造番号7X0000以降) より簡易PC間リンク機能が追加されました。 ●概要 FXシーケンサ同士を最大8台まで接続で きます。 (A1FXCPUも接続可能) FX0N FX2N FX2NC FX0N FX2N FX2NC FX0N FX2N FX2NC ●必要機器 ・FX0N−485ADP 最大8台 詳細につきましては、別冊の 「FX通信ユーザーズマニュアル」 をご覧ください。 (☞9−2) 328 9. 付録 9 . 付録 各種の技術情報を、付録として掲載します。 9−1.西暦2000年問題への対応について 9−2.FXシーケンサの通信・データリンク機能の概要 9−3.問い合わせの多い項目と、陥りやすい間違い 9 329 9.付録 9−1.西暦2000年問題への対応について 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 9−1−1. カレンダー機能対応機種とその動作について 機種名 (シリーズ名) No 年補正 1980∼2079年 2000年への 繰り上がり 西暦の年表示 備考 1 F,F1,F1J,F2 − − − 2 FX0,FX0S − − − 3 FX0N(国内版) − − − 4 FX0N(海外版) OK OK 2桁表示(*1) 5 FX1 − − − 6 FX2,FX2C OK OK 2桁表示(*1) RTCカセットを装着時のみ カレンダー機能が動作 7 FX2N OK OK 2桁表示(*1) シーケンサ本体に標準内蔵 (設定により4桁表示も可能)(*2) 8 FX2NC OK OK 2桁表示(*1) RTC付きボードを装着時のみカレンダー機能が 動作(設定により4桁表示も可能)(*2) 2桁表示(*1) 9 FX-10DU(*2) OK OK 10 FX-20DU(*2) OK OK 4桁表示 11 FX-25DU(*2) OK OK 2桁表示(*1) 12 FX-30DU OK OK 4桁表示 13 FX-40DU(-TK) OK OK 4桁表示 14 FX-50DU-TK(S) OK OK 4桁表示 15 F930/F940GOT,ET-940 OK OK 4桁表示 16 F-20DU − − − 17 F-20DU2-E OK OK 4桁表示 18 A6GPP/PHP用ソフト − − − 19 A7PHP/HGP用ソフト − − − 20 パソコン用ソフト − − − カレンダー機能無し RTC(Real Time Clock)付きカセットを 装着時のみカレンダー機能が動作 カレンダー機能無し シーケンサのカレンダーデータを取り込み表示 表示器本体に内蔵 カレンダー機能無し 表示器本体に内蔵 カレンダー機能無し 国内/海外版の記載の無い機種は、 カレンダー機能について国内外共、同一仕様です。 (注) FX0N海外版・FX2, FX2C, FX2NCはRTCカセット (ボード)装着時にのみカレンダー機能が動作いた しますので、 RTCカセット (ボード)が未装着のばあいは2000年問題の対象外となります。 (*1) :年表示の2桁表示は、以下の西暦に対応しています。 2桁表示 80∼99 00∼79 西暦 1980∼1999 2000∼2079 (*2) :FX2N, FX2NCシーケンサと組み合わせて使用するときは、 シーケンサを2桁モードにしてください。 シーケンサの西暦2桁を表示器で1980∼2079または、 80∼79に変換させて表示させている関係上、表示器の 現行バージョンでは、 シーケンサの4桁モードのときは正しく表示されません。 補足1. 年の対応および西暦2000年への繰り上がりについて カレンダー機能に使用している内蔵素子が、 1980∼2079年までは、 年の自動補正をします。 また、西暦2000年への繰り上がりも、自動的に処理をします。 従いまして、お客様によるカレンダー (年,月,曜日,時刻)全てのデータ補正は、不要です。 補足2.ユーザプログラム (使用上のご注意) について 2桁の西暦年データをユーザプログラムで処理するとき、 199 9年から2 000年になると99→00になるため、 19 00年 と2000年との区別がつかないばあいが考えられます。 このことを考慮していないプログラムですと、日付の大小比較、設備の稼動時間の計算等について、正確な演 算結果が得られないばあいがあります。 従いまして、 この様な用途で2桁の西暦年を使用されているお客様は、 プログラムの再確認が必要となります。 330 9.付録 1234567890 1234567890 1234567890 1234567890 1234567890 9−1−2.西暦2000年問題に対するテストレポート 目 的 現在、 コンピュータやカレンダー機能のある電子機器で注意が払われている点は、 1 9 9 9年∼2 0 0 0年 への切替りであるが、 カレンダー機能は、 もっと広範囲の年月を刻むように設計されています。 よって、 これらすべての範囲で正しく時を刻まなければなりません。 このレポートは、当社で制作さ れたFXシリーズシーケンサが、 カレンダー機能開始日∼終了日までの全仕様範囲を正しく日付 を認識し、時を刻むことができるかのテストを行い、 さらに、 カレンダー機能を使ったユーザプログ ラム上の注意事項について、解説したものです。 カレンダー機能 開始日:1980/1/1 ∼ 終了日:2079/12/31 年表示の4桁表対応機種 日付の切替り 範 囲 1999/12/31 2000/2/28 ∼ ∼ 2000/1/1 2000/2/29 機種名 FX2N,FX2NC OK 2000/2/29 2000/12/31 2004/2/28 ∼ ∼ ∼ 2000/3/1 2001/1/1 2004/2/29 OK OK OK 機種名 99/12/31 ∼ 00/1/1 00/2/28 ∼ 00/2/29 00/2/29 ∼ 00/3/1 00/12/31 ∼ 01/1/1 FX0N(*1) OK OK OK FX2 OK OK OK FX2C OK OK OK OK 2004/2/29 1980/12/31 2078/12/31 ∼ ∼ ∼ 2004/3/1 1981/1/1 2079/1/1 OK OK OK 04/2/28 ∼ 04/2/29 04/2/29 ∼ 04/3/1 80/12/31 ∼ 81/1/1 78/12/31 ∼ 79/1/1 OK OK OK OK OK OK OK OK OK OK OK OK OK OK OK 年表示の2桁対応機種 日付の切替り (注) FX0N海外版・FX2, FX2C, FX2NCはRTCカセット (ボード) 装着時にのみカレンダー機能が動 作いたしますので、 RTCカセット (ボード)が未装着のばあいは2000年問題の対象外となり ます。 FX2Nのカレンダー機能は、 シーケンサ本体に標準内蔵されています。 西暦の年表示は、 FX2N, FX2NC以外は2桁表示であり、 FX2N, FX2NCのみ設定により2桁, 4 桁の切替えが可能になっています。 (*1) FX0Nは、海外版のみカレンダー機能対応可能 年表示の2桁表示と、西暦の対応 2桁表示 80∼99 00∼79 西暦 1980∼1999 2000∼2079 9 以下のプログラムを入力しテストしました。 テスト プログラム LD X3 AND M8002 MOV K2000 D8018 LD M8000 BIN K2X30 D0 LDI X3 MOV D0 D1 LD X3 CMP K80 D0 M10 ANI M10 ADD D0 K1900 D1 LD X3 AND M10 ADD D0 K2000 D1 :FX2Nのとき、常時ON :西暦4桁への切替え(FX2N,FX2NCのみ) :年(2桁BCD)を入力 :FX2N以外のとき、2桁の年を使用 :FX2Nのとき、常時ON :FX2Nのとき、2桁を西暦4桁に補正 :99≧年≧80のとき、1900を加算 :80>年≧0のとき、2000を加算 331 9.付録 LD X0 OUT M8015 PLF M0 LD M0 MOV K50 D8013 MOV K59 D8014 MOV K23 D8015 BIN K2X10 D8016 BIN K2X20 D8017 MOV D1 D8018 MOV K1X4 D8019 LDI X1 ANI X2 BCD D8013 K2Y0 BCD D8014 K2Y10 BCD D8015 K4Y20 BCD D8016 K2Y30 LDI X1 ANI X2 BCD D8013 K2Y0 BCD D8017 K2Y10 BCD D8018 K2Y20 LD X2 BCD D8013 K2Y0 BCD D8019 K2Y10 MOV K0 K4Y20 END :50秒を入力 :59分を入力 :23時を入力 :日(BCD)の入力 :月(BCD)の入力 :年の入力 :曜日の入力 :秒の出力表示(BCD) :分の出力表示(BCD) :時の出力表示(BCD) :日の出力表示(BCD) :秒の出力表示(BCD) :月の出力表示(BCD) :年の出力表示(BCD) :秒の出力表示(BCD) :曜日出力表示(BCD) :旧時計データのクリア テストプログラムで使用されるレジスタと入出力の割付けは次のとおりです。 入出力割付 332 X0 X1 X2 X3 :時刻設定 Y0∼Y7 :秒の出力データ (BCD) :時計データ表示切替え Y1 0∼Y1 7:分、 月または、 曜日の出力データ (BCD) :時計データ表示切替え Y2 0∼Y2 7:時または、 下2桁年の出力データ (BCD) :西暦4桁設定 Y3 0∼Y3 7:日または、 上2桁年の出力データ (BCD) (FX2N, FX2NCのときのみ、 常時ON) X4∼X7 :曜日入力データ (BCD) X1 0∼X1 7:日付入力データ (BCD) X2 0∼X2 7:月入力データ (BCD) X3 0∼X3 7:年入力データ (BCD) X37∼X30 X27∼X20 X17∼X10 X7∼X4 年(0∼99)BCD 月(1∼12)BCD 日(1∼31)BCD 曜日(0∼6)BCD X2 X1 Y37∼Y30 Y27∼Y20 Y17∼Y10 Y7∼Y0 OFF OFF 日(1∼31)BCD 時(0∼23)BCD 分(0∼59)BCD 秒(0∼59)BCD OFF ON 上2桁年 (19,20または0)BCD 下2桁年 (0∼99)BCD 月(1∼12)BCD 秒(0∼59)BCD ON OFF or ON − − 曜日(0∼6)BCD 秒(0∼59)BCD D0 D1 :入力年データ : 2桁または、 補正後の4桁入力年データ M8 0 1 5 :時刻合わせ D8 0 1 3 D8 0 14 D8 0 1 5 D8 0 1 6 D8 0 1 7 D8 0 1 8 D8 0 1 9 :時計の秒データ :時計の分データ :時計の時データ :時計の日データ :時計の月データ :時計の年データ :時計の曜日データ 9.付録 D8018: 2桁表示 80∼99 00∼79 西暦対応 1980∼1999 2000∼2079 D8019: テスト方法 結 論 曜日 日 月 火 水 木 金 土 データ 0 1 2 3 4 5 6 入力スイッチを取付け、年月日および曜日の初期設定を行ないます。 FX2Nのときは、 X3を常時O Nさせて2桁の年入力データを西暦4桁に切替えを行ないます。 時計データの書き込みは、 X0をON→OFFにさせたとき、入力スイッチで設定した年月日、 曜日に なると同時に23時59分50秒に設定されます。 10秒後に日付が変り、時計データが正常に動作しているかを確認します。 この時計データは、 7S EGを接続することにより、 [日、時、分、秒] [年、月、秒] [曜日、秒] にそれぞれ切替えて表示させ ることができます。 これらの操作を繰り返し行ない、以下項目の確認を行ないます。 1)1999/12/31∼2000/1/1の日付の切替りと、 2000/1/1∼2000/12/31までが、正しく 時刻をきざむこと。 2)2000/2/29の 年とその前後の 年が、正しく時刻を刻むこと。 3)1980/1/1∼2079/12/31の100年間が、正しく時刻を刻むこと。 これらのテスト結果により当社で制作されたFXシリーズシーケンサは、 1980年∼2079年の期間 で正しく時刻を刻むことが確認できました。 1)西暦2000年への繰り上がりは、 カレンダー機能に使用している内蔵素子が自動的に処理を行 ないます。 2) 2000/2/29他の 年は、自動的に検出し、正しく 年の処理を行ないます。 従いまして、お客様によるカレンダーの年、月、日、曜日および時刻の再調整は、不要です。 推 奨 ユーザプログラム (使用上のご注意) について 2桁の西暦年データをユーザプログラムで処理するとき、 1999年から2000年になると99→00にな るため1900年と2000年との区別がつかないばあいが考えられます。 このことを考慮していないプログラムですと、 日付の大小比較、設備の稼動時間の計算等につい て、正確な演算結果が得られないばあいがあります。 9 従いまして、 この様な用途で2桁の西暦年を使用されているお客様は、 プログラムの再確認が 必要となります。 次にその対策プログラムを記載しますので、参考にしてください。 【D8018 (西暦2桁)→D0 (西暦4桁)補正の参考プログラム】 LD M8000 CMP K80 D8018 M0 :2桁の西暦が、 1900年代か2000年代かを比較 LDI M0 ADD D8018 K1900 D0 :99≧年≧80のとき、 1900を加算 LD M0 ADD D8018 K2000 D0 :80≧年≧0のとき、 2000を加算 D0 :補正後の西暦4桁のデータ 補正後の西暦4桁の年のデータD0 (1980∼2079) を使用することにより、 1900年代と2 000年代の 区別が付き、正確な演算結果が得られます。 333 9.付録 9−2. FXシーケンサの通信, データリンク機能の概要 FXシリーズでは、 Aシリーズとの通信やFXシリーズ間の通信などが利用できます。 各通信機能の概要と、関連するマニュアルは次のとおりです。事前に必要なマニュアルや資料につきましては、 FXシーケンサのご購入店へお問合せください。 ■CC−L i nk (A, QnAとの通信) A,QnAシリーズ(親局) ●概要 FXシーケンサをCC−L i nkのリモートデバイス局 として接続できます。 ●必要機器 ・FX2N−32CCL FX0N FX2N FX2NC FX0N FX2N FX2NC 当社品 インバータ ACサーボ など パートナ製品 センサ 電磁弁 など ■簡易PC間リンク (FXシリーズn:nの通信) ●概要 FXシーケンサ同士を最大8台まで接続できます。 (A1FXCPUも接続可能) FX0N FX2N FX2NC FX0N FX2N FX2NC FX0N FX2N FX2NC ●必要機器 ・FX0N−485ADP ・FX2N−485−BD 最大8台 ■計算機リンク (計算機との1:n、 または1:1の通信) ●FXシーケンサを計算機の子局として接続できます。 パソコンなどの計算機(親局) FX0N FX2 FX2C FX2N FX2NC FX0N FX2 FX2C FX2N FX2NC 最大16台 FX0N FX2 FX2C FX2N FX2NC ●必要機器(4 85系は1:n, 232系は1:1接続) ・FX−4 85ADP ・FX0N−485ADP ・FX2N−485−BD ・FX−485PC−IF (RS−485/RS−232C変換) ・FX−232ADP ・FX0N−232ADP ・FX2N−232−BD ●計算機リンクサポートソフトウェア ・FX−PCS−LNK/WIN マイクロソフト社のExc e lなどとデータの読出/ 書込が行なえるほか、通信用関数も同梱してい ます。 334 9.付録 ■並列リンク (FXシリーズ1:1の通信) ●概要 FXシーケンサの基本ユニット2台を接続します。 ●必要機器 ・FX2−40AP ・FX2−40AW FX2 FX2C FX2 FX2C ●必要機器 ・FX0N−485ADP FX0N FX0N ■RS−232C通信(FXシリーズとRS−232C機器の1:1の通信) ●概要 FXシーケンサと、 RS−23 2Cインタフェースを搭載 した機器を接続します。 FX0N FX2 FX2C RS-232C機器 ・パソコン ・バーコードリーダ ・プリンタ ●必要機器 ・FX0N−232ADP ・FX−232ADP 9 ■MELSEC−I/O LINK (FXシリーズと入出力ユニットの通信) FX0N ●概要 FXシーケンサを親局として、 MELSEC−Aシリー ズのリモートI/Oを接続します。 ●必要機器 ・FX2N−16LNK−M リモートI/Oユニット 335 9.付録 《関連マニュアル一覧》 区分 製品名(適用機能含む) マニュアル名 通信全般 ・簡易PC間リンク ・並列リンク ・計算機リンク ・RS命令を用いた無手順通信 ・FX2N-232IFを用いた無手順通信 ・プログラミングプロトコル FX通信ユーザーズマニュアル CC-Link *1 FX2N-32CCL FX2N-32CCLユーザーズマニュアル 製品同梱 FX-485ADP FX0N-485ADP FX/FX0N-485ADPユーザーズマニュアル 製品同梱 FX2N-485-BD FX2N-485-BDハードウェアマニュアル 製品同梱 FX-485PC-IF (RS-485/RS-232C変換) FX-485PC-IFユーザーズマニュアル 製品同梱 FX2-40AW FX2-40AP FX2ハンディマニュアル FX2Cハンディマニュアル FX2,FX2C シーケンサ本体 に同梱 FX-232ADP FX-232ADPユーザーズマニュアル 製品同梱 FX0N-232ADP FX0N-232ADPユーザーズマニュアル 製品同梱 FX2N-232-BD FX2N-232-BDユーザーズマニュアル 製品同梱 I/O LINK *2 FX2N-16LNK-M FX2N-16LNK-Mユーザーズマニュアル 製品同梱 ソフトウェア FX-PCS-LNK/WIN FX-PCS-LNK/WINユーザーズマニュアル 製品同梱 RS-485 並列リンクアダプタ RS-232C *1 :CC−L i nkのマスタ局のマニュアルが別途必要 *2 :リモートI/Oユニットのマニュアルが別途必要 336 配布形態 別送 9.付録 9−3.問合わせの多い項目と陥りやすい間違い 技術相談などにお寄せいただく内容の中でご質問の多い項目と、 プログラミングに関連しポイントとなる事項 を分類して列挙しました。 本プログラミングマニュアルの解説でポイントとなるものや、 トラブル解決のヒントとなる項目も用意いたしまし たのでご一読ください。 【MC, MCR命令のネスティング】(☞3−8: 「MC, MCR」) MC命令を入れ子で使わないときは、すべてネスティング0 (N0) で使用する。 使用回数に制限はないので何度でもN0を使用してよい。 MC命令を入れ子にするばあいのみネスティングレベルをN0→N1→…→N6→N7と変化させる。 プログラムフロー 【カウンタ, タイマのリセットプログラム】 カウンタやタイマのリセットプログラムを、割込みやサブルーチンのように一時的に実行させる部分で ON実行し、 そのままメインルーチンにリターンするとリセット状態が維持されています。したがって、 それ以降のカウンタやタイマは再度そのルーチン内のリセットコイルがOFF実行されるまでは動作し ません。 このようなばあいは、 ルーチン内のリセットプログラムの直後に、 リセットコイルをOFF実行するプログ ラムを入力してください。 【高速カウンタの計数コイルの位置】 (☞「2−8−4.高速カウンタ使用上の注意」) 高速カウンタの計数コイルをON/OFFすることでカウントの開始/停止を制御することができます が、 このコイルは必ずメインルーチン上にプログラムしてください。 STL内,サブル−チン内あるいは割込みルーチン内にプログラムすると、 これらのステートやルーチ ンが再実行されるまでカウントの開始/停止など制御が有効になりません。 ウオッチドックタイマ スキャンタイム 【ウォッチドックタイマ時間の変更】(☞6−1: 「FNC07 (WDT)」) ウォッチドッグタイマの値(D8000) を変更したばあい、 その内容はEND命令の処理時に有効になりま す。このため変更直後から設定を有効にするためには、 FNC07 (WDT)命令を合わせて実行する 必要があります。 【スキャンタイム (演算周期) モニタ】 (☞7−2: 「演算時間」) D8010∼D8012のシーケンサのスキャンタイムモニタ値にはコンスタントスキャン時間は含んでいま せん。 したがって、 コンスタントスキャンモードを設定しているばあいは実際のスキャンタイムとはなり ません。 9 7−2: 「コンスタントスキャンモード」と各命令解説ページ) 【スキャンタイムの影響を受ける命令】(☞6−3:「タイマ割込み」, FNC67 (RAMP), FNC71 (HKY), FNC74 (SEGL), FNC75 (ARWS), FNC77 (PR)命令の実行は、 シーケンサのスキャンタイム (演算周期) に同期して行われるため、スキャンタイムが短いときにはコ ンスタントスキャンモードやタイマ割込みを用いて定時間隔で運転する必要があります。 高速カウンタ 【計数コイルの書き方】(☞「2−8−4.高速カウンタ使用上の注意」) 高速カウンタの計数コイルは、高速カウントを受付ける間は常時ONしている接点で駆動しておく必 要があります。 高速カウンタに割付けられた入力リレー (X) でコイルを駆動すると、入力信号のON/OFFによって 計数コイルが 断されるため正確なカウントが行われません。 【入力フィルタ値】(☞「2−8−4.高速カウンタ使用上の注意」) 高速カウンタや高速入力を受付ける応用命令などで指定した入力リレーのフィルタ定数は、自動的 に高速用として変更されています。 したがって、 FNC51 (REFF) 命令でフィルタ調整を行う必要はあ 337 9.付録 りません。また、 それ以外の入力リレーのフィルタ定数は初期値のままであり、一般の入力として使 うことができます。 高速カウンタ 【高速カウンタ用比較命令】(☞各命令解説) FNC54 ( D HSCR), FNC55 ( D HSZ)は、 32ビット命令でのみ動作する高速 FNC53 ( D HSCS), カウンタ専用の応用命令です。 したがって、必ず32ビット命令でプログラムしてください。 【高速カウンタの帯域比較結果の出力範囲】(☞6−8: 「FNC55」) FNC55 ( D HSZ) の比較出力は、要素番号□□0から8点分に対してのみ高速出力を行っています。 したがって、比較出力の先頭要素番号に□□6,□□7,□□8,□□9などを指定すると、□□8以降 の要素番号は比較結果として動作しません。 インデックス修飾 【ファイルレジスタのインデックス修飾】(☞2−9: 「インデックスレジスタ」, 6−4: 「FNC15 (BMOV)」) BMOV (FNC15)命令でファイルレジスタをインデックス修飾するばあいは、 D1000以上の要素番号 に対してVまたはZを付加してください。 一般のデータレジスタ番号、例えばD900に対してV=200の修飾を行ってもD1100としては認識され ません。 【32ビットカウンタのインデックス修飾 】(☞2−9: 「インデックスレジスタ」) 3 2ビットカウンタをインデックス修飾するばあいは、 C2 0 0以上の要素番号に対してZを付加してください。 16ビットのカウンタ番号、例えばC190Zに対してZ=20としてもC210としては認識されません。 【32ビット応用命令のインデックス修飾】(☞2−9: 「インデックスレジスタ」) 32ビット命令または要素に対してインデックス修飾を行うばあいは、必ずZを用います。 このときV側は上位16ビットとして扱われますので、何等かの数値が入っていると大変大きな値とな り演算エラーが発生します。 したがって、 Vは一度リセットするかMOV命令で0を書き込んでからご使 用になることをおすすめします。 RUN中書込み プログラム一般 338 【1msecタイマのRUN中新規追加】 (☞ハンディマニュアル) 1msecタイマを、 RUN中に新規追加しても、 シーケンサを再度RUNするまで計時動作を行いません。 【パルス化応用命令の動作】(☞ハンディマニュアル) RUN中にプログラム変更すると、対象回路ブロック全体が、新たに書かれたものとして扱われます。 このため、変更した回路ブロック内で駆動されているパルス化実行の応用命令は再実行されます。 【32ビットカウンタに対する応用命令】(☞2−7: 「数値要素としての扱い」) 一般の32ビットカウンタや高速カウンタの現在値や設定値を応用命令で扱うばあいは、必ず32ビット 命令を用いる必要があります。 16ビット命令で扱うと、符号ビットの処理も行われないため正しい値が得られないことがあります。 【イニシャルステートについて】 (☞「4−6. イニシャルステートの役割」) ステートS0∼S9はイニシャルステートと呼ばれ、 一般のステートとは区別されています。 しかし、 これは リストプログラムとSFC図による表示を相互変換するための約束事項であり、 STL図として回路表示 のみを行うばあいにはイニシャルステートの番号制限を受けません。 したがって、 制御フローの先頭ステートをS1 0以降の番号にしてもシーケンサは正常に動作します。 だ だし、 このばあいSFC図では正しい表示が行えません。 9.付録 特殊機器 【特殊機器のイニシャライズ(プログラミング)】(☞6−1: 「FNC07 (WDT)」) 特殊ブロックのイニシャライズなどのためにFNC78 (FROM) , FNC79 (TO)命令を多用すると、一時 的にプログラムの実行時間が延びて、 WDTエラーが発生することがあります。 このばあいは、 数スキャンに分けてイニシャライズするか、 FNC0 7 (WDT) 命令をプログラムしてウォッ チドッグタイマのリフレッシュを行ってください。 【特殊機器のイニシャライズ(ハードウェア)】 (☞ハンディマニュアル) FX−1GMあるいはFX−20GMなどの特殊ユニットの電源投入タイミングはシーケンサと同時に行っ てください。 特殊ユニットの電源投入タイミングがシーケンサより大幅に遅れると、 イニシャライズが行われません。 【FX0, FX0S, FX0Nシーケンサのプログラムエラー】 (☞「1−3.製品概要と対応するプログラミング言語」) これらのシーケンサはFX1、 FX2、 FX2Cシーケンサとくらべ応用命令の種類や命令形態が異なってい ます。例えば、応用命令のパルス化実行はこれらのシーケンサにはないため、間違ってプログラムす るとプログラムエラーが発生します。 FX0, FX0S, FX0Nのプログラミングは「FX2」 モードで行いますが、入力する命令の種類や要素番号 範囲はそれぞれのシーケンサの仕様内で入力するようにしてください。 【シーケンサのエラー内容の見方】(☞7−1: 「エラー検出」, 「エラーコード」) シーケンサにプログラムエラー (エラーランプの点滅)が発生したばあいはシーケンスプログラム上 に何等かの問題があります。 問題の内容は、 シーケンサの特殊要素にあるエラーの発生を示す補助リレーやエラーコード格納用 レジスタをモニタすることで確認できます。 また、 プログラミング機器側でも 「PC診断機能」 として、 オ ンライン接続されたシーケンサのエラー内容を表示する機能を備えています。 エラー発生 【応用命令が実行されない、 または実行結果がおかしい】 応用命令の実行がうまくいかないばあいは、次の項目が関係していないかご確認ください。 1.応用命令の実行結果が別のプログラムによって書き換えられている。 2.複数のディスティネーションを占有する応用命令と、別のプログラムで使っている要素が重複 している。 3.応用命令の実行形態に問題がある。 応用命令の中には命令を常時駆動していると、スキャンタイムごとに処理が実行され演算結 果が次々に変化するものがあります(例:FNC30∼39)。 このようなばあいは、駆動接点をパルス化するか応用命令をパルス化実行にしてください。 4.16ビットと32ビットの違い。 応用命令のオペランドとして指定した要素のデータサイズと応用命令が扱えるサイズが異な るばあいは正しい結果が得られません。例えば、 32ビットの要素は16ビット命令では正しい結 果得られません。 5.計算結果などを応用命令のオペランドに指定しているばあい、計算結果が応用命令が扱うこ とのできる数値範囲を超える内容になっている。 このようなばあいは、応用命令に演算エラーが発生していることもあります。 9 応用命令が不実行になるばあいは、命令に「演算エラー」が発生していることがあります。 シーケンサのエラー内容は前項にも述べたとおり、周辺機器の 「PC診断機能」 などを用いてチェック を行ってください。また、他のプログラムの影響が考えられるばあいは、 プログラムの中に 「END」命 令を挿入するなどして、 プログラムを分割してデバッグしてみてください。 【PC/PP通信エラー (M8062, D8062) の発生】(☞7−1: 「エラーコード」) シーケンサに電源が入っているときにプログムコネクタ部の機器を抜き差しすると、 PC/PP通信エ ラーが発生することがあります。 ただし、 シーケンサの演算は正常に実行されています。 このエラーは、 シーケンサの電源を 断するまで保持され、再投入時にエラーがなければクリアされ ます。 339 用 語 さくいん 【数字, アルファベット】 16ビット命令 ..........................111 2/8/10/16進数/BCDコードの変換表 ..... 25 32ビット命令 ..........................111 2000年問題への対応 ..................330 7セグメント ...................151,226,227 ASCI I.................. 231,232,24 8,250 ASCI Iコード表........................ 322 EEPROM ......................32,55,14 8 FX−232ADP ........................ 24 3 FX2−24EI .......................... 282 I ST命令用フラグ ..................... 290 RET命令の役割り...................... 88 RS−232C............................ 23 8 RUNモニタリレー ................. 284,305 RUN中のプログラム書込み ..........11,338 SFC ................................. 82 ∼のシングルフロー ................... 85 ∼の選択分岐 ....................... 85 ∼の分岐回路数制限 ................. 86 ∼の並進分岐 ....................... 85 ∼フローの分離 ...................... 86 ∼プログラミング ..................... 82 ∼プログラミングの対応機器 ........... 83 ∼プログラムの詳細解説書 ..........8,79 ∼の複雑な移行条件 ................. 87 STL ................................. 80 ∼ステート動作 ..................... 290 ∼モニタ ........................... 290 ∼移行禁止 ........................ 290 【あ】 アナログタイマ ........................ 254 アナログタイマ(内蔵ボリューム).......... 36 アナログボリューム値(FX0/FX0S)...... 287 アナログボリューム値(FX0N).......... 289 アナンシェータ ................. 35,179,29 0 【い】 一括入出力方式 ....................2 1,31 イニシャルパルスリレー ............ 284,305 インデックスレジスタ ................ 54,119 ∼による要素の修飾 .......... 56,119,338 使用回数制限の命令の∼ ......... 56,119 32ビット命令の∼ ................. 56,338 【う】 ウオッチドッグタイマ ........ 75,13 1,139,14 0 ウオッチドッグタイマ時間 ....... 285,305,337 340 【え】 エラーコード表 ........................ 294 エラー発生検出 ...... 284,285,292,293,339 【お】 応答おくれ .........................2 1,31 応用命令 .........................11,123 ∼の拡張機能 ......................300 ∼の使用回数の制限 ................ 114 ∼の同時駆動回数の制限 ............ 114 オプションカセット ...................... 19 オペランド ............................ 110 【か】 回転数 .............................. 198 外部故障診断 ......................... 35 カウンタ............................... 42 16ビット∼ ........................... 42 32ビット∼ .......................42,338 ∼の間接指定 ....................4 3,57 ∼の計数方向切換え .............42,303 ∼の現在値読出し.................... 5 7 ∼をデータレジスタとして使う .......... 57 ∼の内部構造 ....................... 4 5 仮数 ................................ 117 【き】 キープメモリクリア ................. 288,311 キープリレー ........................... 32 キーワード ..........................1 1,19 基本シーケンス命令 .................... 60 ∼ANB ............................. 65 ∼ANB命令の使用回数 ............... 65 ∼AND ............................. 62 ∼ANI ............................. 62 ∼END ............................. 75 ∼END命令の役割 ................... 75 ∼LD............................... 61 ∼LDI.............................. 61 ∼MC .............................. 70 ∼MC命令のネスティング .........70,337 ∼MC命令のポインタの使い方 .....70,337 ∼MCR ............................. 70 ∼MPP ............................. 66 ∼MPS ............................. 66 ∼MRD............................. 66 ∼MRD命令の使用回数 .............. 66 ∼NOP ............................. 75 ∼NOP (処理命令) の役割 ............. 75 ∼OR............................... 63 ∼ORB ............................. 64 用 語 さくいん ∼ORB命令の使用回数 ............... 64 ∼ORI.............................. 63 ∼OUT ..........................6 1,74 ∼PLF ............................. 72 ∼PLS.............................. 72 ∼RST .......................... 73,74 ∼SET ............................. 73 強制RUN/STOP ................ 288,312, ...... FX1/FX2/FX2Cハンディマニュアル 【く】 クッションスタート/ストップ .............. 217 【こ】 高速カウンタ........................1 0,46 1相∼ ........................... 46,48 2相∼ ........................... 46,50 ∼の計数方向切換え ............. 47,304 ∼の計数方向モニタ.............. 47,304 ∼の出力処理 .......... 49,190,192,193 ∼の注意事項 ....................... 51 ∼の最大応答周波数 ................. 51 ∼のコイルの駆動方法 ............53,337 高速処理の拡張機能 ..................300 高速命令の入力フィルタ値 ..........53,337 高速リングカウンタ .................4 0,299 工程歩進制御 ......................... 34 コンスタントスキャン ...........11,217,223, ....................... 22 6,229,232,337 コンスタントスキャンモード指令 .. 288,289,313 【さ】 最新演算結果の出力 ...............21,186 最新入力情報の入手 ...............21,186 サンプリングトレース ................... 296 【し】 指数 ................................ 117 システムバージョン表示 ................ 285 周辺機器のバージョン ................. 32 6 出力リレー ............................ 3 0 瞬停検出 ........................ 284,285 使用禁止要素 ........................304 定数 ................................. 25 【す】 数値の扱い ........................... 24 スキャンタイム (演算時間).......21,31,217, ........... 223,226,229,232,287,307,337 ステート............................ 34,80 ステート (SFC)......................34,80 ∼のリセット ......................... 8 7 ∼の移行方法 ....................... 81 ∼の重複使用 ....................... 80 ∼の同一信号移行 ................... 89 ∼間でのタイマの重複使用 ............ 80 ∼内で有効な命令 ................... 81 ∼内の出力のインタロック ............. 80 ∼内の出力禁止 ..................... 8 7 イニシャル∼ .....................34,92 イニシャル∼の役割 .............. 92,338 イニシャル∼命令 ............... 108,204 キープ∼ ............................ 88 ステップラダー ...................... 34,80 【せ】 製品概要 ............................. 14 絶対値 .............................. 160 全出力禁止 ...................... 288,312 【そ】 ソース ............................... 110 【た】 ターミネータ .......................... 238 タイマ ................................ 3 6 ∼の間接指定 ....................... 37 ∼の間接指定 ....................... 57 ∼の現在値読出し.................... 57 ∼の精度 ........................... 38 ∼をデータレジスタとして使う .......... 57 ∼の内部構造 ....................... 45 1ms∼ .............................. 36 10ms∼ ............................. 36 100ms∼ ............................ 36 100ms積算∼........................ 36 オフディレイ∼ ................... 39,214 サブルーチン∼ ...................... 36 積算∼ ............................. 36 ティーチング∼ ................... 39,213 マルチ∼ ........................... 39 ルーチン∼ ...................... 37,116 ワンショット∼ .................... 39,214 大容量コンデンサ ...................... 32 短時間パルスの扱い ................... 21 【つ】 追加命令の代用機能 ..............302,318 341 用 語 さくいん 【て】 ディジタルスイッチ ............. 151,152,224 停電検出 ........................ 284,285 停電検出時間の変更 .................. 285 停電保持回路 ......................... 32 デスティネーション ..................... 110 【と】 特殊アダプタの指令 ...................300 特殊増設機器 ...............8,11,235,339 特殊補助リレー ....................32,284 トレーニングスクール ..................... 8 【な】 内蔵メモリ ............................ 19 内部クロック ...................... 28 6,307 【に】 二重コイル .....................2 1,77,13 0 入出力処理 ........................2 1,31 入出力リフレッシュ ..................... 10 入力リレー ............................ 3 0 入力フィルタ調整(FX0/FX0S/FX0N).. 287,310 入力フィルタ調整(FX1/FX2/FX2C)....10,187 【は】 バージョン履歴 ....................... 324 バッテリLED消灯指令 ............. 288,311 バッテリバックアップ領域 ............. 19,26 バッテリ電圧 ................. 284,285,305 バッファメモリ......................... 23 5 パラメータ............................. 26 パラメータの構造 ....................... 19 パラメータの初期値..................... 2 0 パリティ.......................... 238,253 パルスキャッチ(FX0/FX0S/FX0N).... 291,317 パルスキャッチ(FX2/FX2C)..........302,317 パルスキャッチ機能 .................... 10 パルス実行命令 ......................111 パルス発生 .......................... 199 【ひ】 ビットデバイス ........................ 115 微分出力 ............................. 72 【ふ】 符号ビット.......................... 45,54 浮動小数点 ...................... 116,182 フラグ 動作∼ ........................ 112,28 7 342 演算エラー∼ ................... 112,292 機能拡張∼ .................... 114,3 00 実行完了∼ .................... 112,28 7 フリッカ動作 ................... 39,214,215 プルアップ抵抗 ....................... 189 プログラミング言語 ..................... 10 プログラム ∼の1回路ブロックの最大数 ........ 62,63 ∼作成のポイント..................... 14 ∼方式 ............................. 15 ∼互換性 ........................... 15 ∼メモリの構造 ...................... 18 ∼メモリ容量 ..................... 14,19 ∼の保護 ........................... 19 プログラムできない回路 ................. 78 プログラムの実行順序 .................. 76 プログラム作成の注意事項 .............. 76 【へ】 平方根 .............................. 181 並列リンク...........................314, ...... FX0N/FX2/FX2Cハンディマニュアル, .............FX通信ユーザーズマニュアル ∼親局 ........................ 296,314 ∼子局 ........................296, 314 ヘッダ ............................... 238 【ほ】 ポインタ............................... 58 分岐用∼ ................... 58,13 0,133 割込み用∼ ..................... 58,134 ボーレート ............................ 238 補助リレー ............................ 32 【ま】 マニュアルの種類 ....................... 8 【め】 メモリホールドストップ .............. 288,312 メモリ種類表示 ....................... 285 メモリ容量表示 ....................... 285 【よ】 要素(デバイス) ∼の種類と役割り.................. 16,23 ∼番号一覧 ......................... 26 【ら】 ラッチ範囲設定 ........................ 19 さくいん 用 語 【り】 リアルタイムクロックカセット ..... 286,287,308 リンク機能............................334 【れ】 レジスタ ∼の内部構造 ....................... 54 ∼へ数値を格納する.................. 57 16ビット∼ ........................... 54 32ビット∼ ........................... 54 RAMファイル∼ .................. 54,288 インデックス∼ ................... 54,119 データ∼ ............................ 54 停電保持用∼ ....................... 54 特殊データ∼ .................... 54,284 ファイル∼ .................... 54,55,148 連続実行命令 ........................ 111 【ろ】 ロータリスイッチ ....................... 255 【わ】 ワードデバイス ........................ 116 割込み ∼機能 ..........................10,4 0 ∼禁止の個別指定 .................. 290 ∼入力の幅 ........................ 134 カウンタ∼ ................... 58,13 6,193 タイマ∼ ... 58,135,217,223,22 7,229,232 入力∼ ..................... 58,13 6,13 7 343 応用命令 さくいん 《FNC.№順》 ○:対応命令 −:非対応命令 ◎:追加命令 ◆:V3. 30以上(’ 96年6月以降) で削除された命令 区 FNC. 命令 分 No. 記号 プ ロ グ ラ ム フ ロ | 転 送 ・ 比 較 四 則 ・ 論 理 演 算 ロ | テ | シ ョ ン ・ シ フ ト デ | タ 処 理 344 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 CJ CALL SRET IRET EI DI FEND WDT FOR NEXT CMP ZCP MOV SMOV CML BMOV FMOV XCH BCD BIN ADD SUB MUL DIV INC DEC WAND WOR WXOR NEG ROR ROL RCR RCL SFTR SFTL WSFR WSFL SFWR SFRD ZRST DECO ENCO SUM BON MEAN ANS ANR SQR FLT 《命令名称》 条件ジャンプ サブルーチンコール サブルーチンリターン 割込みリターン 割込み許可 割込み禁止 メインプログラム終了 ウォッチドッグタイマ 繰返し範囲開始 繰返し範囲終了 比較 帯域比較 転送 桁移動 反転転送 一括転送 多点転送 データの交換 BCD変換 BIN変換 BIN加算 BIN減算 BIN乗算 BIN除算 BIN増加 BIN減少 論理積 論理和 排他的論理和 補数 右回転 左回転 キャリ付右回転 キャリ付左回転 ビット右シフト ビット左シフト ワード右シフト ワード左シフト シフト書込み シフト読出し 一括リセット デコード エンコード ONビット数 ONビット判定 平均値 アナンシェータセット アナンシェータリセット BIN開平演算 浮動小数点演算 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − 130 133 133 134 134 134 138 139 140 140 142 143 144 145 146 147 149 150 151 152 154 155 156 157 158 158 159 159 159 160 164 164 165 165 166 166 168 168 170 170 174 175 176 177 177 178 179 179 181 182 ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − ○ − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ − − − − − ○ ○ − − − − ○ ○ ○ − − − − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ | 区 FNC. 命令 分 No. 記号 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ 入出力リフレッシュ フィルタ調整 マトリクス入力 比較セット(高速カウンタ) 比較リセット(高速カウンタ) 帯域比較(高速カウンタ) パルス密度 パルス出力 パルス幅変調 ○ − − ○ ○ − − ○ ○ ○ − − ○ ○ − − ○ ○ ○ ○ − ○ ○ − − − − ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 186 187 188 190 192 193 198 199 201 イニシャルステート データサーチ ドラムシーケンス(絶対方式) ドラムシーケンス(相対方式) ティーチングタイマ 特殊タイマ 交番出力 傾斜信号 近回り制御 データ整列 テンキー入力 16キー入力 ディジタルスイッチ 7SEGデコーダ 7SEG時分割表示 アロースイッチ アスキー変換 アスキーコードプリント BFM読出し BFM書込み シリアルデータ転送 8進ビット転送 HEX→ASCII変換 ASCII→HEX変換 チェックコード FX-8AVボリューム読出し FX-8AVボリューム目盛 ○ − − − − − ○ ○ − − − − − − − − − − − − − − − − − − − ○ − − − − − ○ ○ − − − − − − − − − − ○ ○ ◎ − ◎ ◎ ◎ − − ○ − − − − − − − − − − − − − − − − − − − − − − − − ○ − ○ ◎ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ◎ ◎ ○ ◎ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 204 210 211 212 213 214 215 217 218 220 222 223 224 226 227 229 231 232 234 234 238 246 248 250 252 254 255 PID演算 − − − ◎ ◎ 256 F-16NP/NT F2-6A読出し F2-6A書込み F2-32RMスタート/ステータス F2-32RM書込み F2-32RM読出し F2-32RMモニタ F2-30GMブロック指定 F2-30GM Mコード − − − − − − − − − 《命令名称》 ジ 50 51 52 高 53 速 54 処 55 理 56 57 58 59 60 61 62 便 63 利 64 命 65 令 66 67 68 69 70 71 72 外 部 73 機 74 器 75 ・ 76 I/O 77 78 79 80 81 82 外 部 83 機 84 器 85 ・ 86 SER 87 88 89 90 91 92 外 部 93 機 94 器 95 ・ 96 F2 97 98 99 REF REFF MTR HSCS HSCR HSZ SPD PLSY PWM − IST SER ABSD INCD TTMR STMR ALT RAMP ROTC SORT TKY HKY DSW SEGD SEGL ARWS ASC PR FROM TO RS PRUN ASCI HEX CCD VRRD VRSC − PID − MNET ANRD ANWR RMST RMWR RMRD RMMN BLK MCDE − − − − − − − − − − − − − − − − − − − ◆ ◆ ◆ ○ ○ ○ ○ ◆ ◆ ◆ ◆ ◆ ○ ○ ○ ○ ◆ ◆ | ジ 268 270 271 273 275 276 277 278 279 応用命令 さくいん 《命令記号順》 ○:対応命令 −:非対応命令 ◎:追加命令 ◆:V3. 30以上(’ 96年6月以降) で削除された命令 区 命令 FNC. 分 記号 No. A B C D E F H I M N ABSD ADD ALT ANR ANRD ANS ANWR ARWS ASC ASCI BCD BIN BLK BMOV BON CALL CCD CJ CML CMP DEC DECO DI DIV DSW EI ENCO FEND FLT FMOV FOR FROM HEX HKY HSCR HSCS HSZ INC INCD IRET IST MCDE MEAN MNET MOV MTR MUL NEG NEXT 62 20 66 47 91 46 92 75 76 82 18 19 97 15 44 01 84 00 14 10 25 41 05 23 72 04 42 06 49 16 08 78 83 71 54 53 55 24 63 03 60 98 45 90 12 52 22 29 09 《命令名称》 ドラムシーケンス(絶対方式) BIN加算 交番出力 アナンシェータリセット F2-6A読出し アナンシェータセット F2-6A書込み アロースイッチ アスキー変換 HEX→ASCII変換 BCD変換 BIN変換 F2-30GMブロック指定 一括転送 ONビット判定 サブルーチンコール チェックコード 条件ジャンプ 反転転送 比較 BIN減少 デコード 割込み禁止 BIN除算 ディジタルスイッチ 割込み許可 エンコード メインプログラム終了 浮動小数点演算 多点転送 繰返し範囲開始 BFM読出し ASCII→HEX変換 16キー入力 比較リセット(高速カウンタ) 比較セット(高速カウンタ) 帯域比較(高速カウンタ) BIN増加 ドラムシーケンス(相対方式) 割込みリターン イニシャルステート F2-30GM Mコード 平均値 F-16NP/NT 転送 マトリクス入力 BIN乗算 補数 繰返し範囲終了 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ − ○ ○ − − − − − − − ○ ○ − − − − − ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ − − − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ 211 154 215 179 270 179 271 229 231 248 151 152 278 147 177 133 252 130 146 142 158 175 134 157 224 134 176 138 182 149 140 234 250 223 192 190 193 158 212 134 204 279 178 268 144 188 156 160 140 − ○ ○ − − − − − − ◎ ○ ○ − ○ − − ◎ ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ ○ ◎ − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ − ○ − − − − − − − − ○ ○ − − − ○ − ○ − ○ ○ ○ ○ ○ − ○ ○ ○ − − ○ − − − ○ ○ − ○ − ○ ○ − − − ○ − ○ − ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ◎ ○ ○ ◆ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ◎ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ ◆ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◆ ○ ◆ ○ ○ ○ ○ ○ | 区 命令 FNC. 分 記号 No. 《命令名称》 ジ P R S T V W X Z PID PLSY PR PRUN PWM RAMP RCL RCR REF REFF RMMN RMRD RMST RMWR ROL ROR ROTC RS SEGD SEGL SER SFRD SFTL SFTR SFWR SMOV SORT SPD SQR SRET STMR SUB SUM TKY TO TTMR VRRD VRSC WAND WDT WOR WSFL WSFR WXOR XCH ZCP ZRST 88 57 77 81 58 67 33 32 50 51 96 95 93 94 31 30 68 80 73 74 61 39 35 34 38 13 69 56 48 02 65 21 43 70 79 64 85 86 26 07 27 37 36 28 17 11 40 PID演算 パルス出力 アスキーコードプリント 8進ビット転送 パルス幅変調 傾斜信号 キャリ付左回転 キャリ付右回転 入出力リフレッシュ フィルタ調整 F2-32RMモニタ F2-32RM読出し F2-32RMスタート/ステータス F2-32RM書込み 左回転 右回転 近回り制御 シリアルデータ転送 7SEGデコーダ 7SEG時分割表示 データサーチ シフト読出し ビット左シフト ビット右シフト シフト書込み 桁移動 データ整列 パルス密度 BIN開平演算 サブルーチンリターン 特殊タイマ BIN減算 ONビット数 テンキー入力 BFM書込み ティーチングタイマ FX-8AVボリューム読出し FX-8AVボリューム目盛 論理積 ウォッチドッグタイマ 論理和 ワード左シフト ワード右シフト 排他的論理和 データの交換 帯域比較 一括リセット 対応シーケンサ FX FX FX FX FX 0, 0N 1 2 2C 0S ペ − ○ − − ○ ○ − − ○ − − − − − − − − − − − − − ○ ○ − − − − − − − ○ − − − − − − ○ ○ ○ − − ○ − ○ ○ 256 199 232 246 201 217 165 165 186 187 277 276 273 275 164 164 218 238 226 227 210 170 166 166 170 145 220 198 181 133 214 155 177 222 234 213 254 255 159 139 159 168 168 159 150 143 174 − ○ − − ○ ○ − − ○ − − − − − − − − ◎ − − − − ○ ○ − − − − − − − ○ − − ○ − − − ○ ○ ○ − − ○ − ○ ○ − − − − − − − − ○ ○ − − − − − − − − − − − − ○ ○ − − − − − ○ − ○ − − − − ○ − ○ ○ ○ − − ○ − ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ◎ ○ ○ ○ ○ ○ ◎ ○ ◎ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ◎ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ | ジ 345 プログラム例 さくいん 動作目的 346 ページ 関連命令と要素 自己保持回路 32 補助リレー 停電保持回路 32 補助リレー キープステートの初期化 34 FNC40(ZRST) 外部故障診断 35 アナンシェータステート タイマの間接指定 37,57,144 FNC12(MOV),タイマ 内蔵ボリュームの扱い 37 タイマ オフディレイタイマ 39,214 タイマ フリッカ(点滅) 39,214 タイマ ワンショットタイマ 39,214 FNC65(STMR) 短時間パルス幅の測定 40 割込み,高速リングカウンタ カウンタの間接指定 44,57,144 FNC12(MOV),カウンタ 応用命令内でのカウンタ利用 45 各種応用命令 高速カウント結果の即出力 49 FNC53/54/55(HSCS/HSCR/HSZ) ウォッチドッグタイマ値の変更 55 FNC12(MOV),D8000 インデックスレジスタを用いたタイマ現在値の選択表示 56,119 FNC18/19(BCD/BIN)V,Z 使用回数制限命令の複数回使用 56,119 FNC57(PLSY),V,Z カウンタの現在値変更 57 FNC12(MOV),カウンタ カウンタの現在値読出し 57 FNC12(MOV),カウンタ データレジスタに数値を格納する 57 FNC12(MOV) 未使用のタイマ,カウンタをデータレジスタとして利用する 57 FNC12(MOV) SFCによるシングルフロー処理 85 STL,RET,ステート SFCにおける複雑な移行条件処理 87 補助リレー ステートのリセットと出力禁止 87 FNC40(ZRST),補助リレー 移行条件成立済ステートの処理 89 PLS 同一信号によるステート移行 89 PLS SFCによる噴水制御の例 100 STL,RET,ステート SFCによるフリッカ回路の例 100 STL,RET,ステート SFCによるカム軸旋回制御の例 101 STL,RET,ステート SFCによるモートルの順次始動・停止制御の例 102 STL,RET,ステート SFCによる大小ボールの選別搬送制御の例 104 STL,RET,ステート SFCによる押しボタン式横断歩道制御の例 106 STL,RET,ステート FX0/FX0S/FX0Nでの応用命令のパルス化実行 111 PLS タイマ割込みによる傾斜信号発生回路の例 137 FNC67(RAMP),タイマ割込み タイマ割込みによる16キー回路の例 137 FNC71(HKY),タイマ割込み 比較命令不実行時の比較出力のリセット 142,143 FNC10/11(CMP/ZCP) タイマ,カウンタの現在値の読出し 144 FNC12(MOV) MOV命令によるビット要素の転送 144 FNC12(MOV) 32ビットデータの転送 144 FNC12(MOV) 桁移動によるディジタルスイッチの取込み 145 FNC13(SMOV) プログラム例 さくいん 動作目的 ページ 関連命令と要素 反転入力の取込み 146 FNC14(CML) ファイルレジスタの読出し,書込み 148 FNC15(BMOV) 1ソースの多点転送 149 FNC16(FMOV) 7セグメントの表示 151 FNC18(BCD) ディジタルスイッチの取込み 151 FNC19(BIN) INC命令によるカウンタ現在値の順次表示 158 FNC24(INC) 数値の負数化 159 FNC27(WOR) 減算の絶対値処理 160 FNC29(NEG) F1,F2シーケンサのSFT命令の等価回路 167 FNC35(SFTL) 1ビットデータの条件付き歩進 167 FNC35(SFTL) 先入れ先出し制御 171 FNC38/39(SFWR/SFRD) 数値に対応した1ビットをONさせる 175 FNC41(DECO) アナンシェータによる故障番号の表示 180 FNC47(ANS) 浮動小数点演算の例 183 FNC49(FLT) マトリックス入力回路 188 FNC52(MTR) 高速カウンタの自己リセット 192 FNC54(HSCS) 高連帯域比較の初期駆動の例 194 FNC55(HSZ) テーブル高速比較モードの例 195 FNC55(HSZ) 周波数制御モードの例 196 FNC55(HSZ) パルス幅変調の外部平滑回路の例 201 FNC58(PWM) ワーク移送機構の例 205 FNC60(IST) 10種類のティーチングタイマ設定の例 213 FNC64(TTMR) 1入力によるスタート/ストップ 215 FNC66(ALT) ALT命令によるフリッカ動作 215 FNC66(ALT) 補助リレーを用いた交番出力動作 216 補助リレー 近回り制御の例 218 FNC68(ROTC) 10キー入力の例 222 FNC70(TKY) 16キー入力の例 223 FNC71(HKY) ディジタルスイッチの時分割取込み 226 FNC72(DSW) リレー出力を用いたディジタルスイッチの時分割取込み 225 FNC72(DSW) 7セグメントの時分割表示 227 FNC74(SEGL) アロースイッチによるタイマ設定 230 FNC75(ARWS) アスキーコードによる16バイトシリアル出力 233 FNC77(PR) FX-232ADP導入例 243 FNC80(RS) アナログボリューム値の順次読出し 254 FNC85(VRRD) アナログボリュームをロータリスイッチとして使う 255 FNC86(VRSC) 347 さくいん MEMO 348 T I TLE T I TLE さくいん MACH I NE 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 8 8 8 8 9 9 9 9 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 8 8 8 8 9 9 9 9 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 8 8 8 8 9 9 9 9 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 8 8 8 8 9 9 9 9 349 T I TLE T I TLE さくいん MACH I NE 350 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 マニュアル改訂履歴 さ くいん 作成日付 副番 内 容 1996年11月 A 1997年 6月 1999年12月 B C 「FX1,FX2,FX2C合併版」プログラミングマニュアル(JY992D40301)に対して、 FX0,FX0S,FX0Nシリーズに関する記事を追記するとともに基本命令解説,デバイ ス解説,ステップラダー命令解説等を加え本マニュアルを作成した。 記載内容の追加と変更 ・FX0Nの並列リンク機能を追加 ・「西暦2000年問題への対応について」を追加 ・「シーケンサの通信・データリンク機能の概要」を追加 ・その他、記載内容の追加と変更 351 さくいん 三菱電機システムサ−ビス株式会社 北海道支店 (011)221-8495 新潟機器サービスステーション (025)274-9165 北陸支店 (0762)51-0559 京滋機器サービスステーション (075)611-6211 関西機電支店 (0726)41-0441 大阪機器サービスステーション (06)6458-9728 堺機器サービスステーション (0722)29-5992 姫路機器サービスステーション (0792)81-1141 中国支店 (082)285-2111 東北支店 (022)236-3818 東京機電支店 (03)3454-5521 千葉機器サービスステーション (043)232-6101 神奈川機器サービスステーション (045)664-0251 相模原機器サービスステーション (0427)79-9711 関東機器サービスステーション (048)652-0378 静岡機器サービスステーション (054)287-8866 浜松サービスステーション (053)463-8455 中部支社機電部 (052)722-7601 神戸機器サービスステーション (078)651-0332 四国支店 (087)831-3186 倉敷機器サービスステーション (086)448-5532 九州支社機電部 (092)483-8208 北九州機器サービスステーション (093)642-8825 長崎機器サービスステーション (095)865-3667 (9912) 352 FX0, FX0S, FX0N, FX1, FX2, FX2C プログラミングマニュアル 基本命令,ステップラダー命令,応用命令解説書 三菱電機株式会社 〒100-8310 東京都千代田区丸の内2−2−3 (三菱電機ビル) お問合せは下記へどうぞ 本社機器営業部 ......... 〒105-0011 東京都港区芝公園2-4-1 (秀和芝パークビル)................(03)3459-5666 北海道支社 ............. 〒060-8693 札幌市中央区北二条西4丁目1(北海道ビル)................(011)212-3785 東北支店 ............... 〒980-0011 仙台市青葉区上杉1-17-7 (三菱電機明治生命仙台ビル).....(022)216-4546 関越支社 ............... 〒331-0043 大宮市大成町4-298 (三菱電機大宮ビル)...................(048)653-0256 新潟支店 ............... 〒950-8504 新潟市東大通2-4-10 (日本生命ビル)......................(025)241-7227 東関東支社 ............. 〒277-0011 柏市東上町2-28 (第二水戸屋ビル).......................(0471)62-3611 神奈川支社 ............. 〒220-8118 横浜市西区みなとみらい2-2-1 (横浜ランドマークタワー)......(045)224-2623 北陸支社 ............... 〒920-0031 金沢市広岡3-1-1 (金沢パークビル)......................(0762) 33-5502 中部支社 ............... 〒450-8522 名古屋市中村区名駅3-28-12 (大名古屋ビル)..............(052)565-3314 静岡支店 ............... 〒420-0837 静岡市日出町2-1 (田中第一ビル).........................(054)251-2855 浜松支店 ............... 〒430-7719 浜松市板屋町111-2 (浜松アクトタワー)....................(053)456-7115 豊田支店 ............... 〒471-0034 豊田市小坂本町1-5-10 (矢作豊田ビル)...................(0565)34-4112 岐阜支店 ............... 〒500-8842 岐阜市金町4-30 (明治生命岐阜金町ビル).................(0582)63-8787 関西支社 ............... 〒530-8206 大阪市北区堂島2-2-2 (近鉄堂島ビル)......................(06)6347-2771 兵庫支店 ............... 〒650-0035 神戸市中央区浪花町59 (神戸朝日ビル)....................(078)392-8561 中国支社 ............... 〒730-0037 広島市中央区中町7-32 (日本生命ビル)....................(082)248-5445 四国支社 ............... 〒760-8656 高松市寿町1-1-8 (日本生命高松駅前ビル).................(087)825-0055 九州支社 ............... 〒810-8686 福岡市中央区天神2-12-1 (天神ビル)......................(092)721-2247 アフタ−サービスにつきましては本文巻末ページをご参照ください 三菱電機FA機器 TEL. FAX技術相談 機器T 《TEL技術相談》F、 FXシリーズ 受付 / 月曜∼金曜(土曜、日曜、祝祭日は除く) 9:00∼19:00( 金曜は 16:30 まで) 受付電話 / (0792)98-8884…(姫路製作所) 《FAX技術相談》F、 FXシリーズ 受付 / 月曜∼金曜(土曜、日曜、祝祭日は除く) 10:00 ∼ 16:00 ただし、受信は常時 受付FAX/ 本社機器営業第二部 (03)3459-5619 中部支社機器第二部 (052)565-3349 関西支社機器第二部 (06)6347-2657 MELSEC-F FAX 情報 サービス 情報サ 《FAX情報サービス》FXシリーズ 受付 / 24時間 無休 受付FAX/ (0792)98-9894…(姫路製作所) お手持ちのFAX装置から、 FXシリーズシーケンサの新製品情報や各 種の製品情報が入手できます。情報内容やこれに対応する情報番号 の取出しは、 FAX装置から上記FAX番号に電話をかけ、 操作メッセージ に従って、 総合メニューボックス番号 を入力してください。 *ダイヤル回線をご使用のばあいは、操作メッセージに従ってFAX装 置のトーン信号切換操作を行ってください。 インタ−ネットによる三菱電機FA機器技術情報 サ−ビス 機器技術情報サ http : //www.nagoya.melco.co.jp/ 三菱電機FA機 MELFANSweb ホ−ムペ−ジ : JY992D59101C この印刷物は1999年12月の発行です。 なお、お断りなしに仕様を変更することがありますのでご了承ください。 1999年12月作成
© Copyright 2024 Paperzz