סדנאת ארדואינו (לאנשי תוכנה )

32
פפפפ: פפפ פפפפ ווווו ווווווווווווו ווווו( ו)

Upload: thaddeus-lowery

Post on 02-Jan-2016

82 views

Category:

Documents


0 download

DESCRIPTION

סדנאת ארדואינו (לאנשי תוכנה  ). מרצה: גיא ברשפ. רגע לפני-מי שעוד שלא מכיר. בימי חמישי- הרצאות/סדנאות העשרה בתחומים כלליים וטכנולוגיים, כולכם מוזמנים לגראג' לשמוע וליזום שת"פים. מהרצאות העבר: שרשראות מרקוב ושימושים בסיסמאות פרו-אקטיביות NEO 4J –דטהבייס גראפי ( NOSQL ) Bitcoin - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: סדנאת ארדואינו  (לאנשי תוכנה   )

ברשפ: א י ג מרצה

ארדואינו סדנאתתוכנה) (לאנשי

Page 2: סדנאת ארדואינו  (לאנשי תוכנה   )

... - מכיר שלא שעוד מי לפני רגע

, / - וטכנולוגיים כלליים בתחומים העשרה סדנאות הרצאות חמישי בימי. " ' פים שת וליזום לשמוע לגראג מוזמנים כולכם

: העבר מהרצאות- אקטיביות פרו בסיסמאות ושימושים מרקוב שרשראותNEO 4J ( – גראפי (NOSQLדטהבייסBitcoinSynthetic terrainPhone OS - ו חישובית SVMלמידהVLSI Design'ועוד : העתיד ,ECC,Natural language proccessingמהרצאות: הראשונה ובפעם

סדנאתHands ON!

Page 3: סדנאת ארדואינו  (לאנשי תוכנה   )

! - מתחילים הסדנא עקרונות

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

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

. חדשים דברים , / : משימה עבור תוכנה לחומרה אחריות חלוקת לעבודה המלצה

. פעולה ושיתוף. המשימות בסיום הדדית ועזרה התלהבות

Page 4: סדנאת ארדואינו  (לאנשי תוכנה   )

? נתרגל ומה נדבר מה

, , , עם ) היכרות שימושים מבנה החומרות סוגי סקירה ארדואינוהציוד(

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

סיסמאות שהבאתם הרכיבים עם פרוייקט לבניית נסיון " יורה " רואה .open-sourceהדגמת

Page 5: סדנאת ארדואינו  (לאנשי תוכנה   )

- בקרים המיקרו עולם על רקע קצת

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

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

( - , ויציאות כניסות רכיבי גם בקרים במיקרו נמצא כך (, I/Oולצורךול לבקרה .תקשורתהמשמשים החיצוני  העולם עם

/ חשמלי- אלקטרוני אלמנט המכיל מוצר בכל כמעט מצויים בקרים מיקרו  כגון, רכב-כלשהו ו, כלי ומשרדיות ביתיות .צעצועיםמכונות

- כ בקר במיקרו משולב השימוש , מעגל רכיבים  מספר במקום בודד , - ובקרי ) זכרונות מעבד מיקרו בגודל(, I/Oנפרדים להקטין מאפשר

. מוצרים של היצור ועלות. ב אליהם לתכנת שניתן בקרים מיקרו '..NET , pythonקיימים ועוד

Page 6: סדנאת ארדואינו  (לאנשי תוכנה   )

ארדואינו- סקירה

א�ינו�� דו ר ( Arduinoמאיטלקית ) א�(       - יחיד  מודפס מעגל בעל בקר מיקרו Single Boardהוא

MicroController(    משולבת(, פיתוח סביבת ( IDEעם , פתוח  קוד וזולה ברישיון נוחה סביבה ליצור מטרתה אשר

רכיבי עם תוכנה המשלבים פרויקטים לפיתוחאלקטרוניקה.

Page 7: סדנאת ארדואינו  (לאנשי תוכנה   )

לפרוייקטים דוגמאות : יש) למי ?(40$או לבזבז

Soon….YOUR ‘S HACKS!

Page 8: סדנאת ארדואינו  (לאנשי תוכנה   )

ארדואינו סוגי

mega2560 uno /Duemilanove miniליליפאד

. ' , יציאות מס גודל עם משחק אפשרויותשהארדואינו – סוגים, open hardwareמאחר מלא יש

נוספים:Freeduino, RBBB (Really Bare Bones Board),

DFRuino, Seeeduino, Roboduino (for robotics), Gator

Page 9: סדנאת ארדואינו  (לאנשי תוכנה   )

? ארדואינו, עם להתחיל כדי נדרש מה תכלס).... : ההפתעות) קופסאת את נפתח בוא או

( ...35-300$מחשב) ( ארדאינו (30$-12$לוחBreadboard ( -5$אופציונלי) (..גודל סדר (5-10$סנסורים לאחד Shields ( של גודל (40$סדר (... , של, גודל סדר טרנזיסטורים נגדים (15$לדים

ב למצוא ניתן טובה בסיסית חיפוש, 60$ערכת אחריבגוגל יסודי

Page 10: סדנאת ארדואינו  (לאנשי תוכנה   )

- אונו ארדואינו ציוד היכרות

Background SpecsFlash Memory32 KB (ATmega328) of which 0.5 KB used by bootloaderSRAM2 KB (ATmega328)EEPROM1 KB (ATmega328)Clock Speed16 MHz

Page 11: סדנאת ארדואינו  (לאנשי תוכנה   )

- ציוד BreadBoardהיכרות

. מאחורה: בלוח מחוברים החשמל חוטי איך איור

Page 12: סדנאת ארדואינו  (לאנשי תוכנה   )

- ציוד LEDהיכרות

לבדוק באמצעות Vישמולטימטר

Page 13: סדנאת ארדואינו  (לאנשי תוכנה   )

(resistorsנגדים )

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

במולטימטר (להיעזר

Page 14: סדנאת ארדואינו  (לאנשי תוכנה   )

Ultrasonic-Sensor

" פולס שליחת י ע מרחק מודד

ה את נחקור שלו data-sheetבהמשך

Page 15: סדנאת ארדואינו  (לאנשי תוכנה   )

בסדנא זמין שיהיה נוסף ציוד

) קול) משמיע באזר-מפסק כפתור צד מנוע אור רגשרגיסטר

- כ הסדנא 40ועוד בסוף סנסורים , אש) '...(IRגלאי ' ועוד, ויסטיק ג

Page 16: סדנאת ארדואינו  (לאנשי תוכנה   )

... - לתכנת מתחילים וסביבה שפה

ל דומה ארדואינו בנוי IDEה )Wiringנקראת- Cסביבתלעבודה( JAVAב- ארדואינו של מכונה פקודות עוטפת

. מיידית כמעט בצורה : מ חופשית בצורה אותה להוריד arduino.ccניתן נקראת של sketchתוכנית בסינטקס Cנכתבת לצרף , Headersניתן ' תוכנית לעבור אין אך קבצים ומס

ה מגודל גדולה של – FLASHמקומפלת UNOבמקרה– 32K

ה סוג את להגדיר ה , boardיש -baudקצב COMוה , ( נא- צורך יש אם למחשב מחובר הארדואינו תרגול

(driverלהתקין ארדואינו של מהתיקייה

Page 17: סדנאת ארדואינו  (לאנשי תוכנה   )

עבודה סביבת היכרות

Page 18: סדנאת ארדואינו  (לאנשי תוכנה   )

Basics programming

מתודות Setup,loop הכרחיות-שניבSetup בהם להשתמש שהולכים הפינים כל את נגדיר בLoop בהם .נשתמש: להתחלה בסיסיות פקודות

PinMode( pinNumber, type:Output/input)pinNumber,HIGH/LOW))digitalWritedigitalRead(pinNumber, HIGH/LOW)Delay(msec)

: פין הדלקת לחימום ראשון 13תרגול

Page 19: סדנאת ארדואינו  (לאנשי תוכנה   )

Now for the real thing…

... קבוע לד עם ששיחקנו אחרי.... ל הזמן הגיע

!!!!!!! ראשון מעגל הרכבת

Page 20: סדנאת ארדואינו  (לאנשי תוכנה   )

... ראשון מעגל שמתחילים לפני

1o הארדואינו את להרוס בטוחות דרכים Method #1 :Shorting I/O Pins to Ground

#2Method :Shorting I/O Pins to Each Other

#3Method :Apply Overvoltage to I/O Pins

#4Method :Apply External Vin Power Backwards

#5Method :Apply >5V to the 5V Connector Pin

#6Method :Apply >3.3V to the 3.3V Connector Pin

#7Method :Short Vin to GND

#8Method :Apply 5V External Power with Vin Load

#9Method :Apply >13V to Reset Pin

#10Method :Exceed Total Microcontroller Current

.... שרוף של וריח בעשן נכתבו אלו הוראות

Page 21: סדנאת ארדואינו  (לאנשי תוכנה   )

) / ( פלט קלט ראשון חשמלי מעגל

? מורכב ממה נמוך למתח גבוה ממתח זרםהארקה: שניצור מעגלים לטובת רכיבים

( ל מיועד יותר הקצר החלק (GNDלד).. בכיר) נגדBreadBoard( ? הסכימה נראית ..(UMLאיך החומרה עולם של : בדיליי לד הדלקת פשוטה הדגמה

Page 22: סדנאת ארדואינו  (לאנשי תוכנה   )

קירכהוף , וחוק אום חוק חומרה על קצת

: אום , V=IR, Vחוק , Iמתח- חשמלי- התגנדות-Rזרם מתח בעלת שתומכת לד נורת לנו נתונה אם : 1.7לכן 20mAוזרם

: "נצטרך כי נקבל פשוט חישוב י אוהם X( = 5-1.7 :) 0.020ע:) ( רכיבים מספר כשיש לעשות מה קירכהוף חוקי

,     שעובר הזרם חשמליים רכיבים יותר או שניים של בטור חשמלי בחיבור , המתחים - לסכום שווה עליהם הכולל והמתח זהה מהרכיבים אחד בכל

: . הינה ההנגדות ואילו בנפרד מהם אחד כל Req = R1 + R2 + .... Rnעל

,     כל על המתח חשמליים רכיבים יותר או שניים של במקביל חשמלי בחיבור , שעובר - הזרמים לסכום שווה בהם שעובר הכולל והזרם זהה מהם אחד

. בנפרד מהם אחד Req = 1/{(1/R1)+(1/R2)+(1/R3)..+(1/Rn)}בכל

: . דימר: הפעלת תרגול נורה עם מעגל הדגמה : רגיסטר עם עבודה בונוס תרגול

Page 23: סדנאת ארדואינו  (לאנשי תוכנה   )

Digital vs analog

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

אנלוגית בצורה , דיגטלי אות להמיר ניתן ארדואינו בעזרת זו בשיטה

- בכ (210 ) 1024למספר

Page 24: סדנאת ארדואינו  (לאנשי תוכנה   )

מ) יותר שווה (100תמונה PWMמילים

של מתח להוציא יודע דיגטלי 0V ( dutyאו 5Vאותcycle)

/ יותר נדרשים חשמלי מנוע אור עוצמת על לשלוט כדימצבים.

להעביר למשל ניתן ?2.5Vאיך מהזמן חצי מהזמן 5Vנעביר 0V ( 50% duty cycle)חצי " כדי " אינטגרציה מבצעים בעצם הזה הטריק בעזרת

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

Page 25: סדנאת ארדואינו  (לאנשי תוכנה   )

שימושיות פונקציות

map(val, 300, 700, 0, 1024);analogRead– )(from A0-A6 pins

כי לב sensorValue * (5.0 / 1023.0)= Sensor VotlsשימוanalogWrite- )(via PWM

, והדלקת: מפוטומטר אנלוגי אות קריאת תרגולההפוכה האור בעוצמת הנורה

Page 26: סדנאת ארדואינו  (לאנשי תוכנה   )

Ultra Sonicסנסור

לסנסור בהתממשקות הפעולה דרכי ב וקנייה /…DX/seed studioחיפוש- ב Data sheetעיון : לו ) לעשות עצמאי ..(Reversingמחקר... מימש כבר שמישהו קוד מציאת

:למשאיות מערכת כתיבת משימה , גבוהה) בתדירות צלצול משמיע ככה יותר שמתקרב ככל

יותר(

Page 27: סדנאת ארדואינו  (לאנשי תוכנה   )

סרבו מנוע

בספרייה Servo.hניעזר)' , ( וכד סטפר רבים מיני מנוע של סוג הינו סרבו ל מוגבל ) 180מנוע הערך את לו לקבוע וניתן מעלות

(POS ) ליציאה אותו לחבר לב לשים .PWMיש ,+ ( - , + זה חום זה אדום ה את להחליף לא לב לשים יש

) = דאטה-, כתום. ! אותו יתקע זה מדיי יותר הדיליי את תקטינו אל :תרגולClapper כפתור עם

Page 28: סדנאת ארדואינו  (לאנשי תוכנה   )

המחשב עם סריאלי ממשק

( סדרתית (byte by byteתקשורת ב נמדד -baud- bits per secondהקצב ל ) (9600נכוון בספרייה Serialניעזר

  Serial.begin(baud); if (Serial. available () > 0) {           value = Serial.read();          ///

Serial.write(value);

           delay(200);}

) :נתונה לד להפעיל שלכם בשם ליוזר רק הזדהות לכתוב משימה) בפייתון תוכנית

Page 29: סדנאת ארדואינו  (לאנשי תוכנה   )
Page 30: סדנאת ארדואינו  (לאנשי תוכנה   )

סריאלי ממשק הדגמה

יורה רואה מערכת ב ממצלמה Inputלקבלת , Raspberry Piשימוש

. " אדם " בן זיהוי לצורך ממוחשבת ראייה וביצוע ב SimpleCVשימוש ביצועreversing , למנוע והתחברות בועות לאקדח

שמפגעיל " ארדואינו " של מהפינים נמוך זרם עקב מבצעי לא

Page 31: סדנאת ארדואינו  (לאנשי תוכנה   )

.. הבאה בפעם Sheildsארדואינו

... ומגניב כיף זה סנסורים תקשורת עם מה ?ethernet/BT/zigbeeאבל( קבוע זכרון על (?SDשמירה למיקום זה ?GPSהתממשקות מתגי מידע ?RFIDקבלת

רכיבים ) בין מנועים(, SPIתקשורת מגוון

" י ע נעשו ועוד אלו , Shieldsכל מוכנות ופונקציות ייעודיים - בכ, לאחד 40$לשליפה

Page 32: סדנאת ארדואינו  (לאנשי תוכנה   )

מקורות

:// . . / / /http www ladyada net learn arduinoJermey blum BLOGHwzone.co.il) טובי ) של המדריךArduino.cc: ב למצוא תוכלו המצגת את כמוכן

Barshapp.roadmap.co.il