MELSEC-QのリモートI/O局命令について

このQ&Aのポイント
  • MELSEC-QにはMELSECNET/Hを使って5つのリモートI/O局を接続しています。
  • リモートI/O局には複数のインテリユニットがあり、リンク専用命令でデータの読み書きを行いたいと考えています。
  • しかし、命令文の中の「n1」のチャンネル番号の設定方法がわからず、通信がうまくいっていません。MELSECのサポートにも困っています。
回答を見る
  • 締切済み

MELSEC-QのリモートI/O局命令について

現在、MELSEC-QにてMELSECNET/HでリモートI/O局を5局接続しています。 リモートI/O局にはインテリユニットが多数あり、リンク専用命令にて データの読書きを行おうとしております。 命令文は「Z.REMFR "Jn" n1 n2 n3 n4 D1 n5 D2」と言った命令を仕様 しているのですが、「n1」のチャンネル番号と言うのがどういう設定に したらよいのかわからずに、うまく通信できていません。 MELSECのサポートに聞いても取説参照としか教えていただけず困っています。 お解かりになられる方がいらっしゃいましたら御教示御願い致します。

noname#230358
noname#230358

みんなの回答

noname#230359
noname#230359
回答No.1

「Z.REMFR "Jn" n1 n2 n3 n4 D1 n5 D2」 のパラメータでn1のみが分からないのでしょうか? 他のは全て理解できてると? Z.REMFRの解説は Q対応MELSECNET/Hネットワークシステム リファレンスマニュアル (リモートI/Oネット編)SH(名)-080123-N 7.1.1 リンク専用命令 に有ります がぁしかぁーかし n1チャンネル番号についての解説は一切ナシ <なんでやねん? と、言う事は他の章に有るハズ で、探し当てました Q対応MELSECNET/Hネットワークシステム リファレンスマニュアル (PC間ネット編)SH(名)-080026-L 7.4.4 論理チャンネルNo.を使用したメッセージ送信機能  ここにチャンネルの解説は記載されています 7.4.5 プログラミング  ここに 「チャンネルを8つ同時に使用できますが,同じチャンネルを複数の命令で同時に  使用することはできません。」 と、記載されています >MELSECのサポートに聞いても取説参照としか教えていただけず困っています。 どの取説の何ページのどの章を参照するのか聞きましたか? 参照すべきマニュアルが沢山有って用語定義を探すだけでも骨が折れる 因みに、私はチャンネルを使ったことが有りませんので後は分かりません

noname#230358
質問者

お礼

ありがとうございました。 「Z.REMFR "Jn" n1 n2 n3 n4 D1 n5 D2」 のパラメータで、n1以外はわかっています。 通信がうまくできていないため、よくわかっていないn1が 原因ではないかと思っています。 現象としては、D1に数値を読み込んでいるみたいなのですが、 パラパラとチャタリングしているみたいな感じで、D1の 完了信号もon-offを繰り返しています。 プログラムで命令文を走らせて数値を書込んで、アナログカードの バッファメモリをモニタしたのですが、数値が書込まれていない 状況です。 サポートには取説の、Q対応MELSECNET/Hネットワークシステム リファレンスマニュアル(リモートI/Oネット編)SH(名)-080123-N 7.1.1 リンク専用命令 を参照とだけ言われました。

