جدول المحتويات:

GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق: 3 خطوات
GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق: 3 خطوات

فيديو: GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق: 3 خطوات

فيديو: GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق: 3 خطوات
فيديو: Scullcom Hobby Electronics # 35 - Design & Build a GPS locked Frequency Reference Standard 2024, يوليو
Anonim
GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق
GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق
GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق
GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق
GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق
GPSDO YT ، تردد مرجعي منضبط 10 ميجا هرتز. منخفض الكلفة. دقيق

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

STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP

هذا مشروع عفا عليه الزمن.

بدلاً من ذلك ، تحقق من إصدار شاشة عرض LCD 2x16 الجديد المتاح هنا:

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

لقد تركت النسخة القديمة هنا للتوثيق.

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

اهلا ياجماعة،

ما هو GPSDO؟ يعني GPSDO: مذبذب منضبط GPS. GPS لنظام تحديد المواقع العالمي. جميع الأقمار الصناعية لنظام تحديد المواقع العالمي (GPS) مجهزة بساعة ذرية متزامنة. تستقبل وحدة GPS هذه الإشارات من عدة أقمار صناعية. وعن طريق التثليث ، يعرف مكانه. ولكن هنا ، ما يهمنا هو النبض في الثانية الموجود في الوحدة. باستخدام هذه النبضة الدقيقة (من الساعة الذرية) ، يمكننا عمل مذبذب شديد الدقة. لأي غرض ؟ كمرجع ، لمعايرة عداد التردد أو لمجرد التسلية أن يكون في مختبره.

هم كثير التخطيطي على الإنترنت. لقد جربت البعض. بعضها جيد ، واحد مع 2313 صغير كان 5 هرتز بطيء جدًا. لكن لي هو أبسط وأكثر فائدة وملاءمة. وأنا أعطيك كود.hex. هم ليسوا VCO ولا مقسم. الدائرة مع VCO تعمل بشكل جيد. ولكن ، يجب أن يكون لديه إشارة نبضية 10 كيلو هرتز أو أكثر بشكل مستمر. إذا أصبح الهوائي ضعيفًا جدًا أو فقد النبض أو لم يكن هناك أي نبضة على الإطلاق ، فإن المذبذب (ocxo) يعمل من تلقاء نفسه ولم يعد VFC (التحكم في تردد الجهد) دقيقًا بعد الآن. تحتاج ملاحظات VCO إلى تردد مرجعي للالتزام به. إذا لم يكن الأمر كذلك ، فهو يختلف من 1 إلى 2 هرتز! أيضًا ، لا تعمل وحدة GPS الأرخص في هذا التكوين. يجب أن يكون لدينا 10 كيلو هرتز على الأقل لعمل VCO. حاولت مع 1000 هرتز. كانت الفجوة كبيرة للغاية وتفاوت التردد. لذلك مع ublox neo-6m ، لا يمكنك عمل vco gpsdo لأن الحد الأقصى لتردد الإخراج هو 1000 هرتز. يجب عليك شراء حذاء نيو 7 م أو علوي.

هذه هي الطريقة التي يعمل بها GPSDO YT الخاص بي. وجدت وحدة التحكم التعديل الجيد لأي OCXO مع vfc 0 إلى 5v. إذا فقدنا إشارة GP ، فإن التردد لا يتحرك على الإطلاق. عندما تظهر الإشارة مرة أخرى ، يأخذ جهاز التحكم آخر قيمة جيدة معروفة له ويستمر كما كان من قبل. على النطاق ، مع مذبذب مرجعي. لا يمكننا معرفة متى فقدت الإشارة أو عندما عادت. الإشارة هي نفسها.

بعد المعايرة ، يمكنك استخدام GPSdo بدون هوائي إذا كنت تريد ذلك. بعد بضعة مرات سيكون لديك القليل من الانجراف. لكن…. كم أكبر؟ حان الوقت لبعض الشرح.

إليك بعض الرياضيات … الرياضيات السهلة ، اتبعني بهذا الأمر سهل. تتكون الخوارزمية حتى الآن من 6 مراحل. تأخذ كل مرحلة عينة من 1 إلى 1000 ثانية ، ووجدت تعديل pwm الجيد وانتقل إلى معظم العينات الأطول لمزيد من الدقة.

الدقة = (((عدد الثواني × 10E6) + 1) / عدد الثواني) - 10E6

المرحلة 1 ، عينة ثانية واحدة مقابل 1000000 تهم بدقة + - 1 هرتز

المرحلة 2 ، عينة 10 ثوانٍ لـ 100 ، 000 ، 000 تهم بدقة + -0.1Hz

المرحلة 3 ، عينة 60 ثانية لـ 600 ، 000 ، 000 تهم بدقة + -0.01666 هرتز

المرحلة 4 ، 200 ثانية ، عينة لـ 2 ، 000 ، 000 ، 000 تهم بدقة + -0.005 هرتز

المرحلة 5 ، عينة 900 ثانية لـ 9 ، 000 ، 000 ، 000 تهم بدقة + -0.001111 هرتز

المرحلة 6 ، عينة 1000 ثانية لـ 10 مليارات حساب بدقة + -0.001 هرتز

الحالة الأسوأ. عندما نحصل على المرحلة 6. يمكن أن يتغير هذا الرقم قليلاً كل 1000 ثانية أم لا. في وقت ما سيكون 10 ، 000 ، 000 ، 001 أو 9 ، 999 ، 999 ، 999 إذن ، + أو - 0 ، 000 ، 000.001 اختلاف لكل 1000 ثانية. الآن يجب أن نعرف قيمة ثانية واحدة.

10 ميجا هرتز = 1 ثانية

لثانية واحدة = 1000000000 عدد 001/1000 ثانية = 10000000.001 هرتز (أسوأ حالة لمدة ثانية واحدة)

10 ، 000 ، 000.001 - 10 ، 000 ، 000 = 0.001 هرتز / ثانية أسرع أو أبطأ

0.001 هرتز × 60 × 60 × 24 × 365 = 31536 هرتز / سنة

لذا تذكر أن 10 ميجا هرتز هي ثانية واحدة ، 31536 هرتز × 1 / 10E6 = 0 ، 0031536 ثانية / سنة

طريقة أخرى أسرع للحساب. خطأ واحد لـ 10E9Mhz هو 1 / 10E9 = 1E-10

1E-10 x 60x60x24x365 = 0 ، 0031536 ثانية / سنة.

هل هذا دقيق بما فيه الكفاية بالنسبة لك؟

ومع ذلك ، يجب أن يكون لديك OXCO جيد. أنا أفضل إخراج الجيوب الأنفية مزدوجة الفرن 12 فولت. أكثر استقرارًا وهدوءًا ودقة. لكن لدي نفس النتيجة مع 5V بسيطة. على سبيل المثال ، يمتلك stp 2187 فترة استقرار قصيرة (انحراف ألان) 2x10-12 = 0.000 ، 000 ، 000 ، 002 هرتز من الاستقرار. في نفس الوقت ، عندما يتوفر نبض نظام تحديد المواقع العالمي (GPS) ، ستعمل Avr دائمًا على تصحيح pwm (التردد). تعد جامعة كاليفورنيا دائمًا … دائمًا. هذا يعني أنك لن ترى التاريخ والوقت على الشاشة. عندما تقوم uC بأخذ عينات 900 ثانية ، يكون هذا مشغولاً لمدة 900 ثانية. يجب أن تحسب كل الساعة. المشكلة هي أن uC يعمل بسرعة 10 ميجا هرتز. كل ساعة يجب أن تحسب. إنها تعد نفسها. إذا فقدت ساعة واحدة فقط ، فلن تكون العينة جيدة ولن يكون تعديل pwm صحيحًا. لا يمكنني تحديث العرض كل ثانية.

