תכנות מיקרו-בקרים בשפת MicroPython · פרק 25 — נוסחאון הספר⌂📚🏠
פרק 25 · נספח

נוסחאון הספר

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

25.1 כניסות ויציאות ספרתיות

13 (ESP32)GNDGP15 (Pico W)LED_EXT330 ΩIVF
נורית עם נגד בטור.
הנגד של הנורית
R = VOH − VFI
סמלפירושיחידה
VOHמתח ההדק ברמה 1 V
VFהמתח הישר של הנורית, מגיליון הנתונים שלה V
Iהזרם שאנו רוצים A
Rהנגד בטור Ω

25.2 מדידת מרחק בזמן ההד

TRIGECHO10 µst
פולס ההפעלה, ואחריו פולס ההד ורוחבו t. הסרטוט אינו בקנה מידה.
המרחק מזמן ההד
d = c · t2
סמלפירושיחידה
cמהירות הקול: כ-0.0343 באוויר בכ-20 מעלות צלזיוס cm/µs
tרוחב פולס ההד µs
dהמרחק לגוף cm
מהירות הקול והטמפרטורה
c = 331.3 + 0.606 T
סמלפירושיחידה
cמהירות הקול באוויר, בקירוב m/s
Tטמפרטורת האוויר°C

25.3 מד תדר בפסיקות

תדר מספירת קצוות
f = NT
Δf = 1T
סמלפירושיחידה
Nמספר הקצוות העולים בחלון—
Tאורך חלון הזמן s
fהתדר Hz
Δfהשינוי הקטן ביותר שהמדידה מגלה Hz

25.4 קלט אנלוגי

123456781234567VinN
ממיר של 3 סיביות: הציר האופקי ביחידות של מדרגה q, והציר האנכי הוא המספר N.
רזולוציה: גודל של מדרגה אחת
q = Vref2n
סמלפירושיחידה
qהרזולוציה, השינוי הקטן ביותר במתח שהממיר רואה V
Vrefמתח הייחוס V
nמספר הסיביות של הממיר—
מקריאה למתח
V = N · Vref65535
סמלפירושיחידה
Nהערך של read_u16(), מ-0 עד 65535—
Vהמתח בהדק V
3V335 (ESP32)GNDGP27 (Pico W)RLDRRF10 kΩV
מחלק המתח: ככל שיש יותר אור, V עולה.
התנגדות החיישן מן המתח הנמדד
V = Vref · RFRLDR + RF
RLDR = RF · (VrefV − 1)
סמלפירושיחידה
RLDRהתנגדות החיישן Ω
RFהנגד הקבוע Ω
Vהמתח הנמדד V

25.5 מוצא אנלוגי: PWM ו-DAC

D = 25%0.825 VD = 50%1.65 VD = 75%2.475 VT
שלושה מחזורי עבודה באותו תדר. הקו המקווקו הוא המתח הממוצע.
מחזור עבודה ומתח ממוצע
D = tonT
Vavg = D · VH
סמלפירושיחידה
tonזמן הפולס הגבוה, ו-T = 1/f הוא זמן המחזור s
VHהמתח הגבוה של ההדק V
Vavgהמתח הממוצע V
ערך duty_u16
N = D · 65535
סמלפירושיחידה
Nהמספר שנותנים ל-duty_u16, מ-0 עד 65535—
Dמחזור העבודה, כשבר בין 0 ל-1—
0203.3tV[ms]1.5 ms
פולס של 1.5 ms כל 20 ms.
סרבו: רוחב הפולס
N = tpT · 65535
סמלפירושיחידה
tpרוחב הפולס: באופן אופייני בין 0.5 ms (0°) ל-2.5 ms (180°) s
Tזמן המחזור: 20 ms, כלומר 50 Hz s
Nהערך של duty_u16—
הצליל של הזמזם
f = 440 · 2n/12
סמלפירושיחידה
nמספר חצאי הטון בין הצליל ל-A4—
fתדר הצליל Hz
מוצא DAC
V = N255 · Vref
סמלפירושיחידה
Nהמספר שנכתב, מ-0 עד 255—
Vrefמתח הייחוס, כ-3.3 V V
Vמתח המוצא V
PWMVout10 kΩ1 µF
מסנן RC על מוצא PWM.
תכנון המסנן
fc = 12π R C
ΔV ≈ VH · D · (1 − D)f · R · C
סמלפירושיחידה
fcתדר הניתוק Hz
fתדר ה-PWM Hz
ΔVהאדווה בתדר f, והיא הגדולה ביותר כש-D = 0.5. רוצים ש-fc יהיה קטן בהרבה מ-f V

25.6 תקשורת טורית UART

TXidlestartD0D1D2D3D4D5D6D7stopidle
מסגרת התו A בתבנית 8N1: סיבית התחלה, שמונה סיביות שמתחילות בקלה ביותר, סיבית עצירה.
זמן בית
tbyte = nframeB
סמלפירושיחידה
tbyteזמן השידור של בית אחד s
nframeמספר הסיביות במסגרת, 10 ב-8N1—
Bקצב השידור bit/s

25.7 אפיק I2C

ControllerSDASCL3V34.7 kΩPCF85740x20ADS11150x48DS13070x68SDASCL
אפיק אחד ועליו שלושה שבבים, שני נגדי משיכה משותפים, וכתובת שונה לכל שבב.
גבולות נגד המשיכה וזמן עלייה
Rmin = VDD − VOLIOL
Rmax = tr0.8473 · Cb
tr = 0.8473 · R · Cb
סמלפירושיחידה
VDDמתח ההזנה V
VOLהמתח הגבוה ביותר המותר ברמה הנמוכה, 0.4 V V
IOLזרם המשיכה, 3 mA בשתי המהירויות A
trזמן העלייה, הגבול שלו 1000 ns ב-100 kHz ו-300 ns ב-400 kHz s
Cbקיבול האפיק, הגבול שלו 400 pF F
Rנגד המשיכה Ω
בית הכתובת
b = 2 · A + d
סמלפירושיחידה
Aכתובת השבב בשבע סיביות—
dסיבית הכיוון: 0 לכתיבה ו-1 לקריאה—
bהבית שמופיע על החוט—

25.8 אפיק SPI

זמן ההעברה ב-SPI
t = N · bf
סמלפירושיחידה
tהזמן המינימלי להעברת הנתונים s
Nמספר היחידות שמועברות (נקודות או בייטים)—
bמספר הסיביות ביחידה—
fתדר השעון Hz

25.9 חיישנים ומפעילים נפוצים

DIN5VGNDWS2812 x 8NEOPIXELGNDR+5 V
רצועה צבעונית בהזנה חיצונית של 5 V ואדמה משותפת.
זרם הרצועה
I = N · ILED
סמלפירושיחידה
Nמספר הנוריות ברצועה—
ILEDהזרם של נורית אחת, מגיליון הנתונים של הרצועה A
Iהזרם של כל הרצועה A
LED_EXTGND1 kΩ+5 V+−12 V
הטרנזיסטור מפעיל את סליל הממסר, והמגע מפעיל עומס במעגל נפרד.
הטרנזיסטור כמתג: זרם הבסיס
IB,min = IChFE
IB = Vpin − VBERB
סמלפירושיחידה
ICזרם הקולט: זרם העומס, כמו סליל הממסר A
hFEההגבר המינימלי של הטרנזיסטור, מגיליון הנתונים שלו—
Vpinמתח ההדק ברמה 1 V
VBEמתח בסיס-פולט, כ-0.7 V V
RBנגד הבסיס Ω
IBזרם הבסיס: צריך להיות גדול מ-IB,min A

25.10 הודעות דרך Telegram

אישור עדכונים
offset = updateid + 1
סמלפירושיחידה
updateidמספר העדכון האחרון שטיפלנו בו—
offsetהמספר הקטן ביותר שנרצה לראות בבקשה הבאה—
מספר הבקשות ביום
N = 86400T
סמלפירושיחידה
Nמספר הבקשות ביום—
Tהזמן בין שתי בקשות s

25.11 תכנות אסינכרוני

AB0.00.61.01.21.82.03.0t (s)
המלבנים הם הרגעים שבהם כל משימה פועלת, והקו המקווקו הוא שנתה.
הזמן הכולל
Tseq = TA + TB
T = max(TA, TB)
סמלפירושיחידה
TAסכום זמני ההמתנה של המשימה הראשונה s
TBסכום זמני ההמתנה של המשימה השנייה s
Tseqהזמן הכולל כשמריצים את המשימות זו אחר זו s
Tהזמן הכולל כשמריצים אותן יחד ב-asyncio.gather s

25.12 מערכות בקרה

+−בקרמחשב פקודהמפעילPWM, ממסרתהליךארגז, מנועreuyהפרעהחיישןמשוב
תרשים מלבנים של חוג סגור.
שגיאה
e = r − y
סמלפירושיחידה
eהשגיאה: חיובית פירושה שאנחנו מתחת לרצוי—
rהאות הרצוי—
yהאות המצוי—
תהליך מסדר ראשון, צעד בכל Ts
Tk+1 = Tk + a · (Ta + K · uk − Tk)
a = 1 − e−Ts/τ
סמלפירושיחידה
τקבוע הזמן, ובו עוברים 63% מן הדרך s
Kבכמה הפקודה המלאה מעלה את הטמפרטורה°C
ukהפקודה, מ-0 עד 1—
Taטמפרטורת הסביבה°C
Tsזמן הדגימה s
בקר פרופורציונלי ושגיאה מתמדת
u = Kp · e
ess = r − d1 + Kp · K
סמלפירושיחידה
Kpההגבר הפרופורציונלי—
essהשגיאה המתמדת, אחרי שהתהליך מתייצב—
dמה שמגיע לחיישן בלי הפקודה שלנו, כמו אור היום—
Kהגבר התהליך—
+VMMLED_EXTRBאנקודרדיסק וחיישןצירBTND
מנוע עם אנקודר שנותן מספר קבוע של פולסים בכל סיבוב.
מהירות ממספר הפולסים
n = 60 · NP · T
Δn = 60P · T
סמלפירושיחידה
nהמהירות rpm
Nהפולסים שספרנו במהלך החלון—
Pמספר הפולסים בסיבוב—
Tאורך חלון הספירה s
Δnההפרש הקטן ביותר במהירות שאנחנו רואים rpm
בקר PID
u = Kp · e + Ki · ∫e dt + Kd · dedt
Ik = Ik−1 + Ki · ek · Ts
uk = Kp · ek + Ik − Kd · yk − yk−1Ts
סמלפירושיחידה
Kiההגבר האינטגרלי: מסכם את השגיאה לאורך הזמן—
Kdההגבר הדיפרנציאלי: מגיב לקצב השינוי—
Ikסכום האיבר האינטגרלי עד הצעד k—
Tsזמן הדגימה s

25.13 מחלק מתח על ECHO

HC-SR04ECHOGNDGPIO24GND1 kΩ2 kΩ5 V3.3 V
מחלק מתח שמוריד את פולס ה-ECHO מ-5 V לפני שהוא מגיע להדק.
המתח בהדק במחלק המתח
V = 5 · R2R1 + R2
סמלפירושיחידה
R1הנגד מ-ECHO אל ההדק Ω
R2הנגד מן ההדק אל האדמה Ω
Vהמתח בהדק: אסור שיעלה על 3.3 V V

25.14 מצלמה וניתוח תמונה

גודל פריים גולמי
B = W · H · c
סמלפירושיחידה
W, Hרוחב הפריים וגובהו בפיקסלים—
cמספר הבתים לכל פיקסל: 3 בצבע ו-1 באפור—
Bגודל הפריים בבתים, לפני כל דחיסה—
מדד ההפרש בין שני פריימים
D = SN
סמלפירושיחידה
Sסכום ההפרשים המוחלטים בין כל שני פיקסלים מקבילים—
Nמספר הפיקסלים—
Dההפרש הממוצע לפיקסל—