শনিবার, ১০ আগস্ট, ২০১৩

এন্ড্রয়েড স্মার্টফোন সেন্সর সম্পর্কে বিস্তারিত জানুন

বর্তমান যুগকে বলা হয় স্মার্টফোনের যুগ। বলা বাহুল্য বিশ্বের অন্যান্য উন্নত দেশগুলোর সঙ্গে তাল মিলিয়ে আমাদের দেশেও বেড়ে চলেছে স্মার্টফোনের ব্যবহার। এর সহজ সরল গঠন, আকৃতি ও বহুবিধ সুবিধা খুব সহজেই মন কেড়ে নেয় ব্যবহারকারির। বিশ্বের বিভিন্ন নামী দামি ব্র্যান্ডের সঙ্গে বেশ কিছু ব্র্যান্ডের স্বল্প মূল্যের স্মার্টফোন পাওয়া যাচ্ছে বাংলাদেশের বাজারে। সাধারন মোবাইল ফোনের চেয়ে অনেক বেশি সুবিধা পাওয়া যায় বলে এদের বলা হয় স্মার্টফোন। অপারেটিং সিস্টেম ভেদে বর্তমানে জনপ্রিয় স্মার্টফোন এর তালিকায় রয়েছে অ্যাপল আই ফোন, গুগলের এন্ড্রয়েড ও মাইক্রসফট এর উইন্ডোজ। এদের মধ্যে গুগলের মুক্ত অপারেটিং সিস্টেম এন্ড্রয়েড চালিত স্মার্টফোন গুলো সহজলভ্য এবং স্বল্প মূল্যের হওয়ায় এটাই বর্তমানে সব ধরনের ক্রেতার মূল আকর্ষণ।
এন্ড্রয়েড স্মার্টফোন গুলো দুটি অংশে বিভক্ত।
যথাঃ (১)হার্ডওয়্যার, (২)সফটওয়্যার।
হার্ডওয়্যার এর মধ্যে উল্লেখযোগ্য হার্ডওয়্যারগুলো হল প্রসেসর, র‍্যাম, রোম, সেন্সর ইত্যাদি। আজ আমি যে বিষয় নিয়ে আলোচনা করব তা হল সেন্সর। সেন্সর স্মার্টফোন এর একটি উল্লেখযোগ্য এবং গুরুত্বপূর্ণ হার্ডওয়্যার যা স্মার্টফোন ব্যবহারকারির ব্যবহারের আনন্দ কয়েকগুন বাড়িয়ে দেয়। এটা স্মার্টফোন এর অপারেটিং এ গুরুত্বপূর্ণ ভূমিকা পালন করে। সেন্সর গুলো অত্যন্ত বুদ্ধিমান ও সংবেদনশীল হয়ে থাকে।
অধিকাংশ এন্ড্রয়েড চালিত স্মার্টফোনে কিছু বিল্ট ইন সেন্সর থাকে যা গতি, অভিযোজন এবং বিভিন্ন প্রকার পরিবেশগত অবস্থা পরিমাপ করে। এই সেন্সর গুলো কিছু কাঁচা তথ্য যথাযথ ভাবে উচ্চ নির্ভুলতার সঙ্গে প্রদান করতে সক্ষম। এই সেন্সর গুলো খুবই দরকারি যদি আপনি একটি ডিভাইসের ত্রিমাত্রিক আন্দোলন, পজিশনিং অথবা ডিভাইসের পরিবেষ্টিত পরিবেশের পরিবর্তন নিরীক্ষন করতে চান। উদাহরন স্বরূপ, একটি ডিভাইসের মধ্যাকর্ষন সেন্সর (Gravity Sensor) ব্যবহারকারির অঙ্গভঙ্গি যেমন, ঢাল,ঝাকুনি,ঘুর্ণন,দোলন (Tilt,Shake,Rotation,Swing) প্রভৃতি হতে প্রাপ্ত ডেটা ট্র্যাক করে একটি গেইম খেলতে সাহায্য করে। অনুরূপভাবে, একটি তাপমাত্রা সংশ্লিষ্ট এপ্লিকেশন একটি ডিভাইসের তাপমাত্রা সেন্সর (temperature sensor) এবং আদ্রতা সেন্সর (humidity sensor) ব্যবহার করে তাপমাত্রা ও শিশিরাংক নিরূপণ হিসেব করে তাপমাত্রা এবং আদ্রতার তথ্য প্রদান করে। অথবা, হতে পারে একটি ট্র্যাভেল এপ্লিকেশন একটি ডিভাইসের ভূচৌম্বকিয় ক্ষেত্রের সেন্সর (geomagnetic field sensor) এবং গতি নির্ধারক যন্ত্র (accelerometer) ব্যবহার করে দিক নির্দেশনা প্রদান করে।
এন্ড্রয়েড প্লাটফর্ম প্রধানত তিন শ্রেণীর সেন্সর সমর্থন করে।
মোশন সেন্সর (Motion sensors)
এই জাতীয় সেন্সর গুলো একটি ডিভাইসের উপর আরোপিত তিনটি অক্ষের  (x, y, z) ত্বরণ বল এবং আবর্তনশীল বল পরিমাপ করে। এই শ্রণীর সেন্সর গুলোর মধ্যে রয়েছে accelerometers, gravity sensors, gyroscopes এবং rotational vector sensors.
এনভাইরোনমেন্টাল বা পরিবেশগত সেন্সর (Environmental sensors)
এই জাতীয় সেন্সর গুলো একটি ডিভাইসের উপর আরোপিত বিভিন্ন পরিবেশগত ঘটনাবলী যেমন, পরিবেষ্টিত বায়ুর তাপমাত্রা ও চাপ, আলোকসজ্জ্বা এবং বায়ুর আদ্রতা নির্ণয় করে। ব্যারোমিটার, ফটোমিটার, থার্মোমিটার (barometers, photometers, and thermometers) এই শ্রেণীর অন্তর্ভূক্ত।
পজিশন বা অবস্থান সেন্সর (Position sensors)
এই জাতীয় সেন্সর একটি ডিভাইসের প্রকৃত অবস্থান নির্ণয় করে। স্থিতিবিন্যাস সেন্সর এবং ম্যাগনেটোমিটার (orientation sensors and magnetometers) এই শ্রেণীর অন্তর্ভূক্ত।
ডিভাইসের হার্ডওয়্যার ও সফটওয়্যারের উপর ভিত্তি করে বিভিন্ন প্রকার সেন্সর ব্যবহার করা হয়। ডিভাইসের গঠন, রেজুলেশন প্রভৃতি ভেদে বিভিন্ন মাত্রার সেন্সর ব্যবহূত হয়। কিছু সেন্সর হার্ডওয়্যার ভিত্তিক কিছু সফটওয়্যার ভিত্তিক। খুব কম ডিভাইসে সকল সেন্সর ব্যবহার করা হয়। কিছু কিছু সেন্সরের কাজ এক হলেও ডিভাইসের প্রকৃতির উপর নির্ভর করে এইসব সেন্সর ব্যবহার করা হয়। আবার প্রয়োজনীয় ক্ষেত্রে একটি ডিভাইসে একই প্রকৃতির সকল সেন্সর ব্যবহূত হয়। নিম্নে বিভিন্ন প্রকার সেন্সরের নাম, প্রকৃতি ও তাদের কাজ সংক্ষেপে আলোচনা করা হল। -

