سلك واحد


1-Wire عبارة عن ناقل تسلسلي سلكي نصف مزدوج صممته شركة Dallas Semiconductor، ويوفر اتصال بيانات منخفض السرعة (16.3 كيلوبت/ثانية قياسي؛ "زيادة السرعة" عند 10× [ 1 ] ) وجهد إمداد عبر موصل واحد . [ 2 ]
يُشابه بروتوكول 1-Wire بروتوكول I2C في المفهوم ، ولكنه يتميز بمعدلات نقل بيانات أقل ومدى أطول. ويُستخدم عادةً للتواصل مع الأجهزة الصغيرة منخفضة التكلفة ، مثل موازين الحرارة الرقمية وأجهزة قياس الطقس. تُسمى شبكة أجهزة 1-Wire المتصلة بجهاز رئيسي شبكة MicroLAN . كما يُستخدم هذا البروتوكول في المفاتيح الإلكترونية الصغيرة (16 مم) المعروفة باسم مفتاح دالاس أو زر iButton .
إحدى السمات المميزة لهذا الناقل هي إمكانية استخدام موصلين فقط - البيانات والأرضي. ولتحقيق ذلك، تدمج أجهزة 1-Wire مكثفًا صغيرًا (حوالي 800 بيكوفاراد ) لتخزين الشحنة، التي تُشغّل الجهاز خلال فترات نشاط خط البيانات.
مثال على الاستخدام
تتوفر أجهزة 1-Wire بأغلفة مختلفة: دوائر متكاملة ، وغلاف من نوع TO-92 (كما هو شائع في الترانزستورات)، وشكل محمول يُسمى iButton أو مفتاح دالاس، وهو عبارة عن غلاف صغير من الفولاذ المقاوم للصدأ يشبه بطارية الساعة . كما تُنتج الشركات المصنعة أجهزة أكثر تعقيدًا من مجرد مكون واحد، تستخدم ناقل 1-Wire للتواصل.
يمكن تركيب أجهزة 1-Wire في أماكن مختلفة ضمن النظام. قد تكون أحد المكونات العديدة على لوحة الدوائر داخل المنتج، أو قد تكون مكونًا منفردًا داخل جهاز مثل مسبار درجة الحرارة. كما يمكن توصيلها بالجهاز المراد مراقبته. تتصل بعض أنظمة المختبرات بأجهزة 1-Wire باستخدام كابلات ذات موصلات معيارية أو كابل CAT-5 . في هذه الأنظمة، تُعد موصلات RJ11 ( الموصلات المعيارية 6P2C أو 6P4C ، الشائعة الاستخدام في الهواتف) شائعة الاستخدام.
يمكن بناء أنظمة من أجهزة الاستشعار والمحركات عن طريق توصيل العديد من مكونات 1-Wire معًا. يحتوي كل مكون من مكونات 1-Wire على جميع الدوائر المنطقية اللازمة للعمل على ناقل 1-Wire. تشمل الأمثلة مسجلات درجة الحرارة ، والمؤقتات، وأجهزة استشعار الجهد والتيار، وأجهزة مراقبة البطارية، والذاكرة . يمكن توصيل هذه المكونات بجهاز كمبيوتر باستخدام محول ناقل. تُعد واجهات USB و RS-232 التسلسلية والمتوازية حلولًا شائعة لتوصيل شبكة MicroLAN بجهاز الكمبيوتر المضيف. كما يمكن توصيل أجهزة 1-Wire مباشرةً بوحدات التحكم الدقيقة من مختلف الموردين.
تتصل أزرار iButton بأنظمة ناقل 1-Wire عبر مقابس مزودة بوصلات تلامس غطاء وقاعدة العلبة. كما يمكن أن يكون الاتصال شبه دائم باستخدام مقبس يُثبّت فيه زر iButton ، ويمكن إزالته بسهولة.
تحتوي كل شريحة من شرائح 1-Wire على رمز تعريف فريد. هذه الميزة تجعل الشرائح، وخاصةً iButtons ، مفاتيح إلكترونية مناسبة. تشمل بعض استخداماتها الأقفال، وأجهزة إنذار السرقة، وأنظمة الكمبيوتر، والملحقات المعتمدة من الشركة المصنعة، وساعات الدوام، ومفاتيح البريد والصيانة للخزائن الذكية.
استُخدمت أزرار iButtons كتذاكر ذكية من نوع Akbil لوسائل النقل العام في إسطنبول . كما يمكنها تشغيل برامج البطاقات الذكية مثل Java Card 2.0، كما يتضح من "Java Ring" لعام 1998. [ 3 ]
مصادر الطاقة
تستخدم أجهزة Apple MagSafe - وموصل MagSafe-2 - المزودة بوحدات تزويد الطاقة والشاشات وأجهزة Mac المحمولة بروتوكول 1-Wire لإرسال واستقبال البيانات من وإلى جهاز Mac المحمول المتصل، عبر الدبوس الأوسط للموصل. تشمل البيانات طراز وحدة تزويد الطاقة، وقدرتها الكهربائية، ورقمها التسلسلي؛ وأوامر الكمبيوتر المحمول لإرسال الطاقة الكاملة، وإضاءة الثنائيات الباعثة للضوء الأحمر أو الأخضر في الموصل. [ 4 ]
تستخدم وحدات تزويد الطاقة لأجهزة الكمبيوتر المحمولة من Dell بروتوكول 1-Wire لإرسال البيانات عبر السلك الثالث إلى الكمبيوتر المحمول حول معدلات الطاقة والتيار والجهد. سيرفض الكمبيوتر المحمول الشحن إذا لم يستوفِ المحول المتطلبات. [ 5 ]
بروتوكول الاتصال
في أي شبكة MicroLAN، يوجد دائمًا جهاز رئيسي واحد مسؤول عن كل شيء، وقد يكون حاسوبًا شخصيًا أو متحكمًا دقيقًا . يبدأ الجهاز الرئيسي العمليات على ناقل البيانات، مما يُسهّل تجنب التصادمات. تتضمن برمجيات الجهاز الرئيسي بروتوكولات مُدمجة لاكتشاف التصادمات. بعد حدوث تصادم، يُعيد الجهاز الرئيسي محاولة الاتصال المطلوب.
شبكة 1-Wire عبارة عن سلك واحد مفتوح التصريف مزود بمقاومة سحب واحدة . ترفع مقاومة السحب الجهد في السلك إلى 3 أو 5 فولت. يحتوي الجهاز الرئيسي وجميع الأجهزة التابعة على وصلة مفتوحة التصريف لتشغيل السلك، بالإضافة إلى آلية لاستشعار حالته. على الرغم من تسمية "1-Wire"، يجب أن تحتوي جميع الأجهزة أيضًا على موصل ثانٍ للتوصيل الأرضي للسماح بتدفق تيار العودة عبر سلك البيانات. [ 6 ] يحدث الاتصال عندما يقوم الجهاز الرئيسي أو التابع بخفض جهد ناقل البيانات لفترة وجيزة، أي توصيل مقاومة السحب بالأرض عبر ترانزستور MOSFET الخاص بمخرجه. يكون سلك البيانات عالي الجهد في حالة الخمول، وبالتالي يمكنه أيضًا تشغيل عدد محدود من الأجهزة التابعة. يمكن تحقيق معدلات بيانات تصل إلى 16.3 كيلوبت/ثانية. [ 7 ] : 40 يوجد أيضًا وضع تسريع يُسرّع الاتصال بمقدار 10 أضعاف. [ 7 ] : 39
يمكن تشغيل ناقل 1-Wire قصير من منفذ إدخال/إخراج رقمي واحد على وحدة تحكم دقيقة. كما يمكن استخدام جهاز إرسال/استقبال غير متزامن عالمي (UART). [ 8 ] تتوفر رقائق تشغيل وجسور خاصة بناقل 1-Wire . كما تتوفر رقائق "جسور" ناقل التسلسل العالمي (UART ). تُعد رقائق الجسور مفيدة بشكل خاص لتشغيل الكابلات التي يزيد طولها عن 100 متر. وقد اختبر المُصنِّع أزواجًا ملتوية يصل طولها إلى 300 متر ، أي كابلات الهاتف. تتطلب هذه الأطوال الكبيرة جدًا تعديلات على مقاومات السحب من 5 إلى 1 كيلو أوم . [ 7 ] : 40-41
يبدأ الجهاز الرئيسي عملية الإرسال بنبضة إعادة ضبط ، مما يؤدي إلى خفض جهد السلك إلى الصفر لمدة لا تقل عن 480 ميكروثانية . يؤدي هذا إلى إعادة ضبط جميع الأجهزة التابعة على الناقل. بعد ذلك، يُظهر أي جهاز تابع، إن وُجد، وجوده بنبضة "وجود": حيث يُبقي جهد الناقل منخفضًا لمدة لا تقل عن 60 ميكروثانية بعد أن يُحرر الجهاز الرئيسي الناقل.
لإرسال الرقم الثنائي "1"، يرسل الجهاز الرئيسي نبضة منخفضة قصيرة جدًا ( 1-15 ميكروثانية ). ولإرسال الرقم الثنائي "0"، يرسل نبضة منخفضة مدتها 60 ميكروثانية. تُستخدم الحافة الهابطة (السالبة) للنبضة لبدء تشغيل مُذبذب أحادي الاستقرار في الجهاز التابع. يقرأ المُذبذب في الجهاز التابع خط البيانات بعد حوالي 30 ميكروثانية من الحافة الهابطة. المؤقت الداخلي للجهاز التابع هو مؤقت تناظري منخفض التكلفة، وله هوامش خطأ تؤثر على دقة توقيته. لذلك، تُحسب النبضات لتكون ضمن هذه الهوامش. وعليه، يجب أن تكون نبضات "0" بطول 60 ميكروثانية، ولا يمكن أن تتجاوز نبضات "1" 15 ميكروثانية.
عند استقبال البيانات، يرسل الجهاز الرئيسي نبضة جهد صفرية تتراوح مدتها بين 1 و15 ميكروثانية لبدء كل بت. إذا أرادت وحدة الإرسال التابعة إرسال القيمة "1"، فإنها لا تفعل شيئًا، وينتقل خط البيانات إلى الجهد المرفوع. أما إذا أرادت إرسال القيمة "0"، فإنها تسحب خط البيانات إلى الأرض لمدة 60 ميكروثانية .
التسلسل الأساسي هو نبضة إعادة ضبط متبوعة بأمر من ثمانية بتات، ثم يتم إرسال البيانات أو استقبالها في مجموعات من ثمانية بتات.
عند نقل سلسلة من البيانات، يمكن اكتشاف الأخطاء باستخدام CRC ثماني البتات (حماية ضعيفة للبيانات) .
يمكن للعديد من الأجهزة مشاركة نفس ناقل البيانات. لكل جهاز على هذا الناقل رقم تسلسلي مكون من 64 بت، تُستخدم ثمانية بتات منه كمجموع اختباري، مما يسمح بوجود عدد هائل من هويات الأجهزة الفريدة يصل إلى 2^ 56 (أكثر من 7.2 × 10^ 16 ). البايت الأقل أهمية في الرقم التسلسلي هو رقم مكون من ثمانية بتات يُحدد نوع الجهاز. أما البايت الأكثر أهمية فهو رمز التحقق من التكرار الدوري (CRC) القياسي (لناقل 1-Wire) المكون من ثمانية بتات. [ 7 ] : 14
توجد عدة أوامر بث قياسية، بالإضافة إلى أوامر تُستخدم لمخاطبة جهاز معين. يمكن للجهاز الرئيسي إرسال أمر اختيار، ثم عنوان الجهاز المحدد. ويتم تنفيذ الأمر التالي فقط بواسطة الجهاز المُخاطَب.
بروتوكول تعداد ناقل 1-Wire، كغيره من بروتوكولات التعداد ، هو خوارزمية يستخدمها الجهاز الرئيسي لقراءة عنوان كل جهاز على الناقل. ولأن العنوان يتضمن نوع الجهاز ورمز التحقق الدوري (CRC)، فإن استعادة قائمة العناوين تُنتج أيضًا جردًا موثوقًا للأجهزة على الناقل. للعثور على الأجهزة، يبث الجهاز الرئيسي أمر تعداد ، ثم عنوانًا، "مستمعًا" بعد كل بت من العنوان. إذا تطابق عنوان الجهاز التابع مع جميع بتات العنوان المرسلة حتى الآن، فإنه يُرجع القيمة 0. يستخدم الجهاز الرئيسي هذا السلوك البسيط للبحث بشكل منهجي عن تسلسلات بتات عناوين صالحة. هذه العملية أسرع بكثير من البحث الشامل عن جميع الأرقام الممكنة ذات 56 بت، لأنه بمجرد اكتشاف بت غير صالح، تُعرف جميع بتات العنوان اللاحقة بأنها غير صالحة. يتم البحث في مساحة العناوين ذات 56 بت كشجرة ثنائية، [ 7 ] : 51 مما يسمح بالعثور على ما يصل إلى 75 جهازًا في الثانية. [ 7 ] : 53 ترتيب اكتشاف عناوين الأجهزة بواسطة بروتوكول التعداد هذا مُحدد مسبقًا ويعتمد فقط على نوع الجهاز ورقمه التسلسلي. عكس هذه البتات الـ 56 يُعطي ترتيب الاكتشاف للأجهزة باستخدام خوارزمية Maxim المنشورة (الخوارزمية مُعرّفة في مذكرة التطبيق 187 [ 9 ] ). يمكن تنفيذ خوارزمية البحث بصيغة بديلة، حيث تبدأ بالبحث عن المسارات التي تكون بتات عناوينها تساوي 1، بدلًا من 0. في هذه الحالة، عكس بتات العناوين الـ 56 ثم عكسها يُعطي ترتيب الاكتشاف.
يُعدّ موقع الأجهزة على ناقل البيانات ذا أهمية في بعض الأحيان. في هذه الحالات، يمكن لوحدة التحكم الدقيقة استخدام عدة منافذ، أو قد توفر الشركة المصنعة جهازًا أحادي السلك (1-Wire) لإيقاف تشغيل ناقل البيانات أو إعادة تشغيله. وبالتالي، يمكن للبرمجيات استكشاف نطاقات ناقل البيانات التسلسلية . [ 7 ]
رموز عائلة ROM
ينتهي مُعرّف ذاكرة القراءة فقط (ROM) ذي 64 بت لكل جهاز من أجهزة 1-Wire برمز عائلة مكون من 8 بت. في معظم الحالات، يُخصص هذا البايت لرقم جزء واحد، لذا فإن قراءته من ناقل البيانات عادةً ما تكفي لتحديد الجهاز - على سبيل المثال، 0x10 (مقياس حرارة DS18S20)، [ 10 ] أو 0x01 (الرقم التسلسلي لشريحة DS2401)، [ 11 ] أو 0x2D (ذاكرة EEPROM سعة 1 كيلوبت DS2431). [ 12 ]
قام العديد من الأشخاص بإنشاء قواعد بيانات عبر الإنترنت لرموز العائلة من مجموعة واسعة من أجهزة الذاكرة والمصادقة والهوية ومراقبة البطارية بتقنية 1-Wire. [ 13 ]
مثال على التواصل مع جهاز
تم توليد الإشارات التالية بواسطة وحدة FPGA ، التي كانت بمثابة المتحكم الرئيسي في الاتصال بشريحة DS2432 ( ذاكرة EEPROM سعة 1 كيلوبت مزودة بمحرك SHA-1)، وتم قياسها باستخدام محلل منطقي. تشير الإشارة المنطقية العالية على مخرج 1-Wire إلى أن مخرج وحدة FPGA في وضع ثلاثي الحالات، وأن جهاز 1-Wire قادر على خفض مستوى ناقل البيانات. أما الإشارة المنخفضة فتشير إلى أن وحدة FPGA تخفض مستوى ناقل البيانات. مدخل 1-Wire هو إشارة ناقل البيانات المقاسة. عند ارتفاع زمن أخذ عينات المدخل، تقوم وحدة FPGA بأخذ عينات من المدخل لاكتشاف استجابة الجهاز واستقبال البتات.

