メソッド

sharedInstance

ASR033Wオブジェクトを作成・初期化します(シングルトン)。
ASR033Wを使用する前に必ず呼び出してインスタンスを取得してください。

class func sharedInstance() -> ASR033W
+ (ASR033W *)sharedInstance;

戻り値

説明

ASR033W

取得したASR033Wのインスタンス

サンプルコード

let asr033w = ASR033W.sharedInstance()
ASR033W *asr033w = [ASR033W sharedInstance];

setDelegate

ASR033WDelegateを設定します。
デリゲートを登録することで、接続状態やRFID読み取り結果などのイベントを受け取れます。

func setDelegate(delegate: ASR033WDelegate)
- (void)setDelegate:(id<ASR033WDelegate>)delegate;

パラメータ

項目名

説明

delegate

ASR033WDelegate

イベントを受け取るデリゲートオブジェクト
ASR033WDelegateを参照

サンプルコード

asr033w.setDelegate(delegate: self)
[asr033w setDelegate:self]; 

getASR033WPrinter

ASR033WPrinterオブジェクトを取得します。

func getPrinter() -> ASR033WPrinter!
- (ASR033WPrinter *)getASR033WPrinter;

戻り値

説明

ASR033WPrinter

ASR033WPrinterを参照

サンプルコード

let printer = asr033w.getASR033WPrinter()
// printer は ASR033WPrinter オブジェクト
ASR033WPrinter *printer = [asr033w getASR033WPrinter]; 
// printer は ASR033WPrinter オブジェクト

getSDKVersion

SDKのバージョンを取得します。
SDKの互換性チェックやログ出力時に使用します。

func getSDKVersion() -> String!
- (NSString *)getSDKVersion;

戻り値

説明

String

SDKのバージョン文字列

サンプルコード

let version = asr033w.getSDKVersion()
print("SDK Version: \(version)")
NSString *sdkString = [asr033w getSDKVersion]; 
// sdkString は SDKのバージョン

setSearchDeviceTimeout

検索時のタイムアウト時間を設定します。

func setSearchDeviceTimeout(_ timeout: TimeInterval)
- (void)setSearchDeviceTimeout:(NSTimeInterval)timeout;

パラメータ

項目名

説明

timeout

NSTimeInterval

タイムアウト時間(秒)

サンプルコード

asr033w.setSearchDeviceTimeout(10)
[asr033w setSearchDeviceTimeout:10]; 

startSearchDevice

ASR-033Wデバイスの検索を開始します。
DHCPでIPアドレスが割り振られたASR-033Wを検出する際に呼び出します。
実行後、以下のデリゲートメソッドが呼ばれます。

func startSearchDevice()
- (ASR033WResultCode)startSearchDevice;

サンプルコード

let resultCode = asr033w.startSearchDevice()
if resultCode == .ASR033WResultNoError {
    // 実行成功
} else {
    // 実行失敗
}
ASR033WResultCode resultCode = [asr033w startSearchDevice];
if (resultCode == ASR033WResultNoError){
  // 実行成功
}else{
  // 実行失敗
}

stopSearchDevice

ASR-033Wの検索を停止します。

func stopSearchDevice() -> ASR033WResultCode
- (ASR033WResultCode)stopSearchDevice;

戻り値

説明

ASR033WResultCode

メソッドの実行結果
列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.stopSearchDevice()
if resultCode == .ASR033WResultNoError {
    // 実行成功
} else {
    // 実行失敗
}
ASR033WResultCode resultCode = [asr033w stopSearchDevice];
if (resultCode == ASR033WResultNoError){
    // 実行成功
}else{
    // 実行失敗
}

connectServerWithIP

指定したIPアドレスとポートでASR-033Wに接続します。
ネットワーク経由でASR-033Wと通信する際に使用します。
このメソッド実行後、デリゲートメソッドreceivedASR033WNetworkState:error:が呼び出されます。

func connectServer(withIP IP: String!, remoteport port: Int32) -> ASR033WResultCode
- (ASR033WResultCode)connectServerWithIP:(NSString *)IP remoteport:(int)port;

パラメータ

項目名

説明

IP

String

接続するIPアドレス

port

Int

ポート番号(デフォルト: 9600)

戻り値

説明

ASR033WResultCode

メソッドの実行結果
列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.connectServer(withIP: "192.168.10.199", remoteport: 9600)
if resultCode == .ASR033WResultNoError {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}
ASR033WResultCode resultCode = [asr033w connectServerWithIP:@"192.168.10.199" remoteport:9600];
if (resultCode == ASR033WResultNoError){
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}

disconnectServer

ASR-033Wとの接続を切断します。
接続終了時やアプリ終了時に呼び出します。
このメソッド実行後、デリゲートreceivedASR033WNetworkState:error:が呼び出されます。

func disconnectServer() -> ASR033WResultCode
- (ASR033WResultCode)disconnectServer;

戻り値

説明

ASR033WResultCode

メソッドの実行結果
列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.disconnectServer()
if resultCode == .ASR033WResultNoError {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}
ASR033WResultCode resultCode = [asr033w disconnectServer];
if (resultCode == ASR033WResultNoError){
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}

