ESP32-C3 Kasadar Mara waya
ESP32-C3 Kasadar Mara waya
Cikakken Jagora ga IoT
Espressif Systems Yuni 12, 2023
Ƙayyadaddun bayanai
- Samfura: ESP32-C3 Kasadar Mara waya
- Mai ƙera: Espressif Systems
- Ranar: Yuni 12, 2023
Umarnin Amfani da samfur
Shiri
Kafin amfani da ESP32-C3 Wireless Adventure, tabbatar kana
saba da ra'ayoyi da gine-gine na IoT. Wannan zai taimaka
kun fahimci yadda na'urar ta dace da mafi girman yanayin yanayin IoT
da yuwuwar aikace-aikacen sa a cikin gidaje masu wayo.
Gabatarwa da Aiwatar da Ayyukan IoT
A cikin wannan sashin, zaku koya game da ayyukan IoT na yau da kullun,
gami da na'urori na yau da kullun don na'urorin IoT na yau da kullun, ƙirar asali
na aikace-aikacen abokin ciniki, da dandamali na girgije na IoT gama gari. Wannan zai
samar muku da tushe don fahimta da ƙirƙirar naku
na kansa ayyukan IoT.
Ayyuka: Smart Light Project
A cikin wannan aikin aikin, zaku koyi yadda ake ƙirƙirar mai kaifin baki
haske ta amfani da ESP32-C3 Wireless Adventure. Tsarin aikin,
ayyuka, hardware shirye-shirye, da kuma ci gaban tsari zai zama
yayi bayani dalla-dalla.
Tsarin Aikin
Aikin ya ƙunshi sassa da yawa, ciki har da
ESP32-C3 Wireless Adventure, LEDs, firikwensin, da gajimare
baya.
Ayyukan Ayyuka
Aikin haske mai wayo yana ba ku damar sarrafa haske da
launi na LEDs daga nesa ta hanyar wayar hannu ko web
dubawa.
Shirye-shiryen Hardware
Don shirya don aikin, kuna buƙatar tattara
abubuwan da suka dace na hardware, kamar ESP32-C3 Wireless
Adventure Board, LEDs, resistors, da wutar lantarki.
Tsarin Ci gaba
Tsarin ci gaba ya haɗa da kafa ci gaba
yanayi, lambar rubutu don sarrafa LEDs, haɗi zuwa
girgije backend, da kuma gwada ayyukan masu wayo
haske.
Gabatarwa zuwa ESP RainMaker
ESP RainMaker babban tsari ne don haɓaka IoT
na'urori. A cikin wannan sashe, zaku koyi menene ESP RainMaker kuma
yadda za a iya aiwatar da shi a cikin ayyukanku.
Menene ESP RainMaker?
ESP RainMaker dandamali ne na tushen girgije wanda ke ba da saiti na
kayan aiki da sabis don ginawa da sarrafa na'urorin IoT.
Aiwatar da ESP RainMaker
Wannan sashe yana bayyana mabanbantan abubuwan da ke tattare da su
aiwatar da ESP RainMaker, gami da sabis na da'awar,
Wakilin RainMaker, Cloud backend, da RainMaker Client.
Ayyuka: Maɓalli don Haɓakawa tare da ESP RainMaker
A cikin wannan sashe na aikin, zaku koyi game da mahimman abubuwan da za su
Yi la'akari lokacin haɓakawa tare da ESP RainMaker. Wannan ya haɗa da na'ura
da'awar, aiki tare da bayanai, da sarrafa mai amfani.
Siffofin ESP RainMaker
ESP RainMaker yana ba da fasali daban-daban don sarrafa mai amfani, ƙare
masu amfani, da masu gudanarwa. Waɗannan fasalulluka suna ba da izinin na'ura mai sauƙi
saitin, sarrafa ramut, da saka idanu.
Kafa Muhallin Ci Gaba
Wannan sashe yana ba da ƙarewaview ESP-IDF (Espressif IoT
Tsarin ci gaba), wanda shine tsarin ci gaba na hukuma
don na'urorin tushen ESP32. Ya bayyana daban-daban versions na
ESP-IDF da yadda za a kafa yanayin ci gaba.
Hardware da Ci gaban Direba
Tsarin Hardware na Samfuran Hasken Waya bisa ESP32-C3
Wannan sashe yana mai da hankali kan ƙirar kayan masarufi na haske mai wayo
samfurori bisa ESP32-C3 Wireless Adventure. Yana rufe da
fasali da abun da ke ciki na samfurin haske mai kaifin baki, kazalika da
ƙirar kayan aikin ESP32-C3 core tsarin.
Fasaloli da Haɗin Samfuran Hasken Smart
Wannan karamin sashe yana bayanin fasali da abubuwan da suke yin
up smart haske kayayyakin. Yana magana akan ayyuka daban-daban
da la'akari da ƙira don ƙirƙirar fitilu masu wayo.
Tsarin Hardware na ESP32-C3 Core System
Tsarin kayan masarufi na ESP32-C3 core system ya haɗa da ƙarfi
wadata, jerin wutar lantarki, sake saitin tsarin, filasha SPI, tushen agogo,
da kuma la'akari da RF da eriya. Wannan karamin sashi yana bayarwa
cikakken bayani akan wadannan bangarorin.
FAQ
Tambaya: Menene ESP RainMaker?
A: ESP RainMaker dandamali ne na tushen girgije wanda ke ba da kayan aiki
da sabis don ginawa da sarrafa na'urorin IoT. Yana sauƙaƙa
tsarin haɓakawa kuma yana ba da damar saitin na'ura mai sauƙi, nesa
sarrafawa, da kuma saka idanu.
Tambaya: Ta yaya zan iya kafa yanayin ci gaba don
ESP32-C3?
A: Don saita yanayin haɓaka don ESP32-C3, kuna buƙata
don shigar da ESP-IDF (Espressif IoT Development Framework) da
saita shi bisa ga umarnin da aka bayar. ESP-IDF shine
Tsarin ci gaban hukuma don na'urorin tushen ESP32.
Tambaya: Menene fasali na ESP RainMaker?
A: ESP RainMaker yana ba da fasali iri-iri, gami da mai amfani
gudanarwa, fasalin mai amfani na ƙarshe, da fasalin gudanarwa. Gudanar da mai amfani
yana ba da damar da'awar na'ura mai sauƙi da aiki tare da bayanai. Ƙarshen mai amfani
fasalulluka suna ba da damar sarrafa nesa na na'urori ta hanyar wayar hannu ko
web dubawa. Abubuwan gudanarwa suna ba da kayan aiki don sa ido kan na'urar
da gudanarwa.
ESP32-C3 Kasadar Mara waya
Cikakken Jagora ga IoT
Espressif Systems Yuni 12, 2023
Abubuwan da ke ciki
Na Shiri
1
1 Gabatarwa zuwa IoT
3
1.1 Gine-gine na IoT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Aikace-aikacen IoT a cikin Smart Homes. . . . . . . . . . . . . . . . . . . . . . . . . . 6
2 Gabatarwa da Aiwatar da Ayyukan IoT
9
2.1 Gabatarwa zuwa Yawan Ayyukan IoT. . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.1 Modules na asali don Na'urorin IoT na gama gari. . . . . . . . . . . . . . . . . 9
2.1.2 Tushen Modulolin Aikace-aikacen Abokin ciniki. . . . . . . . . . . . . . . . . . . 10
2.1.3 Gabatarwa zuwa Tsarin Gajimare na IoT gama gari. . . . . . . . . . . . . . 11
2.2 Aiki: Aikin Haske mai Wayo. . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2.1 Tsarin Ayyuka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.2 Ayyukan Ayyuka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.3 Shirye-shiryen Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.4 Tsarin Ci Gaba . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
3 Gabatarwa zuwa ESP RainMaker
19
3.1 Menene ESP RainMaker? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.2 Aiwatar da ESP RainMaker. . . . . . . . . . . . . . . . . . . . . . 21
3.2.1 Sabis na Da'awar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.2 Wakilin RainMaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2.3 Cloud Backend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2.4 Abokin ciniki na RainMaker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3 Ayyuka: Mahimman Abubuwan Haɓakawa tare da ESP RainMaker. . . . . . . . . . . . 25
3.4 Siffofin ESP RainMaker. . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.1 Gudanar da Mai amfani. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4.2 Ƙarshen Ayyukan Mai amfani. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.4.3 Abubuwan Gudanarwa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.5 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4 Kafa Muhallin Ci Gaba
31
4.1 ESP-IDF Samaview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1.1 Siffofin ESP-IDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3
4.1.2 ESP-IDF Git Gudun Aiki. . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1.3 Zaɓan Sigar Dace . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1.4 Samaview na ESP-IDF SDK Directory . . . . . . . . . . . . . . . . . . . . 34 4.2 Kafa ESP-IDF Haɓaka Muhalli. . . . . . . . . . . . . . . . . 38 4.2.1 Kafa ESP-IDF Haɓaka Muhalli akan Linux . . . . . . . . 38 4.2.2 Kafa ESP-IDF Haɓaka Muhalli akan Windows . . . . . . 40 4.2.3 Kafa ESP-IDF Haɓaka Muhalli akan Mac . . . . . . . . . 45 4.2.4 Shigar da lambar VS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 4.2.5 Gabatarwa ga Muhalli na Ci Gaba na ɓangare na uku. . . . . . . . 46 4.3 Tsarin Haɗin ESP-IDF. . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.1 Tushen Ka'idodin Tsarin Tari. . . . . . . . . . . . . . . . . . 47 4.3.2 Aikin File Tsarin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.3.3 Dokokin Gina Tsohuwar Tsarin Tari. . . . . . . . . . . . . 50 4.3.4 Gabatarwa ga Rubutun Haɗa . . . . . . . . . . . . . . . . . . 51 4.3.5 Gabatarwa zuwa Dokokin gama gari . . . . . . . . . . . . . . . . . . . 52 4.4 Ayyuka: Haɗa Exampda Shirin "Blink" . . . . . . . . . . . . . . . . . . 53 4.4.1 Example Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.4.2 Haɗa Shirin Blink . . . . . . . . . . . . . . . . . . . . . . . 56 4.4.3 Walƙiya Shirin Blink . . . . . . . . . . . . . . . . . . . . . . . . 59 4.4.4 Binciken Serial Log Port na Shirin Blink. . . . . . . . . . . . . . 60 4.5 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
II Hardware da Ci gaban Direba
65
5 Tsarin Hardware na Samfuran Hasken Waya bisa ESP32-C3
67
5.1 Fasaloli da Haɗin Samfuran Hasken Waya. . . . . . . . . . . . . . . 67
5.2 Tsarin Hardware na ESP32-C3 Core System. . . . . . . . . . . . . . . . . . . 70
5.2.1 Samar da Wutar Lantarki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.2.2 Lantarki-kan Jeri da Sake saitin Tsarin . . . . . . . . . . . . . . . . . . 74
5.2.3 SPI Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2.4 Agogo Tushen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2.5 RF da Eriya . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.2.6 Matse Fin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.2.7 GPIO da PWM Mai Sarrafa . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.3 Aiki: Gina Tsarin Haske mai Wayo tare da ESP32-C3. . . . . . . . . . . . . 80
5.3.1 Zaɓan Moduloli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.3.2 Saita GPIOs na Siginonin PWM. . . . . . . . . . . . . . . . . . . . 82
5.3.3 Zazzagewar Firmware da Ƙaddamarwar Interface. . . . . . . . . . . . 82
5.3.4 Jagorori don Zane na RF. . . . . . . . . . . . . . . . . . . . . . . . . . 84 5.3.5 Sharuɗɗa don Ƙirƙirar Samar da Wuta. . . . . . . . . . . . . . . . . . . 86 5.4 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6 Ci gaban Direba
87
6.1 Tsarin Ci gaban Direba . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
6.2 ESP32-C3 Aikace-aikacen Wuta. . . . . . . . . . . . . . . . . . . . . . . . . 88
6.3 Tushen Direban LED. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.3.1 Wuraren Launi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.3.2 LED Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.3.3 LED Dimming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
6.3.4 Gabatarwa zuwa PWM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.4 LED Dimming Dimming Development Driver. . . . . . . . . . . . . . . . . . . . . . . . 96
6.4.1 Ma'ajiya mara ƙarfi (NVS) . . . . . . . . . . . . . . . . . . . . . . . . 97
6.4.2 Mai Kula da PWM LED (LEDC) . . . . . . . . . . . . . . . . . . . . . . . 98
6.4.3 LED PWM Shirye-shiryen . . . . . . . . . . . . . . . . . . . . . . . . . . 100
6.5 Aiki: Ƙara Direbobi zuwa Aikin Hasken Waya. . . . . . . . . . . . . . . . . 103
6.5.1 Button Direba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.5.2 LED Dimming Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.6 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
III Sadarwa da Sarrafa mara waya
109
7 Kanfigareshan Wi-Fi da Haɗin kai
111
7.1 Tushen Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.1.1 Gabatarwa zuwa Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.1.2 Juyin Halitta na IEEE 802.11 . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.1.3 Wi-Fi Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
7.1.4 Haɗin Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.2 Tushen Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
7.2.1 Gabatarwa zuwa Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . 123
7.2.2 Ka'idodin Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
7.2.3 Haɗin Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
7.3 Saitin hanyar sadarwar Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
7.3.1 Jagorar Kanfigareshan hanyar sadarwa ta Wi-Fi. . . . . . . . . . . . . . . . . . . . 131
7.3.2 SoftAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7.3.3 SmartConfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
7.3.4 Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
7.3.5 Wasu Hanyoyi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
7.4 Wi-Fi Shirye-shiryen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 7.4.1 Abubuwan Wi-Fi a cikin ESP-IDF. . . . . . . . . . . . . . . . . . . . . . . 139 7.4.2 Motsa jiki: Haɗin Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . 141 7.4.3 Motsa jiki: Haɗin Wi-Fi mai wayo. . . . . . . . . . . . . . . . . . . . . 145
7.5 Aiki: Kanfigareshan Wi-Fi a cikin Ayyukan Hasken Waya. . . . . . . . . . . . . . . 156 7.5.1 Haɗin Wi-Fi a cikin Smart Light Project. . . . . . . . . . . . . . . . . 156 7.5.2 Saitin Wi-Fi Smart . . . . . . . . . . . . . . . . . . . . . . . . . 157
7.6 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8 Sarrafa Gida
159
8.1 Gabatarwa zuwa Gudanar da Gida. . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.1.1 Aikace-aikacen Ikon Gida . . . . . . . . . . . . . . . . . . . . . . . . 161
Farashin 8.1.2tages of Local Control . . . . . . . . . . . . . . . . . . . . . . . . 161
8.1.3 Gano Na'urorin Sarrafawa ta Wayoyin Waya . . . . . . . . . . 161
8.1.4 Sadarwar Bayanai Tsakanin Wayoyin Waya Da Na'urori. . . . . . . . 162
8.2 Hanyoyin Gano Gano gama gari . . . . . . . . . . . . . . . . . . . . . . . . 162
8.2.1 Watsawa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
8.2.2 Multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
8.2.3 Kwatanta Tsakanin Watsa Labarai da Multicast . . . . . . . . . . . . . . 176
8.2.4 Multicast Application Protocol mDNS don Gano Gida. . . . . . . . 176
8.3 Ka'idojin Sadarwa na gama gari don Bayanan Gida. . . . . . . . . . . . . . . 179
8.3.1 Tsarin Gudanar da Watsawa (TCP) . . . . . . . . . . . . . . . . . . . 179
8.3.2 HaperText Transfer Protocol (HTTP) . . . . . . . . . . . . . . . . . . . 185
8.3.3 Mai amfani Datagram Protocol (UDP). . . . . . . . . . . . . . . . . . . . . . 189
8.3.4 Ƙuntataccen Ƙa'idar Aikace-aikacen (CoAP) . . . . . . . . . . . . . . . . 192
8.3.5 Bluetooth Protocol. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
8.3.6 Takaitacciyar Ka'idojin Sadarwar Bayanai. . . . . . . . . . . . . . . 203
8.4 Garanti na Tsaron Bayanai . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
8.4.1 Gabatarwa zuwa Tsaro Layer Tsaro (TLS) . . . . . . . . . . . . . 207
8.4.2 Gabatarwa zuwa Datagram Transport Layer Security (DTLS) . . . . . . . 213
8.5 Aiki: Gudanar da Gida a cikin Ayyukan Hasken Smart. . . . . . . . . . . . . . . . . . 217
8.5.1 Ƙirƙirar uwar garken gida mai tushen Wi-Fi . . . . . . . . . . . . . . . 217
8.5.2 Tabbatar da Ayyukan Kula da Gida ta amfani da Rubutun . . . . . . . . . . . 221
8.5.3 Ƙirƙirar Sabar Kula da Gida ta tushen Bluetooth . . . . . . . . . . . . 222
8.6 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
9 Ikon Gajimare
225
9.1 Gabatarwa zuwa Ikon Nesa . . . . . . . . . . . . . . . . . . . . . . . . . . 225
9.2 Ka'idojin Sadarwar Bayanan Gajimare. . . . . . . . . . . . . . . . . . . . . . 226
9.2.1 MQTT Gabatarwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 9.2.2 Ka'idodin MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227 9.2.3 Tsarin Saƙon MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . 228 9.2.4 Kwatanta yarjejeniya . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 9.2.5 Kafa MQTT Broker akan Linux da Windows . . . . . . . . . . . . 233 9.2.6 Saita Abokin Ciniki na MQTT Bisa ESP-IDF. . . . . . . . . . . . . . . . 235 9.3 Tabbatar da Tsaron Bayanai na MQTT. . . . . . . . . . . . . . . . . . . . . . . . . . . 237 9.3.1 Ma'ana da Ayyukan Takaddun shaida. . . . . . . . . . . . . . . . . . . 237 9.3.2 Samar da Takaddun shaida a gida . . . . . . . . . . . . . . . . . . . . . . 239 9.3.3 Yana daidaita MQTT Broker . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.3.4 Yana Haɓaka Abokin Ciniki na MQTT . . . . . . . . . . . . . . . . . . . . . . . . . 241 9.4 Aiki: Ikon nesa ta hanyar ESP RainMaker. . . . . . . . . . . . . . . . 243 9.4.1 ESP RainMaker Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . 243 9.4.2 Node and Cloud Backend Communication Protocol . . . . . . . . . . . 244 9.4.3 Sadarwa tsakanin Abokin Ciniki da Ƙarfin Gajimare. . . . . . . . . . . 249 9.4.4 Matsayin Mai amfani. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 9.4.5 Basira Sabis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 9.4.6 Smart Light Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 9.4.7 RainMaker App da Haɗuwa na ɓangare na uku. . . . . . . . . . . . . . . 262 9.5 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
10 Haɓaka App ɗin Waya
269
10.1 Gabatarwa zuwa Haɓaka App ɗin Wayar hannu. . . . . . . . . . . . . . . . . . 269
10.1.1 Samaview na Haɓaka App ɗin Waya . . . . . . . . . . . . . . . 270
10.1.2 Tsarin Aikin Android . . . . . . . . . . . . . . . . . . . . . . 270
10.1.3 Tsarin IOS Project . . . . . . . . . . . . . . . . . . . . . . . . 271
10.1.4 Rayuwar Ayyukan Android. . . . . . . . . . . . . . . . . . . . . . 272
10.1.5 Rayuwa ta iOS ViewMai sarrafawa . . . . . . . . . . . . . . . . . . . . . . 273
10.2 Ƙirƙirar Sabon Aikin Wayar Hannu. . . . . . . . . . . . . . . . . . . . . 275
10.2.1 Ana Shiri don Ci gaban Android. . . . . . . . . . . . . . . . . . . 275
10.2.2 Ƙirƙirar Sabon Aikin Android . . . . . . . . . . . . . . . . . . . . . . 275
10.2.3 Ƙara Dogara don MyRainmaker . . . . . . . . . . . . . . . . . 276
10.2.4 Neman izini a cikin Android . . . . . . . . . . . . . . . . . . . . . . 277
10.2.5 Ana Shiri don Ci gaban iOS. . . . . . . . . . . . . . . . . . . . . . 277
10.2.6 Ƙirƙirar Sabon Aikin iOS . . . . . . . . . . . . . . . . . . . . . . . . 278
10.2.7 Ƙara Dogara don MyRainmaker . . . . . . . . . . . . . . . . . 279
10.2.8 Neman izini a cikin iOS . . . . . . . . . . . . . . . . . . . . . . . . . 280
10.3 Binciken Ayyukan Bukatun App. . . . . . . . . . . . . . . . . . 281
10.3.1 Nazari na Ayyukan Ayyukan Aikin. . . . . . . . . . . . 282
10.3.2 Binciken Bukatun Gudanar da Mai amfani. . . . . . . . . . . . . . . 282 10.3.3 Nazari na Samar da Na'urar da Buƙatun ɗaure . . . . . . . 283 10.3.4 Nazari na Abubuwan Bukatun Ikon Nesa. . . . . . . . . . . . . . . . 283 10.3.5 Binciken Bukatun Jadawalin . . . . . . . . . . . . . . . . . . . 284 10.3.6 Binciken Bukatun Cibiyar Mai amfani. . . . . . . . . . . . . . . . . . 285 10.4 Haɓaka Gudanar da Mai amfani. . . . . . . . . . . . . . . . . . . . . . . . 285 10.4.1 Gabatarwa zuwa RainMaker APIs . . . . . . . . . . . . . . . . . . . . . . 285 10.4.2 Ƙaddamar da Sadarwa ta Wayar Waya . . . . . . . . . . . . . . . . 286 10.4.3 Rijistar Asusu. . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 10.4.4 Shiga Account. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 10.5 Haɓaka Samar da Na'urar. . . . . . . . . . . . . . . . . . . . . . . 292 10.5.1 Na'urorin dubawa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 10.5.2 Haɗin Na'urorin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 10.5.3 Samar da Maɓallan Sirrin. . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.4 Samun Node ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 10.5.5 Na'urorin Samarwa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 10.6 Haɓaka Gudanar da Na'urar. . . . . . . . . . . . . . . . . . . . . . . . . . 302 10.6.1 Na'urori masu ɗaure zuwa Asusun gajimare. . . . . . . . . . . . . . . . . . . . 303 10.6.2 Samun Jerin Na'urori. . . . . . . . . . . . . . . . . . . . . . . . . . 305 10.6.3 Samun Matsayin Na'urar. . . . . . . . . . . . . . . . . . . . . . . . . . . 308 10.6.4 Canza Matsayin Na'ura. . . . . . . . . . . . . . . . . . . . . . . . . . 310 10.7 Haɓaka Tsare-tsare da Cibiyar Mai amfani. . . . . . . . . . . . . . . . . . . 313 10.7.1 Aiwatar da Ayyukan Jadawalin . . . . . . . . . . . . . . . . . . . . 313 10.7.2 Gudanar da Cibiyar Mai amfani. . . . . . . . . . . . . . . . . . . . . . . . . 315 10.7.3 Ƙarin Cloud APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 10.8 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
11 Haɓaka Firmware da Gudanar da Sigar
321
11.1 Haɓaka Firmware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
11.1.1 Samaview na Rarraba Tables . . . . . . . . . . . . . . . . . . . . . . . . 322
11.1.2 Tsarin Boot na Firmware. . . . . . . . . . . . . . . . . . . . . . . . . . . 324
11.1.3 Samaview na OTA Mechanism . . . . . . . . . . . . . . . . . . . . . 326
11.2 Gudanarwar Sigar Firmware. . . . . . . . . . . . . . . . . . . . . . . . . . 329
11.2.1 Alamar Firmware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
11.2.2 Juyawa da Anti-Rollback . . . . . . . . . . . . . . . . . . . . . . . . 331
11.3 Ayyuka: Sama da iska (OTA) Example . . . . . . . . . . . . . . . . . . . . . . . 332
11.3.1 Haɓaka Firmware Ta Mai Gidan Gida. . . . . . . . . . . . . . . . . 332
11.3.2 Haɓaka Firmware Ta hanyar ESP RainMaker. . . . . . . . . . . . . . . 335
11.4 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
IV Ingantawa da Samar da Jama'a
343
12 Gudanar da Wutar Lantarki da Ƙarfafa Ƙarfin Ƙarfi
345
12.1 ESP32-C3 Gudanar da Wuta. . . . . . . . . . . . . . . . . . . . . . . . . . . 345
12.1.1 Matsakaicin Matsakaicin Matsala. . . . . . . . . . . . . . . . . . . . . . . . 346
12.1.2 Kanfigareshan Gudanar da Wuta. . . . . . . . . . . . . . . . . . . . 348
12.2 ESP32-C3 Yanayin Ƙarfin Ƙarfi. . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
12.2.1 Yanayin barci-Modem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
12.2.2 Yanayin Barci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
12.2.3 Yanayin barci mai zurfi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
12.2.4 Amfanin Yanzu a Hanyoyin Wuta daban-daban. . . . . . . . . . . . . 358
12.3 Gudanar da Wuta da Ƙarfin Ƙarfin Ƙarfafawa. . . . . . . . . . . . . . . . . 359
12.3.1 Log Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
12.3.2 Gyaran GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
12.4 Aiki: Gudanar da Wutar Lantarki a cikin Aikin Hasken Waya. . . . . . . . . . . . . . . 363
12.4.1 Haɓaka fasalin Gudanar da Wuta. . . . . . . . . . . . . . . . . 364
12.4.2 Amfani da Makullan Gudanar da Wuta. . . . . . . . . . . . . . . . . . . . . . 365
12.4.3 Tabbatar da Amfani da Wuta. . . . . . . . . . . . . . . . . . . . . . . 366
12.5 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
13 Ingantattun Abubuwan Tsaro na Na'ura
369
13.1 Samaview Tsaro na Bayanan Na'urar IoT. . . . . . . . . . . . . . . . . . . . . . . 369
13.1.1 Me yasa Tabbataccen Bayanan Na'urar IoT? . . . . . . . . . . . . . . . . . . . . . . 370
13.1.2 Abubuwan buƙatu na asali don Tsaron Bayanan Na'urar IoT. . . . . . . . . . . . 371
13.2 Kariyar Mutuncin Bayanai . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
13.2.1 Gabatarwa zuwa Hanyar Tabbatar da Mutunci. . . . . . . . . . . . . . 372
13.2.2 Tabbatar da Mutuncin Bayanan Firmware. . . . . . . . . . . . . . . . . . 373
13.2.3 Fitample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
13.3 Kariyar Sirri. . . . . . . . . . . . . . . . . . . . . . . . . . 374
13.3.1 Gabatarwa zuwa Rufe bayanan . . . . . . . . . . . . . . . . . . . . . . 374
13.3.2 Gabatarwa zuwa Tsarin boye-boye na Flash. . . . . . . . . . . . . . . . . 376
13.3.3 Ajiye Maɓallin boye-boye Flash. . . . . . . . . . . . . . . . . . . . . . . 379
13.3.4 Yanayin Aiki na boye-boye Flash. . . . . . . . . . . . . . . . . . . . 380
13.3.5 Tsarin Sirri na Flash . . . . . . . . . . . . . . . . . . . . . . . . . . 381
13.3.6 Gabatarwa zuwa Rufewar NVS. . . . . . . . . . . . . . . . . . . . . . 383
13.3.7 FitampFahimtar Encryption da NVS Encryption. . . . . . . . . . . 384
13.4 Kariyar Halaccin Bayanai . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
13.4.1 Gabatarwa zuwa Sa hannu na Dijital . . . . . . . . . . . . . . . . . . . . . 386
13.4.2 Samaview na Tsare-tsare na Boot. . . . . . . . . . . . . . . . . . . . . 388
13.4.3 Gabatarwa zuwa Tabbataccen Boot Software. . . . . . . . . . . . . . . . . . . 388 13.4.4 Gabatarwa zuwa Hardware Amintaccen Boot. . . . . . . . . . . . . . . . . . 390 13.4.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394 13.5 Aiki: Halayen Tsaro A Samar da Jama'a. . . . . . . . . . . . . . . . . . 396 13.5.1 Fannin boye-boye da Tabbataccen Boot. . . . . . . . . . . . . . . . . . . . . 396 13.5.2 Ba da damar boye-boye na Flash da Tabbataccen Boot tare da Batch Flash Tools. . 397 13.5.3 Bayar da boye-boye na Flash da Tabbataccen Boot a cikin Ayyukan Hasken Smart. . . 398 13.6 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 398
14 Ƙona Firmware da Gwaji don Samar da Jama'a
399
14.1 Firmware Konawa a Samar da Jama'a. . . . . . . . . . . . . . . . . . . . . . 399
14.1.1 Ƙayyadaddun Ƙungiyoyin Bayanai. . . . . . . . . . . . . . . . . . . . . . . . . . 399
14.1.2 Firmware Kona . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
14.2 Gwajin Samar da Jama'a. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
14.3 Aiki: Bayanai na Samar da Jama'a a cikin Ayyukan Hasken Smart. . . . . . . . . . . . . 404
14.4 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
15 Fahimtar ESP: Platform Kulawa Mai Nisa
405
15.1 Gabatarwa zuwa Fahimtar ESP. . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
15.2 Farawa tare da Fahimtar ESP. . . . . . . . . . . . . . . . . . . . . . . . . 409
15.2.1 Farawa tare da Fahimtar ESP a cikin Aikin Haɓakawa. . . . . . 409
15.2.2 Gudun Example a cikin esp-hasken Project . . . . . . . . . . . . . . . 411
15.2.3 Bayar da Bayanin Coredump. . . . . . . . . . . . . . . . . . . . . 411
15.2.4 Daidaita rajistan ayyukan sha'awa. . . . . . . . . . . . . . . . . . . . . . . . 412
15.2.5 Dalili na Sake Yi Rahoto. . . . . . . . . . . . . . . . . . . . . . . . . 413
15.2.6 Rahoto Ma'auni na Musamman. . . . . . . . . . . . . . . . . . . . . . . . . 413
15.3 Aiwatarwa: Amfani da Fahimtar ESP a cikin Ayyukan Hasken Smart. . . . . . . . . . . . . . . 416
15.4 Takaitawa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Gabatarwa
ESP32-C3 shine Wi-Fi guda ɗaya da Bluetooth 5 (LE) microcontroller SoC, dangane da ginin tushen tushen RISC-V. Yana buga daidaitaccen ma'auni na iko, damar I/O, da tsaro, don haka yana ba da mafi kyawun farashi mai inganci don na'urorin da aka haɗa. Don nuna aikace-aikace daban-daban na dangin ESP32-C3, wannan littafin na Espressif zai kai ku tafiya mai ban sha'awa ta hanyar AIoT, farawa daga tushen ci gaban ayyukan IoT da saitin yanayi zuwa mai amfani.amples. Babi huɗu na farko suna magana game da IoT, ESP RainMaker da ESP-IDF. Babi na 5 da 6 taƙaice akan ƙirar kayan masarufi da haɓaka direba. Yayin da kuke ci gaba, zaku gano yadda ake daidaita aikinku ta hanyar sadarwar Wi-Fi da Apps ta hannu. A ƙarshe, za ku koyi inganta aikinku kuma ku sanya shi cikin samarwa da yawa.
Idan kai injiniya ne a fannonin da ke da alaƙa, injiniyan software, malami, ɗalibi, ko duk wanda ke da sha'awar IoT, wannan littafin na ku ne.
Kuna iya sauke lambar exampAn yi amfani da shi a cikin wannan littafin daga shafin Espressif akan GitHub. Don sabon bayani kan ci gaban IoT, da fatan za a bi asusun mu na hukuma.
Gabatarwa
Duniya Mai Fadakarwa
Hawan Intanet, Intanet na Abubuwa (IoT) ya yi babban halartan sa don zama sabon nau'in abubuwan more rayuwa a cikin tattalin arzikin dijital. Don kawo fasaha kusa da jama'a, Espressif Systems yana aiki don hangen nesa cewa masu haɓakawa daga kowane fanni na rayuwa za su iya amfani da IoT don magance wasu matsaloli masu mahimmanci na zamaninmu. Duniya na "Harkokin Sadarwar Dukan Abubuwa" shine abin da muke tsammani daga nan gaba.
Zayyana guntuwar namu yana yin muhimmin sashi na wannan hangen nesa. Zai zama marathon, yana buƙatar ci gaba akai-akai akan iyakokin fasaha. Daga "Canjin Wasan" ESP8266 zuwa jerin ESP32 da ke haɗa Wi-Fi da haɗin Bluetoothr (LE), sannan ESP32-S3 sanye take da haɓaka AI, Espressif bai daina yin bincike da haɓaka samfuran don mafita na AIoT ba. Tare da software na buɗe tushen mu, kamar Tsarin Ci gaban IoT ESP-IDF, Tsarin Rarraba Rarraba ESP-MDF, da Platform Haɗin Na'ura ESP RainMaker, mun ƙirƙiri wani tsari mai zaman kansa don gina aikace-aikacen AIoT.
Tun daga watan Yuli 2022, jigilar kayayyaki na Espressif's IoT chipsets sun wuce miliyan 800, wanda ke jagorantar kasuwar Wi-Fi MCU kuma yana haɓaka ɗimbin na'urori masu alaƙa a duk duniya. Neman ƙwarewa yana sa kowane samfurin Espressif ya zama babban nasara don babban matakin haɗin kai da ingancin farashi. Sakin ESP32-C3 yana nuna wani muhimmin ci gaba na fasahar ci gaban kanta ta Espressif. Yana da guda-core, 32-bit, RISC-V-based MCU tare da 400KB na SRAM, wanda zai iya aiki a 160MHz. Ya haɗa Wi-Fi 2.4 GHz da Bluetooth 5 (LE) tare da tallafi mai tsayi. Yana buga ma'auni mai kyau na iko, damar I/O, da tsaro, don haka yana ba da mafi kyawun mafita mai inganci don na'urorin da aka haɗa. Dangane da irin wannan ESP32-C3 mai ƙarfi, wannan littafin an yi niyya don taimaka wa masu karatu su fahimci ilimin da ke da alaƙa da IoT tare da cikakken kwatanci da ingantaccen aiki.amples.
Me yasa muka rubuta wannan littafi?
Espressif Systems ya fi kamfani na semiconductor. Har ila yau, kamfani ne na dandamali na IoT, wanda ko da yaushe yana ƙoƙari don samun nasara da sababbin abubuwa a fagen fasaha. A lokaci guda, Espressif ya buɗe tushen kuma ya raba tsarin aikin sa na kansa da tsarin software tare da al'umma, yana samar da yanayin yanayi na musamman. Injiniyoyi, masu ƙirƙira, da masu sha'awar fasaha suna haɓaka sabbin aikace-aikacen software bisa samfuran Espressif, sadarwa cikin yardar kaina, da raba ƙwarewar su. Kuna iya ganin ra'ayoyin masu haɓakawa masu ban sha'awa akan dandamali daban-daban koyaushe, kamar YouTube da GitHub. Shahararriyar samfuran Espressif ya zaburar da ɗimbin marubutan da suka samar da littattafai sama da 100 dangane da Chipset ɗin Espressif, a cikin harsuna sama da goma, waɗanda suka haɗa da Ingilishi, Sinanci, Jamusanci, Faransanci, da Jafananci.
Goyon baya da amincewar abokan hulɗar al'umma ne ke ƙarfafa ci gaba da ƙirƙira Espressif. "Muna ƙoƙari don sanya kwakwalwarmu, tsarin aiki, tsarin aiki, mafita, Cloud, ayyukan kasuwanci, kayan aiki, rubuce-rubuce, rubuce-rubuce, ra'ayoyi, da sauransu, sun fi dacewa da amsoshin da mutane ke buƙata a cikin mafi yawan matsalolin rayuwa na zamani. Wannan shi ne babban burin Espressif da kuma halin kirki." In ji Mista Teo Swee Ann, wanda ya kafa kuma Shugaba na Espressif.
Espressif yana darajar karatu da tunani. Kamar yadda ci gaba da haɓaka fasahar IoT ke haifar da buƙatu masu girma akan injiniyoyi, ta yaya za mu iya taimaka wa ƙarin mutane don saurin sarrafa kwakwalwan kwamfuta na IoT, tsarin aiki, tsarin software, tsarin aikace-aikacen da samfuran sabis na girgije? Kamar yadda ake cewa, yana da kyau a koya wa mutum yadda ake kifi da a ba shi kifi. A cikin zaman zuzzurfan tunani, ya zo gare mu cewa za mu iya rubuta littafi don tsara tsarin tsara mahimman ilimin ci gaban IoT. Mun buge shi, da sauri tattara ƙungiyar manyan injiniyoyi, kuma mun haɗu da ƙwarewar ƙungiyar fasaha a cikin shirye-shiryen da aka haɗa, kayan aikin IoT da haɓaka software, duk suna ba da gudummawa ga buga wannan littafin. A cikin aiwatar da rubuce-rubuce, mun yi iya ƙoƙarinmu don mu kasance masu gaskiya da adalci, mun cire kwakwar, mu yi amfani da taƙaitacciyar kalmomi don bayyana sarƙaƙƙiya da fara'a na Intanet na Abubuwa. Mun taƙaita tambayoyin gama gari a hankali, muna komawa ga ra'ayoyin da shawarwarin al'umma, don amsa tambayoyin da aka fuskanta a fili a cikin tsarin ci gaba, da kuma samar da ƙa'idodin ci gaba na IoT ga masu fasaha da masu yanke shawara.
Tsarin Littafi
Wannan littafin yana ɗaukar hangen nesa na injiniya kuma yana bayyana ilimin da ake buƙata don ci gaban ayyukan IoT mataki-mataki. Ya kunshi sassa hudu, kamar haka;
· Shiri (Babi na 1): Wannan bangare yana gabatar da tsarin gine-gine na IoT, tsarin tsarin aikin IoT na al'ada, da ESP RainMakerr girgije, da kuma yanayin ci gaba ESP-IDF, ta yadda za a kafa tushe mai tushe don ci gaban aikin IoT.
Haɓaka Hardware da Direba (Babi na 5): Dangane da ESP6-C32 chipset, wannan ɓangaren yana yin ƙarin bayani kan mafi ƙarancin tsarin kayan masarufi da haɓaka direbobi, kuma yana aiwatar da sarrafa dimming, ƙididdige launi, da sadarwar mara waya.
Sadarwar Sadarwa da Sarrafa mara waya (Babi na 7): Wannan ɓangaren yana bayanin tsarin daidaitawar Wi-Fi mai hankali dangane da guntu ESP11-C32, ka'idodin sarrafa gida & girgije, da na'urori na gida & nesa. Hakanan yana ba da tsare-tsare don haɓaka ƙa'idodin wayoyin hannu, haɓaka firmware, da sarrafa sigar.
· Haɓakawa da Samar da Jama'a (Babi na 12-15): Wannan ɓangaren an yi niyya ne don aikace-aikacen IoT na ci gaba, yana mai da hankali kan haɓaka samfuran a cikin sarrafa wutar lantarki, haɓaka ƙarancin ƙarfi, da ingantaccen tsaro. Hakanan yana gabatar da ƙona firmware da gwaji a cikin samarwa da yawa, da kuma yadda ake tantance yanayin aiki da rajistan ayyukan firmware na na'urar ta hanyar dandamalin sa ido na nesa ESP Insights.
Game da Tushen Code
Masu karatu na iya gudanar da tsohonample shirye-shirye a cikin wannan littafin, ko dai ta hanyar shigar da lambar da hannu ko ta amfani da lambar tushe da ke tare da littafin. Muna jaddada haɗin ka'idar da aiki, don haka saita sashin Ayyuka bisa tsarin Smart Light a kusan kowane babi. Dukkan lambobin an buɗe su. Maraba masu karatu don zazzage lambar tushe kuma ku tattauna shi a cikin sassan da suka shafi wannan littafi akan GitHub da dandalin mu na esp32.com. Lambar buɗe tushen wannan littafin tana ƙarƙashin sharuɗɗan lasisin Apache 2.0.
Bayanan Marubuci
Espressif Systems ne ya samar da wannan littafi bisa hukuma kuma manyan injiniyoyin kamfanin ne suka rubuta shi. Ya dace da manajoji da ma'aikatan R&D a cikin masana'antun da ke da alaƙa da IoT, malamai da ɗalibai masu alaƙa, da masu sha'awar fagen Intanet na Abubuwa. Muna fatan wannan littafin zai iya zama jagorar aiki, tunani, da littafin gefen gado, don zama kamar kyakkyawan malami da aboki.
A yayin da muke hada wannan littafi, mun yi ishara da wasu sakamakon binciken masana da masana da masana na gida da waje, kuma mun yi iya kokarinmu wajen kawo su bisa ka’idojin ilimi. Duk da haka, ba zai yuwu ba a sami wasu abubuwan da ba a iya mantawa da su ba, don haka a nan muna so mu nuna matukar girmamawa da godiya ga duk marubutan da suka dace. Bugu da kari, mun kawo bayanai daga Intanet, don haka muna mika godiya ga mawallafa da mawallafa na asali tare da ba su hakuri cewa ba za mu iya nuna tushen kowane bayani ba.
Domin samar da littafi mai inganci, mun shirya zagaye na tattaunawa na cikin gida, kuma mun koya daga shawarwari da ra'ayoyin masu karanta gwaji da editocin wallafe-wallafe. Anan, muna son sake gode muku don taimakon ku wanda duk ya ba da gudummawa ga wannan aiki mai nasara.
Na ƙarshe, amma mafi mahimmanci, godiya ga kowa da kowa a Espressif wanda ya yi aiki tuƙuru don haifuwa da haɓaka samfuranmu.
Ci gaban ayyukan IoT ya ƙunshi ilimi da yawa. Iyakance da tsawon littafin, da kuma matakin da gogewar marubucin, ba za a iya kaucewa ba. Don haka muna kara rokon masana da masu karatu su rika suka da gyara kurakuranmu. Idan kuna da wasu shawarwari game da wannan littafin, da fatan za a tuntuɓe mu a book@espressif.com. Muna jiran ra'ayoyin ku.
Yaya ake amfani da wannan littafin?
An buɗe lambar ayyukan da ke cikin wannan littafin. Kuna iya saukar da shi daga ma'ajin GitHub kuma ku raba tunaninku da tambayoyinku akan dandalinmu na hukuma. GitHub: https://github.com/espressif/book-esp32c3-iot-projects Forum: https://www.esp32.com/bookc3 A cikin littafin, za a sami sassan da aka haskaka kamar yadda aka nuna a kasa.
Lambar tushe A cikin wannan littafi, mun jaddada haɗin ka'ida da aiki, don haka saita sashe na Ayyuka game da aikin Haske mai haske a kusan kowane babi. Matakai masu dacewa da shafin tushe za a yiwa alama tsakanin layi biyu da suka fara da tag Lambar tushe.
NOTE/NASIHA Wannan shine inda zaku iya samun wasu mahimman bayanai da tunatarwa don nasarar gyara shirin ku. Za a yi musu alama tsakanin layukan kauri biyu da suka fara da tag NOTE ko TIPS.
Yawancin umarnin da ke cikin wannan littafin ana aiwatar da su ne a ƙarƙashin Linux, wanda halin “$”. Idan umarnin yana buƙatar gata na masu amfani don aiwatarwa, za a maye gurbin gaggawar da "#". Umurnin umarni akan tsarin Mac shine "%", kamar yadda aka yi amfani da shi a Sashe na 4.2.3 Sanya ESP-IDF akan Mac.
Za a buga rubutun jikin a cikin wannan littafi a cikin Yarjejeniya, yayin da lambar examples, sassa, ayyuka, masu canji, lamba file sunaye, kundayen adireshi, da kirtani za su kasance cikin Sabon Courier.
Umurnai ko rubutun da ake buƙatar shigar da mai amfani, da umarnin da za a iya shigar da su ta latsa maɓallin "Shigar" za a buga su a cikin Courier New m. Za a gabatar da loggs da tubalan lamba a cikin akwatunan shuɗi mai haske.
Exampda:
Na biyu, yi amfani da esp-idf/components/nvs flash/nvs partition generator/nvs partition gen.py don samar da binary partition NVS file akan mai masaukin ci gaba tare da umarni mai zuwa:
$ python $ IDF PATH / abubuwan da ke / nvs flash / nvs janareta bangare / nvs bangare gen.py –input mass prod.csv –fitarwa taro prod.bin –size NVS PARTITION SIZE
Babi na 1
Gabatarwa
ku
IoT
A ƙarshen karni na 20, tare da haɓaka hanyoyin sadarwar kwamfuta da fasahar sadarwa, Intanet cikin sauri ya shiga cikin rayuwar mutane. Yayin da fasahar Intanet ke ci gaba da girma, an haifi ra'ayin Intanet na Abubuwa (IoT). A zahiri, IoT yana nufin Intanet inda aka haɗa abubuwa. Yayin da ainihin Intanet ke karya iyakokin sararin samaniya da lokaci kuma ya rage nisa tsakanin "mutum da mutum", IoT ya sa "abubuwa" ya zama muhimmin ɗan takara, yana kawo "mutane" da "abubuwa" kusa da juna. A nan gaba mai zuwa, IoT an saita shi don zama ƙarfin tuƙi na masana'antar bayanai.
To, menene Intanet na Abubuwa?
Yana da wuya a iya bayyana Intanet na Abubuwa daidai, saboda ma'anarsa da girmansa suna ci gaba a koyaushe. A cikin 1995, Bill Gates ya fara kawo ra'ayin IoT a cikin littafinsa The Road Ahead. A taƙaice, IoT yana ba da damar abubuwa don musayar bayanai da juna ta hanyar Intanet. Babban burinsa shine kafa "Intanet na Komai". Wannan shine farkon fassarar IoT, da kuma tunanin fasaha na gaba. Shekaru XNUMX bayan haka, tare da saurin bunƙasa tattalin arziki da fasaha, tunanin yana zuwa cikin gaskiya. Daga na'urori masu wayo, gidaje masu wayo, birane masu wayo, Intanet na Motoci da na'urori masu sawa, zuwa "metaverse" da fasahar IoT ke goyan bayan, sabbin dabaru suna fitowa koyaushe. A cikin wannan babi, za mu fara da bayanin gine-ginen Intanet na Abubuwa, sannan mu gabatar da aikace-aikacen IoT da aka fi sani da shi, gida mai wayo, don taimaka muku samun cikakkiyar fahimtar IoT.
1.1 Gine-gine na IoT
Intanet na Abubuwa ya ƙunshi fasaha da yawa waɗanda ke da buƙatun aikace-aikacen daban-daban da nau'ikan nau'ikan masana'antu daban-daban. Don warware tsarin, mahimman fasahar fasaha da halayen aikace-aikacen IoT, ya zama dole a kafa haɗin gine-ginen gine-gine da daidaitaccen tsarin fasaha. A cikin wannan littafin, tsarin gine-gine na IoT an raba shi zuwa yadudduka huɗu: tsinkaye & Layer na sarrafawa, Layer na cibiyar sadarwa, Layer dandamali, da Layer aikace-aikace.
Fahimta & Sarrafa Layer A matsayin mafi mahimmancin tushen tsarin gine-gine na IoT, tsinkaye & Layer iko shine ainihin fahimtar cikakkiyar fahimtar IoT. Babban aikinsa shine tattarawa, ganowa da sarrafa bayanai. Ya ƙunshi na'urori iri-iri masu iya fahimta,
3
ganowa, sarrafawa da aiwatarwa, kuma yana da alhakin maidowa da nazarin bayanai kamar kaddarorin kayan aiki, yanayin ɗabi'a, da matsayin na'urar. Ta wannan hanyar, IoT yana samun fahimtar ainihin duniyar zahiri. Bayan haka, Layer kuma yana iya sarrafa matsayin na'urar.
Na'urorin da aka fi sani da wannan Layer sune na'urori masu auna firikwensin daban-daban, waɗanda ke taka muhimmiyar rawa wajen tattara bayanai da ganowa. Na'urori masu auna firikwensin kamar sassan jikin mutum ne, kamar na'urori masu auna firikwensin daidai da hangen nesa, na'urorin firikwensin sauti zuwa ji, firikwensin gas zuwa wari, da na'urori masu auna zafin jiki don taɓawa. Tare da duk waɗannan "gabobin ji", abubuwa sun zama "rai" kuma suna iya fahimtar fahimta, ganewa da magudi na duniyar zahiri.
Babban aikin Layer na cibiyar sadarwa shine watsa bayanai, gami da bayanan da aka samo daga ma'aunin tsinkaye & mai sarrafawa zuwa takamaiman manufa, da kuma umarnin da aka bayar daga layin aikace-aikacen a mayar da shi zuwa matakin tsinkaye & sarrafawa. Yana aiki azaman gadar sadarwa mai mahimmanci mai haɗa nau'ikan nau'ikan tsarin IoT. Don saita ainihin samfurin Intanet na Abubuwa, ya ƙunshi matakai biyu don haɗa abubuwa cikin hanyar sadarwa: samun damar Intanet da watsawa ta Intanet.
Samun damar Intanet yana ba da damar haɗin kai tsakanin mutum da mutum, amma ya kasa haɗa abubuwa cikin babban iyali. Kafin zuwan IoT, yawancin abubuwa ba su kasance “mai iya hanyar sadarwa ba”. Godiya ga ci gaba da ci gaban fasaha, IoT yana sarrafa haɗa abubuwa zuwa Intanet, don haka fahimtar haɗin kai tsakanin "mutane da abubuwa", da "abubuwa da abubuwa". Akwai hanyoyin gama gari guda biyu don aiwatar da haɗin Intanet: hanyar sadarwa ta hanyar sadarwa da hanyar sadarwar mara waya.
Hanyoyin shiga hanyar sadarwar waya sun haɗa da Ethernet, serial Communication (misali, RS-232, RS-485) da USB, yayin da hanyar sadarwar mara waya ta dogara da sadarwar mara waya, wanda za'a iya raba shi zuwa sadarwa mara waya ta gajeriyar hanya da sadarwa mara waya ta dogon zango.
Sadarwar mara igiyar gajeriyar hanya ta haɗa da ZigBee, Bluetoothr, Wi-Fi, Sadarwar Kusa da Filin (NFC), da Gano Mitar Rediyo (RFID). Sadarwar mara waya ta dogon zango ta haɗa da Ingantaccen Nau'in Sadarwar Na'ura (eMTC), LoRa, Narrow Band Internet of Things (NB-IoT), 2G, 3G, 4G, 5G, da sauransu.
Watsawa ta Intanet Hanyoyi daban-daban na samun damar Intanet suna haifar da daidaitacciyar hanyar watsa bayanai ta zahiri. Abu na gaba shine yanke shawarar wacce ka'idar sadarwa za ta yi amfani da ita don watsa bayanan. Idan aka kwatanta da tashoshi na Intanet, yawancin tashoshin IoT a halin yanzu suna da kaɗan
4 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
albarkatun da ake da su, kamar aikin sarrafawa, ƙarfin ajiya, ƙimar hanyar sadarwa, da sauransu, don haka ya zama dole a zaɓi ƙa'idar sadarwar da ta ƙunshi ƙarancin albarkatu a aikace-aikacen IoT. Akwai ka'idojin sadarwa guda biyu waɗanda ake amfani da su a ko'ina a yau: Message Queuing Telemetry Transport (MQTT) da Ƙuntataccen Aikace-aikacen Protocol (CoAP).
Platform Layer Layer dandamali galibi yana nufin dandamalin girgije na IoT. Lokacin da aka haɗa dukkan tashoshin IoT, ana buƙatar tattara bayanan su akan dandamalin girgije na IoT don ƙididdige su da adana su. Layer ɗin dandamali yana goyan bayan aikace-aikacen IoT a sauƙaƙe shiga da sarrafa manyan na'urori. Yana haɗa tashoshi na IoT zuwa dandamalin girgije, tattara bayanan tasha, yana ba da umarni zuwa tashoshi, don aiwatar da sarrafa nesa. A matsayin matsakaicin sabis don sanya kayan aiki zuwa aikace-aikacen masana'antu, dandamalin dandamali yana taka rawa mai haɗawa a cikin dukkan gine-ginen IoT, yana ɗaukar dabaru na kasuwanci da ƙima da ƙirar mahimman bayanai, wanda ba kawai zai iya fahimtar saurin samun na'urori ba, har ma yana ba da damar iyakoki masu ƙarfi. don saduwa da buƙatu daban-daban a cikin yanayin aikace-aikacen masana'antu. Layer na dandamali ya ƙunshi nau'ikan ayyuka kamar samun damar na'ura, sarrafa na'urar, sarrafa tsaro, sadarwar saƙo, aiki da kulawa, da aikace-aikacen bayanai.
· Samun na'ura, sanin haɗin kai da sadarwa tsakanin tashoshi da dandamali na girgije na IoT.
· Gudanar da na'ura, gami da ayyuka kamar ƙirƙira na'ura, kiyaye na'urar, canza bayanai, daidaita bayanai, da rarraba na'urar.
· Gudanar da tsaro, tabbatar da tsaro na watsa bayanan IoT daga mahangar tabbatar da tsaro da tsaro na sadarwa.
· Sadarwar saƙo, gami da hanyoyin watsawa guda uku, wato, tashar tashar tana aika bayanai zuwa dandamalin girgije na IoT, dandamalin girgije na IoT yana aika bayanai zuwa gefen uwar garken ko wasu dandamalin girgije na IoT, kuma bangaren uwar garken yana sarrafa na'urorin IoT daga nesa.
· Kula da O&M, gami da saka idanu da ganewar asali, haɓaka firmware, gyara kan layi, ayyukan log, da sauransu.
· Aikace-aikacen bayanai, wanda ya haɗa da ajiya, bincike da aikace-aikacen bayanai.
Layer Application Layer na aikace-aikacen yana amfani da bayanan daga dandamalin dandamali don sarrafa aikace-aikacen, tacewa da sarrafa su da kayan aikin kamar bayanan bayanai da software na bincike. Za a iya amfani da bayanan da aka samu don aikace-aikacen IoT na ainihi kamar su kiwon lafiya mai wayo, aikin gona mai wayo, gidaje masu wayo, da birane masu wayo.
Tabbas, ana iya raba tsarin gine-ginen IoT zuwa ƙarin yadudduka, amma komai yawan yadudduka da ya ƙunshi, ƙa'idar tushen ta kasance da gaske iri ɗaya. Koyo
Babi na 1. Gabatarwa ga IoT 5
game da gine-ginen IoT yana taimakawa zurfafa fahimtar fasahar IoT da gina ayyukan IoT masu cikakken aiki.
1.2 Aikace-aikacen IoT a cikin Smart Homes
IoT ya shiga cikin kowane fanni na rayuwa, kuma mafi kusancin aikace-aikacen IoT a gare mu shine gida mai wayo. Yawancin kayan aikin gargajiya yanzu suna sanye da na'urorin IoT ɗaya ko fiye, kuma yawancin sabbin gidaje da aka gina an tsara su da fasahar IoT tun daga farko. Hoto 1.1 yana nuna wasu na'urorin gida na yau da kullun.
Hoto 1.1. Na'urorin gida na yau da kullun Haɓaka haɓakar gida mai wayo za'a iya raba su zuwa samfuran wayayyun samfurantage, scene interconnection stage da masu hankali stage, kamar yadda aka nuna a hoto 1.2.
Hoto 1.2. Ci gaba stage of smart home 6 ESP32-C3 Wireless Adventure: Cikakken Jagora ga IoT
Na farko stage game da samfurori masu wayo. Bambanta da gidajen gargajiya, a cikin gidaje masu wayo, na'urorin IoT suna karɓar sigina tare da na'urori masu auna firikwensin, kuma ana haɗa su ta hanyar fasahar sadarwa mara waya kamar Wi-Fi, Bluetooth LE, da ZigBee. Masu amfani za su iya sarrafa samfura masu wayo ta hanyoyi daban-daban, kamar su aikace-aikacen wayar hannu, mataimakan murya, sarrafa lasifika mai wayo, da sauransu. Na biyu stage yana mai da hankali kan haɗin gwiwar yanayi. A cikin wannan stage, masu haɓakawa ba su ƙara yin la'akari da sarrafa samfur guda ɗaya mai wayo ba, amma haɗa samfuran wayo biyu ko fiye, sarrafa kai tsaye zuwa wani yanki, kuma a ƙarshe samar da yanayin yanayin al'ada. Domin misaliampHar ila yau, lokacin da mai amfani ya danna kowane maɓallin yanayin yanayi, fitilu, labule, da na'urorin sanyaya iska za a daidaita su ta atomatik zuwa abubuwan da aka saita. Tabbas, akwai buƙatun cewa an saita dabarun haɗin gwiwa da sauri, gami da yanayin faɗakarwa da ayyukan aiwatarwa. Ka yi tunanin cewa yanayin dumama kwandishan yana haifar da lokacin da zafin jiki na cikin gida ya faɗi ƙasa da 10 ° C; cewa da karfe 7 na safe ana kunna kida don tada mai amfani, sannan a bude labule masu wayo, sannan a fara girki shinkafa ko biredi ta hanyar socket mai hankali; yayin da mai amfani ya tashi ya gama wanke-wanke, an riga an ba da karin kumallo, ta yadda ba za a samu jinkirin zuwa wurin aiki ba. Yadda rayuwarmu ta dace! Na uku stage zuwa hankali stage. Kamar yadda ake samun ƙarin na'urorin gida masu wayo, haka kuma nau'ikan bayanan da aka samar. Tare da taimakon ƙididdigar girgije, manyan bayanai da basirar wucin gadi, yana kama da "ƙwaƙwalwar ƙwaƙwalwa" da aka dasa a cikin gidaje masu wayo, waɗanda ba sa buƙatar umarni akai-akai daga mai amfani. Suna tattara bayanai daga mu'amalar da ta gabata kuma suna koyon tsarin ɗabi'un mai amfani da abubuwan da ake so, don sarrafa ayyuka, gami da bayar da shawarwari don yanke shawara. A halin yanzu, yawancin gidaje masu wayo suna a wurin haɗin gwiwar stage. Yayin da ƙimar shiga da hankali na samfuran wayo ke ƙaruwa, ana cire shinge tsakanin ka'idojin sadarwa. A nan gaba, gidaje masu wayo za su kasance da gaske "masu wayo", kamar tsarin AI na Jarvis a cikin Iron Man, wanda ba zai iya taimakawa mai amfani kawai sarrafa na'urori daban-daban ba, kula da al'amuran yau da kullum, amma kuma yana da babban ikon sarrafa kwamfuta da tunani. A cikin masu hankali stage, 'yan adam za su sami ingantattun ayyuka duka da yawa da inganci.
Babi na 1. Gabatarwa ga IoT 7
8 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Babi Gabatarwa da Ayyukan Ayyuka na 2 IoT
A cikin Babi na 1, mun gabatar da tsarin gine-gine na IoT, da kuma ayyuka da alaƙar ra'ayi & kulawa, Layer cibiyar sadarwa, Layer dandamali, da Layer aikace-aikace, da kuma haɓaka gida mai wayo. Duk da haka, kamar lokacin da muka koyi fenti, sanin ilimin ka'idar ya yi nisa. Dole ne mu “sa hannunmu datti” don sanya ayyukan IoT a aikace don ƙware da fasaha da gaske. Bugu da kari, lokacin da aikin ke motsawa zuwa yawan samarwa stage, ya zama dole a yi la'akari da ƙarin dalilai kamar haɗin yanar gizo, daidaitawa, hulɗar dandalin girgije na IoT, sarrafa firmware da sabuntawa, sarrafa samar da taro, da tsarin tsaro. Don haka, menene muke buƙatar kulawa yayin haɓaka cikakken aikin IoT? A cikin Babi na 1, mun ambaci cewa gida mai wayo yana ɗaya daga cikin yanayin aikace-aikacen IoT na yau da kullun, kuma fitilu masu kyau suna ɗaya daga cikin kayan aiki mafi mahimmanci kuma masu amfani, waɗanda za a iya amfani da su a gidaje, otal-otal, wuraren motsa jiki, asibitoci, da sauransu. wannan littafi, za mu dauki aikin gina wani haske mai wayo a matsayin wurin farawa, mu yi bayanin abubuwan da ke tattare da shi, da kuma ba da jagoranci kan ci gaban ayyukan. Muna fatan za ku iya zana nassoshi daga wannan harka don ƙirƙirar ƙarin aikace-aikacen IoT.
2.1 Gabatarwa zuwa Yawan Ayyukan IoT
Dangane da ci gaba, ana iya rarraba kayan aikin asali na ayyukan IoT zuwa software da haɓaka kayan aikin na'urorin IoT, haɓaka aikace-aikacen abokin ciniki, da haɓaka dandamalin girgije na IoT. Yana da mahimmanci don bayyana ainihin kayan aikin aiki, waɗanda za a ƙara bayyana a cikin wannan sashe.
2.1.1 Modules na asali don Na'urorin IoT na gama gari
Haɓaka software da kayan masarufi na na'urorin IoT sun haɗa da mahimman kayayyaki masu zuwa: Tarin bayanai
A matsayin kasan Layer na gine-ginen IoT, na'urorin IoT na tsinkaye & Layer na sarrafawa suna haɗa na'urori masu auna firikwensin da na'urori ta hanyar guntuwar su da kayan aikin su don cimma tarin bayanai da sarrafa aiki.
9
Haɗin asusu da saitin farko Don yawancin na'urorin IoT, ɗaurin asusu da saitin farko ana kammala su a cikin tsari ɗaya na aiki, don ex.ample, haɗa na'urori tare da masu amfani ta hanyar saita hanyar sadarwar Wi-Fi.
Yin hulɗa tare da dandamali na girgije na IoT Don saka idanu da sarrafa na'urorin IoT, ya zama dole a haɗa su zuwa dandamali na girgije na IoT, don ba da umarni da bayar da rahoto ta hanyar hulɗa tsakanin juna.
Ikon na'ura Lokacin da aka haɗa tare da dandamali na girgije na IoT, na'urori na iya sadarwa tare da gajimaren kuma a yi rijista, ɗaure, ko sarrafawa. Masu amfani za su iya tambayar matsayin samfur kuma su aiwatar da wasu ayyuka akan wayar hannu ta hanyar dandamalin girgije na IoT ko ka'idojin sadarwa na gida.
Haɓaka na'urorin IoT na firmware kuma na iya samun haɓaka firmware dangane da bukatun masana'anta. Ta hanyar karɓar umarni da girgije ya aiko, haɓaka firmware da sarrafa sigar za a samu. Tare da wannan fasalin haɓaka firmware, zaku iya ci gaba da haɓaka ayyukan na'urorin IoT, gyara lahani, da haɓaka ƙwarewar mai amfani.
2.1.2 Na asali Modules na Abokin ciniki aikace-aikace
Aikace-aikacen abokin ciniki (misali, ƙa'idodin wayowin komai da ruwan) sun haɗa da manyan kayayyaki masu zuwa:
Tsarin lissafi da izini Yana goyan bayan izinin asusu da na'urar.
Ka'idodin wayo mai sarrafa na'ura yawanci sanye take da ayyuka masu sarrafawa. Masu amfani za su iya haɗawa cikin sauƙi zuwa na'urorin IoT, da sarrafa su kowane lokaci, ko'ina ta hanyar aikace-aikacen wayar hannu. A cikin gida mai kaifin basira, galibi ana sarrafa na'urori ta hanyar aikace-aikacen wayar hannu, wanda ba wai kawai yana ba da damar sarrafa na'urori kawai ba, har ma yana adana farashin ma'aikata. Sabili da haka, sarrafa na'ura ya zama dole don aikace-aikacen abokin ciniki, kamar sarrafa halayen aikin na'ura, sarrafa yanayin yanayi, tsarawa, sarrafa nesa, haɗin na'urar, da sauransu. , da sauransu, don sanya rayuwar gida ta fi dacewa da dacewa. Suna iya lokacin sanyaya iska, kashe shi daga nesa, saita hasken hallway ta atomatik da zarar an buɗe ƙofar, ko canza zuwa yanayin “theater” tare da maɓallin guda ɗaya.
Fadakarwa Aikace-aikacen Abokin ciniki suna sabunta matsayin na'urorin IoT na ainihi, da aika faɗakarwa lokacin da na'urori suka yi rashin ƙarfi.
10 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Bayan-tallace-tallace sabis abokin ciniki Smartphone Apps na iya samar da bayan-tallace-tallace sabis don samfurori, don warware matsalolin da suka shafi gazawar na'urar IoT da ayyukan fasaha a kan lokaci.
Ayyukan da aka nuna Don saduwa da buƙatun masu amfani daban-daban, ana iya ƙara wasu ayyuka, kamar Shake, NFC, GPS, da dai sauransu GPS na iya taimakawa wajen saita daidaiton ayyukan wurin daidai da wuri da nisa, yayin da aikin Shake yana bawa masu amfani damar saita umarnin aiwatar da takamaiman na'ura ko wurin ta hanyar girgiza.
2.1.3 Gabatarwa zuwa Tsarin Gajimare na IoT gama gari
IoT dandali ne na girgije wanda ke haɗa ayyuka kamar sarrafa na'ura, sadarwar tsaro na bayanai, da sarrafa sanarwar. Dangane da ƙungiyar da aka yi niyya da samun dama, dandamali na girgije na IoT za a iya raba su zuwa dandamali na girgije na jama'a na IoT (nan gaba ana kiransa "girgije na jama'a") da dandamalin girgije na IoT masu zaman kansu (wanda ake kira "girgije masu zaman kansu").
Gajimare na jama'a yawanci yana nuna dandali na girgije na IoT don kamfanoni ko daidaikun mutane, masu samar da dandamali suna sarrafawa da kiyaye su, kuma ana rabawa ta Intanet. Yana iya zama kyauta ko maras tsada, kuma yana ba da sabis a duk faɗin hanyar sadarwar jama'a, kamar Alibaba Cloud, Tencent Cloud, Baidu Cloud, AWS IoT, Google IoT, da sauransu. masu amfani da ƙarshen ƙasa don ƙirƙirar sabon sarkar ƙima da yanayin muhalli.
An gina gajimare mai zaman kansa don amfanin kasuwanci kawai, don haka yana ba da garantin mafi kyawun iko akan bayanai, tsaro, da ingancin sabis. Kamfanoni ne ke kula da ayyukan sa da kayan aikin sa daban, kuma kayan aikin tallafi da software kuma an sadaukar da su ga takamaiman masu amfani. Kamfanoni na iya keɓance sabis na girgije don biyan bukatun kasuwancin su. A halin yanzu, wasu masana'antun gida masu wayo sun riga sun sami dandamali na girgije na IoT masu zaman kansu kuma sun haɓaka aikace-aikacen gida masu wayo dangane da su.
Girgijen jama'a da girgije masu zaman kansu suna da nasu advantages, wanda za a yi bayani daga baya.
Don cimma haɗin sadarwa, ya zama dole don kammala aƙalla ci gaba da aka haɗa a gefen na'urar, tare da sabar kasuwanci, dandamalin girgije na IoT, da aikace-aikacen wayar hannu. Fuskantar irin wannan babban aikin, girgijen jama'a yana samar da kayan haɓaka software don na'urar-gefen na'ura da aikace-aikacen wayar hannu don hanzarta aiwatarwa. Duka gajimare na jama'a da masu zaman kansu suna ba da sabis da suka haɗa da samun damar na'urar, sarrafa na'urar, inuwar na'urar, da aiki da kiyayewa.
Samun damar na'ura dandamalin girgije na IoT yana buƙatar samar da ba kawai musaya don samun damar na'urar ta amfani da ladabi ba
Babi na 2. Gabatarwa da Aiwatar da Ayyukan IoT 11
irin su MQTT, CoAP, HTTPS, da WebSocket, amma kuma aikin tabbatar da tsaro na na'ura don toshe jabun na'urorin da ba bisa ka'ida ba, yadda ya kamata yana rage haɗarin lalacewa. Irin wannan tabbaci yawanci yana goyan bayan hanyoyi daban-daban, don haka lokacin da aka samar da na'urori da yawa, ya zama dole a riga an sanya takardar shaidar na'urar bisa ga tsarin tantancewa da aka zaɓa kuma a ƙone ta cikin na'urorin.
Gudanar da na'ura Aikin sarrafa na'urar da dandamali na girgije na IoT ke bayarwa ba zai iya taimakawa masana'antun kawai saka idanu matsayin kunnawa da matsayin kan layi na na'urorin su a cikin ainihin lokacin ba, har ma yana ba da damar zaɓuɓɓuka kamar ƙara / cire na'urori, dawo da, ƙara / share ƙungiyoyi, haɓaka firmware. , da sarrafa sigar.
Shadow na na'ura IoT dandamali na girgije na iya ƙirƙirar sigar kama-da-wane mai ɗorewa (inuwar na'ura) ga kowace na'ura, kuma ana iya daidaita matsayin inuwar na'urar kuma a samu ta app ɗin wayar hannu ko wasu na'urori ta hanyar ka'idodin watsa Intanet. Inuwar na'urar tana adana sabon matsayin da aka bayar da rahoto da matsayin da ake tsammanin kowace na'ura, kuma ko da na'urar tana layi, tana iya samun matsayin ta kiran APIs. Inuwar na'ura tana ba da APIs koyaushe, wanda ke sauƙaƙa gina ƙa'idodin wayowin komai da ruwan da ke mu'amala da na'urori.
Aiki da kulawa Ayyukan O&M sun haɗa da abubuwa uku: · Nuna ƙididdiga game da na'urorin IoT da sanarwa. · Gudanar da rajista yana ba da damar dawo da bayanai game da halayen na'ura, saƙo sama / ƙasa, da abun cikin saƙo. · Gyaran na'ura yana goyan bayan isar da umarni, sabuntawar daidaitawa, da kuma duba hulɗar tsakanin dandamalin girgije na IoT da saƙonnin na'ura.
2.2 Aiki: Aikin Hasken Waya
Bayan gabatarwar ka'idar a kowane babi, zaku sami sashin aiki mai alaƙa da aikin Smart Light don taimaka muku samun gogewa ta hannu. Aikin ya dogara ne akan guntu na Espressif's ESP32-C3 da ESP RainMaker IoT Cloud Platform, kuma yana rufe kayan aikin mara waya a cikin samfuran haske mai wayo, software da aka saka don na'urori masu wayo dangane da ESP32C3, aikace-aikacen wayar hannu, da hulɗar ESP RainMaker.
Lambar tushe Don ingantaccen koyo da haɓaka ƙwarewa, aikin a cikin wannan littafin an buɗe shi. Kuna iya zazzage lambar tushe daga ma'adanar GitHub a https://github. com/espressif/book-esp32c3-iot-projects.
12 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
2.2.1 Tsarin Ayyuka
Aikin Smart Light ya ƙunshi sassa uku: i. Na'urorin haske masu haske dangane da ESP32-C3, alhakin hulɗa tare da dandamali na girgije na IoT, da sarrafa sauyawa, haske da zafin launi na LED l.amp beads. ii. Ka'idodin wayar hannu (ciki har da aikace-aikacen kwamfutar hannu da ke gudana akan Android da iOS), suna da alhakin saita hanyar sadarwa na samfuran haske masu wayo, da kuma yin tambaya da sarrafa matsayinsu.
iii. Tsarin girgije na IoT bisa ESP RainMaker. Don sauƙaƙe, muna la'akari da dandamalin girgije na IoT da uwar garken kasuwanci gaba ɗaya a cikin wannan littafin. Za a bayar da cikakkun bayanai game da ESP RainMaker a Babi na 3.
Ana nuna ma'amala tsakanin tsarin aikin Smart Light da tsarin gine-gine na IoT a cikin Hoto 2.1.
Hoto 2.1. Tsarin aikin haske mai wayo
2.2.2 Ayyukan Ayyuka
Rarraba bisa ga tsari, ayyuka na kowane bangare sune kamar haka. Na'urori masu haske
· Tsarin hanyar sadarwa da haɗin kai. LED PWM iko, kamar sauyawa, haske, zazzabi mai launi, da sauransu. · Rufewa da amintaccen boot na Flash. · Haɓaka firmware da sarrafa sigar.
Babi na 2. Gabatarwa da Aiwatar da Ayyukan IoT 13
Ka'idodin Wayar hannu · Tsarin hanyar sadarwa da ɗaure na'ura. · Ikon samfurin haske mai wayo, kamar canzawa, haske, zazzabi mai launi, da sauransu · Saitunan atomatik ko saituna, misali, sauya lokaci. · Ikon gida/na nesa. · Rijistar mai amfani, shiga, da sauransu.
ESP RainMaker IoT dandamalin girgije · Ba da damar shiga na'urar IoT. · Samar da aikin na'ura APIs masu isa ga aikace-aikacen wayoyin hannu. · Haɓaka firmware da sarrafa sigar.
2.2.3 Shiri Hardware
Idan kuna sha'awar aiwatar da aikin a aikace, za ku kuma buƙaci kayan aiki masu zuwa: fitilu masu kyau, wayoyin hannu, hanyoyin sadarwa na Wi-Fi, da kwamfutar da ta cika buƙatun shigarwa na yanayin ci gaba. Fitilu masu wayo
Fitillun wayo wani sabon nau'in kwararan fitila ne, wanda siffarsa daidai yake da kwan fitila na gabaɗaya. Haske mai wayo ya ƙunshi capacitor matakan samar da wutar lantarki, ƙirar mara waya (tare da ginanniyar ESP32-C3), mai sarrafa LED da RGB LED matrix. Lokacin da aka haɗa zuwa wuta, 15 V DC voltage fitarwa bayan capacitor mataki-saukar, diode gyare-gyare, da tsari yana ba da makamashi ga mai sarrafa LED da matrix LED. Mai kula da LED zai iya aika manyan matakai da ƙananan matakai ta atomatik a wasu tazara, yana canza matrix na RGB LED tsakanin rufaffiyar (fitilu a kunne) da buɗewa (a kashe fitilu), ta yadda zai iya fitar da cyan, rawaya, kore, purple, blue, ja, da farin haske. Model mara waya yana da alhakin haɗawa da na'ura mai ba da hanya tsakanin hanyoyin sadarwa na Wi-Fi, karɓa da ba da rahoton matsayin fitillu masu wayo, da aika umarni don sarrafa LED.
Hoto 2.2. Haske mai wayo da aka kwaikwayi
A farkon ci gaban stage, zaku iya siffanta haske mai wayo ta amfani da allon ESP32-C3DevKitM-1 da aka haɗa da RGB LED l.amp beads (duba Hoto 2.2). Amma ya kamata ku
14 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
lura cewa ba wannan ba ita ce kaɗai hanyar haɗa haske mai wayo ba. Ƙirar ƙirar aikin a cikin wannan littafin kawai ya ƙunshi ƙirar mara waya (tare da ginanniyar ESP32-C3), amma ba cikakkiyar ƙirar kayan aikin haske mai wayo ba. Bugu da ƙari, Espressif kuma yana samar da ESP32-C3 na tushen ci gaban sauti na ESP32C3-Lyra don sarrafa fitilu tare da sauti. Hukumar tana da musaya don makirufo da lasifika kuma suna iya sarrafa filayen LED. Ana iya amfani da shi don haɓaka matsananci-ƙananan kuɗi, masu watsa shirye-shiryen sauti masu inganci da raye-rayen raye-raye. Hoto 2.3 yana nuna allon ESP32-C3Lyra wanda aka haɗa tare da tsiri na fitilun LED 40.
Hoto 2.3. ESP32-C3-Lyra an haɗa shi da tsiri na fitilun LED 40
Wayoyin Waya (Android/iOS) Aikin Smart Light ya ƙunshi haɓaka ƙa'idar wayar hannu don kafawa da sarrafa samfuran haske masu wayo.
Masu amfani da hanyar sadarwa na Wi-Fi masu amfani da hanyar sadarwa na Wi-Fi suna canza siginar cibiyar sadarwar waya da siginar cibiyar sadarwar wayar hannu zuwa siginar cibiyar sadarwar mara waya, don kwamfutoci, wayoyi, allunan, da sauran na'urori mara waya don haɗawa da hanyar sadarwa. Don misaliampHar ila yau, broadband a cikin gida kawai yana buƙatar haɗawa da na'ura mai ba da hanya tsakanin hanyoyin sadarwa na Wi-Fi don cimma hanyar sadarwa mara waya ta na'urorin Wi-Fi. Matsakaicin ƙa'idodin ƙa'idodin ƙa'idodin ƙa'idodin Wi-Fi da ke tallafawa shine IEEE 802.11n, tare da matsakaicin TxRate na 300 Mbps, ko 600 Mbps a matsakaici. Suna dacewa da baya tare da IEEE 802.11b da IEEE 802.11g. ESP32-C3 guntu ta Espressif yana goyan bayan IEEE 802.11b/g/n, don haka za ku iya zaɓar maɓalli ɗaya (2.4 GHz) ko dual-band (2.4 GHz da 5 GHz) Wi-Fi na'ura mai ba da hanya tsakanin hanyoyin sadarwa.
Za a gabatar da yanayin ci gaban kwamfuta (Linux/macOS/Windows) a cikin Babi na 4. Babi na 2. Gabatarwa da Ayyukan IoT 15
2.2.4 Tsarin Ci gaba
Hoto 2.4. Matakan haɓaka aikin Smart Light
Zane Hardware Tsarin kayan aikin na'urorin IoT yana da mahimmanci ga aikin IoT. Cikakken aikin haske mai wayo ana nufin samar da alamp aiki a karkashin mains wadata. Masana'antun daban-daban suna samar da lamps na salo daban-daban da nau'ikan direbobi, amma tsarin su mara waya yawanci aiki iri ɗaya ne. Don sauƙaƙe tsarin ci gaba na aikin Smart Ligh, wannan littafin ya ƙunshi ƙirar kayan masarufi da haɓaka software na na'urori mara waya.
Tsarin dandamali na girgije na IoT Don amfani da dandamali na girgije na IoT, kuna buƙatar saita ayyukan akan bangon baya, kamar ƙirƙirar samfura, ƙirƙirar na'urori, saita kaddarorin na'urar, da sauransu.
Haɓaka software don na'urorin IoT Aiwatar da ayyukan da ake tsammani tare da ESP-IDF, SDK na gefen na'urar Espressif, gami da haɗawa da dandamali na girgije na IoT, haɓaka direbobin LED, da haɓaka firmware.
Haɓaka app ɗin wayowin komai da ruwan ka don tsarin Android da iOS don gane rajistar mai amfani da shiga, sarrafa na'urar da sauran ayyuka.
Haɓaka na'urar IoT Da zarar an kammala ainihin haɓaka ayyukan na'urar IoT, zaku iya juya zuwa ayyukan ingantawa, kamar haɓaka wutar lantarki.
Gwajin samar da taro Gudanar da gwaje-gwajen samarwa da yawa bisa ga ma'auni masu alaƙa, kamar gwajin aikin kayan aiki, gwajin tsufa, gwajin RF, da sauransu.
Duk da matakan da aka jera a sama, aikin Smart Light ba lallai ba ne ya kasance ƙarƙashin irin wannan hanya saboda ana iya aiwatar da ayyuka daban-daban a lokaci guda. Don misaliampHar ila yau, za a iya ɓullo da kayan aikin software da wayoyin hannu a layi daya. Wasu matakai na iya buƙatar maimaita su, kamar haɓaka na'urar IoT da gwajin samarwa da yawa.
16 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
2.3 Takaitawa
A cikin wannan babi, mun fara bayyana ainihin abubuwan da aka gyara da kayan aikin aikin IoT, sannan mu gabatar da shari'ar Smart Light don aiki, tana nufin tsarinsa, ayyukansa, shirye-shiryen hardware, da tsarin haɓakawa. Masu karatu za su iya zana nassosi daga aikin kuma su kasance da kwarin gwiwa don aiwatar da ayyukan IoT tare da ƙananan kurakurai a nan gaba.
Babi na 2. Gabatarwa da Aiwatar da Ayyukan IoT 17
18 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Babi na 3
Gabatarwa
ku
ESP
RainMaker
Intanet na Abubuwa (IoT) yana ba da dama mara iyaka don canza yadda mutane ke rayuwa, duk da haka haɓaka aikin injiniyan IoT yana cike da ƙalubale. Tare da gajimare na jama'a, masana'antun tasha na iya aiwatar da aikin samfur ta hanyar mafita masu zuwa:
Dangane da dandamalin girgije na masu samar da mafita Ta wannan hanyar, masana'antun tasha suna buƙatar ƙira kayan aikin samfur kawai, sannan haɗa kayan aikin zuwa gajimare ta amfani da tsarin sadarwa da aka bayar, da kuma saita ayyukan samfurin bin jagororin. Wannan hanya ce mai inganci tun lokacin da ta kawar da buƙatar ɓangaren uwar garke da haɓaka-gefen aikace-aikacen da ayyuka da kulawa (O&M). Yana ba da damar masana'antun tasha su mai da hankali kan ƙirar kayan aiki ba tare da yin la'akari da aiwatar da girgije ba. Koyaya, irin waɗannan mafita (misali, firmware na'urar da App) gabaɗaya ba buɗaɗɗen tushe ba ne, don haka ayyukan samfurin za a iyakance su ta dandamalin girgije na mai bayarwa wanda ba za a iya keɓance shi ba. A halin yanzu, mai amfani da bayanan na'urar kuma suna cikin dandalin girgije.
Dangane da samfuran girgije A cikin wannan bayani, bayan kammala ƙirar kayan aikin, masana'antun tashar ba kawai buƙatar aiwatar da ayyukan girgije ta amfani da ɗaya ko fiye da samfuran girgije da girgijen jama'a ke bayarwa ba, amma kuma suna buƙatar haɗa kayan aikin tare da girgije. Don misaliample, don haɗi zuwa Amazon Web Ayyuka (AWS), masana'antun tashar jiragen ruwa suna buƙatar amfani da samfuran AWS kamar Amazon API Gateway, AWS IoT Core, da AWS Lambda don ba da damar damar na'urar, sarrafa nesa, ajiyar bayanai, sarrafa mai amfani, da sauran ayyuka na asali. Ba wai kawai ya nemi masana'antun tashar jiragen ruwa su yi amfani da sassauƙa da daidaita samfuran girgije tare da zurfin fahimta da gogewa mai arha ba, amma kuma yana buƙatar su yi la'akari da farashin gini da kulawa na farko da daga baya s.tages Wannan yana haifar da babban kalubale ga makamashi da albarkatun kamfanin.
Idan aka kwatanta da gizagizai na jama'a, yawancin girgije masu zaman kansu ana gina su don takamaiman ayyuka da samfurori. Ana ba masu haɓaka girgije masu zaman kansu mafi girman 'yanci a cikin ƙira da aiwatar da dabaru na kasuwanci. Masu kera tasha za su iya yin samfura da ƙira da ƙira yadda suke so, kuma cikin sauƙi haɗawa da ƙarfafa bayanan mai amfani. Haɗa babban tsaro, haɓakawa da amincin girgijen jama'a tare da advantagBabban girgije mai zaman kansa, Espressif ya ƙaddamar da ESP
19
RainMaker, wani bayani mai zurfi mai zaman kansa wanda ya dogara da girgijen Amazon. Masu amfani za su iya tura ESP RainMaker kuma su gina girgije mai zaman kansa kawai tare da asusun AWS.
3.1 Menene ESP RainMaker?
ESP RainMaker cikakken dandamali ne na AIoT wanda aka gina tare da manyan samfuran AWS da yawa. Yana ba da sabis daban-daban da ake buƙata don samarwa da yawa kamar samun damar girgije na na'urar, haɓaka na'urar, sarrafa baya, shiga ɓangare na uku, haɗin murya, da sarrafa mai amfani. Ta amfani da Ma'ajiyar Aikace-aikacen Sabis (SAR) da AWS ke bayarwa, masana'antun tasha za su iya tura ESP RainMaker da sauri zuwa asusun AWS ɗin su, wanda ke da inganci da sauƙin aiki. Gudanarwa da kulawa ta Espressif, SAR da ESP RainMaker ke amfani da shi yana taimaka wa masu haɓakawa su rage farashin kula da girgije da haɓaka haɓaka samfuran AIoT, don haka gina amintattun, kwanciyar hankali, da daidaitawar AIoT mafita. Hoto 3.1 yana nuna gine-ginen ESP RainMaker.
Hoto 3.1. Gine-gine na ESP RainMaker
Sabar jama'a ta ESP RainMaker ta Espressif kyauta ce ga duk masu sha'awar ESP, masu yin, da malamai don tantance mafita. Masu haɓakawa za su iya shiga tare da asusun Apple, Google, ko GitHub, kuma da sauri gina nasu samfuran aikace-aikacen IoT. Sabar jama'a ta haɗa Alexa da Gidan Google, kuma yana ba da sabis na sarrafa murya, waɗanda ke tallafawa ta Alexa Skill da Google Actions. Har ila yau, aikin tantance ma'anarsa yana samun ƙarfi daga wasu kamfanoni. Na'urorin RainMaker IoT kawai suna amsa takamaiman ayyuka. Don cikakkun jerin umarnin murya masu goyan bayan, da fatan za a duba dandamali na ɓangare na uku. Bugu da kari, Espressif yana ba da aikace-aikacen RainMaker na jama'a don masu amfani don sarrafa samfuran ta wayoyin hannu. 20 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
3.2 Aiwatar da ESP RainMaker
Kamar yadda aka nuna a Hoto 3.2, ESP RainMaker ya ƙunshi sassa huɗu: · Sabis na Da'awar, ba da damar na'urorin RainMaker su sami takaddun shaida. RainMaker Cloud (wanda kuma aka sani da girgije backend), samar da ayyuka kamar tace saƙo, sarrafa mai amfani, ajiyar bayanai, da haɗin kai na ɓangare na uku. Wakilin RainMaker, kunna na'urorin RainMaker don haɗawa zuwa RainMaker Cloud. Abokin ciniki na RainMaker (Rubutun RainMaker ko CLI), don samarwa, ƙirƙirar mai amfani, ƙungiyar na'ura da sarrafawa, da sauransu.
Hoto 3.2. Tsarin ESP RainMaker
ESP RainMaker yana ba da cikakken saitin kayan aikin don haɓaka samfuri da haɓakar jama'a, gami da: RainMaker SDK
RainMaker SDK ya dogara ne akan ESP-IDF kuma yana ba da lambar tushe na wakilin-gefen na'urar da C APIs masu alaƙa don haɓaka firmware. Masu haɓakawa kawai suna buƙatar rubuta dabaru na aikace-aikacen kuma su bar sauran zuwa tsarin RainMaker. Don ƙarin bayani game da C APIs, da fatan za a ziyarci https://bookc3.espressif.com/rm/c-api-reference. RainMaker App Na jama'a na RainMaker App yana ba masu haɓaka damar kammala samar da na'ura, da sarrafawa da kuma tambayar matsayin na'urori (misali, samfuran haske masu wayo). Yana samuwa a kan duka iOS da Android app Stores. Don ƙarin cikakkun bayanai, da fatan za a koma Babi na 10. REST APIs REST APIs suna taimaka wa masu amfani su gina nasu aikace-aikacen kama da RainMaker App. Don ƙarin bayani, da fatan za a ziyarci https://swaggerapis.rainmaker.espressif.com/.
Babi na 3. Gabatarwa ga ESP RainMaker 21
Python APIs An samar da CLI na tushen Python, wanda ya zo tare da RainMaker SDK, don aiwatar da duk ayyuka masu kama da fasalin wayoyin hannu. Don ƙarin bayani game da Python APIs, da fatan za a ziyarci https://bookc3.espressif.com/rm/python-api-reference.
Admin CLI Admin CLI, tare da babban matakin samun dama, an bayar da shi don ESP RainMaker tura masu zaman kansu don samar da takaddun shaida na na'ura da yawa.
3.2.1 Sabis na Da'awar
Duk sadarwa tsakanin na'urorin RainMaker da bayanan girgije ana aiwatar da su ta hanyar MQTT+TLS. A cikin mahallin ESP RainMaker, "Da'awar" shine tsarin da na'urori ke samun takaddun shaida daga Sabis na Da'awar don haɗawa da bayanan girgije. Lura cewa Sabis ɗin Da'awar yana aiki ne kawai ga sabis na RainMaker na jama'a, yayin da don turawa na sirri, ana buƙatar samar da takaddun takaddun na'urar gabaɗaya ta hanyar Admin CLI. ESP RainMaker yana goyan bayan nau'ikan Sabis na Da'awa: Da'awar Kai
Na'urar da kanta tana ɗaukar takaddun shaida ta hanyar maɓallin sirri wanda aka riga aka tsara shi a cikin eFuse bayan haɗawa da Intanet. Da'awar Kore Mai watsa shiri Ana samun takaddun shaida daga mai masaukin ci gaba tare da asusun RainMaker. Da'awar Taimako Ana samun takaddun shaida ta aikace-aikacen wayar hannu yayin samarwa.
3.2.2 Wakilin RainMaker
Hoto 3.3. Tsarin RainMaker SDK Babban aikin Wakilin RainMaker shine samar da haɗin kai da kuma taimaka maƙallan aikace-aikacen don aiwatar da bayanan gajimare na sama / ƙasa. An gina shi ta hanyar RainMaker SDK 22 ESP32-C3 Wireless Adventure: Cikakken Jagora ga IoT
kuma an haɓaka bisa ga ingantaccen tsarin ESP-IDF, ta amfani da abubuwan ESP-IDF kamar RTOS, NVS, da MQTT. Hoto 3.3 yana nuna tsarin RainMaker SDK.
RainMaker SDK ya ƙunshi manyan abubuwa guda biyu.
Haɗin kai
i. Haɗin kai tare da Sabis ɗin Da'awa don samun takaddun shaida na na'ura.
ii. Haɗa zuwa ga bayan girgije ta amfani da amintacciyar yarjejeniya ta MQTT don samar da haɗin kai mai nisa da aiwatar da sarrafawa ta nesa, rahoton saƙo, sarrafa mai amfani, sarrafa na'urar, da dai sauransu Yana amfani da ɓangaren MQTT a cikin ESP-IDF ta tsohuwa kuma yana ba da ƙirar abstraction don yin hulɗa tare da wasu. ka'idojin yarjejeniya.
iii. Samar da sashin samar da wifi don haɗin Wi-Fi da samarwa, sashin esp https ota don haɓaka OTA, da esp bangaren ctrl na gida don gano na'urar gida da haɗin kai. Duk waɗannan manufofin za a iya cimma ta hanyar sauƙi mai sauƙi.
sarrafa bayanai
i. Ajiye takaddun shaida na na'urar da Sabis ɗin Da'awa ya bayar da bayanan da ake buƙata lokacin gudanar da RainMaker, ta hanyar tsohuwa ta amfani da keɓancewar sadarwa ta nvs flash bangaren, da samar da APIs don masu haɓakawa don amfani kai tsaye.
ii. Yin amfani da tsarin sake kiran waya don aiwatar da bayanan gajimare na sama / saukar da ƙasa da buɗe bayanan ta atomatik zuwa layin aikace-aikacen don sauƙin sarrafawa ta masu haɓakawa. Domin misaliample, RainMaker SDK yana ba da wadatattun hanyoyin sadarwa don kafa bayanan TSL (Thing Specification Language), waɗanda ake buƙata don ayyana samfuran TSL don bayyana na'urorin IoT da aiwatar da ayyuka kamar lokaci, ƙirgawa, da sarrafa murya. Don ainihin fasalulluka na mu'amala kamar lokaci, RainMaker SDK yana ba da mafita mara haɓaka wanda za'a iya kunna shi kawai lokacin da ake buƙata. Bayan haka, Wakilin RainMaker zai aiwatar da bayanan kai tsaye, aika shi zuwa gajimare ta hanyar jigon MQTT mai alaƙa, kuma ya mayar da bayanan canje-canje a cikin girgijen baya ta hanyar tsarin kira.
3.2.3 Cloud Backend
An gina bangon girgije akan AWS Serverless Computing kuma an samu ta hanyar AWS Cognito (tsarin gudanarwa na ainihi), Amazon API Gateway, AWS Lambda (sabis na lissafin uwar garken), Amazon DynamoDB (Bayanin bayanan NoSQL), AWS IoT Core (IoT access core wanda ke ba da damar MQTT da tacewa mulki), Sabis ɗin Imel mai Sauƙi na Amazon (Sabis ɗin Sabis mai sauƙi na SES), Amazon CloudFront (cibiyar sadarwar isar da sauri), Sabis ɗin Sauƙaƙan Queue na Amazon (jerun saƙon SQS), da Amazon S3 (sabis na ajiyar guga). Ana nufin haɓaka haɓakawa da tsaro. Tare da ESP RainMaker, masu haɓakawa na iya sarrafa na'urori ba tare da rubuta lamba a cikin gajimare ba. Ana aika saƙon da na'urori suka ruwaito a bayyane zuwa ga
Babi na 3. Gabatarwa ga ESP RainMaker 23
abokan ciniki na aikace-aikacen ko wasu sabis na ɓangare na uku. Teburin 3.1 yana nuna samfuran girgije na AWS da ayyukan da aka yi amfani da su a cikin bayanan girgije, tare da ƙarin samfuran da fasali a ƙarƙashin haɓakawa.
Table 3.1. Samfuran girgije na AWS da ayyukan da Cloud backend ke amfani da shi
AWS Cloud Samfur da RainMaker ke Amfani dashi
Aiki
AWS Cognito
Sarrafa bayanan mai amfani da goyan bayan shiga na ɓangare na uku
AWS Lambda
Aiwatar da ainihin dabarun kasuwanci na Cloud backend
Amazon Timestream Adana bayanan jerin lokaci
Amazon DynamoDB Adana bayanan sirri na abokan ciniki
Abubuwan da aka bayar na AWS IoT Core
Taimakawa sadarwar MQTT
Amazon SES
Samar da sabis na aika imel
Amazon CloudFront Yana Haɓaka Gudanar da baya webshiga yanar gizo
Amazon SQS
Ana tura saƙonni daga AWS IoT Core
3.2.4 Abokin ciniki na RainMaker
Abokan ciniki na RainMaker, kamar App da CLI, suna sadarwa tare da bayan girgije ta hanyar APIs REST. Ana iya samun cikakkun bayanai da umarni game da APIs REST a cikin takaddun Swagger da Espressif ya bayar. Abokin aikace-aikacen hannu na RainMaker yana samuwa ga tsarin iOS da Android duka. Yana ba da damar samar da na'urar, sarrafawa, da rabawa, kazalika da ƙirƙira da ba da damar ayyukan kirgawa da haɗawa zuwa dandamali na ɓangare na uku. Yana iya ɗaukar UI da gumaka ta atomatik bisa ga ƙayyadaddun na'urori da aka ruwaito da cikakken nuna TSL na'urar.
Don misaliample, idan an gina haske mai wayo akan RainMaker SDK da aka samar da tsohonampDon haka, gunkin da UI na hasken kwan fitila za a loda su ta atomatik lokacin da aka kammala samarwa. Masu amfani za su iya canza launi da haske na hasken ta hanyar dubawa kuma su cimma iko na ɓangare na uku ta hanyar haɗa Alexa Smart Home Skill ko Google Smart Home Actions zuwa asusun ESP RainMaker. Hoto 3.4 yana nuna alamar da UI examples na kwan fitila bi da bi a kan Alexa, Google Home, da ESP RainMaker App.
24 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
(a) Exampda - Alexa
(b) Example – Google Home
(c) Example – ESP RainMaker
Hoto 3.4. ExampAlamar alama da UI na hasken kwan fitila akan Alexa, Gidan Google, da ESP RainMaker App
3.3 Ayyuka: Mahimman Abubuwan Haɓakawa tare da ESP RainMaker
Da zarar an gama Layer direban na'urar, masu haɓakawa na iya fara ƙirƙirar samfuran TSL da sarrafa bayanan ƙasa ta amfani da API ɗin da RainMaker SDK ke bayarwa, kuma su ba da damar ainihin sabis na ESP RainMaker dangane da ma'anar samfur da buƙatu.
Babi na 3. Gabatarwa ga ESP RainMaker 25
Sashe na 9.4 na wannan littafin zai bayyana yadda ake aiwatar da hasken haske na LED a cikin RainMaker. A lokacin gyara kurakurai, masu haɓakawa zasu iya amfani da kayan aikin CLI a cikin RainMaker SDK don sadarwa tare da haske mai wayo (ko kiran APIs REST daga Swagger).
Babi na 10 zai fayyace yadda ake amfani da REST APIs wajen haɓaka aikace-aikacen wayar hannu. The OTA haɓakawa na LED smart fitilu za a rufe a Babi na 11. Idan developers sun kunna ESP Insights m saka idanu, da ESP RainMaker management backend zai nuna ESP Insights data. Za a gabatar da cikakkun bayanai a Babi na 15.
ESP RainMaker yana goyan bayan tura masu zaman kansu, wanda ya bambanta da uwar garken RainMaker na jama'a ta hanyoyi masu zuwa:
Sabis na Da'awar Don samar da takaddun shaida a cikin turawa masu zaman kansu, ana buƙatar amfani da RainMaker Admin CLI maimakon Da'awa. Tare da uwar garken jama'a, dole ne a bai wa masu haɓaka haƙƙin gudanarwa don aiwatar da haɓaka firmware, amma ba a so a cikin jigilar kasuwanci. Don haka, ba za a iya samar da keɓantaccen sabis na tabbatarwa don neman kai ba, ko haƙƙin gudanarwa don da'awar da aka kora ko taimako.
Ka'idodin waya A cikin turawa masu zaman kansu, ana buƙatar saita aikace-aikacen kuma a haɗa su daban don tabbatar da cewa tsarin asusun ba ya yin mu'amala.
Shiga jam'iyya ta 3 da haɗin murya Masu Haɓakawa dole ne su tsara daban ta hanyar asusun Google da Apple Developer don ba da damar shiga jam'iyyar 3, da kuma ƙwarewar Alexa da haɗin gwiwar Mataimakin Muryar Google.
TIPS Don cikakkun bayanai game da tura girgije, da fatan za a ziyarci https://customer.rainmaker.espressif. com. Dangane da firmware, ƙaura daga uwar garken jama'a zuwa uwar garken masu zaman kansu kawai yana buƙatar maye gurbin takaddun shaida na na'ura, wanda ke inganta haɓakar ƙaura sosai kuma yana rage farashin ƙaura da kuma lalata na biyu.
3.4 Siffofin ESP RainMaker
Fasalolin ESP RainMaker an fi niyya ne ta fuskoki uku - sarrafa mai amfani, masu amfani da ƙarshen, da masu gudanarwa. Ana goyan bayan duk fasalulluka a cikin sabar jama'a da masu zaman kansu sai dai in an bayyana su.
3.4.1 Gudanar da Mai amfani
Fasalolin sarrafa mai amfani suna ba masu amfani damar yin rajista, shiga, canza kalmomin shiga, dawo da kalmomin shiga, da sauransu.
26 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Yi rijista da shiga Hanyoyin rajista da shiga da RainMaker ke goyan bayan sun haɗa da: · Id Email + Password · Lambar waya + Kalmar wucewa · Google Account · Apple Account · GitHub Account (Sabar jama’a kawai) · Asusun Amazon (Sabar uwar garken sirri kawai)
NOTE Yi rajista ta amfani da Google/Amazon yana raba adireshin imel ɗin mai amfani tare da RainMaker. Yi rajista ta amfani da Apple yana raba adireshi mai ban mamaki wanda Apple ke ba wa mai amfani musamman don sabis na RainMaker. Za a ƙirƙiri asusun RainMaker ta atomatik don masu amfani da ke shiga tare da asusun Google, Apple, ko Amazon a karon farko.
Canja kalmar sirri Inganci kawai don shigar da adireshin imel / lambar waya. Duk sauran zama masu aiki za a fita bayan an canza kalmar wucewa. Dangane da halin AWS Cognito, zaman da aka fita na iya kasancewa cikin aiki har zuwa awa 1.
Dawo kalmar sirri Inganci kawai don shigar da id/lambar waya kawai.
3.4.2 Ƙarshen Ayyukan Mai amfani
Siffofin da aka buɗe don ƙarshen masu amfani sun haɗa da kulawar gida da nesa da saka idanu, tsara tsarawa, haɗa na'urar, raba na'urar, sanarwar turawa, da haɗin kai na ɓangare na uku.
Ikon nesa da saka idanu · Tsarin tambaya, ƙimar siga, da matsayin haɗin kai don ɗaya ko duk na'urori. · Saita sigogi don na'urori guda ɗaya ko da yawa.
Ikon gida da saka idanu Wayar hannu da na'urar suna buƙatar haɗa su zuwa cibiyar sadarwa iri ɗaya don sarrafa gida.
Tsara Tsara · Masu amfani sun riga sun saita wasu ayyuka a takamaiman lokaci. Ba a buƙatar haɗin Intanet don na'urar yayin aiwatar da jadawalin. · Sau ɗaya ko maimaita (ta ƙayyadaddun kwanaki) don na'urori guda ɗaya ko da yawa.
Haɗin na'ura Yana goyan bayan ƙungiyoyin ƙayyadaddun ƙayyadaddun ƙayyadaddun bayanai Za a iya amfani da metadata na rukuni don ƙirƙirar tsarin Dakin Gida.
Babi na 3. Gabatarwa ga ESP RainMaker 27
Za a iya raba na'ura ɗaya ko fiye da masu amfani ɗaya ko fiye.
Sanarwa na tura Ƙarshen masu amfani za su karɓi sanarwar turawa don abubuwan da suka faru kamar · Sabbin na'ura (s) da aka ƙara / cirewa · Na'urar da aka haɗa zuwa gajimare · Na'urar da aka cire daga gajimare
Haɗin kai na ɓangare na uku Alexa da Google Voice Assistant ana tallafawa don sarrafa na'urorin RainMaker, gami da fitilu, masu sauyawa, soket, magoya baya, da na'urori masu auna zafin jiki.
3.4.3 Abubuwan Gudanarwa
Fasalolin mai gudanarwa suna ƙyale masu gudanarwa su aiwatar da rajistar na'ura, haɗa na'ura, da haɓaka OTA, da zuwa view kididdiga da bayanan ESP Insights.
Rijistar na'ura Ƙirƙirar takaddun shaida na na'ura da yin rijista tare da Admin CLI (Sabar uwar garken kawai).
Haɗin na'ura Ƙirƙirar ƙungiyoyi masu ƙima ko tsararru dangane da bayanan na'urar (sabar uwar garke kawai).
Over-the-Air (OTA) haɓakawa Loda firmware dangane da siga da ƙira, zuwa ɗaya ko fiye na'urori ko ƙungiyar Kulawa, sokewa, ko adana ayyukan OTA.
View kididdiga ViewƘididdigar ƙididdiga sun haɗa da: · Rijistar na'ura (takaddun shaida da admin yayi rijista) · Kunna na'ura (na'urar da aka haɗa da farko) · Asusun mai amfani · Ƙungiyar na'urar mai amfani
View Bayanan Bayani na ESP Viewiyawar ESP Insights bayanai sun haɗa da: · Kurakurai, faɗakarwa, da rajistan ayyukan al'ada · Rahoton ɓarna da bincike · Sake kunna dalilai · Ma'auni kamar amfanin ƙwaƙwalwar ajiya, RSSI, da sauransu · Ma'auni na al'ada da masu canji.
28 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
3.5 Takaitawa
A cikin wannan babin, mun gabatar da wasu bambance-bambance masu mahimmanci tsakanin aikin RainMaker na jama'a da turawa na sirri. Maganin ESP RainMaker mai zaman kansa wanda Espressif ya ƙaddamar yana da inganci sosai kuma mai iya haɓakawa. An haɗa dukkan kwakwalwan kwamfuta na ESP32 kuma an daidaita su zuwa AWS, wanda ke rage tsada sosai. Masu haɓakawa na iya mai da hankali kan tabbatarwa samfuri ba tare da sun koyi game da samfuran girgije na AWS ba. Mun kuma bayyana aiwatarwa da fasalulluka na ESP RainMaker, da wasu mahimman mahimman bayanai don haɓaka ta amfani da dandamali.
Duba don zazzage ESP RainMaker don Android Scan don zazzage ESP RainMaker don iOS
Babi na 3. Gabatarwa ga ESP RainMaker 29
30 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Babi Kafa 4 Ci gaban Muhalli
Wannan babin yana mai da hankali kan ESP-IDF, tsarin haɓaka software na hukuma don ESP32-C3. Za mu bayyana yadda za a kafa yanayi a kan tsarin aiki daban-daban, da kuma gabatar da tsarin aikin da gina tsarin ESP-IDF, da kuma amfani da kayan aikin ci gaba masu dangantaka. Sannan za mu gabatar da tsarin tattarawa da gudanar da tsohonample project, yayin da yake ba da cikakken bayani game da log ɗin fitarwa a kowane stage.
4.1 ESP-IDF Samaview
ESP-IDF (Espressif IoT Tsarin Haɓakawa) tsarin ci gaban IoT ne mai tsayawa ɗaya wanda Fasahar Espressif ta samar. Yana amfani da C/C++ a matsayin babban harshe na ci gaba kuma yana goyan bayan haɗe-haɗe a ƙarƙashin tsarin aiki na yau da kullun kamar Linux, Mac, da Windows. The exampAna haɓaka shirye-shiryen da ke cikin wannan littafin ta amfani da ESP-IDF, wanda ke ba da fasali masu zuwa: · SoC-tsararrun direbobi. ESP-IDF ya haɗa da direbobi don ESP32, ESP32-S2, ESP32-C3,
da sauran kwakwalwan kwamfuta. Waɗannan direbobi sun ƙunshi ɗakin karatu na ƙananan matakin (LL), ɗakin karatu na kayan aiki na kayan aiki (HAL), tallafin RTOS da software na direba na sama, da sauransu · Mahimman abubuwan. ESP-IDF ya haɗa mahimman abubuwan da ake buƙata don haɓaka IoT. Wannan ya haɗa da tarin ka'idodin cibiyar sadarwa da yawa kamar HTTP da MQTT, tsarin sarrafa wutar lantarki tare da daidaitawar mitar mitoci, da fasali kamar Encryption Flash da Secure Boot, da dai sauransu · Haɓaka da kayan aikin samarwa. ESP-IDF yana ba da kayan aikin da aka saba amfani da su don ginawa, walƙiya, da kuma gyarawa yayin haɓakawa da samar da taro (duba Hoto 4.1), kamar tsarin ginin da ya danganci CMake, sarkar kayan aiki na giciye bisa GCC, da kuma J.TAG kayan aikin gyara kurakurai dangane da OpenOCD, da dai sauransu. Yana da kyau a lura cewa lambar ESP-IDF da farko tana bin lasisin buɗe tushen Apache 2.0. Masu amfani za su iya haɓaka software na sirri ko na kasuwanci ba tare da hani ba yayin bin sharuɗɗan lasisin buɗe tushen. Bugu da ƙari, ana ba masu amfani lasisin dindindin na dindindin kyauta, ba tare da wajibcin buɗe tushen duk wani gyare-gyare da aka yi ga lambar tushe ba.
31
Hoto na 4.1.
Gine-gine, walƙiya, da ɓata-
kayan aikin ging don haɓakawa da samar da taro
4.1.1 Siffofin ESP-IDF
An shirya lambar ESP-IDF akan GitHub azaman aikin buɗe ido. A halin yanzu, akwai manyan nau'ikan nau'ikan nau'ikan iri uku: v3, v4, da v5. Kowace babbar sigar yawanci tana ɗauke da ɓarna iri-iri, kamar v4.2, v4.3, da sauransu. Espressif Systems yana tabbatar da tallafin watanni 30 don gyaran kwaro da facin tsaro ga kowane juzu'in da aka fitar. Sabili da haka, ana sake sake yin bita na ɓarna a kai a kai, kamar v4.3.1, v4.2.2, da dai sauransu. Teburin 4.1 yana nuna matsayin tallafi na nau'ikan ESP-IDF daban-daban don kwakwalwan kwamfuta na Espressif, yana nuna ko sun kasance a cikin pre-pre.view stage (ba da tallafi ga preview nau'ikan, waɗanda ƙila ba su da wasu fasaloli ko takaddun shaida) ko suna da tallafi bisa hukuma.
Table 4.1. Matsayin goyan bayan nau'ikan ESP-IDF daban-daban don kwakwalwan kwamfuta na Espressif
Jerin ESP32 ESP32-S2 ESP32-C3 ESP32-S3 ESP32-C2 ESP32-H2
v4.1 goyon baya
v4.2 yana goyan bayan
v4.3 mai goyan bayan goyan baya
v4.4 mai goyan bayan tallafi mai goyan baya
kafinview
v5.0 mai goyan bayan goyan bayan goyan bayan goyan bayan tallafin tallafiview
32 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Ƙaddamar da manyan juzu'i sau da yawa ya ƙunshi gyare-gyare ga tsarin tsarin da sabuntawa ga tsarin haɗawa. Don misaliample, babban canji daga v3.* zuwa v4.* shine ƙaura a hankali na tsarin gini daga Make zuwa CMake. A gefe guda, ƙaddamar da ƙananan juzu'i yawanci ya ƙunshi ƙarin sabbin abubuwa ko goyan baya don sabbin kwakwalwan kwamfuta.
Yana da mahimmanci a bambancewa da fahimtar alakar da ke tsakanin tsayayyen sigogi da rassan GitHub. Siffofin da aka yi wa lakabi da v*.* ko v*.*.* suna wakiltar tsayayyen juzu'i da suka wuce cikakkiyar gwajin ciki ta Espressif. Da zarar an gyara, lambar, sarkar kayan aiki, da takaddun saki don sigar iri ɗaya ba ta canzawa. Koyaya, rassan GitHub (misali, reshen sakewa/v4.3) suna fuskantar ƙa'idodi akai-akai, sau da yawa a kullun. Don haka, snippets code guda biyu a ƙarƙashin reshe ɗaya na iya bambanta, yana buƙatar masu haɓakawa su sabunta lambar su da sauri.
4.1.2 ESP-IDF Git Gudun Aiki
Espressif yana bin takamaiman aikin Git don ESP-IDF, wanda aka zayyana kamar haka:
· An yi sabbin canje-canje a kan babban reshe, wanda ke zama babban reshe na ci gaba. Sigar ESP-IDF akan babban reshe koyaushe yana ɗaukar -dev tag don nuna cewa a halin yanzu yana kan ci gaba, kamar v4.3-dev. Canje-canje a kan babban reshe zai fara zama sakeviewed kuma an gwada shi a cikin ma'ajiyar ciki na Espressif, sannan a tura zuwa GitHub bayan an gama gwaji ta atomatik.
Da zarar sabon sigar ya kammala haɓaka fasali akan babban reshe kuma ya cika sharuɗɗan shigar da gwajin beta, zai canza zuwa sabon reshe, kamar saki/v4.3. Bugu da kari, wannan sabon reshe shine tagged azaman sigar farko-sakin, kamar v4.3-beta1. Masu haɓakawa na iya komawa zuwa dandalin GitHub don samun damar cikakken jerin rassan da tags don ESP-IDF. Yana da mahimmanci a lura cewa sigar beta (siffar riga-kafi) na iya har yanzu tana da mahimman adadin sanannun batutuwa. Kamar yadda sigar beta ke ci gaba da yin gwaji, ana ƙara gyaran kwaro zuwa duka wannan sigar da babban reshe a lokaci guda. A halin yanzu, babban reshe na iya riga ya fara haɓaka sabbin abubuwa don sigar gaba. Lokacin da gwaji ya kusa cika, ana ƙara alamar ɗan takarar saki (rc) zuwa reshe, yana nuna cewa ɗan takara ne mai yuwuwar sakin hukuma, kamar v4.3-rc1. A wannan stage, reshen ya kasance sigar riga-kafi.
Idan ba a gano ko manyan kurakurai ba, sigar riga-kafi a ƙarshe ta karɓi babban lakabin sigar (misali, v5.0) ko ƙaramar sigar sigar (misali, v4.3) kuma ta zama sigar sakin hukuma, wanda aka rubuta. a cikin shafin bayanin kula. Daga baya, duk wani kurakurai da aka gano a cikin wannan sigar an gyara su akan reshen sakin. Bayan an gama gwajin da hannu, an sanya reshen alamar sigar bug-fix (misali, v4.3.2), wanda kuma ke nunawa a shafi na bayanin kula.
Babi na 4. Kafa Muhallin Ci Gaba 33
4.1.3 Zaɓan Sigar Dace
Tun da ESP-IDF a hukumance ya fara tallafawa ESP32-C3 daga sigar v4.3, kuma v4.4 bai riga ya fito a hukumance a lokacin rubuta wannan littafin ba, sigar da aka yi amfani da ita a cikin wannan littafin shine v4.3.2, wanda shine sigar da aka bita. daga v4.3. Koyaya, yana da mahimmanci a lura cewa a lokacin da kuka karanta wannan littafin, v4.4 ko sabbin nau'ikan ƙila sun riga sun kasance. Lokacin zabar sigar, muna ba da shawarar masu zuwa:
Ga masu haɓaka matakin shigarwa, yana da kyau a zaɓi sigar v4.3 tsayayye ko sigar ta da aka bita, wanda ya yi daidai da tsohon.ample version amfani a cikin wannan littafin.
Don dalilai na samar da jama'a, ana ba da shawarar yin amfani da sabon sigar barga don cin gajiyar tallafin fasaha na zamani.
Idan kuna da niyyar yin gwaji tare da sabbin kwakwalwan kwamfuta ko bincika sabbin fasalolin samfur, da fatan za a yi amfani da babban reshe. Sabuwar sigar ta ƙunshi duk sabbin fasalulluka, amma ku tuna cewa ƙila a iya samun sananniya ko kurakurai waɗanda ba a san su ba.
Idan tsayayyen sigar da ake amfani da ita ba ta haɗa da sabbin abubuwan da ake so ba kuma kuna son rage haɗarin da ke tattare da babban reshe, yi la'akari da yin amfani da reshen sakin da ya dace, kamar reshen saki/v4.4. Wurin ajiya na GitHub na Espressif zai fara ƙirƙirar reshe na saki/v4.4 sannan daga baya ya saki sigar v4.4 tsayayye dangane da takamaiman hoton tarihi na wannan reshe, bayan kammala duk haɓakar fasalin da gwaji.
4.1.4 Samaview ESP-IDF SDK Directory
ESP-IDF SDK ya ƙunshi manyan kundayen adireshi biyu: esp-idf da .espressif. Tsohon ya ƙunshi lambar tushe na ESP-IDF files da rubutun rubutun, yayin da na karshen ya fi adana sarƙoƙin kayan aiki da sauran software. Sanin waɗannan kundayen adireshi biyu zai taimaka wa masu haɓaka yin amfani da albarkatun da ake da su da kuma hanzarta aiwatar da ci gaba. An kwatanta tsarin kundin adireshi na ESP-IDF a ƙasa:
(1) ESP-IDF kundin adireshi na ma'auni (/esp/esp-idf), kamar yadda aka nuna a cikin Hoto 4.2.
a. Abubuwan da ke cikin kundin adireshi
Wannan babban jagorar yana haɗa mahimman abubuwan software na ESP-IDF. Ba za a iya haɗa lambar aikin ba tare da dogara ga abubuwan da ke cikin wannan kundin adireshin ba. Ya haɗa da tallafin direba don kwakwalwan kwamfuta na Espressif daban-daban. Daga ɗakin karatu na LL da mahallin ɗakin karatu na HAL don abubuwan da ke kewaye zuwa babban matakin Direba da Virtual File Tallafi na tsarin (VFS), masu haɓakawa na iya zaɓar abubuwan da suka dace a matakai daban-daban don buƙatun ci gaban su. ESP-IDF kuma tana goyan bayan daidaitattun daidaitattun ka'idodin hanyar sadarwa kamar TCP/IP, HTTP, MQTT, WebSocket, da sauransu. Masu haɓakawa za su iya amfani da sanannun musaya kamar Socket don gina aikace-aikacen cibiyar sadarwa. Abubuwan da aka haɗa suna ba da fahimta-
34 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Hoto 4.2. ESP-IDF kundin adireshi
ayyuka masu yawa kuma ana iya haɗa su cikin sauƙi cikin aikace-aikace, kyale masu haɓakawa su mai da hankali kawai kan dabarun kasuwanci. Wasu abubuwan gama gari sun haɗa da: · direba: Wannan bangaren yana ƙunshe da shirye-shiryen direba na gefe don Espressif daban-daban
jerin guntu, irin su GPIO, I2C, SPI, UART, LEDC (PWM), da sauransu. Shirye-shiryen direban da ke cikin wannan bangaren suna ba da musaya masu zaman kansu na guntu. Kowane yanki yana da kan gaba ɗaya file (kamar gpio.h), kawar da buƙatar magance daban-daban takamaiman takamaiman tambayoyin tallafi. esp_wifi: Wi-Fi, azaman yanki na musamman, ana ɗaukarsa azaman keɓantaccen sashi. Ya haɗa da APIs da yawa kamar farawa na nau'ikan direbobin Wi-Fi daban-daban, daidaitawar siga, da sarrafa taron. Ana ba da wasu ayyuka na wannan ɓangaren a cikin sigar ɗakunan karatu na haɗin gwiwa. ESP-IDF kuma yana ba da cikakkun takaddun direba don sauƙin amfani.
Babi na 4. Kafa Muhallin Ci Gaba 35
· freertos: Wannan bangaren ya ƙunshi cikakkiyar lambar FreeRTOS. Baya ga samar da cikakken goyon baya ga wannan tsarin aiki, Espressif ya kuma ba da tallafinsa ga kwakwalwan kwamfuta biyu-core. Don kwakwalwan kwamfuta mai dual-core kamar ESP32 da ESP32-S3, masu amfani za su iya ƙirƙirar ɗawainiya akan ƙayyadaddun ƙira.
b. Dokokin kundin adireshi
Wannan kundin adireshi ya ƙunshi takaddun haɓaka masu alaƙa da ESP-IDF, gami da Jagoran Farawa, Manual Reference API, Jagoran haɓakawa, da sauransu.
NOTE Bayan an haɗa su ta kayan aikin atomatik, ana tura abubuwan da ke cikin wannan kundin adireshi a https://docs.espressif.com/projects/esp-idf. Da fatan za a tabbatar da canza manufar daftarin aiki zuwa ESP32-C3 kuma zaɓi takamaiman sigar ESP-IDF.
c. Kayan aikin rubutun
Wannan kundin adireshi ya ƙunshi kayan aikin gaba-gaba da aka saba amfani da su kamar idf.py, da na'ura mai saka idanu idf_monitor.py, da sauransu. Karamin directory cmake kuma ya ƙunshi ainihin rubutun files na tsarin tattarawa, yin aiki a matsayin tushe don aiwatar da ka'idojin tattara ESP-IDF. Lokacin ƙara masu canjin yanayi, abubuwan da ke cikin kundin kayan aikin ana ƙara su zuwa tsarin yanayin yanayin, yana barin idf.py za a kashe kai tsaye a ƙarƙashin hanyar aikin.
d. Example shirin directory examples
Wannan kundin adireshi ya ƙunshi ɗimbin tarin ESP-IDF exampshirye-shiryen da ke nuna yadda ake amfani da APIs na sassan. The examples an tsara su zuwa cikin kundin adireshi daban-daban dangane da nau'ikan su:
· farawa: Wannan ƙaramin kundin adireshi ya haɗa da matakin shigarwa exampkamar "sannu duniya" da "kiftawa" don taimaka wa masu amfani su fahimci abubuwan yau da kullun.
· bluetooth: Za ka iya samun masu alaka da BluetoothampAnan, gami da Bluetooth LE Mesh, Bluetooth LE HID, BluFi, da ƙari.
· wifi: Wannan ƙaramin littafin yana mai da hankali kan Wi-Fi examples, gami da shirye-shirye na asali kamar Wi-Fi SoftAP, tashar Wi-Fi, espnow, da kuma ka'idar sadarwar mallakar mallakar tsohonampdaga Espressif. Hakanan ya haɗa da Layer aikace-aikacen da yawa exampLes dangane da Wi-Fi, kamar Iperf, Sniffer, da Smart Config.
Na gefe: Wannan faffadan babban kundin adireshi yana kara kasu kashi-kashi zuwa manyan manyan fayiloli masu yawa dangane da sunaye. Ya ƙunshi musamman direban gefe examples don kwakwalwan kwamfuta na Espressif, tare da kowane example featuring da yawa sub-examples. Misali, ƙaramin kundin adireshi na gpio ya haɗa da examples: GPIO da GPIO matrix keyboard. Yana da mahimmanci a lura cewa ba duka exampLes a cikin wannan jagorar ana amfani da su ga ESP32-C3.
36 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Don misaliample, examples a cikin usb/host suna aiki ne kawai ga masu gefe tare da kayan aikin Mai watsa shiri na USB (kamar ESP32-S3), kuma ESP32-C3 ba shi da wannan gefen. Tsarin tattarawa yawanci yana ba da tsokaci yayin saita manufa. README file na kowane example ya lissafa kwakwalwan kwamfuta masu goyan baya. · ka’idoji: Wannan ƙaramin littafin ya ƙunshi exampLes don ka'idojin sadarwa daban-daban, gami da MQTT, HTTP, HTTP Server, PPPoS, Modbus, mDNS, SNTP, yana rufe kewayon ka'idar sadarwa ex.ampƙananan da ake buƙata don ci gaban IoT. · tanadi: Anan, zaku sami tanadin exampLes don hanyoyi daban-daban, kamar samar da Wi-Fi da samar da Bluetooth LE. · tsarin: Wannan ƙaramin kundin adireshi ya haɗa da gyara tsarin da misaliamples (misali, gano tari, gano lokacin aiki, sa ido kan ɗawainiya), sarrafa wutar lantarki misaliamples (misali, yanayin bacci iri-iri, na'urori masu sarrafawa), da misaliampmasu alaƙa da tsarin gama gari kamar tashar wasan bidiyo, madauki na taron, da mai ƙidayar tsarin. · ajiya: A cikin wannan ƙaramin littafin, zaku gano tsohonampduk da haka file tsarin da hanyoyin ajiya da ESP-IDF ke goyan bayan (kamar karantawa da rubuta Flash, katin SD da sauran kafofin watsa labarai na ajiya), da kuma tsohonamples na ma'ajin mara ƙarfi (NVS), FatFS, SPIFFS da sauran su file tsarin aiki. · Tsaro: Wannan ƙaramin kundin yana ƙunshi examples alaka da flash boye-boye. (2) ESP-IDF kundin adireshin sarkar kayan aiki (/.espressif), kamar yadda aka nuna a hoto 4.3.
Hoto 4.3. ESP-IDF kundin adireshin sarkar kayan aiki
Babi na 4. Kafa Muhallin Ci Gaba 37
a. Jagorar rarraba software dist
Ana rarraba sarkar kayan aiki na ESP-IDF da sauran software a cikin nau'in fakitin da aka matsa. Yayin aiwatar da shigarwa, kayan aikin shigarwa na farko zazzage fakitin da aka matsa zuwa dist directory, sa'an nan kuma fitar da shi zuwa ƙayyadaddun shugabanci. Da zarar an gama shigarwa, za a iya cire abubuwan da ke cikin wannan littafin cikin aminci.
b. Python Virtual muhalli directory Python env
Siga daban-daban na ESP-IDF sun dogara da takamaiman nau'ikan fakitin Python. Shigar da waɗannan fakitin kai tsaye akan mai masaukin baki ɗaya na iya haifar da rikice-rikice tsakanin nau'ikan fakitin. Don magance wannan, ESP-IDF tana amfani da mahallin kama-da-wane na Python don ware nau'ikan fakiti daban-daban. Tare da wannan tsarin, masu haɓakawa za su iya shigar da nau'ikan ESP-IDF da yawa akan runduna ɗaya kuma cikin sauƙin sauyawa tsakanin su ta shigo da masu canjin yanayi daban-daban.
c. ESP-IDF hada kayan aikin sarkar directory kayan aikin
Wannan jagorar ya ƙunshi kayan aikin haɗin giciye da ake buƙata don haɗa ayyukan ESP-IDF, kamar kayan aikin CMake, kayan aikin gina Ninja, da sarkar kayan aikin gcc wanda ke haifar da shirin aiwatarwa na ƙarshe. Bugu da ƙari, wannan kundin adireshi yana ɗauke da daidaitaccen ɗakin karatu na yaren C/C++ tare da rubutun da ya dace files. Idan shirin yana nuni da taken tsarin file kamar #hada , sarkar kayan aiki za ta gano wurin stdio.h file cikin wannan directory.
4.2 Kafa ESP-IDF Haɓaka Muhalli
Yanayin ci gaban ESP-IDF yana goyan bayan tsarin aiki na yau da kullun kamar Windows, Linux, da macOS. Wannan sashe zai gabatar da yadda za a kafa yanayin ci gaba akan kowane tsari. Ana ba da shawarar haɓaka ESP32-C3 akan tsarin Linux, wanda za'a gabatar da shi dalla-dalla anan. Umurnai da yawa suna aiki a kan dandamali saboda kamanni na kayan aikin haɓakawa. Saboda haka, ana ba da shawarar karanta abin da ke cikin wannan sashe a hankali.
NOTE Kuna iya komawa zuwa takaddun kan layi da ake samu a https://bookc3.espressif.com/esp32c3, waɗanda ke ba da umarnin da aka ambata a wannan sashe.
4.2.1 Kafa ESP-IDF Haɓaka Muhalli akan Linux
Ci gaban GNU da kayan aikin gyara da ake buƙata don yanayin ci gaban ESP-IDF na asali ne ga tsarin Linux. Bugu da ƙari, tashar layin umarni a cikin Linux yana da ƙarfi kuma mai sauƙin amfani, yana mai da shi kyakkyawan zaɓi don haɓaka ESP32-C3. Za ka iya
38 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
zaɓi rarraba Linux ɗin da kuka fi so, amma muna ba da shawarar amfani da Ubuntu ko wasu tsarin tushen Debian. Wannan sashe yana ba da jagora kan kafa yanayin ci gaban ESP-IDF akan Ubuntu 20.04.
1. Sanya fakitin da ake buƙata
Bude sabon tasha kuma aiwatar da umarni mai zuwa don shigar da duk fakitin da suka dace. Umurnin zai tsallake fakitin da aka riga aka shigar ta atomatik.
$ sudo dace-samun shigar git wget flex bison gperf python3 python3-pip python3setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
TIPS Kuna buƙatar amfani da asusun mai gudanarwa da kalmar sirri don umarnin da ke sama. Ta hanyar tsoho, ba za a nuna bayanin lokacin shigar da kalmar wucewa ba. Kawai danna maɓallin "Shigar" don ci gaba da aikin.
Git kayan aikin sarrafa lambar maɓalli ne a cikin ESP-IDF. Bayan nasarar kafa yanayin haɓakawa, zaku iya amfani da umarnin git log ɗin zuwa view duk canje-canjen lambar da aka yi tun ƙirƙirar ESP-IDF. Bugu da kari, Git kuma ana amfani dashi a cikin ESP-IDF don tabbatar da bayanin sigar, wanda ya zama dole don shigar da sarkar kayan aiki daidai daidai da takamaiman nau'ikan. Tare da Git, wasu mahimman kayan aikin tsarin sun haɗa da Python. ESP-IDF yana haɗa rubutun aiki da yawa da aka rubuta cikin Python. Kayan aiki irin su CMake, Ninja-build, da Ccache ana amfani da su sosai a cikin ayyukan C / C ++ kuma suna aiki azaman tsohuwar ƙira da kayan aikin gini a cikin ESP-IDF. libusb-1.0-0 da dfu-util sune manyan direbobin da ake amfani da su don sadarwar serial USB da ƙona firmware. Da zarar an shigar da fakitin software, zaku iya amfani da nunin da ya dace umarnin don samun cikakkun bayanai na kowane fakiti. Don misaliample, yi amfani da git mai dacewa don buga bayanin bayanin don kayan aikin Git.
Tambaya: Me za a yi idan ba a tallafawa sigar Python? A: ESP-IDF v4.3 yana buƙatar sigar Python wacce ba ta ƙasa da v3.6 ba. Don tsofaffin nau'ikan Ubuntu, da fatan za a zazzage kuma shigar da mafi girman sigar Python kuma saita Python3 azaman yanayin Python na asali. Kuna iya samun cikakkun bayanai ta hanyar nemo maɓalli na sabunta-madadin python.
2. Zazzage lambar ma'auni na ESP-IDF
Bude tasha kuma ƙirƙirar babban fayil mai suna esp a cikin kundin adireshin gidanku ta amfani da umarnin mkdir. Kuna iya zaɓar suna daban don babban fayil ɗin idan kuna so. Yi amfani da umarnin cd don shigar da babban fayil.
Babi na 4. Kafa Muhallin Ci Gaba 39
$ mkdir -p / esp $ cd / esp
Yi amfani da umarnin git clone don zazzage lambar ma'ajin ESP-IDF, kamar yadda aka nuna a ƙasa:
$ git clone -b v4.3.2 - maimaitawa https://github.com/espressif/esp-idf.git
A cikin umarnin da ke sama, siga -b v4.3.2 yana ƙayyadaddun sigar don saukewa (a wannan yanayin, sigar 4.3.2). Ma'aunin ma'auni-recursive yana tabbatar da cewa an sauke duk ƙananan ma'ajiyar ESP-IDF akai-akai. Ana iya samun bayanai game da ƙananan ma'ajiyar a cikin .gitmodules file.
3. Sanya sarkar kayan aikin ci gaba na ESP-IDF
Espressif yana ba da rubutun sarrafa kansa install.sh don saukewa da shigar da sarkar kayan aiki. Wannan rubutun yana bincika sigar ESP-IDF na yanzu da yanayin tsarin aiki, sannan zazzagewa da shigar da sigar da ta dace na fakitin kayan aikin Python da sarƙoƙin kayan aiki. Hanyar shigarwa ta asali don sarkar kayan aiki shine /.espressif. Duk abin da kuke buƙatar yi shine kewaya zuwa esp-idf directory kuma kunna install.sh.
$ cd /esp/esp-idf $ ./install.sh
Idan kun shigar da sarkar kayan aiki cikin nasara, tashar zata nuna:
An gama komai!
A wannan gaba, kun sami nasarar kafa yanayin ci gaban ESP-IDF.
4.2.2 Kafa ESP-IDF Haɓaka Muhalli akan Windows
1. Zazzage mai saka kayan aikin ESP-IDF
TIPS Ana ba da shawarar kafa yanayin ci gaban ESP-IDF akan Windows 10 ko sama. Kuna iya saukar da mai sakawa daga https://dl.espressif.com/dl/esp-idf/. Mai sakawa kuma software ce mai buɗe ido, kuma lambar tushe na iya zama viewed a https: //github.com/espressif/idf-installer.
· Mai saka kayan aikin ESP-IDF akan layi
Wannan mai sakawa yana da ƙanƙanta, kusan 4 MB a girman, kuma za a sauke sauran fakiti da lambar yayin aikin shigarwa. Advantage na mai sakawa kan layi shine ba wai kawai za a iya saukar da fakitin software da lamba akan buƙatu yayin aiwatar da shigarwa ba, har ma yana ba da damar shigar da duk abubuwan da ake samu na ESP-IDF da sabon reshe na lambar GitHub (kamar babban reshe) . Abin takaicitage shine yana buƙatar haɗin yanar gizo yayin aikin shigarwa, wanda zai iya haifar da gazawar shigarwa saboda matsalolin cibiyar sadarwa.
40 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Mai saka kayan aikin ESP-IDF na kan layi Wannan mai sakawa ya fi girma, girman girman 1 GB, kuma ya ƙunshi duk fakitin software da lambar da ake buƙata don saita mahalli. Babban advantage na mai sakawa a layi shine ana iya amfani dashi akan kwamfutoci ba tare da shiga Intanet ba, kuma gabaɗaya yana da ƙimar nasarar shigarwa mafi girma. Ya kamata a lura cewa mai sakawa na layi ba zai iya shigar da tsayayyen sakin ESP-IDF wanda v*.* ko v*.*.*.
2. Guda mai saka kayan aikin ESP-IDF Bayan zazzage sigar mai dacewa ta mai sakawa (ɗaukakin ESP-IDF Tools Offline 4.3.2 don ex.ample nan), danna sau biyu exe file don ƙaddamar da ƙirar shigarwa na ESP-IDF. Mai zuwa yana nuna yadda ake shigar da ESP-IDF ingantaccen sigar v4.3.2 ta amfani da mai sakawa ta layi.
(1) A cikin "Zaɓi yaren shigarwa" wanda aka nuna a hoto na 4.4, zaɓi yaren da za a yi amfani da shi daga jerin zaɓuka.
Hoto 4.4. “Zaɓi yaren shigarwa” (2) Bayan zaɓin yaren, danna “Ok” don buɗe hanyar “yarjejeniyar lasisi”
(duba Hoto 4.5). Bayan karanta yarjejeniyar lasisin shigarwa a hankali, zaɓi "Na karɓi yarjejeniyar" kuma danna "Na gaba".
Hoto 4.5. “Yarjejeniyar lasisi” dubawa Babi na 4. Kafa Haɓaka Muhalli 41
(3) Review tsarin tsarin a cikin "Tsarin tsarin shigarwa na farko" dubawa (duba hoto 4.6). Bincika sigar Windows da bayanan software na riga-kafi da aka shigar. Danna "Na gaba" idan duk abubuwan daidaitawa sun kasance na al'ada. In ba haka ba, zaku iya danna "Cikakken log" don mafita dangane da abubuwa masu mahimmanci.
Hoto 4.6. "Duba tsarin kafin kafuwa" dubawa TIPS
Kuna iya ƙaddamar da rajistan ayyukan zuwa https://github.com/espressif/idf-installer/issues don taimako. (4) Zaɓi littafin shigarwa na ESP-IDF. Anan, zaɓi D:/.espressif, kamar yadda aka nuna a ciki
Hoto 4.7, kuma danna "Na gaba". Da fatan za a lura cewa .espressif a nan shi ne kundin adireshi mai ɓoye. Bayan an gama shigarwa, zaku iya view takamaiman abubuwan da ke cikin wannan kundin ta hanyar buɗewa file mai sarrafa da nuna ɓoyayyun abubuwa.
Hoto 4.7. Zaɓi jagorar shigarwa na ESP-IDF 42 ESP32-C3 Kasadar Mara waya: Cikakken Jagora ga IoT
(5) Duba abubuwan da ake buƙatar sanyawa, kamar yadda aka nuna a hoto 4.8. Ana ba da shawarar yin amfani da zaɓi na tsoho, wato, cikakken shigarwa, sannan danna "Next".
Hoto 4.8. Zaɓi abubuwan da za a girka (6) Tabbatar da abubuwan da za a girka kuma danna "Shigar" don fara mai sarrafa kansa.
Tsarin tsayawa, kamar yadda aka nuna a hoto 4.9. Tsarin shigarwa na iya wuce dubun mintuna kuma ana nuna sandar ci gaba na tsarin shigarwa a cikin Hoto 4.10. Da fatan za a yi haƙuri.
Hoto 4.9. Ana shirye-shiryen shigarwa (7) Bayan an gama shigarwa, ana ba da shawarar duba “ Yi rijistar ESP-IDF
Kayan aikin da za a iya aiwatar da su azaman cirewar Windows Defender…” don hana software na riga-kafi gogewa files. Ƙara abubuwan keɓancewa kuma na iya tsallake bincike akai-akai ta riga-kafi
Babi na 4. Kafa Muhallin Ci Gaba 43
Hoto 4.10. Shigar da mashaya ci gaban shigarwa, yana inganta ingantaccen tsarin tattara lambobin na tsarin Windows. Danna "Gama" don kammala shigarwa na yanayin ci gaba, kamar yadda aka nuna a cikin hoto 4.11. Kuna iya zaɓar duba "Run ESP-IDF PowerShell muhalli" ko "Run ESP-IDF umarni da sauri". Gudanar da taga mai haɗawa kai tsaye bayan shigarwa don tabbatar da cewa yanayin ci gaba yana aiki akai-akai.
Hoto 4.11. An gama shigarwa (8) Buɗe yanayin haɓaka da aka shigar a cikin jerin shirye-shiryen (ko dai ESP-IDF 4.3
CMD ko ESP-IDF 4.3 PowerShell m, kamar yadda aka nuna a cikin Hoto 4.12), da ESP-IDF mai canjin yanayi za a ƙara ta atomatik lokacin da yake gudana a cikin tashar. Bayan haka, zaku iya amfani da umarnin idf.py don ayyuka. An nuna ESP-IDF 4.3 CMD da aka buɗe a cikin Hoto 4.13. 44 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Hoto 4.12. An shigar da yanayin ci gaba
Hoto 4.13. ESP-IDF 4.3 CMD
4.2.3 Kafa ESP-IDF Haɓaka Muhalli akan Mac
Tsarin shigar da yanayin ci gaban ESP-IDF akan tsarin Mac iri ɗaya ne da na tsarin Linux. Umarnin don zazzage lambar ajiyar ajiya da shigar da sarkar kayan aiki daidai suke. Sai kawai umarni don shigar da fakitin dogara sun ɗan bambanta. 1. Shigar da fakitin dogaro Bude tasha, kuma shigar da pip, kayan aikin sarrafa fakitin Python, ta hanyar aiwatar da umarni mai zuwa:
% sudo mai sauƙin shigar pip
Shigar da Homebrew, kayan aikin sarrafa fakiti don macOS, ta hanyar aiwatar da umarni mai zuwa:
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/ HEAD/install.sh)"
Shigar da fakitin dogaro da ake buƙata ta gudanar da umarni mai zuwa:
% brew python3 shigar cmake ninja ccache dfu-util
2. Zazzage lambar ma'auni na ESP-IDF Bi umarnin da aka bayar a sashe 4.2.1 don zazzage lambar ma'auni na ESP-IDF. Matakan iri ɗaya ne da na zazzagewa akan tsarin Linux.
Babi na 4. Kafa Muhallin Ci Gaba 45
3. Sanya sarkar kayan aikin ci gaba na ESP-IDF
Bi umarnin da aka bayar a cikin sashe na 4.2.1 don shigar da sarkar kayan aikin ci gaba na ESP-IDF. Matakan iri ɗaya ne da na shigarwa akan tsarin Linux.
4.2.4 Shigar da lambar VS
Ta hanyar tsoho, ESP-IDF SDK baya haɗa da kayan aikin gyara lamba (ko da yake sabon mai sakawa ESP-IDF don Windows yana ba da zaɓi don shigar da ESP-IDF Eclipse). Kuna iya amfani da kowane kayan aikin gyaran rubutu da kuka zaɓa don gyara lambar sannan ku haɗa ta ta amfani da umarnin ƙarshe.
Shahararren kayan aikin gyara lamba shine VS Code (Lambar Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Kayayyakin Hulda), wanda ke da kyauta kuma mai arziƙi mai editan lambar tare da keɓancewar mai amfani. Yana bayar da iri-iri plugins waɗanda ke ba da ayyuka kamar kewayawa na lamba, nuna alama, sarrafa nau'in Git, da haɗin kai tsaye. Bugu da ƙari, Espressif ya haɓaka ƙayyadaddun kayan aikin da ake kira Espressif IDF don lambar VS, wanda ke sauƙaƙa daidaita tsarin aiki da gyara kuskure.
Kuna iya amfani da umarnin lambar a cikin tashar don buɗe babban fayil ɗin da sauri a cikin VS Code. A madadin, zaku iya amfani da hanyar gajeriyar hanya Ctrl+ don buɗe tsoffin na'urorin wasan bidiyo na tsarin a cikin VS Code.
TIPS Ana ba da shawarar yin amfani da lambar VS don haɓaka lambar ESP32-C3. Zazzage kuma shigar da sabuwar sigar VS Code a https://code.visualstudio.com/.
4.2.5 Gabatarwa ga Muhalli na Ci Gaba na ɓangare na uku
Baya ga yanayin ci gaban ESP-IDF na hukuma, wanda da farko yana amfani da yaren C, ESP32-C3 kuma yana goyan bayan sauran manyan yarukan shirye-shirye da kuma faffadan yanayin ci gaban ɓangare na uku. Wasu sanannun zaɓuka sun haɗa da:
Arduino: dandamali mai buɗewa don kayan masarufi da software, yana tallafawa nau'ikan microcontrollers, gami da ESP32-C3.
Yana amfani da yaren C++ kuma yana ba da sauƙi kuma daidaitacce API, wanda akafi sani da harshen Arduino. Ana amfani da Arduino sosai a cikin haɓaka samfuri da mahallin ilimi. Yana ba da fakitin software da IDE wanda ke ba da damar haɗawa da walƙiya cikin sauƙi.
MicroPython: mai fassarar yare na Python 3 wanda aka ƙera don aiki akan dandamalin microcontroller.
Tare da yaren rubutun sassauƙa, yana iya isa kai tsaye zuwa ESP32-C3's albarkatun gefen (kamar UART, SPI, da I2C) da ayyukan sadarwa (kamar Wi-Fi da Bluetooth LE).
46 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
Wannan yana sauƙaƙe hulɗar hardware. MicroPython, haɗe tare da babban ɗakin karatu na aikin lissafi na Python, yana ba da damar aiwatar da hadaddun algorithms akan ESP32-C3, sauƙaƙe haɓaka aikace-aikacen da ke da alaƙa da AI. A matsayin harshe na rubutun, babu buƙatar sake haɗawa; Ana iya yin gyare-gyare kuma ana iya aiwatar da rubutun kai tsaye.
NodeMCU: mai fassarar harshe na LUA wanda aka haɓaka don guntun jeri na ESP.
Yana goyan bayan kusan duk ayyuka na gefe na kwakwalwan kwamfuta na ESP kuma ya fi MicroPython wuta. Mai kama da MicroPython, NodeMCU yana amfani da yaren rubutun, yana kawar da buƙatar maimaita maimaitawa.
Bugu da ƙari, ESP32-C3 kuma yana goyan bayan tsarin aiki na NuttX da Zephyr. NuttX tsarin aiki ne na lokaci-lokaci wanda ke ba da musaya masu dacewa da POSIX, haɓaka haɓaka aikace-aikacen. Zephyr ƙaramin tsarin aiki ne na ainihin lokacin da aka tsara musamman don aikace-aikacen IoT. Ya haɗa da ɗakunan karatu na software da yawa da ake buƙata don haɓaka IoT, sannu a hankali suna haɓakawa zuwa cikakkiyar yanayin yanayin software.
Wannan littafin baya bayar da cikakkun umarnin shigarwa don mahallin ci gaban da aka ambata. Kuna iya shigar da yanayin ci gaba dangane da buƙatun ku ta bin takaddun takaddun da umarni.
4.3 Tsarin Haɗin ESP-IDF
4.3.1 Asalin Ka'idodin Tsarin Tari
Aikin ESP-IDF tarin babban shiri ne tare da aikin shigarwa da kuma abubuwan aiki masu zaman kansu da yawa. Don misaliample, aikin da ke sarrafa maɓallan LED ya ƙunshi babban shirin shigarwa da ɓangaren direba wanda ke sarrafa GPIO. Idan kuna son gane ikon nesa na LED, kuna buƙatar ƙara Wi-Fi, TCP/IP yarjejeniya tari, da sauransu.
Tsarin tattarawa na iya haɗawa, haɗi, da kuma haifar da aiwatarwa files (.bin) don lambar ta hanyar saitin dokokin gini. Tsarin tattarawa na ESP-IDF v4.0 da sama da juzu'i ya dogara ne akan CMake ta tsohuwa, kuma ana iya amfani da rubutun tattarawar CMakeLists.txt don sarrafa halayen haɗa lambar. Baya ga goyan bayan ainihin ma'anar CMake, ESP-IDF har ila yau, tsarin tattarawa yana bayyana saitin tsoffin ƙa'idodin tattarawa da ayyukan CMake, kuma kuna iya rubuta rubutun tari tare da kalmomi masu sauƙi.
4.3.2 Aikin File Tsarin
Aiki babban fayil ne wanda ya ƙunshi babban shirin shigarwa, abubuwan da aka ayyana mai amfani, da files da ake buƙata don gina aikace-aikacen da za a iya aiwatarwa, kamar rubutun tattarawa, daidaitawa
Babi na 4. Kafa Muhallin Ci Gaba 47
files, Tables partitions, da dai sauransu. Ana iya kwafin ayyuka da kuma wuce su, kuma ana iya aiwatar da su iri ɗaya. file za a iya harhadawa da kuma samar da su a cikin injina tare da nau'in yanayin ci gaban ESP-IDF iri ɗaya. Aikin ESP-IDF na yau da kullun file Ana nuna tsarin a cikin Hoto 4.14.
Hoto 4.14. Aikin ESP-IDF na yau da kullun file Tsarin Tunda ESP-IDF yana goyan bayan kwakwalwan kwamfuta na IoT da yawa daga Espressif, gami da ESP32, jerin ESP32-S, jerin ESP32-C, jerin ESP32-H, da sauransu, ana buƙatar ƙaddara manufa kafin haɗa lambar. Manufar ita ce duka na'urar kayan aikin da ke gudanar da shirin aikace-aikacen da kuma maƙasudin gina tsarin haɗawa. Dangane da buƙatun ku, zaku iya ƙayyade ɗaya ko fiye da manufa don aikinku. Don misaliample, ta hanyar umarni idf.py saita-manufa esp32c3, za ka iya saita manufa tari zuwa ESP32-C3, a lokacin da tsoho sigogi da harhada kayan aiki sarkar hanya ga ESP32C3 za a ɗora Kwatancen. Bayan haɗawa, ana iya ƙirƙirar shirin aiwatarwa don ESP32C3. Hakanan zaka iya sake sake saita saitin umarni don saita wata manufa ta daban, kuma tsarin tattarawa zai tsaftace ta atomatik kuma ya sake daidaitawa. Abubuwan da aka gyara
Abubuwan da ke cikin ESP-IDF na zamani ne kuma raka'o'in lambobi masu zaman kansu ana sarrafa su a cikin tsarin haɗawa. An tsara su azaman manyan fayiloli, tare da sunan babban fayil wanda ke wakiltar sunan bangaren ta tsohuwa. Kowane bangare yana da nasa rubutun nasa wanda 48 ESP32-C3 Wireless Adventure: Cikakken Jagora ga IoT
Yana ƙayyadad da sigogin tattarawar sa da abubuwan dogaro. Yayin aiwatar da aikin, ana haɗa abubuwan da aka haɗa zuwa ɗakunan karatu daban-daban (.a files) kuma a ƙarshe an haɗa su da sauran abubuwan haɗin don samar da shirin aikace-aikacen.
ESP-IDF yana ba da ayyuka masu mahimmanci, kamar tsarin aiki, direbobi na gefe, da tari na yarjejeniya ta hanyar sadarwa, a cikin nau'ikan abubuwan haɗin gwiwa. Ana adana waɗannan abubuwan da aka gyara a cikin kundin bayanan abubuwan da ke cikin tushen tushen ESP-IDF. Masu haɓakawa ba sa buƙatar kwafin waɗannan abubuwan da aka haɗa zuwa kundin adireshi na myProject. Madadin haka, kawai suna buƙatar tantance alaƙar dogaro da waɗannan abubuwan a cikin CMekeLists.txt na aikin. file ta amfani da umarnin REQUIRES ko PRIV_REQUIRES. Tsarin tattarawa zai gano ta atomatik kuma ya tattara abubuwan da ake buƙata.
Don haka, kundin tsarin abubuwan da ke ƙarƙashin myProject ba lallai bane. Ana amfani da shi kawai don haɗawa da wasu abubuwan al'ada na aikin, waɗanda zasu iya zama ɗakunan karatu na ɓangare na uku ko ƙayyadaddun lambar mai amfani. Bugu da ƙari, ana iya samun abubuwan haɗin kai daga kowace kundin adireshi ban da ESP-IDF ko aikin na yanzu, kamar daga aikin buɗaɗɗen tushe da aka ajiye a cikin wani kundin adireshi. A wannan yanayin, kawai kuna buƙatar ƙara hanyar ɓangaren ta saita canjin EXTRA_COMPONENT_DIRS a cikin CMakeLists.txt ƙarƙashin tushen directory. Wannan jagorar za ta soke duk wani ɓangaren ESP-IDF mai suna iri ɗaya, yana tabbatar da amfani da madaidaicin sashin.
Babban shirin shigarwa Babban littafin da ke cikin aikin yana biye da haka file tsari kamar sauran abubuwan da aka gyara (misali, bangaren1). Duk da haka, yana da mahimmanci na musamman kamar yadda ya zama wani ɓangare na wajibi wanda dole ne ya kasance a cikin kowane aiki. Babban kundin adireshi ya ƙunshi lambar tushen aikin da wurin shigarwa na shirin mai amfani, yawanci mai suna app_main. Ta hanyar tsoho, aiwatar da shirin mai amfani yana farawa daga wannan wurin shigarwa. Babban bangaren kuma ya bambanta domin yana dogara ta atomatik akan duk abubuwan da ke cikin hanyar bincike. Don haka, babu buƙatar nuna ƙayyadaddun abin dogaro ta amfani da umarnin REQUIRES ko PRIV_REQUIRES a cikin CMakikeLists.txt file.
Kanfigareshan file Tushen littafin aikin ya ƙunshi tsari file da ake kira sdkconfig, wanda ke ƙunshe da sigogin daidaitawa don duk abubuwan da ke cikin aikin. sdkconfig file tsarin tattarawa ne ke haifar da shi ta atomatik kuma ana iya gyara shi da sabunta shi ta umarnin idf.py menuconfig. Zaɓuɓɓukan menuconfig sun samo asali ne daga Kconfig.projbuild na aikin da Kconfig na abubuwan haɗin. Masu haɓaka ɓangaren gabaɗaya suna ƙara abubuwan daidaitawa a cikin Kconfig don yin sassauƙa da daidaitawa.
Gina kundin adireshi Ta tsohuwa, kundin adireshin aikin yana adana matsakaici files da fi-
Babi na 4. Kafa Muhallin Ci Gaba 49
nal executable shirye-shirye samar da idf.py ginawa umurnin. Gabaɗaya, ba lallai ba ne don isa ga abubuwan da ke cikin ginin ginin kai tsaye ba. ESP-IDF yana ba da ƙayyadaddun umarni don yin hulɗa tare da kundin adireshi, kamar yin amfani da umarnin filashi na idf.py don gano wurin da aka haɗa binary ta atomatik. file kuma kunna shi zuwa ƙayyadadden adireshi na walƙiya, ko amfani da cikakken tsaftataccen umarni idf.py don tsaftace gabaɗayan ginin directory.
Teburin bangare (partitions.csv) Kowane aikin yana buƙatar tebur bangare don raba sararin walƙiya kuma ƙayyade girman da adireshin farawa na shirin aiwatarwa da sararin bayanan mai amfani. Umurnin idf.py flash ko shirin haɓaka OTA zai kunna firmware zuwa adireshin da ya dace daidai da wannan tebur. ESP-IDF yana ba da tebur na tsoho da yawa a cikin abubuwan da aka gyara/partition_table, kamar partitions_singleapp.csv da partitions_two_ ota.csv, waɗanda za a iya zaɓa a cikin menuconfig.
Idan teburin ɓangaren tsoho na tsarin ba zai iya biyan buƙatun aikin ba, ana iya ƙara partitions.csv na al'ada zuwa kundin aikin kuma a zaɓa a cikin menuconfig.
4.3.3 Dokokin Gina Tsohuwar Tsarin Tsarin Tari
Dokoki don ƙetare abubuwan da aka haɗa tare da suna iri ɗaya Yayin aiwatar da aikin bincike, tsarin tattarawa yana bin takamaiman tsari. Da farko yana bincika abubuwan ciki na ESP-IDF, sannan yana neman abubuwan da ake buƙata na aikin mai amfani, sannan a ƙarshe yana bincika abubuwan da ke cikin EXTRA_COMPONENT_DIRS. A lokuta da kundayen adireshi da yawa sun ƙunshi abubuwan haɗin gwiwa tare da suna iri ɗaya, ɓangaren da aka samo a cikin kundin adireshi na ƙarshe zai ƙetare duk wasu abubuwan da suka gabata masu suna iri ɗaya. Wannan doka ta ba da damar gyare-gyaren abubuwan ESP-IDF a cikin aikin mai amfani, yayin kiyaye ainihin lambar ESP-IDF.
Dokoki don haɗa abubuwan gama gari ta tsohuwa Kamar yadda aka ambata a cikin sashe na 4.3.2, abubuwan da aka haɗa suna buƙatar ƙayyadaddun abubuwan dogaro ga wasu abubuwan da ke cikin CMekeLists.txt. Koyaya, abubuwan gama gari irin su freertos ana haɗa su ta atomatik a cikin tsarin gini ta tsohuwa, koda kuwa ba a bayyana alaƙar dogaro da su ba a cikin rubutun haɗawa. Abubuwan gama gari na ESP-IDF sun haɗa da freertos, Newlib, heap, log, soc, esp_rom, esp_common, xtensa/riscv, da cxx. Yin amfani da waɗannan abubuwan gama gari yana guje wa maimaita aiki lokacin rubuta CMakeLists.txt kuma sanya shi a takaice.
Dokoki don ƙetare abubuwan daidaitawa Masu haɓakawa na iya ƙara sigogin daidaitawa na asali ta ƙara tsayayyen tsari file mai suna sdkconfig.defaults zuwa aikin. Domin misaliample, ƙara CONFIG_LOG_
50 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
DEFAULT_LEVEL_NONE = y na iya saita mahallin UART don kada ku buga bayanan log ta tsohuwa. Bugu da ƙari, idan ana buƙatar saita takamaiman sigogi don takamaiman manufa, daidaitawa file Ana iya ƙara mai suna sdkconfig.defaults.TARGET_NAME, inda TARGET_NAME zai iya zama esp32s2, esp32c3, da sauransu. Waɗannan saitin files ana shigo da su cikin sdkconfig yayin haɗawa, tare da tsarin tsoho na gaba ɗaya file sdkconfig.defaults ana shigo da su da farko, sannan sai ƙayyadaddun ƙayyadaddun manufa file, kamar sdkconfig.defaults.esp32c3. A lokuta inda akwai abubuwan daidaitawa da suna iri ɗaya, ƙayyadaddun ƙayyadaddun ƙayyadaddun file zai kawar da tsohon.
4.3.4 Gabatarwa ga Rubutun Tari
Lokacin haɓaka aikin ta amfani da ESP-IDF, masu haɓaka ba kawai suna buƙatar rubuta lambar tushe ba amma kuma suna buƙatar rubuta CMekeLists.txt don aikin da abubuwan haɗin gwiwa. CMakeLists.txt rubutu ne file, wanda kuma aka sani da rubutun harhadawa, wanda ke bayyana jerin abubuwan da aka tattara, abubuwan daidaitawa, da umarni don jagorantar tsarin tattara lambar tushe. Tsarin tattarawa na ESP-IDF v4.3.2 ya dogara ne akan CMake. Baya ga tallafawa ayyukan CMake na asali da umarni, yana kuma bayyana jerin ayyuka na al'ada, yana mai da sauƙin rubuta rubutun harhadawa.
Rubutun da aka haɗa a cikin ESP-IDF sun haɗa da rubutun aikin da rubutun abubuwan da aka haɗa. CMakeLists.txt a cikin tushen littafin aikin ana kiransa rubutun tattarawar aikin, wanda ke jagorantar tsarin tattara dukkan aikin. Rubutun tattara kayan aiki na asali ya ƙunshi layiyoyi uku masu zuwa:
1. cmake_minimum_required(VERSION 3.5) 2. sun hada da($ENV{IDF_PATH}/tools/cmake/project.cmake) 3. project(myProject)
Daga cikin su, cmake_minimum_required (VERSION 3.5) dole ne a sanya shi akan layi na farko, wanda ake amfani dashi don nuna mafi ƙarancin lambar sigar CMake da aikin ke buƙata. Sabbin nau'ikan CMake gabaɗaya sun dace da baya tare da tsoffin juzu'in, don haka daidaita lambar sigar daidai lokacin amfani da sabbin umarnin CMake don tabbatar da dacewa.
sun haɗa da ($ ENV {IDF_PATH}/tools/cmake/project.cmake) shigo da abubuwan da aka riga aka tsara da kuma umarni na tsarin haɗa ESP-IDF, gami da ƙa'idodin gina tsoffin tsarin tsarin haɗawa da aka bayyana a Sashe na 4.3.3. project (myProject) ya ƙirƙira aikin da kansa kuma ya ƙayyade sunansa. Za a yi amfani da wannan suna azaman binary na ƙarshe na fitarwa file suna, watau myProject.elf da myProject.bin.
Ayyukan na iya samun abubuwa da yawa, gami da babban sashi. Babban jagorar matakin kowane bangare ya ƙunshi CMekeLists.txt file, wanda ake kira rubutun haɗakarwa. Ana amfani da rubutun haɗakar abubuwa musamman don tantance abubuwan dogaro, sigogin tsari, lambar tushe files, kuma ya haɗa da kai files za
Babi na 4. Kafa Muhallin Ci Gaba 51
tari. Tare da aikin al'ada na ESP-IDF idf_component_register, mafi ƙarancin lambar da ake buƙata don rubutun haɗakarwa shine kamar haka:
1. idf_component_register(SRCS "src1.c"
2.
INCLUDE_DIRS "hade"
3.
BANGASKIYA 1)
Ma'aunin SRCS yana ba da jerin tushe files a cikin bangaren, raba ta sarari idan akwai mahara files. Ma'aunin INCLUDE_DIRS yana ba da jerin sunayen kan jama'a file kundayen adireshi na bangaren, wanda za'a saka shi cikin hanyar neman wasu abubuwan da suka dogara da bangaren na yanzu. Ma'auni na BUKATA yana gano abubuwan da suka dogara da bangaren jama'a don abin da ke yanzu. Ya wajaba don abubuwan da aka gyara su bayyana karara wadanda suka dogara da su, kamar bangaren2 ya danganta da bangaren1. Koyaya, don babban ɓangaren, wanda ya dogara da duk abubuwan da aka gyara ta tsohuwa, ana iya barin sigar BUKATA.
Bugu da ƙari, ana iya amfani da umarnin CMake na asali a cikin rubutun haɗawa. Don misaliample, yi amfani da saitin umarni don saita masu canji, kamar saiti (VARIABLE “VALUE”).
4.3.5 Gabatarwa zuwa Dokokin gama gari
ESP-IDF yana amfani da CMake (kayan aikin daidaita aikin), Ninja (kayan aikin gini) da esptool (kayan aikin walƙiya) a cikin aiwatar da harhada lambobin. Kowane kayan aiki yana taka rawa daban-daban a cikin haɗawa, gini, da tsarin walƙiya, kuma yana goyan bayan umarnin aiki daban-daban. Don sauƙaƙe aikin mai amfani, ESP-IDF yana ƙara haɗaɗɗen gaba-gaba idf.py wanda ke ba da damar kiran umarnin da ke sama cikin sauri.
Kafin amfani da idf.py, tabbatar cewa:
An ƙara canjin yanayi IDF_PATH na ESP-IDF zuwa tashar ta yanzu. · Littafin aiwatar da umarni shine tushen directory na aikin, wanda ya haɗa da
Rubutun hada aikin CMekeLists.txt.
Umarnin gama gari na idf.py sune kamar haka:
idf.py –help: nuna jerin umarni da umarnin amfani da su. · idf.py saita-manufa : saita harhada taidf.py fullcleanrget, irin wannan
a matsayin maye gurbin da esp32c3. idf.py menuconfig: ƙaddamar da menuconfig, ƙayyadaddun yanayin hoto
kayan aiki, wanda zai iya zaɓar ko canza zaɓuɓɓukan sanyi, kuma ana adana sakamakon sanyi a cikin sdkconfig file. · ginawa idf.py: ƙaddamar da harhada code. Matsakaici files kuma shirin aiwatarwa na ƙarshe da aka ƙirƙira ta hanyar haɗawa za a adana shi a cikin kundin tsarin ginin aikin ta tsohuwa. Tsarin tattarawa yana ƙaruwa, wanda ke nufin cewa idan tushe ɗaya ne file an gyara, kawai wanda aka gyara file za a hada lokaci na gaba.
52 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
· idf.py mai tsabta: tsaftace tsaka-tsaki files halitta ta hanyar hada aikin. Za a tilastawa duka aikin tattarawa a cikin hadawa na gaba. Lura cewa saitin CMake da gyare-gyaren daidaitawa da menuconfig ba za a share su ba yayin tsaftacewa.
· idf.py cikakken mai tsabta: goge gabaɗayan tsarin ginin ginin, gami da duk abin da aka fitar na sanyi na CMake files. Lokacin sake gina aikin, CMake zai saita aikin daga karce. Da fatan za a lura cewa wannan umarnin zai sake share su akai-akai files a cikin kundin ginin ginin, don haka yi amfani da shi tare da taka tsantsan, da tsarin aikin file ba za a share.
· idf.py flash: walƙiya binary shirin aiwatarwa file wanda aka samar ta hanyar ginawa zuwa manufa ESP32-C3. Zaɓuɓɓukan -p kuma -b Ana amfani da su don saita sunan na'urar tashar tashar jiragen ruwa da ƙimar baud don walƙiya, bi da bi. Idan waɗannan zaɓuɓɓuka guda biyu ba a ƙayyade ba, za a gano tashar tashar jiragen ruwa ta atomatik kuma za a yi amfani da ƙimar baud na asali.
· idf.py duba: nuna serial tashar jiragen ruwa fitarwa na manufa ESP32-C3. Za a iya amfani da zaɓi -p don tantance sunan na'urar tashar tashar tashar mai masaukin baki. Yayin buga tashar jiragen ruwa na serial, danna haɗin maɓalli Ctrl+] don fita daga mai duba.
Hakanan ana iya haɗa waɗannan umarni na sama kamar yadda ake buƙata. Don misaliample, umurnin idf.py gina filasha duba zai yi code harhada, flash, da kuma bude serial port Monitor a jere.
Kuna iya ziyartar https://bookc3.espressif.com/build-system don ƙarin sani game da tsarin tattarawar ESP-IDF.
4.4 Aiki: Haɗa ExampShirin "Blink"
4.4.1 Fitampda Analysis
Wannan sashe zai dauki shirin Blink a matsayin tsohonampdon yin nazari file tsari da ka'idojin coding na ainihin aikin daki-daki. Shirin Blink yana aiwatar da tasirin haske na LED, kuma aikin yana cikin directory examples/farawa/kiftawa, wanda ya ƙunshi tushe file, daidaitawa files, da kuma rubutun harhada da yawa.
Aikin haske mai wayo da aka gabatar a cikin wannan littafi ya dogara ne akan wannan tsohonampda shirin. Za a ƙara ayyuka a hankali a cikin surori na gaba don kammala shi.
Lambar tushe Domin nuna duk tsarin ci gaba, an kwafi shirin Blink zuwa esp32c3-iot-projects/firmware na'ura/1 blink.
Tsarin shugabanci na aikin ƙyalli files yana nunawa a cikin hoto 4.15.
Aikin ƙyalli ya ƙunshi babban kundin adireshi guda ɗaya kawai, wanda shine na musamman sashi wanda
Babi na 4. Kafa Muhallin Ci Gaba 53
Hoto na 4.15. File tsarin shugabanci na aikin ƙyalli
dole ne a haɗa su kamar yadda aka bayyana a cikin sashe na 4.3.2. Ana amfani da babban kundin adireshi don adana aiwatar da aikin app_main(), wanda shine wurin shigarwa zuwa shirin mai amfani. Aikin ƙyalli ba ya haɗa da directory directory, saboda wannan tsohonample kawai yana buƙatar amfani da abubuwan da suka zo tare da ESP-IDF kuma baya buƙatar ƙarin abubuwan haɗin gwiwa. Ana amfani da CMakeLists.txt da aka haɗa a cikin aikin ƙyalli don jagorantar tsarin tattarawa, yayin da ake amfani da Kconfig.projbuild don ƙara abubuwan daidaitawa na wannan tsohonampda shirin a menuconfig. Sauran marasa buƙata files ba zai shafi harhada lambar ba, don haka ba za a tattauna su a nan ba. Gabatarwa daki-daki ga aikin kyaftawa files shine kamar haka.
1. /*blink.c ya haɗa da kai mai zuwa files*/
2. #hada da
//Standard C ɗakin karatu file
3. #hada da "freertos/freeRTOS.h" //FreeRTOS babban taken file
4. #hade "freertos/task.h"
//FreeRTOS Task header file
5. #hade "sdkconfig.h"
// Kanfigareshan taken file wanda aka samar ta kconfig
6. #hada da "driver/gpio.h"
// GPIO direban kai file
Madogararsa file blink.c ya ƙunshi jerin rubutun kai filedaidai da aikin shela-
tions. ESP-IDF gabaɗaya yana bin tsari na haɗa madaidaicin taken ɗakin karatu files, FreeR-
TOS head files, kan direba files, sauran bangaren jigon files, da taken aikin files.
A tsari a cikin abin da kai files an haɗa su na iya shafar sakamakon ƙarshe na ƙarshe, don haka gwada
bi ka'idojin tsoho. Ya kamata a lura cewa sdkconfig.h yana samuwa ta atomatik
ta kconfig kuma za'a iya saita shi ta hanyar umarnin idf.py menuconfig.
Gyaran wannan kan kai tsaye file za a sake rubutawa.
1. /* Kuna iya zaɓar GPIO daidai da LED a cikin idf.py menuconfig, kuma sakamakon gyara na menuconfig shine ƙimar CONFIG_BLINK
_GPIO za a canza. Hakanan zaka iya canza ma'anar macro kai tsaye
nan, kuma canza CONFIG_BLINK_GPIO zuwa ƙayyadaddun ƙima.*/ 2. # ayyana BLINK_GPIO CONFIG_BLINK_GPIO
3. app_main (void)
4. {
5.
/* Sanya IO azaman aikin tsoho na GPIO, kunna yanayin cirewa, kuma
6.
musaki hanyoyin shigarwa da fitarwa*/
7.
gpio_reset_pin(BLINK_GPIO);
54 ESP32-C3 Kasada mara waya: Cikakken Jagora ga IoT
8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.}
/* Saita GPIO zuwa yanayin fitarwa*/ gpio_set_direction(BLINK_GPIO, GPIO_MODE_OUTPUT); yayin (1) {
/ * Buga log * / printf ("Kashe LEDn"); /* Kashe LED (fitarwa low matakin)*/ gpio_set_level(BLINK_GPIO, 0); /* Jinkirta (1000 ms)*/ vTaskDelay(1000 / portTICK_PERIOD_MS); printf ("Kunna da LEDn"); /* Kunna LED (fitarwa babban matakin)*/ gpio_set_level(BLINK_GPIO, 1); vTaskDelay(1000 / portTICK_PERIOD_MS); }
Ayyukan app_main() a cikin Blink example shirin yana aiki azaman wurin shigarwa don shirye-shiryen masu amfani. Ayyuka ne mai sauƙi ba tare da sigogi ba kuma babu ƙimar dawowa. Ana kiran wannan aikin bayan tsarin ya kammala farawa, wanda ya haɗa da ayyuka kamar ƙaddamar da tashar jiragen ruwa na log, daidaitawa guda / dual core, da daidaitawa mai kulawa.
Aikin app_main() yana gudana a cikin mahallin wani aiki mai suna babba. Za'a iya daidaita girman tari da fifikon wannan ɗawainiya a cikin menuconfig Componentconfig gama gari masu alaƙa da ESP.
Don ayyuka masu sauƙi kamar kiftawar LED, duk mahimman lambar za a iya aiwatar da su kai tsaye a cikin aikin app_main(). Wannan yawanci ya ƙunshi ƙaddamar da GPIO daidai da LED da yin amfani da madauki na ɗan lokaci (1) don kunna LED da kashewa. A madadin, zaku iya amfani da FreeRTOS API don ƙirƙirar sabon ɗawainiya wanda ke ɗaukar kyaftawar LED. Da zarar an ƙirƙiri sabon aikin cikin nasara, zaku iya fita aikin app_main().
Abubuwan da ke cikin babban/CMakeLists.txt file, wanda ke jagorantar tsarin hadawa don babban bangaren, shine kamar haka:
1. idf_component_register (SRCS "blink.c" INCLUDE_DIRS "." )
Daga cikinsu, main/CMakeLists.txt kawai yana kiran aikin tsarin tarawa, wato idf_component_register. Mai kama da CMakeLists.txt don yawancin sauran abubuwan haɗin gwiwa, ana ƙara blink.c zuwa SRCS, da tushen. fileZa a haɗa abubuwan da aka ƙara zuwa SRCS. A lokaci guda, ".", wanda ke wakiltar hanyar da CMakeLists.txt yake, ya kamata a ƙara zuwa INCLUDE_DIRS azaman kundayen adireshi na kan kai. files. Abubuwan da ke cikin CMakeLists.txt sune kamar haka:
1. #Specify v3.5 a matsayin mafi tsohuwar sigar CMake wanda aikin yanzu ke goyan bayan. -IDF tsarin hadawa
Babi na 4. Kafa Muhallin Ci Gaba 55
5. sun haɗa da ($ ENV{IDF_PATH}/tools/cmake/project.cmake) 6. # Ƙirƙiri wani aiki mai suna "blink" 7. project(myProject)
Daga cikin su, CMakeLists.txt a cikin tushen directory yafi hada da $ENV{IDF_ PATH}/tools/cmake/project.cmake, wanda shine babban tsarin CMake file ESP-IDF ne ya bayar. Ana amfani dashi don con
Takardu / Albarkatu
![]() |
Espressif Systems ESP32-C3 Kasadar Mara waya [pdf] Jagorar mai amfani ESP32-C3 Wireless Adventure, ESP32-C3, Wireless Adventure, Adventure |