أدوات التطوير
عند تطوير أو استكشاف أخطاء ناقل 1-Wire وإصلاحها، يُعد فحص إشارات الأجهزة أمرًا بالغ الأهمية. تُعد أجهزة تحليل المنطق وأجهزة تحليل الناقل أدوات تقوم بجمع الإشارات وتحليلها وفك تشفيرها وتخزينها لتسهيل عرض أشكال الموجات عالية السرعة.
انظر أيضاً
- SDI-12 ، نظام اتصالات سلكي أحادي للبيانات
- خط نقل أحادي السلك ، تقنية لنقل الطاقة الكهربائية باستخدام "سلك واحد" فقط بدون مسار سلك أرضي للعودة
- ذاكرة اللمس
مراجع
- ↑ "قراءة وكتابة أجهزة 1-Wire عبر واجهات تسلسلية" . ماكسيم إنتجريتد . تم الاسترجاع في 21-12-2022 .
- ↑ "نظرة عامة على تقنية السلك الواحد واستخداماتها" . شركة Analog Devices . مؤرشف من الأصل بتاريخ 27-06-2023 . تم الاطلاع عليه بتاريخ 21-07-2023 .
- ↑ مقدمة إلى حلقة جافا مؤرشفة في 2011-07-18 في Wayback Machine ، بقلم ستيفن إم. كاري ، JavaWorld.com ، 1 أبريل 1998.
- ↑ ""تفكيك واستكشاف موصل ماج سيف من أبل"" . rightTo.com . تم الاطلاع عليه بتاريخ 18-07-2017 .
- ↑ "اختراق نظام تحديد هوية شاحن أجهزة ديل المحمولة" . hackaday.com . تم الاطلاع عليه بتاريخ 30 نوفمبر 2015 .
- ↑ "دليل تعليمي عبر الإنترنت حول بروتوكول 1-Wire. سيوفر لك هذا الدليل نظرة عامة على بروتوكول 1-Wire، وكيفية تشغيل الأجهزة، وحلول التطبيقات . " مؤرشف من الأصل بتاريخ 2009-05-02 . تم الاطلاع عليه بتاريخ 2009-03-13 .
- 1 2 3 4 5 6 7
- "كتاب معايير iButton" . 2002.
- "نظرة عامة على iButton" (ملف PDF) . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 27 يناير 2009. تم الاطلاع عليه بتاريخ 18 ديسمبر 2008 .081218 maxim-ic.com
- ↑ "استخدام منفذ UART لتنفيذ وحدة تحكم رئيسية لحافلة 1-Wire" . شركة Analog Devices . 10 سبتمبر 2002. تم الاطلاع عليه بتاريخ 3 ديسمبر 2024 .
- ↑ "خوارزمية البحث بسلك واحد (ملاحظة تطبيقية 187)" (ملف PDF) . تم الاطلاع عليه بتاريخ 2 أكتوبر 2020 .
- ↑ "DS18S20 - مقياس حرارة رقمي عالي الدقة بسلك واحد (ورقة البيانات)" (ملف PDF) . شركة Analog Devices . تاريخ الاسترجاع: 25-04-2025 .
- ↑ "DS2401 – الرقم التسلسلي للسيليكون (ورقة البيانات)" (PDF) . شركة Analog Devices . تم الاطلاع عليه بتاريخ 25-04-2025 .
- ↑ "DS2431 – ذاكرة EEPROM أحادية السلك 1024 بت (ورقة البيانات)" . شركة Analog Devices . تم الاطلاع بتاريخ 25-04-2025 .
- ↑ "قاعدة بيانات رموز عائلة ون واير" . شركة جومتي للأمن . تم الاطلاع بتاريخ 25-04-2025 .
روابط خارجية
- جهاز سلك واحد
- الوصول إلى أجهزة 1-Wire وقراءة البيانات منها وكتابتها باستخدام UART
- استخدام منفذ UART لتنفيذ وحدة تحكم ناقل أحادي السلك
- زر iButton ، رابط زر iButton
- إرشادات لشبكات الأسلاك الطويلة الموثوقة ذات السلك الواحد
- اختيار وحدة التحكم الرئيسية المناسبة لتقنية 1-Wire للتطبيقات المدمجة
- OWFS — نظام ملفات 1-Wire لنظام لينكس
- دليل استخدام تقنية 1-Wire للمبرمجين والمهندسين
- تشغيل مستشعرات 1-Wire في نظام لينكس باستخدام OWFS
- شرح استخدام أردوينو بسلك واحد
- دليل لكتابة البرامج لـ 1-Wire/ MicroLan باستخدام Lazarus ، "دلفي المجانية".
- الحافلات التسلسلية