startInventoryWithAntenna1

指定したアンテナを使用してインベントリを開始します。
使用するアンテナを選択して呼び出してください。

ASR-P351N をご使用の場合、アンテナ 5~8 を選択してください。

func startInventory(
    withAntenna1 antenna1: Bool,
    antenna2: Bool,
    antenna3: Bool,
    antenna4: Bool,
    antenna5: Bool,
    antenna6: Bool,
    antenna7: Bool,
    antenna8: Bool,
    tid TID: Bool
) -> ASR033WResultCode
- (ASR033WResultCode)startInventoryWithAntenna1:(BOOL)antenna1
                                       antenna2:(BOOL)antenna2
                                       antenna3:(BOOL)antenna3
                                       antenna4:(BOOL)antenna4
                                       antenna5:(BOOL)antenna5
                                       antenna6:(BOOL)antenna6
                                       antenna7:(BOOL)antenna7
                                       antenna8:(BOOL)antenna8
                                            TID:(BOOL)TID;

パラメータ

項目名

説明

antenna1antenna8

BOOL

各アンテナを使用するかどうか選択します(YES:使用、NO:不使用)。

TID

BOOL

TIDを使用するかどうか選択します(YES:使用、NO:不使用)。

戻り値

説明

ASR033WResultCode

メソッドの実行結果
列挙型ASR033WResultCodeを参照

サンプルコード

let result = asr033w.startInventory(
    withAntenna1: true,
    antenna2: false,
    antenna3: false,
    antenna4: false,
    antenna5: false,
    antenna6: false,
    antenna7: false,
    antenna8: false,
    tid: false
)

if result == ASR033WResultNoError {
    print("正常に実行できました")
} else if result == ASR033WResultTimeout {
    print("タイムアウトしました")
} else {
    print("エラー: \(result)")
}
ASR033WResultCode resultCode = [asr033w startInventoryWithAntenna1:YES
                                                          antenna2:YES
                                                          antenna3:YES
                                                          antenna4:YES
                                                          antenna5:YES
                                                          antenna6:YES
                                                          antenna7:YES
                                                          antenna8:YES
                                                               TID:YES];
if (resultCode == ASR033WResultNoError){
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}

stopInventory

インベントリを停止します。
インベントリ中に呼び出すと、読み取りを即座に停止できます。

func stopInventory() -> ASR033WResultCode
- (ASR033WResultCode)stopInventory;

戻り値

説明

ASR033WResultCode

メソッドの実行結果
列挙型ASR033WResultCodeを参照

サンプルコード

let result = asr033w.stopInventory()
if result == ASR033WResultNoError {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}
ASR033WResultCode resultCode = [asr033w stopInventory];
if (resultCode == ASR033WResultNoError){
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}

startReceiveRFIDData

データ受信を開始します。
AsReaderとの接続完了後に呼び出してください。

このメソッドを実行しないと、AsReaderからのレスポンス全般が受信できません。

func startReceiveRFIDData() -> Bool
- (BOOL)startReceiveRFIDData;

戻り値

説明

Bool

コマンド送信成功の可否(YES: 成功 / NO: 失敗)

サンプルコード

let status = asr033w.startReceiveRFIDData()
if status {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}
BOOL status = [asr033w startReceiveRFIDData];
if (status) {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}

stopReceiveRFIDData

RFIDデータの受信を停止します。
受信終了時に呼び出してください。

func stopReceiveRFIDData() -> Bool
- (BOOL)stopReceiveRFIDData;

戻り値

説明

Bool

コマンド送信成功の可否(YES: 成功 / NO: 失敗)

サンプルコード

let status = asr033w.stopReceiveRFIDData()
if status {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}
BOOL status = [asr033w stopReceiveRFIDData];
if (status) {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}

startReceiveHIDData

HIDデータの受信を開始します。
呼び出すタイミングはHID受信開始時です。

func startReceiveHIDData() -> Bool
- (BOOL)startReceiveHIDData;

戻り値

説明

Bool

コマンド送信成功の可否(YES: 成功 / NO: 失敗)

サンプルコード

let status = asr033w.startReceiveHIDData()
if status {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}
BOOL status = [asr033w startReceiveHIDData];
if (status) {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}

stopReceiveHIDData

HIDデータの受信を停止します。
受信終了時に呼び出してください。

func stopReceiveHIDData() -> Bool
- (BOOL)stopReceiveHIDData;

戻り値

説明

BOOL

コマンド送信成功の可否(YES:成功 / NO:失敗)

サンプルコード

let status = asr033w.stopReceiveHIDData()
if status {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}
BOOL status = [asr033w stopReceiveHIDData];
if (status) {
    // コマンド送信成功
} else {
    // コマンド送信失敗
}

regionName

デバイスの地域情報を取得します。

func regionName() -> String!
- (NSString *)regionName;

戻り値

説明

NSString

デバイスの地域情報

サンプルコード

let regionString = asr033w.regionName
NSString *regionString = [asr033w regionName]; 

