תחילת העבודה עם Arduino - סביבת פיתוח

פורום זה מכיל תרגום לעברית של מדריכים, דוגמאות קוד, פירוט שפת תכנות לכרטיסי Arduino וחומרים לימודיים אחרים מהאתר arduino.cc

תחילת העבודה עם Arduino - סביבת פיתוח

הודעהעל ידי Alex » ג' ספטמבר 09, 2014 2:20 pm

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

כתיבת תוכניות (sketches)
תוכניות הנכתבות לארדואינו נקראות Sketches. התוכניות (Sketches) נכתבות בעורך הטקסט של הסביבה. הן נשמרות עם סיומת INO. העורך כולל יכולות כמו העתקה/הדבקה (Copy/Paste), חיפוש והחלפת מחרוזות.
איזור ההודעות נותן חיווי על תהליכי שמירה או העלאת תוכניות וגם מציג שגיאות אם יש.
לוח הבקרה (console) מציג הודעות טקסט של סביבת הפיתוח, כולל פירוט שגיאות הדור (compilation) ומידע נוסף.
בפינה הימנית התחתונה מוצגים סוג כרטיס הפיתוח והתקן תקשורת טורית שנבחרו.
סרגל הכלים מאפשר לכם לבדוק ולהעלות את התוכניות, לייצר, לפתוח ולשמור תוכניות ולפתוח את חלון תקשורת טורית (Serial monitor).

שימו לב:
סביבת פיתוח לפני גרסה 1.0 שמרה את התוכניות עם סיומת PDE. תוכלו לפתוח גם את הקבצים האלה עם גרסאות החדשות של הסביבה, אבל כאשר תשמרו את התוכניות, תתבקשו לשמור אותם עם סיומת INO.

סרגל הכלים של סביבת פיתוח Arduino כולל את הכפתורים הבאים:
תמונה
Verify - בודק את התוכנית שלכם לטעויות

תמונה
Upload - מהדר (compile) את התוכנית ומעלה אותה לכרטיס ה-Arduino. ראו סעיף העלאת תוכניות בהמשך העמוד לפרטים נוספים.
לידיעתכם:
אם אתם משתמשים בצורב חיצוני, תוכלו להחזיק את כפתור ה-"Shift" במקלדת כשאתם לוחצים על כפתור ה-Upload. הכיתוב ליד הכפתורים ישתנה ל-Upload using Programmer.

תמונה
New - מייצר תוכנית (sketch) חדשה

תמונה
Open - מציג רשימה של התוכניות שלכם. לחיצה על אחד מהם יפתח אותו בעורך.
שימו לב:
עקב ביעה בגרסאות Java שונות, רשימה זו לפעמים לא נגללת (scroll), כך שאי אפשר להגיע לתוכניות (sketches) בתחתית הרשימה. במקרה זה השתמשו בתפריט File > Sketchbook במקום סרגל הכלים.

תמונה
Save - שומר את התוכנית (sketch) שלכם

תמונה
Serial Monitor - פותח את חלון תקשורת טורית (Serial monitor). ראו פרטים נוספים בהמשך העמוד.


פקודות נוספות נמצאות בתפריטים של התוכנה: File, Edit, Sketch, Tools, Help. התפריטים משתנים בהתאם לעבודה שלכם, מה שאומר שרק האפשרויות הרלוונטיות לעבודה שאתם מבצעים כרגע יוצגו בתפריטים.

תפריט Edit
  • Copy for Forum - מעתיק את תוכן התוכנית שלכם כך שיתאים לפרסום בפורום, כולל הדגשי צבעים של הקוד
  • Copy as HTML - מעתיק את תוכן התוכנית שלכם בפורמט HTML שיתאים לפרסום בדפי אינטרנט שאתם בונים
