সফ্টওয়্যারটিতে একটি ক্যান প্রোটোকল স্তর প্রয়োগ করা হচ্ছে


12

পটভূমি

আমি এমন একটি প্রকল্প বিকাশ করছি যার জন্য পরিমিত মাইক্রোকন্ট্রোলার চশমা প্রয়োজন:

  • 8 12-বিট, 10kHz এডিসি
  • র‌্যামের 1 কেবি
  • 48-কিউএফএন বা আরও ছোট পায়ের ছাপ
  • 20 কেবিপিএস ডেইজি-চেইনএবল শব্দ-প্রতিরোধী এবং ত্রুটি-সংশোধনকারী যোগাযোগ প্রোটোকল

সিগন্যাল প্রসেসিংয়ের প্রয়োজনীয়তাগুলি মোটামুটি কম, এবং বেশিরভাগ সিস্টেমে মাস্টার প্রসেসরে রফতানি করা যায়। প্রথম তিনটি চশমাগুলি সহজেই মিলিত হয় এবং পরিমাণে $ 2 এরও কম করা যায়। তবে যোগাযোগটি খুব বৈদ্যুতিকভাবে শোরগোলের পরিবেশে ঘটবে, তাই লিন এবং আই 2 সি এর মতো শব্দ-দুর্বল নেটওয়ার্কগুলি বাইরে are লিনের বিরুদ্ধে অতিরিক্ত যুক্তি হ'ল আমি পুরো জিনিসটি 5 ভি বা 3.3 ভি তে চালাতে চাই এবং লিন ট্রান্সসিভারগুলিতে 12 ভি প্রয়োজন, এবং তাই সেন্সর বোর্ডে অতিরিক্ত নিয়ামক বা তারের প্রয়োজন। আমি প্রথমে এই কাজের জন্য ক্যানকে বেছে নিয়েছিলাম। যাইহোক, কন্ট্রোলাররা যথেষ্ট ব্যয় যোগ করতে পারে, এবং আমি আগ্রহী যদি এটি সফ্টওয়্যারটিতে করা যায়।

শারীরিক স্তর পারেন

সিএন স্পেসিফিকেশন ওএসআই নেটওয়ার্ক রেফারেন্স মডেলের ডেটা লিঙ্ক এবং ফিজিকাল স্তরগুলি সংজ্ঞায়িত করে। অনেক সস্তা 8-পিন আইসি, যেমন এনএক্সপি টিজেএ 1040/50 , ম্যাক্সিম এমএক্স 3058/59 , মাইক্রোচিপ এমসিপি 2551 , এবং টিআই এসএন 65 এইচভিডি 1050 শারীরিক স্তর প্রয়োগের জন্য বিদ্যমান। ডি / এ রূপান্তরকারী বা অপ-এম্পস দিয়ে শারীরিক স্তর প্রয়োগ করা কঠিন, যদি অসম্ভব না হয়, তাই এই আইসিগুলির মূল্য $ 1 বা তার চেয়ে বেশি মূল্যবান।

তথ্য লিঙ্ক / প্রোটোকল স্তর

ডেটা লিঙ্ক স্তরের জন্য, কিছু মাইক্রোকন্ট্রোলারগুলি সিএন প্রোটোকল মডিউলগুলি বেসিক ইউআরটি, আই 2 সি এবং এসপিআই যোগাযোগ স্তরগুলিতে যুক্ত করে। তবে এগুলি বেসিক চিপগুলির তুলনায় উল্লেখযোগ্যভাবে বেশি ব্যয়বহুল।

প্রোটোকল মডিউলগুলির ক্যান অনুসন্ধান করতে পারে