عندما يبدأ أخذ العينات. جامعة كاليفورنيا تبدأ في العد timer0. كل 256 ساعة تولد مقاطعة. يتم زيادة تسجيل X. عندما يكون السجل Y ممتلئًا ، يتم زيادة التسجيل وإعادة تعيين X إلى 0 وما إلى ذلك. في النهاية ، في آخر نبضة GPS ، توقف العد. والآن فقط يمكنني تحديث العرض وإجراء بعض العمليات الحسابية لحساب pwm.

مع العلم أن لدي فقط 25 ، 6 لنا (256 ساعة قبل المقاطعة) لقراءة وعرض الوقت أو غير ذلك. هذا مستحيل. يمكن صقل مقاطعة واحدة ، وليس 2. يمكنني تحديث الوقت بعد 1000 ثانية … ولكن لن يكون من العملي رؤية الوقت بفاصل 15 ، 16 دقيقة. لدي ساعة وساعة وهاتف محمول لمعرفة الوقت:) أقوم بمرجع 10 ميجا هرتز. ليست ساعة.

مشكلة أخرى لدي ، بعض تعليمات avr لها دورتان. بما في ذلك تعليمات RJMP. هذا يعني أنه إذا ظهر نبضة GPS الأولى أو الأخيرة في نفس الوقت لإرشادات دورتين ، فستفقد uC ساعة. لأن جامعة كاليفورنيا ستنهي التعليمات قبل بدء المقاطعة. لذلك سيبدأ العداد أو يتوقف بعد دورة واحدة. لذلك لا يمكنني أن أقوم بحلقة انتظار … ولكن في الواقع ، ليس لدي خيار آخر. كنت بحاجة إلى حلقة في مكان ما !! لذا فأنا أستخدم تعليمات rjmp و nop (لا تفعل شيئًا). Nop هي تعليمات دورة واحدة. لقد وضعت 400 تعليمات nop لـ rjmp واحد على atmega48. 2000 على إصدار atmega88 و atmega328p. لذا فإن فرص النبض الأول أو الأخير تكون أقل عند تعليمات rjmp. لكن نعم ، هذا ممكن وإذا حدث هذا ، فسيتم تصحيح هذا الخطأ في العينة التالية.

العرض اختياري. يمكنك عمل الدائرة باستخدام uC و OCXO ومرشح تمرير منخفض (مكثف المقاوم) فقط ، قم بتشغيله وانتظر. بعد ساعة واحدة سيكون لديك تردد مقبول. لكن للوصول إلى المرحلة 6. يستغرق الأمر بضع ساعات.

Pwm هو 16 بت. 65535 خطوة. 5 فولت / 65535 = 76 ، 295 فولت

اختلاف OCXO هو 2 هرتز في 1 فولت. 1 فولت / 76 ، 295 فائق التوهج = 13107 خطوة لـ 2 هرتز. 2/13107 = 152.59uHz خطوة من pwm

المرحلة 5 ، هي تغيير pwm بمقدار 3 ، المرحلة 6 هي 2. خطوة … لماذا 3؟ لأن 3 يغير التردد بمقدار 0.000 ، 000 ، 000 ، 4 بمقياس 15 دقيقة. و 4 هو رقمي السحري في خوارزمية. على سبيل المثال ، إذا كان في المرحلة الأولى ، فإن التردد الأول الذي تم العثور عليه هو 10.000 ، 003 ميجا هرتز. لقد خفضت بمقدار 0 ، 000 ، 000.4 خطوة.

خطوة كبيرة جدًا يمكن أن تمر من 10.000003 إلى 10.000001 وبعد 9 ، 999998 هرتز. أنا أفتقد الهدف.

مع 0 ، 0000004. إنه أسرع من 0 ، 1 وأنا متأكد من عدم تجاوز الرقم. وما إلى ذلك وهلم جرا. أفعل الشيء نفسه مع 10 ثوانٍ و 60 ثانية و 200 ثانية و 900 ثانية. 1000s هي وضع التشغيل وتستخدم الخطوة 2 pwm

