আইব্যাকন দূরত্ব বোঝা


113

আইবাকন (বীকন / ব্লুটুথ-লোনের্জি / বিএলই) দিয়ে কীভাবে দূরত্ব কাজ করতে পারে তার একটি প্রাথমিক ধারণাটি উপলব্ধি করার চেষ্টা করছেন। কোনও আইবোকন ঠিক কতদূর পরিমাপ করতে পারে তার কোনও সত্য দলিল রয়েছে কি? বলি আমি ৩০০ ফুট দূরে আছি ... কোনও আইবাকন দ্বারা এটি সনাক্ত করা সম্ভব?

বিশেষত ভি 4 এবং এর জন্য। ভি 5 এবং আইওএস সহ তবে সাধারণত কোনও বিএলই ডিভাইস।

ব্লুটুথ ফ্রিকোয়েন্সি এবং থ্রুপুট কীভাবে এটি প্রভাবিত করে? বেকন ডিভাইসগুলি অন্তর্নিহিত বিএলইয়ের উপর দিয়ে দূরত্ব বাড়াতে বা নিয়ন্ত্রণ করতে বা উন্নত করতে পারে?

অর্থাত

               | Range       | Freq       | T/sec      | Topo       |      
               |–—–––––––––––|–—––––––––––|–—––––––––––|–—––––––––––|
Bluetooth v2.1 | Up to 100 m | < 2.481ghz | < 2.1mbit  | scatternet |
               |-------------|------------|------------|------------|
Bluetooth v4   |     ?       | < 2.481ghz | < 305kbit  | mesh       |
               |-------------|------------|------------|------------|
Bluetooth v5   |     ?       | < 2.481ghz | < 1306kbit | mesh       |

উত্তর:


223

আইওএস দ্বারা সরবরাহিত দূরত্বের অনুমানটি ক্যালিব্রেটেড ট্রান্সমিটার পাওয়ার (টিএক্সপাওয়ার) এর তুলনায় বীকন সিগন্যাল শক্তি (আরএসসি) এর অনুপাতের ভিত্তিতে। টিএক্সপাওয়ারটি 1 মিটার দূরে আরএসএসিতে পরিচিত পরিমাপক সংকেত শক্তি। প্রতিটি দূরত্বে যথাযথ দূরত্বের অনুমানের জন্য এই টিএক্সপাওয়ার মান দিয়ে ক্যালিব্রেট করতে হবে।

দূরত্বের অনুমানগুলি কার্যকর হওয়ার সাথে সাথে এগুলি নিখুঁত নয় এবং আপনার অন্যান্য ভেরিয়েবলগুলির জন্য নিয়ন্ত্রণ করা দরকার। এটির অপব্যবহারের আগে আপনি জটিলতা এবং সীমাবদ্ধতাগুলি পড়তে ভুলবেন না ।

যখন আমরা অ্যান্ড্রয়েড আইব্যাকন লাইব্রেরিটি তৈরি করছিলাম, তখন আমাদের নিজস্ব স্বতন্ত্র অ্যালগরিদম নিয়ে আসতে হয়েছিল কারণ আইওএস কোরলোকেশন উত্স কোডটি উপলভ্য নয়। আমরা জ্ঞাত দূরত্বে প্রচুর পরিমাণে আরএসসি পরিমাপ পরিমাপ করেছি, তারপরে আমাদের ডেটা পয়েন্টগুলি মেলে একটি সেরা ফিট বক্ররেখা করেছি। আমরা যে অ্যালগরিদমটি নিয়ে এসেছি সেগুলি নীচে জাভা কোড হিসাবে দেখানো হয়েছে।

নোট করুন যে এখানে "নির্ভুলতা" শব্দটি মিটারে দূরত্বের জন্য আইওএস স্পোক করে। এই সূত্রটি নিখুঁত নয়, তবে এটি আইওএস কী করে তা প্রায় সমান করে।

