সুচিপত্র:

GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. সঠিক: 3 ধাপ
GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. সঠিক: 3 ধাপ

ভিডিও: GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. সঠিক: 3 ধাপ

ভিডিও: GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. সঠিক: 3 ধাপ
ভিডিও: Atlas 1PPS - GPS Disciplined Oscillator (GPSDO) for GPS Denied Networks (and more!) 2024, জুলাই
Anonim
GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. নির্ভুল।
GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. নির্ভুল।
GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. নির্ভুল।
GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. নির্ভুল।
GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. নির্ভুল।
GPSDO YT, ডিসিপ্লিনেড অসিলেটর 10Mhz রেফারেন্স ফ্রিকোয়েন্সি। কম খরচে. নির্ভুল।

*******************************************************************************

স্টপ স্টপ স্টপ স্টপ স্টপ স্টপ স্টপ স্টপ স্টপ স্টপ

এটি একটি অপ্রচলিত প্রকল্প।

পরিবর্তে আমার নতুন 2x16 এলসিডি ডিসপ্লে সংস্করণটি এখানে দেখুন:

www.instructables.com/id/GPSDO-YT-10-Mhz-L…

আমি ডকুমেন্টেশনের জন্য পুরানো সংস্করণটি এখানে রেখেছি।

*******************************************************************************

হাই বন্ধুরা, GPSDO কি? GPSDO মানে: GPS ডিসিপ্লিনেড অসিলেটর। গ্লোবাল পজিশনিং সিস্টেমের জন্য জিপিএস। সমস্ত জিপিএস উপগ্রহ সিঙ্ক্রোনাইজড পারমাণবিক ঘড়ি দিয়ে সজ্জিত। জিপিএস মডিউল বেশ কয়েকটি উপগ্রহ থেকে এই সংকেতগুলি গ্রহণ করে। এবং ত্রিভুজ দ্বারা, তিনি তার অবস্থান জানেন। কিন্তু এখানে, আমাদের আগ্রহের বিষয় হল প্রতি সেকেন্ডে পালস যা মডিউলে পাওয়া যায়। এই সুনির্দিষ্ট পালস (পারমাণবিক ঘড়ি থেকে) দিয়ে, আমরা খুব নির্ভুল অসিলেটর করতে পারি। কিসের জন্য? রেফারেন্সের জন্য, ফ্রিকোয়েন্সি কাউন্টারের ক্রমাঙ্কনের জন্য অথবা শুধু মজা করার জন্য তার ল্যাবে একটি।

তারা ইন্টারনেটে অনেক পরিকল্পিত। আমি কিছু চেষ্টা করেছি। কিছু ভাল, একটি ক্ষুদ্র 2313 সঙ্গে 5 হার্টজ খুব ধীর ছিল। কিন্তু আমার সবচেয়ে সহজ, দরকারী এবং সুবিধাজনক। এবং আমি আপনাকে.hex কোড দিচ্ছি। তারা কোন VCO এবং কোন বিভাজক। VCO সহ সার্কিট ভাল করছে। কিন্তু, এটিতে 10khz বা তার বেশি ধারাবাহিকভাবে পালস সিগন্যাল থাকতে হবে। যদি অ্যান্টেনা খুব দুর্বল হয়ে যায়, পালস অনুপস্থিত থাকে বা মোটেও নাড়ি না থাকে, তাহলে Oscillator (ocxo) নিজে থেকেই চলছে এবং VFC (ভোল্টেজ ফ্রিকোয়েন্সি কন্ট্রোল) আর সঠিক নয়। VCO মতামত রেফারেন্স ফ্রিকোয়েন্সি প্রয়োজন। যদি না হয়, এটি 1 থেকে 2 হার্টজ পর্যন্ত পরিবর্তিত হয়! এছাড়াও, সস্তা জিপিএস মডিউল এই কনফিগারেশনে কাজ করে না। VCO তৈরির জন্য আমাদের অন্তত 10khz থাকতে হবে। আমি 1000 হার্টজ দিয়ে চেষ্টা করেছি। ব্যবধান খুব বড় ছিল ফ্রিকোয়েন্সি বৈচিত্র্যময়। সুতরাং একটি ublox neo-6m দিয়ে আপনি একটি দুর্দান্ত vco gpsdo করতে পারবেন না কারণ সর্বাধিক আউটপুট ফ্রিকোয়েন্সি 1000Hz। আপনি একটি নিও -7 মি বা উপরের কিনতে হবে।

