والان اخوانى بعد ان تعرفنا على بعض الاساسيات...ننتقل الى مرحلة البرمجة ونبدأ بمشيئة الله بشرح امر الـ G Code & :
M Code:

الله المستعان ...بسم الله الفاتح..
تعتمد البرمجة لماكينات التحكم العددى على مجموعة من الرموز المختلفة بحيث ينفذ كل رمز عملية محددة أو مجموعة من العمليات ويمكن تقسيمها بأكثر من طريقة
1) حسب الوظيفة 
( G CODE ) وهى مجموعة من أوامر الحركة للعدة من موضع إلى موضع أخر بطريقة محددة وتأخذ الشكل (Gxx ) وتعبر x عن رقم محدد
( M CODE ) وهى أوامر فصل وتشغيل للوظائف مثل استدعاء العدة واتجاه الدوران وتأخذ الشكل (Mxx ) وتعبر x عن رقم محدد
( Sxxxx ) رمز يستخدم لتحديد سرعة دوران عمود الإدارة الرئيسى بالماكينة وتعبر x عن السرعة المطلوبة 
( Fxxx ) رمز يستخدم لتحديد التغذية المطلوبة بالماكينة وتعبر x عن التغذية المطلوبة
( Cxx ) رمز يستخدم لعدد مرات التكرار أو عمق القطع فى مراحل عملية الثقب
( Rxx ) رمز تحديد نصف القطر
( Txx ) رمزا لتحديد رقم محطة العدة المراد التشغيل بواسطتها
2) حسب مدة فاعليتها
وتعنى أن هناك بعض الأكواد المستخدمة تظل فعالة حتى يتم إلغائها أو تغييرها مثل 
( G00 , G01 , M03 ... )
والبعض الأخر من الأكواد تنتهى بمجرد تنفيذ الأمر مثل ( M06 , M02 ... )
وللدخول إلى عالم الماكينات العددية لابد أن نعرف أن بعض الأكواد ثابتة فى معظم الماكينات وبعضها يختلف من ماكينة إلى أخرى لذى يجب عند دراسة عمليات الـCAM التركيز على المفهوم وذلك من خلال مجموعة الأكواد الخاصة بماكينة معينة وعند الانتقال إلى نوع برنامج تحكم مختلف يتم مراعاة الاختلافات بين أنظمة التحكم المختلفة 
الأكواد الخاصة بأحد الماكينات وشرحها
G90 Absolute Programming
البرمجة بمقياس مطلق
Format
N… G90 
Orويمكن تنفيذها مع كود أخر فى نفس السطر مثل N… G90 G00 X… Y… Z… 
تكون الإحداثيات الموضوعة منسوبة إلى نقطة الأصل ( 0،0،0 )
G91 Incremental Programming
البرمجة بمقياس متذايد ( تراكمى):
Format
N… G91 
Orويمكن تنفيذها مع كود أخر فى نفس السطر مثل 
N… G91 G00 X… Y… Z… 
تكون الإحداثيات الموضوعة منسوبة إلى النقطة التى تكون العدة متوقفة عندها فى أخر سطر سابق 
G00 Positioning ( Rapid Traverse )
الموضعية أو الانتقال السريع
Format
N… G00 X… Y… Z… 
تنتقل العدة من الموضع المتوقفة عنده إلى الموقع الجديد بأقصى سرعة انتقالية بالماكينة ولذى يجب مراعاة ألا يعترض مسار العدة أى شىء حتى لا يحدث تصادم
G01 Linear Interpolation
القطع أو التحرك الخطى
Format
N… G01 X… Y… Z… F… 
تنتقل العدة من الموضع المتوقفة عنده إلى الموقع الجديد بتغذية محددة F فى شكل خط مستقيم ولذى يجب مراعاة أن يكون عمود الإدارة الأساسى فى حالة دوران ومن الممكن أن توضع قيمة التغذية فى أى سطر أخر يسبق سطر الحالى حيث أن قيمة التغذية تظل مستمرة حتى يتم تغيير قيمتها 
G02/G03 Circular Interpolation Clockwise/Counterclockwise
القطع أو التوليد الدائرى مع عقارب الساعة وعكس عقارب الساعة
Format
N… G02/G03 X… Y… Z… R… F… 
تنتقل العدة من الموضع المتوقفة عنده إلى الموقع الجديد بتغذية محددة F فى شكل يمثل قوس من دائرة يصل بين الموقعين بنصف قطر مقداره R وذلك بالتحرك فى اتجاه عقارب الساعة مع G02 وعكس عقارب الساعة مع G03 ومن الممكن أن توضع قيمة التغذية فى أى سطر أخر يسبق سطر الحالى حيث أن قيمة التغذية تظل مستمرة حتى يتم تغيير قيمتها 
ملحوظة :- فى حالة أن القوس أكبر من أو يساوى نصف محيط الدائرة يجب تقسيم المنحنى على أكثر من مرحلة بحيث يكون طول القوس فى كل مرحلة أقل من نصف محيط الدائرة حيث أنه يمكن رسم عدد أربع احتمالات لقواس يحقق الشروط الثلاثة ( نقطة البداية والنهاية ونصف القطر ) و يحدد اتجاه الدوران أثنين منهم ويقوم نظام التحكم باختيار الأقصر طولاً منهم ليحدد القوس المطلوب وذلك مع قيمة R الموجبة ( ويمكن إدخال قيمة نصف القطر بالسالب لتنفيذ القوس الأكبر من هذه الدائرة وهذا خاص بهذا النظام فقط ). ( ويمكن استخدام رموز أخرى تحدد بعد مركز القوس عن نقطة البداية I , J ,K وهذه الخاصية غير متوفرة بالماكينة محل الدراسة )