protected static double calculateAccuracy(int txPower, double rssi) {
  if (rssi == 0) {
    return -1.0; // if we cannot determine accuracy, return -1.
  }

  double ratio = rssi*1.0/txPower;
  if (ratio < 1.0) {
    return Math.pow(ratio,10);
  }
  else {
    double accuracy =  (0.89976)*Math.pow(ratio,7.7095) + 0.111;    
    return accuracy;
  }
}   

দ্রষ্টব্য: 0.89976, 7.7095 এবং 0.111 মানগুলি আমাদের পরিমাপ করা ডেটা পয়েন্টগুলিতে সর্বোত্তম ফিট বক্রের জন্য সমাধান করার সময় গণনা করা তিনটি ধ্রুবক । YMMV


4
দুর্দান্ত উত্তর এবং কোড ডেভিড। টিএক্সপাওয়ার মানটি কোথা থেকে আসে? এটি কি ক্লায়েন্টের (প্রাপ্তি) পক্ষে করা একটি ক্রমাঙ্কন মান? বা এটি একটি মেট্রিক যা আপনি বীকন থেকে পেতে পারেন?
রোমানি

14
0.89976, 7.7095 এবং 0.111 এর মান কী?
মালহাল

4
এই সমীকরণটি দিয়ে আমি 84457991114.574738 দিয়ে শেষ করি যখন আমার ফোনটি থেকে বেকনটি 1/4 রাখছে।
jdog

1
এডিস্টোন হ'ল 0 মিটার রেফারেন্স পয়েন্ট। বিভাগ বনাম বিয়োগফল কারণ আমরা এই ক্ষেত্রে লগারিদমিক ফাংশন ব্যবহার করছি না। বিয়োগফলটি আমরা ব্যবহার করা বাঁক ফিটের জন্য কাজ করে না।
ডেভিডজৌং

1
@ ডেভিডজৌং আপনি কি দয়া করে সেরা কার্ভ ফিট সূত্র বা এমন কিছু ভাগ করতে পারেন যার মাধ্যমে আমরা আমাদের ডিভাইসের জন্য এই 3 টি মান খুঁজে পেতে পারি?
পরেশ মায়ানী

77

আমি আইবিকনসের সাথে নির্ভুলতা / আরএসসি / নৈকট্যের বিষয়টি খুব নিখুঁতভাবে তদন্ত করছি এবং আমি সত্যিই সত্য মনে করি যে ইন্টারনেটের সমস্ত সংস্থান (ব্লগ, স্ট্যাকওভারফ্লোতে পোস্ট) এটি ভুল হয়ে গেছে।

ডেভিডজৌং (স্বীকৃত উত্তর,> ১০০ টি আপভোট) বলেছেন:

নোট করুন যে এখানে "নির্ভুলতা" শব্দটি মিটারে দূরত্বের জন্য আইওএস স্পোক করে।

আসলে, বেশিরভাগ মানুষ এটি বলে তবে আমার কোনও ধারণা নেই কেন! ডকুমেন্টেশন এটি খুব স্পষ্ট করে তোলে যে সিএলবিকন.প্রক্সিমিটি:

মিটারে এক সিগমা অনুভূমিক নির্ভুলতা নির্দেশ করে। একই সান্নিধ্য মানের সাথে বীকনগুলির মধ্যে পার্থক্য করতে এই সম্পত্তিটি ব্যবহার করুন। বীকনের নির্দিষ্ট অবস্থান সনাক্ত করতে এটি ব্যবহার করবেন না। আরএফ হস্তক্ষেপের কারণে নির্ভুলতার মানগুলি ওঠানামা করতে পারে।

আমাকে পুনরাবৃত্তি করতে দিন: মিটারে একটি সিগমা যথার্থতা । এই বিষয়টির গুগলে সমস্ত 10 শীর্ষ পৃষ্ঠাগুলিতে কেবলমাত্র ডক্সের উদ্ধৃতিতে "একটি সিগমা" শব্দ রয়েছে তবে এগুলির কোনওটিই এই শব্দটি বিশ্লেষণ করে না যা এটি বোঝার মূল বিষয়।

