ammarroza

صناعة وبرمجة الروبوت

108 ردود في هذا الموضوع

السلام عليكــم ورحمـة الله وبركاتــه ،،

لاحظت منذ فترة اهتمام الكثير من الناس في الروبوت

وكثرة طلبهم كمشاريع تخرج

وهذا ما دفعني لان اعود للاهتمام قليلا بالموضوع, وذلك لشرح بعض الامور والمناقشة فيها قبل ترك الموضوع نهائيا

ولذلك ساحاول ان اشرح بعض الامور ونتناقش فيها, ونتعلم جميعا, ولكن احب ان اوضح بعض الامور بالبداية

انا مش مهندس, ولذلك اعذروني ان اخطأة بالنسبة لبعض الامور الهندسية لان هذه مجرد هواية

ثانيا انا هنا لنتناقش, وليس مجرد درس بالروبوت وغيره, واتمنى ان نجد من يهتم بالموضوع ليستمر,

واتمنى من الاخوان (محمد نور, حريف برمجة) معاونتي هنا وكل من له علم لتعم الفائدة

اذا بدئنا بالروبوت كشرح عنو بشكل عام, فان الموضوع لن ينتهي, لانه كبير جدا, ويشمل الطائرات, والاليين على شكل البشر وغيرهم

ولذلك سيتركز حديثي عن الروبوتات الشبيهة بالسيارات, او التي تعمل بنفس المبدأ.

القسم الاول الهيكل body

- سابدأ ان شاء الله بشرح بسيط عن كيفية عمل السيارات - الالعاب الاسلكية

- كيفية الاستفادة من بعض اجزاء الالعاب في بناء الروبوت الخاص بك

- كيفية بناء الروبوت من الصفر باستخدام الادوات والاجزاء الخاصة بذلك

هذا كله سيكون موضوع عام, يهتم بالهيكل فقط

القسم الثاني منافذ الحاسب الآلي computer ports

- parallel port

- serial port

- usb

لن نتحدث كثيرا هنا لوجود اشخاص بذلوا جهد كبير في ذلك في المنتدى, ولذلك سيكون هنالك بعض الروابط الى تلك المواضيع لعدم تكرار الحديث عنها

القسم الثالي التحكم control

control using radio wave

blutooth

wireless lan

control devices

القسم الرابع البرمجة

using c#.net

control from computer

control from PDA

القسم الخامس الادوات tools

cameras

sensors

arms

هذا هو ما اقترحه كبداية, واذا وجد اي اقتراحات اخرى فيرجى كتابتها للتعديل

وسأبدأ قريبا ان شاء الله

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكــم ورحمـة الله وبركاتــه ،،

- سابدأ ان شاء الله بشرح بسيط عن كيفية عمل السيارات - الالعاب الاسلكية

ان مكونات الالعاب الاسلكية بسيط جدا

plastic buddy هيكل من البلاستك

motors connected to wheels محركات متصلة بالعجل

controllers المتحكم

power from battery كهرباء من البطاريات

remote control

post-23774-1247741598_thumb.jpg

بالنسبة للماتورات motor في السيارات فيوجد ثلاثة انواع

electric motor

stepper motor

Servo or Servomechanism

electric motor

وهو المعروف لدينا, المسمى الدينامو والذي له سلكان + و -

عند توصيل التيار الكهربائي فيه فانه يدور في اتجاه

وعند عكس التيار الكهربائي فانه يدول في الاتجاه الآخر

ملحوظة: حديثنا هنا عن DC motor ولمزيد من المعلومات عنه howstuffworks

post-23774-1247741405_thumb.jpg

stepper motor

هو محرك كهربائي يستخدم في الآلات التي تحتاج الى دقة في التحكم في محركاتها.

post-23774-1247741571_thumb.jpg

و من أهم ميزات هذا النوع من المحركات انه يمكن التحكم في عدد و سرعة دوراته و زاوية التوقف بدقة, كما انه عادتا ما يكون له عزم في الدوران.

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

ويتحكم به عن طريق ارسال binary data, ولذلك نلاحظ خروح 4 او 5 اسلاك منه.

وإذا أردنا تحريك المحرك في اتجاه معين نرسل له :(0001 - 0010 - 0100 - 1000) .

وإذا أردنا تحريك المحرك في الاتجاه المعاكس نرسل له :(1000 - 0100 - 0010 - 0001) .

0001

post-23774-1247741447_thumb.png

0010

post-23774-1247741455_thumb.png

0100

post-23774-1247741462_thumb.png

1000

post-23774-1247741471_thumb.png

ويوجد عدة انواع من التحكم الذي يعتمد على الدقة وعلى كمية اهتزاز المحرك, ولكن هذا الموضوع يعتمد على data المرسلة اليه.

Servo or Servomechanism

هو محرك يستخدم في تحريك الاشياء مسافة معينة باتجاهين, مثل عجال السيارة الامامية للدوران لليمين واليسار, ومثل اجنحة الطائرة للتوجيه.

post-23774-1247741519_thumb.jpg

وهذه المحركات تكون متصلة بعجال السيارة, فيمكن ان تجد محرك واحد لل 4 عجال, ويمكن ان تجد محرك واحد للعجلان الخلفيان, ويمكن ان تجد محركان فقط على العجلان الخلفيان, ويمكن ان تجد على كل عجل محرك, وهذا يعتمد على القورة المطلوبة والعزم وكمية الطاقة المقدمة والمستهلك.

controllers

عادتا ما يكون يعتمد على radio wave, وعادتا ما يستخدمون fm radio wave وسيتم شرحه لاحقا, ولكن عند استقبال الاشارة يقوم ال controller بارسال الطاقة الى الماتور المطلوب تحريكه فتتحرك السيارة.

وبالنسبة للبطارية هي مجرد مصدر للطاقة, والذي سنربطه لاحقا بالخلايا الشمسية لشحنه, واذكر بالروبوت الذي صنعته (موجود بالرابطة التالية) انني استخدمة بطاريتان

12 v

1.7 amp

وهذا ما ادى الى احتراق الكنترولير والتاثير على الماتورات, لان ال amp عالي.

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

كان لى تجربة مع RC car من حوالى 6 شهور انتهيت فى الاخر انى استبدلت ال H-bridge بواحدة من عندى ذات خواص لمرور تيار اعلى واضافة فرامل وما الى ذلك

كنت اريد فى الأول إستبدال ال Decoder وكان من TX-2B و RX-2B اتيت وكنت اريده إستبداله ب microcontroller pic يقوم بنفس العملية لكن بسبب ال noise العالية الموجوده بخط الارسال لم تنجح العملية

المهم الفكرة كلها لهذا ال decoder انها تقوم بأرسال اشارات معلومة التردد و ال duty cycle والعدد ثم يعد اشارات بعرض اخر بعدها وكل عدد يمثل function معينه لهذا ال decoder وكنت اريد باستخدام المتحكم بزيادة عدد الوظائف لكن كما قلت لم تنجح بسبب الضوضاء لم اتوصل لفكرة للتخلص منها استخدمت مكثف لكنه اثر على الاشارة الاصلية

متأسف لأنى لم ادعم الشرح ببعض الصور لضيق الوقت لكن يمكنك تحميل ال data sheet لل decoder لتعرف ما أعنيه وبعد ذلك كش شئ سهل فى هذا الموضوع

لكن لا تستخدم stepper فى الروبوت العادى ولا سيرفو اذا كانت الدقة غير مهمة

والسلام عليكم

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكــم ورحمـة الله وبركاتــه ،،

شكرا اخي "حريف برمجة" على المرور

لقد قمت بحل هذه المشكلة باستخدام 8 relays والتي سأشرحها لاحقا

اما بالنسبة لل decoder

فهذه صورة للاخوان ليفهموا ما تحدث عنه الاخ "حريف برمجة" قبل قليل

post-23774-1247750573_thumb.jpg

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

وفقك الله لما تريد تقديمه واستمر باسلوبك الواضح والبسيط بنفس الوقت اتوقع انك ستقدم شيء تفيد به ابناء الامة من الذين يطلبون ذلك

وسنكون داعمين لعملك بالكلمة وكل تقدير

وفقك الله ثانية

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
12 v

1.7 amp

وهذا ما ادى الى احتراق الكنترولير والتاثير على الماتورات, لان ال amp عالي

اخي هذه معلومة خاطئه ، تيار البطارية لم يحرق مكوناتك ، انما الفولتيه العالية هي اللي حرقتهم ، تيار البطارية هذا معناه انك تقدر " تمرر شحنات الكترونية بمقدار 1.7 كولوم في الثانية 1.7 Amp"

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اعتقد ان كلامك صحيح اخ احمد

ولكن الدائرة كانت متصلة ب ماتوران

والروبوت وصلته على 6 ماتورات

وهذا ما ادى الى مرور amp اعلى مما تتحمله اللالكترونيات في الدائرة

كما ان الدائرة الالكترونية كانت بالاصل تعمل على 12V

ولكن المهندسين ادرى مني

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكــم ورحمـة الله وبركاتــه ،،

- كيفية الاستفادة من بعض اجزاء الالعاب في بناء الروبوت الخاص بك

يمكننا الاستفادة من بعض اجزاء السيارات في صناعة الروبوت, فيمكن ان نأخذ جزء واحد او عدة اجزاء وهي:

motors

weels

controller

وعادتا لا نستفيد من buddy لان سطحه غير مستوي (اذا اردنا تركيب خلايا شمسية او ذراع)

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

ونحن نريد صناعة روبوت لمهمة معينة, مش بس سيارة بتمشي وخلص

ولذلك انصح دائما بان يتم صناعة هيكل الروبوت يدويا, وذلك ليم اتخاذ الشكل المناسب لنا, سواء كان الحجم او الشكل او مادة الصنع (خشب, معدن, فايبر, وغيره)

فيمكننا ان نأخذ ال controller and wheels ونغير المحركات, او يمكننا ان نضع محرك يعمل بالبترول petrol اذا احتجى للسرعة والقوة

post-23774-1247858304_thumb.jpg

وبالنسبة لل controller سأتحدث لاحقا عن كيفية وصله بالكمبيوتر وبرمجته, او حتى تبديله بالتقنيات الحديثة

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

كيف وصلت المواتير مع الcontroller ?

ما نوع الدائرة ؟ و كم تيار تتحمله ؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
كيف وصلت المواتير مع الcontroller ?

parallel

ما نوع الدائرة ؟ و كم تيار تتحمله ؟

لا اعلم لانها كانت لسيارة العاب rc toy

ولذلك اعتقد انها لم تتحمل

شكرا للمشاركة لانني اعتقد ان لا احد مهتم بالموضوع

تم تعديل بواسطه ammarroza
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

شكرا للمشاركة لانني اعتقد ان لا احد مهتم بالموضوع

بالتأكيد يوجد من يهتم ولكن لا تتوقع أن يهتم الجميع، فأنا مثلا ال mobile robots لا تستهويني البتة

كما أن موضوعك غير واضح إلى حد ما

فهل أن تعرض ما قمت بتنفيذه من قبل أم تطرح موضوع للنقاش أم ترغب في تكوين فريق عمل لمشروع معين أم ماذا بالضبط

كما أنك ذكرت في أول مشاركة شيئ ما عن مشاريع التخرج للمهندسين الدارسين ثم ذكرت أنك لست مهندس، فهل الموضوع للمهندسين والمحترفين أم لغير المهندسين والهواة؟

موضوعك شيق ولكن يحتاج لبعض الوضوح وبعض مهارات العرض ليجتذب عدد أكبر وليحقق تفاعل أعلى

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اهلا اخ zamalkawi

فهل أن تعرض ما قمت بتنفيذه من قبل أم تطرح موضوع للنقاش أم ترغب في تكوين فريق عمل لمشروع معين أم ماذا بالضبط

يوجد في المنتدى عدة طلبات لعدد من الاعضاء خاصة بالروبوت, يريدون ان ينفذوا مشروع تخرج عنه (او لمجرد الهواية), وتلقيت عدة طلبات للمساعدة في هذه المشاريع,

ولذلك اريد ان اكتب خبرتي في هذا الموضوع, سواء بعرض ما قمت به من قبل, او ما توصلت اليه, بهدف المساعدة

واتمنى ان يشارك الاعضاء بخبرتهم بالروبوت ونناقش في كل هذه الافكار والمعلومات ليستفيد الجميع

كما أنك ذكرت في أول مشاركة شيئ ما عن مشاريع التخرج للمهندسين الدارسين ثم ذكرت أنك لست مهندس،

وذلك كما ذكرت يوجد عدة طلبات بالسابق من مهندسين ومبرمجين لمشاريع تخرج, سواء بالمنتدى او خارجه.

فاذا كنت لا استطيع ان اساهم كثيرا بالهندسة, فاستطيع ان اساهم ولو قليلا بالبرمجة

فهل الموضوع للمهندسين والمحترفين أم لغير المهندسين والهواة؟

الموضوع لكل شخص مهتم بالروبوت, سواء مهندس او مبرمج او هاوي,

فيمكن لاي شخص ان يأخذ الجزء المهتم به سواء كان صغيرا او كبيرا, واكيد يوجد من هم اعلم مني في هذا المجال.

فهذا يعود الى الشخص نفسه, فانا احاول ان اكتب كل ما اعرفه عن هذا الموضوع.

وبالنسبة للمهندسين, قابلت مهندسين في فصل تخرجهم يريدون تنفيذ مشروعهم ولا يعرفون كيفية التعامل مع stepper motor

او كيفية برمجة parallel port

ذكرت أنك لست مهندس

لا انا مش مهندس, انا دارس علم حاسوب, وكنت اقوم بتنفيذ بعض مشاريع الهندسة كهواية فقط.

ولكن يحتاج لبعض الوضوح وبعض مهارات العرض ليجتذب عدد أكبر وليحقق تفاعل أعلى

اذا عندك مهارات عرض افضل فانا لا امانع ان تأخذ الموضوع وتلقحه وتعدل عليه, فهذا يصب في مصلحة الجميع.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخوتي صيغ السؤال والجواب يجب ان تكون مشجعة وليست مبنية للتحدي او الاجحاف لنكن اخوة نساهم في رفع مستوى بعضنا البعض

وان نكون فريق يكمل احدنا الاخر كما ترون يجب ان يحاول كل منا ان يكتب ما يريد من الاخرين سماعه لا ان نكتب ما لا نريد سماعه

الكلمة الطيبة والمشجعة افضل مما ترون وهي بين يديكم قدموا ما يرضي الله ولا تنفروا احدكم الاخر

وفقكم الله لكل خير

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أشكرك أخ ammaroza على التوضيح

أما موضوع أخذ الموضوع وتعديله فأعتذر عنه فأنت صاحب الموضوع وأنا كما قلت لا أهتم بالروبوتات المتحركة كما أن مهارات العرض لدي ليست جيدة

فقط أري أن تضع عنوان أو مقدمة بسيطة لكل مشاركة توضح الهدف منها ومكانها من الموضوع أو من المشروع لتسهيل المتابعة من القارئ كما أنصح بمحاولة وضع نفسك مكان القارئ (الطرف المتلقي) أثناء الكتابة

وبالمناسبة أنا أتابع هذا الموضوع وأعجبتني الفكرة رغم عدم اهتمامي بها وسأظل أقرأ الموضوع وأتابعه لأستفيد واسمحلي أن أتدخل من آن لآخر لأقول رأي أو وجهة نظر

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخي zamalkawi

سأحاول ان شاء الله العمل بنصيحتك واهلا بك وبآرائك دائما

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكــم ورحمـة الله وبركاتــه ،،

- الادوات والاجزاء الخاصة بالروبوت

ان المقصود هنا في بناء الروبوت من الصفر هو عدم استخدام العاب الاطفال في البناء, بل شراء الاجزاء الخاصة بالروبوت, سواء الماتورات او الهيكل او اللاسلكي او العجال او الكنترولير او غيره من المكونات التي نحتاجها في بناء الروبوت, وهي موجودة بكثرة على الانترنت, وهذه بعض المواقع:

Link 1

Link 2

Link 3

ما يميز شراء قطع الروبوت من عدم استخدام قطع العاب الاطفال هو اننا نشتري ما نحتاج وبالمواصفات التي نحتاجها, ولا نتقيد بما لدينا من قطع وخاصة مواصفاتها بالنسبة لهذه الالعاب, فيمكننا التحكم بحجم وقوة الماتورات, والعجال, ومدى قوة ال wireless controller ونوعه, عوضا عن عدد channels وغيره من الامور التي نحتاجها.

واهم شيء نحتاجه هو الهيكل, صناعة الهيكل من الامور الصعبة التي واجهتني, وذلك لعدم توافر المواد في الدول العربية (الروبوت الذي صنعته من الخشب والصاج, وكان ثقيل الوزن), لاننا عادتا نحتاج الى مواد قوية وخفيفة الوزن (طبعا يعتمد على نوع الروبوت المصنوع) وفي بعض الاحيان مقاومة للحرارة والماء.

وهذه بعض صور روبوتات جاهزة من احدى المواقع في الاعلى (ولكن كما ذكرت سعرها غالي - وصراحة افضل بناء الروبوت باليد مع انه لن يكون بهذا الاتقان):

post-23774-1248113598_thumb.jpg post-23774-1248113568_thumb.jpg

post-23774-1248113582_thumb.jpgpost-23774-1248113589_thumb.jpg

يوجد فرق آخر بين صناعة الروبوت من الالعاب وبين شراء قطع الروبوت من الانترنت

هو سعر القطع الخاصة بالروبوت غالية, وغير متوافرة بالدول العربية, واحيانا بعضها يحتاج الى خبرة في طلبها وتوصيلها مع بعضها البعض (مثل Board Computers, Microcontrollers, Data Storage, RFID reader ).

ولذلك سيتركز شرحي على توصيل الروبوت على الكمبيوتر بشكل مباشر, كما ان الكمبيوتر يفتح المجال للمبرمجين لشراء روبوت جاهز وبرمجته بال .net or java كما يفتح المجال في عمل برامج اكثر ذكائا وسهولة في التعديل, وسأحاول ان اشرح لاحقا كيفية الاستفادة من embedded systems

--------------------------------------------------------------------------------------------------

وهنا اريد ان اتحدث عن شيء آخر كان يجب ان اتحدث عنه بالبداية.

يجب ان يحدد الشخص عند عمل الروبوت بعض الاشياء الهامة مثل:

مهام الروبوت

مواصفاته, حجمه, شكله المناسب

امكانياته

نوع التكنولوجيا المستخدمة في التحكم (Computer, microcontroller, embedded system, PDA, etc)

لغة برمجته (Java, .net, assembly, C++, etc )

نوع الاتصال (wire or wireless)

هل يحتاج الى اضافات (Camera ,sensors, ARM )

ولذلك انصح كل شخص بأن يأخذ وقته ويحدد كل ما يريده قبل البدء بالمشروع, لكي لا يقع بمشاكل كثيرة اثناء العمل والتي يمكن ان تسبب صعوبة المشروع, او حتى فشله.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكــم ورحمـة الله وبركاتــه ،،

قبل البدء بالقسم الثاني بعنوان "منافذ الحاسب الآلي computer ports"

وكيفية التحكم به عن طريق C#.net

اريد شرح التحويل بين decimal and binary number لانه سيفيدنا بالكود لاحقا

عندما يكون عندنا رقم عشري decimal نريد تحويله الى رقم ثنائي Binary نقوم باستخدام القسمة المطولة

فالنأخذ الرقم 131 كمثال

1 /2 131

1 /2 65

0 /2 32

0 /2 16

0 /2 8

0 /2 4

0 /2 2

1 /2 1

فيكون الناتج 10000011 (نأخذ الرقم من اسفل الى اعلى)

وهذا كود التحويل باستخدام C#.net

  int Dec = 0;
int[] Bin = new int[9];
private void DecToBin()
{
for (int i = 8; i > 0; i--)
{
Bin[i] = Dec % 2;
Dec = Dec / 2;
}
}

شرح الكود

for (int i = 8; i > 0; i--)

نقوم بأخذ الرقم العشري ونستخدمه لباقي القسمة 8 مرات

Bin[i] = Dec % 2;

فاذا كان باقي القسمة 0, نضع 0 في ناتج العملية وهو الرقم الثنائي

اما اذا كان باقي القسمة 1 فنضح 1

Dec = Dec / 2;

وبعد كل عملية نقسم الرقم العشري على 2

-------------------------------------------------------------------------------------------------------

وعندما يكون عندنا رقم ثنائي Binary نريد تحويله الى رقم عشري decimal نقوم باستخدام الطريقة التالية

فالنأخذ الرقم 10011011 كمثال

الصورة التالية توضح العملية اكثر (الصور نقلا عن www.wikihow.com)

post-23774-1248562593_thumb.jpg

طبعا يلاحظ انه (كما بالصورة )

post-23774-1248562626_thumb.jpg

وهذا كود التحويل باستخدام C#.net

int Num = 1;
Dec = 0;
private void BinToDec()
{
int[] Bin = new int[9];

for (int i = 8; i > 0; i--)
{
if (Bin[i] == 1)
Dec = Dec + (Num);
Num = Num * 2;
}
}

شرح الكود

  int Num = 1;

في هذه العملة نقوم بتعريف رقم Num ونعطيه قيمة 1

Num = Num * 2;

وهنا نقوم بضرب قيمة Num * 2

فيكون الناتج عند المرور بالخانات الثماني هي

1 2 4 8 16 32 64 128

if (Bin[i] == 1)
Dec = Dec + (Num);

فاذا كان يوجد 1 في الرقم العشري فاننا نجمع قيمة ال Num مع قيمة Dec

-------------------------------------------------------------------------------------------------------

ان هذه الاكواد ستسهل علينا برمجة Parallel port

القسم الثاني منافذ الحاسب الآلي computer ports

- parallel port

بالنسبة لل parallel port فان الاخوان في هذا المنتدى قاموا ببذل جهد عميق في شرحه

وللاستفادة بما كتبوا يرجى زيارة الرابطة التالية

Link

وبالنسبة للانظمة العديدة فتم شرحها سريعا لانكم ستجدون بالرابطة في الاعلى شرح وافي ايضا عن الانظمة العددية

او حمل الملف المرفق والذي هو شرح ايضا وافي وجته في هذا المنتدى ايضا

parallel_port.doc

ولكن ان لم تفهموا الكود الموجود بالملف (والذي هو باستخدام VB.net) فيمكنكم تجاهله لانني سأشرحه لاحقا بطريقة اخرى باستخدام C#.net ووضع بعض البرامج

اذا وجد اي تعليق او اي نقطة غير واضحة فيرجى كتابتها

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخي بارك الله بك اتمنى بعد انتهائك من تقديم مالديك معلومات ان نفتح موضوع لكيفية البناء لجسم الروبوت واقتراحات من قبل الاعضاء

حول الاشكال المرغوب في بنائها وشكل ذراع لربوت هذا ما اقترحه

كمثال بناء روبوت عبارة عن عربة من اربع عجلات يتم التحكم في السير والانعطاف بحيث تكون هذه العربة حاملة لذراع من الممكن ان تنحي وتدور يمين ويسار وكذلك امكانية قبض وافلات (رفع ونقل) الاشياء...... ذراع واحدة تكفي بالمرحلة الاولى

كنت اريد تقديم ذلك ولكن الرسم ثلاثي الابعاد ومن ثم محاكاة تحرك هذه الرسوم حاولت البحث عن برنامج يكون بسيط لم افلح والبرامج

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

فان كان احد الاخوة يعرف برنامج معين يلبي الحاجة نتمى ان يعرض اسمه وصيغة التصدير وحجم الملف لعمل قام به

وفقكم الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

استمر اخي ..

أنا معك بإذن الله , ولكن اتمنى تبسيط الموضوع قليلا < مبتدئ برمجة

مثلا السي شارب لا اعرف فيها شيئ فيمكنك المساعدة باستمرارك شرح الأكواد < للذين يستطيعون الفهم

ووضع المشروع Open Source للذين لم يستطيعوا فهم الكود بعد

وجزاك الله ألف خير

انا متشوق لعمل روبوتي الخاص

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الاخ نبيل سيد طه

اخي بارك الله بك اتمنى بعد انتهائك من تقديم مالديك معلومات ان نفتح موضوع لكيفية البناء لجسم الروبوت واقتراحات من قبل الاعضاء

حول الاشكال المرغوب في بنائها وشكل ذراع لربوت هذا ما اقترحه

ان هدف الموضوع هو الاستفادة والمناقشة, واذا وجد من يرغب بعمل اي روبوت او فكرة فانا سعيد جدا للمساعدة

وعند الانتهاء من الموضوع باذن الله سيكون بمقدوركم (هذا ما اتمناه) ان تقوموا بصناعة الروبوت وبأقل التكاليف ايضا

كنت اريد تقديم ذلك ولكن الرسم ثلاثي الابعاد ومن ثم محاكاة تحرك هذه الرسوم حاولت البحث عن برنامج يكون بسيط لم افلح والبرامج

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

كنت اقوم بالسابق بالعمل على maya وهو برنامج ثلاثي الابعاد, فسأحاول ان اقوم بعمل التصميم المراد قبل تنفيذه ومساعدة الاعضاء بشكل الروبوت (ان كان مثل هذا النوع من البرامج هو المقصود)

ويوجد في هذه الرابطة بواقي الروبوت الذي قمت بصناعته, وكان ممكن ان يضاف له ذراع لانه كان حجمه مناسب ووزنه مناسب وجسمه مسطح, لا امتلك صورة حقيقة له ولكن يوجد بهذه الرابطة صورة مجسمة عنه, والذي ٍساتحدث عنه بالتفصيل لاحقا ان شاء الله

Link

الاخ XG.Man

اهلا بك وانا سعيد بوجود اشخاص يتابعون الموضوع

ولكن اتمنى تبسيط الموضوع قليلا < مبتدئ برمجة

مثلا السي شارب لا اعرف فيها شيئ فيمكنك المساعدة باستمرارك شرح الأكواد < للذين يستطيعون الفهم

ووضع المشروع Open Source للذين لم يستطيعوا فهم الكود بعد

اي من اللغات تستخدم, وسأقوم بتحويل الكود وشرحه باللغة التي تناسبكم اذا كنت اعلمها

وجميع الاكواد ستكون مفتوحة المصدر وسيتم وضع جميع المشاريع والاكواد ان شاء الله

واذا وجد جزء غير مفهوم اذكره وسأقوم بشرحه بطريقة اخرى ان شاء الله

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخي ما اطلبه هناك برامج لمحكاة عمل الالات وتحريك القطع المكا نيكية كمثال رسم تروس(مسننات مختلفة الاشكال) ومحور حلزوني اظن ان برنامج(maya) ليس فيه مكتبة لمثل هذه العناصر بل هو لبناء اشكال متحركة اعتماد على رسم وحهد يدوي لذلك قلت برنامج بسيط اي به

عناصر ممكن بنائها من خلال مكتبة ... لما اقول ذلك لان الرسم ثنائي وثلاثي الابعاد ان لم يتوفر به ميزات الرؤية اتناء اختبار التحريك

لايعطي توضيح كامل الا للمختصين

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
اظن ان برنامج(maya) ليس فيه مكتبة لمثل هذه العناصر بل هو لبناء اشكال متحركة اعتماد على رسم وحهد يدوي

صحيح كلامك

وشكرا لتوضيح المقصود

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

السلام عليكــم ورحمـة الله وبركاتــه ،،

التحكم بال parallel port

اننا نستخدم مكتبة تدعى inpout32.dll للتحكم في parallel port والوجودة في المرفقات

وهي عبارة عن مكتبة قديمة, وتعتبر unmanaged dll file اي انه لا يمكن استدعائها بشكل مباشر من .net

ولكن يمكن تعريفها بالكود كما سيبين لاحقا

inpout32.rar

ولذلك قم بتحميلها ونسخها الى

C:\windows\system32

ان البرنامج (موجود بالمرفقات) هو للتحكم بمخارج ال parallel port فقط, اما بالنسبة للتحكم بالمداخل فانني سأتحدث عنها لاحقا, فالصبر جميل

Parallel_port_v1.rar

ستجدون ملفان داخل المشروع اسمهما form1 and lpt

Form1 به ابسط كود للتحكم, يقوم باطفاء واضائة جميع المخارج فقط

اما بالنسبة لل Lpt عبارة عن تطوير بسيط في الكود للتحكم بكل مخرج على حدة دون التأثير على المخارج الاخرى

ان البرنامج هو باستخدام C#.net 2008 ولكن يمكن نسخ الكود الى .net 2005 and .net 2003 وسيعمل ان شاء الله

كما وستجدون ملاحظات بالانجليزي داخل المشروع, ولذلك انصح كل شخص لم يفهم الشرح الموجود هنا ان يدخل على المشروع ويتتبع الكود ويقرأ الشرح بالانجليزي

فالنبدأ بشرح الكود الخاص ب Form1

using System.Runtime.InteropServices;

تستخدم لمساعدتنا في تعريف inpout32.dll

[DllImport("inpout32.dll", EntryPoint = "Out32")]

هنا نقوم بطلب استخدام function يدعى Out32 موجود داخل المكتبة inpout32.dll

public static extern void Output(int adress, int value);

هنا نقوم بتعريف هذا ال function واعطائه المتغيرات الخاصة به وهي رقم البورت والقيمة المراد ارسالها له

Output(0x378, 255);

هنا نقوم بارسال القيمة 255 الى 0x378 فيقوم بارسال 1 الى جميع المخارج

0x هنا معناها ان الرقم 378 هو hexadecimal

و 0x378 هو رقم الرجستري الخاص ب lpt1

هذا هو فقط كود Form1, بسيط وسهل, يمكنكم الحصول عليه من المرفقات في الاعلى

--------------------------------------------------------------------------------------------------

ولنعقد الامور قليلا فقط, ولنتحكم بكل مخرج على حدة دون التأثير على المخارج الاخرى

شرح الكود الخاص ب lpt

int[] Bin = new int[9];

لقد قمت هنا بتعريف مصفوفة array بها 9 خانات

الخانات من 1 الى 8 تستخدم لوضع القيم المراد اخراجها من lpt وتكون 0 او 1 (binary)

اما الخانة Bin[0] فانها تستخدم كناتج تحويل الارقام binary الموجودة بالخانات 1-8, وتخزن ك decimal

ليتم ارسالها لاحقا الى lpt

وهذه صورة يمكن ان توضح عمل المصفوفة اكثر

post-23774-1248726140_thumb.jpg

  private void OutFromLPT(int PinNumber, int Value)
{
Bin[PinNumber] = Value;

//start convert binary to decimal
int Num = 1;
Bin[0] = 0;
for (int i = 8; i > 0; i--)
{
if (Bin[i] == 1)
Bin[0] = Bin[0] + (Num);
Num = Num * 2;
}
//END convert binary to decimal

Output(0x378, Bin[0]);
}

private void OutFromLPT(int PinNumber, int Value)

يقوم هذا ال function بأخذ قيمتان, PinNumber وهو رقم ال pin المراد تغيير قيمته

و Value وهي القيمة المراد وضعها, وتكون اما 0 او 1

Bin[PinNumber] = Value;

هنا نقوم باسناد قيمة المخرج اليه في المصفوفة

			//start convert binary to decimal
int Num = 1;
Bin[0] = 0;
for (int i = 8; i > 0; i--)
{
if (Bin[i] == 1)
Bin[0] = Bin[0] + (Num);
Num = Num * 2;
}
//END convert binary to decimal

هذا الكود لتحويل النظام الثنائي الى عشري

وقد تم شرح هذا الكود سابقا

Output(0x378, Bin[0]);

هنا نقوم بارسال القيمة Bin[0] الى LPT1

وكما ذكرت Bin[0] هي القيمة decimal التي تم تحويلها,

ارجو ان تكونوا استفتم قليلا, واذا وجد اي تعليق او جزء مبهم فيرجى كتابته, واذا تريدون تغيير اسلوب الشرح فيرجى كتابة اقتراحاتكم

ملحوظة: ان هذه المرحلة الى الآن ولنهاية القسم الثالث ستكون بسيطة قدر الامكان, ومملة احيانا, ولكن سيزيد تعقيد الكود شيئا فشيئا ووضع دوائر وافكار والتحكم بها, ولذلك يرجى تتبع الموضوع من البداية

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

cool topic

please go on

but i have a question how to make the outer buddy as its appearance must accepted bec i will show it in school

anyway cool topic :lol: :lol:

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اهلا اخي wela64

BEC حسب معلوماتي هو عبارة عن قطعة لتنظيم الكهرباء في الدائرة, وفي بعض الانواع لعدم فقد التحكم عندما ترتفع درجة الحرارة

it outputs a consistent safe voltage for your receiver, .

how to make the outer buddy as its appearance must accepted bec

صراحة لم افهم سؤالك جيدا, ما دخل الهيكل بال bec

ولكن اذا اردت ان تظهر القطع الداخلية في الروبوت فيمكنك استخدام Cast Acrylic Sheet

فهو قوي وخفيف وشفاف, ويمكن ان تجده في المحلات التي تصنع اللوحات الاعلانية

i will show it in school

وهل يمكن ان تضع لنا صورة منه

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .