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

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

killer
:: مهندس ::
تاريخ التسجيل: Feb 2007
المشاركات: 23
نشاط [ killer ]
قوة السمعة:0
قديم 17-01-2017, 01:48 PM المشاركة 1   
ha مساعدة في كود الستيبر موتور Twitter FaceBook Google+



السلام عليكم ورحمة الله
اخوتي الاعزاء كنت قد كتبت كود للتحكم بمحرك خطوي عن طريق المتكاملة A4988 مع المايكرو كونترولر pic16f676
كود:
int x=0 ;
int a=0 ;
void main() {
TRISc = 0 ;
portc = 0 ;
 do{
    for(x=0;x<300;x++,portc.f1=0){
        portc.f0=1;
        delay_us(1900);
        portc.f0=0;
        delay_us(1900);
        }

    for(a=0;a<300;a++,portc.f1=1){
        portc.f0=1;
        delay_us(1900);
        portc.f0=0;
        delay_us(1900);
        }

  }
while(1);
}
هنا ال portc.f1 للتحكم بالاتجاه و portc.f0 للتحكم بالنبضات الداخلة على المتكاملة
المشكله ان المحرك يدور في الاتجاهين بشكل صحيح لكن بمسافة أكبر في احد الاتجاهين (في اتجاه المتغير x يقطع مسافة أكبر من المسافة في اتجاه المتغير a ) مع انه نفس القيم للاتجاهين
فهل يوجد مشكلة بالكود ؟ او لو من الممكن كود تحكم بالمحرك بنفس الفكرة بحيث عند زيادة قيمة المتغير x , a تزداد المسافة المقطوعة
ولكم مني جزيل الشكر

اعلانات
إضافة رد

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

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

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


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

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