স্মার্টফোনে কম্পাস (compass) হল একটি ডিজিটাল সেন্সর যা ম্যাগনেটোমিটারের উপর ভিত্তি করে পৃথিবীর চৌম্বক মেরুগুলির দিক নির্ণয় করে। প্রযুক্তিটি ন্যাভিগেশন, ম্যাপিং এবং অগমেন্টেড রিয়েলিটি অ্যাপ্লিকেশনগুলিকে মহাকাশে ডিভাইসের ওরিয়েন্টেশন সঠিকভাবে নির্ধারণ করতে দেয়। STMicroelectronics, 2025 অনুসারে, আধুনিক MEMS ম্যাগনেটোমিটারগুলি 1–2 ডিগ্রী পর্যন্ত দিক নির্ণয়ের নির্ভুলতা প্রদান করে।
মূল পয়েন্ট
স্মার্টফোনে ডিজিটাল কম্পাস হল একটি সেন্সর যা ম্যাগনেটোমিটারের উপর ভিত্তি করে, যা পৃথিবীর চৌম্বক ক্ষেত্রের তীব্রতা পরিমাপ করে এবং অজিমুথ (চৌম্বক উত্তরের সাপেক্ষে কোণ) নির্ধারণ করে। যান্ত্রিক কম্পাসের বিপরীতে, ডিজিটাল কম্পাস চৌম্বক ক্ষেত্র সনাক্ত করতে মাইক্রোইলেক্ট্রোমেকানিকাল সিস্টেম (MEMS) ব্যবহার করে। ম্যাগনেটোমিটার তিনটি অক্ষে ক্ষেত্র পরিমাপ করে, যা স্মার্টফোনের যেকোনো কাত অবস্থায় সঠিক দিক নির্ণয়ের অনুমতি দেয়।
একটি আধুনিক MEMS ম্যাগনেটোমিটার হল 2×2×1 মিমি পরিমাপের একটি মাইক্রোচিপ, যা অ্যাক্সেলেরোমিটার এবং জাইরোস্কোপের সাথে (9-অক্ষের IMU-এর অংশ হিসাবে) স্মার্টফোন বডিতে একীভূত থাকে। সেন্সর শুধু দিকই নয়, পৃথিবীর চৌম্বক ক্ষেত্রের তীব্রতাও (অক্ষাংশের উপর নির্ভর করে 25–65 µT) পরিমাপ করে। ধাতব বস্তু এবং স্পিকার, ভাইব্রেশন মোটর এবং ক্যামেরা থেকে প্যারাসাইটিক চৌম্বক ক্ষেত্রের উপস্থিতি বিকৃতি তৈরি করে, তাই নির্ভুল অপারেশনের জন্য রিডিংয়ের সফ্টওয়্যার সংশোধন প্রয়োজন।
মোবাইল ফোনে প্রথম ডিজিটাল কম্পাস 2009 সালে iPhone 3GS — প্রথম বিল্ট-ইন ম্যাগনেটোমিটার সহ স্মার্টফোন — লঞ্চের সাথে দেখা গিয়েছিল। আজ, বাজেট মডেল সহ অধিকাংশ স্মার্টফোনে ম্যাগনেটোমিটার ইনস্টল করা হয়। Yole Group অনুসারে, মোবাইল ডিভাইসের জন্য MEMS ম্যাগনেটোমিটারের বাজার প্রতি বছর 1.5 বিলিয়ন ইউনিট ছাড়িয়ে যায়, যা এই প্রযুক্তির চাহিদা নিশ্চিত করে।
MEMS ম্যাগনেটোমিটার-এর মূল হল একটি সংবেদনশীল উপাদান যা বাহ্যিক চৌম্বক ক্ষেত্রের প্রভাবে তার বৈদ্যুতিক বৈশিষ্ট্য পরিবর্তন করে। আধুনিক স্মার্টফোনগুলি হল প্রভাব বা ম্যাগনেটোরেজিস্টিভ প্রভাব (AMR — অ্যানিসোট্রপিক ম্যাগনেটো-রেজিস্ট্যান্স) ব্যবহার করে। নীতিটি এই সত্যের উপর ভিত্তি করে যে একটি বিদ্যুৎ বহনকারী উপাদান চৌম্বক ক্ষেত্রের সংস্পর্শে এলে তার রোধ পরিবর্তন করে এবং ভোল্টেজ পরিবর্তন থেকে চৌম্বক ক্ষেত্র ভেক্টর গণনা করা হয়।
হল প্রভাব সেন্সরগুলি চলমান চার্জের উপর লরেঞ্জ বলের কারণে অর্ধপরিবাহী প্লেটের প্রান্তে ভোল্টেজ পরিবর্তন নিবন্ধন করে। ম্যাগনেটোরেজিস্টিভ সেন্সর (AMR) একটি পারমালয় (NiFe) ফিল্ম ব্যবহার করে যার রোধ চৌম্বক ক্ষেত্রের দিকের উপর নির্ভর করে। AMR সেন্সরগুলি হল সেন্সরের তুলনায় ছোট আকার এবং উচ্চতর সংবেদনশীলতা প্রদান করে, তাই তারা আধুনিক স্মার্টফোনে প্রভাবশালী।
| প্রকার | সংবেদনশীলতা | শক্তি খরচ | আকার |
|---|---|---|---|
| হল | মধ্যম | কম | মধ্যম |
| AMR | উচ্চ | কম | ছোট |
| GMR | অতি উচ্চ | মধ্যম | ছোট |
ম্যাগনেটোমিটার ডেটা অ্যাক্সেলেরোমিটার রিডিংয়ের সাথে একত্রিত করা হয় যাতে কাত সংশোধন করা যায় এবং অনুভূমিক সমতলে উত্তর দিক নির্ধারণ করা যায়। সেন্সর ফিউশন অ্যালগরিদম ম্যাগনেটোমিটার, জাইরোস্কোপ এবং অ্যাক্সেলেরোমিটার থেকে ডেটা একত্রিত করতে ম্যাডগউইক ফিল্টার বা কালমান ফিল্টার ব্যবহার করে। এটি দ্রুত ঘূর্ণন এবং ডিভাইস নাড়ানোর সময়ও একটি স্থিতিশীল এবং নির্ভুল অজিমুথ প্রদান করে।
মোবাইল শিল্পে তিনটি প্রধান ধরনের MEMS ম্যাগনেটোমিটার ব্যবহার করা হয়: হল প্রভাব, অ্যানিসোট্রপিক ম্যাগনেটোরেজিস্টিভ (AMR) এবং জায়েন্ট ম্যাগনেটোরেজিস্টিভ (GMR)। সংবেদনশীলতা, শক্তি খরচ এবং খরচের সর্বোত্তম ভারসাম্যের কারণে AMR ম্যাগনেটোমিটারগুলি স্মার্টফোনে সর্বাধিক ব্যবহৃত হয়। শীর্ষস্থানীয় নির্মাতারা হল AKM (Asahi Kasei Microdevices), STMicroelectronics এবং Bosch Sensortec।
একটি সাধারণ স্মার্টফোনে AMR ম্যাগনেটোমিটারের সংবেদনশীলতা হল 0.3–1 µT যার গতিশীল পরিসীমা ±1000 µT (±8 গাউস), যা পৃথিবীর ক্ষেত্র (30–65 µT) সঠিকভাবে পরিমাপ এবং প্যারাসাইটিক ক্ষেত্রগুলির ক্ষতিপূরণের জন্য যথেষ্ট। সেন্সরের নমুনা হার 100–200 Hz পর্যন্ত পৌঁছাতে পারে, তবে বেশিরভাগ অ্যাপ্লিকেশন শক্তি বাঁচাতে 10–50 Hz ব্যবহার করে। তাপমাত্রা এবং হাউজিং স্ট্রেস বিকৃতির স্বয়ংক্রিয় ক্ষতিপূরণ সেন্সর ড্রাইভার স্তরে প্রয়োগ করা হয়।
কম্পাস ক্যালিব্রেশন হল স্মার্টফোনের উপাদান — স্পিকার, ভাইব্রেশন মোটর, ক্যামেরা এবং ব্যাটারি — দ্বারা তৈরি প্যারাসাইটিক চৌম্বক ক্ষেত্রগুলির ক্ষতিপূরণের প্রক্রিয়া। ক্যালিব্রেশন ছাড়া, ম্যাগনেটোমিটারের রিডিং প্রকৃত দিক থেকে 10–30 ডিগ্রী পর্যন্ত বিচ্যুত হতে পারে। ক্যালিব্রেশন সিস্টেম তিনটি অক্ষে অফসেট ম্যাট্রিক্স (হার্ড-আয়রন বায়াস) নির্ধারণ করে এবং পরবর্তী সমস্ত পরিমাপ সংশোধন করতে এটি প্রয়োগ করে।
স্ট্যান্ডার্ড কম্পাস ক্যালিব্রেশন পদ্ধতি হল “আকৃতি 8” আঁকা: ব্যবহারকারী স্মার্টফোনকে 8 নম্বরের মতো একটি পথে ঘোরান। চলাচলের সময়, সেন্সর সমস্ত সম্ভাব্য ওরিয়েন্টেশনে চৌম্বক ক্ষেত্র রেকর্ড করে এবং অ্যালগরিদম পয়েন্ট জমা করে এবং শূন্য থেকে অফসেট কেন্দ্রবিশিষ্ট একটি গোলক অনুমান করে। গোলকের ব্যাসার্ধ পৃথিবীর চৌম্বক ক্ষেত্রের মাত্রার সাথে মিলে যায় এবং কেন্দ্রটি প্যারাসাইটিক অফসেট ভেক্টরকে উপস্থাপন করে। অনুমানের পরে, সিস্টেম প্রতিটি অক্ষের জন্য সংশোধন সহগ গণনা করে।
Qualcomm এবং MediaTek-এর আধুনিক ক্যালিব্রেশন অ্যালগরিদম ব্যবহারকারীর হস্তক্ষেপ ছাড়াই ক্রমাগত পটভূমিতে ক্যালিব্রেশন সম্পাদন করে। তারা ডিভাইসের ঘূর্ণনের সময় চৌম্বক ক্ষেত্রের পরিবর্তন বিশ্লেষণ করে এবং স্বয়ংক্রিয়ভাবে সংশোধন প্যারামিটার আপডেট করে। যদি সেন্সর একটি নতুন প্যারাসাইটিক ক্ষেত্র (যেমন, চৌম্বক কেস লাগানোর সময়) সনাক্ত করে, সিস্টেম 1–2 সেকেন্ডের ক্রমাগত ডিভাইস চলাচলের মধ্যে পুনরায় ক্যালিব্রেশন শুরু করে।
ডিজিটাল কম্পাস মোবাইল অ্যাপ্লিকেশনের একটি বিস্তৃত পরিসরে ব্যবহৃত হয়। প্রাথমিক ব্যবহার হল ন্যাভিগেশন এবং ম্যাপিং সার্ভিসে (Google Maps, Yandex.Maps, 2GIS), যা মানচিত্রে ডিভাইসের ওরিয়েন্টেশন নির্ধারণ করে ব্যবহারকারীর চলাচলের দিক সঠিকভাবে প্রদর্শন করতে। অগমেন্টেড রিয়েলিটি (AR) অ্যাপ্লিকেশনে, কম্পাস মূল দিকগুলির সাপেক্ষে ভার্চুয়াল বস্তুর সঠিক অবস্থান নিশ্চিত করে।
জ্যোতির্বিজ্ঞান অ্যাপ্লিকেশনে (Star Walk, SkySafari), কম্পাস অ্যাক্সেলেরোমিটারের সাথে মিলিত হয়ে সেই দিক নির্ধারণ করে যেদিকে স্মার্টফোন নির্দেশ করছে এবং রাতের আকাশের সংশ্লিষ্ট এলাকা দেখায়। মাছ ধরা এবং পর্যটন অ্যাপগুলি অজিমুথ রেফারেন্স সহ মানচিত্রে আগ্রহের পয়েন্ট চিহ্নিত করতে কম্পাস ব্যবহার করে। GPS সহ ফিটনেস ট্র্যাকিং দৌড়ানো বা সাইকেল চালানোর দিক নির্ধারণ করতে কম্পাস রিডিং ব্যবহার করে, যা রুট প্রদর্শনের নির্ভুলতা উন্নত করে।
Android-এ ডিজিটাল কম্পাস অ্যাক্সেস করতে, Sensor API থেকে TYPE_MAGNETIC_FIELD সেন্সর ব্যবহার করা হয়। ডেভেলপাররা ম্যাগনেটোমিটার রিডিং পরিবর্তনের জন্য একটি শ্রোতা নিবন্ধন করে এবং মাইক্রোটেস্লায় তিনটি অক্ষে চৌম্বক ক্ষেত্রের তীব্রতার মানের একটি অ্যারে পায়। অজিমুথ নির্ধারণ করতে, ম্যাগনেটোমিটার ডেটা সেন্সর ফিউশনের মাধ্যমে একটি রোটেশন ম্যাট্রিক্সের মাধ্যমে অ্যাক্সেলেরোমিটার ডেটার সাথে একত্রিত করা হয়।
import android.hardware.Sensor
import android.hardware.SensorEvent
import android.hardware.SensorEventListener
import android.hardware.SensorManager
class CompassManager(
private val sensorManager: SensorManager
) : SensorEventListener {
private val magnetometer = FloatArray(3)
private val accelerometer = FloatArray(3)
private val rotationMatrix = FloatArray(9)
private val orientation = FloatArray(3)
override fun onSensorChanged(event: SensorEvent) {
if (event.sensor.type == Sensor.TYPE_MAGNETIC_FIELD) {
event.values.copyInto(magnetometer)
} else if (event.sensor.type == Sensor.TYPE_ACCELEROMETER) {
event.values.copyInto(accelerometer)
}
SensorManager.getRotationMatrix(
rotationMatrix, null,
accelerometer, magnetometer
)
SensorManager.getOrientation(rotationMatrix, orientation)
val azimuth = Math.toDegrees(orientation[0].toDouble())
// অজিমুথ: 0 = উত্তর, 90 = পূর্ব, 180 = দক্ষিণ, 270 = পশ্চিম
}
fun start() {
sensorManager.registerListener(this,
sensorManager.getDefaultSensor(Sensor.TYPE_MAGNETIC_FIELD),
SensorManager.SENSOR_DELAY_UI)
sensorManager.registerListener(this,
sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_UI)
}
override fun onAccuracyChanged(sensor: Sensor?, accuracy: Int) {}
}
getOrientation-এর মাধ্যমে প্রাপ্ত অজিমুথ রেডিয়ানে পরিমাপ করা হয় এবং -π থেকে π পর্যন্ত মান নিতে পারে, যেখানে 0 চৌম্বক উত্তরের সাথে মিলে যায়। পর্দায় প্রদর্শনের জন্য, মানগুলি 0–360 পরিসরে স্বাভাবিক করে ডিগ্রীতে (Math.toDegrees) রূপান্তরিত করা হয়। চৌম্বকীয় পতন — চৌম্বক এবং প্রকৃত (ভৌগোলিক) উত্তরের মধ্যে কোণ, যা ভৌগোলিক অবস্থানের উপর নির্ভর করে এবং সময়ের সাথে পরিবর্তিত হয় — বিবেচনা করা গুরুত্বপূর্ণ। Google Maps GeomagneticField API-এর মাধ্যমে স্বয়ংক্রিয়ভাবে পতন সামঞ্জস্য করে।
প্রায়শই জিজ্ঞাসিত প্রশ্ন
ডিজিটাল কম্পাস একটি MEMS ম্যাগনেটোমিটার — 2×2 মিমি চিপ — ব্যবহার করে যা তিনটি অক্ষে পৃথিবীর চৌম্বক ক্ষেত্র পরিমাপ করে। ম্যাগনেটোমিটার ডেটা অজিমুথ — উত্তর দিক এবং ডিভাইসের ওরিয়েন্টেশনের মধ্যে কোণ — নির্ধারণ করতে অ্যাক্সেলেরোমিটার রিডিংয়ের সাথে একত্রিত করা হয়।
কম্পাসের ভুল রিডিং প্রায়শই ক্যালিব্রেশনের অভাব, স্পিকার বা ভাইব্রেশন মোটর থেকে চৌম্বক হস্তক্ষেপ, সেইসাথে চৌম্বক কেসের কারণে হয়। সমাধান হল “আকৃতি 8” ক্যালিব্রেশন মুভমেন্ট করা বা চৌম্বক আনুষাঙ্গিক অপসারণ করা। ক্রমাগত ত্রুটির জন্য, সেন্সর পরিদর্শনের প্রয়োজন হতে পারে।
হ্যাঁ, স্মার্টফোনের ভিতরে প্যারাসাইটিক চৌম্বক ক্ষেত্রগুলির ক্ষতিপূরণের জন্য কম্পাস ক্যালিব্রেশন প্রয়োজনীয়। বেশিরভাগ আধুনিক ডিভাইসে, ক্যালিব্রেশন স্বয়ংক্রিয়ভাবে পটভূমিতে সম্পাদিত হয়। ম্যানুয়াল ক্যালিব্রেশনের জন্য, আপনার স্মার্টফোন দিয়ে বাতাসে “আকৃতি 8” আঁকুন — সিস্টেম সমস্ত কোণ থেকে ডেটা সংগ্রহ করবে এবং রিডিং সংশোধন করবে।
Android-এ, TYPE_MAGNETIC_FIELD সেন্সরের সাথে Sensor API-এর মাধ্যমে কম্পাস অ্যাক্সেস প্রদান করা হয়। অজিমুথ SensorManager.getRotationMatrix() এবং getOrientation()-এর মাধ্যমে গণনা করা হয়, যা ম্যাগনেটোমিটার এবং অ্যাক্সেলেরোমিটার ডেটা একত্রিত করে। ফলস্বরূপ অজিমুথ পর্দায় প্রদর্শনের জন্য অভিযোজিত করা যেতে পারে।
সবচেয়ে নির্ভুল কম্পাস ট্রিপল IMU সেন্সর (ম্যাগনেটোমিটার + জাইরোস্কোপ + অ্যাক্সেলেরোমিটার) এবং সক্রিয় ক্যালিব্রেশন সিস্টেম সহ স্মার্টফোনে ইনস্টল করা আছে। ফ্ল্যাগশিপ Google Pixel, Samsung Galaxy S-series এবং iPhone Pro মডেলগুলি শীর্ষে রয়েছে — তারা 0.3 µT সংবেদনশীলতা এবং স্বয়ংক্রিয় সংশোধন সহ AKM এবং Bosch ম্যাগনেটোমিটার ব্যবহার করে।
সারসংক্ষেপ
আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব
IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।
আরও পড়ুন