খুব গুরুত্বপূর্ণ হল একটি সিগমা যথার্থতা কী তা ব্যাখ্যা করা । নিম্নলিখিত URL গুলির সাথে শুরু: http://en.wikedia.org/wiki/S સ્ টার্ড_অরর , http://en.wikedia.org/wiki/ অনিশ্চয়তা

শারীরিক বিশ্বে, আপনি যখন কিছু পরিমাপ করেন, আপনি সর্বদা ভিন্ন ফলাফল পান (শব্দ, বিকৃতি ইত্যাদির কারণে) এবং প্রায়শই ফলাফল গাউসীয় বিতরণ তৈরি করে। গাউসিয়ান বক্ররেখা বর্ণনা করার জন্য দুটি প্রধান পরামিতি রয়েছে:

  1. গড় (যা বোঝা সহজ, এটির মানটি যার বক্ররেখাটি ঘটে থাকে)।
  2. স্ট্যান্ডার্ড বিচ্যুতি, যা বলবে যে বক্ররেখা কত প্রশস্ত বা সংকীর্ণ। সংকীর্ণ বক্ররেখা, আরও ভাল নির্ভুলতা, কারণ সমস্ত ফলাফল একে অপরের কাছাকাছি। যদি বক্ররেখা প্রশস্ত হয় এবং খাড়া না হয়, তবে এর অর্থ হ'ল একই ঘটনার পরিমাপ একে অপরের থেকে খুব আলাদা, সুতরাং পরিমাপের একটি খারাপ গুণ রয়েছে has

এক সিগমা গাউসিয়ান বক্ররেখা কত সংকীর্ণ / প্রশস্ত তা বর্ণনা করার অন্য একটি উপায়।
এটি কেবলমাত্র বলে যে পরিমাপের গড়টি যদি X হয় এবং একটি সিগমা σ হয়, তবে সমস্ত পরিমাপের 68% হবে X - σএবং এর মধ্যে X + σ

উদাহরণ। আমরা দূরত্ব পরিমাপ করি এবং ফলস্বরূপ গাউসীয় বিতরণ পাই। গড় 10 মি। যদি 4 4 মি হয় তবে এর অর্থ হল যে পরিমাপের 68% 6m থেকে 14m এর মধ্যে ছিল।

যখন আমরা বীকনগুলির সাহায্যে দূরত্ব পরিমাপ করি তখন আমরা আরএসএসআই এবং 1-মিটার ক্যালিগ্রেশন মান পাই যা আমাদের মিটারে দূরত্ব পরিমাপ করতে দেয়। তবে প্রতিটি পরিমাপ বিভিন্ন মান দেয় যা গাউসিয়ান বক্ররেখা গঠন করে। এবং একটি সিগমা (এবং যথার্থতা) হ'ল দূরত্ব নয়, পরিমাপের নির্ভুলতা!

এটি বিভ্রান্তিকর হতে পারে, কারণ যখন আমরা বীকনকে আরও দূরে সরিয়ে ফেলি, তখন একটি সিগমা আসলে বেড়ে যায় কারণ সংকেত আরও খারাপ। তবে বিভিন্ন বীকন পাওয়ার-স্তরের সাথে আমরা আসলে দূরত্ব পরিবর্তন না করেই সম্পূর্ণ ভিন্ন নির্ভুলতার মানগুলি পেতে পারি। উচ্চ ক্ষমতা, ত্রুটি কম।

সেখানে একটি ব্লগ পোস্টে যা পুঙ্খানুপুঙ্খভাবে ব্যাপার বিশ্লেষণ হল: http://blog.shinetech.com/2014/02/17/the-beacon-experiments-low-energy-bluetooth-devices-in-action/

