בפרויקט זה אנו הולכים לממשק מקודד ROTARY עם ARDUINO. ARDUINO UNO הוא לוח פיתוח מבוסס בקר ATMEGA המיועד למהנדסים אלקטרוניים וחובבים. ב- ARDUINO יש לנו 20 סיכות קלט / פלט, כך שנוכל לתכנת 20 פינים של UNO שישמשו כקלט או פלט.
סיבובי מקודד משמש לדעת את עמדת תנועת התנועה הזוויתית של מנוע או ציר. זה בדרך כלל מכשיר טרמינל שלושה, עם פינים חשמליים וקרקעיים יש בסך הכל 5 מסופים. מודול מקודד מסתובב מוצג להלן.
הפינים של מקודד סיבובי הם:
- קרקע, אדמה
- חיובי מחובר ל- + 5V
- אות פלט סיכה
- אות פלט סיכה B
- סיכת שעון או סיכה נפוצה
ה- ENCODER מספק פעימות המייצגות את השינוי במצב הציר להבנת המערכות. קחו בחשבון שמקודד ROTARY מופעל והציר זז.
כפי שמוצג בטבלה לעיל, שקול שהמנוע מועבר בכיוון השעון. עם זה תהיה Falling Edge בטרמינל A ואז בטרמינל B.
שקול את הפיר מועבר נגד השעון. עם זה יהיה Falling Edge בטרמינל B ואז בטרמינל A.
קצה זה יתרחש פעם אחת ב- 360/20 = 18 מעלות (זה עבור מקודד עם 20 מיקום, זה משתנה מסוג לסוג, הספירה גבוהה יותר, הדיוק גדול יותר).
בשני התנאים הנ"ל, אנו יכולים לקבל כיוון ומידת סיבוב. כך אנו מקבלים פרמטרים נדרשים להשגת מיקום פיר.
רכיבים נדרשים
חומרה: לוח uno של Arduino, סיכות חיבור, נגד 220Ω, נורית (שמונה חתיכות), נגד 1KΩ, נגד 220Ω (2 חתיכות), קבל 100nF (2 חתיכות), לוח לחם.
תוכנה: ארדואינו מדי לילה
תרשים מעגל והסבר עבודה
הקבלים כאן מיועדים לנטרול אפקט הקפצת המגע ב- ENCODER. ללא אותם קבלים יהיו כמה בעיות חמורות בקריאת המיקום.
כאשר מזיזים את הפיר יהיה הפרש זמן בין שני פלט סיכות פלט. UNO Arduino יזהה הפרש זמן זה בכיוון השעון של סיבוב נגד השעון.
אם הסיבוב הוא בכיוון השעון המספר הבינארי מוגדל באחד, וספירה זו מוצגת ביציאת ה- LED כפי שמוצג באיור.
אם הסיבוב הוא נגד השעון, הספירה הבינארית מופחתת באחת והספירה הבינארית מוצגת בתא LED.
העבודה של Arduino עם מקודד סיבובי מוסברת שלב אחר שלב בקוד C המופיע להלן.