منذ حوالي عشر سنوات ، في بعض الأحيان ، اشتريت محطة طقس بسيطة من Oregon Scientific BAR208HG. لقد أسعدت الأسرة لفترة طويلة ، وما زالت تسعد حتى يومنا هذا. بمرور الوقت ، بدأت أفقد وظائفه وأردت توسيع قدرتي على مراقبة الطقس. ثم اتضحت حقيقة واحدة غير سارة - شراء محطة أرصاد جوية متقدمة من نفس Oregon Scientific لم يسمح ببث القراءات من أجهزة الاستشعار الخاصة بها إلى المحطة القديمة. إصدار بروتوكول نقل البيانات غير مطابق. في نفس الوقت تقريبًا ، شاركت في مغامرة مثيرة مثل نقل بيانات الطقس إلى خدمة مراقبة الأشخاص سيئة السمعة. في ذلك الوقت ، كان لدى الشبكة الكثير من المعلومات حول محطات الطقس نفسها وأجهزة استشعار أوريغون ، حول بروتوكول نقل البيانات وطرق فك تشفيرها.لقد وجدت بسهولة العديد من برامج ومكتبات Arduino الجاهزة لاستقبال وفك تشفير الإشارة. كل هذه المعلومات بدت لي غير منظمة بشكل كافٍ ، وفي بعض الأماكن غير دقيقة ، وأعطت البرامج نتيجة مرضية فقط على مسافات قصيرة جدًا. في النهاية توصلت إلى الحقيقة القديمة: "إذا كنت تريد أن تفعل شيئًا جيدًا ، فافعله بنفسك". كانت نتيجة البحث اللاحق كتابة هذه المذكرة ، والتي أود أن أشارك فيها المعرفة والمهارات المكتسبة.كانت نتيجة البحث اللاحق كتابة هذه المذكرة ، والتي أود أن أشارك فيها المعرفة والمهارات المكتسبة.كانت نتيجة البحث اللاحق كتابة هذه المذكرة ، والتي أود أن أشارك فيها المعرفة والمهارات المكتسبة.
إصدارات البروتوكول
يعمل نظام أوريغون العلمي بأكمله وفقًا للمبدأ العام - أجهزة الاستشعار هي أجهزة إرسال تبث على فترات محددة بدقة. لتقليل الاصطدامات أثناء الإرسال ، تختلف فترات البث لجميع أجهزة الاستشعار ، على سبيل المثال ، بالنسبة لمحطتي ، تنقل المستشعرات قراءات بفاصل 39 و 41 و 43 ثانية على القنوات الأولى والثانية والثالثة على التوالي. ومحطات الطقس نفسها هي بدورها أجهزة استقبال فقط. وبالتالي ، فإن العلاقة أحادية الاتجاه. تستخدم الشركة المصنعة عدة إصدارات من بروتوكول نقل البيانات:
- الإصدار 1.0. في هذا البروتوكول ، أعمل فقط مع الأجهزة التي تحولت إلى اللون الأصفر من وقت إلى عشرين عامًا. لم أر هذه الأجهزة مطلقًا ، سواء كانت حية أو حتى في الصور. لا يوجد شيء على الإطلاق ليخبرني عنهم ،
- الإصدار 2.1. - يتم استخدامه حاليًا في معظم المنتجات للاستخدام المنزلي المباعة في روسيا والدول المجاورة. تتمتع المستشعرات التي تعمل على هذا البروتوكول ، كقاعدة عامة ، بقدرة إرسال منخفضة ، ويبلغ النطاق المعلن لعملها حوالي 30 مترًا ،
- 3.0 — .. "" , , . "" . , , , 100, , , . . - , . "" . , BAR208HG BAR208HGX, 3- .
433. — (On/Off Key), .. "/", . 2048. 2.1 3.0

, . OOK , , . — . . — . , .
, . .
, . . 2.1 4- Fh, 3.0 — 6- . ? , , () . , , , .

, Ah. . , .
— 4 . , , . :
- ,
- ,
- , ,
- , .
"" . "" . , , . , , . , , , . , , .
"" :
- 3 (& 4h) . THGN132N, , 1.3.
- 4 (& 8h) 30- . , .
- 1 (& 1h) 30- 60- .
"" . :

" " — . , . ,
5D5314D01510950AC13B529
:
5h + Dh + 5h + 3h + 1h + 4h + Dh + 0h + 1h + 5h + 1h + 0h + 9h + 5h + 0h + Ah + Ch + 1h + 3h = 5Bh
, . , .
CRC8 — . CRC8-CCITT 07h. , "" "". 2.1 3.0 , 2.1 "ID" . , THN132N ( 2.1)
EC401B183520D33F
D6h
CRC8-CCITT( D6h < E < C < 4 < 0 < 1 < 8 < 3 < 5 < 2 < 0 ) = F3h
PCR800 ( 3.0),
29140EC00000279410142E
CRC8-CCITT( 00h < 2 < 9 < 1 < 4 < 0 < E < C < 0 < 0 < 0 < 0 < 0 < 2 < 7 < 9 < 4 < 1 < 0) = E2h
.

. Arduino , . , "" . , . THGN132N .

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