يقول فاليري جولوفانييف ، مهندس ومبرمج ، مطور تطبيقات KOMPAS-3D ، كيف يتم استخدام النواة الهندسية ثلاثية الأبعاد في تطوير التطبيقات لـ CAD؟ مع مقدمة غنائية وانغماس عميق في عالم التروس الميكانيكية.

كان جدي الأكبر إيفيم ستيبانوفيتش (حارب ، نجار ونجار) ، جدي الأكبر تريفون إيفيموفيتش (حارب ونجار) وجدي ميخائيل تريفونوفيتش (حداد ، نجار ، نجار ، نحاسي) من الحرفيين. وأنا شخص ماهر. مهندس ونجار هواة.
إنه أمر صعب بالنسبة لأي شخص رئيسي ... إنه صعب بدون مهام مثيرة للاهتمام ، يكون صعبًا عندما لا تكون هناك فرص كافية لتنفيذها. في شخصية الشخص الحرفي الحقيقي ، أن يضع أمامه ، أحيانًا ما يبدو قليلًا ممكنًا ، المهام وينفذها.
عندما عدت قبل ست سنوات ، في صيف عام 2012 ، إلى عقلي - مكتبة تصميم أجسام الثورة KOMPAS-Shaft (الآن تطبيق "مهاوي والتروس الميكانيكية ثلاثية الأبعاد" لـ KOMPAS-3D) ، ثم على طباعة عنوان IP الخاص بي ، قمت بتصوير زوج من الحيل بأسنان دائرية . في تلك اللحظة ، حلمت فقط أنه في يوم من الأيام يمكنني صنعها في شكل ثلاثي الأبعاد - كان نوعًا من الرمز. مع التقدم في السن ، يتم أخذ علامات المصير ورموزه بعناية أكبر ... وقد تحقق الهدف!
من عجلة الدودة إلى ناقل الحركة الهوائي في KOMPAS-3D
كيف بدأ كل شيء؟ مع الرغبة! أردت حقًا أن أعطي المصمم نماذج ثلاثية الأبعاد حقيقية للتروس الميكانيكية ، وليس بعض "أوجه التشابه" ، بحيث يمكنك:
- صنع ترس أو عجلة دودة أو علامة نجمية وفقًا للنموذج ثلاثي الأبعاد. أو مخروط صغير بسن دائري ، أو (حول الأحلام ...) زوج هيبويد.
- لنرى في التجميع ثلاثي الأبعاد "التماسيح" المشروطة ، ولكن النماذج الحقيقية.
- وأكثر ... ولماذا ، في الواقع ، من الضروري التركيز في عمليات الإرسال الميكانيكية على إمكانيات (قيود) التكنولوجيا التقليدية؟ من الخطأ التعدي على التصميم بالتكنولوجيا. من الضروري عمل التروس المناسبة مع الهندسة ثلاثية الأبعاد المثلى لأسطح العمل النشطة من وجهة نظر التشغيل ، ويجب أن تضمن التكنولوجيا تصنيعها. ومثل هذه التكنولوجيا ، تسمى المضافات ، موجودة بالفعل! تتيح الطابعات ثلاثية الأبعاد الصناعية الحديثة طباعة المنتجات المحملة بالكامل بالمعدن ، وتذهب التجارب بعيدًا: ستصبح الأجزاء التي تم إنشاؤها بواسطة الطريقة المضافة شائعة قريبًا في منتج بناء الماكينات ، إن لم يكن الكتلة ، ثم على نطاق صغير - بالتأكيد.
استغرق الأمر حوالي ثلاث سنوات ، وفي ربيع عام 2015 ، قررت إنشاء عجلة دودة حقيقية باستخدام واجهة برمجة تطبيقات COMPASS. كان مبدأ التنفيذ في هذه المهمة واضحًا بالنسبة لي لفترة طويلة: من الضروري اكتساح جسم قطعة العمل بأداة ، أي محاكاة الآلات في KOMPAS-3D. لا يعني أنه كان سهلا. إجراء قطع باستخدام مجموعة من العديد من مواضع الأدوات غير صحيح وطويل. من الضروري تشكيل مجموعة من أسطح مواضع الأداة وإنشاء سطح مظروف للقطع على طولها. وهو ما حدث في الأساس ، لكنه عمل ببطء شديد.
بالإضافة إلى ذلك ، كان من الضروري إضافة الواقعية إلى العملية ، أي لمراعاة التسامح في تشكيل الهندسة ثلاثية الأبعاد. بشكل عام ، بعد حل مشكلة واحدة ، أردت المزيد - المزيد من الدقة ، وقياسات سن عجلة الدودة وتشكيل قادة في الرسومات مع ملف تعريف هذا السن (ماذا لو أراد تقنيو الأداة عمل قوالب قياس؟). بالمناسبة ، في نفس العام ، تم تصنيع زوجين من عجلات الدودة وفقًا لنماذجي في مصنع Kazzinkmash ، والتي تم وضعها بنجاح في وحدات العمل وتلقى ردود فعل إيجابية.


هيا! في خريف عام 2015 ، مع تقديم (أو ركلة) فلاديمير بانتشينكو ، رئيس قسم تطبيق KOMPAS-3D ، وتحت وصاية أليكسي سلطانوف ، بدأت في دراسة البرمجة على نواة C3D ، التي تم بناء KOMPAS-3D عليها. الهدف هو الحصول على الحرية! وحصلت عليه. لم أعد محدودًا بعدد العمليات والإجراءات التي تم تنفيذها. حدث كل شيء بسرعة كافية. عند المخرج ، كان لدي جسم - مجموعة من القواطع من الشغل لعجلة الدودة. حسنًا ، كل شيء بسيط: العملية المنطقية وعجلة الدودة جاهزة.

نيكولاي جولوفانوف ، رئيس التطوير ، مختبرات C3D
تعمل بعض تطبيقات نظام KOMPAS-3D ، بما في ذلك تطبيق "مهاوي وناقلات ميكانيكية 3D" ، بشكل مباشر مع النواة الهندسية C3D. يتيح ذلك لمطوري التطبيقات نهجًا أكثر مرونة لحل مشكلاتهم من خلال توسيع الوظائف (العمل مع الوظائف ذات المستوى المنخفض) وتقنيات إنشاء العناصر الهندسية.
إذا كنت تكتب تطبيقًا لـ KOMPAS-3D وتريد استخدام إمكانات C3D مباشرة ، فمن المنطقي الرجوع إلى النواة المدمجة في KOMPAS-3D نفسها. هذه الطريقة لها حد واحد: تحتاج إلى استخدام C ++ فقط ، حيث يتم كتابة COMPASS نفسها بهذه اللغة. إذا قررت العمل مع نسخة منفصلة من النواة داخل تطبيقك الخاص ، فإن C # ، وفي بعض الحالات ، ستكون JavaScript متاحة لك.
تبع ذلك اسطوانات تروس خارجية. قد يبدو الأمر بسيطًا ، ولكن في الوقت نفسه ، في حالة الترس الحلزوني وعملية قطع المسمار في KOMPAS-3D ، استغرق API أيضًا وقتًا طويلاً في البناء. الآن يمكن تشكيل هذه التروس بدعم حقيقي.
حسنًا ، في نهاية عام 2015 ، بدأت عملية العمل على الأسنان المخروطية بأسنان دائرية.
بحلول ذلك الوقت ، تم وضع الخوارزمية على COMPASS API. تم تشكيل النماذج الأولى ذات الهندسة غير الجيدة قبل يوم من الوقت الخالص. هنا ، ملاحظة واحدة من الأسطح لم تكن كافية. تم إنشاء التروس المائلة المخروطية ، وكان من الضروري تشكيل عجلة من خلال معالجتها برأس قطع تروس نموذجي. ثم ، وفقًا للهندسة ثلاثية الأبعاد التي تم الحصول عليها ، قم بتشكيل النموذج الأولي للأداة وحفظه ، وإزالة الأبعاد المتحكم بها من كل هذا ونقلها إلى الرسم. علاوة على ذلك ، بالفعل على الترس ، نظرًا لأنه تبين أنه تم تشغيله بشكل مثالي ، كان من الضروري توطين جهة الاتصال ، أي لضمان الموقع الصحيح وحجم نقطة الاتصال في الترس.
مهمة صعبة ومثيرة للاهتمام للغاية. في بعض الأحيان ، حكم نيكولاي غولوفانوف وفريقه ، وفقًا لملاحظاتي ، وظيفة C3D. وهكذا ، كانت مخاريطي الصغيرة أيضًا اختبارًا جيدًا للنواة.

نيكولاي جولوفانوف ، رئيس التطوير ، مختبرات C3D
في الآونة الأخيرة ، في القلب الهندسي لـ C3D ، خضعت أسطح لوفت المبنية على أقسام لمعالجة كبيرة. تم استخدامها لمحاكاة نقاط الاتصال للتروس.
Konichki وفقًا لنماذجي تم إجراؤها بشكل متكرر في مؤسسات مختلفة وعمل في عُقد حقيقية. تم عمل خوارزمية الترجمة.