এই দাবী প্রমাণ করার জন্য, ক্যান এবং নন-ক্যান সংস্করণগুলিতে কয়েকটি জনপ্রিয় মাইক্রো এখানে থেকে:

  • এটিমেগা 16 - এটিএমইজিএ 16 এম 1 (সিএএন সহ): $ 3.87, এটিএমইজিএ 168 এ (কোনও ক্যান নেই): $ 3.23
  • dsPIC - DSPIC33FJ64MC802 (CAN সহ): $ 6.14, DSPIC33FJ64GP202 (কোনও CAN নেই): $ 5.48
  • PIC18 - PIC18F2480 (CAN সহ): $ 6.80, PIC18F24J10 (কোনও CAN নেই): $ 2.10
  • কর্টেক্স-এম 3 - STM32F103C4T6A (CAN সহ): $ 6.50, STM32F100C4T6B (কোনও ক্যান নেই): $ 2.73

ন্যায়সঙ্গত হওয়ার জন্য, আমি কেবল মাইক্রোকন্ট্রোলারদেরকে সমতুল্য মেমরি আকারের সাথে তুলনা করি, তবে নন-ক্যান সংস্করণগুলির অনেকগুলিই কম মেমরির আকারের জন্য কম পাওয়া যায়। মাইক্রোচিপ এমসিপি 2515 এর মতো বাহ্যিক ক্যান কন্ট্রোলাররা প্রায় 2 ডলার, সুতরাং আপনার যদি বিকল্প থাকে তবে মাইক্রোকন্ট্রোলারের সাথে একীভূত করতে পারলে এটি স্পষ্টতই বেশি ব্যয়বহুল।

মজার বিষয় হল, এটিমেগা অংশটি ডিজিগির ইনভেন্টরির সবচেয়ে সস্তা স্যান-সজ্জিত অংশ।

প্রোটোকল স্তরের ক্যান কাজ

DsPIC মাইক্রোকন্ট্রোলারগুলিতে পাওয়া ক্যান মডিউলটি নিম্নলিখিতটি করে:

ক্যান বাস মডিউলটিতে একটি প্রোটোকল ইঞ্জিন এবং বার্তা বাফারিং / নিয়ন্ত্রণ থাকে। ক্যান প্রোটোকল ইঞ্জিন ক্যান বাসে বার্তা গ্রহণ ও প্রেরণের জন্য সমস্ত ফাংশন পরিচালনা করে। প্রথমে উপযুক্ত ডেটা রেজিস্টারগুলি লোড করে বার্তা প্রেরণ করা হয়। যথাযথ রেজিস্টারগুলি পড়ে স্ট্যাটাস এবং ত্রুটিগুলি পরীক্ষা করা যায়। সিএন বাসে সনাক্ত করা যে কোনও বার্তা ত্রুটিগুলির জন্য চেক করা হয় এবং তারপরে এটি কোনও রেজিস্ট্রি রেজিস্টারে প্রাপ্ত হওয়া উচিত এবং সংরক্ষণ করা উচিত কিনা তা দেখার জন্য ফিল্টারগুলির সাথে মিলে যায়।

এটি সফ্টওয়্যারে মোটামুটিভাবে কার্যক্ষম বলে মনে হচ্ছে।

প্রশ্নটি

একটি সফ্টওয়্যার প্রোটোকল স্তর কেবল একটি সস্তা ব্যয় UAR- সজ্জিত মাইক্রোকন্ট্রোলার এবং একটি ট্র্যানসিভার দিয়ে সিএন স্পেসিফিকেশন প্রয়োগ করতে ব্যবহার করা যেতে পারে? যদি তা হয়, তবে কোনও মুক্ত উত্স বাস্তবায়ন কি বিদ্যমান?

বিকল্পভাবে, কাস্টম প্রোটোকল বাস্তবায়নের জন্য কি ইউএনআরটির সাথে ট্রান্সসিভারগুলি ব্যবহার করা যেতে পারে? আমি একক-মাস্টার টপোলজি দিয়ে ঠিক আছি; আমি বুঝতে পারি যে একটি কাস্টম প্রোটোকলে সালিসি সঠিকভাবে পাওয়া শক্ত হতে পারে।


ক্যানটি 12 ভিও, যেহেতু এটি মোটরগাড়ি ব্যবহারের জন্য তৈরি হয়েছিল।
কেনে

@ কেনি - উপরের ট্রান্সসিভারগুলিতে ব্যবহৃত ভোল্টেজের মাত্রা 5V।
কেভিন ভার্মির

আপনি যদি এসটিএম 32 এফ সিরিজটি বিবেচনা করতে চলেছেন তবে আমি কি এই এনএক্সপি অংশটিও সুপারিশ করতে পারি? এটি একটি কর্টেক্স-এম0 কোর। Search.digikey.com/scriptts/DkS Search/…
জন এল

@ জোন - এগুলি অগত্যা বিবেচনায় ছিল না, এবং এই ব্যবহারের ক্ষেত্রে একটি এম 0 আদর্শ হবে - তবে, নিউভোটন এম052 ল্যান অংশগুলি বিবেচনা করুন এছাড়াও কর্টেক্স-এম 0 এবং পরিমাণের প্রায় অর্ধেক দাম ($ 1.21 বনাম $ 2.35), তবে ক্যান মডিউল নেই। এই ধরনের দামের পার্থক্যটি আমার অনুপ্রেরণা।
কেভিন ভার্মির

আপনি অপারেশনাল রেটিংও বিবেচনা করতে চাইতে পারেন। ক্যান সমর্থন সহ বেশিরভাগ অংশগুলি শিল্প বা অটোমোটিভ বনাম বাণিজ্যিক নন বিএএন ভেরিয়েন্টগুলির জন্য হতে পারে।
চিহ্নিত করুন

উত্তর:


11

আমি মনে করি কেবল ফার্মওয়্যারগুলিতে ক্যান প্রোটোকল বাস্তবায়ন করা কঠিন হবে এবং সঠিক হতে কিছুটা সময় নেবে। এটি একটি ভাল ধারণা নয়।

তবে আপনার দাম বেশি। আমি কেবল যাচাই করেছিলাম এবং কিউএফএন প্যাকেজে একটি ডিএসপিক 33FJ64GP802 1000 পিসের জন্য মাইক্রো চিপড্রাইভারে 3.68 ডলারে বিক্রয় করে। বাস্তব উত্পাদনের পরিমাণের জন্য দাম কম হবে।

হার্ডওয়্যার CAN পেরিফেরিয়াল আপনার জন্য কিছু বাস্তব কাজ করে এবং এর জন্য দাম বৃদ্ধি আপনি যা দাবি করছেন তার কাছে কোথাও নেই।

যোগ করা হয়েছে:

যেহেতু আপনি ফার্মওয়্যার রুটটি চেষ্টা করার জন্য দৃ determined় প্রতিজ্ঞ বলে মনে হচ্ছে, তাই এখানে কিছু স্পষ্ট সমস্যা যা মনে পড়ছে। সম্ভবত অন্যান্য সমস্যাগুলি এখনও আমার কাছে আসেনি will

আপনি 20 kbit / s এ CAN করতে চান। এটি ক্যানের জন্য খুব ধীর হার, যা কমপক্ষে 10s মিটারের জন্য 1Mbit / s পর্যন্ত যায়। আপনাকে একটি ডেটাপয়েন্ট দেওয়ার জন্য, এনএমইএ 2000 শিপবোর্ড সিগন্যালিং স্ট্যান্ডার্ডটি 200 কুইবিট / সেউন্ডে CAN এ স্তরিত করা হয়েছে, এবং এর অর্থ একটি বড় জাহাজের এক প্রান্ত থেকে অন্য প্রান্তে যেতে হবে।

আপনি ভাবতে পারেন যে আপনার যা যা প্রয়োজন তা হ'ল বিট প্রতি একটি বাধা এবং আপনি এই বাধাতে আপনার যা কিছু প্রয়োজন তা করতে পারেন। এটি কাজ করবে না কারণ প্রতিটি ক্যান বিট সময়ে বেশ কয়েকটি জিনিস চলছে। সাব-বিট স্তরে বিশেষত দুটি জিনিস করা দরকার। প্রথমটি কোনও সংঘর্ষ সনাক্ত করছে এবং দ্বিতীয়টি ফ্লাইতে বিট রেট সামঞ্জস্য করছে।

ক্যান বাসে দুটি সিগন্যালিং স্টেট রয়েছে, রিসেসিভ এবং প্রভাবশালী। যখন কিছুই বাস চালাচ্ছে না তখন অবসন্ন হয়। উভয় লাইন মোট 60 by দ্বারা টানা হয় Ω এমসিপি 2551 এর মতো সাধারণ চিপগুলি দ্বারা কার্যকর হিসাবে একটি সাধারণ সিএএন বাসের উভয় প্রান্তে 120 Ω টার্মিনেটর থাকা উচিত, সুতরাং মোট 60 differen দুটি ডিফারেনশান লাইন একসাথে প্যাসিভ করে। প্রভাবশালী রাষ্ট্রটি যখন উভয় লাইন সক্রিয়ভাবে আলাদা হয়ে যায় তখন কোথাও কোথাও মন্দ অবস্থা থেকে 900 মিভিভি প্রায় দূরে থাকে যদি আমি সঠিক মনে করি। মূলত, এটি একটি ওপেন কালেক্টর বাসের মতো, এটি একটি ডিফারেন্সিয়াল জোড় দিয়ে প্রয়োগ করা বাদে। CANH-CANL <900mV এবং CANH-CANL> 900mV এ প্রভাবশালী হলে বাসটি অবিরাম অবস্থায় রয়েছে। প্রভাবশালী রাষ্ট্র 0 এবং সংবেদনশীল 1 সংকেত দেয়।

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

ক্যান বাস আরবিট্রেশন বিধিগুলির অর্থ হল যে আপনি যে 1 টি প্রেরণ করছেন তা প্রতি 1 টি হিসাবে প্রেরণ করা প্রতিটি বিটের মধ্য দিয়ে আপনাকে বাসের পার্টওয়েতে পর্যবেক্ষণ করতে হবে। এই চেকটি সাধারণত বিটটির প্রায় 2/3 পথের মধ্যে করা হয় , এবং সিএন বাস দৈর্ঘ্যের মূল সীমাবদ্ধতা। বিটের হার যত ধীরে ধীরে, বাসের এক প্রান্ত থেকে অন্য প্রান্তে সবচেয়ে খারাপ পরিস্থিতি ছড়িয়ে পড়ার জন্য আরও বেশি সময় রয়েছে এবং সেই কারণে বাসটি আর দীর্ঘ হতে পারে। এই চেক অবশ্যই করতে হবে প্রত্যেক বিট যেখানে আপনি মনে হয় তুমি বাস মালিক এবং 1 বিট পাঠাচ্ছেন।

আরেকটি সমস্যা হ'ল বিট রেট সমন্বয়। বাসে থাকা সমস্ত নোড অবশ্যই বিএস হারের সাথে একমত হতে হবে, আরএস -৩৩২ এর চেয়ে বেশি ঘনিষ্ঠভাবে। ছোট ঘড়ির পার্থক্যগুলি তাত্পর্যপূর্ণ ত্রুটিতে জমে যাওয়া রোধ করতে প্রতিটি নোডকে কিছুটা করতে সক্ষম হতে হবে যা এর নামমাত্রের চেয়ে কিছুটা দীর্ঘ বা খাটো। হার্ডওয়্যারে, বিট রেটের চেয়ে প্রায় 9x থেকে 20x এর কাছাকাছি কোথাও একটি ঘড়ি চালিয়ে এটি প্রয়োগ করা হয়। এই দ্রুত ঘড়ির চক্রকে টাইম কোয়ান্টা বলা হয়। নতুন বিটগুলির শুরুটি আপনার যেখানে হওয়া উচিত বলে মনে করছেন সে সম্পর্কে শ্রদ্ধার সাথে ঘুরে বেড়াচ্ছে তা সনাক্ত করার উপায় রয়েছে। হার্ডওয়্যার বাস্তবায়নগুলি পরে পুনরায় সিঙ্ক করার জন্য এক সময়ের কোয়ান্টা যুক্ত বা এড়িয়ে যায়। আপনার প্রত্যাশিত বিট সময় এবং প্রকৃত পরিমাপক বিট সময়ের মধ্যে পর্যায়ে আপনি যখন ছোট ডিফারেন্সগুলিতে সামঞ্জস্য করতে পারেন ততক্ষণ আপনি এটিকে প্রয়োগ করতে পারেন other

যেভাবেই হোক, এই প্রক্রিয়াগুলির জন্য কিছু সময় বিভিন্ন সময়ে বিভিন্ন জিনিস করা প্রয়োজন। এই ধরণের টাইমিং ফার্মওয়্যারের ক্ষেত্রে খুব জটিল হয়ে উঠবে বা খুব ধীরে ধীরে বাস চালানো দরকার require ধরা যাক আপনি 20 কেবিট / সেকেন্ডে ফার্মওয়ারে একটি টাইম কোয়ান্টা সিস্টেমটি প্রয়োগ করেছেন। বিট প্রতি সর্বনিম্ন 9 সময় কোয়ান্টায়, এতে 180 কিলাহার্জ বিঘ্নিত হওয়া প্রয়োজন। এটি অবশ্যই একটি ডিএসপিক 33 এফ এর মতো কিছু দিয়ে সম্ভব, তবে প্রসেসরের একটি উল্লেখযোগ্য ভগ্নাংশ খেয়ে ফেলবে। সর্বোচ্চ 40 মেগাহার্টজ নির্দেশের হারে, আপনি বাধা প্রতি 222 টি নির্দেশ চক্র পান cy সমস্ত চেকিং করতে এত বেশি সময় নেওয়া উচিত নয়, তবে সম্ভবত 50-100 চক্র, যার অর্থ 25-50% প্রসেসর CAN এর জন্য ব্যবহৃত হবে এবং এটি চলমান যাবতীয় সবকিছুর আধিক্য করতে হবে। এই প্রসেসরগুলি প্রায়শই চলমান অনেকগুলি অ্যাপ্লিকেশনকে বাধা দেয়, একটি স্যুইচিং পাওয়ার সরবরাহ বা মোটর চালকের নাড়ি নিয়ন্ত্রণের মতো। প্রতিটি অন্যান্য বিঘ্নের উপর 50-100 চক্রের বিলম্বিতা হ'ল আমি এই জাতীয় চিপগুলি দিয়ে অনেকগুলি কাজ করার সম্পূর্ণ শো স্টপার হয়ে যাব।

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

তারপরে রয়েছে সামনে ফ্রন্ট ইঞ্জিনিয়ারিং। পেরি পেরিফেরাল কেবল কাজ করে। আপনার মন্তব্য থেকে দেখে মনে হচ্ছে এই পেরিফেরিয়ালের বর্ধমান ব্যয় $ .56। এটা আমার কাছে দর কষাকষির মতো মনে হয়। আপনি যদি খুব উচ্চ ভলিউম পণ্য না পেয়ে থাকেন তবে আপনি কেবলমাত্র ফার্মওয়্যারটিতে সিএএন প্রয়োগ করতে যে পরিমাণ সময় ব্যয় করতে পারেন তা যথেষ্ট পরিমাণে ফিরে আসার উপায় নেই। যদি আপনার ভলিউমগুলি উচ্চতর হয়, তবে আমরা যে দামগুলি উল্লেখ করেছি সেগুলি যে কোনও উপায়ে বাস্তবসম্মত নয়, এবং সিএন হার্ডওয়্যার যুক্ত করার পার্থক্যটি কম হবে।

আমি আসলে এই বোধগম্যতা দেখতে পাচ্ছি না।


আমি আপনার মতামতকে মূল্যবান বলি, তবে আমি কেন আগ্রহী যে কেন কেউ অসুবিধাগুলি ঘিরে কাজ করার চেষ্টা করেনি - প্রতিটি প্রকল্পে এই সমস্যাগুলি হবে! আমি চেষ্টা করে শেষ করে দিলে কীভাবে সক্রিয় হয় তা আমি আপনাকে জানাব।
কেভিন ভার্মির

1000 এর পরিমাণে, আমি মাইক্রোচিপডাইরেক্ট থেকে dsPIC33FJ64GP202 এর জন্য 12 3.12 এর দাম খুঁজে পাই - মোট মানের পার্থক্য $ 560! এটি কমপক্ষে চেষ্টা করার মতো মূল্য। আমি প্রতিটির জন্য দামগুলি উদ্ধৃত করছিলাম কারণ রিলিং, স্ট্যান্ডার্ড প্যাকেজ পরিমাণ ইত্যাদি সম্পর্কে চিন্তা না করে পৃথক টুকরোগুলির জন্য নম্বর পাওয়া সহজ ছিল
কেভিন ভার্মির

2
কেভিন, কম পরিমাণের দামগুলি সর্বদা উচ্চ পরিমাণের দামের সাথে সমানুপাতিক হয় না। আমি জানি না যে আপনি এইগুলি তৈরির জন্য কত পরিকল্পনা করছেন তবে ফার্মওয়্যারটিতে CAN করার জন্য ইঞ্জিনিয়ারিংয়ের জন্য $ 560 প্রদান করতে শুরু করবে না। আপনার মুখোমুখি হওয়া কিছু অসুবিধা সম্পর্কে আমি উত্তর দিতে পারি।
অলিন ল্যাথ্রপ

ডব্লিউটিএফ !? আমি আমার উত্তরে সবেমাত্র কিছু জিনিস যুক্ত করেছি এবং বেশিরভাগ অনুচ্ছেদে বিরতি চলে গেছে। আমি যে সম্পাদনাটি টাইপ করছিলাম তাতে অবশ্যই ফাঁকা রেখা ছিল
অলিন ল্যাথ্রপ

1
উত্তর হ্যাঁ আপনি করতে পারেন তবে আমি এখানে ওলিনের সাথে পুরোপুরি একমত। আমি আসলে এই ক্ষেত্রে পুরো সময় কাজ। আমি dsPIC33FJ256 চিপ ব্যবহার করি। বিট-ব্যাং পদ্ধতির মাধ্যমে জিনিসগুলি লেখার সময় ব্যয় করার সময়টি আপনার পক্ষে হার্ডওয়্যারটি করার এবং আপনার চাকাটিকে পুনরায় উদ্ভাবন করার ব্যয়টি কার্যকর করে। আপনি হার্ডওয়্যারে যা কিছু করছেন তা সাবধানতার সাথে পরিকল্পনা করার পরিকল্পনা করা দরকার তা উল্লেখ করার দরকার নেই। এছাড়াও, আমি অবাক হয়েছি আপনি যদি অন্য উচ্চ স্তরের প্রোটোকলগুলি যেমন আইএসও 14229 বা ওএসইকে / অটোসার নেটওয়ার্কম্যানেজমেন্টের প্রয়োজনের দিকে তাকিয়ে থাকেন তবে?
এরিক এম

2

আমরা PIC18F25K80 ব্যবহার করি । যদিও এর কোনও ডিএসপি নেই, এটি পরিমাণে 2 ডলার। এটি আপনি যে PIC18F2480 উল্লেখ করেছেন তার প্রায় প্রত্যক্ষ বিকল্প আমরা সিসিএস সংকলক এবং তাদের সফ্টওয়্যার স্ট্যাক ব্যবহার করতে পারি ক্যানের জন্য যা সম্ভবত মাইক্রোচিপ থেকে পোর্ট করা হয়েছে। এটি আমার প্রয়োজন এবং চেষ্টা করা সমস্ত কিছুতে ভাল কাজ করে।


ইসান অনুসন্ধান করেনি। সিলি মাইক্রোচিপের নাম, তবে পরের বার আরও পড়তে হবে আমাকে! আমি যেমন বলেছি, আমার সিগন্যাল প্রসেসিংয়ের চাহিদা কম, তাই আমার মনে হয় না যে আমাকে আসল ডিএসপি দরকার need
কেভিন ভার্মির

2

যদি আমি এই অধিকারটি পড়ছি তবে মনে হচ্ছে আপনি কেবলমাত্র একটি ইউআআআআটি এবং কিছু চালাক ফার্মওয়্যার ব্যবহার করে কার্যকারিতা বিট-বাশ করতে চান। আমাকে বিশ্বাস করুন, এটি কখনই কাজ করবে না - আমি CAN বা CANopen এর জটিলতার উপর একটি ভাল পাঠ্য পড়ার পরামর্শ দিই। এই রুটে নেমে আপনি যে কোনও ব্যয় সঞ্চয় সন্ধান করছেন তা আপনি মুছে ফেলবেন।

আমি হয় একটি ক্যান মডিউল সহ একটি মাইক্রোকন্ট্রোলার ব্যবহার করব এবং অতিরিক্ত $ 2 পার করবো, বা আপনি কোনও আলাদা প্রোটোকল যা কোনও ইউআআআরটির সাথে সামঞ্জস্যপূর্ণ, যেমন আরএস -445 এর উপরে মোডবাসের কথা ভেবেছেন ?


আপনি এটা ঠিক পড়ছেন। আমি CAN তে ভেক্টর প্রশিক্ষণের পুস্তিকাটি পুরোপুরি পড়েছি। দেখে মনে হচ্ছে প্রতিটি বার্তায় সিআরসি-র জন্য কিছুটা প্রিপ্রোসেসিংয়ের প্রয়োজন হবে, তবে বাকী প্যাকেটটি একই হওয়া উচিত এবং আমার কেবল একটি সংঘাতের জন্য প্রাপ্ত লাইনটি পরীক্ষা করা দরকার। লোকেরা যতটা শক্তিশালী তা তৈরি করা সত্য বলে মনে হচ্ছে না, তবে আমি অবশ্যই আপনার পরামর্শ বিবেচনায় নেব।
কেভিন ভার্মির

যদিও আমি Modbus এর মত আরএস ৪85৫ আইডিয়াটির চেয়ে বেশি করি। দেখা যায় যে এই ট্রান্সসিভারগুলির বেশিরভাগই 5 ভি সরবরাহ করে; আমি এই ধারণাটিতে ছিলাম যে এটির জন্য আরএস 232 এর মতো একটি +/- ইনপুট ভোল্টেজ দরকার। এটি খতিয়ে দেখতে হবে।
কেভিন ভার্মির

বিট ব্যাংিং অবশ্যই কাজ করবে! এটি ওলিনের মতো উপরে তুচ্ছ নয়, উল্লেখ করেছেন তবে করা যায় can আমি ব্যক্তিগতভাবে এটি একটি PIC18F সিরিজ এবং একটি dsPIC33 সিরিজ মাইক্রো উভয় এড়িয়ে গিয়েছি। আপনি যদি সত্যিই এটি দেখতে চান তবে আমি পিক 18 এফ উত্সটি আপলোড করতে পারি। আমি যাইহোক, dsPIC উত্সটি দিতে পারি না কারণ এটি আমি যে কোনও বাণিজ্যিক প্রকল্পে কাজ করছি তার অংশ। উভয় ক্ষেত্রেই আমরা এমসিপি 2551 ব্যবহার করি এবং আমার কাছে লিন কোডও রয়েছে। লিন প্রোটোকল স্তরে কিছুটা সহজ তবে লিনের সময়সূচি প্রয়োগ করা কিছুটা শক্ত ...
এরিক এম

1
@ এরিকম - বিট রেটটি কী ছিল এবং আপনি কি সফ্টওয়্যারটিতে পুরো সিএন স্পেকটি প্রয়োগ করতে পেরেছিলেন? আমি চাই ভালবাসেন এই জন্য PIC18F কোড দেখতে।
রকেটম্যাগনেট

হ্যাঁ, এতদূর পর্যন্ত সম্পূর্ণ ক্যান স্পেক প্রয়োগ করা হয়েছে যাতে অনেকগুলি দিকের যত্ন নেওয়ার জন্য ডিএসপিকের ইসান মডিউলটি নকল করতে না পারে। PIC18 বাস্তবায়নে আমি বাসটিকে পুরো স্পেক এবং পরে বিট-ব্যান্ড করেছিলাম এবং এই কোডটি জিপিআইও লাইন ব্যবহারের জন্য একটি ডিএসপিকের উপর কাজ করবে। আমি কোডের লিঙ্ক সহ কয়েক দিনের মধ্যে আপডেট করব।
এরিক এম

0

আমি একটি পিআইসি µ সি-তে বিট-ব্যাং ক্যান-প্রোটোকল সম্পর্কেও ভাবছি, তাই দয়া করে এরিকএম দয়া করে, আপনি যদি সত্যিই এটি করেন তবে দয়া করে উত্তর দিন এবং কমপক্ষে বলুন, পিক 18 এফ বা ডিএসপিকের কী-মূল ফ্রিকোয়েন্সি পেয়েছে তাতে কোন বিটরেট রয়েছে। ধন্যবাদ!

সাধারণভাবে: আরএস ৪৮৫ প্রাথমিক জিজ্ঞাসা করা সমস্যার সমাধান হতে পারে তবে সিএন- (বা এমনকি ফ্লেক্সরে) -টান ট্রান্সসিভারগুলি নন-ফুল-ডুপ্লেক্স ইউআরটি যোগাযোগের (পয়েন্ট ২ পয়েন্ট) সমস্ত প্রোটোকল হিসাবে ব্যবহার করা সম্ভব হবে এনআরজেড-কোডিং ব্যবহার করুন।

তবে ইউআরটি / ভি 24 / আরএস 232-তে সম্পূর্ণ দ্বৈতটি বেশিরভাগই বিশদ সম্পর্কে চিন্তা না করেই ব্যবহৃত হয়, তাই আপনার অ্যাপ্লিকেশনটির সুপারলুপ বা স্টেটম্যাচিনে আপনাকে কিছুটা মস্তিষ্ক লাগাতে হবে ...

তবে ফিরে CAN-bitbanging: আমি অনেক বছর ধরে CAN এর সাথে কাজ করছি এবং কখনই বিটব্যাংিং বাস্তবায়ন দেখিনি, তবে যতদূর আমি ভাবতে পারি, এটি বিএস-টাইমিংস টিপি 100 কেবিট যেমন আধুনিক µ সি যেমন ডিএসপি বা এআরএম ইত্যাদির জন্য কাজ করা উচিত work (৮০ মেগাহার্টজ বা তারপরে কোরের সাথে ...)

কমপক্ষে যদি কেবল পঠন-ব্যাককেই বিবেচনা করা হয় ... বিট-কাঠামো প্রস্তুত করতে কিছুটা ওভারহেড প্রেরণ করা হবে যাতে 100% বাসলোড না পারা যায়, তবে in৫% এরও বেশি কিছু বিরল ...


2
বৈদ্যুতিক ইঞ্জিনিয়ারিং স্ট্যাক এক্সচেঞ্জে স্বাগতম। আপনার উত্তরের প্রথম অংশটি আসলেই কোনও উত্তর নয়, তাই আপনি যদি চান তবে আপনি একটি নতুন প্রশ্ন জিজ্ঞাসা করছেন। ওএন বিশেষত ক্যান প্রোটোকলের সফ্টওয়্যার বাস্তবায়ন সম্পর্কে জিজ্ঞাসা করেছিল এবং আপনার উত্তরটি সেই প্রশ্নের সমাধান না করেই ঘুরে বেড়াচ্ছে বলে মনে হচ্ছে; দয়া করে প্রশ্নের বিষয়টিতে থাকার চেষ্টা করুন।
জো হাস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.