תוכן עניינים:

דימר DMX 4 צ'יפס: 6 שלבים
דימר DMX 4 צ'יפס: 6 שלבים

וִידֵאוֹ: דימר DMX 4 צ'יפס: 6 שלבים

וִידֵאוֹ: דימר DMX 4 צ'יפס: 6 שלבים
וִידֵאוֹ: DMX - Ruff Ryders' Anthem 2024, יולי
Anonim
4 דימר DMX דימר
4 דימר DMX דימר

הרעיון הוא לעצב וליצור דימר נייד.

דרישות:

  • DMX512 ניתנת לשליטה
  • 4 ערוצים
  • נייד
  • קל לשימוש

הצעתי את הרעיון הזה לפרופסור שלי ב WSU מכיוון שרציתי לשלב את התשוקות שלי לתיאטרון ומחשבים. הפרויקט הזה פעל קצת כמו הפרויקט הבכיר שלי במחלקת התיאטרון. אם יש לך הערות או שאלות, אשמח לעזור.

פיתוח עתידי יכול לכלול יותר ערוצים, מחבר DMX בעל 5 פינים, מעבר DMX, 8 מתגי מטבל לשינוי הערוץ, מעגל מודפס.

העברתי את הפרויקט הזה מ- https://danfredell.com/df/Projects/Entries/2013/1/6_DMX_Dimmer.html מכיוון שהוא עדיין פופולרי, אני מניח. כמו כן איבדתי את קובץ זרעי iWeb שלי כך שלא אוכל לעדכן אותו בקלות יותר. יהיה נחמד לאפשר לאנשים לשתף זה את זה בשאלותיהם על הפרויקט.

שלב 1: איסוף החומרה

איסוף החומרה
איסוף החומרה

חומרה בשימוש: רובו הוזמן מחברת Tayda Electronics. אני אוהב אותם יותר מאשר DigiKey בגלל המבחר הקטן והקל יותר להבנה.

  1. ATMEGA328, מיקרו-בקר
  2. MOC3020, מצמד אופטי TRIAC. לא ZeroCross.
  3. מקלט MAX458 או SN75176BP, DMX
  4. ISP814, מצמד אופטי AC
  5. 7805, רגולטור 5v
  6. BTA24-600, 600V 25A TRIAC
  7. 20 מגהרץ קריסטל
  8. ספק כוח 9V

כמה מכשולים ושיעורים שנלמדו בדרך

  • אם אינך מומחה לרשומות, הישאר עם ATMEGA328P
  • מצמדים אופטיים לא נכונים. אתה לא רוצה אפס קרוס
  • ערוצים גבוהים לא היו יציבים. המעבר מ -16 מגה -הרץ ל -20 מגה -הרץ פתר בעיה זו
  • לא ניתן לקבל נורת סטטוס DMX מכיוון ששיחת ההפסקה הייתה צריכה להיות מהירה מאוד
  • מתח DC חייב להיות יציב במיוחד, כל אדוות יגרום לאות ה- DMX להיות רועש מאוד

עיצוב TRIAC הגיע מ- MRedmon, תודה.

שלב 2: עיצוב מעגלים

עיצוב מעגלים
עיצוב מעגלים

השתמשתי ב- Fritzing 7.7 ב- Mac כדי לעצב את המעגל שלי.

ה- MAX485 בחלקו העליון משמש להמרת אות ה- DMX למשהו שהארדואינו יכול לקרוא.

4N35 משמאל משמש לזיהוי צלב האפס של אות ה- AC כך שהארדואינו יידע באיזו שעה לעמעם את תפוקת הגל הסיני. עוד על אופן האינטראקציה בין החומרה והתוכנה בחלק התוכנה.

קיבלתי את השאלה האם הפרויקט הזה יפעל באירופה עם 230V ו- 50Hz? אני לא גר באירופה, וגם לא נוסע לשם לעתים קרובות בכדי לבדוק את העיצוב הזה. זה אמור לעבוד, פשוט תצטרך לשנות את קו תזמון הבהירות של הקוד לעיכוב זמן התדר השונה.

שלב 3: עיצוב המעגלים של קובארי

עיצוב המעגלים של קובארי
עיצוב המעגלים של קובארי
עיצוב המעגלים של קובארי
עיצוב המעגלים של קובארי

במהלך תהליך העלאת האתר שלי הצלחתי לנהל כמה שיחות דוא ל. האחד היה עם קובארי אנדריי שעשה עיצוב מעגלים המבוסס על הפרויקט הזה ורצה לשתף את העיצוב שלו. אני לא מעצב לוח מעגלים אבל זה פרויקט נשר. ספר לי איך זה עובד עבורך אם אתה משתמש בו.

שלב 4: עיצוב המעגלים של ג'אקומו

עיצוב המעגלים של ג'אקומו
עיצוב המעגלים של ג'אקומו

מדי פעם אנשים ישלחו לי הודעות עם העיבודים המרגשים שהם עשו עם ההנחיה הזו וחשבתי שעלי לחלוק אותם עם כולכם.

ג'אקומו שינה את המעגל כך שלא היה צורך בשנאי ברז במרכז. ה- PCB הוא חד צדדי ויכול להיות פתרון זול יותר למי שלא יכול לעשות דו צדדי בבית (קצת קשה).

שלב 5: תוכנה

תוֹכנָה
תוֹכנָה

אני מהנדס תוכנה במקצועי אז החלק הזה הוא המפורט ביותר.

קיצי: כאשר האתחול של Arduino הראשון נקרא שיטת ההתקנה (). שם הגדרתי כמה מהמשתנים ומיקומי הפלט לשימוש מאוחר יותר. zeroCrossInterupt () נקרא/ רץ בכל פעם שה- AC חוצה מתח חיובי לשלילי. הוא יגדיר את דגל ה- zeroCross לכל ערוץ ויפעיל את הטיימר. שיטת הלופ () נקראת ללא הרף לנצח. כדי להפעיל את הפלט, יש להפעיל את ה- TRIAC למשך 10 מיקרו שניות בלבד. אם הגיע הזמן להפעיל את ה- TRIAC והאפס קרוס קרה הפלט יופעל עד סוף שלב ה- AC.

היו כמה דוגמאות ברשת בהן השתמשתי בכדי להתחיל את הפרויקט הזה. הדבר העיקרי שלא הצלחתי למצוא היה יציאות TRIAC מרובות. אחרים השתמשו בפונקציית העיכוב כדי להפיק את הפלט PWM, אך במקרה זה לא יעבוד מכיוון שה- ATMEGA חייב להקשיב ל- DMX כל הזמן. פתרתי את זה על ידי הפעימה של ה- TRIAC בכל כך הרבה ms לאחר אפס-צולב. על ידי הפעימה של ה- TRIAC קרוב לאפס-צולב, כך נפלט יותר גל החטא.

הנה איך נראה חצי החטא של 120 VAC באוסילוסקופ, למעלה.

ה- ISP814 מחובר להפסקה 1. כך שכאשר הוא מקבל אות שה- AC עובר מחיובי לשלילי או להיפך הוא מגדיר את ה- zeroCross של כל ערוץ לאמיתי ומפעיל את שעון העצר.

בשיטת הלולאה (), היא בודקת כל ערוץ אם zeroCross נכון והזמן להופעתו חלף הוא יפעיל את ה- TRIAC במשך 10 מיקרו שניות. זה מספיק כדי להפעיל את ה- TRIAC. לאחר הפעלת TRIAC הוא יישאר דולק עד zeroCross. האור היה מהבהב כאשר ה- DMX היה סביב 3% אז הוספתי את החיתוך שם כדי למנוע זאת. זה גרם לכך שהארדואינו היה איטי מדי, והדופק יפעיל לפעמים את גל החטא הבא במקום 4% האחרונים של הגל.

גם בלולאה () הגדרתי את ערך ה- PWM של נוריות הסטטוס. נוריות אלה יכולות להשתמש ב- PWM הפנימי שנוצר על ידי ה- Arduino מכיוון שאיננו צריכים לדאוג לגבי ה- zeroCross של AC. ברגע ש- PWM יוגדר, הארדואינו ימשיך בהירות זו עד שיספרו לו אחר.

כפי שצוין בהערות העליונות על מנת להשתמש בהפרעה DMX על סיכה 2 ולהריץ במהירות 20MHz תצטרך לערוך כמה מקבצי היישומים של Arduino. ב- HardwareSerial.cpp יש למחוק נתח קוד, זה מאפשר לנו לכתוב שיחת הפרעה משלנו. שיטת ISR זו נמצאת בתחתית הקוד לטפל בהפרעה DMX. אם אתה מתכוון להשתמש ב- Arduino כמתכנת ISP, הקפד להחזיר את השינויים שלך ל- HardwareSerial.cpp אחרת ה- ATMEGA328 בלוח הלחם לא יהיה נגיש. השינוי השני הוא קל יותר. יש לשנות את קובץ boards.txt למהירות השעון החדשה 20MHz.

בהירות [ch] = מפה (DmxRxField [ch], 0, 265, 8000, 0);

הבהירות ממפה ל 8000 מכיוון שזו כמות המיקרו שניות של 1/2 סינוס AC ב 60 הרץ. אז בהירות מלאה של 256 DMX התוכנית תשאיר 1/2 מהגל סינוס AC מופעל למשך 8000us. הגעתי ל 8000 באמצעות ניחוש ובדיקה. לעשות את החשבון של 1000000us/60hz/2 = 8333 כך שאולי זה מספר טוב יותר, אבל אם יש לך עוד 333us מעל הראש מאפשר TRIAC להיפתח וכל רעצול בתוכנית הוא כנראה רעיון טוב.

ב- Arduino 1.5.3 הם העבירו את המיקום של הקובץ HardwareSerial.cpp. כעת הוא /Applications/Arduino.app/Contents/Java/hardware/arduino/avr/cores/arduino/HardwareSerial0.cpp יהיה עליך להגיב על כל זה אם בלוק מתחיל בשורה 39: #if מוגדר (USART_RX_vect)

אחרת תגיע לשגיאה זו: core/core.a (HardwareSerial0.cpp.o): בפונקציה `_vector_18 ':

שלב 6: אריזה

לארוז אותו
לארוז אותו
לארוז אותו
לארוז אותו
לארוז אותו
לארוז אותו

אספתי את קופסת הפרויקטים האפורים במנארדס במדור החשמל שלהם. השתמשתי במסור הדדי כדי לחתוך את חורי התקע החשמליים. המארז קיבל מהדק קולנוע מחובר לחלקו העליון לתלייה. נורות סטטוס לכל קלט ופלט כדי לסייע באבחון אם יש בעיה כלשהי. יצרנית תוויות שימשה להסביר את היציאות השונות במכשיר. המספרים שליד כל תקע מייצגים את מספר ערוץ DMX. הדבקתי את המעגל והשנאי בעזרת דבק חם. נוריות LED תקועות במקומן עם מחזיקי לד.

מוּמלָץ: