
অনেক গাড়ির সাবসিস্টেম একে অপরের সাথে এবং বিভিন্ন বাস টপোলজির মাধ্যমে ইন-ভেহিক্যাল ইনফোটেইনমেন্ট (IVI) সিস্টেমের সাথে আন্তঃসংযোগ করে। সঠিক বাসের ধরন এবং প্রোটোকল নির্মাতাদের মধ্যে ব্যাপকভাবে পরিবর্তিত হয় (এবং একই ব্র্যান্ডের বিভিন্ন গাড়ির মডেলের মধ্যেও); উদাহরণগুলির মধ্যে রয়েছে কন্ট্রোলার এরিয়া নেটওয়ার্ক (CAN) বাস, লোকাল ইন্টারকানেক্ট নেটওয়ার্ক (LIN) বাস, মিডিয়া ওরিয়েন্টেড সিস্টেম ট্রান্সপোর্ট (MOST), পাশাপাশি অটোমোটিভ-গ্রেড ইথারনেট এবং TCP/IP নেটওয়ার্ক যেমন BroadR-Reach।
অ্যান্ড্রয়েড অটোমোটিভ হার্ডওয়্যার অ্যাবস্ট্রাকশন লেয়ার (HAL) ফিজিক্যাল ট্রান্সপোর্ট লেয়ার নির্বিশেষে অ্যান্ড্রয়েড ফ্রেমওয়ার্কে একটি সামঞ্জস্যপূর্ণ ইন্টারফেস প্রদান করে। এই গাড়ির HAL হল Android Automotive বাস্তবায়নের উন্নয়নের ইন্টারফেস।
সিস্টেম ইন্টিগ্রেটররা প্রযুক্তি-নির্দিষ্ট নেটওয়ার্ক ইন্টারফেসের (যেমন CAN বাস) সাথে ফাংশন-নির্দিষ্ট প্ল্যাটফর্ম HAL ইন্টারফেস (যেমন HVAC) সংযুক্ত করে একটি গাড়ির HAL মডিউল বাস্তবায়ন করতে পারে। সাধারণ বাস্তবায়নের মধ্যে থাকতে পারে একটি ডেডিকেটেড মাইক্রোকন্ট্রোলার ইউনিট (MCU) যা CAN বাস অ্যাক্সেসের জন্য একটি মালিকানাধীন রিয়েল-টাইম অপারেটিং সিস্টেম (RTOS) চালায়, যা Android Automotive চালিত CPU-তে সিরিয়াল লিঙ্কের মাধ্যমে সংযুক্ত হতে পারে। একটি ডেডিকেটেড MCU এর পরিবর্তে, এটি একটি ভার্চুয়ালাইজড CPU হিসাবে বাস অ্যাক্সেস বাস্তবায়ন করাও সম্ভব হতে পারে। হার্ডওয়্যারের জন্য উপযুক্ত আর্কিটেকচারটি বেছে নেওয়া প্রতিটি অংশীদারের উপর নির্ভর করে যতক্ষণ পর্যন্ত বাস্তবায়নটি গাড়ির HAL-এর জন্য ইন্টারফেসের প্রয়োজনীয়তা পূরণ করে।
স্থাপত্য
গাড়ির HAL হল গাড়ি এবং যানবাহন নেটওয়ার্ক পরিষেবার মধ্যে ইন্টারফেস সংজ্ঞা:

