برمجة CNC وأساسيات G-Code
خلف كل قطعة مُشغّلة برنامج — قائمة تعليمات منسّقة تخبر ماكينة CNC بالضبط أين تتحرك وبأي سرعة ومتى تشغّل المغزل والتبريد. تلك اللغة هي G-code (مع رفيقتها M-codes). سواء كانت ورشتك تبرمج يدوياً أو تعدّل مخرجات CAM أو تحتاج فقط قراءة ما تفعله الماكينة، فإن فهم G-code يحوّل وحدة التحكم من صندوق أسود إلى أداة تأمرها. يغطي هذا الدليل الأكواد الشائعة وبنية البرنامج وسير العمل من الرسم إلى القطعة النهائية — الأساس العملي الذي يجب أن يمتلكه كل مُشغّل في ورشة خليجية.
البرنامج النظيف الصحيح هو الفرق بين قطعة جيدة واصطدام. للمكونات المخروطة المبرمجة، تختبر خدمات الخراطة والتشغيل الدقيق لدينا الكود قبل أن يلامس خاماً ثميناً.
ما هو G-code
G-code هي اللغة البرمجية القياسية لماكينات CNC، المعرّفة عموماً بمعيار ISO 6983 (مع لهجات مصنّعين من Fanuc وSiemens وHaas وغيرها). البرنامج تسلسل من الكتل (Blocks) (الأسطر)، كل منها مكوّن من كلمات (Words) — حرف يتبعه رقم. الحرف يقول نوع التعليمة؛ والرقم يعطي القيمة:
- G — أوامر تحضيرية (حركة/وضع).
- M — وظائف متنوعة (الماكينة): المغزل، التبريد، إيقاف البرنامج.
- X Y Z — الإحداثيات (وU W تزايدية على المخارط).
- F — معدل التغذية؛ S — سرعة المغزل؛ T — رقم الأداة.
- N — رقم السطر؛ I J K / R — معاملات القوس.
أكواد G الشائعة
هذه الأكواد التي تقابلها يومياً. الأكواد الوضعية (Modal) تبقى نشطة حتى تتغير:
| الكود | الوظيفة | ملاحظات |
|---|---|---|
| G00 | حركة سريعة | تموضع، وليس قطعاً |
| G01 | حركة تغذية خطية | قطع مستقيم بتغذية F |
| G02 / G03 | قوس مع/عكس عقارب الساعة | مع I J K أو R |
| G17 / G18 / G19 | اختيار المستوى (XY / XZ / YZ) | G18 شائع على المخارط |
| G20 / G21 | وحدات إنش / متري | يُضبط مرة واحدة مبكراً |
| G28 | العودة لنقطة أصل الماكينة | عبر نقطة وسيطة |
| G40 / G41 / G42 | تعويض الأداة إيقاف / يسار / يمين | إزاحة نصف قطر الأداة |
| G43 | تعويض طول الأداة (تفريز) | مع كلمة H |
| G54–G59 | أنظمة إحداثيات الشغل | صفر القطعة / الإزاحات |
| G90 / G91 | تموضع مطلق / تزايدي | تمييز أمان كبير |
| G96 / G97 | سرعة سطح ثابتة / RPM ثابتة | خراطة المخرطة |
أكواد M الشائعة
| الكود | الوظيفة |
|---|---|
| M03 / M04 | تشغيل المغزل مع/عكس عقارب الساعة |
| M05 | إيقاف المغزل |
| M06 | تغيير الأداة |
| M08 / M09 | تشغيل / إيقاف التبريد |
| M30 | نهاية البرنامج وإعادة لفّه |
| M00 / M01 | إيقاف البرنامج / إيقاف اختياري |
بنية البرنامج
البرنامج النموذجي ثلاثة أجزاء: كتلة بدء آمنة (الوحدات، إزاحة الشغل، الوضع المطلق، إلغاء التعويض)، وجسم التشغيل (نداءات الأدوات، تشغيل المغزل/التبريد، الحركة)، ونهاية آمنة (انسحاب، إيقاف المغزل/التبريد، العودة للأصل، النهاية). مقطع خراطة بسيط قد يكون:
G21 G18 G40 ; متري، مستوى XZ، إلغاء التعويض
G54 ; إزاحة الشغل
T0101 ; أداة 1، إزاحة 1
G96 S180 M03 ; سرعة سطح ثابتة، مغزل CW
G00 X26 Z2 ; سريع للبداية
G01 Z-40 F0.2 ; خراطة على الطول
G00 X100 Z100 ; انسحاب
M05 ; إيقاف المغزل
M30 ; نهاية
عادة الأمان الأساسية: الحركات السريعة (G00) لا تقطع أبداً — تموضع بخلوص، ثم غذّ (G01) داخل المادة.
المطلق مقابل التزايدي — الخلط المكلف
G90 (مطلق) يقيس كل إحداثي من صفر القطعة (G54). وG91 (تزايدي) يقيس كل حركة نسبة للموضع الحالي. الخلط بينهما سبب كلاسيكي للاصطدامات: Z-40 في المطلق يذهب لعمق ثابت، لكن في التزايدي يتحرك 40 ملم إضافية أعمق من حيث أنت. اضبط الوضع بقصد وفضّل المطلق للوضوح.
من الرسم إلى القطعة: سير العمل
- اقرأ الرسم — الأبعاد والتفاوتات والمراجع والمادة.
- خطّط العمليات — التسوية والتخشين والتشطيب والثقب واللولبة بالترتيب.
- برمج — يدوياً للقطع البسيطة، أو ببرنامج CAM يولّد G-code من نموذج ثلاثي الأبعاد ومعالج لاحق (Post-processor) لوحدة تحكمك.
- جهّز الماكينة — التثبيت والأدوات، واضبط إزاحة الشغل (G54) وإزاحات الأدوات.
- اختبر الكود — تشغيل جاف، وكتلة مفردة، وفحص قطعة أولى قبل الإنتاج.
- شغّل وافحص — أكّد القطعة الأولى مقابل الرسم، ثم شغّل الدفعة.
الخلاصة
G-code ليس سحراً — بل قائمة قابلة للقراءة من حركات منسّقة ووظائف ماكينة. تعلّم أكواد G وM الشائعة، واحترم تمييز السريع مقابل التغذية والمطلق مقابل التزايدي، وابنِ البرامج بكتل بدء ونهاية آمنة، واختبر الكود دائماً قبل قطع خام ثمين. للقطع التي يقرر فيها البرنامج النتيجة، اطّلع على خدمات الخراطة والتشغيل الدقيق وقاعدة المعرفة الصناعية.
الأسئلة الشائعة
ما الفرق بين G-code وM-code؟ أكواد G تتحكم في الحركة والأوضاع (كيف تتحرك الأداة)؛ وأكواد M تتحكم في وظائف الماكينة كالمغزل والتبريد وتغيير الأداة ونهاية البرنامج.
هل أحتاج لكتابة G-code يدوياً؟ للقطع البسيطة، البرمجة اليدوية سريعة وواضحة. والقطع المعقدة ثلاثية الأبعاد تُبرمج عادة ببرنامج CAM الذي يُخرج G-code عبر معالج لاحق.
ماذا يعني G00 مقابل G01؟ G00 حركة تموضع سريعة (ليست للقطع)؛ وG01 حركة تغذية خطية محكومة تقطع فعلاً بمعدل التغذية المبرمج.
Comments
0 total · 0 threads