מדריך חיבור OpenLog
מָבוֹא
שימו לב! מדריך זה מיועד ליומן פתוח עבור UART טורי [DEV-13712]. אם אתם משתמשים ב-Qwiic OpenLog עבור IC [DEV-15164], אנא עיינו במדריך החיבור של Qwiic OpenLog.
אוגר הנתונים OpenLog הוא פתרון פשוט לשימוש בקוד פתוח לרישום נתונים טוריים מהפרויקטים שלך. OpenLog מספק ממשק טורי פשוט לרישום נתונים מפרויקט לכרטיס microSD.ספארקפאן אופןלוג
• DEV-13712SparkFun OpenLog עם כותרות
• DEV-13955
לא נמצא מוצר
חומרים נדרשים
כדי לעבור על מדריך זה במלואו, תזדקקו לחלקים הבאים. ייתכן שלא תזדקקו להכל, תלוי במה שיש לכם. הוסיפו אותו לעגלת הקניות שלכם, קראו את המדריך והתאימו את העגלה לפי הצורך.
מדריך חיבורים של OpenLog - רשימת משאלות של SparkFun
![]() |
Arduino Pro Mini 328 – 3.3V/8MHz DEV-11114 זה כחול! זה דק! זה הארדואינו פרו מיני! גישת העיצוב המינימליסטי של SparkFun לארדואינו. זהו ארדואינו 3.3V... |
![]() |
פריצת דרך בסיסית של SparkFun FTDI – 3.3V DEV-09873 זוהי הגרסה החדשה ביותר של [FTDI Basic] שלנוhttp://www.sparkfun.com/commerce/product_info.php?products_id=… |
![]() |
כבל USB של SparkFun Cerberus – 6 מטר CAB-12016 יש לך כבל USB שגוי. לא משנה איזה מהם יש לך, זה כבל שגוי. אבל מה אם היית יכול... |
![]() |
ספארקפאן אופןלוג DEV-13712 ה-SparkFun OpenLog הוא לוגר נתונים בקוד פתוח שפועל דרך חיבור טורי פשוט ותומך ב-mi… |
![]() |
כרטיס microSD עם מתאם – 16GB (Class 10) COM-13833 זהו כרטיס זיכרון microSD מסוג Class 10 בנפח 16GB, מושלם לאחסון מערכות הפעלה עבור מחשבים בעלי לוח יחיד… |
![]() |
קורא USB microSD COM-13004 זהו קורא כרטיסי microSD קטן ונהדר ב-USB. פשוט החליקו את כרטיס ה-microSD שלכם לתוך חיבור ה-USB, ו... |
![]() |
כותרות נשיות PRT-00115 שורה אחת של 40 חורים, ראש נקבה. ניתן לחתוך לגודל המתאים בעזרת זוג חותכי חוטים. מרווח סטנדרטי של 1 אינץ'. אנו משתמשים... |
![]() |
חוטי גשר פרימיום 6 אינץ' M/M חבילה של 10 PRT-08431 זהו בלעדי ל-SparkFun! אלו מגשרים ארוכים באורך 155 מ"מ עם מחברים זכריים בשני הקצוות. השתמשו בהם כדי פשוט... |
![]() |
כותרות זכר מתנתקות - זווית ישרה PRT-00553 שורה של פין זכר בזווית ישרה - ניתן לחתוך להתאמה. 40 פינים הניתנים לחיתוך לכל גודל. לשימוש עם מעגלים מודפסים בהתאמה אישית או גנרטורים... |
קריאה מומלצת
אם אינך מכיר או מרגיש בנוח עם המושגים הבאים, אנו ממליצים לקרוא אותם לפני שתמשיך עם מדריך החיבור של OpenLog.
איך להלחים: הלחמה דרך חור
מדריך זה מכסה את כל מה שצריך לדעת על הלחמת חורים עובריים.
ממשק היקפי טורי (SPI)
SPI משמש בדרך כלל לחיבור מיקרו-בקרים לציוד היקפי כגון חיישנים, אוגרי הזזה וכרטיסי SD.
תקשורת טורית
מושגי תקשורת טורית אסינכרוניים: חבילות, רמות אות, קצבי באוד, UARTs ועוד!
יסודות המסוף הטורי
מדריך זה יראה לכם כיצד לתקשר עם התקנים טוריים באמצעות מגוון יישומי אמולטור מסוף.
חומרה נגמרהview
כּוֹחַ
ה-OpenLog פועל בהגדרות הבאות:
דירוגי הספק OpenLog
קלט VCC | 3.3V-12V (מומלץ 3.3V-5V) |
קלט RXI | 2.0V-3.8V |
פלט TXO | 3.3V |
צריכת זרם סרק | ~2mA-5mA (ללא כרטיס microSD), ~5mA-6mA (עם כרטיס microSD) |
כתיבה פעילה - משיכת זרם | ~20-23mA (עם כרטיס microSD) |
צריכת הזרם של ה-OpenLog היא כ-20mA עד 23mA בעת כתיבה לכרטיס microSD. בהתאם לגודל כרטיס ה-microSD וליצרן שלו, צריכת הזרם הפעילה יכולה להשתנות כאשר ה-OpenLog כותב לכרטיס הזיכרון. הגדלת קצב השידור תמשוך גם יותר זרם.
בקרים זעירים
ה-OpenLog פועל על גבי ATmega328 מובנה, הפועל בתדר של 16 מגה-הרץ הודות לגביש המובנה. על גבי ה-ATmega328 טעון טוען האתחול Optiboot, המאפשר ל-OpenLog להיות תואם להגדרות הלוח "Arduino Uno" ב-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לה — האקס הזהampהקובץ le מסביר כיצד לשלוט ב-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.h 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 בשם File בספרייה הנוכחית. תקן 8.3 fileשמות נתמכים.
למשלampלדוגמה, "87654321.123" מקובל, בעוד ש-"987654321.123" אינו מקובל.
• למשלampחדש file1.txt - לְצַרֵף File – הוספת טקסט לסוף Fileנתונים טוריים נקראים לאחר מכן מה-UART בזרם ומוסיפים אותם ל- fileזה לא מועבר דרך הטרמינל הטורי. אם File לא קיים כאשר פונקציה זו נקראת, ה- file תיווצר.
• למשלampהוסף חדשfile.csv - לִכתוֹב File OFFSET – כתוב טקסט אל File מהמיקום OFFSET בתוך ה- fileהטקסט נקרא מה-UART, שורה אחר שורה, ומועבר חזרה. כדי לצאת ממצב זה, שלח שורה ריקה.
• למשלample: כתוב קובץ logs.txt 516 - rm File – מחיקות File מהספרייה הנוכחית. תווים כלליים (Willcardcards) נתמכים.
• למשלampקובץ: rm README.txt - גוֹדֶל File – גודל הפלט של File בבתים.
• למשלampקובץ: גודל Log112.csv
• פלט: 11 - לִקְרוֹא File + START+ LENGTH TYPE – פלט את התוכן של File מתחיל מ-START וממשיך לאורך.
אם START מושמט, התוצאה כולה file מדווח. אם LENGTH מושמט, מדווח כל התוכן מנקודת ההתחלה. אם TYPE מושמט, ה-OpenLog ידווח כברירת מחדל ב-ASCII. ישנם שלושה סוגי פלט:
• ASCII = 1
• HEX = 2
• RAW = 3
ניתן להשמיט כמה ארגומנטים עוקבים. בדוק את הדוגמה הבאהamples.
דגלים בסיסיים של קריאה + השמטה:
• למשלample: קרא את הקובץ LOG00004.txt
• פלט: מד תאוצה X=12 Y=215 Z=317
קריאה מתחילת 0 עם אורך של 5:
• למשלample: קרא LOG00004.txt 0 5
• פלט: Accel
קריאה ממיקום 1 עם אורך של 5 ב-HEX:
• למשלample: קרא את LOG00004.txt 1 5 2
• פלט: 63 63 65 6C - קריאה ממיקום 0 עם אורך של 50 בקובץ RAW:
- • למשלample: קרא את LOG00137.txt 0 50 3
- • פלט: מבחן תווים מורחב של André–-þ
- חָתוּל File – לכתוב את התוכן של file בהקסדצימלי לצג הטורי עבור viewינג. זה לפעמים מועיל לראות ש-a file מקליט כראוי מבלי להוציא את כרטיס ה-SD ו view את file במחשב.
• למשלampקובץ: cat LOG00004.txt
• פלט: 00000000: 41 63 65 6c 3a 20 31
מניפולציה של ספריות
- ls – מפרט את כל התוכן של הספרייה הנוכחית. תווים כלליים נתמכים.
• למשלampלה: לס
• פלט: \src - ספריית משנה md – צור ספריית משנה בספרייה הנוכחית.
• למשלample: md Example_Sketches - ספריית משנה של cd – שינוי לספריית משנה.
• למשלample: cd שלום_עולם - cd .. – מעבר לספרייה נמוכה יותר בעץ. שימו לב שיש רווח בין 'cd' ל-'..'. זה מאפשר למנתח המחרוזות לראות את פקודת cd.
• למשלampלה: תקליטור .. - ספריית משנה rm – מוחקת ספריית משנה. הספרייה חייבת להיות ריקה כדי שפקודה זו תפעל.
• למשלampטמפרטורות rm - ספרייה rm -rf – מחיקת ספרייה וכל fileהכלול בתוכו.
• למשלampספריות 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 – משנה את מצב echo המערכת, ומאוחסן בזיכרון המערכת. STATE יכול להיות מופעל או כבוי. כאשר הוא מופעל, OpenLog יבצע הדהדה של נתונים סידוריים שהתקבלו בשורת הפקודה. כאשר הוא כבוי, המערכת לא קוראת בחזרה תווים שהתקבלו.
פֶּתֶק: במהלך רישום רגיל, ההד יכובה. דרישות משאבי המערכת להד של הנתונים שהתקבלו גבוהות מדי במהלך הרישום. - verbose STATE – משנה את מצב דיווח השגיאות המילולי. STATE יכול להיות מופעל או כבוי. פקודה זו מאוחסנת בזיכרון. על ידי כיבוי שגיאות מפורטות, OpenLog יגיב רק עם ! אם יש שגיאה ולא עם פקודה לא ידועה: COMMAND. התו ! קל יותר לניתוח עבור מערכות משובצות מאשר השגיאה המלאה. אם אתם משתמשים במסוף, השארת ה-verbose פעילה תאפשר לכם לראות הודעות שגיאה מלאות.
- באוד – פקודה זו תפתח תפריט מערכת המאפשר למשתמש להזין קצב באוד. כל קצב באוד בין 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.
שימו לב שאלו תווים רגילים גלויים (אין ערכים שאינם גלויים או בינאריים), וכל ערך מופרד באמצעות פסיק.
ההגדרות מוגדרות באופן הבא:
- באוד: קצב באוד של התקשורת. 9600bps הוא ברירת המחדל. ערכים מקובלים התואמים ל-Arduino IDE הם 2400, 4800, 9600, 19200, 38400, 57600 ו-115200. ניתן להשתמש בקצבי באוד אחרים, אך לא תוכלו לתקשר עם OpenLog דרך הצג הטורי של Arduino IDE.
- escape : ערך ASCII (בפורמט עשרוני) של תו ה-escape. 26 הוא CTRL+z והוא תו ברירת המחדל. 36 הוא $ והוא תו escape נפוץ.
- esc#: מספר תווי ה-escape הנדרשים. כברירת מחדל, הוא שלושה, לכן עליך ללחוץ על תו ה-escape שלוש פעמים כדי לעבור למצב פקודה. ערכים מקובלים הם בין 0 ל-254. הגדרת ערך זה ל-0 תבטל לחלוטין את בדיקת תווי ה-escape.
- מצב: מצב מערכת. OpenLog מתחיל במצב יומן חדש (0) כברירת מחדל. ערכים מקובלים הם 0 = יומן חדש, 1 = יומן רציף, 2 = מצב פקודה.
- פועל: מצב מפורט. הודעות שגיאה מורחבות (מפורטות) מופעלות כברירת מחדל. הגדרה של 1 מפעילה הודעות שגיאה מפורטות (כגון פקודה לא ידועה: remove !). הגדרה של 0 מבטלת שגיאות מפורטות אך תגיב עם ! אם יש שגיאה. כיבוי מצב מפורט שימושי אם אתה מנסה לטפל בשגיאות ממערכת משובצת.
- הד: מצב הד. במצב פקודה, תווים מושמעים בהדהד כברירת מחדל. הגדרה זו ל-0 מכבה את הד התווים. כיבוי אפשרות זו שימושי אם מטפלים בשגיאות ואינך רוצה שפקודות שנשלחו יועברו בהדהד חזרה ל-OpenLog.
- ignoreRX : עקיפת חירום. בדרך כלל, OpenLog יאפס בחירום כאשר פין ה-RX נשמט בזמן ההפעלה. הגדרה זו ל-1 תבטל את בדיקת פין ה-RX במהלך ההפעלה. זה יכול להיות מועיל עבור מערכות שישאירו את קו ה-RX נמוך מסיבות שונות. אם עקיפת החירום מושבתת, לא תוכלו לאלץ את היחידה לחזור ל-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 _.txt לא יעבוד.
השתמש ב-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. זמן הקלטה זה יכול להיות מושפע מ"סוג" הכרטיס ומכמות הנתונים שכבר מאוחסנת בו. הפתרון הוא להשתמש בקצב באוד נמוך יותר או להגדיל את משך הזמן בין התווים הנשלחים בקצב באוד גבוה יותר.
פרמט את כרטיס ה-MicroSD שלך
זכרו להשתמש בכרטיס עם מעט או ללא fileזה על זה. כרטיס microSD עם 3.1GB של ZIP fileל-s או קבצי MP3 יש זמן תגובה איטי יותר מאשר לכרטיס ריק.
אם לא פרמטת את כרטיס ה-microSD שלך במערכת הפעלה Windows, פרמט מחדש את כרטיס ה-microSD וצר קובץ DOS fileהמערכת בכרטיס ה-SD.
החלפת כרטיסי MicroSD
ישנם סוגים רבים ושונים של יצרני כרטיסים, כרטיסים עם תווית מחדש, גדלי כרטיסים וקטגוריות כרטיסים, וייתכן שלא כולם יעבדו כראוי. אנו משתמשים בדרך כלל בכרטיס microSD מסוג Class 8 בנפח 4GB, שעובד היטב בקצב של 9600bps. אם אתם זקוקים לקצבי באוד גבוהים יותר, או לשטח אחסון גדול יותר, ייתכן שתרצו לנסות כרטיסים מסוג Class 6 ומעלה.
הוסף עיכובים בין כתיבת תווים
על ידי הוספת עיכוב קטן בין פקודות Serial.print(), ניתן לתת ל-OpenLog הזדמנות לתעד את הפעולה הנוכחית שלה.
בַּלָם.
למשלampעל:
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
- ורניר פוטוגייט
צריכים עוד קצת השראה? צפו בכמה מהמדריכים הרלוונטיים האלה:
חיישן מפלס מים מרחוק של פוטון
למד כיצד לבנות חיישן מפלס מים מרוחק עבור מיכל אחסון מים וכיצד להפוך משאבה לאוטומטית על סמך הקריאות!
חיישן מפלס מים מרחוק של פוטון
למד כיצד לבנות חיישן מפלס מים מרוחק עבור מיכל אחסון מים וכיצד להפוך משאבה לאוטומטית על סמך הקריאות!
רישום נתונים לגיליונות אלקטרוניים של גוגל בעזרת טסל 2
פרויקט זה מכסה כיצד לרשום נתונים ב-Google Sheets בשתי דרכים: באמצעות IFTTT עם web חיבור או כונן USB ו-"sneakernet" בלעדיו.
גרף נתוני חיישן עם Python ו-Matplotlib
השתמש ב-matplotlib כדי ליצור גרף בזמן אמת של נתוני טמפרטורה שנאספו מחיישן TMP102 המחובר ל-Raspberry Pi.
אם יש לכם משוב על הדרכה, אנא בקרו בתגובות או צרו קשר עם צוות התמיכה הטכנית שלנו בכתובת תמיכה טכנית@sparkfun.com.
מסמכים / משאבים
![]() |
לוחות פיתוח SparkFun DEV-13712 [pdfמדריך למשתמש DEV-13712, DEV-11114, DEV-09873, CAB-12016, COM-13833, COM-13004, PRT-00115, PRT-08431, DEV-13712 לוחות פיתוח SparkFun, DEV-13712, לוחות פיתוח SparkFun, לוחות פיתוח, לוחות |