関連するQ&A

  • A2C-CPUですがリモート局(遠隔)を1つ減らしたいのですが、パラメ

    A2C-CPUですがリモート局(遠隔)を1つ減らしたいのですが、パラメータ等設定とリンク線の結線変更の方法に自信がありません。 リモートI/OユニットはAX40Y50Cです。 ご指導お願いします。

  • I/Oエラーについての質問です。

    I/Oエラーについての質問です。 WindowsXPでバイオを使ってます 数日前にインターネットを繋ぎました。 今朝は正常に繋がったのですが、ついさっき繋ごうとしたら以下のエラーがでました。 0x766660bdの命令が0x00d00024のメモリを参照しました。 0xc000007fがI/Oエラー状態のためメモリに格納されませんでした。 となってネットに繋げなくなってしまいました。 何をどう操作したらネットに繋がるようになりますか? 携帯電話から作成しているので、文章が読みにくいと思いますが、ご容赦ください…。 基本的なパソコン用語もわかってないくらいの初心者ですが、よろしくお願いします。

  • I-O DATA mAgicTV5のアプリケーションエラー

    I-O DATA mAgicTV(予約機能)の予約不能について 番組表で録画予約の画面を開くと下記のようなエラーが出てフリーズします。 --- TvmCtl DLL IO DATA:Adams Epg.exe-アプリケーションエラー "Ox7c97426dの命令が"0x0000013a"のメモリを参照しましたが、メモリがメモリが"read"になることはできませんでした。 I-O DATA mAgicTV製品を使用されているかたでこの解決方法をご存じの方おられましたら、解決策の手順宜しくお願いいたします。

  • MELSEC-QシーケンサをVBAで通信したい!

    三菱のシーケンサMELSEC-Qシリーズのシーケンサ「QJ71C24N」にエクセルVBAで 通信したいと考えています。なかなかうまくいかず、困り果てています・・・。 下記、進めてきた経緯と組んだプログラムを書きます。 どこがおかしいか、どなたか教えてください・・・ ■ゴール シーケンサ内部のM300という変数に格納されている値を、VBAで作成した テキストボックスに表示させたい。 1.使用するエクセルのバージョンは2003です。 MSCOMMが入ってなかったため、「vb6sp6rt4.exe」というランタイムを用いて MSCOMMはインストールできました。 2.以下プログラム Dim R As String Private Sub CommandButton1_Click() Sheets("Sheet1").Select MSComm1.DTREnable = True MSComm1.RTSEnable = True MSComm1.inputLen = 0 'Input プロパティ使用時に、バッファ全体を読み取る。 MSComm1.commport = 1 'これは必要かと考え、テキストにはないが追加。 MSComm1.Settings = "9600,N,8,1" MSComm1.portopen = True MSComm1.inbuffercount = 0 ' 0文字受信するまで待機 MSComm1.output = Chr$(H5) + "F90000FF0004010000D*0010200050" + Chr$(H31) + Chr$(H43) End Sub +でいいのでしょうか?&というのも見ましたが・・・。 一応下記の通りだと取扱説明書をみながら、進めました。 'chr$(H5):制御コードENQuiry(問合せ):ヘッダ 'F900:識別番号+フレーム+局番号 '00FF:ネットワーク番号+PC番号 '00:自局番号 '0401:コマンド(一括読み出し) '0000:サブコマンド(モニタ条件指定無し、デバイスメモリ拡張指定無し) 'D*:デバイスコード '001020:先頭デバイス '50:デバイス点数 ' Chr$(H31) + Chr$(H43):サムチェックコード ↓ここからが、テキストボックスへの表示になりますが・・・。これもうまくいかず。 Private Sub CommandButton2_Click() R = MSComm1.input text1.Text = R text2.Text = Mid$(R, 6, 4) End Sub そして、ポートオープン。これは、エラーが出ず、うまくいったと考えています。 Private Sub Form_Load() Sheets("Sheet1").Select MSComm1.DTREnable = True MSComm1.RTSEnable = True MSComm1.inputLen = 0 'Input プロパティ使用時に、バッファ全体を読み取る。 MSComm1.commport = 1 'これは必要かと考え、テキストにはないが追加。 MSComm1.Settings = "9600,N,8,1" MSComm1.portopen = True End Sub そして、ポートクローズ。こちらも、エラーが出ず、うまくいったと考えています。 Private Sub CommandButton3_Click() MSComm1.portopen = False End Sub 最大の問題は、しっかりとコードが送信できているのかというところです。 解らないところも多々あるため不明な点も多いですが、なにとぞ、教えてください。

  • 0x766d9392 I/Oエラー状態について

    0x766d9392 の命令が0x025de600のメモリを参照しました。0xc000007f I/Oエラー状態のため要求したデータはメモリに格納されました。とでます。同じようなエラーがあったので見させていただいたのですが、チェックすらもできません。 パソコンでゲームをしていると、いきなり画面が重くなり何かと思いましてゲームを終了した所、ハードcのデータ要領は残り僅かとの事でした。「何か消すか」と思いcを開こうとマイコンピューターをクリックした所上記のエラーになります。スタート、すべてのプログラムからのアクセスもすべて上記エラーになり、手を打てません。 これはシステムの再起動するしかないのでしょうか?

  • FX2N-32CCLとQCPU CC-LINK設定

    MODE 設備 CC モジュール I/ONo 局番 RX RY RWr RWw VER1 空缶プール QJ61BT11 140 0 X1000 Y1000 D2000 D3000 マスター 総接続台数6、Q02CPU VER1 ロイヤル充填 QJ61BT11 100 1 X1000 Y1000 D2000 D3000 Q02CPU VER1 ロイヤルタック QJ61BT11 80 7 X1000 Y1000 D2000 D3000 Q02CPU VER1 ミルク充填機 QJ61BT11 100 4 X1000 Y1000 D2000 D3000 Q02CPU VER1 ミルクキャッパー FX2N-32CCL 0 3 FX3G マスターPLC CCリンク設定 拡張サイクリック 占有 リモート局 予約/無効局 インテリジェント用バッファ指定(ワード) 台数/局番 局種別 設定 局数 点数 指定 送信 受信 自動 1/ 1 インテリジェントデバイス局 1倍設定 1局占有 32点 設定なし 64 64 128 2/ 2 インテリジェントデバイス局 1倍設定 1局占有 32点 設定なし 64 64 128 3/ 3 インテリジェントデバイス局 1倍設定 1局占有 32点 設定なし 64 64 128 4/ 4 インテリジェントデバイス局 1倍設定 1局占有 32点 設定なし 64 64 128 5/ 5 リモートI/O局 1倍設定 1局占有 32点 設定なし 6/ 6 リモートI/O局 1倍設定 1局占有 32点 設定なし 現状局番3のFX3Uの所にFX2N-32CCLがあり、局番3で1局占有の設定になっております。 該当のFXのラダーには、 FROM K0 K0 K4M40 K1が掛かれております TO命令は存在していませんでした。 この状態で、局番3のM200を局番4へ接点出力を1点送りたいのですが、TO K0 K0 K4M200 K1を実行させると 局番4のバッファアドレスがE4H-E5Hに書き込まれると思いますが、RX=X1000の設定がありますので、 この場合、X1020~16点反映されるという事で良いでしょうか?

  • DVDドライブのI/Oエラー

    初めての質問です。足りない情報がありましたら、ご指摘ください。 DVD-RAMドライブにアクセスしようとすると以下のエラーが発生し、開きません。「E:\にアクセスできません。I/Oデバイスエラーが発生したため、要求を実行できませんでした。」 PCはSharp Mebius PC-MV1-D5W DVD-RAMドライブは内蔵のMatsushita UJ-810で、WindowsXP SP2です。 昨日までは、通常に使用できていました。 以下確認しましたが、解決できません。 ・BIOSでは認識しています。 ・リカバリーを試しましたが、リカバリーディスクを読みに行くものの、HDDから起動してしまいリカバリーも出来ません。(起動はCD・DVD→HDDの順になっています。) ・デバイスマネージャーでは正常に動作していることになっています。 ・Sharpのホームページでは、BIOS、DVDドライブのドライバーともにSP2対応しているとの事でした。 ・すべてのCD、DVDの読み書きが出来ません。 ・このドライブ以外は全く正常に動作しています。 なんとか、写真を保存してあるDVDを見たいので解決策を教えてください。どうぞ宜しくお願いします。

  • リモートI/O

    リモートI/Oとはどういうものでしょうか?CPU(シーケンサ)とは別物ですか?

  • C言語、半角で打ち直しても多くのエラーメッセージ。

    いつも大変お世話になり、誠にありがとうございます。 標記の件。 下記に、コード、エラーメッセージを書きます。 コンパイルしたところ、多くのエラーメッセージが出ます。 こういうエラーメッセージの場合、誤って、全角で 打ってしまったのだと思い、全部を半角で打ち直します。 デモ、また大量のエラーメッセージが出ます。 全角スペースを半角で打ち直す「コツ」ってありますか? 是非とも教えてください。 ご多忙中のところ、度々申し訳ございません。 下記コードが何故コンパイルエラーを起こすのか どうか、ご回答の程宜しくお願い申し上げます。        記 コード /*文字と数値を出力する*/ #include <stdio.h> int main(void) { printf("%cは文字です。\n",'A'); printf("%dは整数です。\n",123); printf("%fは小数です。\n",10.5); return 0; } エラ-メッセージ C:\MinGW>gcc test1.c -o test1 test1.c:1:1: error: stray '\377' in program test1.c:1:2: error: stray '\376' in program test1.c:1:3: error: expected identifier or '(' before '/' token test1.c:1:4: warning: null character(s) ignored test1.c:1:6: warning: null character(s) ignored test1.c:1:7: error: stray '\207' in program test1.c:1:17: error: stray '\222' in program test1.c:1:19: error: stray '\372' in program test1.c:1:21: error: stray '\233' in program test1.c:1:25: error: stray '\213' in program test1.c:1:28: warning: null character(s) ignored test1.c:1:30: warning: null character(s) ignored test1.c:2:1: warning: null character(s) ignored # i n c l u d e < s t d i o . h > ^ test1.c:3:1: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:3: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:4: error: invalid preprocessing directive #i i n t m a i n ( v o i d ) ^ test1.c:3:5: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:7: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:9: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:11: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:13: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:15: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:17: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:21: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:23: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:25: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:27: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:29: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:31: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:33: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:35: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:3:37: warning: null character(s) ignored i n t m a i n ( v o i d ) ^ test1.c:4:1: warning: null character(s) ignored { ^ test1.c:5:1: warning: null character(s) ignored p r i n t f ( " % c o0アールW[g0Y00\ n " , ' A ' ) ; ^ test1.c:5:3: warning: null character(s) ignored p r i n t f ( " % c o0アールW[g0Y00\ n " , ' A ' ) ; ^ test1.c:5:5: warning: null character(s) ignored p r i n t f ( " % c o0アールW[g0Y00\ n " , ' A ' ) ; ^ test1.c:5:7: warning: null character(s) ignored p r i n t f ( " % c o0アールW[g0Y00\ n " , ' A ' ) ; ^ test1.c:5:11: warning: null character(s) ignored p r i n t f ( " % c o0アールW[g0Y00\ n " , ' A ' ) ; ^ test1.c:5:13: warning: null character(s) ignored p r i n t f ( " % c o0アールW[g0Y00\ n " , ' A ' ) ; ^ test1.c:5:15: warning: null character(s) ignored p r i n t f ( " % c o0アールW[g0Y00\ n " , ' A ' ) ; ^ test1.c:5:17: warning: null character(s) ignored 全部はコピーできませんでしたが、どうぞ、宜しくお願い申し上げます。

  • 位相について

    本の練習問題で命題を証明しています。 自信のない箇所があります。 「O_d=O_cを示せ」という問題の「O_d⊂O_c」の部分です。 記号の説明は下記の点線で囲んだ所を見てください。 その下に自分の証明を書きます。 (注)と記した辺りで、問題にあるヒント「R^nからR^mへの線形写像hはh(e_1),...,h(e_n)で一意に定まるという事実を使え」を参考にました。 使い方はこれでもいいでしょうか(他にもあるようです)。 他にも誤りや誤っていそうな所がありましたら、ご指摘、アドバイスください。 よろしくお願いします。 -------------------------------------------- Hを R^nからR^mへの線形写像全体の集合とする。 各h∈Hについて、hを表す(m, n)型実行列をf(h)と書くと、fは全単射。 h、l∈Hの間の距離をf(h)-f(l)の2-ノルムとして定める。 この距離により定まるHの位相をO_d(開集合系)で表す。 R^nからR^m(どちらもユークリッド位相を考える)への連続写像全体の集合C(R^n, R^m)にコンパクト開位相を定めることができる。 ここで、H⊂C(R^n, R^m)。 コンパクト開位相のHにおける相対位相をO_c(開集合系)で表す。 e_1,...,e_nをR^nの標準基底とする。 -------------------------------------------- 以下、O_d⊂O_cを示す。 U∈O_dを固定する。 S_i={h(e_i) | h∈U}(i=1,...,n) とおく。 全てのiについてS_iはR^mの開集合。 h∈U ⇔ [h(e_i)∈S_i(i=1,...,n), h∈H](注). ここで W({e_i}, S_i)={h∈C(R^n, R^m) | h(e_i)∈S_i} とおく。 (各A⊂R^n、B⊂R^mについての記法W(A, B)が前提としてあり、それに従っています。) すると [h(e_i)∈S_i(i=1,...,n), h∈H] ⇔ h∈H∩[∩_(i=1)^n W({e_i}, S_i)]. よって U=H∩[∩_(i=1)^n W({e_i}, S_i)]. ここで全てのiについて{e_i}はR^nでコンパクト、S_iはR^mの開集合。 よって全てのiについてH∩W({e_i}, S_i)∈O_cだから、 U∈O_c。 したがってO_d⊂O_c。