চিত্র 1 । যানবাহন এইচএএল এবং অ্যান্ড্রয়েড অটোমোটিভ আর্কিটেকচার
- গাড়ী API ।
CarSensorManager
সহ API গুলি রয়েছে৷ সমর্থিত API সম্পর্কে বিশদ বিবরণের জন্য,/platform/packages/services/Car/car-lib
দেখুন। - কারসার্ভিস ।
/platform/packages/services/Car/
এ অবস্থিত। - যানবাহন HAL । গাড়ির বৈশিষ্ট্যগুলিকে সংজ্ঞায়িত করে এমন ইন্টারফেস OEMগুলি প্রয়োগ করতে পারে৷ প্রপার্টি মেটাডেটা রয়েছে (উদাহরণস্বরূপ, গাড়ির সম্পত্তি একটি int কিনা এবং কোন পরিবর্তন মোড অনুমোদিত)।
hardware/libhardware/include/hardware/vehicle.h
এ অবস্থিত। একটি মৌলিক রেফারেন্স বাস্তবায়নের জন্য,hardware/libhardware/modules/vehicle/
পড়ুন।
আরো বিস্তারিত জানার জন্য, যানবাহনের বৈশিষ্ট্য দেখুন।
নিরাপত্তা
ডেটা অ্যাক্সেস করার সময় গাড়ি HAL এই স্তরের নিরাপত্তা সমর্থন করে:
- অনুমতি সহ অ্যাপে অ্যাক্সেসযোগ্য (গাড়ি পরিষেবার মাধ্যমে)।
- অনুমতি ছাড়া অ্যাক্সেসযোগ্য (গাড়ি পরিষেবার মাধ্যমে)।
সেলিনাক্স অ্যাক্সেস সুরক্ষা সহ যানবাহন নেটওয়ার্ক সহ কেবলমাত্র নির্বাচিত সিস্টেম উপাদানগুলিতে যানবাহনের বৈশিষ্ট্যগুলিতে সরাসরি অ্যাক্সেস অনুমোদিত। বেশিরভাগ অ্যাপ্লিকেশনগুলি গাড়ি পরিষেবা দ্বারা অতিরিক্ত গেটকিপিংয়ের মাধ্যমে যায় (উদাহরণস্বরূপ, শুধুমাত্র সিস্টেম অ্যাপ্লিকেশনগুলি HVAC নিয়ন্ত্রণ করতে পারে কারণ এটির জন্য শুধুমাত্র সিস্টেম অ্যাপগুলির জন্য সিস্টেমের অনুমতির প্রয়োজন হয়)।
,
অনেক গাড়ির সাবসিস্টেম একে অপরের সাথে এবং বিভিন্ন বাস টপোলজির মাধ্যমে ইন-ভেহিক্যাল ইনফোটেইনমেন্ট (IVI) সিস্টেমের সাথে আন্তঃসংযোগ করে। সঠিক বাসের ধরন এবং প্রোটোকল নির্মাতাদের মধ্যে ব্যাপকভাবে পরিবর্তিত হয় (এবং একই ব্র্যান্ডের বিভিন্ন গাড়ির মডেলের মধ্যেও); উদাহরণগুলির মধ্যে রয়েছে কন্ট্রোলার এরিয়া নেটওয়ার্ক (CAN) বাস, লোকাল ইন্টারকানেক্ট নেটওয়ার্ক (LIN) বাস, মিডিয়া ওরিয়েন্টেড সিস্টেম ট্রান্সপোর্ট (MOST), পাশাপাশি অটোমোটিভ-গ্রেড ইথারনেট এবং TCP/IP নেটওয়ার্ক যেমন BroadR-Reach।
অ্যান্ড্রয়েড অটোমোটিভ হার্ডওয়্যার অ্যাবস্ট্রাকশন লেয়ার (HAL) ফিজিক্যাল ট্রান্সপোর্ট লেয়ার নির্বিশেষে অ্যান্ড্রয়েড ফ্রেমওয়ার্কে একটি সামঞ্জস্যপূর্ণ ইন্টারফেস প্রদান করে। এই গাড়ির HAL হল Android Automotive বাস্তবায়নের উন্নয়নের ইন্টারফেস।
সিস্টেম ইন্টিগ্রেটররা প্রযুক্তি-নির্দিষ্ট নেটওয়ার্ক ইন্টারফেসের (যেমন CAN বাস) সাথে ফাংশন-নির্দিষ্ট প্ল্যাটফর্ম HAL ইন্টারফেস (যেমন HVAC) সংযুক্ত করে একটি গাড়ির HAL মডিউল বাস্তবায়ন করতে পারে। সাধারণ বাস্তবায়নের মধ্যে থাকতে পারে একটি ডেডিকেটেড মাইক্রোকন্ট্রোলার ইউনিট (MCU) যা CAN বাস অ্যাক্সেসের জন্য একটি মালিকানাধীন রিয়েল-টাইম অপারেটিং সিস্টেম (RTOS) চালায়, যা Android Automotive চালিত CPU-তে সিরিয়াল লিঙ্কের মাধ্যমে সংযুক্ত হতে পারে। একটি ডেডিকেটেড MCU এর পরিবর্তে, এটি একটি ভার্চুয়ালাইজড CPU হিসাবে বাস অ্যাক্সেস বাস্তবায়ন করাও সম্ভব হতে পারে। হার্ডওয়্যারের জন্য উপযুক্ত আর্কিটেকচারটি বেছে নেওয়া প্রতিটি অংশীদারের উপর নির্ভর করে যতক্ষণ পর্যন্ত বাস্তবায়নটি গাড়ির HAL-এর জন্য ইন্টারফেসের প্রয়োজনীয়তা পূরণ করে।
স্থাপত্য
গাড়ির HAL হল গাড়ি এবং যানবাহন নেটওয়ার্ক পরিষেবার মধ্যে ইন্টারফেস সংজ্ঞা:

চিত্র 1 । যানবাহন এইচএএল এবং অ্যান্ড্রয়েড অটোমোটিভ আর্কিটেকচার
- গাড়ী API ।
CarSensorManager
সহ API গুলি রয়েছে৷ সমর্থিত API সম্পর্কে বিশদ বিবরণের জন্য,/platform/packages/services/Car/car-lib
দেখুন। - কারসার্ভিস ।
/platform/packages/services/Car/
এ অবস্থিত। - যানবাহন HAL । গাড়ির বৈশিষ্ট্যগুলিকে সংজ্ঞায়িত করে এমন ইন্টারফেস OEMগুলি প্রয়োগ করতে পারে৷ প্রপার্টি মেটাডেটা রয়েছে (উদাহরণস্বরূপ, গাড়ির সম্পত্তি একটি int কিনা এবং কোন পরিবর্তন মোড অনুমোদিত)।
hardware/libhardware/include/hardware/vehicle.h
এ অবস্থিত। একটি মৌলিক রেফারেন্স বাস্তবায়নের জন্য,hardware/libhardware/modules/vehicle/
পড়ুন।
আরো বিস্তারিত জানার জন্য, যানবাহনের বৈশিষ্ট্য দেখুন।
নিরাপত্তা
ডেটা অ্যাক্সেস করার সময় গাড়ি HAL এই স্তরের নিরাপত্তা সমর্থন করে:
- অনুমতি সহ অ্যাপে অ্যাক্সেসযোগ্য (গাড়ি পরিষেবার মাধ্যমে)।
- অনুমতি ছাড়া অ্যাক্সেসযোগ্য (গাড়ি পরিষেবার মাধ্যমে)।
সেলিনাক্স অ্যাক্সেস সুরক্ষা সহ যানবাহন নেটওয়ার্ক সহ কেবলমাত্র নির্বাচিত সিস্টেম উপাদানগুলিতে যানবাহনের বৈশিষ্ট্যগুলিতে সরাসরি অ্যাক্সেস অনুমোদিত। বেশিরভাগ অ্যাপ্লিকেশনগুলি গাড়ি পরিষেবা দ্বারা অতিরিক্ত গেটকিপিংয়ের মাধ্যমে যায় (উদাহরণস্বরূপ, শুধুমাত্র সিস্টেম অ্যাপ্লিকেশনগুলি HVAC নিয়ন্ত্রণ করতে পারে কারণ এটির জন্য শুধুমাত্র সিস্টেম অ্যাপগুলির জন্য সিস্টেমের অনুমতির প্রয়োজন হয়)।