מתכני הטמפרטורה הקטנים והלא יומרניים שלי

היי-טק ציוד אלקטרוני מחשב ואינטרנט. שימוש טוב יותר של חשמל, לעזור בעבודה ומפרטים, בחירת ציוד. גופים ותוכניות מצגות. גלים אלקטרומגנטיים וזיהום.
אישי de l'Utilisateur
Forhorse
מומחה Econologue
מומחה Econologue
הודעות: 2491
כתובת: 27/10/09, 08:19
מיקום: Perche Ornais
x 364




נָקוּב Forhorse » 04/04/11, 16:21

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


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

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

כאן תמצאו ארכיון מיקוד המכיל שני קבצים:
http://www.stable-boy.net/uploads/LOG18B20.zip
קובץ LOG18B20.hex הוא התוכנית הידור שניתן להבהב ישירות ב- PIC
קובץ LOG18B20.bas הוא הקובץ המכיל את מקורות התוכנית, שנכתב ב- BASIC עבור המהדר Proton +
ניתן לקרוא אותו עם כל עורך טקסטים (פנקס רשימות למשל) רק כדי לקבל מושג מה התוכנית עושה, אך כדי להשתמש בה באמת תצטרך המהדר Proton +, התוסף של מנהל הספריה ו ספריית SD_File_System (הכל זמין באתר של המו"ל: http://www.protonbasic.co.uk/)
המהדר של פרוטון + נמכר בדרך כלל בסביבות 230 אירו, לכן למותר לציין כי אין מדובר בתוכנה שרק קונים כדי להכין מקליט טמפרטורה! : גביני:
מצד שני אני ממליץ בחום לכל אלה שרוצים להתחיל "ברצינות" במימוש העריכה וכתיבת התוכניות עבור PIC ושלא תהיה להם שום זיקה מיוחדת לשפה אחרת (מי שמכיר את C יפנה למשל למהדרים אחרים)

באשר לדאטלוגוגר שלי באופן קונקרטי יותר הנה כמה הסברים:
לב ההרכבה הוא אפוא PIC18F258 בו התוכנית שניתנה לעיל מתרחשת.
PGD, PGC, GND, VDD ו- VPP הם ממשק ה- "ICSP" המשמש לתכנות או לתכנות מחדש את ה- PIC ישירות במעגל, זה לא חיוני אלא פשוט יותר פרקטי. כדי להיות מותאם בהתאם למתכנת שלך (אני משתמש ב- PicKit2)
זה חייב להיות משויך קוורץ או מהוד קרמי במהירות 12Mhz

התצוגה (חיונית בכדי שתוכל להגדיר את השעה) היא מהסוג האלפנומרי עם 2 שורות של 20 תווים עם הבקר הקלאסי HD44780 או שווה ערך (KS0066 ...)

ה- DS18B20 הוא חיישן טמפרטורה באוטובוס "1 חוט", רכיב מסוג זה מכויל במפעל ולכן אינו מצריך התאמה כלשהי בכדי לספק טמפרטורה נכונה.
טווח המדידה נע בין -55 מעלות צלזיוס ל- 125 מעלות צלזיוס (הנתמך באופן מלא על ידי ההרכבה שלי)

ה- DS1307 הוא שעון בזמן אמת (RTC) באוטובוס I2C המשמש לספירת השעה והתאריך גם כאשר ההרכבה אינה מופעלת.
זה חייב להיות משויך עם קוורץ "שעון" 32.768kHz וסוללת ליתיום 3V (סוג CR2012)
מודל זה משלב NVRAM שאינו משמש במכלול זה, וכך ניתן להחליף אותו בשווה ערך (M41T00 למשל)

הרגולטור LM3480 (VR1 בתרשים) הוא רגולטור "זרוק נמוך" של 3.3 וולט. הוא הופך את 5 וולט של שאר המכלול ל -3.3 וולט החיוני להפעלת כרטיס ה- SD (אספקתו ישירות עם 5 וולט תשמיד אותו מיד) כל שווה ערך מתאים, זה לא קריטי (אני מציע את TPS73033 אבל יש הרבה אחרים)
R1, R2, R3, R4, R5, R6 ו- R7 מהווים "מתרגם רמה" בין ה- PIC ב -5 וולט לכרטיס ה- SD ב -3.3 וולט.
ישנם רכיבים ספציפיים לכך, אך גשר התנגדות עובד גם טוב מאוד.
תשומת לב לחיווט כרטיס ה- SD, רואים את צד החיבור, המחבר בחלקו העליון, הסיכה השמאלית ביותר (הצד המשופף) היא לא ה -1 אלא ה 9, הסיכה 1 היא רק השנייה משמאל ( היסטוריה של תאימות לאחור עם MMC)
ניתן לקנות את התמיכה בכרטיס SD בקלות (לדוגמה: התייחסות 685-0779 אצל rs- יחידים) אך ניתן לשחזר אותה גם במכשיר HS (זה שאני משתמש בבדיקות שלי מגיע מקדמת האוטומטית- רדיו בצד הדרך)

S1 ו- S2 הם שני לחצני לחיצה המשמשים להתאמת השעה והתאריך, או כדי להתחיל / להפסיק את ההקלטה.
הנורית מציינת שההקלטה מתבצעת ואסור להסיר את כרטיס ה- SD.

ההרכבה מופעלת על ידי 5V, אנו יכולים "למחזר" מטען לטלפון נייד למשל, מטענים רבים הם כעת "USB" רגילים ולכן מספקים 5V
הצריכה היא סביב 20mA, שהוא נמוך יחסית, אך עדיין גדול מכדי לפעול על סוללה במשך יותר מכמה עשרות שעות.
במצב עצמאי ניתן לקחת בחשבון מצבר קטן ופאנל סולארי.
בכדי לספק אותו ממתח אחר, מספיק רגולטור LM7805 פשוט.

באשר לתפקוד האסיפה כעת:
כאשר הכוח מופעל, השעה נקראת ב- RTC, אם זה ההפעלה הראשונה או אם לא הייתה סוללת גיבוי, תפריט להגדרת השעה והתאריך פוסטר.
אם קיים כרטיס SD, נוצר קובץ הקלטה בשם LOGFMMDD.csv (כאשר MM מייצג את החודש ו- DD מייצג את התאריך) וההקלטה מתחילה מייד ללא התערבות.
אחרת מוצגת הודעה שמזמינה להכניס כרטיס.
הנורית נדלקת; מה שמעיד כי אין להסיר את הכרטיס.
על המסך השעה והתאריך הנוכחיים מוצגים בשורה העליונה ואילו בשורה התחתונה מצוין הטמפרטורה ואנימציה המציינת את ההקלטה.

לסיום ההקלטה, להסרת הכרטיס או לכיבוי העריכה; עליך ללחוץ על כפתור "+" (S1 בתרשים)
לאחר מכן כיבוי הנורית, ובשורה השנייה מוצג "קובץ סגור" למשך מספר שניות.
ניתן לחדש את ההקלטה על ידי לחיצה על "+" שוב
אם תסיר את הכרטיס מבלי להפסיק את ההקלטה, הקובץ עשוי להיות פגום (במיוחד הערך האחרון) ולכן הוא לא קריא.
זה לא שיטתי אבל זה סיכון (גחמות ה- IT ...)
הפסק את ההקלטה, הסר את הכרטיס, קרא אותו באמצעות מחשב אישי, החזיר אותו והתחל להקליט שוב ​​אפשרי אך אינו נתמך.
מניפולציה זו עלולה לגרום לתוכנית "לקרוס" ואם היא עובדת, לפעמים ייקח מספר דקות לתוכנית לחדש את הכתיבה לכרטיס.
באופן כללי, לפני הסרת כרטיס זיכרון או החלפתו, עדיף לכבות את המונטאז 'כדי להפעיל מחדש את רצף האתחול בכל פעם שמכניסים כרטיס.

הטמפרטורה נרכשת לכל 750 שניות לפחות, כלומר יותר משנייה, אך המערכת לוקחת בחשבון מדידה אחת בשנייה.
לאחר מכן הוא ממוצע מעל דקה (כלומר 1 מדידות) ושומר אותו בכרטיס עם התאריך והשעה בפורמט הבא
"HH: MM: SS; XX, X"
עם רשומה אחת בכל שורה
בחצות הקובץ נסגר ונשמר וקובץ חדש נוצר אוטומטית עם התאריך החדש. ההקלטה נמשכת אוטומטית עד שהכרטיס מלא.
לכן המערכת מבצעת מקסימום 1440 הרשמות ליום, הקובץ הוא 23Kb ליום (כלומר 161Kb לשבוע 713Kb לחודש ו 8.3Mb לשנה ... כרטיס 1 ג'יגה-בייט יכול אפוא להקליט תיאורטית במשך 116 שנים)

הקובץ (.csv) יכול להיפתח ישירות באקסל ותוכלו בלחיצה בודדת לבצע עקומה מהנתונים שמישים ישירות.

כדי לקבוע את השעה, פשוט לחץ על כפתור "הגדר". במהלך כל הליך הגדרת הזמן, הקלטת נתונים אינה מתבצעת (גם אם נורית הנורית דולקת)
הסמן מהבהב על הערך שמשתנה. אנחנו מתחילים עם השנה, ואז החודש, ואז התאריך, ואז השעה לסיום בדקות. כפתור ה "+" משמש להגדלת הערך, לאמת ולעבור לשנה הבאה עם "הגדר"
יש לקבוע את הדקות דקה יותר משעון הייחוס. לאחר אימות הדקות על ידי סט, התצוגה מציינת "'הגדר' לאימות". אנו מחכים ששעון ההתייחסות יעמוד על 59 שניות ותוקף, ואז השעונים מסונכרנים באופן מושלם.

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

זיכרון ה- PIC רחוק מלהיות רווי, 32% מה- RAM ו- 66% מזיכרון התוכנית נשארים זמינים, מה שמותיר מקום רב לשיפור מקליט זה: ניהול מספר בדיקות או סוגים אחרים של חיישנים, חישוב מורכב יותר על מדידות וכו '.

מצידי אני מפסיק שם את פיתוח המכשיר הזה (כרגע) אבל יכולתי להוסיף פונקציות שהתבקשו עבור מישהו שהיה מבצע את ההרכבה הזו.
אני יכול גם, על פי בקשה, לערוך את הקובץ עבור PIC של הפניה אחרת שתואם את הפרויקט הזה (18F258 אינו חובה)

טוב, אולי בקרוב לפריצות אחרות

: גביני:
0 x

 


  • נושאים דומים
    תגובות
    צפיות
    ההודעה אחרונה

חזרה ל "חשמל, אלקטרוניקה ו- IT היי-טק, אינטרנט, DIY, תאורה, חומרים חדשים"

מי מחובר?

משתמשים הגולשים זה forum : אין משתמשים רשומים ואורחים 138