Chapterبەش 2 · Lectureوانە 2.1
The Questions Behind Every IoT Designئەو پرسیارانەی لە پشت هەموو دیزاینێکی IoTـەوەن
Before choosing parts, designers answer a set of questions: which domain, what the system must do, how fast it must react (real time), whether a failure can hurt someone (safety-critical), how reliable it must be (99.999 % ≈ 5 minutes a year), how data stays correct (checksums and MACs — encryption alone is not enough), how long and how much the network must carry (latency and throughput), and whether every packet must arrive.
پێش هەڵبژاردنی پارچەکان، دیزاینەران وەڵامی کۆمەڵێک پرسیار دەدەنەوە: کام بوار، سیستەمەکە دەبێت چی بکات، دەبێت چەند خێرا کاردانەوەی هەبێت ()، ئایا تێکچوونێک دەتوانێت زیان بە کەسێک بگەیەنێت ()، دەبێت چەند جێی پشت پێبەستن بێت (99.999 % ≈ 5 خولەک لە ساڵێکدا)، چۆن دروست دەمێنێتەوە ( و MAC — بە تەنیا بەس نییە)، دەبێت چەند درێژ و چەند زۆر بگوازێتەوە ( و )، هەروەها ئایا هەموو دەبێت بگات.
What you will learnچی فێر دەبیت
- Name the application domain of an IoT system and turn "what must it do?" into checkable requirements.
- Explain real time as meeting deadlines, and tell hard from soft real time.
- Recognise a safety-critical system and say what changes in its design.
- Turn availability percentages into downtime per year.
- Explain why checksums catch accidents but not attackers, and why integrity needs a MAC or authenticated encryption.
- Tell latency from throughput and bandwidth, and decide which messages need delivery guarantees.
- بواری بەکارهێنانی سیستەمێکی IoT ناو ببەیت و «دەبێت چی بکات؟» بکەیتە پشکنینکراو.
- وەک گەیشتن بە کاتی دیاریکراو ڕوون بکەیتەوە و توند لە نەرم جیا بکەیتەوە.
- بناسیتەوە و بڵێیت چی لە دیزاینەکەیدا دەگۆڕێت.
- ڕێژەی بکەیتە لە ساڵێکدا.
- ڕوون بکەیتەوە بۆچی ڕووداو دەگرێت بەڵام نا، هەروەها بۆچی پێویستی بە MAC یان هەیە.
- لە و جیا بکەیتەوە و بڕیار بدەیت کام پەیام پێویستی بە گەرەنتیی گەیاندن هەیە.
Questions before partsپرسیار پێش پارچە
A good IoT system starts with questions, not with shopping. Before anyone buys a sensor or writes code, the designers ask what the system is for and what it must never get wrong. The answers decide almost everything that follows: which radio, which battery, where the processing happens and what it all costs.
سیستەمێکی باشی IoT بە پرسیار دەست پێدەکات، نەک بە کڕین. پێش ئەوەی کەس بکڕێت یان کۆد بنووسێت، دیزاینەران دەپرسن سیستەمەکە بۆ چییە و چی هەرگیز نابێت بە هەڵە بکات. وەڵامەکان نزیکەی هەموو ئەوەی دوای ئەوە دێت دیاری دەکەن: کام ڕادیۆ، کام ، لە کوێ ڕوودەدات و هەمووی چەندی تێدەچێت.
This lesson walks through eight of these questions, with a smart greenhouse in Halabja as the running example. The next lesson answers one more: where should the thinking happen?
ئەم وانەیە بە هەشت لەم پرسیارانەدا تێدەپەڕێت و سەوزەخانەیەکی هۆشمەند لە هەڵەبجە وەک نموونەی بەردەوام بەکار دەهێنێت. وانەی داهاتوو وەڵامی پرسیارێکی تر دەداتەوە: بیرکردنەوە دەبێت لە کوێ ڕووبدات؟
In which domain will it work?لە کام بواردا کار دەکات؟
The first question is the application domain: the area of life or industry where the system will be used. (A domain is simply an area or field of use.) Four common domains:
یەکەم پرسیار بواری بەکارهێنانـە: ئەو بەشەی ژیان یان پیشەسازی کە سیستەمەکەی تێدا بەکار دەهێنرێت. (بوار واتە ناوچە یان کایەیەکی بەکارهێنان.) چوار بواری باو:
- Smart buildings — homes and offices that open doors, switch lights on or check for fire by themselves.
- Transport — smart traffic lights, and cars that talk to each other.
- Environment — sensors that watch air pollution, dust or the weather.
- Energy — smart electricity meters that know how much power a home uses and report it.
- بینای هۆشمەند — و نووسینگەکان کە خۆیان دەرگا دەکەنەوە، گڵۆپ هەڵدەکەن یان بەدوای ئاگردا دەگەڕێن.
- گواستنەوە — گڵۆپی هاتوچۆی هۆشمەند و ئۆتۆمبێل کە پێکەوە قسە دەکەن.
- ژینگە — کە چاودێریی پیسبوونی هەوا، تەپوتۆز یان کەشوهەوا دەکەن.
- وزە — کارەبا کە دەزانێت ماڵێک چەند کارەبا بەکار دەهێنێت و ڕاپۆرتی دەکات.
The domain sets the rules of the game. A greenhouse in Halabja (agriculture) has different needs from a heart monitor (health) or a dam on the Sirwan river (water and safety): different laws, different risks and different budgets.
بوارەکە یاساکانی یارییەکە دادەنێت. سەوزەخانەیەک لە هەڵەبجە (کشتوکاڵ) پێویستیی جیاوازی هەیە لە ئامێرێکی چاودێریی دڵ (تەندروستی) یان بەنداوێک لەسەر ڕووباری سیروان (ئاو و سەلامەتی): یاسای جیاواز، مەترسیی جیاواز و بودجەی جیاواز.
What must it do, exactly?بە وردی دەبێت چی بکات؟
Next come the requirements: what the system must do and the conditions it must meet. Good requirements are concrete and can be checked. Three typical questions:
پاشان دێن: ئەوەی سیستەمەکە دەبێت بیکات و ئەو مەرجانەی دەبێت جێبەجێیان بکات. ڕوون و پشکنینکراون. سێ پرسیاری ئاسایی:
- How often must it send data — every second, every minute or every hour?
- Must it report all the time, or wake up only when something happens — an event, such as a door opening?
- Must it keep working without the internet?
- چەند جار دەبێت بنێرێت — هەموو چرکەیەک، هەموو خولەکێک یان هەموو کاتژمێرێک؟
- دەبێت هەمیشە ڕاپۆرت بدات، یان تەنیا کاتێک شتێک ڕوودەدات بەئاگا بێت — ڕووداوێک، وەک کرانەوەی دەرگایەک؟
- دەبێت بەبێ بەردەوام کار بکات؟
Each answer has a price. A reading every second makes 86,400 messages a day; one every 15 minutes makes 96. The radio uses most of a sensor's energy, so sending less often, or only on events, can make a battery last months or years instead of days or weeks.
هەر وەڵامێک نرخێکی هەیە. خوێندنەوەیەک هەموو چرکەیەک ڕۆژانە پەیام دروست دەکات؛ هەموو 15 خولەک جارێک 96 پەیام. ڕادیۆکە زۆربەی وزەی بەکار دەهێنێت، بۆیە ناردنی کەمتر، یان تەنیا لە کاتی ڕووداودا، دەتوانێت لە جیاتی چەند ڕۆژ یان هەفتەیەک چەند مانگ یان ساڵێک ڕابگرێت.
Real time means meeting a deadlineکاتی ڕاستەقینە واتە گەیشتن بە کاتی دیاریکراو
Some systems must react in real time: things must happen immediately or very fast. A fire alarm must ring the moment smoke is detected — no waiting.
هەندێک سیستەم دەبێت لە کاردانەوەیان هەبێت: شتەکان دەبێت دەستبەجێ یان زۆر خێرا ڕووبدەن. زەنگی ئاگرکەوتنەوە دەبێت هەر کە دووکەڵ دۆزرایەوە لێبدات — بێ چاوەڕوانی.
Engineers make "fast" precise with a deadline: a real-time system is correct only if its answer arrives in time, and a late answer is a wrong answer. So real time does not simply mean very fast: a heater that must react within a minute is a real-time system, while a fast film download is not.
ئەندازیاران «خێرا» بە کاتی دیاریکراو (deadline) ورد دەکەنەوە: تەنیا کاتێک دروستە کە وەڵامەکەی لە کاتی خۆیدا بگات و وەڵامی دواکەوتوو وەڵامی هەڵەیە. بۆیە تەنیا بە واتای زۆر خێرا نییە: گەرمکەرەوەیەک کە دەبێت لە ماوەی خولەکێکدا کاردانەوەی هەبێت ، بەڵام خێرای فیلمێک نا.
- Hard real time — missing the deadline is a failure. A car's airbag must open within about 20 milliseconds of a crash.
- Soft real time — a late answer is only worse. A video call that falls behind stutters, but nobody is hurt.
- — دواکەوتن لە کاتی دیاریکراو شکستە. کیسەی هەوای ئۆتۆمبێل دەبێت لە ماوەی نزیکەی 20 میلیچرکەدا دوای پێکدادان بکرێتەوە.
- — وەڵامی دواکەوتوو تەنیا خراپترە. پەیوەندیی ڤیدیۆیی کە دوا دەکەوێت دەپچڕێت، بەڵام زیان بە کەس ناگات.
How an embedded system keeps its deadlines, neither late nor too early, is taught in On time: not late, and not too early.
چۆن بە کاتە دیاریکراوەکانی دەگات، نە دواکەوتوو و نە زووتر، لە بەشی لە کاتی خۆیدا: نە دواکەوتوو، نە زووتر فێر دەکرێت.
Can a failure hurt someone?ئایا تێکچوونێک دەتوانێت زیان بە کەسێک بگەیەنێت؟
A system whose failure could hurt or kill someone, or cause great damage, is called safety-critical. A fire alarm is safety-critical; a smart bulb that changes colour is not.
سیستەمێک کە تێکچوونەکەی بتوانێت کەسێک بریندار بکات یان بیکوژێت، یان زیانێکی گەورە بدات، پێی دەوترێت . زەنگی ئاگرکەوتنەوە هەستیاری سەلامەتییە؛ گڵۆپێکی هۆشمەند کە ڕەنگ دەگۆڕێت نا.
The answer changes the whole design. A safety-critical device usually:
وەڵامەکە هەموو دیزاینەکە دەگۆڕێت. ئامێرێکی هەستیاری سەلامەتی زۆرجار:
- is tested much more strictly, often against official safety standards;
- decides locally, so it still works when the internet or the cloud is down;
- has a backup: a second battery, a second sensor or a loud local siren;
- fails safe: if something breaks, it ends in the safe state — a fire door closes, a gas valve shuts.
- زۆر بە توندتر تاقی دەکرێتەوە، زۆرجار بەپێی فەرمیی سەلامەتی؛
- لە شوێنی خۆیدا بڕیار دەدات، بۆیە کاتێک یان هەور ڕاوەستاوە هێشتا کار دەکات؛
- یەدەگی هەیە: دووەم، دووەم یان سیرەنێکی بەدەنگی ناوخۆیی؛
- هەیە: ئەگەر شتێک تێکبچێت، لە دۆخی سەلامەتدا دەوەستێت — دەرگای ئاگر دادەخرێت، سەمامی گاز دادەخرێت.
How much can we trust it?چەند دەتوانین پشتی پێ ببەستین؟
Reliability asks how much we can trust the system to keep working all the time. A common way to put a number on it is availability: the share of time the system is working. A heart-attack monitor may need to work 99.999 % of the time ("five nines"); for a garden-watering system, 90 % may be enough.
دەپرسێت چەند دەتوانین متمانە بە سیستەمەکە بکەین کە هەمیشە کار بکات. ڕێگایەکی باو بۆ کردنی بە ژمارە ـە: ئەو بەشەی کات کە سیستەمەکە کار دەکات. ئامێرێکی چاودێریی جەڵتەی دڵ لەوانەیە پێویستی بێت لە 99.999 %ی کاتدا کار بکات («پێنج نۆ»)؛ بۆ سیستەمێکی ئاودانی باخچە لەوانەیە 90 % بەس بێت.
Percentages hide how big the difference is. Turned into time, 90 % means the system may be down for about 36.5 days a year, while 99.999 % allows only about 5 minutes.
قەبارەی جیاوازییەکە دەشارنەوە. ئەگەر بیکەینە کات، 90 % واتە سیستەمەکە بۆی هەیە ساڵانە نزیکەی 36.5 ڕۆژ بوەستێت، بەڵام 99.999 % تەنیا ڕێگە بە نزیکەی 5 خولەک دەدات.
A network can be built for reliability too: in a mesh, messages find another path when one device fails, as Reliability: working even when parts fail shows.
دەتوانرێت بۆ دروست بکرێت: لە کاتێک ئامێرێک تێک دەچێت پەیامەکان ڕێگایەکی تر دەدۆزنەوە، وەک لە بەشی پشتپێبەستراوی: کارکردن تەنانەت کاتێک بەشێک تێک دەچێت دەبینیت.
How much can we trust it?چەند دەتوانین پشتی پێ ببەستین؟
Working it out: from percent to minutesژماردن: لە سەدییەوە بۆ خولەک
A year has about minutes. Downtime is the part of the year when the system is not available. With availability A written as a fraction (99.999 % = 0.99999), the downtime D in minutes is:
ساڵێک نزیکەی خولەکە. ئەو بەشەی ساڵە کە سیستەمەکە بەردەست نییە. ئەگەر وەک کەرت بنووسین (، بۆ نموونە 99.999 % = 0.99999)، بە خولەک () دەکاتە:
Five nines allow about 5.3 minutes of downtime a year; 90 % allows 52,596 minutes, which is about 36.5 days (a day has 1,440 minutes).
پێنج نۆ نزیکەی 5.3 خولەک لە ساڵێکدا ڕێگە پێدەدات؛ 90 % ڕێگە بە خولەک دەدات، کە نزیکەی 36.5 ڕۆژە (ڕۆژێک خولەکە).
| Availability | Downtime per year لە ساڵێکدا | Fitsگونجاوە بۆ |
|---|---|---|
| 90 % | about 36.5 daysنزیکەی 36.5 ڕۆژ | a garden-watering systemسیستەمی ئاودانی باخچە |
| 99 % | about 3.7 daysنزیکەی 3.7 ڕۆژ | a home weather stationوێستگەیەکی کەشناسیی ماڵەوە |
| 99.9 % | about 8.8 hoursنزیکەی 8.8 کاتژمێر | a shop's freezer alarmئاگادارکەرەوەی فریزەری دووکانێک |
| 99.99 % | about 53 minutesنزیکەی 53 خولەک | a city's water network ئاوی شارێک |
| 99.999 % | about 5 minutesنزیکەی 5 خولەک | a heart-attack monitorئامێری چاودێریی جەڵتەی دڵ |
Each extra nine costs much more: backup power, spare servers, a second network link and people on call to repair faults. So designers choose the level the job really needs.
هەر نۆیەکی زیادە تێچووی زۆر زیاتری هەیە: وزەی یەدەگ، یەدەگ، پەیوەندییەکی دووەمی و کەسانێک کە ئامادەن هەڵەکان چاک بکەنەوە. بۆیە دیزاینەران ئەو ئاستە هەڵدەبژێرن کە کارەکە بەڕاستی پێویستی پێیەتی.
Is the data correct and unchanged?ئایا دراوە دروست و نەگۆڕاوە؟
Data integrity means making sure the data is correct and has not been changed — by mistake or on purpose. Radio links are noisy: a single bit can flip on the way, and one flipped bit turns a reading of 21 °C (0010101 in binary) into 85 °C (1010101).
واتە دڵنیابوون لەوەی دروستە و نەگۆڕاوە — بە هەڵە یان بە ئەنقەست. پەیوەندییە ڕادیۆییەکان هەیە: تەنیا دەتوانێت لە ڕێگادا بگۆڕێت و یەک گۆڕاو خوێندنەوەی 21 °C (0010101 بە دوانی) دەکاتە 85 °C (1010101).
A checksum catches such accidents. The sender calculates a small number from the message and sends it along; the receiver calculates it again. If the two numbers differ, the message was damaged and is thrown away or sent again. CRC (cyclic redundancy check) is the kind of checksum that Wi-Fi and Bluetooth frames, for example, carry at their end. The DHT11 sensor sends one with every reading: see Is the reading correct? The checksum.
ئەم ڕووداوانە دەگرێت. نێرەر ژمارەیەکی بچووک لە پەیامەکەوە دەژمێرێت و لەگەڵیدا دەینێرێت؛ وەرگر دووپاتە دەیژمێرێتەوە. ئەگەر دوو ژمارەکە جیاواز بوون، پەیامەکە زیانی پێگەیشتووە و فڕێ دەدرێت یان دووپاتە دەنێردرێتەوە. CRC (cyclic redundancy check) ئەو جۆرە کە بۆ نموونە و Bluetooth لە کۆتاییاندا هەڵیدەگرن. لەگەڵ هەموو خوێندنەوەیەک یەکێک دەنێرێت: بڕوانە ئایا خوێندنەوەکە دروستە؟ پشکنینی کۆ.
Is the data correct and unchanged?ئایا دراوە دروست و نەگۆڕاوە؟
Checksums stop accidents, not attackersپشکنینی کۆ ڕێگە لە ڕووداو دەگرێت، نەک لە هێرشبەر
A checksum does not stop an attacker: anyone who changes a message can simply calculate a new checksum for it. To detect deliberate changes, the check needs a secret key. That is a message authentication code (MAC): a short code made from the message and a key that only the sender and the receiver know. HMAC is a common kind. Without the key, an attacker cannot make a matching code.
ڕێگە لە ناگرێت: هەر کەسێک پەیامێک بگۆڕێت دەتوانێت بە سادەیی نوێی بۆ بژمێرێت. بۆ دۆزینەوەی گۆڕانکاریی بە ئەنقەست، پشکنینەکە پێویستی بە نهێنی هەیە. ئەوە (MAC)ـە: کۆدێکی کورت کە لە پەیامەکە و دروست دەکرێت کە تەنیا نێرەر و وەرگر دەیزانن. HMAC جۆرێکی باوە. بەبێ ، ناتوانێت کۆدێکی گونجاو دروست بکات.
Hashes and keys are explained in Encryption, hashing and digital signatures, and the three security goals in Confidentiality, integrity and availability.
و لە وانەی «شفرەکردن، هاشکردن و واژووە دیجیتاڵییەکان» ڕوون کراونەتەوە و سێ ئامانجەکەی لە وانەی «بەنهێنی مانەوە، دروستی و بەردەستبوون».
How long, and how much? Latency and throughputچەند درێژ و چەند زۆر؟ دواکەوتن و ڕێژەی تێپەڕین
Two numbers describe what the network must deliver. Latency is the delay: how long one packet takes to reach its destination, measured in milliseconds (ms). Throughput is the average amount of data that actually gets through each second, measured in bits per second (bit/s). Bandwidth is the most a link could carry; throughput is what it really carries, and it is often less.
دوو ژمارە ئەوە ڕوون دەکەنەوە کە دەبێت بیگەیەنێت. ماوەی گەیشتنە: یەک چەند دەخایەنێت تا بگاتە شوێنی مەبەست، بە میلیچرکە (ms) دەپێورێت. تێکڕای ئەو بڕە کە بەڕاستی لە هەر چرکەیەکدا تێدەپەڕێت، بە لە چرکەیەکدا (bit/s) دەپێورێت. زۆرترینە کە هێڵێک دەتوانێت بیگوازێتەوە؛ ئەوەیە کە بەڕاستی دەیگوازێتەوە و زۆرجار کەمترە.
Think of a water pipe from a mountain spring to Halabja. Its length is like latency: the longer the pipe, the longer the first drop takes to arrive. Its width is like throughput: a big pipe brings more water every second, a small pipe less. A wider pipe does not make the first drop arrive sooner, and a shorter pipe does not bring more water.
بۆرییەکی ئاو لە کانییەکی چیاوە بۆ هەڵەبجە بهێنە بەرچاوت. درێژییەکەی وەک : بۆری درێژتر بێت، یەکەم دڵۆپ درەنگتر دەگات. پانییەکەی وەک : بۆریی گەورە لە هەر چرکەیەکدا ئاوی زیاتر دەهێنێت و بۆریی بچووک کەمتر. بۆریی پانتر یەکەم دڵۆپ زووتر ناگەیەنێت و بۆریی کورتتر ئاوی زیاتر ناهێنێت.
Where the analogy stops workingسنووری ئەم نموونەیە
Real networks are not smooth pipes: packets wait in queues, get lost and are sent again, so latency and throughput change from moment to moment.
ڕاستەقینەکان بۆریی ڕێکوپێک نین: لە ڕیزدا چاوەڕێ دەکەن، ون دەبن و دووپاتە دەنێردرێنەوە، بۆیە و ساتە ساتە دەگۆڕێن.
The IT course explains bandwidth and latency for home internet connections. The Computer Networks course measures them in detail in Bandwidth and throughput.
کۆرسی IT لە بەشی «پانایی باند و دواکەوتن» ئەم دوو ژمارەیە بۆ پەیوەندیی ماڵەوە ڕوون دەکاتەوە. کۆرسی کۆمپیوتەر بە وردی لە بەشی پانایی باند و ڕێژەی تێپەڕین دەیانپێوێت.
How long, and how much? Latency and throughputچەند درێژ و چەند زۆر؟ دواکەوتن و ڕێژەی تێپەڕین
Watch it: delay versus amountسەیری بکە: دواکەوتن بەرامبەر بڕ
The animation compares two pipes. The short, thin pipe delivers its first packet sooner (low latency) but only a few packets each second. The long, wide pipe is slow to deliver the first packet (high latency) but then delivers many packets each second (high throughput).
دوو بۆری بەراورد دەکات. بۆرییە کورت و باریکەکە یەکەم زووتر دەگەیەنێت ( کەم) بەڵام لە هەر چرکەیەکدا تەنیا چەند . بۆرییە درێژ و پانەکە یەکەم دوا دەخات ( زۆر) بەڵام پاشان لە هەر چرکەیەکدا زۆر دەگەیەنێت ( بەرز).


IoT jobs need different mixes: a security camera's video stream needs high throughput; a remote emergency stop or a fire alarm needs low latency; a soil sensor needs neither, but it must save power.
کارەکانی IoT تێکەڵەی جیاوازیان پێویستە: پەخشی ڤیدیۆی کامێرایەکی ئاسایش بەرزی پێویستە؛ وەستاندنی فریاکەوتنی لە دوورەوە یان زەنگی ئاگرکەوتنەوە کەمی پێویستە؛ خاک هیچیانی پێویست نییە، بەڵام دەبێت وزە بپارێزێت.
Must every packet arrive?ئایا دەبێت هەموو پاکێتێک بگات؟
Networks lose packets: radio noise, a busy gateway or a weak signal can drop them. So the designers ask: do we need bandwidth and delivery guarantees? Is any packet loss acceptable at all? It depends on the message:
ون دەکەن: ڕادیۆیی، قەرەباڵغ یان ئیشارەیەکی لاواز دەتوانن بیانفەوتێنن. بۆیە دیزاینەران دەپرسن: ئایا پێویستمان بە گەرەنتیی و گەیاندن هەیە؟ ئایا هیچ قبووڵە؟ پەیوەستە بە پەیامەکەوە:
- A temperature reading every minute — losing one now and then is fine; the next one arrives soon.
- A fire or gas alarm — must arrive. The sender waits for a short "received" reply (an acknowledgement, ACK) and sends again until one comes.
- A firmware update — every byte must arrive, in order and checked, or the device may stop working.
- خوێندنەوەی پلەی گەرمی هەموو خولەکێک — ونبوونی یەکێکیان جار جار کێشە نییە؛ دواتر یەکێکی تر زوو دەگات.
- ئاگادارکردنەوەی ئاگر یان گاز — دەبێت بگات. نێرەرەکە چاوەڕێی وەڵامێکی کورتی «گەیشت» دەکات (ACK) و دووپاتە دەینێرێتەوە تا وەڵامێک دێت.
- — هەموو دەبێت بە ڕیز و پشکنراو بگات، دەنا لەوانەیە ئامێرەکە لە کار بکەوێت.
Guarantees cost time, energy and bandwidth, because of the replies and the resending. Good IoT protocols let each message choose its level: MQTT, for example, offers three delivery levels (QoS 0, 1 and 2), taught in QoS 0, 1 and 2: how sure is delivery?.
گەرەنتییەکان کات، وزە و دەخۆن، بەهۆی وەڵامەکان و ناردنەوەی دووپاتە. باشەکانی IoT ڕێگە دەدەن هەر پەیامێک ئاستی خۆی هەڵبژێرێت: بۆ نموونە سێ (QoS 0، 1 و 2) پێشکەش دەکات کە لە بەشی QoS 0، 1 و 2: گەیاندن چەند دڵنیایە؟ دەیانخوێنیت.
Putting it together: a smart greenhouseکۆکردنەوەی هەمووی: سەوزەخانەیەکی هۆشمەند
Here are the answers for a smart tomato greenhouse in Halabja that must keep the air between 18 and 30 °C. Each answer turns into a design decision.
ئەمانە وەڵامەکانن بۆ سەوزەخانەیەکی هۆشمەندی تەماتە لە هەڵەبجە کە دەبێت هەوای ناوەوە لە نێوان 18 و 30 °C بهێڵێتەوە. هەر وەڵامێک دەبێتە بڕیارێکی دیزاین.
Common mistakesهەڵە باوەکان
| Mistakeهەڵە | Betterباشتر |
|---|---|
| "Real time means as fast as possible."« واتە هەرچی خێراتر.» | Real time means meeting a deadline. Missing a hard deadline is a failure; missing a soft one only lowers quality. واتە گەیشتن بە کاتی دیاریکراو. دواکەوتن لە کاتێکی توند شکستە؛ دواکەوتن لە کاتێکی نەرم تەنیا کوالیتی دادەبەزێنێت. |
| "Encryption guarantees integrity."« گەرەنتیی دەکات.» | Encryption gives secrecy. Integrity needs a MAC or authenticated encryption (AES-GCM, Ascon-AEAD128). نهێنی دەپارێزێت. پێویستی بە MAC یان هەیە (AES-GCM، Ascon-AEAD128). |
| "A checksum stops hackers."« ڕێگە لە هاکەران دەگرێت.» | A checksum catches accidents (noise). An attacker can recalculate it; only a keyed check (MAC) stops them. ڕووداو دەگرێت (). دەتوانێت دووپاتە بیژمێرێتەوە؛ تەنیا پشکنینێکی (MAC) ڕێگەی لێ دەگرێت. |
| "Latency and throughput are the same thing."« و هەمان شتن.» | Latency is delay (ms); throughput is data per second (bit/s). A link can be fast in one and slow in the other. ماوەی گەیشتنە (ms)؛ لە هەر چرکەیەکدایە (bit/s). هێڵێک دەتوانێت لە یەکێکیاندا باش و لە ئەوی تردا خراپ بێت. |
| "99.9 % and 99.999 % are almost the same."«99.9 % و 99.999 % نزیکەی وەک یەکن.» | About 8.8 hours against about 5 minutes of downtime a year.نزیکەی 8.8 کاتژمێر بەرامبەر نزیکەی 5 خولەک لە ساڵێکدا. |
| "Every IoT message must arrive."«هەموو پەیامێکی IoT دەبێت بگات.» | Routine readings may be lost; alarms and updates must arrive. Guarantees cost energy and bandwidth.خوێندنەوە ئاساییەکان بۆیان هەیە ون بن؛ ئاگادارکردنەوە و دەبێت بگەن. گەرەنتی وزە و دەخوات. |
| "We can decide the requirements after building it."«دەتوانین دوای دروستکردنی دیاری بکەین.» | Decide them first: they choose the radio, the power, the processing and the cost.سەرەتا دیارییان بکە: ئەوان ڕادیۆ، وزە، و تێچوو هەڵدەبژێرن. |
Exercisesڕاهێنانەکان
Classify each system as hard real time, soft real time or not real time: (a) a car airbag; (b) the live video of a doorbell camera; (c) a daily report from an electricity meter; (d) a factory robot arm that must stop when a person steps into its area; (e) a smart speaker answering a question.
هەر سیستەمێک پۆلێن بکە بۆ ، یان نییە: (أ) کیسەی هەوای ئۆتۆمبێل؛ (ب) ڤیدیۆی ڕاستەوخۆی کامێرای زەنگی دەرگا؛ (ج) ڕاپۆرتی ڕۆژانەی پێوەرێکی کارەبا؛ (د) بازووی کارگە کە دەبێت بوەستێت کاتێک کەسێک دەچێتە ناو ناوچەکەیەوە؛ (ه) بڵندگۆیەکی هۆشمەند کە وەڵامی پرسیارێک دەداتەوە.
Show answerوەڵامەکە پیشان بدە
- (a) hard — a late airbag has failed;
- (b) soft — late video only stutters;
- (c) not real time — a report a few minutes late changes nothing;
- (d) hard — the arm must stop before it reaches the person;
- (e) soft — a slow answer is annoying, not dangerous.
- (أ) توند — کیسەی هەوای دواکەوتوو شکستی هێناوە؛
- (ب) نەرم — ڤیدیۆی دواکەوتوو تەنیا دەپچڕێت؛
- (ج) نییە — ڕاپۆرتێک کە چەند خولەکێک دوا بکەوێت هیچ ناگۆڕێت؛
- (د) توند — بازووەکە دەبێت پێش ئەوەی بگاتە کەسەکە بوەستێت؛
- (ه) نەرم — وەڵامی هێواش بێزارکەرە، نەک مەترسیدار.
The water-level system of a dam must be available 99.99 % of the time. How many minutes of downtime does that allow per year?
سیستەمی ئاستی ئاوی بەنداوێک دەبێت لە 99.99 %ی کاتدا بەردەست بێت. ئەوە ساڵانە ڕێگە بە چەند خولەک دەدات؟
Show answerوەڵامەکە پیشان بدە
About 53 minutes a year.
نزیکەی 53 خولەک لە ساڵێکدا.
Karwan wants an alarm for the ice-cream freezer in his Erbil shop. Write five requirements for it. Each one must be something you can test.
کاروان ئاگادارکەرەوەیەکی دەوێت بۆ فریزەری دۆندرمەی دووکانەکەی لە هەولێر. پێنج بۆ بنووسە. هەر یەکەیان دەبێت شتێک بێت کە بتوانیت تاقی بکەیتەوە.
Show answerوەڵامەکە پیشان بدە
- Measure the freezer temperature at least once a minute, to ±1 °C.
- If it stays above −15 °C for 5 minutes, sound a local buzzer and send a phone alert within 1 minute.
- Keep the local buzzer working without Wi-Fi or internet.
- Run for at least 12 hours on its backup battery during a power cut.
- Keep a log of every reading for 30 days.
- پلەی گەرمیی فریزەرەکە لانیکەم خولەکی جارێک بپێوێت، بە وردیی ±1 °C.
- ئەگەر 5 خولەک لە سەرووی −15 °C مایەوە، لە شوێنی خۆیدا لێبدات و لە ماوەی یەک خولەکدا ئاگادارکردنەوەیەک بۆ مۆبایل بنێرێت.
- ناوخۆییەکە بەبێ یان کار بکات.
- لە کاتی بڕانی کارەبادا لانیکەم 12 کاتژمێر بە یەدەگ کار بکات.
- تۆماری هەموو خوێندنەوەیەک بۆ 30 ڕۆژ هەڵبگرێت.
A valve command OPEN travels over a radio link protected only by a CRC. An attacker changes it to SHUT. Will the valve notice? What should the designers use instead?
فەرمانی سەمامێک OPEN بە پەیوەندییەکی ڕادیۆیی دەڕوات کە تەنیا بە CRC پارێزراوە. دەیکاتە SHUT. ئایا سەمامەکە هەست دەکات؟ دیزاینەران دەبێت لە جیاتی ئەوە چی بەکار بهێنن؟
Show answerوەڵامەکە پیشان بدە
No. The attacker simply calculates a new CRC for SHUT, so the check passes. The designers should add a MAC with a secret key, or use authenticated encryption (AES-GCM, or Ascon-AEAD128 on very small devices). Then a changed command fails the check and is rejected.
نەخێر. بە سادەیی CRCـێکی نوێ بۆ SHUT دەژمێرێت، بۆیە پشکنینەکە تێدەپەڕێت. دیزاینەران دەبێت MACـێک بە نهێنی زیاد بکەن، یان بەکار بهێنن (AES-GCM، یان Ascon-AEAD128 لەسەر ئامێرە زۆر بچووکەکان). ئەو کاتە فەرمانی گۆڕاو لە پشکنینەکەدا دەکەوێت و ڕەت دەکرێتەوە.
For each job, say whether low latency or high throughput matters more: (a) streaming 1080p video from a farm camera; (b) a remote emergency stop for a pump; (c) uploading a 2 GB log file once a week; (d) a smoke alarm's message.
بۆ هەر کارێک بڵێ کەم گرنگترە یان بەرز: (أ) پەخشی ڤیدیۆی 1080p لە کامێرایەکی کێڵگەوە؛ (ب) وەستاندنی فریاکەوتنی پەمپێک لە دوورەوە؛ (ج) تۆماری 2 GB هەفتەی جارێک؛ (د) پەیامی ئاگادارکەرەوەیەکی دووکەڵ.
Show answerوەڵامەکە پیشان بدە
- (a) throughput — video is a steady stream of many bits;
- (b) latency — the stop must act at once;
- (c) throughput — a big file, and nobody waits for it;
- (d) latency, and a delivery guarantee — the message is small but urgent.
- (أ) — ڤیدیۆ ڕەوتێکی بەردەوامی زۆرە؛
- (ب) — وەستانەکە دەبێت دەستبەجێ کار بکات؛
- (ج) — فایلێکی گەورەیە و کەس چاوەڕێی ناکات؛
- (د) ، لەگەڵ گەرەنتیی گەیاندن — پەیامەکە بچووکە بەڵام بەپەلەیە.
Summaryپوختە
- Design starts with questions: domain, requirements, real time, safety, reliability, integrity, network needs and delivery guarantees.
- Real time means meeting a deadline: hard (late = failure, an airbag) or soft (late = worse, a video call).
- Safety-critical systems can hurt people when they fail, so they are tested strictly, decide locally, have backups and fail safe.
- Availability in time: 90 % ≈ 36.5 days down a year, 99.999 % ≈ 5 minutes.
- Checksums (CRC) catch accidents; MACs or authenticated encryption (AES-GCM, Ascon) also catch attackers. Encryption alone protects secrecy, not integrity.
- Latency is delay (ms); throughput is data per second (bit/s); not every packet needs a delivery guarantee.
- دیزاین بە پرسیار دەست پێدەکات: بوار، ، ، سەلامەتی، ، ، پێویستییەکانی و گەرەنتیی گەیاندن.
- واتە گەیشتن بە کاتی دیاریکراو: توند (دواکەوتن = شکست، کیسەی هەوا) یان نەرم (دواکەوتن = خراپتر، پەیوەندیی ڤیدیۆیی).
- کاتێک تێکدەچن دەتوانن زیان بە خەڵک بگەیەنن، بۆیە بە توندی تاقی دەکرێنەوە، لە شوێنی خۆیاندا بڕیار دەدەن، یەدەگیان هەیە و هەیە.
- بە کات: 90 % ≈ 36.5 ڕۆژ وەستان لە ساڵێکدا، 99.999 % ≈ 5 خولەک.
- (CRC) ڕووداو دەگرن؛ MAC یان (AES-GCM، Ascon) دەگرن. بە تەنیا نهێنی دەپارێزێت، نەک .
- ماوەی گەیشتنە (ms)؛ لە هەر چرکەیەکدایە (bit/s)؛ هەموو پێویستی بە گەرەنتیی گەیاندن نییە.
What is the difference between hard and soft real time?جیاوازیی نێوان کاتی ڕاستەقینەی توند و نەرم چییە؟
In hard real time a missed deadline is a failure (an airbag); in soft real time a late result is only worse (a video call).
لە دواکەوتن لە کاتی دیاریکراو شکستە (کیسەی هەوا)؛ لە ئەنجامی دواکەوتوو تەنیا خراپترە (پەیوەندیی ڤیدیۆیی).
Why is encryption alone not enough for integrity?بۆچی شفرەکردن بە تەنیا بۆ دروستی بەس نییە؟
Encryption hides the data but does not detect changes; an attacker can flip bits of encrypted data. A MAC or authenticated encryption detects them.
دەشارێتەوە بەڵام گۆڕانکاری نادۆزێتەوە؛ دەتوانێت شفرەکراو بگۆڕێت. MAC یان دەیاندۆزنەوە.
How much downtime does 99.999 % allow?99.999 % ڕێگە بە چەند کاتی وەستان دەدات؟
About 5.3 minutes a year.
نزیکەی 5.3 خولەک لە ساڵێکدا.
When is losing a packet acceptable?ونبوونی پاکێتێک کەی قبووڵە؟
When the next message soon replaces it, such as a temperature reading every minute — not for alarms or firmware updates.
کاتێک پەیامی داهاتوو زوو جێگای دەگرێتەوە، وەک خوێندنەوەی پلەی گەرمی هەموو خولەکێک — نەک بۆ ئاگادارکردنەوە یان .
Lesson complete!وانەکە تەواو بوو!
Well done. Review the key terms, then go on to the next lesson.دەستخۆش. سەیرێکی زاراوە سەرەکییەکان بکەرەوە، پاشان بڕۆ بۆ وانەی داهاتوو.
Key termsزاراوە سەرەکییەکان
Where Should the Thinking Happen?بیرکردنەوە دەبێت لە کوێ ڕووبدات؟
Related lecturesوانە پەیوەندیدارەکان
- Where Should the Thinking Happen?بیرکردنەوە دەبێت لە کوێ ڕووبدات؟
- Cloud, Fog and Edge Computingهەورەژمێرکاری، ژمێرکاریی تەم و ژمێرکاریی لێوار
- Layers: Organising an IoT Systemچینەکان: ڕێکخستنی سیستەمێکی IoT
- Sending IoT Data: HTTP, JSON and MQTTناردنی دراوەی IoT: HTTP، JSON و MQTT
- Keeping IoT Devices Safe and Privateئامێرەکانی IoT: ئاسایش و تایبەتێتی
- What Is an Embedded System?سیستەمی چەسپێنراو چییە؟
- Encryption, Hashing and Digital Signaturesشفرەکردن، هاشکردن و واژووە دیجیتاڵییەکان
- Confidentiality, Integrity and Availabilityبەنهێنی مانەوە، دروستی و بەردەستبوون
- Computer Communicationsپەیوەندیی کۆمپیوتەر
References and further readingسەرچاوەکان و خوێندنەوەی زیاتر
- UNSW COMP9242 Advanced Operating Systems (2023), Real-Time Systems slides by Gernot Heiser (CC BY 4.0): real time is not real fast; hard, firm and soft real time; airbag deadline 20 ms
- NIST CSRC glossary: Message authentication code (MAC)
- NIST CSRC glossary: Checksum
- NIST CSRC glossary: Cyclic redundancy check (CRC) — not a cryptographic hash, for accidental changes
- NIST SP 800-232 (August 2025): Ascon-Based Lightweight Cryptography Standards for Constrained Devices
- NIST SP 800-38D: Galois/Counter Mode (GCM), authenticated encryption with associated data
- OWASP Cryptographic Storage Cheat Sheet: use authenticated modes (GCM, CCM); otherwise add separate authentication (Encrypt-then-MAC)
- AWS: What's the difference between throughput and latency? (with bandwidth)
- MQTT.org: MQTT — the standard for IoT messaging
This lecture is a first edition. The Kurdish text and terminology are waiting for review by Kurdish IT teachers.ئەم وانەیە چاپی یەکەمە. دەقە کوردییەکە و زاراوەکانی چاوەڕێی پێداچوونەوەی مامۆستایانی کوردی بواری IT ن.