লেখকের একটি অনুমান আছে যে নির্ভুলতা আসলে দূরত্ব। তিনি দাবি করেন যে কনটাক্ট.ইও থেকে বীকনগুলি ত্রুটিযুক্ত বিচিউস যখন তিনি সর্বোচ্চ মানটিতে শক্তি বাড়িয়েছিলেন, সঠিকতা মান 1, 5 এবং এমনকি 15 মিটারের জন্য খুব ছোট ছিল। শক্তি বৃদ্ধির আগে যথার্থতা দূরত্বের মানগুলির খুব কাছাকাছি ছিল। আমি ব্যক্তিগতভাবে মনে করি যে এটি সঠিক, কারণ উচ্চতর স্তর স্তর, হস্তক্ষেপের কম প্রভাব। এবং বিস্ময়কর কেন এস্টিমোট বীকনগুলি এভাবে আচরণ করে না।

আমি বলছি না আমি 100% সঠিক, তবে আইওএস বিকাশকারী হওয়া ছাড়াও আমার ওয়্যারলেস ইলেক্ট্রনিক্সে ডিগ্রি রয়েছে এবং আমি মনে করি যে ডকস থেকে আমাদের "একটি সিগমা" শব্দটি উপেক্ষা করা উচিত নয় এবং আমি এ সম্পর্কে আলোচনা শুরু করতে চাই।

এটি সম্ভব হতে পারে যে নির্ভুলতার জন্য অ্যাপলের অ্যালগরিদম কেবল সাম্প্রতিক পরিমাপ সংগ্রহ করে এবং সেগুলির গাওসীয় বিতরণ বিশ্লেষণ করে। এবং এটি সঠিকভাবে সেট করে। আমি পূর্ববর্তী বন্টন দূরত্বের মানগুলি পুনরায় সেট করার জন্য ব্যবহারকারী চলমান (এবং কত দ্রুত) চলছে কিনা তা সনাক্ত করতে তারা তথ্য ফর্ম অ্যাক্সিলোমিটার ব্যবহার সম্ভাবনা বাদ দেবেন না কারণ তারা অবশ্যই পরিবর্তিত হয়েছে।


"সিগমা" পারস্পরিক সম্পর্কের দুর্দান্ত ভূমিকা। এছাড়াও কোনও গীকের পক্ষে (এমনকি একটি অ্যাপল গীক) ভেরিয়েবলের নাম "নির্ভুলতা" ব্যবহার করা যখন তাদের "দূরত্ব" বোঝানো হত তত বিচিত্র হবে। প্রতিটি আরএসএসআই "দূরত্ব" বা "অবস্থান" সংকল্প একটি "মার্জিন অফ ত্রুটি" নিয়ে আসে (যেমন, আপনি এখানে +/- অনেক বেশি)। সুতরাং এটি বোঝায় যে তাদের লাইব্রেরিতে "দূরত্ব" এবং "নির্ভুলতার জন্য" একটি ফাংশন উভয়ই থাকবে।
জেসি চিশল্ম

@ r00dY একটি উজ্জ্বল ব্যাখ্যা আমি অবশ্যই বলতে পারি। এখন, আপনি যদি সহায়তা করতে পারেন তবে কেবল একটি প্রশ্ন। আমার কাছে বেকনটির জন্য 1 মি, 2 মি ... 15 মি, ... 20 মি এবং আরও কিছু পরিমাপের জন্য একটি ক্যালিগ্রেশন ডেটা রয়েছে। আমার প্রতিটি দূরত্বের জন্য গড় দূরত্বের মান রয়েছে। এখন, লোকেশন ম্যানেজার ডেলিগেটের কাছ থেকে যখন আমরা বীকন মেজর, গৌণ, আরএসসি ইত্যাদির মতো বীকন ডেটা পাই তখন কি আমি বর্ণিত উপরের ক্রমাঙ্কন থেকে প্রাপ্ত দূরত্বটি ব্যবহার করার পরামর্শ দেওয়া হচ্ছে? দয়া করে পরামর্শ দিন, কোনও সহায়তা প্রশংসিত হবে। আগাম ধন্যবাদ.
অলকেশ ফুদানি

অ্যাপলের accuracyউভয় একটি ফাংশন rssiএবং tx power। এটি সম্পূর্ণরূপে অসম্ভব নয় যে এস্তিমোট accuracyফাংশনটি বিপরীত করার সিদ্ধান্ত নিয়েছে এবং tx powerপাঠ্য accuracyদূরত্বের অনুমান করে এমন মান প্রদান শুরু করে । এটি দূরত্ব নির্ধারণের জন্য একটি সহজ বিকাশকারী অভিজ্ঞতা সরবরাহ করে, তবে অ্যাপলের সংজ্ঞাটি ভঙ্গ করে accuracy। অন্যান্য ব্র্যান্ডগুলি অ্যাপলের সংজ্ঞাটির সাথে আরও সত্য থাকতে পারে accuracyএবং প্রকৃতপক্ষে বিপরীত ইঞ্জিনিয়ারড মানের চেয়ে "1 মিটার অনুমান" সরবরাহ করে যা accuracyঅনুমানের দূরত্ব তৈরি করে।
সেনসফুল

63

আইবিকন আউটপুট শক্তিটি 1 মিটার দূরত্বে পরিমাপ করা হয় (ক্রমাঙ্কিত)। ধরা যাক এটি -59 ডিবিএম (কেবল একটি উদাহরণ)। আইবিকন তার এলই বিজ্ঞাপনের অংশ হিসাবে এই নম্বরটি অন্তর্ভুক্ত করবে।

শোনার ডিভাইস (আইফোন, ইত্যাদি) ডিভাইসের আরএসএসআই পরিমাপ করবে। ধরা যাক, উদাহরণস্বরূপ, এটি, বলুন -72 ডিবিএম।

যেহেতু এই সংখ্যাগুলি ডিবিএমে রয়েছে, তাই পাওয়ারের অনুপাতটি আসলে ডিবিতে পার্থক্য। তাই:

ratio_dB = txCalibratedPower - RSSI

এটিকে লিনিয়ার অনুপাতে রূপান্তর করতে, আমরা ডিবি-র জন্য আদর্শ সূত্রটি ব্যবহার করি:

ratio_linear = 10 ^ (ratio_dB / 10)

যদি আমরা শক্তির সংরক্ষণ অনুমান করি, তবে সিগন্যাল শক্তি 1 / আরআর ^ 2 হিসাবে পড়ে যেতে হবে। তাই:

power = power_at_1_meter / r^2। আর এর জন্য সমাধান করা, আমরা পাই:

r = sqrt(ratio_linear)

জাভাস্ক্রিপ্টে কোডটি দেখতে এমন হবে:

function getRange(txCalibratedPower, rssi) {
    var ratio_db = txCalibratedPower - rssi;
    var ratio_linear = Math.pow(10, ratio_db / 10);

    var r = Math.sqrt(ratio_linear);
    return r;
}

দ্রষ্টব্য, এটি যদি আপনি কোনও ইস্পাত ভবনের অভ্যন্তরে থাকেন তবে সম্ভবত অভ্যন্তরীণ প্রতিচ্ছবি হবে যা সংকেত ক্ষয়কে 1 / r ^ 2 এর চেয়ে ধীর করে দেয়। যদি সিগন্যালটি কোনও মানবদেহে (জল) দিয়ে যায় তবে সংকেতটি নমনীয় হবে। এটি খুব সম্ভবত যে অ্যান্টেনার সব দিক থেকে সমান লাভ নেই। ঘরের ধাতব জিনিসগুলি অদ্ভুত হস্তক্ষেপের নিদর্শন তৈরি করতে পারে। ইত্যাদি ইত্যাদি ... ওয়াইএমএমভি।


কৌতূহলের বাইরে: কীভাবে ratio_dB = txCalibratedPower - RSSIকাজ হবে? যেহেতু উভয় পদক্ষেপই ডিবিএম-এ রয়েছে, তাই আমিও ধরে নেব যে ফলাফলটি ডিবিএম-তেও হবে?
ব্ল্যাক ওল্ফ

3

আইব্যাকন অবস্থানগুলি সম্পর্কে সচেতন রাখতে ব্লুটুথ লো এনার্জি (এলই) ব্যবহার করে এবং ব্লুটুথ এলই এর দূরত্ব / ব্যাপ্তি 160 ফিট ( http://en.wikedia.org/wiki/ ব্লুথুথ_লার্জি )।


3

আইব্যাকন-ফর্ম্যাট করা বিজ্ঞাপন প্যাকেটের উত্সের দূরত্বগুলি দাবি করা ট্রান্সমিট পাওয়ারের সাথে পরিমাপকৃত প্রাপ্ত সংকেত শক্তির তুলনা করে গণনা করা সংকেত পথ থেকে অনুমান করা হয় যা ট্রান্সমিটারটি বিজ্ঞাপনের ডেটাতে এনকোড করার কথা।

এর মতো একটি পাথ ক্ষতি ক্ষতিভিত্তিক স্কিমটি কেবল আনুমানিক এবং এটি অ্যান্টেনার কোণ, হস্তক্ষেপকারী বস্তু এবং সম্ভবত একটি গোলমাল আরএফ পরিবেশের মতো পরিবর্তিত হতে পারে। তুলনায়, প্রকৃতপক্ষে দূরত্ব পরিমাপের জন্য ডিজাইন করা সিস্টেমগুলি (জিপিএস, রাডার ইত্যাদি) প্রসারণ সময়ের সঠিক পরিমাপের উপর নির্ভর করে, একই ক্ষেত্রে এমনকি সংকেতের পর্যায়ও পরীক্ষা করে।

জিয়ারু যেমন উল্লেখ করেছেন, 160 ফুট সম্ভবত সম্ভবত নির্ধারিত সীমা ছাড়িয়ে গেছে, তবে এর অর্থ এই নয় যে কোনও প্যাকেট কখনই পাবে না , কেবল সেই দূরত্বে এটি কাজ করার আশা করা উচিত নয়।


1

এটি সম্ভব, তবে এটি আপনি যে বেকন গ্রহণ করছেন তার পাওয়ার আউটপুট, কাছাকাছি অন্যান্য আরএফ উত্স, বাধা এবং অন্যান্য পরিবেশগত কারণের উপর নির্ভর করে। আপনার আগ্রহী পরিবেশটি চেষ্টা করার জন্য সবচেয়ে ভাল কাজ।


1

একই স্থানে একাধিক ফোন এবং বীকন সহ, উচ্চতর ডিগ্রি যথাযথতার সাথে নৈকট্য পরিমাপ করা কঠিন হতে চলেছে। একাধিক বীকনের জন্য সিগন্যাল শক্তি (দূরত্ব) বৈচিত্রগুলি কল্পনা করতে অ্যান্ড্রয়েড "বি এবং এল ব্লুটুথ লে স্ক্যানার" অ্যাপ্লিকেশনটি ব্যবহার করে দেখুন এবং আপনি দ্রুত আবিষ্কার করতে পারবেন যে জটিল, অভিযোজিত অ্যালগরিদমগুলি কোনও ধরণের সামঞ্জস্যপূর্ণ নৈকট্য পরিমাপ সরবরাহ করতে হতে পারে ।

গ্রাহকদের হতাশা কমাতে আপনি "দয়া করে আপনার ফোনটি এখানে রাখুন", ব্যবহারকারীকে প্রচুর সমাধান দেখতে পাচ্ছেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.