يرجى ملاحظة أن المرحلة 5 أطول لتحقيقها. الفجوة بين 4 و 5 أكبر. لكنها تساعد على المرور من 5 إلى 6 بشكل أسرع.

عندما تحسب المرحلة 6 بالضبط 10 مليارات ، يتم حفظ قيم pwm في eeprom. الآن ، حان وقت وضع التشغيل. هذه العينة تحسب 1000 ثانية ولكن بخطوتين pwm فقط. في وضع التشغيل ، يتم عرض التردد الحقيقي وتحديثه كل 1000 ثانية. إذا فقدت الإشارة في وضع التشغيل ، فإنها تمر في وضع التشغيل الذاتي. لا تغيير في pwm في هذا الوضع. عندما تعود الإشارة ، تعود إلى المرحلة 5 لإعادة المزامنة.

إذا تم فصل الدائرة بعد حفظ eeprom. سيبدأ هذا في المرحلة 5 عند التشغيل بقيمة eeprom pwm.

لمسح قيمة eeprom ، فقط اضغط على الزر عند بدء التشغيل. سيتم تحميل Pwm 50٪ وستبدأ المعايرة من المرحلة 1.

قضيت عدة ساعات لتجربة شيء مختلف ، تكوين الدائرة. لقد أجريت العديد من الاختبارات ، باستخدام أمبير OP ، ومخزن مؤقت وشريحة أخرى. وفي النهاية … أفضل نتيجة حصلت عليها لا أحتاجها. مجرد مصدر طاقة ثابت جيد وبعض مكثفات الترشيح. لذلك أبقي هذا بسيطًا.

الخطوة 1: شراء قطع غيار

شراء قطع غيار
شراء قطع غيار
شراء قطع غيار
شراء قطع غيار
شراء قطع غيار
شراء قطع غيار

أول شيء يجب فعله هو شراء الأجزاء. لأن الشحن في كثير من الأحيان طويل جدا.

وحدة Gps: أنا أستخدم ublox neo-6m. اشتريت هذا على موقع ئي باي. قم بالبحث ، فستكلفك حوالي 7 إلى 10 دولارات أمريكية.

بشكل افتراضي ، يتم تمكين النبضة 1 بالثانية في جهاز الاستقبال هذا. لا نحتاج إلى فعل أي شيء.

يمكنك استخدام أي وحدة GPS مع خرج نبضة 1 هرتز. لديك واحدة. استخدام هذا!

OCXO: لقد جربت 2 مذبذبات. فرن مزدوج stp2187 خرج موجة جيبية بجهد 12 فولت. و ISOTEMP 131-100 5V ، خرج موجة مربعة. كلاهما يأتي من radioparts16 على موقع ئي باي. تلقيت خدمة جيدة جدًا منهم وكان السعر أرخص.

AVR: كود مناسب ل atmega48 قليلا. لكنني أقترح شراء atmega88 أو atmega328p. إنه نفس السعر تقريبًا. شراء هذا على digikey أو ebay. أنا أستخدم نسخة تراجع. يمكنك شراء نسخة مثبتة على السطح ، لكن انتبه ، الدبابيس ليست هي نفسها في التخطيطي.

شاشة LCD: ستعمل أي شاشة متوافقة مع 4x20 HD44780. خمن أين اشتريت لي:) نعم على موقع ئي باي قبل بضع سنوات. الآن أصبح أكثر تكلفة من ذي قبل. ولكن متاح بسعر أقل من 20 دولارًا أمريكيًا.

ربما في المستقبل القريب ، سأقوم بعمل رمز لعرض 2x16. تلك العروض 4 دولارات فقط. وبينك وبيني ، يكفي عرض سطرين.

يجب أن يكون لديك مبرمج AVR ISP. برمجة AVR ليست مثل Arduino. تمت برمجة Arduino بالفعل للتواصل على المنفذ التسلسلي. يجب برمجة العلامة التجارية الجديدة avr مع ISP أو مبرمج الجهد العالي المتوازي. نحن نستخدم ISP هنا.

74hc04 أو 74ac0 ، منظم الفولت 7812 و 7805 ، مقاومات ، مكثف…. digikey ، ebay

الخطوة 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.

بالمناسبة … يمكنك استخدام نفس الرمز لعمل عداد تردد مع بوابة ثانية واحدة. فقط أدخل الساعة المراد قياسها في xtal1 pin وسيكون لديك عداد تردد + -1 هرتز.

سوف أقوم بتحديث المشروع بمجرد أن يكون لدي أشياء جديدة.

في غضون ذلك ، إذا كان المشروع يهمك ، فلديك ما يكفي من المواد لبدء المشروع وحتى إنهائه قبلي

لقد قمت بتحميل مقطعي فيديو ، يمكنك مشاهدة المرحلة الأولى والأخيرة.

أنا متاح لأية أسئلة أو تعليقات. شكرا لك.

26 فبراير 2017…. الإصدار 1.1 متاح.

-atmega48 غير مدعوم بعد الآن. مساحة غير كافية.

تمت إضافة عدد الأقمار الصناعية مغلق.

-دعم 2x16 lcd. إذا كان لديك 4x20 ، فستعمل أيضًا. لكن السطر الثاني الأخير لن يعرض أي شيء.

الخطوة 3: تسجيل الدخول إلى Eeprom

سجلات في Eeprom
سجلات في Eeprom

هنا تفريغ eeprom بعد بضع ساعات من وقت التشغيل. سأشرح كيفية قراءة هذا. مرة أخرى ، الأمر سهل:)

في العنوان 00 ، يتم تخزين 01 قيمة pwm. بمجرد أن تعد المرحلة الخامسة 9 مليارات ، يتم تحديث قيمة pwm في كل مرة يصل فيها العداد بالضبط إلى 10 مليارات.

بمجرد أن نكون في المرحلة 5. يتم تخزين جميع التهم في eeprom بعد قيمة pwm. ابدأ من العنوان 02 ، بعد 03 وما إلى ذلك.

جاء هذا المثال من بلدي 5 فولت ocxo. يمكننا قراءة قيمة pwm من 0x9A73 = 39539 عشري على 65536. = 60 أو 33٪ أو 3.0165 فولت.

لذا فإن العنوان 00:01 هو 0x9A73

بعد ذلك ، يمكنك أن تقرأ 03. بالنسبة إلى 9 ، 000 ، 000 ، 003 Pwm يتم تخفيضها بمقدار 3 لأننا ما زلنا في المرحلة 5

00 لـ 1000000000 pwm البقاء على ما يرام وننتقل إلى وضع التشغيل (المرحلة 6)

02 لـ 10 ، 000 ، 000.002 في هذه الحالة ، تنخفض قيمة pwm من 2

يتم تخفيض قيمة 01 لـ 10000.001 pwm من 2

يتم تخفيض قيمة 01 لـ 10000.001 pwm من 2 مرة أخرى

00 لـ 1000000000 pwm البقاء على ما يرام

00 لـ 1000000000 pwm البقاء على ما يرام

00 لـ 1000000000 pwm البقاء على ما يرام

الآن أنت تعرف كيف تقرأ إيبروم. كل 1000 ثانية قيمة جديدة مكتوبة في إيبروم. عند امتلاء eeprom ، تتم إعادة تشغيله من العنوان 2.

تعني قيمة FF 9 ، 999 ، 999.999

يمكنك مع هذا التفريغ تتبع الدقة ، دون أي شاشة LCD.

يمكنك تفريغ ملف eeprom باستخدام مبرمج isp.

آمل أن أكون قد أعطيتك معلومات كافية. إذا لم يكن كذلك ، أعلمني. نصيحة ، خطأ ، أي شيء.

يانيك

موصى به: