| دورة متقدمة في البرمجة S7 | |
|
+135jeopenny20 concord SIDALI hesham_scada ابراهيم السقا شادى محمد حسين الحمدى marocautomatique حسني إمام mostafa talat Ali abdelmagid osamarady التقني المتخصص azzouz علام عبدالجليل Eng_abdullah gaber123 saberplc nacer ENG_ELDABLY ehab_abdelaleem mf8044 meziani majdglory achour lamouri djadel yousfi محمد رياض ياسين الصافى عبد اللطيف محمد mohamed_moussaoui 0-1 mjalil80 رياض محمد محمود عليان Sallam ATHEER yahiaadam Ing_dz أحمد جمال مكرم athil kmourad enhassan احمد الجغيفي ELTIYEB KROPI eng_mo7amed_3ly sky hok mikah elec صابر يوسف khaledmosa omr.a MALEK800 tatya007 Mr.Mohamed tamzargot79 ENG.SAMER SALAH kimo malek alsharfi ياسين بوخروبة مهندس نديم mgdy ali hassan ali plctxp1 محمدسوري khaledrefat ahmedhasan حسام رضا اسماعيل محمود سعد rasan eng msmsm احمد سيد englolosoft pizomx ايهاب رمضان thulfiqar2 ميدو ahmedkasmi رفعت القدسي eng_w soliman sharkfish77 hamadaaskar الفقير لله Ghazi-A-Monef بلال درويش احمدسامى mostafasadek79 salah00 قفار fadhel mfarock lotfy esaed MIMOTE ابو احمد الحجي adder محمد زعبوبة ebenazzouz eng_nassar soltan_lil riad1986 احمد سالم kingmohamed falah49 amerelect dobelhadj amr ezzat elwan سيد زايد ticon55 أحمد فاروق أحمد فتحي yakteeno eng_abdelaal hany_omar helyo_tech himahalim adnan hashim mone1 أبو خالد مصطفى engmohallam AUTOMATISME شرشابيل intelligence Mohammed_Mobasher majid hijazy zabat 4ever semsem metwally.mustafa ابو هبة GALALSAIF محمد عبدالقوي RAMA denger741 agadir1sou m_elshatr wael tawfik mm PLCMan 139 مشترك |
|
كاتب الموضوع | رسالة |
---|
mm ملازم أول
عدد الرسائل : 106 العمر : 35 تاريخ التسجيل : 25/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الخميس 16 أبريل 2009 - 16:27 | |
| السلام عليكم اولا انا اسف على تاخرى فى الاسئله وذلك لمحاولتى فى فهم الامور وارجو منك سعه صدرك الى وذلك لانى اريد ان اتمكن من plc وليس فهمه فقط ثانيا --- كيف اضبط initial values for data block ؟
وشكرا لامداداتكم
maher | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الخميس 16 أبريل 2009 - 16:42 | |
| - maher كتب:
- السلام عليكم
اولا انا اسف على تاخرى فى الاسئله وذلك لمحاولتى فى فهم الامور وارجو منك سعه صدرك الى وذلك لانى اريد ان اتمكن من plc وليس فهمه فقط ثانيا --- كيف اضبط initial values for data block ؟
وشكرا لامداداتكم
maher الأخ العزيز maher
أرجو أن لا تفهم إشارتي لأي موضوع بأنه تم توضيحه سابقا أنني لا أريد الإجابة عليه وإنما أشير للمكان لأنه عند الشرح السابق كنت قد قمت بالتحضير لهذا ولذلك سوف تجد المعلومة السابقة أدق وأشمل أما إن كانت الإجابة ممكنة فلا أتردد مطلقا في هذا
وأدعو الله وأسألكم الدعاء لي بأن يجعل هذا العمل خالصا لوجهه الكريم وأن يبعد عنه أي محبطات للعمل من تكبر أو من أو أي شئ من هذا القبيل
أما بخصوص استفسارك عن تغيير القيم الافتراضية للداتا بلوك فيمكنك أن تفتح البلوك وسوف تكون لديك صورة مثل الصورة التالية
حيث يمكنك أن تغير في العمود Actual value ولكن هذه القيم لن تكون فعالة في البرنامج إلا إذا قمت بعمل داونلود لها
كذلك يمكنك استعمال الأمر transfer لنقل القيم لأي داتا بلوك في أي وقت من البرنامج ويمكنك أن تقوم بتحميل القيم الافتراضية مثلا في OB100 مثلا :
L 10.0 T db10.dbd20 L 1.0 T db10.dbd24
بافتراض أن DB10 هو المصاحب ل FB41_________________ أبـوروان | |
|
| |
mm ملازم أول
عدد الرسائل : 106 العمر : 35 تاريخ التسجيل : 25/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الجمعة 17 أبريل 2009 - 10:38 | |
| السلام عليكم هل من الممكن ان ارى ناتج العمليات output الموجوده فى ob100 وذلك باستخدام plcsim
maher | |
|
| |
zabat مساعد أول
عدد الرسائل : 50 العمر : 47 العمل/الترفيه : مهندس صيانة صناعية تاريخ التسجيل : 18/03/2009
| موضوع: رد: دورة متقدمة في البرمجة S7 الأحد 19 أبريل 2009 - 7:22 | |
| اشكرك على هده الدورة القيمة وارجو منك منك ان تعمل دورة في الwincc | |
|
| |
majid hijazy رقيب أول
عدد الرسائل : 38 العمر : 39 الموقع : سورية العمل/الترفيه : مهندس كهرباء تاريخ التسجيل : 11/02/2009
| موضوع: رد: دورة متقدمة في البرمجة S7 الإثنين 20 أبريل 2009 - 11:08 | |
| الله يجزيك الخير ولو عندك تلفون أتصل أشكرك | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الثلاثاء 21 أبريل 2009 - 11:34 | |
| السلام عليكم ورحمة الله وبركاته إخواني الأعزاء
أولا أود أن أعتذر عن طول الموضوع وتباعد مواضيعه رغما عني للإجابة عن الاستفسارات والتي كان مفترضا أن نؤجلها إلى نهاية المثال حسب البرنامج الذي اقترحناه ولكن حرصا على وضوح كل شئ للزملاء فقد التزمنا بالإيضاح وسوف نكمل إن شاء الله
لعلنا الآن وصلنا إلى مرحلة طيبة من إدراك كيفية تشغيل PID وما بقي لنا في هذا المثال الذي ضربناه هو الربط بين المدخلات والمخرجات
فكما بينا من قبل وحسب الشكل التوضيحي لكيفية عمل الماكينة Block diagram مثل الموضح في الشكل التالي :
حيث أن قراءة السرعة من المقاومة المتغيرة Potentiometer الخاصة بزيادة وتقليل السرعة العامة للماكينة سوف يكون على المدخل التماثلي PIW 304
ولنعامل أولا هذا المدخل التماثلي للشكل الذي نريده :
حسب الضبط الذي قمنا به في Hardware configuration فإن نوع المدخل هنا هو جهد كهربي ومن المفترض أن تكون قراءته داخل PLC رقم صحيح يتراوح بين صفر و 27648 والمطلوب أولا هو ضبط هذه القيمة ليتم تحويلها داخل البرنامج من صفر وحتى السرعة القصوى للماكينة (( مثلا 500 متر/د ))
وبالتالي فإن صفر فولت -- صفر صحيح -- صفر متر/د و 10 فولت -- 27648 صحيح -- 500 متر /د
والأمر بسيط جدا إن شاء الله فإما أن نقوم بعمل دالة تقوم بعمل Scaling المطلوب أو أن نستخدم دوال Scaling إذا كانت موجودة في Library أو أن نقوم بذلك بشكل مباشر داخل البرنامج
وسوف نوضح للزملاء كيفية عمل ذلك مباشرة ويمكنهم بعد ذلك عمل دالة Function لذلك بأنفسهم وجعلها ضمن مكتبتهم Library الخاصة
سوف نقوم بإنشاء Data block DB40 وسوف نقوم باختيار البيانات DBW0,DBW2,DBW4,DBW6,DBW8,DBW10,DBW12,DBW14,DBW16 لتكون من النوع الصحيح Integer
والبيانات DBD20,DBD24,DBD28,DBD32,DBD36,DBD40,DBD44,DBD48 لتكون من النوع الصحيح ذو الدقة المضاعفة Double integers
والبيانات DBD52,DBD56,DBD60,DBD64,DBD68,DBD72,DBD76,DBD80 لتكون من النوع Real
وذلك لاستخدامها داخل البرنامج ستقبلا
أولا عمل Scaling للمدخل PIW 304
L PIW 304 // Load value of PIW 304 ITD // Convert to Double int DTR // Convert double to real and save contents to ACCUM1 L 27648.0 // Load constant 27648 /R // Divide by the constant to get percentage L 500.0 // Load the maximum speed value *R // Multiply the percentage by 500 T DB40.DBD52 // Which is the speed set value as Real with max. value 500 m/min
وبنفس الطريقة نقرأ قيمة الدانسر رقم-1 وهو على المدخل التماثلي PIW 306 ونقوم بتحويله بقيمة قصوى 100 كالآتي :
L PIW 306 // Load value of PIW 306 ITD // Convert to Double int DTR // Convert double to real and save contents to ACCUM1 L 27648.0 // Load constant 27648 /R // Divide by the constant to get percentage L 100.0 // Load the maximum dancer position value *R // Multiply the percentage by 100 T DB40.DBD56 // Which is the pay-off dancer position as Real with max. value 100 m/min
وبنفس الطريقة نقرأ قيمة الدانسر رقم-2 وهو على المدخل التماثلي PIW 308 ونقوم بتحويله بقيمة قصوى 100 كالآتي :
L PIW 308 // Load value of PIW 308 ITD // Convert to Double int DTR // Convert double to real and save contents to ACCUM1 L 27648.0 // Load constant 27648 /R // Divide by the constant to get percentage L 100.0 // Load the maximum dancer position value *R // Multiply the percentage by 100 T DB40.DBD60 // Which is the Take-up dancer position as Real with max. value 100 m/min
وبالتالي فالآن لدينا هذه القيم الثلاثة كالآتي :
قيمة قراءة السرعة بين صفر و 500 ومخزنة في العنوان DB40.DBD52
قيمة قراءة دانسر الإمداد بين صفر و 100 ومخزنة في العنوان DB40.DBD56
قيمة قراءة دانسر الاستقبال بين صفر و 100 ومخزنة في العنوان DB40.DBD60
القيمة DB40.DBD56 سوف يتم تمريرها إلى المتغير PV_INT الخاص بحامل التموين في DB10 باستعمال MOVE أو Load/Transfer القيمة DB40.DBD60 سوف يتم تمريرها إلى المتغير PV_INT الخاص بحامل الاستقبال في DB20 باستعمال MOVE أو Load/Transfer
L DB40.DBD56 // Load Dancer position value for pay-off T DB10.DBD10 // Transfer to PID actual value input
L DB40.DBD60 // Load Dancer position value for Take-up T DB20.DBD10 // Transfer to PID actual value input
القيمة DB40.DBD52 والتي تمثل سرعة الخط يتم تمريرها إلى المتغير DISV وهو بالعنوان DB10.DBD68,DB20.DBD68
L DB40.DBD52 // Load line speed value T DB10.DBD68 // Transfer to PID ,DISV value input
L DB40.DBD52 // Load line speed value T DB20.DBD68 // Transfer to PID ,DISV value input
_________________ أبـوروان | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الجمعة 24 أبريل 2009 - 11:36 | |
| السلام عليكم ورحمة الله وبركاته إخواني الأعزاء
جاء الدور الآن على توصيل قيم السرعات للمخرجات الطرفية
فلدينا الآن السرعة الخطية للماكينة بالكامل في العنوان DB40.DBD52 في صيغة رقم عشري Real تتراوح بين صفر و500 م/د
ولدينا خرج PID لكل من دانسر التموين والاستقبال على العناوين بالترتيب DB20.DBD72,DB10.DBD72 وهو المشار له بالقيمة LMN وتتراوح قيمته بين 100.0- إلى 100.0+
والمطلوب الآن تحويل هذه القيم بشكل عكسي لتناسب عملية الإخراج وكما سبق وذكرنا فلدينا خيارات للقيام بذلك منها إعادة التحويل اليدوي Unscaling وهذا ما سنقوم به إن شاء الله والثاني هو استخدام دوال Package الجاهزة (( إن توفرت )) من شركة سيمنس أو استعمال المخرجات الطرفية مباشرة من PID
تعالوا بنا نقوم معا بعمل Unscaling للقيم الثلاث على الترتيب على النحو التالي :
L DB40.DBD52 // Load line speed set value L 500.0 // Load maximum speed set value /R // Divide to get speed as percentage L 27648.0 // Load constant max output value *R // Multiply to get value in range 0-27648 RND // Round to get Double int T LD 0 // Transfer result to Local memory double LD 0 L LW 2 // Load high word which contains the value T PQW 320 // Transfer to caterpillar set value output
وبنفس الطريقة نقوم بعمل نفس الدالة لكل من حامل الاستقبال والتموين
L DB10.DBD72 // Load line speed set value L 100.0 // Load maximum speed set value /R // Divide to get speed as percentage L 27648.0 // Load constant max output value *R // Multiply to get value in range 0-27648 RND // Round to get Double int T LD 4 // Transfer result to Local memory double LD 4 L LW 6 // Load high word which contains the value T PQW 322 // Transfer to pay-off set value output
L DB20.DBD72 // Load line speed set value L 100.0 // Load maximum speed set value /R // Divide to get speed as percentage L 27648.0 // Load constant max output value *R // Multiply to get value in range 0-27648 RND // Round to get Double int T LD 8 // Transfer result to Local memory double LD 8 L LW 10 // Load high word which contains the value T PQW 324 // Transfer to take-up set value output
ويفضل أن تضاف هذه المعالجات لقيم المدخلات التي تم شرحها الدرس السابق وقيم المخرجات التي تم توضيحها اليوم داخل OB35 أما بقية معالجات التشغيل والإيقاف وغيرها فهذه بسيطة ويمكن للجميع القيام بها وإن كنا قد تعرضنا لهذه الماكينة بالتحديد كمثال سابق في الدورة الأولى والتي بدأنا بها برنامج الدورات
وأظن أنها كانت فرصة طيبة لنتعامل مع المدخلات والمخرجات التماثلية وكذلك التعامل مع منظومة PID وفي انتظار استفساراتكم بخصوص هذه التوضيحات حيث قد بينا فقط ما يمكن الاتفاق عليه من أمور الاستخدام وهذه التوضيحات والملاحظات عند تجميعها سوف تعطينا استخداما طيبا للمنظومة إن شاء الله
بقي لنا مثالان يمكن أن نبدأ في توضيحهما كما سبق وأشرنا خلال استعراضنا للدروس السابقة في هذا الموضوع وهما منظومة الضغط ومنظومة الحرارة
أرجو أن يكون الزملاء معنا على الخط حتى يتم الهدف من هذه الدورة إن شاء الله تعالى _________________ أبـوروان | |
|
| |
denger741 نقيب
عدد الرسائل : 198 تاريخ التسجيل : 02/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 السبت 25 أبريل 2009 - 8:57 | |
| | |
|
| |
metwally.mustafa فريق أول
عدد الرسائل : 4226 العمر : 38 الموقع : Egypt العمل/الترفيه : automation engineer تاريخ التسجيل : 12/01/2009
| موضوع: رد: دورة متقدمة في البرمجة S7 السبت 2 مايو 2009 - 3:59 | |
| | |
|
| |
Mohammed_Mobasher عريف
عدد الرسائل : 15 تاريخ التسجيل : 31/08/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الإثنين 4 مايو 2009 - 10:39 | |
| [quote] السلام عليكم أعانكم الله وأرجو يابشمهندس الرد على ال E-Mail وهو من Mohammed Mobasher ,ارجو ألا أكون أثقلت عليك
مع وافر الشكر | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| |
| |
denger741 نقيب
عدد الرسائل : 198 تاريخ التسجيل : 02/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الأربعاء 6 مايو 2009 - 22:04 | |
| اخي ابوروان....الله يعطيك الصحه والعافيه اخي اريد عمل برنامح عن طريق PID وهو قياس مستوى سائل عن طريق Level Transmaeter عندما يكون مستوى السائل 30% يتم تشغيل الموتور الى ان يصبح مستوى السائل الى 90% وبعده يتوقف .حيث ان Level Transmaeter يستخدم داخل و حدة الدخل التماثلي mA | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| |
| |
denger741 نقيب
عدد الرسائل : 198 تاريخ التسجيل : 02/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الأحد 10 مايو 2009 - 11:10 | |
| هل توقفنا الى هنا اخي ابوروان ... وياشباب اين تعليقكم | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| |
| |
denger741 نقيب
عدد الرسائل : 198 تاريخ التسجيل : 02/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الأحد 10 مايو 2009 - 11:45 | |
| الله يعطيك الصحه والعافية اخي ابوروان وفقك الله في الدني والاخره اللهم يسر امرك وفرج همك | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الثلاثاء 12 مايو 2009 - 14:58 | |
| السلام عليكم ورحمة الله وبركاته إخواني الأعزاء لقد قمت بإعداد مشروع للمثال السابق شرحه وأرجو من الزملاء دراسته ومناقشة أي ملاحظات على المشروع وقد استخدمت المكونات التي في الصورة التالية : لتحميل المشروع اضغط هنا _________________ أبـوروان | |
|
| |
denger741 نقيب
عدد الرسائل : 198 تاريخ التسجيل : 02/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الجمعة 15 مايو 2009 - 5:12 | |
| اخي ابوروان
بالنسبه OB1 و FB41 وFC127 .لاتوجد بداخله برنامج !! هل INTERFACE التي يكون فيها IN و OUT و TEMP نحن نقوم بكتابتها .. الرجاء التوضيح وماهي اهميتها.. وما هي طريقة كتابة DB10 | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| |
| |
denger741 نقيب
عدد الرسائل : 198 تاريخ التسجيل : 02/09/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 السبت 16 مايو 2009 - 8:49 | |
| اخي ابوروان الدخل التماثلي عندي من النوع Analog input module AI8/12 to 14 bits 6ES7 331-7KF02-0AB0 كيف يتم توصيل Potentiometer داخل الموديول | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| |
| |
majid hijazy رقيب أول
عدد الرسائل : 38 العمر : 39 الموقع : سورية العمل/الترفيه : مهندس كهرباء تاريخ التسجيل : 11/02/2009
| موضوع: رد: دورة متقدمة في البرمجة S7 السبت 16 مايو 2009 - 13:51 | |
| أعمل الآن على مشروع أتمتتة مرجل وفيه العديد من حلقات ال PID المترابطة مع بعضها (حلقة للماء وحلقة للفيول وحلقة للهواء) فهل يسمح الأستاذ والأخوة الأعضاء بتقديم هذا المشروع للمناقشة والمساعدة علماً أني مبتدأ في هذا المجال كما أنن أستطيع أن أقدم شروح جيدة عن آلية عمل المرجل أرجو الرد وشكرا على هذه الدورة الممتعة. | |
|
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| |
| |
PLCMan Admin
عدد الرسائل : 12366 العمر : 55 العمل/الترفيه : Maintenance manager تاريخ التسجيل : 02/03/2008
| موضوع: رد: دورة متقدمة في البرمجة S7 الثلاثاء 19 مايو 2009 - 12:10 | |
| | |
|
| |
intelligence رقيب أول
عدد الرسائل : 35 العمر : 44 تاريخ التسجيل : 21/05/2009
| موضوع: رد: دورة متقدمة في البرمجة S7 الجمعة 22 مايو 2009 - 3:22 | |
| السلام عليكم
مجهود كبير و شرح ممتاز بارك الله فيك و جعله فى ميزان حسناتك | |
|
| |
| دورة متقدمة في البرمجة S7 | |
|