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

   

mared83
:: مهندس متواجد ::
تاريخ التسجيل: Apr 2007
الدولة: Syria -Aleppo
المشاركات: 59
نشاط [ mared83 ]
قوة السمعة:
قديم 23-07-2010, 03:54 PM المشاركة 9   
افتراضي



نكمل



هذه صورة لسوكت منفذ الطابعة سوف نستخدم منها فقط أربعة أرجل . الرجل رقم (2) وهي من مخارج منفذ الطابعة سوف توصل بالنقطة (14) على اللوحة المطبوعة وبالتالي يكون المخرج (2) هو المكلف بالبيانات.
الرجل رقم (3) سوف نوصلها مع النقطة (11) على اللوحة وبالتالي تكون هي المكلفة بتوليد نبضات الساعة
الرجل رقم (4) سوف نوصلها مع النقطة (12) على اللوحة وبالتالي تكون هي المكلفة بإظهار البيانات على المخارج في الوقت المناسب
بقي لدينا الأرضي GND يمكننا أن نصل أي رجل من الرقم (18 ............حتى 25) من منفذ الطابعة مع النقطة GND على اللوحة المطبوعة
يمكن استخدام أي كابل يحوي بداخله أربعة أسلاك أو أكثر في عملية التوصيل. أنا استخدمت كابل الشبكة الذي يحوي داخله ثمانية أسلاك .
وبالنسبة لجهد التغذية فيمكن استخدام بطارية بجهد 6V أو 9V أو يمكن استخدام علبة تغذية بالتيار المستمر بقيم الجهود السابقة.
الخطوة القادمة سوف تكون عن البرمجة

اعلانات

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,892
نشاط [ سعيد قادر ]
قوة السمعة:
قديم 23-07-2010, 10:21 PM المشاركة 10   
افتراضي


اكمل بارك الله فيك

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

sofien.j
:: مهندس متواجد ::
تاريخ التسجيل: Oct 2009
الدولة: tunisia
المشاركات: 83
نشاط [ sofien.j ]
قوة السمعة:
قديم 24-07-2010, 08:50 PM المشاركة 11   
افتراضي


نحن نتابع ارجوك اكمل لنا الشرح


الصورة الرمزية عيال
عيال
:: مهندس ::
تاريخ التسجيل: Jul 2006
المشاركات: 21
نشاط [ عيال ]
قوة السمعة:
قديم 24-07-2010, 08:57 PM المشاركة 12   
افتراضي


حياك الله وعاشت يداك.......
*_*_*_*_*_*_*_*_*_*_*_*_


الرجاء اكمال الموضوع (سعد القيسي)


mared83
:: مهندس متواجد ::
تاريخ التسجيل: Apr 2007
الدولة: Syria -Aleppo
المشاركات: 59
نشاط [ mared83 ]
قوة السمعة:
قديم 24-07-2010, 11:14 PM المشاركة 13   
افتراضي


السلام عليكم...
قبل أن أكمل الشرح أود أن اشكر جميع المتابعين للموضوع وأتمنى أن استطيع أن أقدم شيء يفيد أمتي
وأدعو الله أن يقدر لي إكمال الموضوع بشكل مفصل .
نكمل الموضوع:
وصلنا إلى المرحلة الثالثة وهي مرحلة البرمجة.
ملاحظة: الشرح سيكون موجه للمبتدئين
نستخدم لغة الفيجوال بيسك Visual Basic 6.0 من اجل تصميم برنامج التحكم بالأجهزة
تمتاز لغة الفيجوال بسهولتها وبأنها ممتعة . حيث تقسم عملية تصميم برنامج ما بلغة الفيجوال إلى قسمين أساسيين
1- تصميم الواجهة: وهنا يمكن للمبرمج استخدام مهاراته الفنية في طرقة توزيع العناصر على واجهة البرنامج.
2- كتابة البرنامج: وهي التي سوف نحدد من خلالها طريقة عمل كل أداة موجودة في برنامجنا.
سوف نبدأ بالمرحلة الأولى وهي تصميم الواجهة:
نفتح برنامج Visual Basic 6.0كما في الصورة التالية ونختار من مربع الاختيار مشروع جديد ونضغط على Open

سوف يفتح البرنامج ونشاهد واجهة برنامجنا Form1 لكنها فارغة كما في الصورة

من مربع الأدوات على يسار الشاشة نختار الأداة Label حيث لو نقرنا فوقها مرتين تنتقل واحدة منها لواجه برنامجنا

نضيف 16 عنصر Label إلى واجهة برنامجنا حيث ستمثل كل واحدة منها احد الأجهزة التي سوف نتحكم بها.

نضيف بعض اللمسات الفنية كما يلي:
نحدد جميع عناصر Label التي على الواجهة . بعد ذلك نذهب إلى مربع الخصائص على يمين الشاشة ونجري التعديلات التالية:
القيمة الخاصية
400Width
400Height
0Caption
1Border style
2Alignment
ثم نرتب العناصر كما نشاء . انا رتبتها كما في الصورة التالية:



نضيف الآن 5 أزرار Command ومؤقت واحد كما في الصورة التالية:




نعدل بالخاصية Caption للأزرار ونكتب عليها ما يلي:




الآن انتهينا من المرحلة الأولى لكن قبل الانتقال للمرحلة الثانية يجب أن نضيف شيء اسمه Module لكي نستطيع التحكم بمنفذ الطابعة . نقوم بهذه العملية كما هو موضح بالصورة التالية.



نتأكد أن الأداة Module ظهرت كما في الصورة التالية:





الآن نحدد مجلد جديد على احد الأقراص لنحفظ فيه المشروع . ثم نحفظ المشروع . حيث سوف يطلب منا البرنامج حفظ ثلاث أشياء هي الواجهة Form والمشروع Project و المودول Module





وغدا نكمل الخطوة الأخيرة بعون الله


abnidal
:: مهندس متميز ::
تاريخ التسجيل: Nov 2006
الدولة: مصر
المشاركات: 381
نشاط [ abnidal ]
قوة السمعة:
قديم 25-07-2010, 10:42 AM المشاركة 14   
افتراضي السلام عليكم


مشكور اخي وشرح سلس للغاية ومفهوم ونتمنى اكمال الموضوع حتى النهاية
والميزة الرائعة انك تحاول ايصال المعلومة بكل يسر.....

جزاك الله خيرا وادامك الله واسكنك فسيح جناته ورفع الامة بامثالك ........


mared83
:: مهندس متواجد ::
تاريخ التسجيل: Apr 2007
الدولة: Syria -Aleppo
المشاركات: 59
نشاط [ mared83 ]
قوة السمعة:
قديم 25-07-2010, 02:07 PM المشاركة 15   
افتراضي


بسم الله والصلاة والسلام على رسول الله
اشكر جميع الأخوة على الكلام الطيب والتشجيع الرائع.
قبل الدخول في المرحلة الأخيرة يجب معرفة بعض الأمور وهي :
حتى نستطيع التحكم بمنفذ الطابعة LPT يجب أن نضيف مكتبة ربط اسمها inpout32.dll إلى برنامجنا سنجدها على الرابط التالي:
http://www.4shared.com/file/NFjynYAE/inpout32.html

ننسخ الملف بعد فك الضغط عنه ونضعه في المجلد الذي حفظنا به المشروع وتنتهي المشكلة.
الأمر الثاني : هو أن مخارج منفذ الطابعة تكون جميعها في حالة 1 منطقي أي أنها تعطي جهد قدره 5V ومهمتنا هي أننا سوف نجعلها جميعها 0 منطقي في بداية عمل برنامجنا .
دعونا نتعرف على بعض الكودات التي سوف نستخدمها:
الأمر Out &H378, 0 يجعل جميع المخارج 0 منطقي يكون الجهد عليها 0 V
يمتلك منفذ الطابعة ثمانية مخارج تبدأ من الرجل رقم 2 وتنتهي بالرجل رقم 9
إن أردنا أن نخرج على المخرج الأول قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي Out &H378, 1
إن أردنا أن نخرج على المخرج الثاني قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي Out &H378, 2
إن أردنا أن نخرج على المخرج الثالث قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي Out &H378, 4
إن أردنا أن نخرج على المخرج الرابع قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي Out &H378, 8
إن أردنا أن نخرج على المخرج الخامس قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي : Out &H378, 16
إن أردنا أن نخرج على المخرج السادس قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي : Out &H378, 32
إن أردنا أن نخرج على المخرج السابع قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي : Out &H378, 64
إن أردنا أن نخرج على المخرج الثامن قيمة 1 منطقي أي جهد قدره 5V نكتب الأمر التالي Out &H378, 128
الآن لو أردنا أن نخر ج 1 منطقي على المخرج الأول والثاني معا نكتب الأمر التالي: Out &H378, 3
و لو أردنا أن نخر ج 1 منطقي على المخرج الأول والثاني والثالث معا نكتب الأمر التالي: Out &H378, 7
أي أننا نكتب بعد الفاصلة مجموع الأرقام المكتوبة بعد الفاصلة في جميع الأوامر للمخارج المطلوبة .
وان أردنا أن نجعل المخرج الأول 0 والثاني والثالث 1 نكتب الأمر التالي: Out &H378, 6
أتمنى أن يكون الشرح واضح ومستعد للإجابة عن الأسئلة .
نعود الآن لبرنامجنا.
نحن نستخدم في مشروعنا ثلاث مخارج فقط هي :
المخرج الأول (الرجل رقم 2 ) وسوف تكون مهمته إعطاء البيانات ( الشخص الذي يوزع البنادق ) وهو مربوط مع النقطة 14
المخرج الثاني( الرجل رقم 3 ) ومهمته توليد نبضات الساعة ( يمثل طابور الجنود) وهو مربوط مع النقطة 11
المخرج الثالث (الرجل رقم 4 ) ومهمته إظهار النتائج وتجديدها كل مرة ( قائد الجنود) وهو مربوط بالمأخذ رقم 12
فكرة عمل البرنامج:
الفكرة الأساسية في عمل برنامجنا تكون كالتالي:
سوف نجعل البرنامج يقرأ القيمة المكتوبة في كل أداة Label وذلك بشكل متتالي من Label1 حتى Label16 فمثلا
لو كانت القيمة في Label1 هي 0 هذا يعني أن الجهاز الأول مطفئ . ومن اجل إرسال هذه المعلومة لدارتنا الالكترونية نقوم بما يلي:
نجعل المخرج الأول 0 منطقي أي ( نجهز بندقية فارغة) ثم نجعل المخرج الثاني 1 منطقي (ندفع جندي ليأخذ البندقية الفارغة)
أما إذا كانت القيمة المكتوبة في Label1 هي 1 هذا يعني أن الجهاز الأول شغال . ونرسل هذه المعلومة كما يلي:
نجعل المخرج الأول 1 منطقي أي ( نجهز بندقية مملوءة) ثم نجعل المخرج الثاني 1 منطقي (ندفع جندي ليأخذ البندقية المملوءة)
نكرر العملية السابقة مع باقي الأدوات حتى أخر واحدة .
بعد الوصول وفحص قيمة آخر واحدة أي Label16 نعطي الأمر بإظهار القيم على جميع المخارج في الدارة وذلك بجعل المخرج الثالث 1 منطقي
ثم 0 منطقي وهو ما شبهناه بعملية إطلاق النار
يتبع.........


التعديل الأخير تم بواسطة : mared83 بتاريخ 25-07-2010 الساعة 02:10 PM

الصورة الرمزية iiirrr
iiirrr
:: عضو فضي ::
تاريخ التسجيل: Jul 2010
الدولة: العراق
المشاركات: 610
نشاط [ iiirrr ]
قوة السمعة:
قديم 25-07-2010, 02:47 PM المشاركة 16   
افتراضي


جهد رائع .



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