条件検索

32 件の検索結果

ページ 3 - 4 ページ

  • 言語ファンクション/ファンクションブロック: C言語ファンクションの作成手順
    回答: 定義 まず、ワークベンチに付属するTDBuild.exe(TargetDefinition Builder)を使用します。これはC言語ファンクション/ファンクションブロック/変換関数をはじめ、I/Oボードやターゲットの構成を定義しするためのツールです。TDBuildを使えば、必要なCソースファイルやワークベンチ用の定義ファイルを簡単に生成することができます。 1. TDBuildを起動します。TDBuildはワークベンチのインストールディレクトリの "Bin" フォルダにあります。 2. 新しいTDBuildの定義ファイル(*.tdb)を作成します。 3. "Insert" メニューを実行し、"Cfunction" を新規作成します。 4. 追加するファンクションの名前を入力します。(例:MyFCT) 5. 入力パラメータ/出力パラメータ/ヘルプコメント等を定義します。 6. "Tools"-"Generate 'C' code" メニューを実行し、ソースファイル("*.c") とヘッダファイル("*.h") ファイルを生成します。 このファイルを、ターゲットのパッケージディレクトリに直接生成するか、後でそこにコピーしてください。 7. "Build"-"Send to File" メニューを実行し、ISaGRAF Ver.4プロジェクトにインポートする定義ファイル(*.txt)を生成します。 注意:生成された定義ファイルは、1つのターゲットにしか適用できません。ファンクションを複数のターゲット上で使用する必要がある場合は、ターゲット毎に定義ファイルを生成してください。 ワークベンチ側での作業 1. ...
  • 言語ファンクション/ファンクションブロック: C言語ファンクション類の選択ダイアログからオンラインヘルプの特定のページを表示させる方法
    回答: C言語ファンクション/ファンクションブロックを作成するには、ターゲットディフィニションビルダ(TDBUILDツール)を使用します。これらのファンクション類には、必要であればMicrosoft社の HTML HELP Workshopで作成したCHM形式のオンラインヘルプを起動するようなコマンドラインを付加しておくこともできます。このヘルプは、エンドユーザがファンクション類を挿入するときに参照できるようになります。 まず、TDBuildツールで"On Line info"のタブを選び、下記のコマンドラインを指定しておきます。 hh.exe -mapid 1 ..\help\MyCHelp.chm ここで MyCHelp.chm は作成したヘルプファイル名で、"1" はHTML Help Workshopで選んだファンクションに対応するエイリアス番号です。同じヘルプファイルで他のファンクション類のヘルプを表示させるのなら、例えば下記のように指定します。 hh.exe -mapid 2 ..\help\MyCHelp.chm エンドユーザがプロジェクトにこれらファンクションをインポートし、ブロックの選択時に「ヘルプ」ボタンをクリックすると、上記で指定したヘルプが表示されます。 ...
  • NTターゲット: C言語ファンクションを作る手順
    回答: バージョンによって手順が異なります。 ISaGRAF  Ver.4の場合 定義 まず、ワークベンチに付属するTDBuild.exe(Target Definition Builder)を使用します。これはC言語ファンクション/ファンクションブロック/変換関数をはじめ、I/Oボードやターゲットの構成を定義しするためのツールです。 TDBuildを使えば、必要なCソースファイルやワークベンチ用の定義ファイルを簡単に生成することができます。 1. TDBuildを起動します。TDBuildはワークベンチのインストールディレクトリの "Bin" フォルダにあります。 2. 新しいTDBuildの定義ファイル(*.tdb)を作成します。 3. "Insert" メニューを実行し、"C function"を新規作成します。 4. 追加するファンクションの名前を入力します。(例:MyFCT) 5. 入力パラメータ/出力パラメータ/ヘルプコメント等を定義します。 6. "Tools"-"Generate 'C' code" メニューを実行し、ソースファイル("*.c") とヘッダファイル("*.h") ファイルを生成します。 このファイルを、ターゲットのパッケージディレクトリに直接生成するか、後でそこにコピーしてください。 7. "Build"-"Send to File" メニューを実行し、ISaGRAF ...
  • NTターゲット: WindowsNTターゲットのフック関数のカスタマイズ手順
    回答: このドキュメントでは、ISaGRAF Ver.4ターゲットにフック関数を実装する手順を説明します。WindowsNTターゲットへの実装を例にします。 なお、この実装を行うには、ISaGRAF Ver.4開発ツールキット(NSS-I4-PRDK)が必要です。 1. ISaGRAF Ver.4 NT ターゲットのソースファイルを開発ツールキットからコピーします。 2. Visual C++でプロジェクト MakePrdk.dsw を開きます。 3. 「ファイル」-「新規作成」メニューを開き、WinNT_large\IsaSmpHooksフォルダにWin32 スタティックライブラリISaSmpHookを作成します。 以下の図で設定されているオプションと同様に設定してください。 4. Windowsエクスプローラなどで、Visual C++ が作成したWinNT_Large\IsaSmpHooks ディレクトリ内にSmpHooks.c という名前で新しいファイルを作成します。 5. ターゲット定義ファイル dsys0def.h ファイルに以下の行を追加します。 #define ITGTDEF_KERHOOK_BEGCYCEXEC この定義により、毎サイクルの最初のフック関数kerHookBegCycExec() がコールされるようになります。 フック関数にはいくつか種類があります。他のフックの設定に関しては、ISaGRAF Ver.4開発ツールキットのオンラインヘルプ(ProDK.chm)をご覧ください。 6. IsaSmpHooksプロジェクトの設定(ReleaseとDebugの双方)をIsxlHsdプロジェクトと同じになるよう変更します。 7. Visual ...
  • ターゲット: ISaGRAF Ver.4のIXL(ISaGRAF eXchange Layer)の仕様は公開しているか?
    回答: ISaGRAF Ver.4開発ツールキットのマニュアル(オンラインヘルプ)にて公開しています。 IXLとは、ISaGARF Ver.4ターゲットの変数にアクセスしたり、ターゲットの動作を制御するためのプロトコルの仕様です。 ...
  • ターゲット: ISaGRAF Ver.4ではコンフィギュレーション=ターゲットハードウェアをネットワーク経由で複数台設定できますが、マシンのIPアドレスをどのように設定しますか?
    回答: ワークベンチのプロジェクト内では、ターゲットプラットフォームとは、1つの「コンフィギュレーション」に該当します。 このコンフィギュレーションにIPアドレスを設定するには、 1. ハードウェアアーキテクチャウィンドウでETCP(Enhanced TCP/IP)ネットワークを挿入します。 2. コンフィギュレーションと挿入したネットワークを接続します。 コンフィギュレーションは非選択状態(タイトルバーがグレーの状態)にします(空白エリアのどこかををクリックしておきます)。 コンフィギュレーションからドラッグ&ドロップの動作でネットワークへの接続を実行します。(選択モードでドラッグ&ドロップを行うと、コンフィギュレーションの位置が移動してしまいます。) 3. 「接続プロパティ」で "IP Adress" の値を設定します。(例: 127.0.0.1) 値を設定したら、「OK」を押してダイアログボックスを抜けます。 4. 操作の詳細については、ヘルプの下記のセクションをご覧下さい。 「ワークベンチ」-「プロジェクトマネージャ」-「ハードウェアアーキテクチャの表示」接続接続プロパティ ...
  • ターゲット開発: ISaGRAF Ver.4 ターゲット移植のためのガイドライン
    回答: ISaGRAF Ver.4  開発ツールキットを使用してVer.4のターゲットを移植する際にVer.4のヘルプ(ProDk.chm)を読む前に、以下の移植のガイドラインをご覧下さい。 【内容】 (1)基本的なシステム要件 (2)移植のファーストステップの概要 (3)移植のヒント (1)基本的なシステム要件 Ver4.03以降のISaGRAF Ver.4 ターゲットでは、移植を行うシステムに必要な項目は以下の通りです。 1.マルチタスクOS 2.ANSI Cによる開発環境を使用可能なターゲットシステムであること 3.以下のような機能をもつこと TCP/IP BSD ソケットインタフェース ワークベンチとターゲット間の通信、またはターゲットどうしのバインディングリンク用です。 シリアル通信ドライバ シリアル通信ポートを制御するドライバ。基本的には、キャラクタ単位の読み書きを行います。ワークベンチとの通信にのみ使用します。 時間管理 一定周期のものであれば何でも構いません。システムティックなどを利用します。 ISaGRAF Ver.4の時間の単位はミリ秒です。つまり、最大の精度は1ミリ秒になります。 共有メモリ 複数のタスクから同じメモリエリアをアクセスできること。 セマフォ タスク間の同期を取るためにバイナリセマフォを使います。 複数タスクからのデータアクセス制御のためにはミューテックスセマフォ(排他セマフォ)を使います。 メッセージキュー タスクどうしはメッセージをやり取りして通信します。メッセージの内容は移植時に気にする必要はありません。 メッセージキューは、セマフォで管理された共有のFIFOバッファと見なすことができ、複数のタスクからアクセスが可能です。 タスク管理 各タスクは、アプリケーションのコンフィギュレーションやデバッグコマンドにともない、スタート/終了させる必要があります。 補助記憶装置(ハードディスク、RAMディスク、フラッシュメモリ等) アプリケーション情報の保存用の媒体管理。アプリケーションコードや、シンボルテーブル等の保存のために使います。 また、アプリケーションコードが保存されているリソースの一覧を取得するためのシンプルなブラウズ機能も必要です。 以上の機能は、一連のシステムルーチンを経由してコールされます。これらのルーチンのインタフェース仕様は、ISaGRAF Ver.4開発キットのヘルプファイルをご覧下さい。 ISaGRAF ver.4開発ツールキットの"NewOS"フォルダ内には、これらのルーチンのソースのひな型をコメント付きで収録してあります。 実際の移植のおもな作業は、このひな型の内容を埋める、つまり、ISaGRAF Ver.4に必要な機能をターゲットOSに合わせる作業ということになります。 4.スタティックなデータの配置 全ての関数から参照可能な変数があります。これは通常、スタックには格納されないグローバル変数です。 また、複数のタスクが同じ実行コードを共有する場合があります。 これはおもに バーチャルマシンのタスクが複数回起動する場合あらゆるタスクからコールされる、システムレイヤのライブラリ です。このような場合、OSはタスクのインスタンス毎にスタティックデータ用のメモリを割り当てられる必要があります。 これは、「カーネル」ライクなOSやマルチスレッドOSといったものにはあてはまりません。 この機能を実現するために、OSは最低限の機能として、タスクのコンテキスト切替時に数個のポインタ(3、4個)をストアできなければなりません。したがって、タスクの初期化の第一段階で、データの割り当てを行うようなプログラミングをすることになります。 VxWorks版ターゲットのソースには、そのような例が含まれています。 (2)移植のファーストステップ 1.これまでに示した最小の機能要件が満たされていることを確認してください。 2.ISaGRAF Ver.4開発ツールキット(NSS-I4-PRDK)のCD-ROMから、"NewOS" フォルダの内容を開発環境にコピーしてください。 3.ターゲットに関する定義を行います。 ターゲットの定義は、ワークベンチ側、ターゲット側ともに必要です。 ワークベンチ側では、PLCtools.mdb または TDBuild.exe ツールを使って、新しいターゲットの定義をおこないます。 ターゲット側では、IsaSys\dsys0def.h の中の定義を修正します。 もちろん、双方の設定内容は一致していなければなりません。 dsys0def.h ...
  • ターゲット開発: WindowsNTターゲットのフック関数のカスタマイズ手順
    回答: このドキュメントでは、ISaGRAF Ver.4ターゲットにフック関数を実装する手順を説明します。 WindowsNTターゲットへの実装を例にします。 なお、この実装を行うには、ISaGRAF Ver.4開発ツールキット(NSS-I4-PRDK)が必要です。 1. ISaGRAF Ver.4 NT ターゲットのソースファイルを開発ツールキットからコピーします。 2. Visual C++でプロジェクト MakePrdk.dsw を開きます。 3. 「ファイル」-「新規作成」メニューを開き、WinNT_large\IsaSmpHooksフォルダにWin32 スタティックライブラリISaSmpHookを作成します。 以下の図で設定されているオプションと同様に設定してください。 4. Windowsエクスプローラなどで、Visual C++ が作成したWinNT_Large\IsaSmpHooks ディレクトリ内に SmpHooks.c という名前で新しいファイルを作成します。 5. ターゲット定義ファイル dsys0def.h ファイルに以下の行を追加します。 #define ITGTDEF_KERHOOK_BEGCYCEXEC この定義により、毎サイクルの最初のフック関数 kerHookBegCycExec() がコールされるようになります。 フック関数にはいくつか種類があります。他のフックの設定に関しては、ISaGRAF Ver.4 ...
  • ターゲット開発: オンラインヘルプで完全に一致する単語を検索する方法
    回答: *.chm(ISaGRAFVer.4 関連製品のヘルプファイル)で、ある表現から検索を行う場合、その文字列をダブルコーテーション(")で囲んでください。完全一致する単語のみ検索されます。 このダブルコーテーションをつけないと、その表現を含む全ての単語が検索されます。 ...
  • ターゲット開発: ISaGRAF Ver.4.10以降では、ソケットライブラリを使用することが標準的な仕様となった。Ver4.03のソースをアップグレードする手順はどうなるか?
    回答: 下記の内容は一般的なアップグレードの手順であることをあらかじめご了承下さい。PRDKに付属するTarget\\NewOs\\MultiTask\\Release.txt ファイルにもこの内容が書かれています。 一般的なターゲットの移植の手順は下記のようになります。 1. 新しいOS用の新バージョンのソースファイルをコピーする。 2. システム依存する部分のファイル(移植時に空の関数内を記述したファイル)をコピーする。 3. 他に追加のコンポーネント(C言語POUやI/Oドライバ)のソースを作成済みなら、それもコピーする。 4. dsys0def.h ファイルを編集しなおして、Ver4.10の新規の定義に合うようにする(前述のファイルの内容をご覧下さい) 5. その他のAlterSys Europe提供のファイルで独自の変更を加えたものがあれば、修正する(通常はこの作業は必要ないはずです) 6. その他、各バージョンのリリースノートの詳細にある項目を実施する。 基本的に ISaGRAF Ver4.10のソケットを移植するには2種類の方法があります。 方法1 Ver4.10のソースコードに付属する AlterSys Europe作成の det0soc.c ファイルをそのまま、修正せずに使います。Ver4.10からはこのファイルはシステムに依存しないものとなっており、修正は不要です。このファイルでは新たに ISysSocライブラリを使用しており、移植時には dsys0soc.c ファイルを使用します(オンラインヘルプ PRODK.CHMの「TCP/IPインタフェース」のページをご覧下さい)ので、この内部をシステムに合わせて書き換えます。また、新しい ISysSoc.lib ファイルを生成するためのメイクファイルの修正も必要です(Target\\NewOs\\MultiTask\\MakPrdk.txtファイルをご覧下さい) 移植時には ISaGRAF Ver.4.10 ...

もっとも人気の検索:

最も人気の FAQ RSS

  1. LD言語で、ある接点がFALSEの場合、それ以降のファンクションブロックを実行しないように出来るか? (44515 回の閲覧)
  2. SFC要素の「ステップ」と「トランジション」の意味と役割を教えてください。 (43439 回の閲覧)
  3. ISaGRAF WorkbenchをWindows 7で使用するにはどうしたらよいでしょうか? (40938 回の閲覧)
  4. ISaGRAFはIEC1131-3のシステム定義に準拠しているか? (38992 回の閲覧)
  5. PLCプログラムをより早く動かすにはどうすればよいですか? (38823 回の閲覧)
  6. LD言語で、立ち上がり・立ち下がりの出力はあるか? (36882 回の閲覧)
  7. VxWorksターゲットにおける変数管理の留意点について (36386 回の閲覧)
  8. 日立製作所製SHマイコン用コンパイラ使用時の注意事項 (35590 回の閲覧)
  9. Cファンクション/ファンクションブロックの"Hidden" パラメータとはどのようなものか (35528 回の閲覧)
  10. FBD/LD言語で同じ行に複数の演算がある場合の実行順序は? (33520 回の閲覧)

最近の FAQ RSS

  1. ファンクションブロックはネストできますか。 (2016-08-05 15:07)
  2. Cファンクション/ファンクションブロックの"Hidden" パラメータとはどのようなものか (2015-01-30 14:24)
  3. 前のISaGRAFで作成したプロジェクトをインポートしたら、コメントが文字化けを起こしています。 (2014-05-07 06:52)
  4. 前のバージョンで作成したプロジェクトは読み込めますか。 (2014-03-07 07:46)
  5. ISaGRAFでコンフィグレーション、リソースそれにPOUはそれぞれいくつ作成できますか。 (2014-03-07 02:06)