עבור מכונות אוטומציה הדורשות רק שניים עד שלושה צירים של מפעילים חשמליים, יציאות פולסים עשויות להיות הדרך הפשוטה ביותר.
שימוש ביציאות פולסים מ-PLC הוא דרך חסכונית לקבלת תנועה פשוטה. רוב יצרני ה-PLC, אם לא כולם, מספקים דרך לשלוט בסרוו ובסטפרים באמצעות אות פולסים. לכן, כאשר מכונה פשוטה צריכה להיות אוטומטית על שניים או שלושה צירים בלבד במפעילים חשמליים, יציאות פולסים יכולות להיות קלות הרבה יותר להגדרה, חיווט ותכנות מאשר שימוש באותות אנלוגיים. זה עשוי גם לעלות פחות משימוש בתנועה ברשת כגון Ethernet / IP.
אז בואו נסתכל על שליטה במנוע צעד או סרוו בעזרת דרייבר או מגבר בין הבקר למנוע, בדגש על אותות הפולסים המשמשים את הבקר או האינדקסר.
יסודות רכבת הדופק
מנועי צעד וגרסאות של מנועי סרוו הנשלטות על ידי פעימות יכולות להסתובב בשני הכיוונים. משמעות הדבר היא שבקר צריך לספק, לכל הפחות, שני אותות בקרה להינע. ישנן שתי דרכים לספק אותות אלה, ויצרנים שונים מכנים אותם דברים שונים. ישנן שתי דרכים נפוצות להתייחס לשתי סכמות אותות הבקרה בהן אתם משתמשים: "מצב 1P", המכונה גם "מצב צעד/כיוון", ו"מצב 2P", הנקרא "מצב CW/CCW" או מצב עם כיוון השעון/נגד כיוון השעון. שני המצבים דורשים שני אותות בקרה מהבקר להינע.
במצב 1P, אות בקרה אחד הוא רכבת פעימות או אות "צעד". האות השני הוא קלט כיווני. אם הקלט הכיווני פועל, ואות פעימות קיים בקלט הצעד, המנוע מסתובב עם כיוון השעון. לעומת זאת, אם אות הכיוון כבוי ואות פעימות קיים בקלט הצעד, המנוע מסתובב בכיוון השני, או נגד כיוון השעון. רכבת הפעימות תמיד נמצאת על אותו קלט, לא משנה מה הכיוון הרצוי.
במצב 2P, שני האותות הם רכבת פולסים. רק קלט אחד בכל פעם יהיה בעל תדר, כך שאם רכבת פולסים CW קיימת, המנוע מסתובב CW. אם רכבת פולסים CCW קיימת, המנוע מסתובב CCW. איזה קלט מקבל את רכבת הפולסים תלוי בכיוון הרצוי.
פולסים המופקים מהבקר גורמים למנוע לנוע. המנוע מסתובב יחידה מצטברת אחת עבור כל פולס בקלט הפולס של ההינע. לדוגמה, אם למנוע צעד דו-פאזי יש 200 פולסים לסיבוב (ppr), אז פולס אחד יגרום למנוע להסתובב 1/200 של סיבוב או 1.8 מעלות, ו-200 פולסים יגרמו למנוע להסתובב סיבוב אחד.
כמובן, למנועים שונים יש רזולוציות שונות. מנועי צעד יכולים להיות מיקרו-צעדים, מה שנותן להם אלפי פולסים לכל סיבוב. בנוסף, למנועי סרוו יש בדרך כלל אלפי פולסים לכל סיבוב כרזולוציה המינימלית שלהם. לא משנה מה רזולוציית המנוע, פולס מהבקר או מהאינדקסר גורם לו לסובב יחידה אינקרמנטלית אחת בלבד.
המהירות שבה מסתובב מנוע תלויה בתדירות הפולסים, או המהירות. ככל שהפולסים מהירים יותר, כך המנוע מסתובב מהר יותר. בדוגמה לעיל, עם מנוע בעל 200 ppr, תדירות של 200 פולסים לשנייה (pps) תסובב את המנוע בסיבוב אחד לשנייה (rps) או 60 סיבובים לדקה (סל"ד). ככל שנדרשים יותר פולסים כדי לסובב את המנוע סיבוב אחד (ppr), כך יש לשלוח את הפולסים מהר יותר כדי להשיג את אותה מהירות. לדוגמה, מנוע עם 1,000 ppr יצטרך שתדירות הפולסים תהיה גבוהה פי כמה מזו של מנוע עם 200 ppr כדי להגיע לאותה סל"ד. החישוב די פשוט:
rps = pps/ppr (סיבובים לשנייה = פולסים לשנייה/פולסים לסיבוב)
סל"ד = סל"ד(60)
שליטה בפולסים
לרוב הבקרים יש שיטה לקביעת האם המנוע צריך להסתובב עם הגלגל הצמוד או עם הגלגל הצמוד, והם יפקחו על האותות בהתאם. במילים אחרות, בדרך כלל לא נדרש מהמתכנת להבין אילו יציאות להפעיל. לדוגמה, בקרים רבים בעלי בקרים בודקים (PLC) כוללים פונקציות לשליטה בתנועה באמצעות אות פולס, ופונקציה זו שולטת אוטומטית על היציאות כדי לקבל את כיוון הסיבוב הנכון, ללא קשר לשאלה האם הבקר מוגדר למצב 1P או 2P.
קחו לדוגמה שתי תנועות פשוטות. שתיהן הן 1,000 פעימות. אחת בכיוון החיובי, השנייה בכיוון השלילי. הבקר מפעיל את היציאות המתאימות, בין אם נעשה שימוש ב-1P או 2P, כדי לגרום למנוע להסתובב בכיוון החיובי (בדרך כלל CW) כאשר מספר הפעימות המצוין הוא 1,000. מצד שני, אם תוכנית מפיקה פקודה של -1,000 פעימות, הבקר מפעיל את היציאות המתאימות כדי לנוע בכיוון השלילי (בדרך כלל CCW). לכן, אין צורך שהמתכנת ישלוט בכיוון סיבוב המנוע באמצעות קוד בתוכנית כדי לבחור באילו יציאות להשתמש. הבקר עושה זאת באופן אוטומטי.
לבקרים ולמנהלי התקנים יש בדרך כלל דרך למשתמשים לבחור את סוג הפולס, באמצעות מתג DIP או הגדרת בחירת תוכנה. חשוב לוודא שהבקר והמנהל התקנים מוגדרים באותו אופן. אם לא, הפעולה עלולה להיות לא יציבה או לא לעבוד כלל.
מהלכים מוחלטים ומצטברים
שתי פקודות התנועה הנפוצות ביותר בתכנות בקרת תנועה הן פקודות תנועה מצטברות ופקודות תנועה מוחלטות. מושג התנועות המוחלטות והמצטברות מבלבל משתמשים רבים ללא קשר לשיטת בקרת המנוע בה נעשה שימוש. אך מידע זה חל בין אם המנוע נשלט באמצעות פולסים, אות אנלוגי או רשת כמו Ethernet/IP או Ethercat.
ראשית, אם למנוע יש מקודד, לסוגי התנועות שלו אין שום קשר לסוג המקודד. שנית, תנועות מוחלטות ומצטברות יכולות להתבצע בין אם יש מקודד מוחלט או מצטבר ובין אם אין מקודד כלל.
כאשר משתמשים במנוע להזזת ציר ליניארי, כגון מפעיל בורג כדורי, יש (כמובן) מרחק סופי בין קצה אחד של המפעיל לקצה השני. במילים אחרות, אם הגררה נמצאת בקצה אחד של המפעיל, ניתן לסובב את המנוע רק כדי לנוע עד שהגררה מגיעה לקצה הנגדי. זהו אורך המהלך. לדוגמה, במפעיל עם מהלך של 200 מ"מ, קצה אחד של המפעיל נמצא בדרך כלל במצב "אפס" או מיקום הבית.
תנועה מוחלטת מעבירה את הגררה למיקום שנקבע ללא קשר למיקומה הנוכחי. לדוגמה, אם המיקום הנוכחי הוא אפס וההתקפה שנקבעה היא ל-100 מ"מ, הבקר שולח מספיק פולסים כדי להזיז את המפעיל קדימה לסימון 100 מ"מ ולעצור.
אבל אם המיקום הנוכחי של המפעיל היה 150 מ"מ, תזוזה מוחלטת של 100 מ"מ תגרום לבקר לשלוח פולסים בכיוון השלילי כדי להזיז את המפעיל אחורה 50 מ"מ ולעצור במיקום של 100 מ"מ.
שימושים מעשיים
הבעיה הנפוצה ביותר בשימוש בבקרת דופק היא בחיווט. האותות לעיתים קרובות מחווטים בטעות הפוך. במצב 2P, משמעות הדבר היא שיציאת CCW מחוברת לכניסת CW ולהיפך. במצב 1P, משמעות הדבר היא שיציאת אות הדופק מחווטת לכניסת הכיוון, ופלט אות הכיוון מחוברת לכניסת הדופק.
במצב 2P, טעות חיווט זו גורמת למנוע להסתובב עם הכיוון (CW) כאשר ניתנת לו פקודה לעבור לכיוון הכיוון (CCW), ולכיוון הכיוון (CCW) כאשר ניתנת לו פקודה לעבור לכיוון הכיוון (CW). במצב 1P, הבעיה קשה יותר לאבחון. אם האותות מתחלפים, הבקר שולח סדרת פולסים לקלט הכיוון, דבר שאינו עושה דבר. הוא גם ישלח שינוי כיוון (הפעלת או כיבוי האות בהתאם לכיוון) לקלט הצעד, מה שעלול לגרום למנוע לסובב פולס. פולס תנועה אחד בדרך כלל קשה למדי לראות.
השימוש במצב 2P הופך את פתרון הבעיות לקל יותר, ובדרך כלל קל יותר להבנה עבור אלו שאין להם ניסיון רב בסוג זה של בקרת תנועה.
הנה שיטה להבטיח שכמה שפחות זמן יושקע בפתרון בעיות בצירים של דופק וכיוון. זה מאפשר למהנדסים להתמקד בדבר אחד בכל פעם. זה אמור למנוע מכם לבזבז ימים בניסיון להבין איזו טעות חיווט מונעת תנועה, רק כדי לגלות שפונקציית פלט הפולסים מוגדרת בצורה שגויה בבקר האלקטרוני ומעולם לא פלטתם פולסים.
1. קבע את מצב הפולס בו יש להשתמש והשתמש באותו מצב עבור כל הצירים.
2. כוונו את הבקר למצב המתאים.
3. הגדר את הכונן למצב המתאים.
4. צרו את התוכנית הפשוטה ביותר בבקר שלכם (בדרך כלל פונקציית ריצה) כך שניתן יהיה להורות למנוע להסתובב בכיוון אחד או אחר במהירות איטית.
5. פקד על תנועה עם העכבר וחפש סטטוסים בבקר המצביעים על פליטת פולסים.
–אלה יכולים להיות נוריות LED על היציאות מהבקר או דגלי סטטוס כמו דגל התפוסה בבקר. ניתן גם לנטר את מונה הפולסים בבקר כדי לראות אם ערכו משתנה.
–אין צורך לחבר את המנוע לפולסי פלט.
6. חזור על הבדיקה בכיוון הכיוון הקדמי של התנועה (CCW).
7. אם פלט הפולסים בשני הכיוונים מצליח, המשך הלאה. אם לא, יש להבין תחילה את התכנות.
8. חבר את הבקר לדרייבר.
9. הזז את המנוע בכיוון אחד. אם זה עובד, המשך לשלב 10. אם זה לא עובד, בדוק את החיווט.
10. הניעו את המנוע בכיוון ההפוך. אם זה עובד, הצלחתם. אם זה לא עובד, בדקו את החיווט.
שעות רבות בוזבזו בשלב הראשון הזה מכיוון שתדר הפולסים נמוך מספיק כדי לגרום למנוע להסתובב לאט ביותר, כמו 1/100 סל"ד. אם הדרך היחידה שבה ניתן לדעת אם הוא פועל היא על ידי צפייה בציר המנוע, ייתכן שהוא לא ייראה כאילו הוא נע במהירות נמוכה, מה שיגרום למישהו להאמין שהוא לא מוציא פולסים. עדיף לחשב מהירות בטוחה על סמך רזולוציית המנוע ופרמטרי היישום לפני קביעת המהירות לבדיקה. יש הסבורים שניתן לקבוע מהירות שמישה רק על ידי ניחוש. אבל אם המנוע זקוק ל-10,000 פולסים כדי להסתובב סיבוב אחד, ותדר הפולסים מוגדר ל-1,000 סל"ד, ייקח למנוע 10 שניות לנוע סיבוב אחד. לעומת זאת, אם המנוע זקוק ל-1,000 פולסים כדי לנוע סיבוב אחד, ותדר הפולסים מוגדר ל-1,000, המנוע ינוע סיבוב אחד לשנייה או 60 סל"ד. זה עשוי להיות מהיר מדי לבדיקה אם המנוע מחובר לעומס כמו מפעיל בורג כדורי עם מרחק תנועה מוגבל. חשוב לצפות במחוונים המגלים שמוציאים פולסים (נוריות LED או מונה פולסים).
חישובים ליישום מעשי
משתמשים לעיתים קרובות מוצאים את עצמם עם HMI המציג את המרחק והמהירות של המכונה ביחידות של פולסים במקום ביחידות הנדסיות כמו מילימטרים. לעתים קרובות המתכנת ממהר לגרום למכונה לעבוד ואינו מקדיש זמן לקבוע את יחידות המכונה ולהמיר אותן ליחידות הנדסיות. הנה כמה טיפים שיעזרו בכך.
אם ידועה לכם רזולוציית הצעדים של המנוע (פולסים לסיבוב) ואת התנועה שבוצעה לכל סיבוב מנוע (מ"מ), קבוע הפולסים של הפקודה מחושב כרזולוציה/מרחק לסיבוב, או פולסים לסיבוב/מרחק לסיבוב.
הקבוע יכול לעזור למצוא כמה פעימות נדרשות כדי לנוע מרחק מסוים:
מיקום נוכחי (או מרחק) = ספירת פולסים/פולסי פקודה קבועים.
כדי להמיר יחידות הנדסיות לפולסים, ראשית קבעו את הקבוע שקובע את מספר הפולסים הדרושים לתנועה נתונה. נניח שבדוגמה לעיל המנוע דורש 500 פולסים כדי להסתובב סיבוב אחד וסיבוב אחד הוא 10 מ"מ. ניתן לחשב את הקבוע על ידי חלוקת 500 (ppr) ב-10 (mm p/r). לכן הקבוע הוא 500 פולסים/10 מ"מ או 50 פולסים/מ"מ.
ניתן להשתמש בקבוע זה כדי לחשב את מספר הפולסים הדרושים לתנועה של מרחק נתון. לדוגמה, כדי לנוע 15 מ"מ, 15 מ"מ × 50 ppm = 750 פולסים.
כדי להמיר קריאת מונה פעימות ליחידות הנדסיות, פשוט חלקו את ערך מונה הפעימות בקבוע פעימות הפקודה. לכן, אם מונה הפעימות מציג 6,000, וחלקו אותו בקבוע פעימות הפקודה המחושב מהדוגמה לעיל, מיקום המפעיל יהיה 6,000 פעימות/50 ppm = 120 מ"מ.
כדי לפקוד מהירות במ"מ ולגרום לבקר לחשב את התדירות המתאימה בהרץ (פולסים לשנייה), יש לקבוע תחילה את קבוע המהירות. ניתן לעשות זאת על ידי מציאת קבוע הפולסים הפקודה (כפי שמוצג לעיל), אך היחידות משתנות. במילים אחרות, אם המנוע מפיק 500 פולסים לשנייה והמפעיל נע 10 מ"מ לכל סיבוב, אז אם מפקודים 500 פולסים לשנייה, המפעיל ינוע 10 מ"מ לשנייה. חלוקת 500 פולסים לשנייה ב-10 מ"מ לשנייה מניבה 50 פולסים לשנייה לכל מ"מ. לכן, הכפלת מהירות היעד ב-50 מניבה את תדירות הפולסים המתאימה.
הנוסחאות זהות, אך היחידות משתנות:
קבוע מהירות ב-pps = פולסים לסיבוב/מרחק לסיבוב
מהירות דופק (pps) = (קבוע מהירות) × מהירות במ"מ
שימוש במערכת המשתמשת באותות דופק כדי לשלוט בתנועה עשוי להיראות מרתיע בהתחלה, אולם, תשומת לב רבה לסוגי האותות ולהגדרות בבקר ובכוננים בהתחלה יכולה להפחית את הזמן המושקע בביצוע הפעולה. בנוסף, אם מקדישים זמן לביצוע חישובים בסיסיים באופן מיידי, תכנות המהירויות והמרחקים יהיה קל יותר ולמפעילי המכונות יהיה מידע אינטואיטיבי יותר המוצג על גבי ה-HMI שלהם.
זמן פרסום: 8 בפברואר 2021