0
我目前正在連接Impinj高速公路閱讀器220,並且我有2個天線連接到它。當看到標籤時,LLRP Impinj無法看到天線端口
當我加載Impinj MultiReader應用程序並切換顯示天線端口時,它會將RFID標籤被讀取的天線返回到應用程序。
我目前使用C#連接到閱讀器(儘管我相信所有語言的SDK都是相似的)。以下是我使用的示例代碼,但是我不知道哪個配置選項會啓用讀取天線端口的功能。
有人請讓我知道哪個配置選項打開選項,以便AntennaID與標籤一起返回嗎?
MSG_ERROR_MESSAGE msg_err;
MSG_ADD_ROSPEC msg = new MSG_ADD_ROSPEC();
// Reader Operation Spec (ROSpec)
msg.ROSpec = new PARAM_ROSpec();
// ROSpec must be disabled by default
msg.ROSpec.CurrentState = ENUM_ROSpecState.Disabled;
// The ROSpec ID can be set to any number
// You must use the same ID when enabling this ROSpec
msg.ROSpec.ROSpecID = 123;
// ROBoundarySpec
// Specifies the start and stop triggers for the ROSpec
msg.ROSpec.ROBoundarySpec = new PARAM_ROBoundarySpec();
// Immediate start trigger
// The reader will start reading tags as soon as the ROSpec is enabled
msg.ROSpec.ROBoundarySpec.ROSpecStartTrigger =
new PARAM_ROSpecStartTrigger();
msg.ROSpec.ROBoundarySpec.ROSpecStartTrigger.ROSpecStartTriggerType =
ENUM_ROSpecStartTriggerType.Immediate;
// No stop trigger. Keep reading tags until the ROSpec is disabled.
msg.ROSpec.ROBoundarySpec.ROSpecStopTrigger = new PARAM_ROSpecStopTrigger();
msg.ROSpec.ROBoundarySpec.ROSpecStopTrigger.ROSpecStopTriggerType =
ENUM_ROSpecStopTriggerType.Null;
// Antenna Inventory Spec (AISpec)
// Specifies which antennas and protocol to use
msg.ROSpec.SpecParameter = new UNION_SpecParameter();
PARAM_AISpec aiSpec = new PARAM_AISpec();
aiSpec.AntennaIDs = new UInt16Array();
// Enable all antennas
aiSpec.AntennaIDs.Add(0);
// No AISpec stop trigger. It stops when the ROSpec stops.
aiSpec.AISpecStopTrigger = new PARAM_AISpecStopTrigger();
aiSpec.AISpecStopTrigger.AISpecStopTriggerType = ENUM_AISpecStopTriggerType.Null;
aiSpec.InventoryParameterSpec = new PARAM_InventoryParameterSpec[1];
aiSpec.InventoryParameterSpec[0] = new PARAM_InventoryParameterSpec();
aiSpec.InventoryParameterSpec[0].InventoryParameterSpecID = 1234;
aiSpec.InventoryParameterSpec[0].ProtocolID = ENUM_AirProtocols.EPCGlobalClass1Gen2;
aiSpec.InventoryParameterSpec[0].AntennaConfiguration = new PARAM_AntennaConfiguration[1];
aiSpec.InventoryParameterSpec[0].AntennaConfiguration[0] = new PARAM_AntennaConfiguration();
aiSpec.InventoryParameterSpec[0].AntennaConfiguration[0].RFTransmitter = new PARAM_RFTransmitter();
aiSpec.InventoryParameterSpec[0].AntennaConfiguration[0].RFTransmitter.HopTableID = 1;
aiSpec.InventoryParameterSpec[0].AntennaConfiguration[0].RFTransmitter.ChannelIndex = 1;
aiSpec.InventoryParameterSpec[0].AntennaConfiguration[0].RFTransmitter.TransmitPower = 91; // Max power of 32.5 dbm
aiSpec.InventoryParameterSpec[0].AntennaConfiguration[0].RFReceiver = new PARAM_RFReceiver();
aiSpec.InventoryParameterSpec[0].AntennaConfiguration[0].RFReceiver.ReceiverSensitivity = 1; // 1= -80 (the max), 2 = -70, etc.
msg.ROSpec.SpecParameter.Add(aiSpec);
// Report Spec
msg.ROSpec.ROReportSpec = new PARAM_ROReportSpec();
// Send a report for every tag read
msg.ROSpec.ROReportSpec.ROReportTrigger =
ENUM_ROReportTriggerType.Upon_N_Tags_Or_End_Of_ROSpec;
msg.ROSpec.ROReportSpec.N = 1;
msg.ROSpec.ROReportSpec.TagReportContentSelector = new PARAM_TagReportContentSelector();
MSG_ADD_ROSPEC_RESPONSE rsp = reader.ADD_ROSPEC(msg, out msg_err, 2000);