G41 Cutter Radius compensation Left
تعويض نصف قطر العدة يسار
Format
N… G41 
عند استخدام هذا الأمر بالنظر إلى العدة فى اتجاه التغذية تبتعد العدة عن جميع النقط التى يتم إدخالها إلى نظام التحكم بعد ذلك بمقدار يساوى نصف قطر العدة والمخزن مسبقاً بالماكينة فى اتجاه اليسار ويظل هذا الأمر سارى المفعول حتى يتم إلغائه 
G42 Cutter Radius compensation Right
تعويض نصف قطر العدة يمين
Format
N… G42 
عند استخدام هذا الأمر بالنظر إلى العدة فى اتجاه التغذية تبتعد العدة عن جميع النقط التى يتم إدخالها إلى نظام التحكم بعد ذلك بمقدار يساوى نصف قطر العدة والمخزن مسبقاً بالماكينة فى اتجاه اليمين ويظل هذا الأمر سارى المفعول حتى يتم إلغائه 
G40 Cancel Cutter Radius compensation 
إلغاء تعويض نصف قطر العدة 
Format
N… G40 
عند استخدام هذا الأمر يتم إلغاء قيمة تعويض نصف قطر العدة وتنتقل العدة فى أى أمر تحرك بعد ذلك إلى النقطة المحددة لها بحيث ينطبق مركز العدة على النقطة المعطاة لنظام التحكم فى البرنامج .
ملحوظة :- لا يجوز الانتقال بين G41 , G42 مباشرتاً بدون استخدام G40 .

G70 Measuring In Inches
القياس بالبوصة 
Format
N… G70 
عند استخدام هذا الأمر يتحول النظام للقياس بالبوصة فى كل من :-
التغذية من مم لكل لفة إلى بوصة لكل لفة
الحركات الانتقالية وحركات القطع من مم إلى البوصة
G71 Measuring In Millimeter
القياس بالمليمتر 
Format
N… G71 
عند استخدام هذا الأمر يتحول النظام للقياس بالمليمتر فى كل من :-
التغذية من بوصة لكل لفة إلى مم لكل لفة
الحركات الانتقالية وحركات القطع من البوصة إلى مم 
ملحوظة :- يوضع أحد الرمزين فى بداية البرنامج ولا يجوز التغيير بينهما فى وسط البرنامج ويعود النظام إلى الوضع القياسى بعد غلق الماكينة وإعادة تشغيلها .
G04 Dwell Time
سكون زمنى عن التغذية
Format
N… G04 D… 
يعمل هذا الأمر على إيقاف التغذية لمدة زمنية مقدارها يساوى قيمة الكود D بالثانية مع استمرار عمود الإدارة الرئيسى فى الدوران بنفس سرعته ويستخدم هذا الأمر عادتا فى عمليات ( drilling , reaming ) وذلك لضمان جودة الثقب المشغل 
تعتبر الأكواد السابق هى مجموعة G Code العامة التى تشترك بها معظم أنظمة التحكم التى تستخدم G Code وقد يحدث بعض الاختلاف البسيط فيها ولاكن بدون تغيير الشكل أو المعنى مثل استبدال G70 ,G71 بـ G20 ,G21 .
أما بالنسبة لباقى ال G Code فعادتا ما تختلف من نظام إلى أخر وسوف نتعرض فيما يالى إلى باقى ال G Code الخاصة بنظام التحكم محل الدراسة وهى الخاصة بالعمليات الخاصة .
Subroutines
البرامج الفرعية يتم اللجوء إليها بشكل عام فى حالة وجود عملية معينة تتكرر بنفس الشكل ونفس الأسلوب تماما ولاكن فى مواضع مختلفة متكون عادتاً تحتوى على عدد كبير من الخطوات لذى يتم كتابة البرنامج الفرعى بشكل مستقل بذاته ثم يتم استدعائه فى الحاجة إليه مع مراعاة بعض القواعد التالية الذكر .


G28 Start of Subroutine
بداية البرنامج الفرعى
Format
N5 G28 L…
Example
بداية البرنامج الفرعى المسمى ( L4 ) N5 G28 L4
يستخدم الأمر G28 للتعريف ببداية البرنامج الفرعى ويتبعه المتغير( L ورقم ) ليدل على أسم البرنامج الفرعى والذى سوف يستخدم لاستدعاء البرنامج الفرعى داخل البرنامج الرئيسى .
G05 End of Subroutine
نهاية البرنامج الفرعى
Format
N… G05 
يستخدم هذا الأمر فى نهاية البرنامج الفرعى (أى فى أخر سطر من البرنامج الفرعى ) لإغلاق البرنامج الفرعى والعودة إلى البرنامج الرئيسى واستكمال خطواته من السطر الذى يلى عملية الاستدعاء للبرنامج الفرعى .
G65 Call Subroutine
استدعاء البرنامج الفرعى
Format
N… G65 L… C… 
يستخدم هذا الأمر داخل البرنامج الرئيسى لاستدعاء البرنامج الفرعى المسمى ( …L ) وتنفيذه عدد مرات (C… ) اعتباراً من موقع توقف العدة فى السطر السابق لعملية الاستدعاء وبانتهاء البرنامج الفرعى يعاود النظام تنفيذ البرنامج الرئيسى من السطر الذى يالى عملية الاستدعاء .
ملاحظات عامة على البرنامج الفرعى 
يفضل مراعاة بعض الملحوظات مثل 
1) يفضل أن تكون نقطة بداية البرنامج الفرعى هى نفس نقطة النهاية ( X , Y , Z )
2) يفضل أن تكون جميع الأبعد داخل البرنامج الفرعى متزايدة ( Incremental )
3) يفضل إعادة نظام القياس إلى الحالة المستخدمة فى البرنامج الرئيسى فى نهاية البرنامج الفرعى ( Absolute Or Incremental )
4) إذا لذم استخدام تعويض نصف قطر العدة يستدعى داخل البرنامج الفرعى ويتم إلغائه قبل نهايته
5) يتم تحديد وظيفة البرنامج الفرعى فى أول سطر بين قوسين لمعرفة مهمته 
6) قبل استدعاء البرنامج الفرعى يتم تحريك العدة إلى نقطة مناسبة بالبرنامج الرئيسى 
7) إذا لذم استخدام أى دورات تشغيل ( Cycle ) بالبرنامج الفرعى يجب إلغائها قبل نهايته
ـــــــــــــــــــــ
CYCLES

G82 Circular Pocket Milling Cycle
دورة تفريز تجويف دائرى
Format
N… G82 R… Z… C…
يستخدم هذا الأمر لتفريز تجويف دائرى بالشغلة مركزة هو إحداثى ( X , Y ) المتوقفة عنده العدة وبنصف قطر مقداره R... وبعمق مقداره Z... ويتم تقسيم العمق على عدد مراحل C... وعند تنفيذ هذا الأمر يتم نزول العدة بمقدار عمق القطع فى كل مرحلة وتقوم العدة بعد ذلك بعمل مسح لمساحة الدائرة فى مسار حلزونى والعودة مرة أخرى لمركز التجويف ثم تعود النزول بالقيمة السابقة وهكذا حتى يصل عمق القطع إلى قيمة Z ثم ترتفع العدة فى اتجاه Z لتعود إلى نفس النقطة التى كانت العدة عندها قبل استدعاء دورة التفريز.

G84 Rectangular Pocket Milling Cycle
دورة تفريز تجويف مستطيل
Format
N… G84 X… Y… Z… C…
يستخدم هذا الأمر لتفريز تجويف مستطيل بالشغلة مركزة هو إحداثى ( X , Y ) المتوقفة عنده العدة وأبعاده 2X , 2Y وبعمق مقداره Z... ويتم تقسيم العمق على عدد مراحل C... وعند تنفيذ هذا الأمر يتم نزول العدة بمقدار عمق القطع فى كل مرحلة وتقوم العدة بعد ذلك بعمل مسح لمساحة المستطيل فى مسار حلزونى والعودة مرة أخرى لمركز التجويف ثم تعود النزول بالقيمة السابقة وهكذا حتى يصل عمق القطع إلى قيمة Z ثم ترتفع العدة فى اتجاه Z لتعود إلى نفس النقطة التى كانت العدة عندها قبل استدعاء دورة التفريز.

G83 Peck Drilling Cycle
دورة ثقب عميق 
Format
N… G83 Z… C…
يستخدم هذا الأمر لتخليق ثقب مركزة هو إحداثى ( X , Y ) المتوقفة عنده العدة وبعمق مقداره Z... ويتم تقسيم العمق على عدد مراحل C... بحيث يتم نزول العدة بمقدار عمق القطع فى كل مرحلة ثم ترتفع العدة إلى نقطة البداية ثم تعود النزول بالقيمة السابقة وهكذا حتى يصل عمق القطع إلى قيمة Z ثم ترتفع العدة فى اتجاه Z لتعود إلى نفس النقطة التى كانت العدة عندها قبل استدعاء دورة الثقب .

G80 De-Active Cycle 
إلغاء فاعلية دورة تشغيل 
Format
N… G80 
عند استخدام هذا الأمر يتم إلغاء فاعلية أى دورة تشغيل تسبقه ويجب استخدام هذا الأمر بعد الانتهاء من أى دورة تشغيل ( G82 , G83 , G84 )

G79 Re-Enable Cycle 
إعادة تفعيل دورة تشغيل 
Format
N… G79 
عند استخدام هذا الأمر يتم إعادة تفعيل أول دورة تشغيل تسبقه تم إلغائها مسبقاً بـ G80 مثل ( G82 , G83 , G84 ) بحيث يتم تنفيذ نفس الدورة بجميع معاملاتها تماماً ولاكن عند الموقع المتوقفة عنده العدة الآن .
LOOP

G73 Repeat Loop
G06 End of Loop 
تكرار حلقة تشغيل 
Format
N… G83 Z… C… G73 C… G01 X… G06 G80
Or
N… G73 C…
N…
N…
N…
N… G06 
عند استخدام الأمر G73 يتم تكرار الأمر الموجود فى نفس السطر أو مجموعة السطور المحصورة بينه وبين الأمر G06 عدد مرات تساوى قيمة المتغير C... .
فى الحالة الأولى يتم تكرار الانتقال مسافة مقدارها X... عدد مرات C... وحيث أن أمر الثقب مازال لم يلغى فسوف ينفذ عملية الثقب فى كل مرة بعد تغيير قيمة X وبعد إغلاق أمر التكرار يتم إلغاء أمر الثقب .
فى الحالة الثانية يتم تكرار جميع الأوامر الموجودة بين السطر الأول والسطر الأخير(G06) عدد مرات C... .


MIRROR

G10 Mirror About X-axis 
انعكاس حول محور X
Format
N… G10 
عند استخدام هذا الأمر يتم إعادة تنفيذ جميع الأوامر السابقة مع عكسها حول محور X 
G12 Mirror About Y-axis 
انعكاس حول محور Y
Format
N… G12 
عند استخدام هذا الأمر يتم إعادة تنفيذ جميع الأوامر السابقة مع عكسها حول محور Y 
G11 Cancel Mirror About X-axis 
إلغاء الانعكاس حول محور X
Format
N… G11 
عند استخدام هذا الأمر يتم إلغاء تفعيل الانعكاس حول محور X 
G13 Cancel Mirror About Y-axis 
إلغاء الانعكاس حول محور Y
Format
N… G13 
عند استخدام هذا الأمر يتم إلغاء تفعيل الانعكاس حول محور Y






M - Codes

M00 Program Stop
توقف البرنامج
Format
N… M00
عند استخدام هذا الأمر يتم إيقاف البرنامج عند هذا السطر بغرض تمكين مشغل الماكينة من تنفيذ بعض العمليات اليدوية اللازم تنفيذها بحيث أنه عند الضغط على مفتاح التشغيل يتم استكمال البرنامج من نفس الموضع .
M01 Optional ( Planned ) Stop
توقف اختيارى للبرنامج
Format
N… M01
عند استخدام هذا الأمر يتم إيقاف البرنامج عند هذا السطر بغرض تمكين مشغل الماكينة من تنفيذ بعض العمليات اليدوية التى يتم تنفيذها كل فترة ولا يشترط تنفيذها كل مرة تشغيل (مثل عمليات التأكد من القياس اليدوى بسبب تأكل العدة ) بحيث أنه عند الضغط على مفتاح التشغيل يتم استكمال البرنامج من نفس الموضع ويجد مفتاح بلوحة التشغيل يحدد إذا كان البرنامج سوف يتوقف عند هذا الأمر أو لا.
M02 End of Program 
نهاية البرنامج
Format
N… M02
يستخدم هذا الأمر لإنهاء البرنامج عند انتهاء الشغلة ويعمل على إيقاف كل من عمود الإدارة وسائل التبريد والتغذية بعد انتهاء جميع الأوامر ويتم وضعه فى أخر سطر بالبرنامج فإذا ما ضغط المشغل على مفتاح بداية التشغيل يتم إعادة بدء البرنامج من أوله مرة أخرى لذى يستخدم عند إنتاج أكثر من منتج بنفس البرنامج .
M03 Start Spindle CW
بداية دوران عمود الإدارة مع عقارب الساعة
Format
N… S… M03
عند استخدام هذا الأمر يبدأ دوران عمود الإدارة مع عقارب الساعة
M03 Start Spindle CCW
بداية دوران عمود الإدارة عكس عقارب الساعة
Format
N… S… M04
عند استخدام هذا الأمر يبدأ دوران عمود الإدارة عكس عقارب الساعة
ملحوظة :- عند إعطاء البرنامج قيمة التغذية والسرعة لا يتم بدأ دوران عمود الإدارة إلا بعد استعمال أحد الأمرين M03 or M04 أو يأخذ أخر قيمة لهما وإن كانت مع عدة أخرى
M05 Stop Spindle
توقف عمود الإدارة
Format
N… M05
عند استخدام هذا الأمر يتم إيقاف عمود الإدارة عن الدوران تماماُ ويستخدم هذا الأمر عند الحاجة إلى عكس اتجاه الدوران كفاصل بين الاتجاهين مثل ( عملية القلوظة فى نهاية مشوار القطع يتم التوقف ثم يتم عكس اتجاه كل من الدوران والتغذية )
M06 Tool Change
تغيير العدة
Format
N… T… M06
عند استخدام هذا الأمر يتم إيقاف عمود الإدارة عن الدوران تماماُ ومنع سائل التبريد ثم يتم سحب العدة المستخدمة واستدعاء العدة المحدد بالمعامل T .
M07 Coolant On
تشغيل سائل التبريد
Format
N… M07
عند استخدام هذا الأمر يتم تشغيل موتور سائل التبريد بحيث ينساب السائل بطريقة الغمر

M07 Mist Coolant On
تشغيل سائل التبريد ( رزاز )
Format
N… M08
عند استخدام هذا الأمر يتم تشغيل موتور سائل التبريد بحيث ينساب السائل على شكل رزاز
M09 Coolant Of
إيقاف سائل التبريد 
Format
N… M09
عند استخدام هذا الأمر يتم إيقاف موتور سائل التبريد .
M30 End of Data
نهاية البيانات
Format
N… M30
يستخدم هذا الأمر لإنهاء البرنامج عند انتهاء العمل ويعمل على إيقاف كل من عمود الإدارة وسائل التبريد والتغذية بعد انتهاء جميع الأوامر ويعلم نظام التشغيل بأن جميع البيانات قد انتهت ويتم وضعه فى أخر سطر بالبرنامج كما يعمل هذا الأمر على إعادة نظام التشغيل إلى الوضع القياسى المضبوط عليه .



G & M CODE فى نظام فانوك

والذى بمشيئة الله سنقوم بوضع امثلة على هذا النظام فى هذه الدورة
G0 تحريك العدة بالحركة السريعة دون تغذية
G1 تحريك عدة القطع بسرعة التغذية على خط مستقيم
G2 تحريك العدة على مسار دائرى مع عقارب الساعة
G3 تحريك العدة على مسار دائرى ضد عقارب الساعة
G17 لعدة القطع Z للشغله والمحور X , Y اختيار المستوى 
G18 لعدة القطع Y للشغله والمحور Z , X اختيار المستوى
G19 لعدة القطع X للشغله والمحور Z , Y اختيار المستوى
G40 الغاء كل من G44,G43,G42,G41
G41 تصحيح نصف القطر جهة اليسار
G42 تصحيح نصف القطر جهة اليمين
G43 تصحيح نصف القطر حتى 
G44 تصحيح نصف القطر الى ما بعد
G53 الغاء كل من G54,G55,G56,G57,G58
G54 استدعاء الازاحة المخزنة لنقطة الصفر
G55 استدعاء الازاحة المخزنة لنقطة الصفر
G56 استدعاء الازاحة المخزنة لنقطة الصفر
G57 استدعاء الازاحة المخزنة لنقطة الصفر
G58 استدعاء الازاحة المخزنة لنقطة الصفر
G59 استدعاء الازاحة المخزنة لنقطة الصفر
G70 الابعاد بالبوصة
G71 الابعاد بالملليمتر
G79 نداء الدورة
G81 دورة التقب 
G84 دورة اللولبة 
G85 دورة البرغلة
G86 دورة التجويف
G87 دورة تفريز التجويف المستطيل
G88 دورة تفريز المجارى 
G89 دورة تفريز التجويف الدائرى
G90 الابعاد المطلقة
G91 الابعاد التزايدية 
G92 الازاحة التزايدية المبرمجة لنقطة الصفر
G93 الازاحة المطلقة المبرمجة لنقطة الصفر
G94 سرعة الدوران (m.m / min) or (inch/min)
G95 سرعة التغذية (m.m/rev) or (inch/rev)
M0 ايقاف البرنامج
M3 دوران العمود مع عقارب الساعة
M4 دوران العمود ضد عقارب الساعة
M5 ايقاف العمود عن الدوران
M6 استبدال عدة القطع اتوماتيكيا
M8 التشغيل بوسيط التبريد
M9 ايقاف التشغيل بوسيط التبريد
M30 نهاية البرنامج 
M66 استبدال عدة يدويا 

المصدر: كتب برمجة الCNC
  • Currently 0/5 Stars.
  • 1 2 3 4 5
0 تصويتات / 1751 مشاهدة
نشرت فى 8 أغسطس 2019 بواسطة MORSEKO

مهندس / محمد شوقى مرسى

MORSEKO
معلوماتنا متنوعة علمبة - سلوكية -صناعية -وصحيه - دينية الغرض منها نشر الوعى وتحسين اداء الفرد وبالتالى تحسين اداء المجتمع »

ابحث

تسجيل الدخول

عدد زيارات الموقع

38,561