ولكن كان من الصعب التفكير في ذلك. لم يكن هذا التعريب يناسبني. كان من الصعب جدا تقديمه. وفي ربيع عام 2018 ، جاءت الفكرة عن طريقة "أكثر بساطة" للتوطين. في الواقع الفكرة ليست لي ، لقد تجسست عليها في مواد شركة Klingelnberg - لقد أطلقوا عليها اسم
الملف الشخصي والتتويج بالطول .

دعوتها "اصنع سنًا مع ربوة" ، وهو ما حدث. في كل مقطع من ملف تعريف القطع ، تم إعادة فرز الأصوات ، وكان التل ناجحًا. أصبحت معاملات التوطين أكثر بساطة ومفهومة.

باختصار حول النتيجة: نقطة التلامس ، وهي عبارة عن مجموعة من مناطق التلامس الفوري على سن الترس لكل دورة واحدة من دورانه = 360 / عدد أسنان الترس ، يقع الآن في منتصف السطح النشط للأسنان (في الجزء العلوي من "الربوة") ، حجمه أكثر من 60٪ السطح بأكمله.
ماذا يعطي:
- ستكون التروس أكثر متانة وموثوقية
- ستنخفض الضوضاء في الإرسال
- سيكون الإرسال أقل حساسية لأخطاء التركيب.
صحيح ، سيكون من الممكن تصنيعها فقط على CNC حتى الآن ، ولكن سيتم أيضًا رفع التقنيات المضافة في المستقبل.
حسنًا ، في النهاية ... تم تحقيق انتقال الحلم هذا العام ، أصعب حلمي اليوم هو انتقال هيبويد. الكثير الذي كان يجب القيام به لهذا ... بعد ست سنوات من العودة إلى تطوير CAD. على الرغم من أن المسار بدأ في الواقع في عام 1991 بمشروع مخصص لإنشاء برنامج لحساب التروس المائلة بأسنان دائرية.

وبطبيعة الحال ، يتم تنفيذ "كومة" الأسنان فيها.


فلاديمير بانتشينكو ، رئيس قسم التطبيقات KOMPAS-3D ، ASCON
كان الدافع وراء استخدام النواة في تطبيق "مهاوي وناقلات الحركة الميكانيكية" من خلال مراجعة "Kazzinkmash". كان من الواضح لي أنه يمكنك البناء بشكل أسرع ، كل ما تبقى هو إقناع فاليري بذلك. كان الظرف المشدد هو أن Valery لم يعجبه C ++ ، ويمكنك استخدام وظائف C3D في سياق KOMPAS-3D فقط في لغة البرمجة هذه. كان عليّ عمل تصميم ، بفضل أليكسي سلطانوف.
أعطت ترجمة بسيطة للرمز إلى الجبين على الفور مكاسب ملموسة في السرعة: تم بناء النموذج الدقيق لأسنان عجلة الدودة في 10 ثوانٍ. تم بناء عجلة الدودة على API لمدة ساعة تقريبًا.
حسنًا ، سمح إتقان فاليري بإنشاء مخروط بأسنان دائرية.
هذه هي الطريقة التي رفعنا بها مهاوي وناقلات الحركة الميكانيكية إلى مستوى جديد كليا.
كيف يعمل النواة ثلاثية الأبعاد في محاكاة التروس الميكانيكية
يتم استخدام العمليات الأكثر شيوعًا من وظيفة kernel: إنشاء طائرة ، وإنشاء رسم / سطح / تقاطع الأسطح ، إلخ.
كمثال ، ضع في اعتبارك تسلسل العمليات اللازمة لتشكيل نموذج ثلاثي الأبعاد لقطع عجلة مشطوفة ذات أسنان دائرية (أي العجلات ، وليس التروس):
- نحن نشكل سطح المخاريط - المخروط الفاصل ، مخروط القمم ومخروط القاع. للقيام بذلك ، يتم إنشاء الطائرات على المسافات المحسوبة المقابلة ويتم إنشاء مخططات الدوائر للأقطار المحسوبة عليها ، والمخاريط مبنية عليها بالفعل.
- نرسم نقاط مراكز مخروط التقسيم ومخروط الحوض.
- بعد ذلك ، يتم تشكيل مستوى مماسي إلى مخروط المنخفضات (1) وطائرة على طول منتصف منتصف العجلة في الاكتئاب (2). عند تقاطع المستوى (1) ومستوى XOY ، يتم تشكيل محور التقاطع (3) ، وعند تقاطع المستوى (2) والمستوى (1) ، يتم تشكيل محور التقاطع (4).
- عند تقاطع هذه المحاور سيكون هناك نقطة يمر من خلالها رأس رأس قطع التروس.

- من هذه النقطة ، معرفة متوسط زاوية ميل الأسنان (عند هذه النقطة فقط) ، نحسب مركز رأس قطع التروس.
- إسقاطات نصف قوس رأس قطع التروس على مخاريط الأحواض (5) والمخروط الفاصل سيكونان مرشدين لنا. في هذا الدليل (5) سيتم بناء السطح الأساسي للقطع (دور علوي في ثلاثة أقسام مع الشكل المحسوب لرأس قطع التروس).

- علاوة على ذلك ، من خلال إجراء لإجراء عملية مماثلة في زوايا مختلفة من دوران رأس قطع التروس عند تشغيل العجلة ، نحصل على مجموعة من الأسطح المقطوعة (6).

- بعد ذلك ، في عدد كافٍ من الأقسام (20 على الأقل) في الطائرات العادية إلى الدليل (إسقاط نصف قوس رأس قطع التروس على مخروط التقسيم) ، سيتم الحصول على مجموعات من خطوط تقاطع الصفيف السطحي.

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

- استنادًا إلى إجمالي هذه الأقسام من القواطع ، سيتم بناء الدور العلوي النهائي - قطع أسنان العجلة.



- سيتم أخذ أبعاد التحكم ، وملف الأسنان نفسه ، وكل هذا سيتم نقله إلى الرسم تلقائيًا من الهندسة التي تم الحصول عليها (يتم بناء السن ، ويتم إنشاء قسم ويتم إنشاء قسم وحسابه وفقًا له).


- كل شيء بسيط للغاية ، على الرغم من أنه في هذه الحالة بالذات ، ودون مراعاة الفروق الدقيقة "الصغيرة" للحسابات الرياضية المخفية عن أعين القراء.
ما هو المطلوب أيضا للسيد في هذه الحالة؟ الخيال المكاني والخيال والقدرة على الحلم في النهاية!

فلاديمير بانتشينكو ، رئيس قسم التطبيقات KOMPAS-3D ، ASCON
ما هو أسرع KOMPAS-3D أو C3D API؟ يبدو السؤال متناقضاً. C3D هو النواة الهندسية KOMPAS-3D! كيف تعمل النواة ، وكذلك COMPASS-3D. ولكن بعد الفحص الدقيق ، خاصة في سياق مطور التطبيق ، كل شيء في مكانه.
يبدو المخطط القياسي للمطور مثل هذا. يؤدي استدعاء وظيفة KOMPAS-3D API إلى إضافة كائن إلى نموذج المستند ، ثم لإنشاء الهندسة ، ننتقل إلى C3D. ثم على طول السلسلة ، بالترتيب العكسي ، يتم إرجاع البيانات إلى واجهة برمجة التطبيقات ، والآن في أيدي المطور واجهة الكائن الذي تم إنشاؤه.
في الوقت نفسه ، يحدث شيء ما مع البيانات في كل خطوة: في API يتم تجميعها في COM ، في نموذج المستند يتم التحقق من صحتها في السياق الحالي ، تتم إضافة السمات وبيانات الرسم. بالطبع ، تم تحسين جميع هذه الإجراءات ولا تستغرق وقتًا طويلاً. إذا كان المطور بحاجة إلى الحصول على خطوة رمح أسطواني ، فإنه ينشئ رسمًا وعملية بثق في KOMPAS-3D - فقط شيئين ومكالمتين على طول السلسلة. لكن الوضع يتغير بشكل أساسي في حالة الهندسة لعتاد شطبة بسن دائري. للقيام بذلك ، تحتاج إلى إنشاء العديد من المنحنيات والسطوح المساعدة (وكل هذه ليست أسطوانات وأقماع تحليلية ، ولكن NURBSs) ، تقاطعاتها. يبدأ ضخ البيانات في أخذ قدر كبير من الوقت. سيكون اللب خاملاً في الغالب. لتجنب ضياع الوقت ، يتم تقليل التفاعل مع واجهة برمجة التطبيقات ونموذج المستند إلى الحد الأدنى - أضف عملية مع الجسم وأخذ الجسم ، على غرار C3D. نحصل على دخول واحد إلى C3D ونقوم على النحو الأمثل على المكدس بإنشاء جميع الهندسة المساعدة ، وتقاطع ما هو مطلوب ، والحصول على النتيجة. النواة فقط تعمل وتعمل بسرعة كبيرة.
فاليري جولوفانيف ، محلل ومبرمج ، كورغان ، نقاط البيع. ستان ستان.