قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:328
قديم 30-07-2013, 11:40 PM المشاركة 1   
افتراضي التعامل مع المحركات بلغة Basic والمترجم Proton : Twitter FaceBook Google+



التعامل مع المحركات بلغة Basic والمترجم Proton :
مقدمة :
الدالة PWM :
الصيغة العامة :
كود:
Pwm Pin, Duty, Cycles
الغرض :
توليد إشارة تعديل عرض النبضة على الطرف Pin ، ثم إعادة الطرف إلى حالة الدخل .
العوامل :
Pin : ثابت يمثل طرف المنفذ والذى يتم تحديده كخرج لإشارة تعديل عرض النبضة .
Duty : متغير أو ثابت (0-255) أو تعبير والذى يحدد المستوى التناظرى المطلوب (0-5 volts) .
Cycles : متغير أو ثابت (0-255) والذى يحدد عدد الدورات بالخرج .
ملحوظة :
عن طريق PWM يمكن توليد جهود تناظرية (0-5V) من خلال توصيل طرف الخرج بمقاومة توالى ومكثف كما فى الشكل التالى :



ونظرا لأن المكثف يتم تفريغه تدريجيا ، لذلك يجب تنفيذ PWM دوريا لتحديث الجهد التناظرى .
تعديل عرض النبضة PWM عبارة عن قطار من الأحاد (1s) والأصفار (0s) والنسبة بينهما تتناسب مع قيمة "الخدمة" duty التى تحددها . إذا كانت قيمة duty بصفر (0) ، عندئذ يكون الطرف عن الحالة المنخفضة (0) بصفة مستمرة ، وإذا كانت قيمة duty255 ، عندئذ يكون الطرف عند الحالة المرتفعة بصفة مستمرة ، وقيم duty بين (0) و 255 تكون النسبة بين الآحاد والأصفار كالنسبة duty/255 . على سبيل المثال ، إذا كانت قيمة duty هى 100 ، فإن النسبة بين الآحاد و الأصفار تكون 100/255=0.392 ، أى 39% تقريبا .
عند استخدام مثل هذا الخرج لشحن مكثف فإن الجهد عبر المكثف يساوى : (duty / 255) * 5 ، لذلك عند duty = 100 يكون جهد المكثف (100 / 255) * 5 = 1.96 volts .
هذا الجهد سوف يهبط كلما تم تفريغ المكثف خلال الحمل ، معدل التفريغ يتناسب مع التيار المسحوب بواسطة الحمل ، فكلما زاد التيار كلما كان التفريغ أسرع . يمكنك تخفيض هذا التأثير فى البرنامج عن طريق إنعاش شحن المكثف باستخدام الأمر PWM بشكل دورى ، أو يمكنك تعزيز buffer الخرج باستخدام مكبر عمليات والاستغناء عن استخدام PWM بشكل دورى .

مشروع التحكم فى سرعة محرك التيار المستمر DC motorعن طريق تعديل عرض النبضة PWM :

اعلانات

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:328
قديم 30-07-2013, 11:43 PM المشاركة 2   
افتراضي


مشروع التحكم فى سرعة محرك التيار المستمر DC motorعن طريق تعديل عرض النبضة PWM :
التحكم فى عرض النبضة PWM له العديد من التطبيقات ، على سبيل المثال التحكم فى إضاءة ليد والتحكم فى الإضاءة الخلفية لشاشة LCD و تغيير سرعة محرك التيار المستمر ، وهو ما سوف نتناوله هنا .
هذا المشروع يتحكم فى سرعة محرك تيار مستمر جهد تغذيته 5V ( محرك لعبة أطفال ) ، وهو يعمل بالطريقة التالية :
· عند البداية يبدأ المحرك الدوران بسرعة متوسطة (FREQ = 125) .
· عند الضغط على المفتاح الضاغط "S" يتم تزايد السرعة بمضاعفات القيمة "25" حتى تصل السرعة إلى الحد الأقصى (FREQ = 250 ) ، وإذا استمر بقاء الضغط على نفس المفتاح فسوف يضىء الليد ، للدلالة على الوصول إلى حد النهاية .
· عندئذ يتم الضغط على المفتاح الضاغط "B" فيؤدى إلى تناقص السرعة بنفس المعدل
(FREQ = 25) ، وإذا استمر الضغط على هذا المفتاح فسوف يضىء الليد .
إذا لم يكن لديك محرك يمكنك توصيل ليد على التوالى مع مقاومة 330 أوم وملاحظة تزايد ونقصان شدة إضاءة الليد .
طريقة استخدام تعديل عرض النبضة كما يلى


كود:
PWM portB.0, 127, 60 ; means generate 60 pulses port B.0 with duty50%

إشارة خرج الميكروكونترولر تكون بالشكل التالى :



الدائرة الكهربية :

ملحوظة :
الترانزستور TIP110 يمكنه التعامل مع جهد حتى 100</SPAN> volts DC وتيار 8</SPAN> Amps ، فى حالة الرغبة فى استخدام محرك تيار متردد أكبر ، ينصح باستخدام عازل ضوئى فى منفذ خرج الميكروكونترولر PIC .

البرنامج :
كود:
Device = 16F628A Xtal = 4 ' Define the oscillator For a 4MHz crystal. All_Digital = true Dim up_button As PORTB.1 ;name for the pin B1 Dim down_button As PORTB.2 ;name for the pin B2 Dim LED As PORTB.3 ;name for the pin B3 Dim FREC As Byte ;Variable FREC size 255 Dim flag As Bit ;Variable flag ,1 Bit FREC = 125 ;initial value for variable FREC High LED ;LED light to know that already started DelayMS 500 ;Wait 1/2 second Low LED ;LED off PROG: PWM PORTB.0,FREC,30 ;PWM out 30 cycles of 125 useful signal Low LED ;LED off If up_button =0 Then up ;pressing the S button to go up If down_button =0 Then down ;pressing the B Button To go down flag =0 ;flag loaded with zero GoTo PROG up: If FREC > 249 Then notice ;If it exceeds 249 then go to notice If flag = 1 Then PROG ;if flag is 1 go to PROG High LED ;led ON flag=1 ;flag loaded with one FREC = FREC +25 ;add 25 to the FREQ Variable GoTo PROG ;go to prog down: If FREC < 26 Then notice ;if FREC < 26 then go to notice If flag = 1 Then PROG ;If flag is 1 go To PROG High LED ;led on flag=1 ;flag loaded with one FREC = FREC -25 ;subtract 25 to the variable friction GoTo PROG ;go to prog notice: High LED ;led on GoTo PROG ;go to PROG End

التحويل من رقمى إلى تناظرى D/A باستخدام مكبر العمليات LM358 :

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:328
قديم 30-07-2013, 11:44 PM المشاركة 3   
افتراضي


التحويل من رقمى إلى تناظرى D/A باستخدام مكبر العمليات LM358 :
يمكنك عمل محول من رقمى لتناظرى من أجل تعديل عرض النبضة بمقاومة ومكثف ، ولكن من أجل الأداء الأفضل يتم استخدام مكبر عمليات لهذا الغرض ، يمكن تحقيق جهد مدى جهد أكبر ( حتى 32V) ، ولكن هنا وبغرض التجربة سوف يتم توصيل 5V فقط من نفس المصدر الذى يغذى PIC . فى حالة قيمة duty تساوى 255 سوف يكون خرج مكبر العمليات 5V ، وفى حالة قيمة duty تساوى 127 يكون الخرج 2.5V وبالتالى نحصل على خرج تناظرى فى المدى 0-5V .


الدائرة الكهربية :




سوف تحتاج إلى مقياس جهد لقساس مستوى الجهد عند الخرج أو ليد ومقاومة توالى 330 أوم ومراقبة الإضاءة ، ويتم استخدام نفس البرنامج السابق .

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 12:54 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2024