ATtiny13 مقابل PLC ، أو كيفية الحصول على 14 I / O من وحدة تحكم 8 أقدام

صورة

قبل المتابعة ، أود أن أحذر قارئًا متحمسًا.

  1. ما أصفه لا يمكن القيام به لأسباب كثيرة ، سيتم الإشارة إليك بهذه الأسباب بفرح في التعليقات ، ولا أحثك ​​بأي حال من الأحوال على القيام بذلك. ولا أدعي بأي حال من الأحوال أن الجهاز الموضح أدناه يمكن أن يحل محل PLC حقيقي. تم كل شيء تم وصفه فقط من أجل إثبات أن ذلك ممكن تقنيًا ولا ينطبق على المعدات الحقيقية.
  2. إذا كنت تشعر بالمرض فقط من ذكر كلمة "اردوينو" ، فمن الأفضل ألا تقرأ. لقد أجريت جميع الإجراءات باستخدام وحدة التحكم في Arduino IDE ، الأمر أسهل بالنسبة لي. لكن لا شيء يمنع القيام بالشيء نفسه دون استخدامه.

أردت لفترة طويلة أن أكتب مقالًا عن تجاربي مع ATtiny13 ، لكنني كنت خائفًا في المقام الأول من الموقف من arduinoists على الموقع. علاوة على ذلك ، لقد كنت أعمل مع أجهزة التحكم لبضع سنوات فقط (شكرًا مرة أخرى على Arduino ، أوه ، أين كنت من قبل!). تعليقات على المقال علقت ثلاث عيون على المنشور ... وأظهرت أن الموضوع لا يزال مثيراً للاهتمام لعدد كافٍ من المستخدمين. بالمناسبة ، كان من المفترض أن يكون عنوان المقال "PLC on ATtiny13" ، لكن في نفس التعليقات ، أوضحوا لي بأدب على الطاولة أنه لا يمكن تسمية الجهاز الموصوف "PLC". حسنا لا ، لا.

ماذا نحتاج من المجلس التشريعي الفلسطيني؟


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

لا واجهات معقدة ، لا إشارات التناظرية. على / قبالة. هذا كل شيء. بالنسبة للجزء الأكبر ، يتم توفير حتى الحمل لمخرجات PLC من نفس التبديلات التي كانت حريصة جدا للتخلص منها. (الشيء المضحك هو أنه في كل مكان تقريبًا يتم استخدام مخرجات مرحل PLC ، والتي تعمل على تبديل المرحلات الخارجية ، والتي تعمل على تبديل المغناطيسات الكهربائية لموزعي الهيدروليك ... في بعض الأحيان يتم إضافة رابط إضافي من بداية التشغيل.) لذا ، ما الذي أحتاجه من PLC:

  1. المدخلات المنفصلة لمستوى إشارة من 24 فولت.
  2. مخرجات منفصلة مع جهد 24 فولت.
  3. اختبار الخوارزمية الداخلية وفقًا لنظام معين ، والتي يمكن تغييرها إذا لزم الأمر (بشكل رئيسي أثناء تصحيح الأخطاء).
  4. سرعة حوالي 50 مللي ثانية ، لم تعد هناك حاجة لاستبدال دوائر الترحيل.

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

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

نحن نتعامل مع المستويات


في البداية ، أردت استخدام optocouplers في المدخلات. يعرف أي شخص لديه دراية أو أكثر في مجال الإلكترونيات ، وخاصة الصناعية ، أنه لا يوجد الكثير من آلات optocouplers. سوف تخبرك التعليقات بالتفصيل عن السبب في أنه من المستحيل دون optocouplers. لكنني وزنت إيجابيات وسلبيات ، وقررت رفض. لذلك قد لا يقرأ البعض المزيد ، ثم يباشر على الفور كتابة تعليق.
لذلك ، لدينا إشارة إدخال 24 فولت ، أو 0 فولت في حالة عدم وجود إشارة. سيسمح ذلك باستخدام مستشعر موضع حثي بدون اتصال أو مفتاح حد اتصال تقليدي. من 24 فولت تحتاج إلى الحصول على الجهد من وحدة منطقية آمنة لوحدة التحكم. مقسم الجهد القديم الجيد يتكيف مع هذا قدر الإمكان.

صورة

يتم حساب المقاومات مع الأخذ في الاعتبار أنه بالنسبة لأي انحرافات لجهد الإدخال بمقدار زائد أو ناقص 20٪ من الجهد الاسمي عند إدخال المتحكم الدقيق ، يجب أن يكون هناك أكثر من جهد التبديل (عادة ما يكون نصف جهد وحدة التحكم) ، ولكن ليس أكثر من جهد التحكم ، فإننا نعتبره مساوياً لـ 5 فولت. مناسبة لأي وحدة تحكم في عائلة AVR. بالإضافة إلى ذلك ، يبلغ التيار المقدر من خلال الفاصل حوالي 7 مللي أمبير ، مما يقلل من احتمال حدوث تداخل ، وفي نفس الوقت لا يتم تحميل خرج المستشعر ومصدر الطاقة بشكل كبير. يعمل الصمام الثنائي 4.7 فولت zener على الحماية من زيادة التيار عند نفس التداخل. لا يزال هناك عدد كبير من جهات الاتصال ، يمكننا القتال معه برمجيًا أم لا ، إنه مجرد نموذج بالحجم الطبيعي. الآن لا يزال يتعين علي الإشارة إلى حالة المدخلات. وهنا يمكنك تطبيق شريان الحياة ، مما أسفر عن مقتل عصفورين بحجر واحد:

صورة

يؤدي المصباح الموجود على الدارة وظيفتين - إنه يعمل مثل الصمام الثنائي زينر ، ويقصر الجهد على 2.8 ... 2.9 فولت (فقط للمصابيح الزرقاء والبيضاء!) ، كما أنه يضيء. يجب أن أحذرك من أن الجهد في المصباح في بعض الحالات لا يكفي لتبديل دخل وحدة التحكم! عند استخدام العديد من مدخلات جهاز التحكم ، فإننا بذلك نبسط عملية التثبيت ونحفظ عدة ثنائيات زينر. من خلال زيادة جهد الإدخال بسلاسة ، يمكنك ملاحظة أن لحظة اشتعال مؤشر LED ولحظة تبديل الإدخال لا تتزامن قليلاً. لكن هذا لا يزعجنا كثيرًا ، حيث يجب ألا يكون هناك مستويات وسيطة عند الإدخال ، فقط 0 V أو 24 V. وبطبيعة الحال ، في هذه اللحظة يجب أن يكون لديك على الأقل الحد الأدنى من البرامج الثابتة للاختبار لإدخال واحد وإخراج واحد في وحدة التحكم.

الآن تحتاج إشارة الخرج من وحدة التحكم أيضًا إلى تكييفها لمدة 24 فولت ، مع الأخذ في الاعتبار أن السلك الشائع ، وهو أيضًا ناقص ، شائع في جميع مرحلات الإخراج. تحتاج هنا إلى 2 الترانزستورات و 2 مقاومات:

مخطط
صورة

في الواقع ، ستكون هناك حاجة إلى مقاومة أخرى ، وصمام ديود وقائي موازٍ للتتابع ، لكن هذا لا يتعلق بذلك. في البداية اعتدت هذه الدائرة. ولكن في مرحلة ما ، لفتت الانتباه إلى optocouplers ، وهو ما رفضته في البداية.
الشخص الذي يزعجنا سوف يساعدنا

مخطط
صورة
نحن ننظر إلى معلمات optocouplers من قبل أوراق البيانات: PC817C أرخص وأرخص من الإخراج يسمح لك بالتبديل U o: 35 V: I o: 50 mA. تستغرق هذه المرحلات المتصلة بـ PLC في مكاننا (في المؤسسة) ما يصل إلى 45 مللي أمبير. بدون سهم ، ولكن مناسبة تماما. معظم المرحلات الصغيرة الحجم في 24 فولت تسحب على الإطلاق ما يصل إلى 15 ... 20 مللي أمبير. في النهاية ، يمكنك شراء optocoupler أغلى ، إذا كنت في حاجة إليها حقًا ، فهناك حاليًا ما يصل إلى 80 مللي أمبير ، والجهد يصل إلى 60 فولت. نحن مناسبون للتخطيط و 817. لكي لا تتعلم من أخطائك ، أحذرك من أنه للحصول على أقصى قدر من المخرجات الحالية من خلال optocoupler LED ، تحتاج إلى تمرير أكثر من 7 مللي أمبير.

حسنا ، مرة أخرى ، أذكر الإشارة. لعرض حالة المخرجات ، نضيف مؤشر LED في سلسلة مع LED optocoupler ، لا يزال لدينا أكثر من 3 فولتات متوقفة هناك. وقد حان الوقت لرسم الصمام الثنائي واقية قبل حرق optocoupler. بالمناسبة ، لم أتمكن من العثور على طريقة لاختيار الصمام الثنائي الواقي ، اعتمادًا على معايير التتابع. من ناحية ، يجب أن يكون نابضًا ، من جهة أخرى ، عالي الجهد. وعلاوة على ذلك ، يمكن وضعها بالتوازي مع الترانزستور ، أيهما أفضل؟ الممارسة تبين أن الصمام الثنائي بما فيه الكفاية منخفضة الطاقة IN4148 في هذه الحالة ، ولكن أود تبرير نظري.

مخطط
صورة

يشار إلى المقاوم 220 أوم مع حساب مرة أخرى على LED الأزرق أو الأبيض ، إذا وضعت باللون الأحمر ، فإن التيار في الدائرة من 3.5 مللي أمبير سيزيد إلى 9 مللي أمبير ، يجب أن يؤخذ هذا في الاعتبار.

قليلا عن البرمجة


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

صورة

يجمع في كود مثل هذا:

bool _k1 = 0;
void setup()
{
pinMode(1, INPUT);
pinMode(2, INPUT);
pinMode(3, OUTPUT);
}
void loop()
{
_k1 = (((((!(digitalRead (1)))) &&((digitalRead (2))))) || ((((!(digitalRead (1)))) &&(_k1))));
digitalWrite (3, _k1);
}

- - , . FLProg , «» . , . , pin – , . ATtiny13, : Attiny13 Attiny13a Arduino IDE , : FLProg ATtiny13 ( ), , , ATmega168. FLProg , ATtiny13, . Arduino IDE , .


? ATtiny13, 5 , . , 6 , , , : ? RESET.

, 6, . ?

:

image

, . . , . .

, 50 . , 50 , , . , .

0 2,8 , , . , , 1,1 ( ) 2,9 , 4 . , .

. , , . , , 5 , -- , . 3 ( ) 680 . , . , , .

? 50 , 1 , 50 . , 1 , . , .

, . , .

6+6=12 -, 2?

image

, ? , ) 4 , , , . 0 , , 2,8 , ( ). 24, 0, , 2 – 0,93 1,87 . , . Arduino IDE , ATtiny, . , .

, , 6 10 (!) ATtiny13 ( ). , , . , «» ATtiny. , ATmega8, . :-)

, .

, , , . I/O . , (8/6) , , « ».

, , , «», . .

P.S. , : « ?»

image

Source: https://habr.com/ru/post/ar443978/


All Articles