Accelerometer Sensor :
Type - Hardware
এই সেন্সর ডিভাইসের উপর আরোপিত মধ্যাকর্ষন বল সহ তিনটি শারীরিক অক্ষ (x, y, z) এর ত্বরণ বল m/s2 এককে সঠিক ভাবে পরিমাপ করতে পারে। এটি অঙ্গভঙ্গি সনাক্তকরন (Motion detection) যেমন, ঝাকুনি, ঢাল ইত্যাদি (shake, tilt, etc.) কাজে ব্যবহূত হয়। বিভিন্ন প্রকার 2D/3D মোশন গেইমস খেলার সময় এটি প্রয়োজন হয়।ডিভাইসের পর্দার আবর্তন বা ঘুর্ণনের (Rotation) কাজ করে। আপনি ডিভাইসটি কিভাবে ধরেছেন সেটি সনাক্ত করে ভিজুয়াল আউটপুট প্রদান করে।

Ambient Temperature Sensor :
Type - Hardware
এটি একটি পরিবেষ্টিত কক্ষের তাপমাত্রা ডিগ্রি সেলসিয়াসে (°C) পরিমাপ করতে পারে। বায়ুর তাপমাত্রা প্রদর্শনে (Monitoring air temperatures) ব্যবহূত হয়।