תפריט Sketch
  • Verify/Compile - בודק שגיאות בתוכנית (sketch) שלכם
  • Show Sketch Folder - פותח את הספריה המכילה את התוכנית (sketch)
  • Add File... - מוסיף קובץ קוד נוסף לתוכנית (sketch). הקובץ יועתק לספרית התוכנית. הקובץ שנוסף יופיע בלשונית חדשה בסביבת הפיתוח. אפשר למחוק את הקבצים מהפרוייקט בעזרת תפריט בצידו הימני של הלשוניות עם שמות הקבצים.
  • Import Library - מוסיף ספריה לתוכנית (sketch) שלכם ע"י הוספה של הגדרת include# בתחילת התוכנית. לפרטים נוספים ראו סעיף ספריות בהמשך העמוד. בנוסף, החל מגרסה 1.0.5 של סביבת הפיתוח אפשר לייבא ספריות מתוך קובץ ZIP.
תפריט Tools
  • Auto Format - מסדר את קוד התוכנית בצורה יפה. למשל מזיז את תחילת כל שורה כך שהסוגריים מסולסלים (הפותח והסוגר) יהיו מיושרות לאותו קו וגם ההגדרות בתוך הסוגריים יוזז כדי שיראה שהוא נמצא בתוכם
  • Archive Sketch - יצור ארכיון של התוכנית (sketch) בקובץ ZIP. הקובץ ישמר באותה הספריה בה נמצאת התוכנית
  • Board - בחירת סוג הכרטיס בו אתם משתמשים. ראו סעיף כרטיסי פיתוח בהמשך העמוד לפרטים נוספים.
  • Serial Port - תפריט זה כולל את הרשימה המלאה של התקני תקשורת טורית (אמיתיים ווירטואליים). הרשימה מתעדכנת כל פעם שתפתחו את תפריט ה-Tools מחדש
  • Programmer - בחירה של צורב חיצוני כשתרצו לצרוב כרטיס או שבב שלא דרך חיבור ה-USB. בדרך כלל לא תצטרכו את האפשרות הזו, אלא אם תרצו לצרוב תוכנת אתחול Bootloader על מיקרובקר חדש (TODO קישור)
  • Burn Bootloader - מאפשר לכם לצרוב תוכנת אתחול (Bootloader) על מיקרובקר שעל כרטיסי ה-Arduino. אפשרות זו לא נחוצה לעבודה הרגילה עם הכרטיסים, אבל שימושית אם רכשתם מיקרובקר ATmega חדש שבדרך כלל מגיע ללא Bootloader. שימו לב שבחרתם את הכרטיס הנכון בתפריט Boards לפני שאתם צורבים את ה-Bootloader

רשימת התוכניות שלכם (Sketchbook)
סביבת הפיתוח Arduino משתמשת בגישת ה-Sketchbook, מקום סטנדרטי בו נשמרות כל התוכניות (sketches) שלכם. אפשר לפתוח את התוכניות שברשימה מתוך תפריט File > Sketchbook או בעזרת כפתור Open בסרגל הכלים.
בפעם הראשונה שתשתמשו בסביבת הפיתוח Arduino, תיווצר ספריה ל-Sketchbook בצורה אוטומטית. תוכלו לשנות את מיקום הספריה בתפריט File < Preferences.
החל מגרסה 1.0 של סביבת הפיתוח הקבצים נשמרים עם סיומת INO. גרסאות קודמות שמרו את הקבצים עם סיומת PDE. עדיין תוכלו לפתוח את קבצי PDE גם בגרסאות החדשות של הסביבה, התוכנה תשנה להם את הסיומת ל-INO בצורה אוטומטית.

לשוניות, ריבוי קבצים והדור (Compilation)
סביבת הפיתוח מאפשרת לנהל מספר קבצים ששייכים לתוכנית שלכם, כולם יופיעו בלשונית (Tab) שונה בעורך. קבצים אלה יכולים להיות תוכניות Arduino שיופיעו ללא סיומת, קבצי C שיופיעו עם סיומת c., קבצי ++C שיופיעו עם סיומת cpp. או קבצי הגדרות (header files) שיופיעו עם סיומת h.

העלאת תוכניות (Uploading)
לפני העלאת התוכנית (sketch), אתם צריכים לבחור את סוג הכרטיס שלכם בתפריט Tools > Board ואת התקן התקשורת בתפריט Tools > Serial Port. במחשבי Mac ההתקן התקשורת נראה משהו כמו /dev/tty.usbmodem241 (לכרטיסי Uno ו-Mega2560) או /dev/tty.usbserial-1B1 (לכרטיסי Duemilanove או כרטיסים ישנים אחרים) או /dev/tty.USA19QW1b1P1.1 (לכרטיסים המחוברים דרך מתאם USB לתקשורת טורית). במערכות הפעלה חלונות (Windows) זה יהיה כנראה COM1 או COM2 (לכרטיסים עם חיבור טורי) או COM4, COM5, COM7 והלאה (לכרטיסים המתחברים דרך USB) - כדי לגלות את המספר, תוכלו לחפש אותו במחלקת התקנים בחלון מנהל ההתקנים (Device Manager). בלינוקס זה יהיה /dev/ttyUSB0, /dev/ttyUSB1 או משהו דומה לזה.
אחרי שבחרתם את סוג הכרטיס ואת התקן התקשורת, לחצו על כפתור Upload בסרגל הכלים או השתמשו בתפריט File > Upload. כרטיסי Arduino החדשים יאתחלו את עצמם והעלאת התוכנית תתחיל בצורה אוטומטית. בכרטיסים ישנים (לפני Diecimila) שלא מסוגלים לאתחל את עצמם, תצטרכו ללחוץ על כפתור ה-Reset לפני שתתחילו את העלאה.
על רוב הכרטיסים תראו את מנורות לד RX ו-TX מהבהבים בזמן שהתוכניות עוברת לכרטיס. סביבת הפיתוח תציג הודעה על סיום ההעלאה או תודיע על שגיאה.
כשאתם מעלים את התוכנית (sketch), אתם משתמשים בתוכנת האתחול (bootloader) של Arduino, תוכנה קטנה המורצת על המיקרובקר לאחר כל אתחול. ה-Bootloader מאפשר להעלות את התוכניות שלכם ללא שימוש בצורב או חומרה נוספת. ה-Bootloader פועל במשך כמה שניות לאחר כל Reset ולאחר מכן הוא מריץ את ה-sketch העדכני ביותר על המיקרובקר. כאשר תוכנת האתחול (bootloader) מתחילה לעבוד, היא תהבהב במנורת לד המותקנת בכרטיס ומחוברת לקו ה-13.

ספריות
ספריות מספקות תכונות נוספות שאפשר להשתמש בהם בתוכניות (sketch), למשל עבודה עם רכיבי חומרה שונים או עיבוד נתונים. כדי להשתמש בספריה בתוכנית שלכם, בחרו אותה מתפריט Sketch > Import Library. פעולה זו תוסיף הגדרת include# אחת או יותר בתחילת התוכנית ותהדר (compile) את הספריה יחד עם התוכנית שלכם. מכיוון שהספריות מועלות לכרטיס יחד עם התוכנית שלכם, הם מגדילים את כמות הזכרון הנדרשת להרצה. אם התוכנית לא צריכה יותר את הספריה, פשוט מחקו את הגדרת ה-include# מהתוכנית.
תוכלו למצאו את רשימת הספריות בעמוד פירוט ספריות לסביבת Arduino. חלק מהספריות כלולות בסביבת הפיתוח, את האחרות אפשר להוריד ממקומות שונים באינטרנט. החל מגרסה 1.0.5 של סביבת הפיתוח תוכלו לייבא את הספריות מתוך קובץ ZIP ולהשתמש בהם בתוכנית (sketch).
ראו מדריך להתקנת ספריות נוספות.
לכתיבת ספריות חדשות ראות מדריך כתיבת ספריות (TODO קישור).

חומרה של צד שלישי (Third-Party Hardware)
תמיכה לחומרה מצד שלישי (כרטיסים שלא מצוות ה-Arduino) אפשר להוסיף לתוך ספריית ה-hardware במקום בו מותקנת סביבת הפיתוח. מערכות המותקנות שם יכולות לכלול הגדרת כרטיסים (שיופיעו בתפריט הכרטיסים), ספריות, תוכניות אתחול (bootloaders) והגדרות לצורב. כדי להתקין מערכות נוספות, כנסו לספריית ה-hardware, תיצרו שם תת-ספריה חדשה ותעתיקו לתת-ספריה זו את התוכן המסופק עם המערכת החדשה (יש לפתוח את תוכן קובץ ה-ZIP אם התוכן מקובץ). אל תתנו שם של arduino לתת-ספריה החדשה, אתם עלולים למחוק את הגדרות הכרטיסים שמגיעים עם סביבת הפיתוח. כדי להוריד את התמיכה במערכת שהתקנתם, פשוט תמחקו את תת-הספריה המכילה את התוכן של המערכת.
לפרטים על יצירת חבילות לחומרת צד שלישי, ראו הסבר על פלטפורמות באתר של מפתחי Arduino ב-Google Code.

חלון תקשורת טורית (Serial monitor)
חלון תקשורת טורית (Serial monitor) מציג את המידע המתקבל מכרטיס Arduino (המחובר דרך USB או תקשורת טורית). כדי לשלוח נתונים לכרטיס, הקלידו אותם במקום המתאים ולחצו על כפתור Send או כפתור Enter במקלדת. בחרו את מהירות התקשורת () בתפריט הנפתח כדי להתאים להגדרת המהירות שסיפקתם לפינקציה Serial.begin בתוכנית שלכם. שימו לב כי על חלק ממחשבי Mac או לינוקס הכרטיס יכול לעבור אתחול (התוכנית תתחיל לרוץ מחדש) כאשר אתם פותחים את חלון התקשורת.
אתם יכולים גם לתקשר עם הארדואינו מתוך Processing, Flash, MaxMSP וכו', ראו עמוד Interfacing Arduino לפרטים נוספים.

הגדרות (Preferences)
חלק מההגדרות אפשר לשנות בחלון ההגדרות של סביבת הפיתוח שאפשר למצוא בתפריט Arduino במחשבי Mac או תפריט File במחשבי Windows או Linux. שאר ההגדרות אפשר למצוא בקובץ הגדרות שמיקומו מוצג בחלון ההגדרות.

תמיכה בשפות
תמונה
החל מגרסה 1.0.1 סביבת פיתוח Arduino תורגמה ליותר מ-30 שפות. כברירת מחדל, השפה נבחרת לפי הגדרות של מערכת הפעלה. (הערה: במערכות הפעלה חלונות ולינוקס השפה נבחרת לפי הגדרות המיקום שמשנות את הצגת המטבעות ותאריכים ולא לפי השפה בה מוצגת מערכת ההפעלה כולה).
אם תרצו לשנות את השפה בה מוצגת סביבת הפיתוח, תריצו את התוכנה ופתחו את חלון ההגדרות (Preferences). בחרו את השפה המועדפת מתוך הרשימה הנפתחת בשדה Editor Language ולחצו על OK. הפעילו את תוכנת סביבת הפיתוח מחדש כדי להתחיל להשתמש בשפה החדשה. אם השפה שבחרתם לא נתמכת, המערכת תשתמש באנגלית כברירת מחדל.
תוכלו להחזיר את הגדרת השפה בחזרה לבחירה לפי שפת מערכת הפעלה ע"י בחירת אפשרות System Default ברשימה הנפתחת בשדה Editor Language. שינוי הגדרה זו יופעל רק אחרי הרצה מחודשת את התוכנה. באופן דומה, אם אתם משנים את הגדרות השפה במערכת הפעלה, צריך להפעיל את תוכנת ה-Arduino מחדש כדי להשתמש בבחירה החדשה.

כרטיסי פיתוח
לבחירת כרטיס בסביבת הפיתוח יש כמה השלכות, זה משנה את ההגדרות להדור (compilation) והעלאת תוכניות (uploading) (למשל מהירות המיקרובקר, קצב תקשורת) ומשנה הגדרות הקובץ ונתיכים (fuses) לצריבת תוכנת אתחול (bootloader). הגדרות של חלק מהכרטיסים שונים רק בנושא ה-bootloader, כך שגם אם אתם מצליחים להעלות את התוכנית (sketch) שלכם בהצלחה עם בחירת כרטיס מסוימת, תרצו בכל זאת לוודא שהבחירה נכונה לפני שצורבים את ה-bootloader.

רשימת הכרטיסים הנתמכים:
  • Arduino Uno - מיקרובקר ATmega328, רץ בתדר של 16MHz, אתחול אוטומטי, משתמש ב-optiboot bootloader (מהירות תקשורת 115200bps, 0.5KByte)
  • Arduino Duemilanove w/ ATmega328 - מיקרובקר ATmega328, רץ בתדר של 16MHz, אתחול אוטומטי
  • Arduino Diecimila or Duemilanove w/ ATmega168 - מיקרובקר ATmega168, רץ בתדר של 16MHz, אתחול אוטומטי. ההדור והעלאת תוכניות זהה לכרטיסי Arduino NG או כרטיסים ישנים עם מיקרובקר ATmega168, אבל תוכנת אתחול (bootloader) מחכה פחות זמן לתחילת העלאה ונורית לד המחוברת לקו 13 מהבהבת רק פעם אחת בתחילת הרצה של תוכנת האתחול
  • Arduino Nano w/ ATmega328 - מיקרובקר ATmega328, רץ בתדר של 16MHz, אתחול אוטומטי. לכרטיס יש 8 כניסות אנלוגיות
  • Arduino Nano w/ ATmega168 - מיקרובקר ATmega168, רץ בתדר של 16MHz, אתחול אוטומטי. ההדור והעלאת תוכניות זהה לכרטיסי Arduino NG או כרטיסים ישנים עם מיקרובקר ATmega168, אבל תוכנת אתחול (bootloader) מחכה פחות זמן לתחילת העלאה ונורית לד המחוברת לקו 13 מהבהבת רק פעם אחת בתחילת הרצה של תוכנת האתחול. לכרטיס יש 8 כניסות אנלוגיות
  • Arduino Mega 2560 or Mega ADK - מיקרובקר ATmega2560, רץ בתדר של 16MHz, אתחול אוטומטי, משתמש בתוכנת אתחול (bootloader) מגרסת stk500v2
  • Arduino Mega ATmega1280 - מיקרובקר ATmega1280, רץ בתדר של 16MHz, אתחול אוטומטי
  • Arduino Leonardo - מיקרובקר ATmega32u4, רץ בתדר של 16MHz, אתחול אוטומטי
  • Arduino Mini w/ ATmega328 - מיקרובקר ATmega328, רץ בתדר של 16MHz, אתחול אוטומטי, משתמש ב-optiboot bootloader (מהירות תקשורת 115200bps, 0.5KByte). לכרטיס יש 8 כניסות אנלוגיות
  • Arduino Mini w/ ATmega168 - זהה לכרטיסי Arduino NG או כרטיסים ישנים עם מיקרובקר ATmega168, ללא אתחול אוטומטי
  • Arduino Ethernet - זהה ל-Arduino UNO עם מגן Ethernet עליו
  • Arduino Fio - מיקרובקר ATmega328, רץ בתדר של 8MHz, אתחול אוטומטי. זהה ל-Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328
  • Arduino BT w/ ATmega328 - מיקרובקר ATmega328, רץ בתדר של 16MHz. תוכנת האתחול (bootloader) תופסת 4K ומאתחלת את רכיב ה-BlueTooth המורכב על הכרטיס
  • Arduino BT w/ ATmega168 - מיקרובקר ATmega168, רץ בתדר של 16MHz. תוכנת האתחול (bootloader) תופסת 4K ומאתחלת את רכיב ה-BlueTooth המורכב על הכרטיס
  • LilyPad Arduino w/ ATmega328 - מיקרובקר ATmega328, רץ בתדר של 8MHz, עובד ב-3.3V, אתחול אוטומטי. זהה ל-Arduino Pro or Pro Mini (3.3V, 8 MHz) w/
  • LilyPad Arduino w/ ATmega168 - מיקרובקר ATmega328, רץ בתדר של 8MHz. ההדור והעלאת תוכניות זהה לכרטיסי Arduino Pro or Pro Mini (8 MHz) w/ ATmega168, אבל תוכנת אתחול (bootloader) מחכה יותר זמן לתחילת העלאה ונורית לד המחוברת לקו 13 מהבהבת 3 פעמים בתחילת הרצה של תוכנת האתחול. כל זה מכיוון שהגרסה הראשונית של הכרטיס לא תמכה באתחול אוטומטי. הכרטיס גם לא כלל אפשרות לחבר שעון חיצוני למיקרובקר, כך שה-bootloader תמיד היה צורב את הנתיכים של מיקרובקר לעבוד עם שעון פנימי של 8MHz. אם יש לכם כרטיסי LilyPad חדשים יותר (עם חיבור של 6 פינים לצריבה), תרצו לבחור בכרטיס Arduino Pro or Pro Mini (8 MHz) w/ ATmega168 לפני שאתם צורבים את ה-bootloader
  • Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328 - מיקרובקר ATmega328, רץ בתדר של 16MHz, אתחול אוטומטי. זהה ל-Arduino Duemilanove או Nano w/ ATmega328
  • Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega168 - מיקרובקר ATmega168, רץ בתדר של 16MHz, אתחול אוטומטי. זהה ל-Arduino Diecimila, Duemilanove או Nano w/ ATmega168
  • Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328 - מיקרובקר ATmega328, רץ בתדר של 8MHz, עובד ב-3.3V, אתחול אוטומטי. זהה ל-LilyPad Arduino w/ ATmega328
  • Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168 - מיקרובקר ATmega328, רץ בתדר של 8MHz, עובד ב-3.3V, אתחול אוטומטי
  • Arduino NG or older w/ ATmega168 - מיקרובקר ATmega168, רץ בתדר של 16MHz, ללא אתחול אוטומטי. ההדור והעלאת תוכניות זהה לכרטיסי Arduino Diecimila or Duemilanove w/ ATmega168, אבל תוכנת אתחול (bootloader) מחכה יותר זמן לתחילת העלאה ונורית לד המחוברת לקו 13 מהבהבת 3 פעמים בתחילת הרצה של תוכנת האתחול.
  • Arduino NG or older w/ ATmega8 - מיקרובקר ATmega8, רץ בתדר של 16MHz, ללא אתחול אוטומטי
להסבר על תמיכה בכרטיסים נוספים, ראו סעיף חומרה של צד שלישי (Third-Party Hardware) למעלה בעמוד זה.


עמוד זה הוא תרגום של Arduino Development Environment לפי רישיון Creative Commons Attribution-ShareAlike 3.0.
www.4project.co.il
כל הרכיבים לפרוייקט שלכם
סמל אישי של המשתמש
Alex
מנהל האתר
 
הודעות: 7459
הצטרף: ה' ינואר 28, 2010 8:27 pm

חזור אל תרגום מדריכים מהאתר arduino.cc

Jump box

מי מחובר

משתמשים הגולשים בפורום זה: CCBot [Bot], Yahoo [Bot]