serialNumber

デバイスのシリアル番号を取得します。

func serialNumber() -> String!
- (NSString *)serialNumber;

戻り値

説明

NSString

デバイスのシリアル番号

サンプルコード

let serial = asr033w.serialNumber
NSString *serialNumberString = [asr033w serialNumber]; 

hardwareVersion

デバイスのハードウェアバージョンを取得します。

func hardwareVersion() -> String!
- (NSString *)hardwareVersion;

戻り値

説明

NSString

デバイスのハードウェアバージョン

サンプルコード

let hwVersion = asr033w.hardwareVersion
NSString *hardwareString = [asr033w hardwareVersion]; 

rFModuleVersion

RFIDモジュールのバージョンを取得します。

func rFModuleVersion() -> String!
- (NSString *)rFModuleVersion;

戻り値

説明

NSString

RFモジュールのバージョン

サンプルコード

let rfVersion = asr033w.rFModuleVersion
NSString *rFModuleString = [asr033w rFModuleVersion]; 

firmwareVersion

ASR-033Wのファームウェアバージョンを取得します。

func firmwareVersion() -> String!
- (NSString *)firmwareVersion;

戻り値

説明

NSString

ASR-033Wののファームウェアバージョン

サンプルコード

let fwVersion = asr033w.firmwareVersion
NSString *firmwareString = [asr033w firmwareVersion]; 

macAddress

MACアドレスを取得します。

func macAddress() -> String!
- (NSString *)macAddress;

戻り値

説明

NSString

デバイスのMACアドレス

サンプルコード

let mac = asr033w.macAddress
NSString *macString = [asr033w macAddress]; 
// macString: MACアドレス

getMessageWithASR033WResultCode

エラーコードに応じたエラー内容を返します。

func getMessageWith(_ code: ASR033WResultCode) -> String!
- (NSString *)getMessageWithASR033WResultCode:(ASR033WResultCode)code;

パラメータ

説明

ASR033WResultCode

列挙型ASR033WResultCodeを参照

戻り値

説明

NSString *

エラー内容

サンプルコード

let errorString: String? = asr033w.getMessageWith(ASR033WResultOtherError)
NSString *errorString = [asr033w getMessageWithASR033WResultCode:code];

readMemory

Read コマンドを実行します。
実行後にデリゲート accessASR033WResult:actionState:epc:data:rssi:phase:frequency: が呼び出されます。

ASR-P351N をご使用の場合、アンテナ 5~8 を選択してください。

func readMemory(
    bank: ASR033WMemoryBank,
    offset: Int,
    length: Int,
    epc: Data,
    pc: Data,
    password: Int,
    antenna1: Bool,
    antenna2: Bool,
    antenna3: Bool,
    antenna4: Bool,
    antenna5: Bool,
    antenna6: Bool,
    antenna7: Bool,
    antenna8: Bool
) -> ASR033WResultCode
- (ASR033WResultCode)readMemory:(ASR033WMemoryBank)bank
                         offset:(int)offset
                         length:(int)length
                            epc:(NSData *)epc
                             pc:(NSData *)pc
                       password:(int)password
                       antenna1:(BOOL)antenna1
                       antenna2:(BOOL)antenna2
                       antenna3:(BOOL)antenna3
                       antenna4:(BOOL)antenna4
                       antenna5:(BOOL)antenna5
                       antenna6:(BOOL)antenna6
                       antenna7:(BOOL)antenna7
                       antenna8:(BOOL)antenna8;

パラメータ

説明

ASR033WMemoryBank

列挙型ASR033WMemoryBankを参照

int

読み取り開始アドレス(単位: word)

int

読み取るデータの長さ(単位: word)

NSData *

EPCデータ

NSData *

PCデータ

int

アクセスパスワード(デフォルト: 0)。10進数で指定します(例: FFFFFFFF → 4294967295, 00000000 → 0)。

BOOL

アンテナ1〜8を使用するかどうか選択します(YES: 使用する, NO: 使用しない)。

戻り値

説明

ASR033WResultCode

列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.readMemory(
    ASR033WMemoryBank_Reserved,
    offset: 0,
    length: 2,
    epc: epcs,
    pc: pcs,
    password: 0,
    antenna1: true,
    antenna2: true,
    antenna3: true,
    antenna4: true,
    antenna5: true,
    antenna6: true,
    antenna7: true,
    antenna8: true
)

if resultCode == .noError {
    // 成功
} else {
    // 失敗
}
ASR033WResultCode resultCode = [asr033w readMemory:ASR033WMemoryBank_Reserved
                                            offset:0
                                             length:2
                                                epc:epcs
                                                 pc:pcs
                                           password:0
                                           antenna1:YES
                                           antenna2:YES
                                           antenna3:YES
                                           antenna4:YES
                                           antenna5:YES
                                           antenna6:YES
                                           antenna7:YES
                                           antenna8:YES];
if (resultCode == ASR033WResultNoError){
    // 成功
}else{
    // 失敗
}

writeMemory

Write コマンドを実行します。
実行後にデリゲート receivedASR033WActionState:resultCode: が呼び出されます。

ASR-P351N をご使用の場合、アンテナ 5~8 を選択してください。

func writeMemory(
    _ bank: ASR033WMemoryBank,
    offset: Int32,
    length: Int32,
    write writeData: Data!,
    epc: Data!,
    cw: Bool,
    password: Int32,
    antenna1: Bool,
    antenna2: Bool,
    antenna3: Bool,
    antenna4: Bool,
    antenna5: Bool,
    antenna6: Bool,
    antenna7: Bool,
    antenna8: Bool
) -> ASR033WResultCode
- (ASR033WResultCode)writeMemory:(ASR033WMemoryBank)bank
                          offset:(int)offset
                          length:(int)length
                       writeData:(NSData *)writeData
                             epc:(NSData *)epc
                              cw:(BOOL)cw
                        password:(int)password
                        antenna1:(BOOL)antenna1
                        antenna2:(BOOL)antenna2
                        antenna3:(BOOL)antenna3
                        antenna4:(BOOL)antenna4
                        antenna5:(BOOL)antenna5
                        antenna6:(BOOL)antenna6
                        antenna7:(BOOL)antenna7
                        antenna8:(BOOL)antenna8;

パラメータ

項目名

説明

bank

ASR033WMemoryBank

対象のメモリバンク

offset

int

読み取り開始アドレス(単位: word)

length

int

書き込むデータの長さ(単位: word)

writeData

NSData

書き込むデータ

epc

NSData

EPCデータ

cw

BOOL

Write 成功率を上げるため、搬送波を長く発射する機能を使用するか選択します
(YES: 使用, NO: 不使用)。
※北米では使用できません。

password

int

アクセスパスワード(デフォルト: 0)。10進数で指定します
(例: FFFFFFFF → 4294967295, 00000000 → 0)。

antenna1〜antenna8

BOOL

各アンテナを使用するかどうか選択します。

戻り値

説明

ASR033WResultCode

列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.writeMemory(ASR033WMemoryBank_EPC,
                                     offset: 0,
                                     length: 2,
                                     write: Data(),
                                     epc: Data(),
                                     cw: true,
                                     password: 0,
                                     antenna1: true,
                                     antenna2: true,
                                     antenna3: true,
                                     antenna4: true,
                                     antenna5: true,
                                     antenna6: true,
                                     antenna7: true,
                                     antenna8: true)
if resultCode == ASR033WResultNoError {
    // 成功
} else {
    // 失敗
}
ASR033WResultCode resultCode = [asr033w writeMemory:ASR033WMemoryBank_EPC
                                             offset:0
                                             length:2
                                          writeData:data
                                                epc:epcs
                                                 cw:YES
                                           password:0
                                           antenna1:YES
                                           antenna2:YES
                                           antenna3:YES
                                           antenna4:YES
                                           antenna5:YES
                                           antenna6:YES
                                           antenna7:YES
                                           antenna8:YES];
if (resultCode == ASR033WResultNoError){
    // 成功
}else{
    // 失敗
}

lockMemory

ASR-P351N をご使用の場合、アンテナ 5~8 を選択してください。

Lock コマンドを実行します。 実行後にデリゲート receivedASR033WActionState:resultCode: が呼び出されます。

func lockMemory(
    _ lockBank: ASR033WLockBank,
    lockType: ASR033WLockType,
    epc: Data!,
    password: Int32,
    antenna1: Bool,
    antenna2: Bool,
    antenna3: Bool,
    antenna4: Bool,
    antenna5: Bool,
    antenna6: Bool,
    antenna7: Bool,
    antenna8: Bool
) -> ASR033WResultCode
- (ASR033WResultCode)lockMemory:(ASR033WLockBank)lockBank
                       lockType:(ASR033WLockType)lockType
                            epc:(NSData *)epc
                       password:(int)password
                       antenna1:(BOOL)antenna1
                       antenna2:(BOOL)antenna2
                       antenna3:(BOOL)antenna3
                       antenna4:(BOOL)antenna4
                       antenna5:(BOOL)antenna5
                       antenna6:(BOOL)antenna6
                       antenna7:(BOOL)antenna7
                       antenna8:(BOOL)antenna8;

パラメータ

項目名

説明

lockBank

ASR033WLockBank

ロック対象のメモリバンク(ASR033WLockBank参照)

lockType

ASR033WLockType

ロック種別(ASR033WLockType参照)

epc

NSData

EPCデータ

password

int

アクセスパスワード(デフォルト: 0)。10進数で指定します(例: FFFFFFFF → 4294967295, 00000000 → 0)。

antenna1antenna8

BOOL

各アンテナを使用するかどうか選択します(YES: 使用する、NO: 使用しない)。

戻り値

説明

ASR033WResultCode

メソッドの実行結果。列挙型ASR033WResultCode参照

サンプルコード

let resultCode = asr033w.lockMemory(
    lockBank: .epc,
    lockType: .permanent,
    epc: epcs,
    password: 0,
    antenna1: true,
    antenna2: true,
    antenna3: true,
    antenna4: true,
    antenna5: true,
    antenna6: true,
    antenna7: true,
    antenna8: true
)

if resultCode == .noError {
    // 実行成功
} else {
    // 実行失敗
}
ASR033WResultCode resultCode = [asr033w lockMemory:ASR033WLockBank_EPC
                                          lockType:ASR033WLockType_Permanent
                                               epc:epcs
                                          password:0
                                          antenna1:YES
                                          antenna2:YES
                                          antenna3:YES
                                          antenna4:YES
                                          antenna5:YES
                                          antenna6:YES
                                          antenna7:YES
                                          antenna8:YES];
if (resultCode == ASR033WResultNoError){
    // 実行成功
}else{
    // 実行失敗
}

killMemory

ASR-P351N をご使用の場合、アンテナ 5~8 を選択してください。

Kill コマンドを実行します。 使用するアンテナを指定して操作します。

func killMemory(
    _ epc: Data!,
    password: Int32,
    antenna1: Bool,
    antenna2: Bool,
    antenna3: Bool,
    antenna4: Bool,
    antenna5: Bool,
    antenna6: Bool,
    antenna7: Bool,
    antenna8: Bool
) -> ASR033WResultCode
- (ASR033WResultCode)killMemory:(NSData *)epc
                       password:(int)password
                       antenna1:(BOOL)antenna1
                       antenna2:(BOOL)antenna2
                       antenna3:(BOOL)antenna3
                       antenna4:(BOOL)antenna4
                       antenna5:(BOOL)antenna5
                       antenna6:(BOOL)antenna6
                       antenna7:(BOOL)antenna7
                       antenna8:(BOOL)antenna8;

パラメータ

項目名

説明

epc

NSData

対象のEPCデータ

password

int

アクセスパスワード(デフォルト: 0)。10進数で指定します(例: FFFFFFFF → 4294967295, 00000000 → 0)。

antenna1antenna8

BOOL

各アンテナを使用するかどうか選択します(YES: 使用、NO: 不使用)。

戻り値

説明

ASR033WResultCode

実行結果。列挙型ASR033WResultCode参照

サンプルコード

let result = asr033w.killMemory(epc: epcData,
                                password: 0,
                                antenna1: true,
                                antenna2: true,
                                antenna3: true,
                                antenna4: true,
                                antenna5: true,
                                antenna6: true,
                                antenna7: true,
                                antenna8: true)
if result == ASR033WResultNoError {
    // 実行成功
} else {
    // 実行失敗
}
ASR033WResultCode resultCode = [asr033w killMemory:epcData
                                          password:0
                                          antenna1:YES
                                          antenna2:YES
                                          antenna3:YES
                                          antenna4:YES
                                          antenna5:YES
                                          antenna6:YES
                                          antenna7:YES
                                          antenna8:YES];
if (resultCode == ASR033WResultNoError){
    // 実行成功
}else{
    // 実行失敗
}

sendData

ASR-033Wにデータを送信します。
送信後、デリゲート receivedASR033WData: が呼び出されます。

func send(_ data: Data!) -> ASR033WResultCode
- (ASR033WResultCode)sendData:(NSData *)data;

パラメータ

項目名

説明

data

NSData

送信データ

戻り値

説明

ASR033WResultCode

実行結果。列挙型ASR033WResultCode参照

サンプルコード

let resultCode = asr033w.send(data)
if resultCode == ASR033WResultNoError {
    // 実行成功
} else {
    // 実行失敗
}
ASR033WResultCode resultCode = [asr033w sendData:data];
if (resultCode == ASR033WResultNoError){
    // 実行成功
}else{
    // 実行失敗
}

setSession

Session 値を設定します。

func setSession(_ session: ASR033WSessionType) -> ASR033WResultCode
- (ASR033WResultCode)setSession:(ASR033WSessionType)session;

パラメータ

項目名

説明

session

ASR033WSessionType

Session値。列挙型 ASR033WSessionTypeを参照

戻り値

説明

ASR033WResultCode

メソッドの実行結果。列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.setSession(ASR033WSessionType_S0)
if resultCode == ASR033WResultNoError {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}
ASR033WResultCode resultCode = [asr033w setSession:ASR033WSessionType_S0];
if (resultCode == ASR033WResultNoError) {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}

getSession

現在設定されている Session 値を取得します。
設定されている Session 値を確認したい場合に使用します。

func getSession() -> ASR033WSessionType
- (ASR033WSessionType)getSession;

戻り値

説明

ASR033WSessionType

現在設定されているSession値。列挙型ASR033WSessionTypeを返します。

サンプルコード

let type: ASR033WSessionType = asr033w.getSession()
// 現在設定されている Session 値が type に格納される
ASR033WSessionType type = [asr033w getSession];
// 現在設定されている Session 値が type に格納される

setSessionFlag

インベントリ対象の Session フラグを設定します。
特定の Session フラグを有効または無効にする場合に使用します。

func setSessionFlag(_ session: ASR033WSessionFlag) -> ASR033WResultCode
- (ASR033WResultCode)setSessionFlag:(ASR033WSessionFlag)session;

パラメータ

項目名

説明

session

ASR033WSessionFlag

設定する Session フラグを指定します。ASR033WSessionFlagを参照

戻り値

説明

ASR033WResultCode

メソッド実行結果を返します。列挙型ASR033WResultCodeを参照

サンプルコード

let result = asr033w.setSessionFlag(ASR033WSessionFlag_AB)
if result == ASR033WResultNoError {
    // 成功時の処理
} else {
    // 失敗時の処理
}
ASR033WResultCode resultCode = [asr033w setSessionFlag:ASR033WSessionFlag_AB];
if (resultCode == ASR033WResultNoError) {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}

getSessionFlag

現在インベントリ対象に設定されている Session フラグを取得します。

func getSessionFlag() -> ASR033WSessionFlag
- (ASR033WSessionFlag)getSessionFlag;

戻り値

説明

ASR033WSessionFlag

現在インベントリ対象に設定されている Session フラグを返します。ASR033WSessionFlagを参照

サンプルコード

let flag: ASR033WSessionFlag = asr033w.getSessionFlag()
// 現在インベントリ対象に設定されている Session フラグが flag に格納される
ASR033WSessionFlag flag = [asr033w getSessionFlag];
// 現在インベントリ対象に設定されている Session フラグが flag に格納される

setLinkProfile

RFIDモジュールの Link Profile 値を設定します。
モジュールの通信プロファイルを変更する場合に使用します。

func setLinkProfile(_ linkProfile: Int32) -> ASR033WResultCode
- (ASR033WResultCode)setLinkProfile:(int)linkProfile;

パラメータ

項目名

説明

linkProfile

Int

設定するRFIDモジュールの Link Profile 値

戻り値

説明

ASR033WResultCode

メソッド実行結果を返します。成功・失敗が含まれます。列挙型ASR033WResultCodeを参照

サンプルコード

let result = asr033w.setLinkProfile(5)
if result == ASR033WResultNoError {
    // 成功時の処理
} else {
    // 失敗時の処理
}
ASR033WResultCode resultCode = [asr033w setLinkProfile:5];
if (resultCode == ASR033WResultNoError) {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}

getLinkProfile

RFIDモジュールに設定されている Link Profile 値を取得します。
呼び出すと現在の Link Profile 値を返します。

func getLinkProfile() -> Int32
- (int)getLinkProfile;

戻り値

説明

int

RFIDモジュールに設定されている Link Profile 値

  • 0: Tari=25µs, FM0, LHF=40KHz

  • 1: Tari=25µs, Miller4, LHF=250KHz

  • 2: Tari=25µs, Miller4, LHF=300KHz

  • 3: Tari=6.25µs, FM0, LHF=400KHz

  • 4: Tari=20µs, Miller2, LHF=320KHz

サンプルコード

let linkProfile = asr033w.getLinkProfile()
// linkProfile にRFIDモジュールに設定されているLink Profile値が格納される
int linkProfile = [asr033w getLinkProfile];
// linkProfile にRFIDモジュールに設定されている Link Profile 値が格納される

setQValue

Q値を設定します。
指定したQ値をRFIDモジュールに適用します。

func setQValue(_ QValue: Int32) -> ASR033WResultCode
- (ASR033WResultCode)setQValue:(int)QValue;

パラメータ

項目名

説明

QValue

int

設定するRFIDモジュールのQ値

戻り値

説明

ASR033WResultCode

メソッドの実行結果。列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.setQValue(5)
if resultCode == ASR033WResultNoError {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}
ASR033WResultCode resultCode = [asr033w setQValue:5];
if (resultCode == ASR033WResultNoError){
    // メソッド実行に成功
}else{
    // メソッド実行に失敗
}

getQValue

Q値を取得します。
呼び出すとRFIDモジュールに設定されているQ値を返します。

func getQValue() -> Int32
- (int)getQValue;

戻り値

説明

int

RFIDモジュールのQ値

サンプルコード

let qValue = asr033w.getQValue()
// qValue にRFIDモジュールのQ値が格納される
int value = [asr033w getQValue];
// value にRFIDモジュールのQ値が格納される

setIdleTime

読取休止時間を設定します。
指定した時間をRFIDモジュールに適用します。

func setIdleTime(_ time: Int32) -> ASR033WResultCode
- (ASR033WResultCode)setIdleTime:(int)time;

パラメータ

項目名

説明

time

int

読取休止時間 (単位: 10ms)

戻り値

説明

ASR033WResultCode

メソッドの実行結果。列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.setIdleTime(5) // 50ms
if resultCode == ASR033WResultNoError {
    // メソッド実行に成功
} else {
    // メソッド実行に失敗
}
ASR033WResultCode resultCode = [asr033w setIdleTime:5]; // 50ms
if (resultCode == ASR033WResultNoError){
    // メソッド実行に成功
}else{
    // メソッド実行に失敗
}

getIdleTime

読取休止時間を取得します。
呼び出すとRFIDモジュールに設定されている読取休止時間を返します。

func getIdleTime() -> Int32
- (int)getIdleTime;

戻り値

説明

int

読取休止時間 (単位: 10ms)

サンプルコード

let idleTime = asr033w.getIdleTime()
// idleTime にRFIDモジュールの読取休止時間が格納される
int idleTime = [asr033w getIdleTime];
// idleTime にRFIDモジュールの読取休止時間が格納される

setAntenna1Power

アンテナポートの送信出力を設定するメソッドです。
各アンテナポートの出力値を指定して呼び出すことで、送信出力を調整できます。

設定可能な値は下記の通りです:

  • ASR-033W: 0 ~ 23 dBm

  • ASR-053W: 0 ~ 30 dBm

  • ASR-P351N: 0 ~ 23 dBm (日本版) / 0 ~ 30 dBm (北米版)

ASR-P351N をご使用の場合、アンテナ 5~8 の出力を設定してください。

func setAntenna1Power(
    _ antenna1Power: Int32,
    antenna2Power: Int32,
    antenna3Power: Int32,
    antenna4Power: Int32,
    antenna5Power: Int32,
    antenna6Power: Int32,
    antenna7Power: Int32,
    antenna8Power: Int32
) -> ASR033WResultCode
- (ASR033WResultCode)setAntennaPower:(int)antenna1Power
                        antenna2Power:(int)antenna2Power
                        antenna3Power:(int)antenna3Power
                        antenna4Power:(int)antenna4Power
                        antenna5Power:(int)antenna5Power
                        antenna6Power:(int)antenna6Power
                        antenna7Power:(int)antenna7Power
                        antenna8Power:(int)antenna8Power;

パラメータ

項目名

説明

antenna1Power

Int

アンテナポート1の出力 (単位: dBm)

antenna2Power

Int

アンテナポート2の出力 (単位: dBm)

antenna3Power

Int

アンテナポート3の出力 (単位: dBm)

antenna4Power

Int

アンテナポート4の出力 (単位: dBm)

antenna5Power

Int

アンテナポート5の出力 (単位: dBm)

antenna6Power

Int

アンテナポート6の出力 (単位: dBm)

antenna7Power

Int

アンテナポート7の出力 (単位: dBm)

antenna8Power

Int

アンテナポート8の出力 (単位: dBm)

戻り値

説明

ASR033WResultCode

メソッドの実行結果。列挙型 ASR033WResultCode を参照

サンプルコード

let result = asr033w.setAntenna1Power(
    10,
    antenna2Power: 10,
    antenna3Power: 10,
    antenna4Power: 10,
    antenna5Power: 10,
    antenna6Power: 10,
    antenna7Power: 10,
    antenna8Power: 10
)
if result == ASR033WResultNoError {
    // 成功時の処理
} else {
    // 失敗時の処理
}
ASR033WResultCode resultCode = [asr033w setAntenna1Power:10
                                           antenna2Power:10
                                           antenna3Power:10
                                           antenna4Power:10
                                           antenna5Power:10
                                           antenna6Power:10
                                           antenna7Power:10
                                           antenna8Power:10];
if (resultCode == ASR033WResultNoError){
    // メソッド実行に成功
}else{
    // メソッド実行に失敗
}

getAntennaPower

アンテナポートの送信出力を取得するメソッドです。
各アンテナの電波出力を確認したいタイミングで呼び出します。

func getAntennaPower() -> [String: Int]!
- (NSDictionary<NSString *, NSNumber *> *)getAntennaPower;

戻り値

説明

NSDictionary<NSString *, NSNumber *>

アンテナの電波出力を取得します。キーは "Antenna1Power""Antenna8Power"

サンプルコード

if let powerDic = asr033w.getAntennaPower() {
    let ant1 = powerDic["Antenna1Power"]
    let ant2 = powerDic["Antenna2Power"]
    let ant3 = powerDic["Antenna3Power"]
    let ant4 = powerDic["Antenna4Power"]
    let ant5 = powerDic["Antenna5Power"]
    let ant6 = powerDic["Antenna6Power"]
    let ant7 = powerDic["Antenna7Power"]
    let ant8 = powerDic["Antenna8Power"]
}
NSDictionary<NSString *, NSNumber *> *powerDic = [asr033w getAntennaPower];
NSNumber *ant1 = powerDic[@"Antenna1Power"];
NSNumber *ant2 = powerDic[@"Antenna2Power"];
NSNumber *ant3 = powerDic[@"Antenna3Power"];
NSNumber *ant4 = powerDic[@"Antenna4Power"];
NSNumber *ant5 = powerDic[@"Antenna5Power"];
NSNumber *ant6 = powerDic[@"Antenna6Power"];
NSNumber *ant7 = powerDic[@"Antenna7Power"];
NSNumber *ant8 = powerDic[@"Antenna8Power"];

setLBT

周波数リストを設定するメソッドです。
使用する周波数帯を変更したい場合に呼び出します。

func setLBT(_ table: [Any]!) -> ASR033WResultCode
- (ASR033WResultCode)setLBT:(NSArray *)table;

パラメータ

項目名

説明

table

NSArray

設定する周波数のリスト。NSArrayで指定します。

以下のうち、設定したい周波数に対応した値を table に格納して指定します。

値はgetLBTMaskメソッドの戻り値(NSArray)の要素のインデックスに対応します。

  • Japan(1W)

0 // 916.8 MHz
1 // 918.0 MHz
2 // 919.2 MHz
3 // 920.4 MHz
4 // 920.6 MHz
5 // 920.8 MHz
  • Japan(200mW)

0 // 916.8 MHz
1 // 918.0 MHz
2 // 919.2 MHz
3 // 920.4 MHz
4 // 920.6 MHz
5 // 920.8 MHz
6 // 921.0 MHz
7 // 921.2 MHz
8 // 921.4 MHz
9 // 921.6 MHz
10 // 921.8 MHz
11 // 922.0 MHz

戻り値

説明

ASR033WResultCode

メソッド実行の結果。列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.setLBT(array)

if resultCode == ASR033WResultNoError {
    // 成功時の処理
} else {
    // 失敗時の処理
}
ASR033WResultCode resultCode = [asr033w setLBT:array];
if (resultCode == ASR033WResultNoError){
    // 成功時の処理
}else{
    // 失敗時の処理
}

getLBT

現在設定されている周波数を取得するメソッドです。

func getLBT() -> [Any]!
- (NSArray *)getLBT;

戻り値

説明

NSArray

現在設定されている周波数のリスト

以下のうち、現在設定されている周波数に対応した値を格納して返します.

値はgetLBTMaskメソッドの戻り値(NSArray)の要素のインデックスに対応します。

  • Japan(1W)

0 // 916.8 MHz
1 // 918.0 MHz
2 // 919.2 MHz
3 // 920.4 MHz
4 // 920.6 MHz
5 // 920.8 MHz
  • Japan(200mW)

0 // 916.8 MHz
1 // 918.0 MHz
2 // 919.2 MHz
3 // 920.4 MHz
4 // 920.6 MHz
5 // 920.8 MHz
6 // 921.0 MHz
7 // 921.2 MHz
8 // 921.4 MHz
9 // 921.6 MHz
10 // 921.8 MHz
11 // 922.0 MHz

サンプルコード

let array = asr033w.getLBT()
// arrayに現在設定されている周波数に対応した値が格納される
NSArray *array = [asr033w getLBT];
// arrayに現在設定されている周波数に対応した値が格納される

getLBTMask

使用可能な周波数リストを取得するメソッドです。
使用可能な周波数帯域を確認したい場合に呼び出します。

func getLBTMask() -> [Any]!
- (NSArray *)getLBTMask;

戻り値

説明

NSArray

利用可能な周波数のリスト

設定可能な周波数を格納して返します。
例:

  • Japan(200mW)

(
    "916.8",
    "918.0",
    "919.2",
    "920.4",
    "920.6",
    "920.8",
    "921.0",
    "921.2",
    "921.4",
    "921.6",
    "921.8",
    "922.0"
)
  • Japan(1W)

(
    "916.8",
    "918.0",
    "919.2",
    "920.4",
    "920.6",
    "920.8"
)

サンプルコード

let array = asr033w.getLBTMask()
// arrayに使用可能な周波数のリストが格納される
NSArray *array = [asr033w getLBTMask];
// arrayに使用可能な周波数のリストが格納される

setIPStatus

デバイスのIPアドレス、サブネットマスク、ゲートウェイ情報を設定するメソッドです。
動的/静的IPの切り替えやネットワーク情報を更新したい場合に呼び出します。

func setIPStatus(
    _ status: ASR033WIPStatus,
    ip: String!,
    subnet: String!,
    gateway: String!
) -> ASR033WResultCode
- (ASR033WResultCode)setIPStatus:(ASR033WIPStatus)status IP:(NSString *)ip Subnet:(NSString *)subnet Gateway:(NSString *)gateway;

パラメータ

項目名

説明

status

ASR033WIPStatus

IPの状態を指定する列挙型。静的/動的IPなどの情報を設定します。ASR033WIPStatusを参照

ip

NSString

設定するIPアドレス

subnet

NSString

設定するサブネットマスク

gateway

NSString

設定するゲートウェイ

戻り値

説明

ASR033WResultCode

メソッド実行の結果。列挙型ASR033WResultCodeを参照

サンプルコード

let resultCode = asr033w.setIPStatus(
    ASR033WIPStatus_DHCP,
    ip: "192.168.1.100",
    subnet: "255.255.255.0",
    gateway: "192.168.1.1"
)

if resultCode == ASR033WResultNoError {
    // 成功時の処理
} else {
    // 失敗時の処理
}
ASR033WResultCode resultCode = [asr033w setIPStatus:ASR033WIPStatus_STATIC
                                                 IP:ip
                                             Subnet:sub
                                            Gateway:gw];
if (resultCode == ASR033WResultNoError){
    // 成功時の処理
}else{
    // 失敗時の処理
}