Gravity Sensor :
Type - Software or Hardware
এটি একটি ডিভাইসের তিনটি অক্ষের (x, y, z) উপর আরোপিত মধ্যাকর্ষন বল m/s2 এককে পরিমাপ করতে পারে। এটি অঙ্গভঙ্গি সনাক্তকরন (Motion detection) যেমন, ঝাকুনি, ঢাল ইত্যাদি (shake, tilt, etc.) কাজে ব্যবহূত হয়। মোশন গেইমস খেলার সময় এটি প্রয়োজন হয়। ডিভাইসের পর্দার আবর্তন বা ঘুর্ণনের (Rotation) কাজ করে। এর কাজও Accelerometer Sensor এর মতই।

Gyroscope Sensor :
Type - Hardware

এটি একটি ডিভাইসের তিনটি শারীরিক অক্ষের  (x, y, z) প্রত্যেকটির ঘূর্ণনের হার rad/s এককে পরিমাপ করে। ঘুর্ণন সনাক্তকরন (Rotation detection) যেমন, পাক খাওয়া/ঘুরা, ঘুরানো/উল্টানো (spin, turn, etc.) ইত্যাদি কাজে ব্যবহূত হয়। এটি ছয় দিক থেকে একই সময়ে পরিমাপ করতে পারে। আপনি ডিভাইসটি যেকোন দিকে হালকা ঘুরালেই এর ফলাফল তাৎক্ষণিক ভাবে দেখতে পাবেন। বর্তমানে এই সেন্সরটি বেশিরভাগ ক্ষেত্রে ত্রিমাতৃক গেইম উন্নয়নের কাজে ব্যবহূত হয়।

Light Sensor :
Type - Hardware

পরিবেষ্টিত আলোর মাত্রা (illumination/দীপন)lx এককে পরিমাপ করে। পর্দার আলো নিয়ন্ত্রনে (Controlling screen brightness) ব্যবহূত হয়। এটি ডিভাইসের পরিবেষ্টিত পরিবেশের আলোর তীব্রতা সনাক্ত করে এবং এর মাধ্যমে ডিভাইস আলোতে নিলে পর্দার উজ্জ্বলতা কমে আবার অন্ধকারে নিলে উজ্জ্বলতা বাড়ে। ব্যাটারীর শক্তি বাঁচাতে (Battery Power Saving) সাহায্য করে।

Linear Acceleration Sensor :
Type - Software or Hardware
একটি ডিভাইসের উপর আপতিত মধ্যাকর্ষন বল ব্যতীত তিনটি অক্ষের  (x, y, z) প্রতিটির ত্বরণ বল m/s2 এককে পরিমাপ করে। একটি একক অক্ষ বরাবর ত্বরণ পর্যবেক্ষন (Monitoring acceleration along a single axis) করে।

Magnetic Field Sensor :
Type - Hardware
সকল তিনটি শারীরিক অক্ষ  (x, y, z) এর জন্য পরিবেষ্টিত ভূচৌম্বকীয় ক্ষেত্র μT এককে পরিমাপ করে। এটি কম্পাস (compass) বা দিক নির্ণয়ের কাজে ও ধাতু সনাক্তকরণের কাজে ব্যবহূত হয়।

Orientation Sensor :
Type - Software


একটি ডিভাইসের কাছাকাছি সকল তিনটি শারীরিক অক্ষ (x, y, z)  এর আবর্তনের ডিগ্রি পরিমাণ করে। API স্তর ৩ হিসেবে আপনি get rotation matrix এর সাথে মধ্যাকর্ষন সেন্সর (gravity sensor) এবং ভূচৌম্বকীয় ক্ষেত্রের সেন্সর (geomagnetic field sensor) সংযোগ করে একটি ডিভাইসের জন্য বাঁক ম্যাট্রিক্স (rotation matrix) লাভ করতে পারেন। এটি ডিভাইসের অবস্থান নির্ণয়ের (Determining device position) কাজে ব্যবহূত হয়। এটি ডিভাইসের অবস্থান নির্দেশন সনাক্ত করে এবং স্বয়ংক্রিয় ভাবে পর্দাকে আবর্তিত করে যখন ডিভাইসটি উলম্ব অথবা আনুভূমিক ভাবে ধরা হয়। এটাকে আবার স্পিরিট লেভেল পরিমাপ করার যন্ত্র হিসেবেও ব্যবহার করা হয়।

Pressure Sensor :
Type - Hardware
hPa অথবা, mbar এর মধ্যে পরিবেষ্টিত বায়ুর চাপ পরিমাপ করে। বায়ুর চাপ পরিবর্তন নিরীক্ষনের (Monitoring air pressure changes) কাজে ব্যবহূত হয়।

Proximity Sensor :
Type - Hardware

একটি ডিভাইসের পর্দার দৃশ্য (screen view) থেকে একটি বস্তুর নৈকট্য আপেক্ষিক সে.মি. পরিমাপ করে। এই সেন্সর মূলত একটি হ্যান্ডসেট একজন ব্যক্তির কান পর্যন্ত স্থির হয়েছে কিনা জানতে ব্যবহূত হয়। কল করার সময় ফোনের অবস্থান নির্ণয়ের (Phone position during a call) কাজ করে। এর মাধ্যমে আপনি যখন ফোনে কোন ব্যক্তির সঙ্গে কথা বলার জন্য ফোনটি কানের কাছে নিবেন তখন ডিসপ্লের আলো স্বয়ংক্রিয় ভাবে নিভে যাবে এবং ফোন কানের কাছ থেকে সরিয়ে আনলে আবার জ্বলে উঠবে।

Relative Humidity Sensor :
Type - Hardware
পরিবেষ্টিত আপেক্ষিক আদ্রতা শতাংশে (%) পরিমাপ করে। শিশির বিন্দু নিরীক্ষন (Monitoring dewpoint), পরম এবং আপেক্ষিক আদ্রতা (absolute, and relative humidity) পরিমাণ করে।

Rotation Vector Sensor :
Type - Software or Hardware
ডিভাইসের ঘুর্নন ভেক্টর (rotation vector) তিনটি উপাদান প্রদানের মাধ্যমে একটি ডিভাইসের স্থিতিবিন্যাস ব্যবস্থা পরিমাপ করে। অঙ্গভঙ্গি সনাক্তকরন (Motion detection) এবং ঘুর্ণন সনাক্তকরন (rotation detection) কাজে ব্যবহূত হয়।

Temperature Sensor :
Type - Hardware
একটি ডিভাইসের তাপমাত্রা ডিগ্রি সেলসিয়াসে  (°C) পরিমাপ করে। এই সেন্সর বিভিন্ন প্রকার ডিভাইসের যন্ত্রপাতিদ্বয় এবং Ambient Temperature Sensor API Level 14 এর সঙ্গে প্রতিস্থাপন করা হয়েছে। তাপমাত্রা নিরীক্ষনের (Monitoring temperatures) কাজে ব্যবহূত হয়।

উপরে উল্লেখিত প্রতিটি সেন্সর এন্ড্রয়েডের এর বিভিন্ন সংস্করন অনুযায়ী উপলব্ধ হয়। নিম্নের চিত্রে প্রদর্শিত ছকে বিস্তারিত দেখুন।

টিউনটি পড়ার জন্য সকল অনেক অনেক ধন্যবাদ। সকলের সুস্থতা কামনা করছি। আপনাদের ভাল লাগা মন্দ লাগা কমেন্ট করে জানাবেন।