এইভাবে আমার GPSDO YT কাজ করে। নিয়ামক vfc 0 থেকে 5v সহ যেকোন OCXO- এর জন্য ভাল সমন্বয় খুঁজে পেয়েছেন। যদি আমরা জিপি সিগন্যাল খুলে ফেলি, ফ্রিকোয়েন্সি মোটেও সরবে না। যখন সংকেত পুনরায় উপস্থিত হয়, নিয়ামক তার সর্বশেষ পরিচিত ভাল মান নেয় এবং আগের মতই চালিয়ে যান। সুযোগের উপর, একটি রেফারেন্স অসিলেটর সহ। সিগন্যাল কখন হারিয়ে গেছে বা কখন ফিরে এসেছে তা আমরা বলতে পারি না। সংকেত একই।

ক্রমাঙ্কনের পরে, আপনি চাইলে অ্যান্টেনা ছাড়া জিপিএসডো ব্যবহার করতে পারেন। কয়েক মাউন্ট পরে আপনি একটি খুব সামান্য ড্রিফট হবে। কিন্তু…। কত বড়? কিছু ব্যাখ্যার সময় এসেছে।

এখানে কিছু গণিত আছে … সহজ গণিত, আমাকে অনুসরণ করুন এটি সহজ। এখন পর্যন্ত অ্যালগরিদমের 6 টি পর্যায় রয়েছে। প্রতিটি পর্বে 1 থেকে 1000 সেকেন্ডের একটি নমুনা লাগে, ভাল pwm সমন্বয় পাওয়া যায় এবং আরো নির্ভুলতার জন্য সর্বাধিক দীর্ঘ নমুনায় যান।

নির্ভুলতা = ((দ্বিতীয় x 10E6 এর সংখ্যা + 1)/দ্বিতীয়টির সংখ্যা) - 10E6

ফেজ 1, 1 সেকেন্ডের নমুনা 10, 000, 000 এর জন্য +- 1 Hz নির্ভুলতার জন্য গণনা করে

ফেজ 2, 10 সেকেন্ডের নমুনা 100, 000, 000 এর জন্য +-0.1Hz নির্ভুলতার জন্য গণনা করে

ফেজ 3, 60 সেকেন্ডের নমুনা 600, 000, 000 এর জন্য +-0.01666 Hz নির্ভুলতার জন্য গণনা করে

ফেজ 4, 200 সেকেন্ডের নমুনা 2, 000, 000, 000 এর জন্য +-0.005 Hz নির্ভুলতার জন্য গণনা

ফেজ 5, 900 সেকেন্ডের নমুনা 9, 000, 000, 000 এর জন্য +-0.001111 Hz নির্ভুলতার জন্য গণনা করে

ফেজ 6, 1000 সেকেন্ডের নমুনা 10 বিলিয়ন গণনার জন্য +-0.001 Hz নির্ভুলতার জন্য

জঘন্যতম মামলা. যখন আমরা ফেজ 6 পাবো। এই সংখ্যাটি প্রতি 1000 সেকেন্ডে কিছুটা পরিবর্তন হতে পারে বা নাও হতে পারে। কিছু সময় এটা হবে 10, 000, 000, 001 বা 9, 999, 999, 999 সুতরাং, +অথবা - 0, 000, 000.001 1000 এর জন্য বৈচিত্র্য। এখন আমাদের অবশ্যই 1 সেকেন্ডের মান জানতে হবে।

10Mhz = 1 সেকেন্ড

1 সেকেন্ডের জন্য = 10, 000, 000, 001 গণনা/1000s = 10, 000, 000.001 Hz (1 সেকেন্ডের জন্য সবচেয়ে খারাপ কেস)

10, 000, 000.001 - 10, 000, 000 = 0.001 Hz/s দ্রুত বা ধীর

0.001Hz X 60 X 60 X24 X365 = 31536 Hz/বছর

তাই মনে রাখবেন, 10Mhz হল 1 সেকেন্ড, 31536Hz X 1 / 10E6 = 0, 0031536 সেকেন্ড / বছর

গণনার জন্য আরেকটি দ্রুত পদ্ধতি। 10E9Mhz এর জন্য একটি মিস হল 1/10E9 = 1E-10

1E-10 x 60x60x24x365 = 0, 0031536 সেকেন্ড/বছর।

এটা কি আপনার জন্য যথেষ্ট সঠিক?

যাইহোক, আপনার অবশ্যই একটি ভাল OXCO থাকতে হবে। আমি ডাবল ওভেন 12v সাইনাস আউটপুট পছন্দ করি। আরো স্থিতিশীল, শান্ত এবং নির্ভুল। কিন্তু আমি সহজ 5V সঙ্গে একই ফলাফল আছে। উদাহরণস্বরূপ, একটি stp 2187 এর একটি স্থায়িত্ব স্বল্প সময় (অ্যালান বিচ্যুতি) 2x10-12 = 0.000, 000, 000, 002 Hz এর স্থায়িত্ব। একই সময়ে, যখন জিপিএস পালস পাওয়া যায়, Avr সর্বদা pwm (ফ্রিকোয়েন্সি) সংশোধন করবে। ইউসি সর্বদা গণনা করছে … সর্বদা। এর মানে হল যে প্রদর্শনে আপনি তারিখ এবং সময় দেখতে পাবেন না। যখন ইউসি 900 এর নমুনা নিচ্ছে, তখন এটি 900 সেকেন্ডের জন্য ব্যস্ত। এটা সব ঘড়ি গণনা করা আবশ্যক। সমস্যা হল ইউসি 10Mhz এ চলছে। প্রতিটি ঘড়ি গণনা করা আবশ্যক। এটি নিজেই গণনা করছে। শুধুমাত্র একটি ঘড়ি অনুপস্থিত থাকলে নমুনা ভাল হবে না এবং pwm সমন্বয় সঠিক হবে না। আমি প্রতি সেকেন্ডে ডিসপ্লে রিফ্রেশ করতে পারছি না।

যখন নমুনা নেওয়া শুরু হয়। Uc টাইমার 0 গণনা শুরু। প্রতিটি 256 ঘড়ি একটি বাধা সৃষ্টি করে। এক্স নিবন্ধন বৃদ্ধি করা হয়। যখন এটি পূর্ণ Y নিবন্ধন বৃদ্ধি করা হয় এবং X 0 তে পুনরায় সেট করা হয় এবং তাই। শেষে, তিনি শেষ একটি জিপিএস পালস, গণনা বন্ধ করা হয়। এবং এখন এবং শুধুমাত্র এখন আমি প্রদর্শন আপডেট করতে পারি এবং pwm গণনার জন্য কিছু গণিত করতে পারি।

এটা জেনে যে, সময় বা অন্য কিছু পড়ার এবং প্রদর্শন করার জন্য আমার কাছে মাত্র 25, 6 টি (বাধা দেওয়ার আগে 256 ঘড়ি) আছে। এটা অসম্ভব. একটি বাধা বাফ করা যেতে পারে, 2. নয়। আমি 1000s এর পরে সময় রিফ্রেশ করতে পারতাম … কিন্তু 15, 16 মিনিটের ব্যবধানে সময় দেখতে ব্যবহারিক হবে না। সময় জানতে আমার একটি ঘড়ি, একটি ঘড়ি, একটি সেল ফোন আছে:) আমি 10Mhz রেফারেন্স করছি। ঘড়ি নয়।

আমার আরেকটি সমস্যা ছিল, কিছু এভিআর নির্দেশের 2 টি চক্র রয়েছে। Rjmp নির্দেশ সহ। এর অর্থ হল যদি প্রথম বা শেষ জিপিএস পালস একই সাথে 2 চক্রের নির্দেশে আসে, তাহলে ইউসি একটি ঘড়ি মিস করবে। কারণ ইউসি বাধা শুরু করার আগে নির্দেশনা শেষ করবে। সুতরাং কাউন্টার শুরু হবে বা একটি চক্র পরে বন্ধ হবে। তাই আমি একটি সময় অপেক্ষা লুপ করতে পারি না … কিন্তু আসলে, আমার অন্য কোন বিকল্প নেই। আমার কোথাও লুপ করা দরকার ছিল !! আমি তাই আমি rjmp এবং nop (এই কিছুই করি না) নির্দেশ ব্যবহার করছি। Nop একটি এক চক্র নির্দেশ। আমি atmega48 এ একটি rjmp এর জন্য 400 টি নির্দেশনা রেখেছি। 2000 atmega88 এবং atmega328p ভার্সনে। তাই rjmp নির্দেশে প্রথম বা শেষ পালস আসার সম্ভাবনা কম। তবে হ্যাঁ এটি সম্ভব এবং যদি এটি ঘটে তবে এই ত্রুটিটি পরবর্তী নমুনায় সংশোধন করা হবে।

ডিসপ্লে alচ্ছিক। আপনি, ইউসি, ওসিএক্সও এবং লো-পাস ফিল্টার (রোধকারী ক্যাপাসিটর) দিয়ে সার্কিট করতে পারেন, চালু করুন এবং অপেক্ষা করুন। 1 ঘন্টা পরে আপনার একটি গ্রহণযোগ্য ফ্রিকোয়েন্সি থাকবে। কিন্তু phase ম পর্বে পৌঁছতে কয়েক ঘণ্টা সময় লাগে।

Pwm 16 বিট। 65535 ধাপ। 5v/65535 = 76, 295 uV

OCXO ভেরিয়েশন 2Hz 1V দ্বারা। 2vz এর জন্য 1v/76, 295uV = 13107 ধাপ। Pwm এর ধাপে 2/13107 = 152.59uHz

ফেজ 5, 3 দ্বারা pwm পরিবর্তন করছে, ফেজ 6 হল 2. ধাপ… কেন 3? কারণ 3 15 মিনিটের স্কেলে 0.000, 000, 000, 4 দ্বারা ফ্রিকোয়েন্সি পরিবর্তন করছে। এবং 4 আমার অ্যালগরিদমে আমার ম্যাজিক নম্বর। উদাহরণস্বরূপ, যদি প্রথম পর্যায়ে, প্রথম ফ্রিকোয়েন্সি পাওয়া যায় 10.000, 003Mhz। আমি 0, 000, 000.4 ধাপ নিচে নামাই।

খুব বড় পদক্ষেপ 10.000003 থেকে 10.000001 এবং 9, 999998Hz এর পরে পাস করতে পারে। আমি টার্গেট মিস করছি।

0, 0000004 দিয়ে। এটি 0, 1 এর চেয়ে দ্রুততর এবং আমি একটি সংখ্যা বাইপাস না করার ব্যাপারে আরো নিশ্চিত। ইত্যাদি। আমি 10 সেকেন্ড, 60 সেকেন্ড এবং 200s ফেজ এবং 900 এর সাথে একই কাজ করছি। 1000s চলমান মোড এবং 2 এর একটি pwm ধাপ ব্যবহার করুন

অনুগ্রহ করে মনে রাখবেন যে ফেজ 5 অর্জনের জন্য আরও দীর্ঘ। 4 এবং 5 এর মধ্যে ব্যবধানটি বড়। কিন্তু এটি 5 থেকে 6 দ্রুত পাস করতে সাহায্য করে।

যখন ফেজ 6 ঠিক 10 বিলিয়ন গণনা করা হয়, pwm মান eeprom এ সংরক্ষিত হয়। এখন, চলমান মোডের সময়। এই এক 1000 সেকেন্ড নমুনা গণনা কিন্তু শুধুমাত্র 2 ধাপ pwm সঙ্গে। চলমান মোডে, আসল ফ্রিকোয়েন্সি 1000 সেকেন্ডের ব্যবধানে প্রদর্শিত এবং আপডেট হয়। যদি সিগন্যাল চলমান মোডে হারিয়ে যায় তবে এটি স্ব -দৌড়ে চলে যায়। এই মোডে pwm এর কোন পরিবর্তন নেই। যখন সিগন্যাল ফিরে আসে, এটি পুনরায় সিঙ্ক্রোনাইজেশনে ফেজ 5 এ ফিরে আসে।

যদি eeprom সেভ করার পর সার্কিট আনপ্লাগ হয়। এটি ইপ্রোম পিডব্লিউএম ভ্যালু দিয়ে 5 ম পর্যায়ে শুরু হবে।

Eeprom মান মুছে ফেলার জন্য, শুধু স্টার্ট-আপ এ বোতাম টিপুন। Pwm 50% লোড হবে এবং ফেজ 1 থেকে ক্রমাঙ্কন শুরু হবে।

আমি সার্কিটের কনফিগারেশন, ভিন্ন জিনিস চেষ্টা করতে অনেক ঘন্টা পার করি। আমি OP amp, বাফার এবং অন্যান্য চিপ দিয়ে অনেক পরীক্ষা করেছি। এবং শেষে … আমি যে সেরা ফলাফল পেয়েছি তার দরকার নেই। শুধু একটি ভাল স্থিতিশীল বিদ্যুৎ সরবরাহ এবং কিছু ফিল্টারিং ক্যাপাসিটর। তাই আমি এই সহজ রাখি।

ধাপ 1: যন্ত্রাংশ কিনুন

যন্ত্রাংশ কিনুন
যন্ত্রাংশ কিনুন
যন্ত্রাংশ কিনুন
যন্ত্রাংশ কিনুন
যন্ত্রাংশ কিনুন
যন্ত্রাংশ কিনুন

প্রথম কাজটি হল যন্ত্রাংশ কেনা। কারণ প্রায়শই শিপিং খুব দীর্ঘ হয়।

জিপিএস মডিউল: আমি একটি ublox neo-6m ব্যবহার করছি। আমি এটি ইবে কিনেছি। একটি অনুসন্ধান করুন, এটি প্রায় 7 থেকে 10 মার্কিন ডলার খরচ করে।

ডিফল্টরূপে, এই রিসিভারে 1 পালস বাই সেকেন্ড সক্ষম থাকে। আমাদের কিছু করার দরকার নেই।

আপনি 1 হার্টজ পালস আউটপুট সহ যেকোন জিপিএস মডিউল ব্যবহার করতে পারেন। যদি কেউ. এটি ব্যবহার করুন!

OCXO: আমি 2 অসিলেটর চেষ্টা করেছি একটি ডবল ওভেন stp2187 12v সাইন ওয়েভ আউটপুট। এবং একটি ISOTEMP 131-100 5V, বর্গ তরঙ্গ আউটপুট। উভয় ইবে তে radioparts16 থেকে আসে। আমি তাদের কাছ থেকে একটি খুব ভাল সেবা পেয়েছিলাম এবং দাম সস্তা ছিল।

AVR: কোড একটু atmega48 এর উপর ফিট। কিন্তু আমি একটি atmega88 বা atmega328p কেনার পরামর্শ দিচ্ছি। এর দাম প্রায় একই। এটি ডিজিকি বা ইবে কিনুন। আমি ডিপ সংস্করণ ব্যবহার করছি। আপনি সারফেস মাউন্ট সংস্করণ কিনতে পারেন, কিন্তু মনোযোগ দিন, পিনগুলি পরিকল্পিতভাবে একই নয়।

এলসিডি ডিসপ্লে: যে কোনো 4x20 HD44780 সামঞ্জস্যপূর্ণ ডিসপ্লে কাজ করবে। অনুমান করুন আমি কোথায় কিনেছি:) হ্যাঁ কয়েক বছর আগে ইবে। এখন এটি আগের চেয়ে বেশি ব্যয়বহুল। কিন্তু 20 মার্কিন ডলারের নিচে পাওয়া যায়।

হয়তো অদূর ভবিষ্যতে, আমি 2x16 ডিসপ্লের জন্য একটি কোড করব। এই প্রদর্শনগুলি মাত্র 4 ডলার। এবং আপনার এবং আমার মধ্যে, একটি 2 লাইন প্রদর্শন যথেষ্ট হবে।

আপনার অবশ্যই একটি AVR ISP প্রোগ্রামার থাকতে হবে। একটি AVR প্রোগ্রামিং একটি Arduino মত নয়। Arduino ইতিমধ্যেই সিরিয়াল পোর্টে যোগাযোগ করার জন্য প্রোগ্রাম করা হয়েছে। আইএসপি বা প্যারালাল হাই ভোল্টেজ প্রোগ্রামারের সাথে একটি নতুন এভিআর প্রোগ্রাম করা আবশ্যক। আমরা এখানে isp ব্যবহার করছি।

একটি 74hc04 বা 74ac0, ভোল্ট নিয়ন্ত্রক 7812 এবং 7805, প্রতিরোধক, ক্যাপাসিটর…। ডিজিকি, ইবে

ধাপ 2: এখানে স্কিম্যাটিক এবং Gpsdo_YT_v1_0.hex

Image
Image
এখানে স্কিম্যাটিক এবং Gpsdo_YT_v1_0.hex
এখানে স্কিম্যাটিক এবং Gpsdo_YT_v1_0.hex
এখানে স্কিম্যাটিক এবং Gpsdo_YT_v1_0.hex
এখানে স্কিম্যাটিক এবং Gpsdo_YT_v1_0.hex

আমি মনে করি যে এই প্রকল্পটি উপলব্ধি করার জন্য আপনাকে পরিকল্পিত প্রয়োজন। আপনি যদি ইচিং পদ্ধতি সহ একটি তামার কাপড়যুক্ত বোর্ড ব্যবহার করতে পারেন বা যদি আপনি চান তবে কেবল ছিদ্রযুক্ত বোর্ড ব্যবহার করতে পারেন।

আপনি যে কোন বাক্স ব্যবহার করতে পারেন, কিন্তু আমি একটি ধাতব বাক্সের পরামর্শ দিচ্ছি। অথবা শুধু আমার মত মজাদার জন্য একটি রুটি বোর্ডে:)

আমি আমার প্রোজেক্টকে একটি বাক্সে রাখার জন্য অ্যান্টেনা এক্সটেনশন এবং bnc কানেক্টরের জন্য অপেক্ষা করছি।

আপনাকে অবশ্যই সঠিক ফিউজ বিট নির্বাচন করতে হবে। বাহ্যিক অসিলেটর নির্বাচন করা হয়েছে তা নিশ্চিত করুন। এক্সটার্নাল অসিলেটর নিয়ে আপনার সমস্যা হলে এক্সটারনাল ক্রিস্টাল ব্যবহার করে দেখুন। এবং low.ckdiv8 ঘড়িটি অনির্বাচিত। ছবি দেখো. মনোযোগ দিন, যখন বাহ্যিক ঘড়িটি বিট হয়, তখন আপনাকে অবশ্যই প্রোগ্রাম বা কোড চালানোর জন্য একটি বাহ্যিক ঘড়ি সরবরাহ করতে হবে। অন্য কথায়, অস্টিলেটরকে xtal1 পিনে সংযুক্ত করুন।

উপায় দ্বারা … আপনি একই কোড ব্যবহার করতে পারেন 1 সেকেন্ড গেট দিয়ে একটি ফ্রিকোয়েন্সি কাউন্টার করতে। শুধু xtal1 পিনে পরিমাপ করার জন্য ঘড়ি লিখুন এবং আপনার একটি +-1 Hz ফ্রিকোয়েন্সি কাউন্টার থাকবে।

আমার কাছে নতুন জিনিস পাওয়া মাত্রই আমি প্রকল্পটি আপডেট করব।

ইতিমধ্যে, যদি প্রকল্পটি আপনার আগ্রহী হয়, আপনার কাছে আমার কাছে শুরু করার এবং এমনকি শেষ করার জন্য পর্যাপ্ত উপাদান রয়েছে

আমি 2 টি ভিডিও আপলোড করেছি, আপনি প্রথম পর্ব এবং শেষটি দেখতে পারেন।

আমি কোন প্রশ্ন বা মন্তব্য জন্য উপলব্ধ। ধন্যবাদ.

ফেব্রুয়ারি 26, 2017 … সংস্করণ 1.1 উপলব্ধ।

-atmega48 আর সমর্থিত নয়। যথেষ্ট স্থান.

স্যাটেলাইট লক করা সংযোজন সংখ্যা।

-সপোর্ট 2x16 এলসিডি। আপনার যদি 4x20 থাকে তবে এটিও কাজ করবে। কিন্তু 2 টি শেষ লাইন কিছুই প্রদর্শন করবে না।

ধাপ 3: ইপ্রমে লগ ইন করুন

Eeprom লগ ইন
Eeprom লগ ইন

এখানে চলার সময় কয়েক ঘন্টা পরে ইপ্রমের ডাম্প। আমি কিভাবে এটি পড়তে ব্যাখ্যা করব। আবার, এটা সহজ:)

ঠিকানা 00, 01 এ pwm মান সংরক্ষণ করা হয়। যত তাড়াতাড়ি ফেজ 5 গণনা 9 বিলিয়ন, pwm মান প্রতিবার আপডেট করা হয় কাউন্টার ঠিক 10 বিলিয়ন পৌঁছায়।

যত তাড়াতাড়ি আমরা 5 তম পর্যায়ে আছি সমস্ত গণনা pwm মানের পরে eeprom এ সংরক্ষিত হয়। ঠিকানা 02 এ শুরু করুন, 03 এর পরে এবং তাই।

এই উদাহরণটি আমার 5 ভোল্টের ocxo থেকে এসেছে। আমরা 65536 এ 0x9A73 = 39539 দশমিকের pwm মান পড়তে পারি। = 60, 33% বা 3.0165 ভোল্ট।

সুতরাং ঠিকানা 00:01 হল 0x9A73

পরবর্তীতে, আপনি 03 পড়তে পারেন।

10, 000, 000.000 pwm থাকার জন্য 00 অস্পষ্ট এবং আমরা চলমান মোডে চলে যাই (ফেজ 6)

02 এর জন্য 10, 000, 000.002 সে ক্ষেত্রে pwm মান 2 থেকে কমিয়ে আনা হয়েছে

01 এর জন্য 10, 000, 000.001 pwm মান 2 থেকে কমিয়ে আনা হয়েছে

01 এর জন্য 10, 000, 000.001 pwm মান আবার 2 থেকে কমিয়ে আনা হয়েছে

10, 000, 000.000 pwm থাকার জন্য 00 অস্পৃশ্য

10, 000, 000.000 pwm থাকার জন্য 00 অস্পৃশ্য

10, 000, 000.000 pwm থাকার জন্য 00 অস্পৃশ্য

এখন আপনি কিভাবে eeprom পড়তে জানেন। প্রতি 1000 সেকেন্ডে নতুন মান eeprom এ লেখা হয়। যখন eeprom পূর্ণ হয়, এটি ঠিকানা 2 থেকে পুনরায় আরম্ভ হয়।

FF মান মানে 9, 999, 999.999

আপনি এই ডাম্প দিয়ে কোন এলসিডি ডিসপ্লে ছাড়াই নির্ভুলতা ট্র্যাক করতে পারেন।

আপনি একটি isp প্রোগ্রামার দিয়ে eeprom ফাইলটি ডাম্প করতে পারেন।

আমি আশা করি আমি আপনাকে যথেষ্ট তথ্য দিয়েছি। যদি না হয়, আমাকে জানাবেন। পরামর্শ, ত্রুটি, কিছু।

ইয়ানিক

প্রস্তাবিত: