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

שימוש ב- Pimoroni Enviro+ FeatherWing With the Adafruit Feather NRF52840 Express: 8 שלבים
שימוש ב- Pimoroni Enviro+ FeatherWing With the Adafruit Feather NRF52840 Express: 8 שלבים

וִידֵאוֹ: שימוש ב- Pimoroni Enviro+ FeatherWing With the Adafruit Feather NRF52840 Express: 8 שלבים

וִידֵאוֹ: שימוש ב- Pimoroni Enviro+ FeatherWing With the Adafruit Feather NRF52840 Express: 8 שלבים
וִידֵאוֹ: למי יתאים שימוש ב-CBD? 2024, יולי
Anonim
שימוש ב- Pimoroni Enviro+ FeatherWing עם Adafruit Feather NRF52840 Express
שימוש ב- Pimoroni Enviro+ FeatherWing עם Adafruit Feather NRF52840 Express
שימוש ב- Pimoroni Enviro+ FeatherWing עם Adafruit Feather NRF52840 Express
שימוש ב- Pimoroni Enviro+ FeatherWing עם Adafruit Feather NRF52840 Express
שימוש ב- Pimoroni Enviro+ FeatherWing עם ה- Adafruit Feather NRF52840 Express
שימוש ב- Pimoroni Enviro+ FeatherWing עם ה- Adafruit Feather NRF52840 Express

ה- Pimoroni Enviro+ FeatherWing הוא לוח עמוס בחיישנים שנועדו לעבוד עם סדרת הלוחות של Adafruit Feather. זהו מקום שימושי להתחיל עבור כל מי שמעוניין בניטור סביבתי, זיהום אטמוספרה ושטיפת נתונים. הוא כולל:

  • Bosch BME280 - חיישן טמפרטורה, לחץ, לחות;
  • Lite-On LTR-559-חיישן אור וקרבה;
  • SensorTech MiCS -6814 - גזים מחמצנים, הפחתת גזים וחיישן אמוניה;
  • מיקרופון אנלוגי - מדידת זיהום רעש;
  • מחבר לחיישן חלקיקי Plantower PMS5003 (לא כלול).

שלישיית חיישני תחמוצת המתכת ב- MiCS-6814 כוללת חיישן פחות נפוץ לחמצון גזים. זה שימושי בגלל הרגישות שלו לחנקן דו חמצני (NO2), מזהם נפוץ בערים ובקרבת כבישים מרכזיים.

פימורוני ממליץ על Adafruit

  • Feather M4 Express (120MHz, 192kB RAM) או
  • נוצה nRF52840 Express (64MHz, 256kB RAM).

ה- nRF52840 נבחר למדריך זה מכיוון שהוא תומך ב- Bluetooth Low Energy (BLE) אשר נותן ללוח את האפשרות לשלוח נתונים למכשיר אחר.

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

ל- Enviro+ FeatherWing יש הבדל עדין אחד בהשוואה לבן דודו, איכות Enviro+ Air ל- Raspberry Pi. נראה שגרסת ה- FeatherWing מיועדת לעבודה עם מתחים מתחת ל- 5V המאפשרת שימוש בסוללת ליתיום פולימר אחת (LiPo) המייצרת 3.7V-4.3V. יש לו ממיר DC-DC המספק 5V עבור ה- PMS5003 האופציונלי והוא עשוי להניע את מחממי הפנימי MiCS-6814 בנפרד להתמודד עם המתחים הנמוכים הללו.

התמונה הראשית מציגה את Enviro+ FeatherWing המציגה את נתוני PM2.5 ו- PM10 מה- PMS5003. גפרור וסטאס של ברבור הוכרע באמצע העלילה כדי להדליק את הנר.

מאמר שני עוסק בתכנון רמות דו תחמוצת הפחמן בעזרת פימורוני Enviro+ FeatherWing ו- Adafruit SCD-30.

אספקה:

  • Pimoroni Enviro+ FeatherWing - Pimoroni | Adafruit - (עוד לוח דומה קיים עבור ה- Raspberry Pi)
  • Adafruit nRF52840 Feather Express - פימורוני | אדפרוט
  • כותרות לערימת נוצה - פימורוני | ניתן להשתמש גם ב- Adafruit - כותרות רגילות לנשים או כפיל/משולש FeatherWing
  • לְרַתֵך
  • אופציונלי: חיישן חלקיקים Plantower PMS5003 - פימורוני | אדפרוט

שלב 1: שדרוג מטעין האתחול

ניתן לבדוק את לוח Feather לפני הלחמתו על ידי חיבורו למחשב באמצעות USB. זהו זמן שימושי לבדוק את מטעין האתחול - גירסאות ישנות עלולות לייצר שגיאות מבלבלות אך לא מזיקות ב- Windows.

לחיצה כפולה על כפתור האיפוס של נוצה גורמת להצגת כונן בשם FTHR840BOOT למחשב המארח. ניתן לפתוח קובץ בשם INFO_UF2. TXT לבדיקת הגירסה, הדוגמה שלהלן מציגה את התוכן המציין את גירסה 0.2.6:

F2 Bootloader 0.2.6 lib/nrfx (v1.1.0-1-g096e770) lib/tinyusb (legacy-525-ga1c59649) s140 6.1.1

דגם: Adafruit Feather nRF52840 Express Board-ID: NRF52-Bluefruit-v0 Bootloader: s140 6.1.1 תאריך: 21 בדצמבר 2018

גרסאות לפני 0.2.9 סובלות מהבאג הנ ל. תהליך השדרוג המעט מתואר מתואר ב- Adafruit Learn: היכרות עם Adafruit nRF52840 Feather: Update Bootloader ונדון בפורומים של Adafruit: שגיאות Windows מעתיקות את CircuitPython UF2 ל- FTHR840BOOT.

שלב 2: הלחמת הכותרות

הלחמת הכותרות
הלחמת הכותרות
הלחמת הכותרות
הלחמת הכותרות
הלחמת הכותרות
הלחמת הכותרות

ה- Enviro+ FeatherWing זקוק לכותרות הזכריות שלו מחוברות והנוצה זקוקה לכותרות הנשיות המערימות.

טכניקה נפוצה לאתר את הסיכות במיקום הנכון בזמן הלחמה היא הכנסתן ללוח לחם. יש צורך בזהירות מסוימת עם FeatherWing זה מכיוון שמחבר הפיקבלייד בצד התחתון גבוה יותר ממרווחי הפלסטיק בכותרת. זה יכול לגרום ללוח להלחם בכוונה בזווית. התמונה למעלה מציגה את הזווית. זה נפתר בקלות על ידי הרמת הכותרות באופן אחיד ב 2-3 מ מ (0.1in) מלוח הלחם.

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

גיליון הנתונים של MiCS-6814 קובע:

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

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

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

ל- Adafruit יש מדריך בנושא הלחמת ערימות, Pimoroni כולל מדריך הלחמה כללי הכולל כותרות ויש סרטון נחמד ביוטיוב שמראה כיצד להלחם כותרות על לוח בסגנון דומה, GurgleApps: Raspberry Pi Pico Upgrade Number1 - Snazzy Header Pins!

שלב 3: התקנת CircuitPython ודוגמת פלוטר משולב

התקנת CircuitPython ודוגמת פלוטר משולב
התקנת CircuitPython ודוגמת פלוטר משולב

אם אינך מכיר את CircuitPython אז כדאי לקרוא תחילה את המדריך Welcome to CircuitPython.

