সহজ কথায়, ম্যাক্রো হল যন্ত্রাংশ প্রক্রিয়া করার জন্য সূত্র ব্যবহার করা। উদাহরণস্বরূপ, উপবৃত্তাকার, যদি কোনও ম্যাক্রো না থাকে, তাহলে আমাদের বক্ররেখার বিন্দুগুলিকে বিন্দুতে গণনা করতে হবে এবং তারপর ধীরে ধীরে এটিকে একটি সরল রেখা দিয়ে আনুমানিক করতে হবে। যদি এটি উচ্চ মসৃণতার প্রয়োজনীয়তা সহ একটি ওয়ার্কপিস হয়, তবে আমাদের অনেকগুলি পয়েন্ট গণনা করতে হবে, তবে ম্যাক্রো প্রয়োগ করার পরে, আমরা সিস্টেমে উপবৃত্তাকার সূত্রটি ইনপুট করি এবং তারপরে আমরা Z স্থানাঙ্ক দিই এবং প্রতিবার একটি পরিমাণ যোগ করি, তারপর ম্যাক্রো স্বয়ংক্রিয়ভাবে X স্থানাঙ্ক গণনা করবে এবং কাটা সঞ্চালন করবে। আসলে, প্রোগ্রামে ম্যাক্রোর প্রধান কাজ হল গণনা।
ছবি
01
ম্যাক্রো প্রোগ্রাম সম্পর্কে
একটি ম্যাক্রো প্রোগ্রাম কি
প্রোগ্রামিং করার সময়, আমরা একটি সাবরুটিনের মতো মেমরিতে একটি নির্দিষ্ট ফাংশন সম্পূর্ণ করতে পারে এমন একটি সিরিজ নির্দেশাবলী সংরক্ষণ করব এবং একটি সাধারণ নির্দেশ সহ তাদের কল করব। এটি ব্যবহার করার সময়, সংরক্ষিত ফাংশনটি কার্যকর করার জন্য আমাদের শুধুমাত্র এই সাধারণ নির্দেশনা দিতে হবে এই নির্দেশাবলীর এই সিরিজটিকে ব্যবহারকারীর ম্যাক্রো প্রোগ্রাম বডি বা সংক্ষেপে ম্যাক্রো প্রোগ্রাম বলা হয়।
এই সাধারণ কমান্ডটিকে ব্যবহারকারী ম্যাক্রো কল কমান্ড বলা হয়। প্রোগ্রামিং করার সময়, প্রোগ্রামারদের শুধুমাত্র ম্যাক্রো নির্দেশাবলী মুখস্ত করতে হবে কিন্তু ম্যাক্রো প্রোগ্রাম নয়।
ম্যাক্রো প্রোগ্রামিং কখন ব্যবহার করা হবে?
1) ম্যানুয়ালি প্রোগ্রাম করা প্রক্রিয়াকরণ সূত্র বক্ররেখা (সহজ গণনা, দ্রুত ইনপুট)
2) নিয়মিত কাটিয়া পথ (কাটিং মডিউল হিসাবে)
3) আন্তঃ-প্রোগ্রাম নিয়ন্ত্রণ (প্রোগ্রাম শিডিউলিং)
4) টুল ম্যানেজমেন্ট (টুল পরিধান)
5) স্বয়ংক্রিয় পরিমাপ (ইন-মেশিন প্রোব)
ম্যাক্রো প্রোগ্রাম এবং সাধারণ প্রোগ্রামের মধ্যে পার্থক্য
1) ম্যাক্রো প্রোগ্রাম বডিতে, ভেরিয়েবলগুলি ব্যবহার করা যেতে পারে, ভেরিয়েবলগুলিতে মান নির্ধারণ করা যেতে পারে, ভেরিয়েবলগুলির মধ্যে গণনা করা যেতে পারে এবং প্রোগ্রামগুলি লাফানো যেতে পারে।
2) সাধারণ প্রোগ্রামগুলিতে, শুধুমাত্র ধ্রুবকগুলি নির্দিষ্ট করা যেতে পারে, এবং ধ্রুবকের মধ্যে ক্রিয়াকলাপগুলি সম্পাদন করা যায় না। প্রোগ্রামগুলি শুধুমাত্র ক্রমানুসারে চালানো যেতে পারে এবং লাফানো যায় না, তাই ফাংশনগুলি স্থির থাকে এবং পরিবর্তন করা যায় না।
3) ম্যাক্রো ফাংশন ব্যবহারকারীর জন্য CNC মেশিন টুলের কর্মক্ষমতা উন্নত করার জন্য একটি বিশেষ ফাংশন, এবং অনুরূপ ওয়ার্কপিসগুলির প্রক্রিয়াকরণে ম্যাক্রো প্রোগ্রামের দক্ষ ব্যবহার অর্ধেক প্রচেষ্টার সাথে দ্বিগুণ ফলাফল অর্জন করবে।
02
ম্যাক্রো প্রোগ্রামের ভেরিয়েবল এবং ফরম্যাট
ম্যাক্রো প্রোগ্রামের বৈশিষ্ট্য
ম্যাক্রো প্রোগ্রাম ভেরিয়েবল ব্যবহার করতে পারে, এবং ভেরিয়েবলটি সংশ্লিষ্ট ক্রিয়াকলাপ সম্পাদন করতে ব্যবহার করা যেতে পারে; প্রকৃত পরিবর্তনশীল মান ম্যাক্রো প্রোগ্রাম নির্দেশ দ্বারা ভেরিয়েবলে বরাদ্দ করা যেতে পারে।
ভেরিয়েবল তিন প্রকার
CNC সিস্টেমের ভেরিয়েবল রিপ্রেজেন্টেশন ফর্ম হল "#" এর পরে 1 থেকে 4 ডিজিট, এবং তিন ধরনের ভেরিয়েবল আছে:
(1) স্থানীয় ভেরিয়েবল: #1~#33 হল ম্যাক্রো প্রোগ্রামে স্থানীয়ভাবে ব্যবহৃত ভেরিয়েবল, যা স্বাধীন পরিবর্তনশীল স্থানান্তরের জন্য ব্যবহৃত হয়।
(2) সাধারণ ভেরিয়েবল: ব্যবহারকারী এটি অবাধে ব্যবহার করতে পারে এবং এটি প্রতিটি সাবরুটিন এবং প্রতিটি ম্যাক্রো প্রোগ্রামের জন্য সাধারণ যা মূল প্রোগ্রাম দ্বারা ডাকা হয়। #100~#149, পাওয়ার বন্ধ করার পরে, সমস্ত পরিবর্তনশীল মানগুলি সাফ হয়ে যাবে, যখন #500~#509, পাওয়ার বন্ধ করার পরে, পরিবর্তনশীল মানগুলি সংরক্ষণ করা যেতে পারে।
(3) সিস্টেম ভেরিয়েবল: এটি 4 সংখ্যা দ্বারা অনুসরণ করে সংজ্ঞায়িত করা হয়, এটি মেশিন টুল প্রসেসর বা NC মেমরির মধ্যে থাকা শুধুমাত্র পঠন/পাঠন/লিখতে তথ্য পেতে পারে, যার মধ্যে মেশিন টুল প্রসেসর সম্পর্কিত এক্সচেঞ্জ প্যারামিটার, মেশিন টুল স্টেট অধিগ্রহণ। প্যারামিটার, সিস্টেম তথ্য যেমন প্রক্রিয়াকরণ পরামিতি।
ম্যাক্রো প্রোগ্রামের সহজ কলিং বিন্যাস
ম্যাক্রো প্রোগ্রামের সাধারণ কলের অর্থ হল যে মূল প্রোগ্রামে, ম্যাক্রো প্রোগ্রামটি একটি একক ব্লক দ্বারা কল করা যেতে পারে।
আমন্ত্রণ বিন্যাস:
G65 P (ম্যাক্রো প্রোগ্রাম নম্বর) L (পুনরাবৃত্তির সংখ্যা) (ভেরিয়েবল অ্যাসাইনমেন্ট)।
তাদের মধ্যে: G65—ম্যাক্রো প্রোগ্রাম কল কমান্ড;
P (ম্যাক্রো প্রোগ্রাম নম্বর) - ম্যাক্রো প্রোগ্রামের কোড কল করা হবে;
এল (পুনরাবৃত্তির সংখ্যা) - ম্যাক্রো প্রোগ্রামের পুনরাবৃত্তির সংখ্যা, যখন পুনরাবৃত্তির সংখ্যা 1 হয়, তখন এটি বাদ দেওয়া যেতে পারে;
(ভেরিয়েবল অ্যাসাইনমেন্ট) - ম্যাক্রো প্রোগ্রামে ব্যবহৃত ভেরিয়েবলের জন্য মান বরাদ্দ করুন।
একটি ম্যাক্রো প্রোগ্রাম এবং একটি সাবরুটিনের মধ্যে একই জিনিস হল যে একটি ম্যাক্রো প্রোগ্রামকে অন্য ম্যাক্রো প্রোগ্রাম দ্বারা 4 বার পর্যন্ত কল করা যেতে পারে।
ম্যাক্রো প্রোগ্রাম লেখার বিন্যাস
একটি ম্যাক্রো প্রোগ্রামের লেখার বিন্যাস একটি সাবরুটিনের মতোই। এর বিন্যাস হল:
0-(0001-8999 হল ম্যাক্রো প্রোগ্রাম নম্বর)
N10 কমান্ড
N-M99
উপরের ম্যাক্রো প্রোগ্রামের বিষয়বস্তুতে, সাধারণত ব্যবহৃত প্রোগ্রামিং নির্দেশাবলী ছাড়াও, ভেরিয়েবল, গাণিতিক অপারেশন নির্দেশাবলী এবং অন্যান্য নিয়ন্ত্রণ নির্দেশাবলীও ব্যবহার করা যেতে পারে। পরিবর্তনশীল মান ম্যাক্রো প্রোগ্রাম কল নির্দেশে বরাদ্দ করা হয়।
03
FANUC সিস্টেম ম্যাক্রো প্রোগ্রাম অ্যাপ্লিকেশন
(1) ম্যাক্রো প্রোগ্রাম গ্রুভিং
ছবি
1) যখন বিবৃতি
G00 X52 Z2;
#2=-14;
এটি z দিকের টুলের সূচনা বিন্দু (কারণ টুলের প্রস্থ 4 মিমি, শুরুর বিন্দু Z-14 এ সেট করা আছে)
যখন [#2 GE -30] DO2;
এটি z দিকের একটি সীমাবদ্ধতা। যখন z সমান হয় -30, তখন z দিকটি আর সরবে না
G00 Z〔#2〕;
z দিক বর্তমান অবস্থান
#2=#2-2;
z দিকে চলমান পদক্ষেপ, প্রতিবার 2 মিমি সরানো
#1=52;
x দিকে ছুরির সূচনা বিন্দু
যখন [#1 GE 20] DO1;
X দিকের সীমাবদ্ধতা, ব্যাস 20 এর সমান হলে, এটি আর কাটা হবে না
G01 X〔#1〕F0.2;
x দিকে কাটার গভীরতা
G00 X〔#1 প্লাস 1〕;
x দিকে আপেক্ষিক প্রত্যাহার পরিমাণ
#1=#1-1;
ধাপ দূরত্ব x দিকে (প্রতিবার 1 মিমি কাটুন)
END1;
G00 X52;
END2;
সম্পূর্ণ প্রোগ্রাম:
O1234;
G40 G97 G99;
T0101;
S1000 M3;
G00 X52 Z2;
#2=-14;
যখন 〔#2GE-30〕DO2; END1;
G00 Z〔#2〕;
#2=#2-2;
#1=52
যখন 〔#1GE20〕DO1;
G01X〔#1〕F0.2;
G00X〔#1 প্লাস 1〕;
#1=#1-1;
G00 X52;
END2;
G00 X150 Z150;
M30;
2) IF বিবৃতি
G00 X52 Z-2;
#1=-14;
এটি টুলের z-দিক-নির্দেশের প্রারম্ভিক বিন্দু (টুলটির প্রস্থ 4 মিমি)
N2 #1=#1-2;
z দিক আন্দোলনের ধাপ
#2=52;
x দিকের টুলের সূচনা বিন্দু
N1#2=#2-1;
x দিকের ধাপের দূরত্ব হল (প্রতিবার গভীরতা 1 মিমি কাটা)
G01 X〔#2〕F0.2;
X দিকে বর্তমান অবস্থান
G00 X〔#2 প্লাস 1〕;
X দিক থেকে আপেক্ষিক প্রত্যাহার পরিমাণ
যদি [#2 GE 21] GOTO1;
x দিকনির্দেশে সীমাবদ্ধতা (যখন x এর মান 20 এ কাটা হয়, নিম্নলিখিত পদ্ধতিটি সঞ্চালিত হবে, এবং কোন রিটার্ন করা হবে না)
G00 X52;
X 52 অবস্থানে প্রত্যাহার করে
G00 Z〔#1〕;
Z দিক বর্তমান অবস্থান
যদি [#1 GE -30] GOTO2;
Z দিকনির্দেশের সীমাবদ্ধতা, যখন z সমান হয় -30, তখন z দিকটি সরবে না
সম্পূর্ণ প্রোগ্রাম:
O1234;
G40G97G99;
T0101;
S1000M3;
G00 X52 Z-2;
#1=-14;
N2 #1=#1-2;
#2=52;
N1#2=#2-1;
G01 X〔#2〕F0.2;
G00 X〔#2 প্লাস 1〕;
IF〔#2GE21〕GOTO1;
G00X52;
G00Z〔#1〕;
IF[#1GE-30]GOTO2;
G00X200;
Z200;
M5;
M30;
(2) উপবৃত্তাকার প্রোগ্রামিং
1) উপবৃত্তের স্ট্যান্ডার্ড বিন্যাস WHILE স্টেটমেন্ট:
#1=a;
a: উপবৃত্তের অক্ষ Z-এর সাপেক্ষে একটি মিমি ইতিবাচক দিক থেকে টুলের শুরুর বিন্দু।
যখন [#1 GE b] DO1;
b: উপবৃত্ত প্রক্রিয়াকরণের শেষ বিন্দুটি উপবৃত্তের Z অক্ষের সাপেক্ষে b mm নেতিবাচক দিকে থাকে (যদি একটি সম্পূর্ণ অর্ধ-উপবৃত্ত প্রক্রিয়া করা হয়, তাহলে a এবং b একই মান এবং বিভিন্ন চিহ্ন সহ দুটি মান)
#2= c*SQRT[1-#1*#1/d*d];
c: উপবৃত্তের অর্ধেক অক্ষ
d: উপবৃত্তের আধা-প্রধান অক্ষ (অধিবৃত্তের সূত্র অনুসারে #2 গণনা করুন, আধা-প্রধান অক্ষ হল d, অর্ধ-প্রধান অক্ষ হল c, #2 হল X-এর মান, #1 হল Z-এর মান। , এবং SQRT মানে বর্গমূল)
G01 X〔±2*#2 প্লাস e〕Z〔#1±f〕;
e: ওয়ার্কপিস স্থানাঙ্ক সিস্টেমের সাথে সম্পর্কিত উপবৃত্তের X অক্ষের অফসেট (ব্যাস মান)
f: ওয়ার্কপিস স্থানাঙ্ক সিস্টেমের সাথে সম্পর্কিত উপবৃত্তের Z অক্ষের অফসেট
#1=#1-1; ধাপ দূরত্ব (প্রতিবার 1 মিমি সরানো)
END1;
দ্রষ্টব্য: অবতল উপবৃত্ত বাঁকানোর সময়, X এর পর বন্ধনীতে "±" কে "-" হিসাবে নেওয়া হয়; একটি উত্তল উপবৃত্ত বাঁকানোর সময়, X এর পর বন্ধনীতে "±" কে " প্লাস" হিসাবে নেওয়া হয়।
যখন উপবৃত্তের X-অক্ষ ধনাত্মক দিকে সরে যায়, তখন বন্ধনীতে Z-এর পরে "±" লাগে " প্লাস "; যখন উপবৃত্তের X-অক্ষ ঋণাত্মক দিকে সরে যায়, তখন বন্ধনীতে "±" Z এর পরে "-" নেয়
2) উপবৃত্তাকার IF স্টেটমেন্টের আদর্শ বিন্যাস
#1=a;
a: উপবৃত্তের অক্ষ Z-এর সাপেক্ষে একটি মিমি ইতিবাচক দিক থেকে টুলের শুরুর বিন্দু।
N1#2=b*SQRT〔1-#1*#1/c*c〕;
b: উপবৃত্তের অর্ধ-সংক্ষিপ্ত অক্ষ c: উপবৃত্তের আধা-প্রধান অক্ষ (অধিবৃত্ত সূত্র X/c প্লাস Y/b=1 অনুসারে, SQRT মানে বর্গমূল)
G01X〔±2*#2 প্লাস d〕Z〔#1±e〕F0.2; d: স্থানাঙ্ক শূন্য বিন্দুর সাপেক্ষে উপবৃত্তের X অক্ষের অফসেট (ব্যাস মান) e: উপবৃত্তের Z অক্ষ শূন্য সমতল অফসেটের সাপেক্ষে
#1=#1-1;
ধাপের দূরত্ব (প্রতিবার 1 মিমি সরানো)
IF [#1 GE -f] GOO1
f: উপবৃত্তাকার প্রক্রিয়াকরণের সমাপ্তি
দ্রষ্টব্য: অবতল উপবৃত্ত বাঁকানোর সময়, X এর পর বন্ধনীতে "±" কে "-" হিসাবে নেওয়া হয়; একটি উত্তল উপবৃত্ত বাঁকানোর সময়, X এর পর বন্ধনীতে "±" কে " প্লাস" হিসাবে নেওয়া হয়। উপবৃত্তের X-অক্ষ ধনাত্মক দিকে বিচ্যুত হলে, Z-এর পর বন্ধনীতে "±" লাগে " প্লাস "; যখন উপবৃত্তের X-অক্ষটি নেতিবাচক দিকে বিচ্যুত হয়, তখন বন্ধনীতে "±" Z এর পরে "-" নেয়।
ছবি
যখন বিবৃতি
#1=20;
যখন 〔#1GE-20〕DO1;
#2=10*SQRT〔1-#1*#1/400〕;
G01X〔-2*#2 প্লাস 50〕Z〔#1-25〕;
#1=#1-1;
END1;
IF বিবৃতি
#1=20;
N1#2=10*SQRT〔1-#1*#1/400〕;
G01X〔-2*#2 প্লাস 50〕Z〔#1-25〕F0.2;
#1=#1-1;
IF[#1GE-20]GOTO1;
সম্পূর্ণ প্রোগ্রাম
O1234;
G40G97G99;
T0101;
S1000 M3;
G00 X50 Z2;
G73 U5 R5;
G73 P10 Q20 U0.5 F0.2;
N10 G0 G42 Z-5;
#1=20;
যখন 〔#1GE-20〕DO1;
#2=10*SQRT〔1-#1*#1/400〕;
G01X〔-2*#2 প্লাস 50〕Z〔#1-25〕F0.2;
#1=#1-1;
END1;
G00 X50;
N20 G00 G40 Z2;
G70 P10 Q20;
G00 X200;
Z200;
M5;
M30;
IF স্টেটমেন্টের সম্পূর্ণ বিন্যাসটি বাদ দেওয়া হয়েছে (যতক্ষণ চক্রটি যোগ করা হয় ততক্ষণ IF স্টেটমেন্টের ক্ষেত্রেও এটি সত্য)। FANUC-0i সিস্টেমে, ম্যাক্রো প্রোগ্রাম শুধুমাত্র G73 এ যোগ করা যেতে পারে।
(3) প্যারাবোলা প্রক্রিয়াকরণ
1) প্যারাবোলিক WHILE স্টেটমেন্টের স্ট্যান্ডার্ড ফরম্যাট:
#1=a;
a: টুলটির প্রারম্ভিক বিন্দু হল প্যারাবোলিক অক্ষ Z এর দিকে একটি মিমি
যখন [#1 GE -b] DO1;
b: z দিকে উপবৃত্তের প্রক্রিয়াকরণ দৈর্ঘ্য
#{{0}SQRT〔-#1*5/3〕;
(প্যারাবোলিক সূত্র Z=-3/5*X*X অনুসারে, X এর মান খুঁজুন, যা #2, যেখানে SQRT মানে বর্গমূল)
G01 X〔±2*#2 প্লাস c〕Z〔#1〕;
c: ওয়ার্কপিস স্থানাঙ্ক সিস্টেমের সাপেক্ষে প্যারাবোলার X অক্ষের অফসেট (ব্যাস মান) "±"
" প্লাস " নেওয়ার সময়, এটি উত্তল হয় এবং "-" নেওয়ার সময় এটি অবতল হয়
#1=#1-1; ধাপের দূরত্ব (প্রতিবার 1 মিমি সরানো)
END1;
2) প্যারাবোলিক IF স্টেটমেন্টের আদর্শ বিন্যাস
#1=a;
a: টুলটির প্রারম্ভিক বিন্দু হল প্যারাবোলিক অক্ষ Z এর দিকে একটি মিমি
N1 #2=SQRT〔-#1*5/3〕;
(প্যারাবোলিক সূত্র Z=-3/5*X*X অনুসারে, X এর মান খুঁজুন, যা #2, যেখানে SQRT মানে বর্গমূল)
G01 X〔±2*#2 প্লাস b〕Z〔#1〕;
b: এটি স্থানাঙ্ক শূন্য বিন্দুর সাপেক্ষে প্যারাবোলার X-দিক অক্ষের অফসেট (ব্যাস মান)। "±" যখন " প্লাস" নেয়, তখন এটি উত্তল হয় এবং যখন "-" নেওয়া হয়, তখন এটি অবতল হয়
#1=#1-1;
(জেড দিক থেকে ধাপের দূরত্ব, প্রতিটি আন্দোলন 1 মিমি)
IF〔#1 GE -c〕GOTO1; c: z দিকে উপবৃত্তের প্রক্রিয়াকরণ দৈর্ঘ্য
প্যারাবোলিক IF
বাক্যের অন্য রূপ
#1=a;
N1 #2=SQRT〔( প্লাস)#1*5/3〕;
"প্লাস" চিহ্নটি বাদ দেওয়া যেতে পারে
G01 X〔2*#2 প্লাস b〕Z〔-#1〕;
#1=#1 প্লাস 1;
যদি [#1 LE c] GOTO1;
ধরে নিই যে প্যারাবোলা Z এর ধনাত্মক দিকে আছে, তাহলে Z〔-#1〕 ব্যবহার করুন; প্যারাবোলাকে নেতিবাচক দিকে প্রতিসম করতে
ছবি
যখন বিবৃতি
#1=0;
যখন [#1 GE -15] DO1;
#{{0}SQRT〔-#1*5/3〕;
G01 X〔2*#2 প্লাস 30〕Z〔#1〕;
#1=#1-1;
END1;
IF বিবৃতি
#1=0;
N1 #2=SQRT〔-#1*5/3〕;
G01X〔2*#2 প্লাস 30〕Z〔#1〕;
#1=#1-1;
যদি [#1 GE -15] GOTO1;
সম্পূর্ণ প্রোগ্রাম
O1234;
G40 G97 G99;
T0101;
S1000 M3;
G00 X42 Z1;
G73 U5 R5;
G73 P10 Q20 U0.5 F0.2;
N10 G00 G42 Z0;
#1=0;
যখন [#1 GE -15] DO1;
#{{0}SQRT〔-#1*5/3〕;
G01 X〔2*#2 প্লাস 30〕Z〔#1〕;
#1=#1-1;
END1;
G00 X42;
N20 G00 G40 Z2;
G70 P10 Q20;
G00 X200;
Z200;
M5;
M30;
(4) WHILE স্টেটমেন্ট এবং IF স্টেটমেন্টের মধ্যে পার্থক্য
1) দুটি বক্তব্যের দিকনির্দেশ ভিন্ন
WHILE বিবৃতি পিছনে ফিরে আসে
উদাহরণ: WHILE〔#1 GE 20〕DO1;
G01 X〔#1〕F0.2;
অনুমান করা হচ্ছে যে যখন মেশিন টুলটি এই বাক্যটি কার্যকর করে, #1=20, তখন এটি চালানো অব্যাহত থাকবে। #1=#1-1 কার্যকর করার পরে, #1 এর মান 19 হয়ে যায়, যা আর সীমাবদ্ধতার শর্ত পূরণ করে না, তাই এটি ফিরে আসবে না। (X দিক থেকে 20 কাটুন)
G00 X〔#1 প্লাস 1);
#1=#1-1;
END1;
2) IF স্টেটমেন্ট ফরোয়ার্ড রিটার্ন করে
উদাহরণ: N1 #2=#2-1;
G01X〔#2〕F0.2; ধরে নিচ্ছি যে #2=20 যখন মেশিন টুলটি এই বাক্যটি কার্যকর করে, এটি IF〔#2 GE 20〕GOTO1 পর্যন্ত কার্যকর হতে থাকবে; যদি শর্তটি এখনও সন্তুষ্ট হয়, এটি N1# 2=#2-1-এ ফিরে যেতে থাকবে; এবং বর্তমান X মান 19 হয়ে যাবে, যা আর সীমাবদ্ধতার শর্ত পূরণ করে না, এবং তারপরে অন্যটি চালায়
G01X〔#2〕F0.2; অবশেষে, নিম্নলিখিত প্রোগ্রামটি চালান (এক্স দিকটি 19 এ কাটা হয়েছে)
G00X〔#2 প্লাস 1);
যদি [#2 GE 20] GOTO1;
3) উপরের গ্রুভিং প্রোগ্রাম থেকে দেখা যায়, IF স্টেটমেন্টে শব্দের সংখ্যা WHILE স্টেটমেন্টের তুলনায় অনেক কম।
4) বিভিন্ন রিটার্ন নির্দেশের কারণে, প্রক্রিয়াকরণের সময় WHILE স্টেটমেন্টের জন্য একটি কম বাক্য এবং IF স্টেটমেন্টের জন্য আরও একটি বাক্য পড়ুন।
04
সিমেনস সিস্টেম (লেদ) ম্যাক্রো প্রোগ্রাম অ্যাপ্লিকেশন
দ্রষ্টব্য: ম্যাক্রো প্রোগ্রামটি ভেরিয়েবল দিয়ে প্রোগ্রাম করা হয় এবং সিমেন্স সিস্টেমের পরিবর্তনশীল সংখ্যা R দ্বারা উপস্থাপন করা হয়।
উদাহরণস্বরূপ, সাধারণ প্রোগ্রামিং পদ্ধতিতে লেখা: G01X-10
ম্যাক্রো প্রোগ্রামকে এভাবে প্রকাশ করা যেতে পারে:
R1=-10
G01 X=R1
শর্তাধীন স্থানান্তর:
যদি GOTOB: পিছনের দিকে ঝাঁপ দাও
যদি GOTOF: এগিয়ে যান
সাধারণ প্রোগ্রামিংয়ে লেখা
GO1X100
ভেরিয়েবলগুলিকে এভাবে প্রকাশ করা যেতে পারে:
R1=0
AA: R1=R1 প্লাস 1
G01X=R1
IF R1<100 GOTOB AA
R1 হল একটি স্বাধীন ভেরিয়েবল, প্রাথমিক মান হল 0, R1=R1 প্লাস 1 মানে স্বাধীন ভেরিয়েবলের ক্রমবর্ধমান মান হল 1, যখন প্রোগ্রামটি প্রতিবার এই লাইনের মধ্য দিয়ে যায়, তখন এর মান R1 বাড়ে 1, R1<100 is a conditional expression, IF R1<100 GOTOB AA This line means that if the argument R1<100, the program jumps backward to the mark: AA
R1 100-এর থেকে বেশি বা সমান হলে, প্রোগ্রামটি নিচে চলে যায়।
ম্যাক্রো প্রোগ্রাম G90 এবং G91 উভয় মোডে ব্যবহার করা যেতে পারে, কিন্তু তাদের অর্থ ভিন্ন, উদাহরণস্বরূপ;
R1=0, G90R1=R1 প্লাস 1, G1X=R1, এই প্রোগ্রামের দ্বিতীয় পাসের পরে X এর মান হল 2।
R1=0, G91R1=R1 প্লাস 1, G1X=R1, প্রোগ্রামের দ্বিতীয় পাসের পরে X-এর মান হল 3। ব্যাখ্যা: R1-এর মান হল প্রথমটির পরে 1 প্রোগ্রামের পাস, এবং R1 এর মান হল দ্বিতীয় পাস এটি 2, কিন্তু G91 মোডে এটি আগেরটির উপর ভিত্তি করে।
(1) খাঁজকাটা
ছবি
T1
টিসি
T1D1
G0G40X100Z100
M03S1000
G0X54Z2
দ্রুত স্টার্টিং পয়েন্টে পৌঁছান
Z-10
R1=3
ব্লেডের প্রস্থ 3 মিমি হিসাবে সংজ্ঞায়িত করুন
R2=-10-R1-0.2
টুলের সূচনা বিন্দু হল -10, এবং টুল সেট করার সময় ব্লেডের বাম দিকে ব্যবহার করা হয়;
টুল সেটিং, তাই ব্লেডের প্রস্থ বিয়োগ করা উচিত, 0.2 হল ফিনিশিং অ্যালাউন্স
G1Z=R2F0.1
টুলটি Z অক্ষের প্রারম্ভিক বিন্দুতে পৌঁছায়
AA:R2=R2-2}.5
R3=50
খাঁজের X অক্ষ বিন্দুতে পৌঁছেছে
BB: R3=R3-2
প্রতিটি ছুরির কাটিং গভীরতা 2 মিমি হিসাবে সংজ্ঞায়িত করুন
G1X=R3
X=R3 প্লাস 1
0. কাটার প্রতি 2 মিমি গভীরতার একপাশে 5 মিমি চিপ অপসারণ
IF R3>30 প্লাস 0.4 GOTOB BB
Define the groove depth as 10mm, if R3>30মিমি, প্রোগ্রামটি বিবি চিহ্নে পিছনের দিকে যায়, এবং 0.4 হল সমাপ্তি ভাতা
G0X50
টুলটি X অক্ষের প্রারম্ভিক বিন্দুতে পৌঁছেছে
G1Z=R2
IF R2>{{0}} প্লাস 0.2 GOTOB AA
খাঁজের প্রস্থকে 20মিমি হিসাবে সংজ্ঞায়িত করুন এবং 0.2 হল সমাপ্তি ভাতা
G0X50
G01Z-13
সমাপ্তি
X30
Z-16
G0X50
Z-30
G01X30
Z-16
G0X50
প্রত্যাহার করুন
G0X100
Z100
M05
M30
(2) উপবৃত্তাকার
1) মৌলিক বিন্যাস
R1=0
0 এর প্রাথমিক মান সহ ভেরিয়েবল R1 সংজ্ঞায়িত করুন
AA:R2=b×SQRT(1-R1×R1/a×a)
উপবৃত্তাকার সমীকরণ অনুসারে, a হল উপবৃত্তের আধা-প্রধান অক্ষ, b হল উপবৃত্তের অর্ধ-গৌণ অক্ষ এবং SQRT হল বর্গমূল প্রতীক।
G1X=±2×R2 প্লাস XZ=R1-Z
উপবৃত্তের অবস্থান এবং আকৃতি নির্ধারণ করুন, প্লাস 2 হল উত্তল, -2 হল অবতল, X, Z হল ওয়ার্কপিসের অক্ষ এবং উপবৃত্তের (ব্যাস সিস্টেম) অক্ষের মধ্যে দূরত্ব।
R1=R1-1
প্রক্রিয়াকরণ পদক্ষেপ সেট করুন
IF R1>=এন গোটোব এএ
ভেরিয়েবল R1 হলে
2) প্রোগ্রামিং উদাহরণ:
ছবি
T1D1
G0G40X100Z100
M3S1000
G0X52Z2
Z-20
CYCLE95 ( )
G42S1500
ওও:
R1=20
AA:R{{0}×SQRT(1-R1×R1/400)
G1X=-2×R2 প্লাস 50 Z=R1-40
R1=R1-2
IF R1>=-20 GOTOB AA
PP:X42
G0G40X100Z100
M05
M09
M30
(3) প্যারাবোলা
1) মৌলিক বিন্যাস:
R1=0
ভেরিয়েবল R1 এর প্রাথমিক মান 0 এ সেট করুন
AA: R2=SQRT(-R1×n)
প্যারাবোলার মৌলিক বিন্যাস অনুযায়ী প্রাপ্ত, যেখানে SQRT হল বর্গমূল প্রতীক, এবং n হল সহগ
G01X=2×R2 প্লাস n
Z=R1
প্রসেসিং পাথ, প্লাস 2 হল উত্তল, n হল X অক্ষের শুরু বিন্দুর মান
R1=R1-1
পরিবর্তনশীল বৃদ্ধির মান হল 1 মিমি
IF R1>-30 GOTOB AA
If the variable R1>-30, প্রোগ্রামটি চিহ্নে পিছনে চলে যায়: AA
2) প্রোগ্রামিং উদাহরণ:
ছবি
T1
TC
T1D1
G0G40X100Z100
M03S1000
G0X52Z2
CYCLE95 ( )
G0G42
ওও:
R1=0
AA:R2=SQRT(-R1×5/3)
G01X=2×R2 প্লাস 30 Z=R1
R1=R1-2
IF R1>-60 GOTOB AA
পিপি: X52
G0X100Z100
M05
M30




