الوثائق
CAM وG-كود
قم بإنشاء مسارات الأدوات، ونشر برامج الآلة، وإعادة تشغيل NC المنبعث، وفحص الأدلة المرفقة بكل نتيجة.
مترجم تلقائيًا من الإنجليزية. عرض الأصل بالإنجليزية
من الهندسة إلى البرنامج
@cadcamfun/core يعرض وظائف التصنيع تحت cam. تقوم مولدات التشغيل بتحويل معلمات الهندسة والتصنيع إلى تحركات مسار الأدوات. تعمل المنشورات على تحويل برنامج محايد للآلة إلى نص وحدة تحكم. يدعم محول المولد أيضًا طلبات المطحنة والمخرطة و3الطابعة D التي يستخدمها نموذج الطلب.
تضيف نواة التصنيع الأصلية مسارًا منظمًا: إعداد الجزء والموارد، وتخطيط العمليات أو قبولها، وحساب بيانات القطع، وتوليد الحركة، وإصدار برنامج NC واحد، وإعادة تشغيل NC بشكل مستقل، وإرفاق الأدلة. يعد النص الذي تم إنشاؤه والبرنامج الذي تم تحليله وقطعة التصنيع التي تم التحقق منها مخرجات مختلفة مع ضمانات مختلفة.
import { cam } from "@cadcamfun/core"
const post = cam.getPost("fanuc")
if (post === undefined) throw new Error("Post is unavailable")
const nc = post.emit(program, { decimals: 3, tolerance: 0.01 }) تمثيل مسار الأدوات
يحتوي البرنامج على مسارات أدوات مرتبة، يرتبط كل منها بمعرف الأداة وقائمة النقل. الإحداثيات هي ملليمتر، وتغذية القطع هي ملليمتر في الدقيقة، والمدة هي ثانية. عمق القطع هو سالب Z بالنسبة إلى قمة المخزون في إحداثيات التشغيل التقليدية. تقوم المشاركات بتحويل وحدات الإخراج دون تغيير اتفاقية المجال.
التحركات هي Rapid, Linear, Arc, Dwell, Comment, Cycle، و Orient. مراكز القوس هي إحداثيات XY المطلقة؛ يحسب المنشور إزاحات I/J النسبية لوحدة التحكم. تشير إحداثيات البداية والنهاية المتطابقة XY إلى دائرة كاملة. تحتفظ الدورة بقصد الحفر أو المكوث أو النقر أو كسر الرقاقة من خلال مستوى التراجع والتغذية.
تعبر الحقول الدوارة في التحركات الخطية والسريعة عن حركة المحور المتزامنة؛ Orient يعبر عن المواقع المفهرسة. تستخدم هذه الحقول الزاوية الدرجات. اللهجة التي لا تستطيع دعم الحركة الدوارة ترفض مثل هذا البرنامج بدلا من التخلص من حقولها الدوارة.
العمليات وواجهة برمجة تطبيقات المولد
تشتمل مكتبة العمليات على التشكيل الجانبي، والجيب، والحفر، والواجهة، والنقش، وتصنيع الأسطح، وتصنيع الآلات الباقية، واللولبة، والشطب، والتصنيع التكيفي، وتوليد المحاور المتعددة. تكشف كل عملية عن عقد المعلمة الخاص بها ووظيفة التوليد النقية. يجب أن تستوفي أبعاد الأداة وحدود العمق والتخليص والأعلاف والهندسة قواعد التحقق من صحة العملية.
POST /api/toolpaths/generate يقبل إعدادات المولد والهندسة وإضافات الطابعة وإرجاعها gcode, cycles, warnings, stats, program، وعادة توليد الأدلة. الطلب الصالح الذي لا يمكنه إنشاء برنامج يرجع 400 مع السبب؛ يصبح فشل الحساب غير المتوقع 500. لا يحفظ الإنشاء مسار الأدوات.
/api/toolpaths/suggest يستمد المعلمات المستندة إلى العناصر، والتعليقات، وإحصائيات القطع، ونص العملية، والتحذيرات. /api/toolpaths/parse يفسر G-code المقدم في تحركات البرنامج وإحصائياته. لا تثبت الاقتراحات والتحليل أن البرنامج آمن أو صحيح هندسيًا.
لهجات التحكم
ينفذ التسجيل المدمج generic, fanuc, grbl، و haas. linuxcnc هو معرف منشور معترف به بدون تنفيذ في هذا السجل؛ getPost يمكن أن يعود غير محدد. حل والتحقق من المنشور قبل الاتصال به.
تشارك المنشورات باعثًا بتنسيق عشري ثابت، وتعقيم التعليقات، وتغييرات الأدوات، ومعالجة القوس، وترقيم الأسطر الاختياري، وتوسيع الدورة. الإعدادات الافتراضية هي ثلاث منازل عشرية، وتمكين الدورات المعلبة، وأقواس IJK، وتمكين الرأس، والتسامح 0.01 ملم. تتراجع تنسيقات القوس غير المدعومة من خلال الأشكال والخطية المدعومة باللهجة.
toolNumbers معرفات أداة الخرائط لتوضيح جيوب الأعداد الصحيحة الإيجابية. تستخدم الأدوات غير المعينة ترقيم الاستخدام الأول مع تجنب الأرقام المشغولة. retractBeforeToolChange هو الاشتراك؛ فهو يرفع Z إلى أعلى موضع وصل إليه البرنامج قبل تغيير الأداة. يتم أيضًا الاشتراك في إصدار البرنامج الفرعي ويعتمد على دعم اللهجة. قم بمراجعة إخراج وحدة التحكم المحددة وتكوين الجهاز قبل استخدام الإنتاج.
يمكن إصدار مسارات الأدوات المتكررة كبرامج فرعية. يتأهل مسار الأدوات عندما تكون حركته، بعد تحرك تحديد موضعه، عبارة عن حركة مسار أدوات أخرى مترجمة ضمن 5 × 10⁻⁶ مم، بنفس أنواع الحركة والخلاصات وحواس القوس. تحتاج كل مجموعة إلى ست حركات للجسم على الأقل ويجب حفظ ما لا يقل عن اثنتي عشرة حركة إجمالاً. مسارات الأدوات ذات الدورات المعلبة أو الكلمات الدوارة ليست مرشحة أبدًا (packages/core/src/cam/post/subprograms.ts).
مستويات التصنيع والإصدار الأصلية
POST /api/toolpaths/manufacture يقبل CamKernelRequest، إصدار 1 لقطة CAD تحتوي على الهوية والمواد والجهاز الاختياري والمخزون والأدوات والعمليات وضوابط الجودة وإزاحة العمل. العمليات المفقودة تستدعي المخطط؛ الأدوات المفقودة تستخدم سرير القطع الافتراضي. يؤدي الإدخال غير المدعوم، والمواد أو الأدوات غير المعروفة، وهندسة الأجزاء الفارغة، والمخزون غير الصالح، والعمل غير المخطط له إلى ظهور مشكلات واضحة.
تحسب النواة التغذية لكل عملية، وسرعة المغزل، والمشاركة، وتقديرات الطاقة والقوة، والتحذيرات، والوقت، والحجم الذي تمت إزالته. يقوم بنشر برنامج واحد ويفسر بشكل مستقل NC المنبعث منه. تحتفظ الأداة بالبرنامج، وأدوات القطع، ونص NC، وإحصائيات المخزون، ونتائج العملية، وملخصات الهوية، والمطالبات، والمشكلات.
release هو blocked, preview، أو verified-program. حالات فشل صعبة أو إصدار كتلة NC فارغة. يتطلب التحقق اجتياز المطالبات ذات الصلة؛ تسمح قاعدة الإصدار الحالية بأدلة السفر الآلي غير المدعومة مع الاستمرار في وضع علامة على التحقق من البرنامج. قم بفحص كل مطالبة، بما في ذلك الحالات غير المدعومة والتي لم يتم حلها، قبل تحديد ما إذا كان الدليل يغطي الجهاز المقصود.
تغطي المطالبات بيانات القطع، وحدود الماكينة، والعمليات المكتملة، والتخليص السريع، وتخليص الحامل، والتلاعب، وإزالة المواد، وإعادة تشغيل NC، وسير الماكينة، وتخليص الماكينة. ترتبط الأدلة بهوية المصدر وهوية القطعة الأثرية. يؤدي تحرير NC أو تغيير إعداد المصدر إلى إبطال هذا الاتصال ما لم يتم تقييم المهمة مرة أخرى.
إعادة التحقق وحدوده
POST /api/toolpaths/verify يعيد تشغيل إما رمز G أو برنامج مقابل المخزون المحاذي للمحور. قم بتوفير مصدر حركة واحد وأداة وحدود مخزون واحدة بالضبط. التركيبات الاختيارية هي مظاريف محاذاة للمحور؛ تتيح المواد الصلبة أو الشبكات المستهدفة الاختيارية إجراء مقارنات بين القطع والمخزون المتبقي. إن أبعاد الفلوت أو الساق أو الملصق أو الحامل المفقودة تترك الشيكات المقابلة غير نموذجية.
يقوم أداة التحقق بأخذ عينات من الحركة في مجال الارتفاع وإرجاع المشكلات وإحصائيات الإزالة وأطوال المشاركة/قطع الهواء ومعاينة العرض. التسامح الافتراضي هو 0.05 ملم. الدقة الافتراضية من قطر القاطع وقد تكون خشنة لتناسب ميزانية الحساب؛ ResolutionCoarsened التقارير التي تتغير. دقة الشبكة تحد من الأدلة الهندسية التي يمكن أن تدعمها النتيجة.
نتيجة مع ok: true ليس لديه مشكلة خطورة الخطأ. بدون هدف، لا يمكن تحديد دقة الجزء النهائي؛ بدون تركيبات أو هندسة حامل لا يمكن إثبات خلوصها. تضيف عمليات إعادة التشغيل المتكاملة وفحوصات الآلة للنواة دليلاً خاصًا بالمهمة التي تم التقاطها، بينما يعكس التحقق المستقل الطلب المقدم فقط.
خريطة التنفيذ
cam/ir.ts تمتلك التحركات وعقود البرنامج؛ operations/ تمتلك مولدات استراتيجية؛ post/ تمتلك انبعاث وحدة التحكم؛ generator/ يتكيف مع إعدادات التطبيق ويوزع النص؛ model/ يبني هندسة الأجزاء. verify/ يمتلك إعادة تشغيل مجال الارتفاع؛ kernel/ تمتلك تنسيق التصنيع والأدلة. setup.ts و indexing.ts توفير التحقق من صحة إطار العمل وتحويلات الجدول المفهرسة.
إن حفظ المستندات والتحقق من الوصول إلى الرسم والاحتفاظ بأدلة المصدر تنتمي إلى الخدمات السايدكار. يرى الاجهزة لوثائق التشغيل المحمولة والتحقق من الثبات.
الأعماق والارتفاعات والخلاصات والافتراضيات
تميز معلمات التشغيل الأساسية عمق القطع الإيجابي عن مستويات Z المطلقة. totalDepth و stepdown مطلوبة أطوال محددة إيجابية؛ عمق 5 مم مع تنحي 2 مم ينتج تمريرات عند 2 و4 و5 مم أسفل الجزء العلوي. تنطبق الإعدادات الافتراضية فقط عندما يكون الحقل مفقودًا، لذلك يتم الاحتفاظ بالصفر المسموح به صراحةً.
| مجال | الافتراضي / الوحدة | معنى |
|---|---|---|
clearanceHeight | 10 ملم | الطائرة المستخدمة لتحديد المواقع السريعة واضحة. |
safeHeight | 5 ملم | ارتفاع دخول/خروج تغذية التشغيل. |
retractHeight | 2 ملم | ارتفاع وقوف السيارات بين الممرات. الصفر يمكن أن يكون صالحا. |
feed / plungeFeed | 800 / 300 ملم/دقيقة | قطع إيجابي ويغذي يغرق. |
spindleRpm / coolant | 10,000 / off | المغزل على مستوى التشغيل ونية المبرد. |
يجب أن تستوفي الارتفاعات الخلوص ≥ الأمان ≥ التراجع. الإعدادات الافتراضية لملف التعريف هي التعويض الخارجي، واتجاه التسلق، وبدل التشطيب الصفري، والمقدمة المباشرة، وتركيب القوس، والتسامح 0.01 ملم. زاوية المنحدر الافتراضية هي 3° وتقبل 0.1–45°; تبلغ المسافة الحلزونية الافتراضية 1 ملم لكل دورة. يقوم الجانب المعلن والسماح بتحريك مسار مركز الأداة، بدلاً من تغيير محيط المصدر.
هذه هي الإعدادات الافتراضية للعملية النقية. تعد إعدادات منشئ التطبيق وبيانات العملية المشتقة من المواد الخاصة بالنواة الأصلية عبارة عن طبقات معلمات منفصلة؛ لا تفترض نفس أسماء الحقول أو الإعدادات الافتراضية عبرها.
مصدر: packages/core/src/cam/params.ts و operations/profile.ts.
يستخدم طحن الخيوط ارتفاعات الملف الشخصي الأساسية ISO 68-1: 0.54127 × خطوة للخيوط الداخلية و0.61343 × خطوة للخيوط الخارجية (packages/core/src/cam/operations/thread.ts). يفترض عارض مسار الأدوات 500 مم/دقيقة لقطع الحركات بدون تغذية و1،000 مم/دقيقة للمنحدرات عند توقيت الرسوم المتحركة؛ هذه هي افتراضات التشغيل، وليست تقديرات الآلة.
إعادة تشغيل برنامج NC صغير
يقطع هذا المثال في الذاكرة فتحة مستقيمة بعرض 4 مم وعمق 3 مم من خلال نموذج مخزون 40 × 40 × 10 مم. وهو يمارس نفس أداة التحقق الأساسية التي تستخدمها نقطة نهاية HTTP دون حفظ مسار الأدوات.
import { cam } from "@cadcamfun/core"
const report = cam.verify.verifyToolpath({
gcode: "G21\nG90\nG0 X-10 Y0 Z5\nG0 Z0\nG1 Z-3 F200\nG1 X10 F400\nG0 Z5\nM30",
stock: { minX: -20, maxX: 20, minY: -20, maxY: 20, minZ: -10, maxZ: 0 },
tool: { kind: "endmill", diameter: 4 },
fixtures: [], tolerance: 0.05, resolution: 0.25
})
console.log(report.ok) // true for this stock/tool model
console.log(report.stats.removedVolume)
console.log(report.issues) تغيير الغطس إلى G0 Z-3 ينتج أ RapidInMaterial العثور على. يمكن أن تؤدي إضافة طول القطع القصير أو أبعاد الحامل إلى تقديم نتائج للساق/الحامل لم يتمكن الطلب الأصلي من اختبارها. يضيف توفير الهندسة المستهدفة مقارنة الأجزاء النهائية؛ لا يقدم هذا المثال أي ادعاء بشأن هدف أو تركيبات.
يقوم المدقق بميزانية 2،500، 000 من خلايا الشبكة وعينات المسار 3، 000، 000، مع ميزانية عمل 80، 000، 000 على الأكثر. ويمكن تقليص الطلبات للوفاء بهذه الحدود. يتم تقليص حجم مخزون المعاينة للعرض، لذا فإن وحدات البكسل الخاصة به ليست نتيجة تحقق ثانية وأدق.
مصدر: packages/core/src/cam/verify/verify.ts و verify/verify.test.ts.
عند إعادة تشغيل النص الذي يستدعي البرامج الفرعية، يتبع المترجم M98 يتداخل بعمق يصل إلى ثمانية مستويات ويتوقف عن البسط عند خطوط 2، 000، 000، لذلك لا يمكن لعدد التكرار الكبير استنفاد الذاكرة (packages/core/src/cam/subprogram-text.ts).
قراءة قطعة أثرية فاشلة أو معاينة
تتضمن مشكلة النواة أ tag, severity, stage, message, and optional operation ID, NC line, and point. Follow that stage to the input that caused it: preparation checks stock/material/tools; planning selects strategies; cutting-data checks process limits; generation creates motion; posting writes the controller format; replay/evidence checks the resulting bytes.
NoSuitableToolأوUnknownTool: افحص معرف القاطع المحدد وحدود الشكل الهندسي، بما في ذلك القطر، وطول الناي، والشريط اللاصق، ومكتبة القاطع المرفقة.RapidInStockأوHolderCollision: حدد موقع العملية/النقطة المبلغ عنها وافحص الإدخال والسحب والمخزون وتخليص الحامل/الطاولة. زيادة تغذية القطع لا تؤدي إلى إصلاح السرعة غير الآمنة.Gouge: التحقق من الجانب الكنتوري، والمستويات العلوية/السفلية، وبدل التشطيب، والهندسة المستهدفة. تختبر النواة الملف الداخلي للجزء الخارجي كفشل حقيقي في إعادة التشغيل.RemainingStock: افحص الزوايا التي يتعذر الوصول إليها، ونصف قطر الأداة، واستراتيجية الإنهاء، ودقة التحقق قبل تفسير المجلد المتبقي.ReplayMismatch: تعامل مع الحركة المنشورة وIR المطالب بها على أنها غير متسقة وأعد إنشاؤها من المهمة التي تم التقاطها.
تمثل الإعدادات المسبقة للآلة فئات نموذجية، وليست آلات مُقاسة. معرفات اللقطة المتوفرة مسبقًا هي vmc-standard, haas-vf2, hsc-mill, desktop-mill، و cnc-router. الأول هو الافتراضي. افحص أدلة سير الماكينة الفعلية وتخليصها بدلاً من استنتاجها من اسم عرض الإعداد المسبق.
مصدر: packages/core/src/cam/kernel/execute.ts, machines.ts، و kernel.test.ts; حقول إصدار الأسلاك موجودة packages/api/src/cam-kernel.ts.
إنشاء جيب ونشره
طبقة CAM عبارة عن خط أنابيب من الوظائف النقية: تدخل الهندسة والمعلمات في العملية، وترجع العملية a Toolpath حركات التمثيل المتوسط (IR) ، أ Program مجموعات مسارات الأدوات، ويقوم معالج النشر بتحويل البرنامج إلى نص خاص باللهجة. لا شيء قبل النشر يعرف عن كلمات G-code، لذلك يمكن إصدار نفس مسار الأدوات لـ GRBL أو Fanuc أو Haas أو اللهجة العامة.
import { cam } from "@cadcamfun/core"
const tool = { id: "t6", name: "6 mm flat end mill", kind: "endmill",
diameter: 6, flutes: 3, maxRpm: 18000 }
// 60 × 40 × 10 mm block; its top face is at origin.z (Z = 0)
const stock = { x: 60, y: 40, z: 10, origin: { x: 0, y: 0, z: 0 },
material: "aluminium-6061" }
const params = new cam.PocketParams({
name: "Pocket 30x20",
totalDepth: 3, // mm below the stock top
stepdown: 1.5, // two levels: -1.5 and -3.0
entry: "ramp", // default is "helix"
})
const ring = [{ x: 15, y: 10 }, { x: 45, y: 10 }, { x: 45, y: 30 }, { x: 15, y: 30 }]
const pocket = cam.generatePocket(params, ring, tool, stock)
const program = { name: "pocket-demo", units: "mm", workOffset: "G54",
toolpaths: [pocket] }
const gcode = cam.getPost("grbl")!.emit(program)
console.log(gcode) (PROGRAM: pocket-demo)
(UNITS: MM)
(WORK OFFSET: G54)
(OP 1: Pocket 30x20 | T1 [t6] | S10000 | F300-800)
G21 G90 G17 G94
G54
(OPERATION: Pocket 30x20)
(TOOL T1)
M3 S10000
(Pocket: Pocket 30x20)
G0 X30.000 Y21.000 Z10.000
Z5.000
Z2.000
Z1.000
G1 X36.000 Z0.732 F300
Y19.000 Z0.643
X24.000 Z0.107
Y21.000 Z0.018
X30.000 Z-0.250
X36.000 Z-0.518
Y19.000 Z-0.607
X24.000 Z-1.143
Y21.000 Z-1.232
X30.000 Z-1.500
...
(the second level repeats the ramp from Z-1.500 to Z-3.000)
...
X18.000
Y27.000
G0 Z2.000
Z10.000
M5
M2 قراءة المخرجات من الأعلى: تسرد تعليقات الرأس البرنامج والوحدات وإزاحة العمل وملخص لكل عملية (رقم الأداة والمعرف وسرعة المغزل ونطاق التغذية). G21 G90 G17 G94 يختار المليمترات، والإحداثيات المطلقة، والمستوى XY، والتغذية في الدقيقة. لا يوجد لدى GRBL أداة تغيير للأدوات، لذلك يتم الإعلان عن الأداة الأولى كتعليق ثم تصبح التغييرات اللاحقة للأداة (CHANGE TO TOOL Tn) تليها M0. The pocket starts with rapids down through clearance (10), safe (5), and retract (2) heights, then ramps at the 300 mm/min plunge feed. Once the ramp reaches depth it switches to the 800 mm/min cutting feed. The program ends with M5 (توقف المغزل) و M2.
يتم الإبلاغ عن الشكل الهندسي الفارغ، ولا يتم تخطيه بصمت
إذا لم تكن المنطقة حدودًا مغلقة، فستصدر العملية التعليق (nothing to cut: no closed boundary) ولا حركة. تمرير نقاط الحلقة كما { x, y } أشياء. ابحث في البرامج التي تم إنشاؤها لهذا التعليق عندما لا تنتج العملية أي تخفيضات.
معلمات التشغيل والافتراضيات
تمتد فئة معلمة كل عملية إلى نفس الحقول المشتركة. الارتفاعات هي قيم Z مطلقة ويجب أن تستوفي الخلوص ≥ الأمان ≥ التراجع؛ المخطط يرفض أي شيء آخر. الأعماق هي مسافات موجبة أسفل قمة السهم؛ يتم قص التمريرة الأخيرة إلى totalDepth.
| المجال المشترك | تقصير | معنى |
|---|---|---|
id, name | operation, Operation | الهوية تظهر في التعليقات والملخصات. |
clearanceHeight | 10 | الارتفاع للتحركات بين العمليات. |
safeHeight | 5 | الارتفاع للتنقلات بين المناطق. |
retractHeight | 2 | الارتفاع قبل الغطس/التغذية. |
totalDepth | مطلوب | عمق إيجابي تحت قمة السهم. |
stepdown | مطلوب | عمق إيجابي لكل تمريرة. |
feed | 800 | تغذية القطع، مم/دقيقة. |
plungeFeed | 300 | تغذية للغطس والانحدار، مم/دقيقة. |
spindleRpm | 10000 | سرعة المغزل. |
coolant | off | وضع المبرد. |
| عملية | حقول محددة (افتراضية) |
|---|---|
Pocket | stepover 40 (% من القطر، 1–100)، allowance 0, finishPass خطأ شنيع، climb حقيقي، entry helix | ramp | plunge, order insideOut | outsideIn, helixPitch 1, helixRadius 0 (= نصف قطر الأداة)، rampAngle 3° (0.1–45), tolerance 0.01, toolCentre خطأ شنيع. |
Profile | side outside | inside | onLine, climb حقيقي، allowance 0, leadIn direct | ramp | helix | arc, helixPitch 1, helixRadius 0, leadRadius 2, rampAngle 3°, tabs [] (كل علامة تبويب: position 0–1 على طول المسار، width, height), arcFit خطأ شنيع، tolerance 0.01. |
Drill | لا stepdown أو feed. peck 0 (ضربة واحدة)، chipBreak خطأ شنيع، dwell 0 ث. تحافظ دورات بيك على خلوص يبلغ 0.5 مم فوق العمق الأخير، وتكون نسبة تراجع كسر الرقاقة 0.5 مم. |
Face | stepover 60, overshoot 0 (= نصف قطر الأداة + 1 مم)، alongX حقيقي، tolerance 0.01. |
Engrave | tolerance 0.01. |
Thread | طحن الخيط عمق الملف الشخصي 0.54127 × المسافة الداخلية و0.61343 × المسافة الخارجية. |
Adaptive، الراحة، السطح، الشطب، متعدد المحاور | مزيد من الاستراتيجيات المصدرة من نفس الوحدة؛ يضيف الشطب tipOffset 0.2 و lead 1. |
بناء المعلمات مع new cam.PocketParams({ ... }) (أو الفئة المطابقة) بحيث يتم تطبيق الإعدادات الافتراضية والتحقق من القيود مرة واحدة. يتم أيضًا تصدير كل عملية كزوج، مثل cam.Pocket = { Params, generate }، للتعليمات البرمجية التي يتم إرسالها حسب نوع العملية.
نشر المعالجات وخيارات الإخراج
يتم تسجيل المشاركات عن طريق رقم الهوية في cam.posts ونظرت مع cam.getPost(id). ال linuxcnc المعرف محجوز ولكن لم يتم تنفيذه، لذلك getPost("linuxcnc") يعود undefined. تحقق من ذلك قبل الاتصال emit.
| بريد | دورات معلبة | وحدة السكن | محاور دوارة | تغيير الأداة | إطار البرنامج |
|---|---|---|---|---|---|
generic | نعم | ثواني | نعم | Tn M6 | لا أحد |
grbl | لا (موسع للتحركات) | ثواني | رفض | تعليق إذن M0 يوقف | لا أحد |
fanuc | نعم | ميلي ثانية | نعم | Tn M6 + G43 Hn | % / O####، البرامج الفرعية |
haas | نعم | ميلي ثانية | نعم، G234 برنامج التعاون الفني | Tn M6 + G43 Hn | % / O####، البرامج الفرعية |
جميع الأربعة يقبلون الأقواس على أنها ijk أو radius; linearize من الممكن دائما. يتم رفض البرنامج الذي تحمل تحركاته زوايا دوارة بواسطة GRBL بدلاً من فقدان الزوايا بصمت.
| خيار الانبعاث | تقصير | Effect |
|---|---|---|
decimals | 3 | الأرقام بعد العلامة العشرية. |
lineNumbers | عن | { start, step } يكتب كلمات N، على سبيل المثال N10, N20. |
useCannedCycles | true | تنبعث منها دورات الحفر حيث توجد بها اللهجة. |
arcMode | ijk | ijk, radius، أو linearize. |
header | true | اكتب رأس التعليق الوصفي. |
tolerance | 0.01 | التسامح مع الوتر عندما تكون الأقواس خطية. |
toolNumbers | أمر الاستخدام الأول | خريطة معرف الأداة إلى الجيب الدائري. تحافظ الإدخالات المفقودة على ترقيم الاستخدام الأول دون الاصطدام بجيوب صريحة. |
retractBeforeToolChange | عن | ارفع Z إلى أعلى نقطة تم الوصول إليها قبل تغيير الأداة. |
stamp | غائب | ختم الرأس. اترك الأمر للإخراج الحتمي. |
subprograms | عن | اكتب مسارات أدوات متكررة ومترجمة مرة واحدة كبرنامج فرعي تزايدي (Fanuc وHaas). |
const text = cam.getPost("fanuc")!.emit(program, { lineNumbers: { start: 10, step: 10 } })
// %
// O1000
// (PROGRAM: POCKET-DEMO) comments are upper-cased
// ...
// N10 G21 G90 G17 G94 G40 G49 G80
// N20 G54
// N30 T1 M6
// N40 G43 H1
// N50 M3 S10000 البايت متطابق بشكل افتراضي
يتم إيقاف الخيارات التي تغير المخرجات (سحب تغيير الأداة، والبرامج الفرعية، والطوابع) بشكل افتراضي، لذا فإن إعادة إنشاء طلب مخزن ينتج عنه نص مطابق. ال cam/gcode تعتمد خطوة سير العمل على ذلك للكشف عن البرامج التي لا معنى لها.
قبل إرسال البرنامج إلى الجهاز
- تأكد من المخزون: الحجم، وأصل الزاوية الدنيا له، ووجهه العلوي عند
origin.z. وكل عمق يقاس من ذلك الوجه. - تحقق من الارتفاعات مقابل التركيبات. تعتبر ارتفاعات الخلوص والآمنة والتراجع هي قيم Z المطلقة في إزاحة العمل.
- اختر المنشور لوحدة التحكم الفعلية وتأكد من تنفيذه (
getPostعاد وظيفة). - أعد تشغيل البرنامج مع التحقق وقراءة كل قضية. لا تعامل عدم وجود تعليق خطأ كدليل.
- إذا تم تحرير نص NC يدويًا، فأعد إنشاءه أو أعد التحقق منه. الأدلة المحسوبة للنص الأصلي لم تعد تنطبق.
- قم بالتشغيل الجاف على الجهاز الموجود أعلى الجزء مع تقليل تجاوز التغذية، كما تفعل مع أي برنامج جديد.
الكود الذي تم إنشاؤه ليس ضمانًا للجهاز
تتحقق النواة والمشاركات من الهندسة والحدود وقواعد اللهجة التي يعرفونها. إنهم لا يعرفون التركيبات الخاصة بك، أو أطوال الأدوات، أو حالة الماكينة. إن البرنامج الذي تم التحقق منه هو دليل، وليس ضمانًا لقطع آمن.
مطالبات أدلة النواة الأصلية
بالإضافة إلى المولدات الموضحة أعلاه، تقوم النواة الأصلية بإرجاع قطعة أثرية بعشرة مطالبات. كل منهما passed, failed, unsupported أو unresolved، مع سلسلة التفاصيل. يلخصهم مستوى الإصدار: blocked, preview أو verified-program.
| مطالبة | حالة المثال | التفاصيل التي تم إرجاعها بواسطة النواة |
|---|---|---|
cutting-data | اجتاز | تعمل كل عملية على قطع البيانات المحسوبة لـ Acetal POM-C (Delrin) والقاطع الخاص بها |
machine-limits | اجتاز | سرعة المغزل والتغذية والطاقة وعزم الدوران وانحراف القاطع ضمن الحدود |
operations-complete | اجتاز | تم إنشاء عمليات 3؛ كل ميزة مخططة لها عملية |
no-rapid-in-stock | اجتاز | لا يوجد تحرك سريع يمس السهم كما اعيد |
holder-clearance | اجتاز | تظل الساق والحامل بعيدًا عن المخزون (3 - إعادة عرض مجال ارتفاع المحور) |
no-gouge | اجتاز | لا يوجد قطع أسفل الجزء الذي يتجاوز 0.030 مم (خلية واحدة من الارتخاء الجانبي) |
material-removed | اجتاز | يتطابق المخزون المُعاد تشغيله مع الجزء الموجود ضمن 0.110 ملم |
nc-replay | اجتاز | تم تفسير حركات NC 3035 بشكل مستقل عن المنشور؛ توافق النطاقات خلال 2.0e-3 ملم |
machine-travel | غير مدعوم | لم يتم تكوين حدود السفر بالجهاز |
machine-clearance | اجتاز | 3035 تم تحديد التحركات؛ يبقى الحامل والساق على الأقل 6.500 ملم من الطاولة |
الصفوف هي النتيجة الحقيقية لـ POM الفارغ في دليل التصنيع الأصلي: 3 عمليات، 3071 خطوط NC، الإصدار verified-program. يمكن أيضًا أن يكون عمود الآلة الخاص بالقطعة الأثرية linuxcnc في المخطط، ولكن لم يتم تنفيذ منشور LinuxCNC، لذلك لا تستخدمه الإعدادات المسبقة.