法的情報
本ガイドで言及されているPro-faceブランドならびにシュナイダーエレクトリックSEおよびその子会社の商標は、シュナイダーエレクトリックSEまたはその子会社の所有物です。その他すべてのブランドは、各所有者の商標である場合があります。本ガイドおよびその記載内容は、該当する著作権法で保護されており、情報提供のみを目的とし作成されています。本ガイドのいかなる部分も、いかなる形式や手段(電子的、機械的、複写、記録、またはその他)によっても、どのような目的であっても、シュナイダーエレクトリックから書面による事前の許可を得ずに、再製または頒布することはできません。
シュナイダーエレクトリックは、「現状のまま」本ガイドを調べる非独占な個人ライセンスを除き、本ガイドまたはその記載内容を商業的に使用する権利またはライセンスを付与することはありません。
シュナイダーエレクトリックの製品および設備の設置、運転、メンテナンス、管理は必ず、適格な担当者が行ってください。 規格、仕様、および設計は随時変更されるため、本ガイドに記載されている情報は予告なく変更されることがあります。 適用法により認められる範囲で、シュナイダーエレクトリックおよびその子会社は、本資料の情報コンテンツの誤りや記入漏れまたは本資料に含まれる情報の使用に起因する結果、もしくはその結果から生じる結果に関し、一切責任を負いません。
はじめに
本ドキュメントでは、PS6000シリーズ(以下本製品)をお使いいただくための
- セキュリティー対策
- System Monitor Sample Dashboard(以下System Monitor)の使用方法
- 本製品専用Node
- System Monitor API
- System Monitor FAQ
- 16DI/8DO API
についての情報を記載しています。
更新履歴
- 2024/03 Windows Security Virus & threat protection updateの有効化方法, ERROR LED API追加
- 2021/08 System Monitor API, 16DI/8DO API追加
目次
セキュリティー対策
ネットワークの保護
- 本製品をネットワーク環境で使用される場合、構築するネットワーク自体をセキュアな状態にしてください。
(Firewall機器等ネットワークセキュリティー機器の設置等)
詳細については設備のネットワーク管理者へご相談ください。
本製品OS(Windows)のセキュリティーアップデート
- Windows Automatic Updateは出荷時にはポリシー設定によってDisableに設定されています。 自動更新が必要な場合には設定を変更してください。
Windows Automatic Updateの有効化方法 - Write Filterを使用する場合にはWrite FilterをDisableにした状態でアップデートを行ってください。
- 本製品設置後も、定期的に「マイクロソフト更新プログラムの認定」ページを確認して、記載の認定済みセキュリティーアップデート(QFE)を適用し、OSを最新の状態に維持してください。
- セキュリティーアップデートを定期的に適用できない使用環境の場合には、オプションのTrellixライセンスをご購入いただき、許可リスト方式のセキュリティー対策の実施をお勧めします。
Account type
- 通常の使用時には、アカウントの種類(Account type)をStandard Userとして作成したユーザーを使用してください。
アカウントの種類がAdministratorのユーザーはシステムの設定変更が必要な場合のみ使用してください。
Standard Userのユーザーアカウント作成
Node-REDの環境設定
- Node-REDの環境設定ファイルは、各ユーザーアカウントに保持されます。設定変更の場合は、各ユーザーアカウントへ 更新やコピーが必要となります。
Node-RED フローエディターのユーザー名、パスワード
- デフォルトのユーザー名は「admin」、パスワードは「Pw#12345」
- Node-REDのユーザー名、パスワードは初回ログイン後必ず変更してください。パスワードは強力なパスワードに設定してください。ユーザー名、パスワードの変更方法はこちらのページを参照してください。
- ログイン情報(トークン)の有効期限はデフォルトで7日となっています。 フローエディターにログインしログアウトしないままエディターを閉じるとログイン状態が7日間保持されますので、エディター画面を終了する場合にはログアウトを行ってください。
- ログイン情報(トークン)の有効期限の変更方法も上記URLに記載されています。
Node-REDの使用するポート番号
- Node-REDはデフォルトでTCPポート1880を使用します。他のアプリケーションで使用している場合には、他のポート番号を使用してください。
- もしNode-REDのポート番号を変更する必要が有る場合にはこちらのページを参照してください。
システム起動時にNode.js、Node-REDを起動する場合の注意事項
- 下記URLに記載のとおり、起動時にWindowsサービスとしてNode.js、Node-REDを自動起動する設定を行った場合、ログインしなくてもフローを動作させることが可能です。ただし、サービスをシステムアカウントで起動するとフローによって全ての操作(OSの設定変更など)が可能となってしまいます。システムのセキュリティーリスクを上げてしまう可能性があることを考慮の上、設定してください。
https://nodered.jp/docs/faq/starting-node-red-on-boot - 本製品のプリインストールOSではセキュリティーを高めるため、Node.js、Node-REDはログインしたユーザーアカウントで起動する設定となっています。
Node-RED環境の保護
- Node-REDを構成するファイルは%USERPROFILE% フォルダー以下に保存されています。Standard Userのユーザーアカウントを使用していても自由に編集や削除することが可能です。下記手順でNode-REDの構成ファイルのアクセス権限を変更することによって、システムの安全性を高めることが可能です。
ファイルアクセス権の設定
Windows Automatic Updateの有効化方法
- スタートボタンを右クリックし、Runを選択します。
- "gpedit.msc"と入力し[OK]をクリックします。
- “Computer Configuration\Administrative Templates\Windows Components\Windows Update\Configure Automatic Update”を開きます。
- 設定を[Disable]から[Enable]に変更し、使用環境に応じて[Options]を設定してください。
Windows Security Virus & threat protection updateの有効化方法
- スタートボタンを右クリックし、Runを選択します。
- "gpedit.msc"と入力し[OK]をクリックします。
- “Computer Configuration\Administrative Templates\Windows Components\Microsoft Defender Antivirus\Security Intelligence Updates\Define the order of sources for downloading security intelligence updates”を開きます。
- 設定を[Enabled]から[Not Configured]に変更します。
- “Computer Configuration\Administrative Templates\Windows Components\Microsoft Defender Antivirus\Security Intelligence Updates\Define the file shares for downloading security intelligence updates”を開きます。
- 設定を[Enabled]から[Not Configured]に変更します。
Standard User のユーザーアカウント作成
- Settings -> Accounts を開きます。
- Family & other users - Add someone else to this PC をクリックしユーザー名(ここでは”StandardUser0”とします)、パスワードを設定します。
- StandardUser0 が作成されました。
- 作成した StandardUser0 アカウントで Sign in する事によってユーザーの環境ファイル一式(%USERPROFILE%)を作成します。
Start -> Sign out をクリックします。
- サインイン画面でユーザー名を選択し Sign in します。
- デスクトップが表示されたら、Launcher アイコンをダブルクリックします。
- Launcher から System Monitor を選択します。
- Dashboard が表示されます。
- Start -> Sign out を選択します。
- 元の Administrator アカウントのユーザーで Sign in します。
以上で新規の Standard User 権限のユーザーアカウントが作成されました。
ファイルアクセス権の設定
- Administratorユーザーアカウントを使用して、Standard Userアカウントで作成されたファイル、フォルダーの編集を行うためアクセス権を取得します。
File Explorer を開きます。
- C:\Users 以下の作成した Standard User フォルダーを選択します。
アクセス権を取得する確認ダイアログが表示されますので Continue を選択します。
- Standard UserアカウントのNode-RED環境を自身で変更できなくするために所有者をAdministratorsグループに変更します。
.node-red フォルダーを右クリックしProperties を開きます。ここで.node-redフォルダーが存在しない場合にはこのユーザーでSystem Monitorが一度も起動されていません、Standard Userのユーザーアカウント作成 の手順4に戻ってください。
- Security -> Advanced を選択します。
- [Owner] の横の [Change] を選択し、所有権を変更します。
- Enter the object name to select に Administratorsと入力し、OK を選択します。 Owner が管理者ユーザーグループに変更されます。
- [Replace owner on subcontainers and objects] にチェックを入れます。
- [Replace child object permission entries with inheritable permission entries from this object] にチェックを入れます。
- [Disable inheritance] を選択します。
- 継承されたアクセス権をどうするかのダイアログが表示されます。[Convert inherited permissions into explicit permissions on this object.] を選択します。
- .node-redフォルダーにはNode-RED実行時に書き込み権限が必要ですので、Full control権限のみを削除します。
使用する Standard User(StandardUser0)アカウントを選択し、Edit を選択します。
- [Basic permissions] から [Full control] のチェックをクリアし、[OK] を選択します。
- Standard User のアクセス権が [Modify] に変更されていることを確認し、[OK] を選択します。
- アクセス権を置き換える確認ダイアログが表示されますので、[OK] を選択します。
- [OK] を選択します。
- 引き続き .node-redフォルダー内のファイルの詳細設定を行います。settings.jsは重要な設定情報を含みますので編集を禁止します。
settings.js を右クリックし、プロパティーを開きます。
- Security -> Advanced を選択します。
- [Disable inheritance] を選択します。
- 継承されたアクセス権をどうするかのダイアログが表示されます。 [Convert inherited permissions into eplicit permissions on this object.] を選択します。
- 使用する Standard User(StandardUser0)アカウントを選択し、[Edit] を選択します。
- [Basic Permissions] の [Full control]、 [Modify]、[Write] のチェックをクリアします。
- Standard User のアクセス権が Read & execute に変更されていることを確認し、[OK] を選択します。
- [OK]を選択します。
- 続いて、.node-red フォルダー内のフローファイルの編集を禁止します。
.node-red フォルダー内のフローファイルの [Properties] を開き、手順17~23と同様に Standard User の権限を [Rade & execute] に変更します。
- 続いて、グローバルインストールされたnodeを保護するためアクセス権を読み取り専用に変更します。
ユーザーフォルダーを開き、フォルダー名の後ろに \AppData\Roaming と入力し、隠しフォルダーを開きます。
- \AppData\Roaming\npm の [Properties] を開きます。
- 手順4~11と同様に進み、[Full control]、[Modify]、[Write] のチェックをクリアします。
- Standard User のアクセス権が [Read & execute] に変更されていることを確認し、[OK] を選択します。 手順14、15と同様に進めます。
以上で作成した Standard Userアカウントの node-red 関連ファイルのアクセス権の変更が完了しました。
System Monitor
System Monitorとは
- 本製品 の温度、電圧、消費電力等のセンサー値を監視する機能です。
- node-red-dashboardの機能を使って、読み出したセンサー値を確認することが可能です。
- Node-RED用に本製品専用の温度、電圧、消費電力等のセンサー値取得Nodeを提供しています。
- System Monitorはnode-red-dashboardを使ったサンプルUI画面として編集可能な状態で提供しています。
- Pro-face ConnectやVPN等と組み合わせて遠隔地に設置したシステムのリモート監視に利用可能です。 独自のフローを作成することによってIIoTシステムの一部として応用することも可能です。
※ FirefoxではSystem Monitorのグラフが正しく描画されません 。Internet Explorer、ChromeまたはMicrosoft Edgeを使用してください。
Security
- Exec nodeを使用される場合は、権限昇格などに注意しセキュアな環境でご利用ください。
- System Monitorは、弊社で作成されたサンプルの証明書情報が使用されています。お客様が、System Monitorをご利用される際は、貴社で作成された証明書情報をご利用ください。
- Node-RED エディタのセッションタイムアウト時間は、デフォルトで7日間に設定されています。お客様のご利用状況に応じて、セッションタイムアウト時間の設定を変更することを推奨します。(推奨時間:12時間)
セッションタイムアウト時間 変更方法:
https://nodered.jp/docs/user-guide/runtime/securing-node-red - System Monitorを使用する場合は、セキュアな環境でご利用ください。
- HTMLソースコードを実行可能なnodeを使用する場合は、セキュアな環境でご利用ください。
System Monitorエラー検出時の動作
System Monitorは、エラー検出時に下記の動作を行います。
- エラーメッセージ表示
- イベントログ出力
TYPE Event ID Description Error 2 SysMonSrv : xxxxxx exceeded the threshold. (vvvvvv) Information 1 SysMonSrv : xxxxxx has returned to the normal range. xxxxxx : センサー名(例: CPU Temp
vvvvvv : エラー検出時のセンサー値 - フロントLED変更(橙色/赤色点滅)
System Monitorの開き方
- デスクトップ上のLauncherショートカットをダブルクリックしLauncherを起動します。
- LauncherのSystem MonitorアイコンをクリックしSystem Monitor Dashboardを起動します。
- 初回起動時にWindows Security Alert画面が表示されます。
ネットワーク上の他のPCからのSystem Monitor Sample Dashboardの使用を許可する場合には[Allow access]を選択します。許可しない場合には[Cancel]を選択してください。
- インターネットブラウザーが開きSystem Monitor Dashboardが表示されます。
System Monitor Sample Dashboardの編集方法
- Node-RED フローエディターを開くには、インターネットブラウザーのアドレスバーに https://localhost:1880/ を入力します。ユーザー名、パスワード入力画面が開きます。
デフォルトのユーザー名は「admin」、パスワードは「Pw#12345」です。
- ユーザー名、パスワードを入力しログインするとフローエディターが開きます。
- フローエディター使用方法等Node-REDの詳細については、Node-REDユーザーガイドを参照してください。
- デフォルトユーザー名、パスワードは初回ログイン後、直ちに変更を行ってください。ユーザー名、パスワードの変更方法はセキュリティー対策を参照してください。
- フローエディターにログインしログアウトしないままエディターを閉じるとログイン状態が7日間保持されます。エディター画面を終了する場合にはログアウトを行ってください。ログイン情報の保持期間の変更方法はセキュリティー対策を参照してください。
Node-RED Flow 編集時の注意事項
- Node-REDで作成したFlowは各ユーザーアカウントに保持されるため、管理者権限アカウントで各ユーザーアカウントにコピーする必要があります。
- 通常運用専用Standard User アカウントを使用している場合は、Node.jsを終了し、更新時のみ一時的に管理者権限でNode.js command prompt を実行することによりFlowの更新作業を行うことが可能となります。
本製品専用Node
node-red-contrib-sep6platform
- 本製品のシステム情報を取得するためのNodeです。詳細は本製品の%APPDATA%\npm\node_modules\node-red-cotrib-sep6platform\README.md を参照してください。
- 使用例
node-sep6platform
- node-red-contrib-sep6platformの内部で使用されているNodeです。
node-red-contrib-sep6sensor
- 本製品の温度、電圧、消費電流センサー情報を取得するためのNodeです。
- 詳細は本製品の%APPDATA%\npm\node_modules\node-red-cotrib-sep6sensor\README.md を参照してください。
- 使用例
node-sep6sensor
- node-red-contrib-sep6sensorの内部で使用されているNodeです。
System Monitor API
System Monitor Sample Dashboardを使用せずにユーザーアプリケーションから直接センサーデータを取得したい場合に利用可能なWindows用APIを用意しています。WDT APIでアプリケーションの動作を監視することが可能です。
Supported OS
- Windows 10 64bit (ビルドバージョン 1809 以上)
The Watchdog Timer (WDT) function requires the following two conditions to be met
OS: Pre-installed OS version 2.0 or higher, or OS with the latest Dedicated Utility installed
BIOS: version WAR02 or higher
Development Environment
- Microsoft Visual Studio 2017 (C++)
Download file
DLL Files
- C:\Windows\System32\SysMonApi.dll
- C:\Windows\SysWOW64\SysMonApi32.dll
- C:\Windows\System32\RasApi.dll
Note: DLL files are installed by a dedicated_utility_for_ps6000_series. If you need the DLL to install in your development environment, please contact your local distributer.
Header Files
- SysMonApi.h
- RAS_MappedFile.h (included from SysMonApi.h)
- RAS_API_PFXPHMIP6.h (for WDT functions)
Lib Files
- SysMonApi.lib ( for x64 application )
- SysMonApi32.lib ( for x86 application )
- RasApi.lib ( for WDT functions, for 64bit application )
Difinition
Identifier | Remark |
---|---|
RDI_Lib_Ver | Lib version. ("x.x.x.x") |
RDI_Temp_Mb_Min | MB minimum temparature log data. (Celsius temperature) |
RDI_Temp_Mb_Current | MB tempareture. (Celsius temperature) |
RDI_Temp_Mb_Max | MB maximum temparature log data. (Celsius temperature) |
RDI_Temp_Cpu_Min | CPU minimum temparature log data. (Celsius temperature) |
RDI_Temp_Cpu_Current | CPU tempareture. (Celsius temperature) |
RDI_Temp_Cpu_Max | CPU maximum temparature log data. (Celsius temperature) |
RDI_Temp_Cpu_Dts1 | CPU core 1 DTS. (Celsius temperature) |
RDI_Temp_Cpu_Dts2 | CPU core 2 DTS. (Celsius temperature) |
RDI_Temp_Cpu_Dts3 | CPU core 3 DTS. (Celsius temperature) |
RDI_Temp_Cpu_Dts4 | CPU core 4 DTS. (Celsius temperature) |
RDI_Temp_Cpu_Dts5 | CPU core 5 DTS. (Celsius temperature) |
RDI_Temp_Cpu_Dts6 | CPU core 6 DTS. (Celsius temperature) |
RDI_Temp_Cpu_Dts7 | CPU core 7 DTS. (Celsius temperature) |
RDI_Temp_Cpu_Dts8 | CPU core 8 DTS. (Celsius temperature) |
RDI_Temp_Hdd_Min | HDD minimum temparature log data. (Celsius temperature) |
RDI_Temp_Hdd_Current | HDD tempareture. (Celsius temperature) |
RDI_Temp_Hdd_Max | HDD maximum temparature log data. (Celsius temperature) |
RDI_Volt_5VSTB | 5VSTB voltage. (mV) |
RDI_Volt_5V | 5V voltage. (mV) |
RDI_Volt_12V | 12V voltage. (mV) |
RDI_Volt_33V | 3.3V voltage. (mV) |
RDI_Mcu_Ver | MCU version number. ("xxxx") |
RDI_Mcu_Poh | MCU power-on hours. (Hours ) |
RDI_Mcu_Mcot | MCU most continuous power-on time. (Hours ) |
RDI_Mcu_Pwon_Count | MCU power on counts. (Number of times) |
RDI_Psu_Watt | PSU watt value. (mW) |
RDI_Psu_Current | PSU current value. (mA) |
WDT_STOP | WDT status stop |
WDT_COUNTING | WDT status counting |
WDT_TIMEOUT | WDT status timeout |
WDT_HWRESET_DISABLE | WDT hardware reset disable |
WDT_HWRESET_ENABLE | WDT hardware reset enable |
Function Reference
- SysMonGetLibVersion()
SYSMON_API BOOL WINAPI SysMonGetLibVersion ( char * pchStr )
API function for get RAS library version from sysmonsrv.
Parameters
pchStr : Pointer to buffer address for store data.
Returns
TRUE : Success.
FALSE : Error. - SysMonGetCurrentValue()
SYSMON_API BOOL WINAPI SysMonGetCurrentValue ( int iSelector, int * piValue )
API function for get current values.
Parameters
iSelector : Type of sensor etc. (RDI_XXX_)
piValue : Pointer to buffer address for store data.
Returns
TRUE : Success.
FALSE : Error. - SysMonGetLogValue()
SYSMON_API BOOL WINAPI SysMonGetLogValue ( int iSelector, int * piValue, struct tm * pstTime )
API function for get log values.
Parameters
iSelector : Type of sensor. (RDI_TEMP_xx_MIN_, RDI_TEMP_xx_MAX_).
piValue : Pointer to buffer address for store data.
pstTime : Pointer to buffer address for log time.
Returns
TRUE : Success.
FALSE : Error. - SysMonGetWarningFlag()
SYSMON_API BOOL WINAPI SysMonGetWarningFlag ( int iSelector, int * plFlag )
API function for get warning flag.
Parameters
iSelector : Type of sensor. (RDI_XXX_).
piFlag : Pointer to buffer address for store data. RAS_WARNING_ or RAS_NOT_WARNING_
Returns
TRUE : Success.
FALSE : Error. - SysMonGetIsWarning()
SYSMON_API BOOL WINAPI SysMonGetIsWarning ( int * piFlag )
API function to determine whether the warning flag is valid.
Parameters
piFlag : Pointer to buffer address for store data. RAS_WARNING_ or RAS_NOT_WARNING_
Returns
TRUE : Success.
FALSE : Error. - SysMonGetSensorName()
SYSMON_API BOOL WINAPI SysMonGetSensorName ( int iSelector, PTCHAR ptcStr )
API function for get Sensor name from sysmonsrv.
Parameters
iSelector : Type of sensor. (RDI_XXX_).
ptcStr : Pointer to buffer address for store data.
Returns
TRUE : Success.
FALSE : Error. - RAS_SetWDTCounter()
DLL_API BOOL RAS_SetWDTCounter ( int iValue )
Set WDT counter values.
Parameters
iValue : Counter value (1 - 65535 sec).
Returns
TRUE : Success.
FALSE : Error. - RAS_StopWDTCounter()
DLL_APIBOOLRAS_StopWDTCounter(void)
Stop WDT counter countdown.
Parameters
void:
Returns
TRUE : Success.
FALSE : Error. - RAS_GetWDTStatus()
DLL_APIBOOLRAS_GetWDTStatus(int*iState)
Get WDT status.
Parameters
iState:Pointertoreturnstatus.
Returns
TRUE : Success.
FALSE : Error. - RAS_ClrWDTTimeoutStatus()
DLL_APIBOOLRAS_ClrWDTTimeoutStatus(void)
Clear WDT timeout status.
Parameters
void:
Returns
TRUE : Success.
FALSE : Error. - RAS_SetWDTResetMask()
DLL_APIBOOLRAS_SetWDTResetMask(intiMask)
Set WDT reset mask.
Parameters
iMask:WDT_HWRESET_DISABLEorWDT_HWRESET_ENABLE
Returns
TRUE : Success.
FALSE : Error. - RAS_GetWDTResetMask()
DLL_APIBOOLRAS_GetWDTResetMask(int*iMask)
Get WDT reset mask.
Parameters
iMask:Pointertoreturnvalue.
Returns
TRUE : Success.
FALSE : Error.
System Monitor FAQ
リモート接続(外部のPCからSystem Monitorを参照)
- LauncherからSystem Monitorを初回起動する時にFirewallの設定で「Node.js Server-side JavaScript」の通信を有効にする必要があ ります。
外部のPC上のブラウザープリケーションで本製品 のIPアドレスへアクセスします。
例) https://ipaddress:1880/ui - 外部PCからリモート接続するためには本製品でNode.js、Node-REDが実行状態である必要があります。
リモート接続時にグラフが描画されない
- Windowsの時計設定を確認してください。
Timezoneと時計情報が正しく設定されている必要があります。本製品 のプリインストールOSのTimezoneはデフォルトでUTCに設定されています。ご使用になる地域に合わせて変更したうえで、必ず正しい現地時間に設定してください。
ERROR LED API
Basic Modelの背面ERROR LEDをアプリケーションから制御するためのAPIです。
Supported Model
- PS6000 Basic Model
Supported OS
- Windows 10 64bit (ビルドバージョン 21H2 以上)
Development Environment
- Microsoft Visual Studio 2017 (C++)
Download file
DLL Files
- ErrorLedApi.dll
- VSensorApi.dll
Header Files
- ErrorLedApi.h
Lib Files
- ErrorLedApi.lib ( for x64 application )
Difinition
Identifier | Remark |
---|---|
ERROR_LED_STATUS_ON | Error LED On |
ERROR_LED_STATUS_OFF | Error LED Off |
Function Reference
- GetErrorLed()
ERRORLED_API DWORD WINAPI GetErrorLed (LPINT piStatus)
API function for get Error LED status.
Parameters
piStatus : Pointer to buffer address (ERROR_LED_ON/ERROR_LED_OFF).
Returns
ERROR_SUCCESS : Success.
ERROR_NOT_SUPPORTED : Not Basic model.
Other : Error (Win32 error code). - SetErrorLed()
ERRORLED_API DWORD WINAPI SetErrorLed (INT iStatus)
API function for set Error LED status.
Parameters
iStatus : LED status (ERROR_LED_STATUS_ON/ERROR_LED_STATUS_OFF).
Returns
ERROR_SUCCESS : Success.
ERROR_NOT_SUPPORTED : Not Basic model.
Other : Error (Win32 error code).
16DI/8DO API
本APIは16DI/8DOオプションインターフェースへの入出力を提供します。
Supported Product
- 16DI/8DO Optional interface (PFXYP6MPX16Y8)
Supported OS
- Windows 10 64bit (Build version is 1809 or more.)
Development Environment
- Microsoft Visual Studio 2017 (C++ / C# / VB)
- Microsoft .NET Framework 4.8 (C# / VB)
Download file
Sample Code
- For C# and VB environment
Please refer to PFXPHMIP6_DIDO_SampleCode folder.
PFXPHMIP6_DIDO_SampleCode.sln
PFXPHMIP6_DIDO_SampleCode_CS.csproj Sample Code for C#
PFXPHMIP6_DIDO_SampleCode_VB.vbproj Sample Code for Visual Basic
DLL Files
- DIDO_PFXPHMIP6.dll For 64bit application.
- DIDO_PFXPHMIP6_32.dll For 32bit application.
Header Files
- For C++ environment
DIDO_PFXPHMIP6.h
Lib Files
- DIDO_PFXPHMIP6.lib For 64bit application.
- DIDO_PFXPHMIP6_32.lib For 32bit applcation.
Difinition
Category | Identifier | Remark |
---|---|---|
Error code | SERI_ERROR_FAIL_ | Error. |
SERI_ERROR_OK_ | No error. | |
SERI_ERROR_RESPONSE_ | Response error. | |
SERI_ERROR_COMM_TIMEOUT_ | Set comm timeout error. | |
SERI_ERROR_HANDLE_ | Handle error. | |
SERI_ERROR_PARAM_ | Parameter error. | |
Counter ID | DIDO_COUNTER0_ | Counter 0. |
DIDO_COUNTER1_ | Counter 1. | |
Control code | DIDO_COUNTER_RESET_ | Reset Counter. |
DIDO_COUNTER_START_ | Start Counter. | |
DIDO_COUNTER_STOP_ | Stop Counter. | |
DIDO_COUNTER_RESTART_ | Restart Counter. | |
DIDO_COUNTER_MODE_RISING_ | Counter mode Rising. | |
DIDO_COUNTER_MODE_FALLING_ | Counter mode Falling. | |
DIDO_COUNTER_MODE_BOTH_ | Counter mode Both. | |
DIDO_COUNTER_DEBOUNCE_ENABLE_ | Counter debounce enable. | |
DIDO_COUNTER_DEBOUNCE_DISABLE_ | Counter debounce disable. |
Function Reference
- OpenDido()
HANDLE OpenDido(void)
Open DIDO function.
Parameters
void :
Returns
HANDLE : Handle of DIDO device. - CloseDido()
void CloseDido(HANDLE hComHandle)
DIDO Close function.
Parameters
HANDLE : Handle of DIDO device.
Returns
void: - GetFwVersion()
int GetFwVersion(HANDLE hHandle, PTCHAR ptcBl, PTCHAR ptcApp)
DIDO GetFwVersion function.
Parameters
HANDLE : Handle of DIDO device.
PTCHAR : Pointer to get version of the Bootloader.
PTCHAR : Pointer to get version of the Bootloader.
Returns
int : Error code. SERI_ERROR_xxx_ - SetDout()
int SetDout(HANDLE hHandle, BYTE byData)
DIDO set dout port function.
Parameters
HANDLE : Handle of DIDO device.
BYTE : Dout data.
Returns
int : Error code. SERI_ERROR_xxx_ - SetDoutDefault()
int SetDoutDefault(HANDLE hHandle, BYTE byData)
DIDO set dout port default value function.
Parameters
HANDLE : Handle of DIDO device.
BYTE : Dout data.
Returns
int : Error code. SERI_ERROR_xxx_ - GetDout()
int GetDout(HANDLE hHandle, PBYTE pbyData)
DIDO get dout port function.
Parameters
HANDLE : Handle of DIDO device.
PBYTE : Potinter to get Dout data.
Returns
int : Error code. SERI_ERROR_xxx_ - GetDin()
int GetDin(HANDLE hHandle, PWORD pwData)
DIDO get din port function.
Parameters
HANDLE : Handle of DIDO device.
PWORD : Potinter to get Din data.
Returns
int : Error code. SERI_ERROR_xxx_ - GetCounter()
int GetCounter(HANDLE hHandle, int iCounterId, PDWORD pdwData)
DIDO get counter value function.
Parameters
HANDLE : Handle of DIDO device.
int : ID of counter. DIDO_COUNTER0_ or DIDO_COUNTER1_
PDWORD : Pointer to get counter value.
Returns
int : Error code. SERI_ERROR_xxx_ - SetCounter()
int SetCounter(HANDLE hHandle, int iCounterId, int iControl)
DIDO counter contrl function.
Parameters
HANDLE : Handle of DIDO device.
int : ID of counter. DIDO_COUNTER0_ or DIDO_COUNTER1_
int : Control code. DIDO_COUNTER_xxx_
Returns
int : Error code. SERI_ERROR_xxx_