פוטון חלקיקים SparkFun DEV-13712 עם חורים להלחמה
מפרטים
- שם מוצר: לוגר נתונים OpenLog
- דגם: DEV-13712
- קלט מתח: 3.3V-12V (מומלץ 3.3V-5V)
- עוצמת קלט RXItagה: 2.0V-3.8V
- נפח פלט TXOtagה: 3.3V
- צריכת זרם במצב סרק: ~2mA-5mA (ללא כרטיס microSD), ~5mA-6mA (עם כרטיס microSD)
- צריכת זרם כתיבה פעילה: ~20-23mA (עם כרטיס microSD)
הוראות שימוש במוצר
חומרים נדרשים:
- Arduino Pro Mini 328 – 3.3V/8MHz
- פריצת דרך בסיסית של SparkFun FTDI – 3.3V
- כבל USB של SparkFun Cerberus – 6 מטר
- כרטיס microSD עם מתאם – 16GB (Class 10)
- קורא USB microSD
- כותרות נשיות
- חוטי גשר פרימיום 6 M/M חבילה של 10
- כותרות זכר מתנתקות - זווית ישרה
קריאה מומלצת:
חומרה נגמרהview:
ה-OpenLog פועל בהגדרות הבאות:
קלט VCC | קלט RXI | פלט TXO | צריכת זרם סרק | כתיבה פעילה - משיכת זרם |
---|---|---|---|---|
3.3V-12V (מומלץ 3.3V-5V) | 2.0V-3.8V | 3.3V | ~2mA-5mA (ללא כרטיס microSD), ~5mA-6mA (עם כרטיס microSD) | ~20-23mA (עם כרטיס microSD) |
מָבוֹא
שימו לב! מדריך זה מיועד ליומן פתוח עבור UART טורי [DEV-13712]. אם אתם משתמשים ב-Qwiic OpenLog עבור IC [DEV-15164], אנא עיינו במדריך החיבור של Qwiic OpenLog.
אוגר הנתונים OpenLog הוא פתרון פשוט לשימוש בקוד פתוח לרישום נתונים טוריים מהפרויקטים שלך. OpenLog מספק ממשק טורי פשוט לרישום נתונים מפרויקט לכרטיס microSD.
ספארקפאן אופןלוג
DEV-13712
SparkFun OpenLog עם כותרות
DEV-13955
לא נמצא מוצר
חומרים נדרשים
כדי לעבור על מדריך זה במלואו, תזדקקו לחלקים הבאים. ייתכן שלא תזדקקו להכל, תלוי במה שיש לכם. הוסיפו אותו לעגלת הקניות שלכם, קראו את המדריך והתאימו את העגלה לפי הצורך.
מדריך חיבור OpenLog
רשימת משאלות של SparkFun
קריאה מומלצת
אם אינך מכיר או מרגיש בנוח עם המושגים הבאים, אנו ממליצים לקרוא אותם לפני שתמשיך עם מדריך החיבור של OpenLog.
- איך להלחים: הלחמת חור עובר. מדריך זה מכסה את כל מה שצריך לדעת על הלחמת חור עובר.
- תקשורת טורית מושגי תקשורת טורית אסינכרוניים: חבילות, רמות אות, קצבי באוד, UARTs ועוד!
- ממשק היקפי טורי (SPI) SPI משמש בדרך כלל לחיבור מיקרו-בקרים לציוד היקפי כגון חיישנים, אוגרי הזזה וכרטיסי SD.
- יסודות המסוף הטורי מדריך זה יראה לכם כיצד לתקשר עם התקנים טוריים באמצעות מגוון יישומי אמולטור מסוף.
חומרה נגמרהview
כּוֹחַ
ה-OpenLog פועל בהגדרות הבאות:
דירוגי הספק OpenLog
צריכת הזרם של ה-OpenLog היא כ-20mA עד 23mA בעת כתיבה לכרטיס microSD. בהתאם לגודל כרטיס ה-microSD וליצרן שלו, צריכת הזרם הפעילה יכולה להשתנות כאשר ה-OpenLog כותב לכרטיס הזיכרון. הגדלת קצב השידור תמשוך גם יותר זרם.
בקרים זעירים
ה-OpenLog פועל על גבי ATmega328 מובנה, הפועל בתדר של 16 מגה-הרץ, הודות לגביש המובנה. על גבי ה-ATmega328 טעון טוען האתחול של Optiboot, המאפשר ל-OpenLog להיות תואם ל-
הגדרות לוח "ארדוינו אונו" ב-IDE של ארדואינו.
מִמְשָׁק
UART סדרתי
הממשק העיקרי עם OpenLog הוא ראש FTDI בקצה הלוח. ראש זה נועד להתחבר ישירות ל-Arduino Pro או Pro Mini, מה שמאפשר למיקרו-בקר לשלוח את הנתונים דרך חיבור טורי ל-OpenLog.
אַזהָרָה! בגלל סדר הפינים שהופך אותו לתואם לארדואינו, הוא לא יכול להתחבר ישירות ללוח FTDI breakout.
למידע נוסף, הקפידו לעיין בסעיף הבא בנושא חיבור חומרה.
SPI
ישנן גם ארבע נקודות בדיקה של SPI הפרודות בקצה השני של הלוח. ניתן להשתמש בהן כדי לתכנת מחדש את טוען האתחול ב-ATmega328.
ה-OpenLog האחרון (DEV-13712) מפריד את הפינים הללו על חורים קטנים יותר ומצופים. אם אתם צריכים להשתמש בספק שירותי אינטרנט כדי לתכנת מחדש או להעלות bootloader חדש ל-OpenLog, תוכלו להשתמש בפיני pogo כדי להתחבר לנקודות בדיקה אלו.
- הממשק הסופי לתקשורת עם ה-OpenLog הוא כרטיס ה-microSD עצמו. כדי לתקשר, כרטיס ה-microSD דורש פיני SPI. לא רק שזה המקום שבו הנתונים נשמרים על ידי ה-OpenLog, אלא שניתן גם לעדכן את תצורת ה-OpenLog דרך הקובץ config.txt. file בכרטיס ה- microSD.
כרטיס מיקרו אס די
כל הנתונים שנרשמים על ידי OpenLog מאוחסנים בכרטיס microSD. ה-OpenLog עובד עם כרטיסי microSD בעלי התכונות הבאות:
- 64MB ל 32GB
- FAT16 או FAT32
ישנן שתי נוריות LED במצב ב-OpenLog שיסייעו לך בפתרון בעיות.
- STAT1 – נורית חיווי כחולה זו מחוברת לארדואינו D5 (ATmega328 PD5) ונדלקת/כבויה כאשר מתקבל תו חדש. נורית זו מהבהבת כאשר תקשורת טורית פועלת.
- STAT2 – נורית LED ירוקה זו מחוברת ל-Arduino D13 (קו שעון סידורי SPI/ ATmega328 PB5). נורית LED זו מהבהבת רק כאשר ממשק ה-SPI פעיל. תראו אותה מהבהבת כאשר ה-OpenLog רושם 512 בתים לכרטיס ה-microSD.
חיבור חומרה
ישנן שתי שיטות עיקריות לחיבור ה-OpenLog שלך למעגל. תזדקק לכמה ראשי כבלים או חוטים כדי לחבר. ודא שאתה מלחים ללוח לחיבור מאובטח.
חיבור טורי בסיסי
עֵצָהאם יש לך פין נקבה ב-OpenLog ופין נקבה ב-FTDI, תצטרך חוטי מגשר M/F כדי לחבר.
חיבור חומרה זה מיועד לממשק עם OpenLog אם עליך לתכנת מחדש את הלוח או לרשום נתונים דרך חיבור טורי בסיסי.
בצע את החיבורים הבאים:
OpenLog → פריצת דרך בסיסית FTDI 3.3V
- GND → GND
- GND → GND
- VCC → 3.3V
- TXO → RXI
- RXI → TXO
- DTR → DTR
שימו לב שזה לא חיבור ישיר בין ה-FTDI ל-OpenLog - עליכם להחליף את חיבורי הפינים TXO ו-RXI.
החיבורים שלך צריכים להיראות כך:
לאחר שחיבורתם את ה-OpenLog ל-FTDI Basic, חברו את לוח ה-FTDI שלכם לכבל USB ולמחשב. פתחו מסוף טורי, התחברו ליציאת ה-COM של ה-FTDI Basic שלכם, ויאללה!
חיבור חומרת הפרויקט
עֵצָה: אם יש לך את ראשי החיבורים הנקביים מולחמים על OpenLog, אתה יכול להלחים ראשי חיבורים זכריים לארדואינו Pro Mini כדי לחבר את הלוחות יחד ללא צורך בחוטים.
בעוד שחיבור עם ה-OpenLog דרך חיבור טורי חשוב לצורך תכנות מחדש או ניפוי שגיאות, OpenLog מצליח במיוחד בפרויקטים מוטמעים. במעגל כללי זה אנו ממליצים לחבר את ה-OpenLog שלכם למיקרו-בקר (במקרה זה, Arduino Pro Mini) שיכתוב נתונים טוריים אל ה-OpenLog.
ראשית, תצטרכו להעלות את הקוד ל-Pro Mini שאתם מתכוונים להפעיל. אנא עיינו ב-Arduino Sketches לקבלת דוגמאות.ampקוד שתוכל להשתמש בו.
פֶּתֶק: אם אינכם בטוחים כיצד לתכנת את ה-Pro Mini שלכם, אנא עיינו במדריך שלנו כאן.
שימוש בארדואינו פרו מיני 3.3V
- מדריך זה הוא המדריך שלכם לכל מה שקשור לארדואינו פרו מיני. הוא מסביר מהו, מהו לא, וכיצד להתחיל להשתמש בו.
- לאחר שתכנתו את ה-Pro Mini שלכם, תוכלו להסיר את לוח ה-FTDI ולהחליפו ב-OpenLog. ודאו שאתם מחברים את הפינים המסומנים BLK גם ב-Pro Mini וגם ב-OpenLog (הפינים המסומנים GRN בשניהם יתאימו גם אם תעשו זאת נכון).
- אם אינך יכול לחבר את ה-OpenLog ישירות ל-Pro Mini (בשל חיבורים לא תואמים או לוחות אחרים המפריעים), תוכל להשתמש בחוטי מגשר ולבצע את החיבורים הבאים.
OpenLog → Arduino Pro/Arduino Pro Mini
- GND → GND
- GND → GND
- VCC → VCC
- TXO → RXI
- RXI → TXO
- DTR → DTR
לאחר שתסיימו, החיבורים שלכם אמורים להיראות כך עם הארדואינו פרו מיני וארדואינו פרו. דיאגרמת פריצינג מציגה את ה-OpenLogs עם הכותרות שקופות. אם תסובבו את שקע ה-microSD יחסית לחלק העליון של הארדואינו view, הם צריכים להתאים לכותרת התכנות כמו FTDI.
שימו לב שהחיבור הוא ישר כאשר ה-OpenLog הוא "הפוך" (כאשר כרטיס ה-microSD פונה כלפי מעלה).
פֶּתֶק: מכיוון ש-Vcc ו-GND בין ה-OpenLog והארדואינו תפוסים על ידי הכותרות, תצטרכו לחבר לחשמל לפינים האחרים הזמינים בארדואינו. אחרת, תוכלו להלחים חוטים לפיני החשמל החשופים בכל אחד מהלוחות.
הפעל את המערכת שלך, ואתה מוכן להתחיל ברישום!
סקיצות ארדואינו
ישנם שישה אקסים שוניםampסקיצות מצורפות בהן ניתן להשתמש בארדואינו כאשר הן מחוברות ל-OpenLog.
- OpenLog_Benchmarking — דוגמה זוample משמש לבדיקת OpenLog. זה שולח כמויות גדולות מאוד של נתונים במהירות של 115200bps על פני מספר רב של files.
- OpenLog_CommandTest — דוגמה זוampלה מראה כיצד ליצור ולהוסיף file באמצעות בקרת שורת פקודה דרך הארדואינו.
- OpenLog_ReadExampלה — האקס הזהample מסביר כיצד לשלוט ב-OpenLog דרך שורת הפקודה.
- OpenLog_ReadExample_LargeFile - דוגמהampאיך לפתוח קופסה גדולה ומאוחסנת file ב-OpenLog ולדווח על כך דרך חיבור Bluetooth מקומי.
- OpenLog_Test_Sketch — משמש לבדיקת OpenLog עם הרבה נתונים סידוריים.
- OpenLog_Test_Sketch_Binary — משמש לבדיקת OpenLog עם נתונים בינאריים ותווי בריחה.
קושחה
ל-OpenLog יש שתי תוכנות עיקריות: טוען האתחול והקושחה.
מטעין האתחול של Arduino
פֶּתֶק: אם אתם משתמשים ב-OpenLog שנרכש לפני מרץ 2012, טוען האתחול המובנה תואם להגדרה "Arduino Pro או Pro Mini 5V/16MHz עם ATmega328" ב-IDE של Arduino.
- כפי שצוין קודם לכן, ל-OpenLog יש את טוען האתחול הסריאלי Optiboot. ניתן להתייחס ל-OpenLog בדיוק כמו לארדואינו אונו בעת העלאת קבצים.ampקוד le או קושחה חדשה ללוח.
- אם בסופו של דבר תבטל את ה-OpenLog שלך ותצטרך להתקין מחדש את מנהל האתחול, כדאי לך גם להעלות את Optiboot ללוח. אנא עיין במדריך שלנו להתקנת מנהל אתחול של Arduino לקבלת מידע נוסף.
קומפילציה וטעינת קושחה על ה-OpenLog
פֶּתֶק: אם זו הפעם הראשונה שאתם משתמשים בארדואינו, אנא חזרוview המדריך שלנו להתקנת IDE של Arduino. אם לא התקנת בעבר ספריית Arduino, אנא עיין במדריך ההתקנה שלנו להתקנה ידנית של הספריות.
- אם מסיבה כלשהי תצטרכו לעדכן או להתקין מחדש את הקושחה ב-OpenLog שלכם, התהליך הבא יפעיל את הלוח.
- ראשית, אנא הורידו את גרסה 1.6.5 של Arduino IDE. גרסאות אחרות של ה-IDE עשויות לעבוד לקמפל את הקושחה של OpenLog, אך אימתנו שזו גרסה תקינה ומוכרת.
- לאחר מכן, הורידו את הקושחה של OpenLog ואת חבילת הספריות הנדרשת.
הורד את חבילת קושחת OPENLOG (ZIP)
- לאחר שהורדתם את הספריות והקושחה, התקינו את הספריות בארדואינו. אם אינכם בטוחים כיצד להתקין את הספריות באופן ידני ב-IDE, אנא עיינו במדריך שלנו: התקנת ספריית ארדואינו: התקנה ידנית של ספרייה.
פֶּתֶק:
- אנו משתמשים בגרסאות משופרות של ספריות SdFat ו-SerialPort על מנת להצהיר באופן שרירותי על גודל מאגר ה-TX וה-RX. OpenLog דורש שמאגר ה-TX יהיה קטן מאוד (0), ומאגר ה-RX צריך להיות גדול ככל האפשר.
- שימוש בשתי הספריות המעודכנות הללו יחד מאפשר ביצועים משופרים של OpenLog.
מחפש את הגרסאות האחרונות?
אם אתם מעדיפים את הגרסאות העדכניות ביותר של הספריות והקושחה, תוכלו להוריד אותן ישירות ממאגרי GitHub המקושרים למטה. ספריות SdFatLib ו-Serial Port אינן גלויות במנהל הלוחות של Arduino, לכן תצטרכו להתקין את הספרייה באופן ידני.
- GitHub: OpenLog > קושחה > OpenLog_Firmware
- ספריות הארדואינו של ביל גריימן
- SdFatLib-beta
- יציאה טורית
- הבא, כדי לנצל את ההזדמנותtagאחת מהספריות שהשתנו, שנה את הקובץ SerialPort.hh file נמצא בספרייה \Arduino\Libraries\SerialPort. שנה את BUFFERED_TX ל-0 ואת ENABLE_RX_ERROR_CHECKING ל-0. שמור את file, ופתח את ה-IDE של ארדואינו.
- אם עדיין לא עשית זאת, חבר את ה-OpenLog שלך למחשב דרך לוח FTDI. אנא בדוק שוב את התקינות.ample circuit אם אינך בטוח כיצד לעשות זאת כהלכה.
- פתחו את סקיצת ה-OpenLog שברצונכם להעלות תחת כלים> תפריט לוח, בחרו "Arduino/Genuino Uno", ובחרו את יציאת ה-COM המתאימה עבור לוח ה-FTDI שלכם תחת כלים> יציאה.
- העלה את הקוד.
- זהו! ה-OpenLog שלך מתוכנת כעת עם קושחה חדשה. כעת תוכל לפתוח צג טורי ולקיים אינטראקציה עם ה-OpenLog. עם ההפעלה, תראה 12> או 12<. 1 מציין שהחיבור הטורי נוצר, 2 מציין שכרטיס ה-SD אותחל בהצלחה, < מציין ש-OpenLog מוכן לרשום כל נתונים טוריים שהתקבלו, ו-> מציין ש-OpenLog מוכן לקבל פקודות.
סקיצות קושחה של OpenLog
ישנן שלוש סקיצות כלולות בהן ניתן להשתמש ב-OpenLog, בהתאם ליישום הספציפי שלך.
- OpenLog – קושחה זו מגיעה כברירת מחדל ב-OpenLog. שליחת הפקודה ? תציג את גרסת הקושחה שהוטענה ביחידה.
- OpenLog_Light – גרסה זו של הסקיצה מסירה את התפריט ומצב הפקודות, ומאפשרת הגדלת מאגר הקבלה. זוהי אפשרות טובה לרישום במהירות גבוהה.
- OpenLog_Minimal – יש להגדיר את קצב הבאוד בקוד ולהעלות אותו. סקיצה זו מומלצת למשתמשים מנוסים אך היא גם האפשרות הטובה ביותר לרישום במהירות הגבוהה ביותר.
שורת פקודה
ניתן להתחבר ל-OpenLog דרך מסוף טורי. הפקודות הבאות יעזרו לך לקרוא, לכתוב ולמחוק files, וכן לשנות את הגדרות ה-OpenLog. תצטרך להיות במצב פקודה כדי להשתמש בהגדרות הבאות.
כאשר OpenLog נמצא במצב פקודה, STAT1 יפעל/יכבה עבור כל תו שמתקבל. נורית ה-LED תישאר דולקת עד לקבלת התו הבא.
- חָדָשׁ File – יוצר חדש file בשם File בספרייה הנוכחית. תקן 8.3 fileשמות נתמכים. לדוגמהampלדוגמה, "87654321.123" מקובל, בעוד ש-"987654321.123" אינו מקובל.
- Exampחדש file1.txt
- לְצַרֵף File – הוספת טקסט לסוף ה- Fileנתונים טוריים נקראים לאחר מכן מה-UART בזרם ומתווספים ל- fileזה לא מועבר דרך הטרמינל הטורי. אם ה- File לא קיים כאשר פונקציה זו נקראת, ה- file תיווצר.
- Exampהוסף חדשfile.csv
- לִכתוֹב File OFFSET – כתיבת טקסט אל File מהמיקום OFFSET בתוך ה- fileהטקסט נקרא מה-UART, שורה אחר שורה, ומועבר חזרה. כדי לצאת ממצב זה, שלח שורה ריקה.
- Example: כתוב קובץ logs.txt 516
- rm File – מוחק את File מהספרייה הנוכחית. תווים כלליים (Willcardcards) נתמכים.
- Exampקובץ: rm README.txt
- גוֹדֶל File – גודל הפלט של File בבתים.
- Exampקובץ: גודל Log112.csv
- פלט: 11
- לִקְרוֹא File + START+ LENGTH TYPE – פלט את התוכן של File החל מ-START והמשך ל-LENGTH. אם START מושמט, כל file מדווח. אם LENGTH מושמט, כל התוכן מנקודת ההתחלה מדווח. אם TYPE מושמט, ה-OpenLog ידווח כברירת מחדל ב-ASCII. ישנם שלושה TYPES פלט:
- ASCII = 1
- HEX = 2
- RAW = 3
- ניתן להשמיט כמה ארגומנטים עוקבים. בדוק את הדוגמה הבאהamples.
- דגלים בסיסיים של קריאה + השמטה:
- Example: קרא את הקובץ LOG00004.txt
- פלט: מד תאוצה X=12 Y=215 Z=317
- קריאה מתחילת 0 עם אורך של 5:
- Example: קרא LOG00004.txt 0 5
- פלט: אקסל
- קריאה ממיקום 1 עם אורך של 5 ב-HEX:
- Example: קרא את LOG00004.txt 1 5 2
- פלט: 63 63 65 6C
- קריאה ממיקום 0 עם אורך של 50 בקובץ RAW:
- Example: קרא את LOG00137.txt 0 50 3
- פלט: מבחן תווים מורחב של André–-þ
- חָתוּל File – לכתוב את התוכן של file בהקסדצימלי לצג הטורי עבור viewינג. זה לפעמים מועיל לראות ש-a file מקליט כראוי מבלי להוציא את כרטיס ה-SD ו view את file במחשב.
- Exampקובץ: cat LOG00004.txt
- פלט: 00000000: 41 63 65 6c 3a 20 31
מניפולציה של ספריות
- ls – מפרט את כל התוכן של הספרייה הנוכחית. תווים כלליים נתמכים.
- Exampלה: לס
- פלט: \src
- ספריית משנה של md – צור ספריית משנה בספרייה הנוכחית.
- Example: md Example_Sketches
- ספריית משנה של cd – שינוי לספריית משנה.
- Example: cd שלום_עולם
- cd .. – מעבר לספרייה נמוכה יותר בעץ. שימו לב שיש רווח בין 'cd' ל-'..'. זה מאפשר למנתח המחרוזות לראות את פקודת CD.
- Exampלה: תקליטור ..
- ספריית משנה rm – מוחקת ספריית משנה. הספרייה חייבת להיות ריקה כדי שפקודה זו תפעל.
- Exampטמפרטורות rm
- ספרייה rm -rf – מוחקת את הספרייה וכל fileהכלול בתוכו.
- Exampספריות le: rm -rf
פקודות פונקציה ברמה נמוכה
- ? – פקודה זו תציג רשימה של פקודות זמינות ב-OpenLog.
- דיסק – מציג את מזהה יצרן הכרטיס, מספר סידורי, תאריך ייצור וגודל כרטיס. לדוגמהampהפלט הוא:
- סוג כרטיס: SD2 מזהה יצרן: 3
- מזהה יצרן ציוד מקורי: SD
- מוצר: SU01G
- גרסה: 8.0
- מספר סידורי: 39723042 תאריך ייצור: 1/2010 גודל כרטיס: 965120 KB
- init – אתחול מחדש של המערכת ופתיחה מחדש של כרטיס ה-SD. זה שימושי אם כרטיס ה-SD מפסיק להגיב.
- סנכרון – מסנכרן את התוכן הנוכחי של המאגר לכרטיס ה-SD. פקודה זו שימושית אם יש לך פחות מ-512 תווים במאגר וברצונך להקליט אותם בכרטיס ה-SD.
- איפוס – מחזיר את OpenLog למיקום אפס, מפעיל מחדש את טוען האתחול ולאחר מכן את קוד האתחול. פקודה זו מועילה אם עליך לערוך את ההגדרות. file, אפס את OpenLog והתחל להשתמש בתצורה החדשה. הפעלה וכיבוי מחדש עדיין השיטה המועדפת לאיפוס הלוח, אך אפשרות זו זמינה.
הגדרות מערכת
ניתן לעדכן או לערוך הגדרות אלו באופן ידני בקובץ config.txt. file.
- Echo STATE – משנה את מצב המערכת ומאוחסן בזיכרון המערכת. מצב יכול להיות מופעל או כבוי. כאשר הוא מופעל, OpenLog יבצע הד של נתונים סידוריים שהתקבלו בשורת הפקודה. כאשר הוא כבוי, המערכת לא קוראת בחזרה תווים שהתקבלו.
פֶּתֶק: במהלך רישום רגיל, ההד יכובה. דרישות משאבי המערכת להד של הנתונים שהתקבלו גבוהות מדי במהלך הרישום.
- מצב מפורט – משנה את מצב דיווח השגיאות המפורט. מצב יכול להיות פעיל או כבוי. פקודה זו מאוחסנת בזיכרון. על ידי כיבוי שגיאות מפורטות, OpenLog יגיב רק עם ! אם יש שגיאה, ולא עם פקודה לא ידועה: C OMMAND.D..T התווים קלים יותר לניתוח עבור מערכות משובצות מאשר השגיאה המלאה. אם אתה משתמש בטרמינל, השארת הדיווח המפורט פעילה תאפשר לך לראות הודעות שגיאה מלאות.
- באוד – פקודה זו תפתח תפריט מערכת המאפשר למשתמש להזין קצב באוד. כל קצב באוד בין 300bps ל-1Mbps נתמך. בחירת קצב הבאוד היא מיידית, ו-OpenLog דורש הפעלה מחדש כדי שההגדרות ייכנסו לתוקף. קצב הבאוד נשמר ב-EEPROM ונטען בכל פעם ש-OpenLog מופעל. ברירת המחדל היא 9600 8N1.
לִזכּוֹר: אם הלוח תקוע בקצב באוד לא ידוע, ניתן לחבר את RX ל-GND ולהפעיל את OpenLog. נוריות ה-LED יהבהבו הלוך ושוב למשך 2 שניות ולאחר מכן יהבהבו בו זמנית. כבה את OpenLog והסר את המגשר. OpenLog מאופס כעת ל-9600bps עם לחיצה על תו בריחה `CTRL-Z` שלוש פעמים ברציפות. ניתן לעקוף תכונה זו על ידי הגדרת סיבית Emergency Override ל-1. ראה config.txt למידע נוסף.
- הגדר – פקודה זו פותחת תפריט מערכת לבחירת מצב אתחול. הגדרות אלו יתבצעו בהפעלה הבאה ונשמרות בזיכרון EEPROM שאינו נדיף.
- חָדָשׁ File רישום – מצב זה יוצר חדש file בכל פעם ש-OpenLog מופעל. OpenLog ישדר 1 (UART פעיל), 2 (כרטיס SD אותחל), ואז < (OpenLog מוכן לקבל נתונים). כל הנתונים יירשמו בקובץ LOG#####.txt. המספר ##### עולה בכל פעם ש-OpenLog מופעל (המקסימום הוא 65533 לוגים). המספר מאוחסן ב-EEPROM וניתן לאפס אותו מתפריט ההגדרות. לא כל התווים שהתקבלו מוקלטים. ניתן לצאת ממצב זה ולהיכנס למצב פקודה על ידי שליחת CTRL+z (ASCII 26). כל הנתונים המאוחסנים במאגר יאוחסנו.
- פֶּתֶק: אם נוצרו יותר מדי יומני רישום, OpenLog יציג את השגיאה **יותר מדי יומני רישום**, ייצא ממצב זה ויעבור לשורת הפקודה. הפלט הטורי ייראה כך: `12!Too many logs!"
- לְצַרֵף File רישום – ידוע גם כמצב סדרתי, מצב זה יוצר file נקרא SEQLOG.txt אם הוא עדיין לא שם, ומוסיף כל מידע שהתקבל ל- fileOpenLog ישדר 12< ובשלב זה OpenLog מוכן לקבל נתונים. תווים אינם מושמעים בהדהוד. ניתן לצאת ממצב זה ולהיכנס למצב פקודה על ידי שליחת CTRL+z (ASCII 26). כל הנתונים המאוחסנים במאגר יאוחסנו.
- שורת פקודה – OpenLog ישדר 12>, ובשלב זה המערכת מוכנה לקבל פקודות. שימו לב שהסימן > מציין ש-OpenLog מוכן לקבל פקודות, לא נתונים. ניתן ליצור fileוצרף נתונים ל- files, אך זה דורש ניתוח סדרתי (לבדיקת שגיאות), לכן איננו מגדירים מצב זה כברירת מחדל.
- איפוס חדש File מספר – מצב זה יאפס את היומן file מספר ל-LOG000.txt. זה שימושי אם ניקית לאחרונה כרטיס microSD ואתה רוצה שהיומן file מספרים כדי להתחיל מחדש.
- תו בריחה חדש – אפשרות זו מאפשרת למשתמש להזין תו, כגון CTRL+z או $, ולהגדיר אותו כתו הבריחה החדש. הגדרה זו מאופסת ל-CTRL+z במהלך איפוס חירום.
- מספר תווי בריחה – אפשרות זו מאפשרת למשתמש להזין תו (כגון 1, 3 או 17), תוך עדכון מספר תווי הבריחה החדש הדרושים כדי לעבור למצב פקודה. לדוגמהampכלומר, הזנת 8 תדרוש מהמשתמש ללחוץ על CTRL+z שמונה פעמים כדי להגיע למצב פקודה. הגדרה זו מאופסת ל-3 במהלך איפוס חירום.
- הסבר על תווי בריחה: הסיבה ש-OpenLog דורשת לחיצה של `CTRL+z` 3 פעמים כדי להיכנס למצב פקודה היא כדי למנוע איפוס בטעות של הלוח במהלך העלאת קוד חדש מה-IDE של Arduino. קיים סיכוי שהלוח יראה את התו `CTRL+z` במהלך טעינת ההפעלה (בעיה שראינו בגרסאות המוקדמות של הקושחה של OpenLog), ולכן זה נועד למנוע זאת. אם אי פעם אתם חושדים שהלוח שלכם נתקע עקב כך, תמיד תוכלו לבצע איפוס חירום על ידי החזקת פין ה-RX לאדמה במהלך ההפעלה.
תְצוּרָה File
אם אינך מעוניין להשתמש במסוף הטורי לשינוי ההגדרות ב-OpenLog שלך, תוכל גם לעדכן את ההגדרות על ידי שינוי קובץ ה-CONFIG.TXT. file.
פֶּתֶק: תכונה זו פועלת רק בגרסת קושחה 1.6 ומעלה. אם רכשת OpenLog לאחר 2012, תפעיל גרסת קושחה 1.6 ומעלה.
- לשם כך, תזדקק לקורא כרטיסי microSD ועורך טקסט. פתח את הקובץ config.txt file (האותיות הגדולות של file (השם לא משנה), והתחילו להגדיר! אם מעולם לא הפעלתם את ה-OpenLog שלכם באמצעות כרטיס ה-SD, תוכלו גם ליצור ידנית את fileאם הפעלתם את ה-OpenLog עם כרטיס microSD שהוכנס קודם לכן, אתם אמורים לראות משהו כמו הבא כשאתם קוראים את כרטיס ה-microSD.
ה-OpenLog יוצר קובץ config.txt וקובץ LOG0000.txt file בהפעלה הראשונה.
- תצורת ברירת המחדל file יש שורה אחת של הגדרות ושורה אחת של הגדרות.
תצורת ברירת המחדל file נכתב על ידי OpenLog.
- שימו לב שאלו תווים רגילים גלויים (אין ערכים שאינם גלויים או בינאריים), וכל ערך מופרד באמצעות פסיק.
ההגדרות מוגדרות באופן הבא:
- באוד: קצב באוד של התקשורת. 9600 bps הוא ברירת המחדל. ערכים מקובלים התואמים ל-Arduino IDE הם 2400, 4800, 9600, 19200, 38400, 57600 ו-115200. ניתן להשתמש בקצבי באוד אחרים, אך לא תוכלו לתקשר עם OpenLog דרך הצג הטורי של Arduino IDE.
- Escape:e ערך ASCII (בפורמט עשרוני) של תו הבריחה. 26 הוא CTRL+z והוא ברירת המחדל. 36 הוא $ והוא תו בריחה נפוץ.
- Esc #: מספר תווי ה-escape הנדרשים. כברירת מחדל, הוא שלושה, לכן עליך ללחוץ על תו ה-escape שלוש פעמים כדי לעבור למצב פקודה. ערכים מקובלים הם בין 0 ל-254. הגדרת ערך זה ל-0 תבטל לחלוטין את בדיקת תווי ה-escape.
- מצב מערכת. OpenLog מתחיל במצב יומן חדש (0) כברירת מחדל. ערכים מקובלים הם 0 = יומן חדש, 1 = יומן רציף, 2 = מצב פקודה.
- פועל: מצב מפורט. הודעות שגיאה מורחבות (מפורטות) מופעלות כברירת מחדל. הגדרה של 1 מפעילה הודעות שגיאה מפורטות (כגון פקודה לא ידועה: remove !). הגדרה של 0 מבטלת שגיאות מפורטות, אך תגיב עם ! אם יש שגיאה. כיבוי מצב מפורט שימושי אם מנסים לטפל בשגיאות ממערכת משובצת.
- הד: מצב הד. במצב פקודה, תווים מושמעים כברירת מחדל. הגדרה של 0 מבטלת את הד התווים. כיבוי אפשרות זו שימושי אם מטפלים בשגיאות, ואינך רוצה שפקודות שנשלחו יושמעו בחזרה ל-OpenLog.II.
- התעלם מ-RXEmergency Override. בדרך כלל, OpenLog יאפס בחירום כאשר פין ה-RX נשמט במהלך ההפעלה. הגדרה זו ל-1 תשבית את בדיקת פין ה-RX במהלך ההפעלה. זה יכול להיות מועיל עבור מערכות שישאירו את קו ה-RX נמוך מסיבות שונות. אם Emergency Override מושבת, לא תוכל לאלץ את היחידה לחזור ל-9600bps, והתצורה file תהיה הדרך היחידה לשנות את קצב הבאוד.
כיצד OpenLog משנה את התצורה File
ישנם חמישה מצבים שונים שבהם OpenLog יכול לשנות את הקובץ config.txt file.
- Config file נמצא: במהלך ההפעלה, OpenLog יחפש קובץ config.txt file. אם ה file אם יימצא, OpenLog ישתמש בהגדרות הכלולות וידרוס את כל הגדרות המערכת שנשמרו בעבר.
- אין תצורה file נמצא: אם OpenLog לא מצליח למצוא את הקובץ config.txt file לאחר מכן, OpenLog ייצור קובץ config.txt וירשום בו את הגדרות המערכת המאוחסנות כעת. משמעות הדבר היא שאם תכניסו כרטיס microSD שפורמט לאחרונה, המערכת שלכם תשמור על ההגדרות הנוכחיות שלה.
- תצורה פגומה file נמצא: OpenLog ימחק את קובץ config.txt הפגום file, ויכתוב מחדש גם את הגדרות ה-EEPROM הפנימיות וגם את הגדרות ה-config.txt file למצב הידוע כטוב של 9600,26,3,0,1,1,0.
- ערכים לא חוקיים בתצורה fileאם OpenLog יגלה הגדרות המכילות ערכים לא חוקיים, OpenLog ידרוס את הערכים הפגומים בקובץ config.txt. file עם הגדרות מערכת ה-EEPROM השמורות כעת.
- שינויים דרך שורת הפקודה: אם הגדרות המערכת משתנות דרך שורת הפקודה (בין אם דרך חיבור טורי ובין אם דרך פקודות טוריות של מיקרו-בקר), שינויים אלה יירשמו הן ב-EEPROM של המערכת והן בקובץ config.txt. file.
- איפוס חירום: אם ה-OpenLog מופעל מחדש באמצעות מגשר בין RX ל-GND, והביט Emergency Override מוגדר ל-0 (מה שמאפשר איפוס חירום), OpenLog יכתוב מחדש הן את הגדרות ה-EEPROM הפנימיות והן את הגדרות ה-config.txt. file למצב הידוע כטוב של 9600,26,3,0,1,1,0.
פתרון בעיות
ישנן מספר אפשרויות שונות לבדוק אם אתה נתקל בבעיות בחיבור דרך הצג הטורי, בעיות עם תווים שנמחקו ביומנים, או בעיות עם OpenLog תקוע.
בדיקת התנהגות נורית ה-STAT1
נורית STAT1 מציגה התנהגות שונה עבור שתי שגיאות נפוצות שונות.
- 3 הבהובים: אתחול כרטיס ה-microSD נכשל. ייתכן שתצטרך לפרמט את הכרטיס באמצעות FAT/FAT16 במחשב.
- 5 הבהובים: OpenLog השתנה לקצב באוד חדש ויש לכבות אותו מחדש.
בדוק שוב את מבנה התת-ספריות
- אם אתה משתמש בקובץ OpenLog.ino המוגדר כברירת מחדלampכלומר, OpenLog יתמוך רק בשתי ספריות משנה. תצטרכו לשנות את FOLDER_TRACK_DEPTH מ-2 למספר ספריות המשנה שאתם צריכים לתמוך בהן. לאחר שתעשו זאת, בצעו קומפילציה מחדש של הקוד והעלו את הקושחה המותאמת.
- אימות מספר Files בספריית השורש
- OpenLog יתמוך רק בעד 65,534 יומני רישום. files בספריית השורש. אנו ממליצים לפרמט מחדש את כרטיס ה-microSD כדי לשפר את מהירות הרישום.
- אימות גודל הקושחה המעודכנת שלך
- אם אתם כותבים סקיצה מותאמת אישית עבור OpenLog, ודאו שהסקיצה שלכם אינה גדולה מ-32,256. אם כן, היא תתפוס את 500 הבייטים העליונים של זיכרון הפלאש, המשמשים את טוען האתחול הסריאלי של Optiboot.
- בדיקה כפולה File שמות
- כֹּל file שמות צריכים להיות אלפאנומריים. קובץ MyLOG1.txt תקין, אבל ייתכן ש-Hi !e _ .txtt לא יעבוד.
- השתמש ב-9600 באוד
- OpenLog פועל על גבי ATmega328 ויש לו כמות מוגבלת של זיכרון RAM (2048 בתים). כאשר שולחים תווים סדרתיים ל-OpenLog, תווים אלה נשמרים במאגר. מפרט SD Group Simplified מאפשר לכרטיס SD לקחת עד 250ms (סעיף 4.6.2.2 כתיבה) כדי להקליט בלוק נתונים לזיכרון הבזק.
- בקצב של 9600bps, זה 960 בתים (10 סיביות לבייט) לשנייה. זה 1.04ms לבייט. OpenLog משתמש כרגע במאגר קבלה של 512 בתים, כך שהוא יכול לאחסן כ-50ms של תווים. זה מאפשר ל-OpenLog לקבל בהצלחה את כל התווים המגיעים במהירות של 9600bps. ככל שתגדילו את קצב השידור, המאגר יחזיק מעמד פחות זמן.
זמן הצפת מאגר OpenLog
שיעור באוד | זמן לכל בייט | זמן עד למצב של מאגר |
9600bps | 1.04ms | 532ms |
57600bps | 0.174ms | 88ms |
115200bps | 0.087ms | 44ms |
לכרטיסי SD רבים יש זמן הקלטה מהיר יותר מ-250ms. זמן הקלטה זה יכול להיות מושפע מ"סוג" הכרטיס ומכמות הנתונים שכבר מאוחסנת בו. הפתרון הוא להשתמש בקצב באוד נמוך יותר או להגדיל את משך הזמן בין התווים הנשלחים בקצב באוד גבוה יותר.
זכרו להשתמש בכרטיס עם מעט או ללא fileזה על זה. כרטיס microSD עם 3.1GB של ZIP fileלקבצי s או MP3 יש זמן תגובה איטי יותר מאשר לכרטיס ריק. אם לא פרמטת את כרטיס ה-microSD שלך במערכת הפעלה Windows, פרמט מחדש את כרטיס ה-microSD וצר קובץ DOS fileהמערכת בכרטיס ה-SD.
ישנם סוגים רבים ושונים של יצרני כרטיסים, כרטיסים עם תווית מחדש, גדלי כרטיסים וקטגוריות כרטיסים, וייתכן שלא כולם יעבדו כראוי. אנו משתמשים בדרך כלל בכרטיס microSD מסוג Class 8 בנפח 4GB, שעובד היטב בקצב של 9600bps. אם אתם זקוקים לקצבי באוד גבוהים יותר או לשטח אחסון גדול יותר, ייתכן שתרצו לנסות כרטיסים מסוג Class 6 ומעלה.
על ידי הוספת עיכוב קטן בין פקודות Serial.print(), ניתן לתת ל-OpenLog הזדמנות לתעד את המאגר הנוכחי שלו.
- Serial.begin(115200);
עבור (int i = 1; i < 10; i++) { Serial.print(i, DEC); Serial.println(":abcdefghijklmnopqrstuvwxyz-!#"); }
ייתכן שלא יתעדכן כראוי, מכיוון שיש הרבה תווים שנשלחים אחד ליד השני. הוספת השהייה קטנה של 15ms בין כתיבת תווים גדולים תעזור ל-OpenLog להקליט מבלי להשמיט תווים.
- Serial.begin(115200);
עבור (int i = 1; i < 10; i++) { Serial.print(i, DEC); Serial.println(":abcdefghijklmnopqrstuvwxyz-!#"); delay(15); }
הוסף תאימות לצג טורי של ארדואינו
אם אתם מנסים להשתמש ב-OpenLog עם הספרייה הטורית המובנית או עם ספריית SoftwareSerial, ייתכן שתבחינו בבעיות במצב פקודה. הפקודה Serial.println() שולחת גם שורה חדשה וגם החזרת גרירה. ישנן שתי פקודות חלופיות להתגבר על בעיה זו.
הראשון הוא להשתמש בפקודת \r (החזרת גררה ASCII):
Serial.print("טקסט\r");
לחלופין, ניתן לשלוח את הערך 13 (תרשים החזרה עשרוני):
- סידורי.הדפסה("טקסט");
- Serial.write(13);
איפוס חירום
זכור, אם עליך לאפס את ה-OpenLog למצב ברירת מחדל, תוכל לאפס את הלוח על ידי חיבור פין ה-RX ל-GND, הפעלת ה-OpenLog, המתנה עד שנורות ה-LED יתחילו להבהב בו זמנית, ולאחר מכן כיבוי ה-OpenLog והסרת המגשר.
אם שינית את הסיבית של עקיפת חירום ל-1, תצטרך לשנות את התצורה file, מכיוון שאיפוס חירום לא יעבוד.
בדקו עם הקהילה
אם אתם עדיין נתקלים בבעיות עם OpenLog שלכם, אנא בדקו את הבעיות הנוכחיות והסגורות במאגר GitHub שלנו כאן. יש קהילה גדולה שעובדת עם OpenLog, כך שסביר להניח שמישהו מצא פתרון לבעיה שאתם רואים.
משאבים והתקדמות נוספת
כעת, לאחר שרישמתם בהצלחה נתונים באמצעות OpenLog, תוכלו להגדיר פרויקטים מרוחקים ולנטר את כל הנתונים האפשריים. שקלו ליצור פרויקט Citizen Science משלכם, או אפילו מעקב אחר חיות מחמד כדי לראות מה פלאפי עושה כשהוא בחוץ!
בדקו את המשאבים הנוספים האלה לפתרון בעיות, עזרה או השראה לפרויקט הבא שלכם.
- OpenLog GitHub
- פרויקט אילומיטון
- חיבור חיישן אור LilyPad
- BadgerHack: תוסף לחיישן קרקע
- תחילת העבודה עם OBD-II
- ורניר פוטוגייט
צריכים עוד קצת השראה? צפו בכמה מהמדריכים הרלוונטיים האלה:
- חיישן מפלס מים מרחוק של פוטון
למד כיצד לבנות חיישן מפלס מים מרוחק עבור מיכל אחסון מים וכיצד להפוך משאבה לאוטומטית על סמך הקריאות! - מדריך פרויקט לוח בלינק
סדרה של פרויקטים של Blynk שתוכלו להגדיר על לוח Blynk מבלי לתכנת אותו מחדש. - רישום נתונים לגיליונות אלקטרוניים של גוגל עם Tessel 2
פרויקט זה מכסה כיצד לרשום נתונים ב-Google Sheets בשתי דרכים: באמצעות IFTTT עם web חיבור או כונן USB ו-"sneakernet" בלעדיו. - גרף נתוני חיישן עם Python ו-Matplotlib
השתמש ב-matplotlib כדי ליצור גרף בזמן אמת של נתוני טמפרטורה שנאספו מחיישן TMP102 המחובר ל-Raspberry Pi.
אם יש לכם משוב על הדרכה, אנא בקרו בתגובות או צרו קשר עם צוות התמיכה הטכנית שלנו בכתובת תמיכה טכנית@sparkfun.com.
שאלות נפוצות
מהי צריכת החשמל המומלצת עבור OpenLog?
קלט החשמל המומלץ עבור OpenLog הוא בין 3.3V ל-5V.
כמה זרם ה-OpenLog צורך כשהוא במצב סרק?
ה-OpenLog צורך כ-2mA עד 5mA כאשר הוא במצב סרק ללא כרטיס microSD, וכ-5mA עד 6mA כאשר מוכנס כרטיס microSD.
מהי מטרת החיבור של כרטיס ה-microSD USB ל-OpenLog?
קורא ה-USB microSD מאפשר העברה קלה של נתונים מכרטיס ה-microSD המשמש עם OpenLog למחשב.
מסמכים / משאבים
![]() |
פוטון חלקיקים SparkFun DEV-13712 עם חורים להלחמה [pdfמדריך למשתמש DEV-13712, DEV-13955, DEV-13712 פוטון חלקיקים עם חורים להלחמה, DEV-13712, פוטון חלקיקים עם חורים להלחמה, חורים להלחמה, להלחמה, הלחמה |