החוויה הראשונה עם Arduino

  • Dec 24, 2019
click fraud protection

אני כבר מזמן רציתי ללמוד Arduino. זה מאוד המיקרו זול, אשר יש 14 יציאות דיגיטליות כניסות / ו 6 כניסות אנלוגיות. יש עבור Arduino רבים מודולים נוספים (חיישנים, לוחות מקשים, מסך, מנועים), בשביל זה יצר את התכנית בתכנות בשפה פשוטה וטעו באמצעות USB.

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


UNO Arduino שימושי כפלטפורמת פיתוח (הלוח מחובר ישירות למחשב, וכל חיבורים נעשים ללא חוטי הלחמה עם מחברים). תשלום כזה על Aliexpress עלויות מ 2.99 $. כאשר הפיתוח יושלם, במכשיר המוגמר יכול להשתמש בגודל קטן בהרבה וגם יותר זול עלות Arduino Mini Proלאחר את אותן ההזדמנויות. הוא זה עולה פחות מ 100 $ - 1.3 $.


Arduino הוא לא צעצוע בשבילי. אני רוצה לעזור לה לבצע ספציפי מאוד, הייתי צריך את המכשיר. שני הדברים הראשונים שאני רוצה לעשות - ואת goniophotometer LATR האלקטרונית.

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

instagram viewer

האלקטרוני LATR - מכשיר המאפשר לך לקבל מתח חילופין של 1 ל 256 וולט במרווחים של 1 וולט. זה יהיה שימושי עבור המבחנות שלי כדי להתאים את מהירות המאוורר (עם זמזום אוהדי דימרים קונבנציונליים). הרעיון הוא להורות שנאי קטן עם שמונה בפיתולי משני 1, 2, 4, 8, 16, 32, 64 ו 128 וולט. יוממות אותם באמצעות ממסרים בשליטת Arduino, אתה יכול לקבל שום מתח.

היום, למדתי לשלוט מנוע צעד. מנוע 28BYJ-48 יחד עם לוח הבקרה זה עולה רק 1.65 $. יש לה תיבת הילוכים מובנה וזה עושה מהפכה שלמה 2048 או 4096 של צעדים וחצי.

בשעה שאני הראשון ניסיתי להתמודד עם הספרייה המוכנה הצעד AccelStepper, אבל אז הבנתי שזה יותר קל להסתדר בלעדיהם ולנסוע המנוע ישירות.

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

סיכות int [] = {8, 9, 10, 11}; // הגדר את הסיכות כדי

שלבי int = 8;

bool motorPhases [8] [4] = {// [שלב] [פין]
// סיכות
// מותחת B A B
// Motor פין 1 2 3 4
// צבע Bl Pi יה או
{ 1, 1, 0, 0},
{ 0, 1, 0, 0},
{ 0, 1, 1, 0},
{ 0, 0, 1, 0},
{ 0, 0, 1, 1},
{ 0, 0, 0, 1},
{ 1, 0, 0, 1},
{ 1, 0, 0, 0}
};

התקנת חלל () {
עבור (int i = 0; i <4; i ++) pinMode (סיכות [i], OUTPUT);
}

שלב int = 0;
_step int = 1; // אם הצעד כדי לשנות את השלט על -1 - לשנות את כיוון הסיבוב.

לולאת חלל () {
int a = 2047;
צעד (א);
עיכוב (200);
}

צעד ומבוטל (x int) {
int i;
עבור (i = 0; אני{

שלב + = _step;
אם (שלב> 7) שלב = 0;
אם (שלב <0) שלב = 7;

עבור (int i = 0; i <4; i ++) {
digitalWrite (סיכות [i], ((motorPhases [שלב] [i] == 1)? גבוה: נמוך));
}

// השהה לסיבוב על-צעד וחצי
עיכוב (2);
}

digitalWrite (סיכות [0], LOW);
digitalWrite (סיכות [1], LOW);
digitalWrite (סיכות [2], LOW);
digitalWrite (סיכות [3], LOW);
}

כמובן, עדיין צריך להתמודד עם כל כך הרבה, אבל בתור התחלה מוצלחת. :)

היום הזמנתי מסך LCD שתי שורות מודול יותר עם שישה כפתורים עבור 2.60 $, זוג מודולים עם ארבעה ממסרים כוח עבור 1.95 $ (ישנם שמונה מודולים ומשדר, אבל החלטתי כי ממסר שני מודולים 4 נוח) chetyrohknopochnuyu הממברנה המקשים עבור 0.53 $, מחוון Chetyrohrazryadny עבור 1.4 $. עוד הורה לשני תאורת חיישן שונה עבור 0.4 $ ו עבור 0.6 $אבל התגעגעתי אליהם - הם הסף והשתמשו להדליק אורות בלילה. אבל שום דבר מועיל. חיישן מסובך מסודר עם שתי פוטודיודות ושני ADC עבור 1.75 $ וחיישן פשוט עם יציאה אנלוגית עבור 0.9 $.

© 2017 אלכס Nadozhin

הנושא העיקרי של הבלוג שלי - ציוד עבור חיי אדם. אני כותב ביקורות, לשתף חוויות, דיבורים על כל מיני דברים מעניינים. ואני עושה סיפורים של מקומות מעניינים לספר על אירועים מעניינים.
להוסיף אותי כחבר
כאן. זכור את הכתובת הקצרה של הבלוג שלי: Blog1.rf ו Blog1rf.ru.

הפרויקט השני שלי - lamptest.ru. ואני מבחן מנורות LED ו לעזור להבין אילו הם טובים ואלו לא.