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