שלבי ההתקנה להלן מבוססים על README של pimoroni / EnviroPlus-FeatherWing ועל מדריך תחילת העבודה עם ספרייה מאוחרת יותר שתספק את CircuitPython 6.x.

  1. התקן את הגירסה העדכנית ביותר של CircuitPython (6.0.0 בדצמבר 2020) מ- https://circuitpython.org/ - תהליך זה מתואר ב- CircuitPython for Feather nRF52840.
  2. אמת את ההתקנה על ידי חיבור לקונסולה הטורית באמצעות USB. הפקודה REPL מציגה את הגירסה. ניתן לבדוק את הגירסה גם על ידי בדיקת boot_out.txt בכונן CIRCUITPY.
  3. התקן את הספריות האלה מתוך צרור מתוך https://circuitpython.org/libraries לספריית lib ב- CIRCUITPY:

    1. adafruit_bus_device
    2. adafruit_bme280 (לא adafruit_bmp280)
    3. adafruit_st7735r (לא adafruit_st7735)
    4. adafruit_display_text
  4. התקן את הספריות האלה מקובץ EnviroPlus-FeatherWing-1.0.zip מ- GiHub: pimoroni/EnviroPlus-FeatherWing: גירסה 1.0 לספריית lib ב- CIRCUITPY:

    1. i2cdevice (אין להתבלבל עם ספריית i2c_device של Adafruit)
    2. pimoroni_envirowing
    3. pimoroni_ltr559
    4. pimoroni_physical_feather_pins
    5. pimoroni_pms5003
    6. אל תתקין מכאן pimoroni_circuitpython_adapter
  5. התקן את ספריית מתאם Pimoroni CircuitPython העדכנית ביותר על ידי הורדת הקובץ _init_.py לספריית lib/pimoroni_circuitpython_adapter שהוקמה לאחרונה ב- CIRCUITPY.
  6. הורד את תוכנית הדוגמאות המשולבת ל- CIRCUITPY על ידי לחיצה על שמור קישור בשם … ב plotters_combined.py
  7. שנה או מחק קובץ code.py קיים ב- CIRCUITPY, ולאחר מכן שנה את שם plotters_combined.py ל- code.py. קובץ זה מופעל כאשר מתורגמן CircuitPython מתחיל או נטען מחדש.

הגרסאות ששימשו למדריך זה היו:

  • CircuitPython 6.0.0
  • חבילת ספריית CircuitPython adafruit-circuitpython-bundle-6.x-mpy-20201208.zip
  • ספריית EnviroPlus-FeatherWing גירסה 1.0
  • ספריית pimoroni_circuitpython_adapter 9-דצמבר 2020 f062036

שלב 4: הקושר המשולב

הקושר המשולב
הקושר המשולב

המתווה המשולב כולל ארבעה מסכים:

  1. צליל ואור.
  2. PM2.5 ו- PM10.
  3. טמפרטורה, לחץ ולחות.
  4. OX, RED ו- NH3.

מסך החלקיקים (PM) מופיע רק אם ה- Plantower PMS5003 מצורף. התוכנית בודקת את נוכחותה בהתחלה ומדפיסה הודעת מידע זו אם היא אינה מחוברת:

פסק זמן קריאה PMS5003: קריאת ההתחלה של בייט המסגרת נכשלה

כנראה שאין לך pms5003 מחובר, ממשיך ללא רישום חלקיקים

מרווח העלילה מוגדר ל- 540 שניות בראש התוכנית. זה יכול להיות מותאם כדי לשלוט על שיעור המגרש.

שלב 5: סיכות Enviro+ FeatherWing

סיכות Enviro+ FeatherWing
סיכות Enviro+ FeatherWing
סיכות Enviro+ FeatherWing
סיכות Enviro+ FeatherWing

כנף Enviro+ FeatherWing משתמשת במספר רב של סיכות הנוצה. אלה הבאים משמשים, השמות בסוגריים הם מתוכנית השמות של פימורוני:

  • A0 (pin5) - חיישן גז אמוניה MiCS6814
  • A1 (pin6) - חיישן גז מפחית MiCS8614
  • A2 (pin7) - חיישן גז מחמצן MiCS6814
  • A3 (pin8) - מיקרופון אנלוגי
  • A4 (pin9) - הפעלת MiCS6814
  • D5 (pin19) - פקודת מסך אוטובוס SPI
  • D6 (pin20) - בחר שבב מסך SPI באוטובוס
  • D9 (pin21) - תאורה אחורית (PWM)
  • D10 (pin22) - הפעלת PMS5003
  • D11 (pin23) - איפוס PMS5003
  • D12 (pin24) - LTR -559 interrupt (לא נתמך בספריית CircuitPython)
  • SCK (pin11) - שעון אוטובוס SPI
  • MO (pin12) - SPI master master out out in
  • MI (pin13) - מאסטר אוטובוס SPI בעבד החוצה
  • RX (pin14) - שידור PMS5003 (קבלה על ידי נוצה)
  • TX (pin15) - קבלת PMS5003 (שידור מנוצה)
  • SCL (pin18) - שעון I2C
  • SDA (סיכה 17) - נתוני I2C

זה משאיר A5, D2/DFU ו- D13 פנוי לשימוש.

שלב 6: צריכת חשמל

צריכת חשמל
צריכת חשמל

צריכת החשמל נמצאת היטב במפרט ה- USB גם אם מצורפת סוללת LiPo ונטענת. השימוש רלוונטי יותר לתכנון מעבר לסוללה. כמה מדידות משוערות מאוד של הזרם הן:

  • 100mA סרק, תאורה אחורית כבויה;
  • 100mA פועל, תאורה אחורית נמוכה;
  • מגרש 120mA פועל, תאורה אחורית גבוהה.

גיליון הנתונים של Plantower PMS5003 קובע כי הזרם הוא פחות מ -100mA, זה יהיה בנוסף למספרים שלעיל. השימוש בממיר DC-DC ב- Enviro+ FeatherWing עשוי להגדיל מעט את מספר זה.

ללוח nRF52840 Express של Feather יש NeoPixel (RGB LED) אך רמות הבהירות לשימוש ברירת המחדל שלו כאינדיקטור למצב התוכנית רק מוסיפות כמות זעירה לצריכה. לוח Feather עצמו נמצא מתחת ל 10mA בכוחות עצמו, ה- FeatherWing הוא הלוח רעב הכוח.

שלב 7: הוספת חיישן החומרים המיוחדים של Plantower PMS5003

הוספת חיישן החומרים המיוחדים של Plantower PMS5003
הוספת חיישן החומרים המיוחדים של Plantower PMS5003
הוספת חיישן החומרים המיוחדים של Plantower PMS5003
הוספת חיישן החומרים המיוחדים של Plantower PMS5003
הוספת חיישן החומרים המיוחדים של Plantower PMS5003
הוספת חיישן החומרים המיוחדים של Plantower PMS5003

מכשירי Met One BAM 1020 הוא מראה נפוץ ברחבי העולם המודד חומר חלקיקים בערים. קיימים מגוון מכשירים זולים יותר וה- Enviro+ FeatherWing מגיע עם מחבר עבור חיישן החלקיקים Plantower PMS5003.

קוד ספריית פימורוני לחיישן זה נראה כרגע שביר. שיפור פשוט ומהיר הוא לתפוס חריגים בתוכנית. ניתן לשפר את תוכנית plotters_combined.py על ידי הוספת זו למעלה:

יבוא pimoroni_pms5003

והחלפת השורה הזו בלולאת ה- while הראשית

# לקחת קריאות

pms_reading = pms5003.read ()

עם:

# לקחת קריאות

נסה: pms_reading = pms5003.read () למעט pimoroni_pms5003. ChecksumMismatchError: print ("שגיאת בדיקת סכום")

שלב 8: התקדמות נוספת

הולכים הלאה
הולכים הלאה

ישנם מספר תחומים לחקור לאחר הפעלת Enviro+ FeatherWing.

  • הוספת חיישן טמפרטורה חיצוני. חיישן הטמפרטורה ב- BME280 כפוף לחימום פנימי וחימום מרכיבים סמוכים ונועד לכייל את שאר חיישני BME280. ניתן לעבד את הערך בכדי לספק מדד משוער של טמפרטורת האוויר הסביבתית, אך ישנן אפשרויות חיצוניות במחירים סבירים וזולים יותר.
  • כיול החיישנים. הלחץ קל באמצעות תצפיות מזג אוויר או תחזיות לטווח קצר (אלה יהיו בגובה 0 רגל), השאר קשים.
  • תיקון פלט PMS5003 ללחות יחסית. נוסחה מוצגת בעמוד 8 של PDF בנושא EPA: PurpleAir PM2.5 תיקון וביצועים בארה"ב במהלך אירועי עשן 4/2020
  • הוספת קוד לשידור נתוני החיישנים באמצעות Bluetooth Low Energy למכשירים אחרים.
  • בוחנים כיצד למזער את צריכת החשמל. לחלק מהחיישנים יש קווי הפעלה, אלה עשויים להסיר חשמל מהחיישנים או להכניס אותם למצב צריכת חשמל נמוכה. עבור חיישנים עם זמן חימום מדי פעם הדגימה עשויה להיות לא מעשית.
  • קנייה, התאמה או יצירת מארז מתאים להרכבה בחוץ עם זרימת אוויר פנימית שתוכננה בקפידה ואמצעי זהירות מתאימים לאור שמש ישיר. חיישן הגז SensorTech MiCS-6814 פועל בצורה הטובה ביותר עם זרימת אוויר קבועה, נמוכה.
  • בחינת האופן שבו תנאי מזג האוויר משפיעים על הזיהום ברמת הקרקע. רמז: היפוכות הן משמעותיות.
  • המרה לסוללה או סולרית עם הסוללה. אנרגיה סולארית מאתגרת יותר מאשר פשוט הוספת פאנל סולארי פוטו -וולטאי, עיין בסעיף הערות עיצוב ב- Adafruit Learn: USB, DC & Solar Lipoly Charger.
  • הוספת חיישנים אחרים למדידת מזהמים נפוצים כמו אוזון (O3) וגופרית דו חמצנית (SO2) או גזי חממה כמו פחמן דו חמצני (CO2). כמה חיישנים מודדים "eCO2" ואינם מתאימים למדידת CO2 אטמוספרי. Adafruit מוכרת כעת את חיישן CO2 Sensirion SCD-30 NDIR בעל הערך הרב על לוח עם מחברי STEMMA QT i2c.
  • אם ברצונך לחקור את שליחת הנתונים דרך האינטרנט באמצעות Wi-Fi, נראה שלוח FeatherS2 עם מיקרו-בקר ESP32-S2 תואם את Enviro+ FeatherWing. יש מגבלה בעייתית עם ESP32-S2 אנלוגי לממירים דיגיטליים (ADC) שמונעת מדידה נכונה של חיישני הגז. ראה פורומים של Adafruit: השוואת ADC של נוצה כולל 2.6V מוגבל ESP32-S2 למידע נוסף.

פרויקטים קשורים:

  • Adafruit Learn: השוואה והתנסות בחיישני גז דליק
  • Adafruit Learn: חיישן טמפרטורה TMP36

לקריאה נוספת:

  • הנחיות זיהום האוויר של ארגון הבריאות העולמי (WHO)
  • קרן הריאות הבריטית - איכות אוויר (PM2.5 ו- NO2)
  • Breathe London-רשת להשלמת רשת איכות האוויר של לונדון עם "חיישני איכות אוויר נוחים, נוחים להתקנה ושמירה על כולם", המשתמשים כעת ב- Clarity Node-S.
  • מדד איכות האוויר העולמי - אוסף נתונים ממקורות רבים ושונים עם תצוגות מפה ונתונים היסטוריים.
  • Journal Atmosphere: זיהום אוויר פנימי מכיריים למגורים: בחינת הצפת חומרים חלקיקים לבתים במהלך שימוש בעולם האמיתי - זה משתמש בגרסת ה- Raspberry Pi של לוח Enviro+.
  • חקיקה: תקנות תקני איכות האוויר 2010 (בריטניה)
  • בלוג פימורוני: הלילה המזוהם ביותר בשנה (בבריטניה)
  • הכלכלן: שמי חצות - חימום הבית הפחם בפולין יוצר זיהום נרחב (ינואר 2021)
  • חדשות BBC: רעשי תנועה פוגעים ביכולות של ציפורי שיר (זיהום רעש)
  • באג תוכנה בספריית חיישן חומרים חלקיים - מבט על הטיפול הנדרש כדי לנתח בצורה חזקה את הפרוטוקול הטורי PMS5003.