Turinys:

XOD maitinama įkraunama saulės lempa: 9 žingsniai (su nuotraukomis)
XOD maitinama įkraunama saulės lempa: 9 žingsniai (su nuotraukomis)

Video: XOD maitinama įkraunama saulės lempa: 9 žingsniai (su nuotraukomis)

Video: XOD maitinama įkraunama saulės lempa: 9 žingsniai (su nuotraukomis)
Video: Аудиокнига «Итан Фром» Эдит Уортон 2024, Lapkritis
Anonim
XOD maitinama įkraunama saulės lempa
XOD maitinama įkraunama saulės lempa

Daugelyje namų apyvokos prekių ir techninės įrangos parduotuvių galima įsigyti nebrangių saulės sodo/tako lempų. Tačiau, kaip sako senas posakis, dažniausiai gaunate tai, už ką mokate. Įprastos jų naudojamos įkrovimo ir apšvietimo grandinės yra paprastos ir pigios, tačiau gaunamas šviesos srautas yra ne kas kita, kaip įspūdinga (ir vos pakanka, kad visi, besinaudojantys jūsų pėsčiųjų taku, pamatytų, kur jie eina!)

Tai yra mano bandymas suprojektuoti ne tinklo apšvietimo modulį, kuris būtų reikšmingas patobulinimas, tačiau vis dar yra palyginti nebrangus. Suteikdamas jai „smegenų“. „XOD.io“yra naujas IDE, suderinamas su „Arduino“įterptąja kūrimo platforma, kurioje galite „rašyti“kodą grafiškai. Aplinka perkelia jūsų grafinį eskizą į šiuolaikinį C ++, kuris yra nepaprastai efektyvus kuriant kompaktišką kodą ir sukuria šaltinį, visiškai suderinamą su „Arduino IDE“atsargomis, nereikalaujant papildomų išorinių priklausomybių. Tokiu būdu net ir maži, nebrangūs mikrovaldikliai, turintys ribotus programų ir duomenų saugojimo išteklius, gali būti naudojami sudėtingoms užduotims atlikti.

Šis projektas parodo, kaip du kartu su Arduino suderinami ATTiny85 mikrovaldikliai gali būti naudojami valdyti lempos galios reikalavimus. Pirmasis procesorius tvarko jutimo aplinkos duomenis iš išorinės aparatūros, o antrasis bando surinkti didžiausią energijos kiekį iš saulės, kurią jis gali gauti dienos metu, ir tada valdo didelės galios šviesos diodo apšvietimą, kai akumuliatorius išsikrauna naktį. Antrasis procesorius atlieka savo darbą kompaktiškai įgyvendindamas „miglotos logikos“valdymą. Abiejų lustų programinė įranga buvo sukurta tik XOD aplinkoje.

1 žingsnis: reikalingos medžiagos

Naujausia „Arduino IDE“versija su ATTinyCore plėtiniu, įdiegtu iš „Lentų“tvarkyklės

„Sparkfun USBTinyISP ATTiny“programuotojas, 11801 arba lygiavertis „Sparkfun“produkto puslapis

„Pololu“reguliuojamas žemos įtampos stiprinimo keitiklis su išjungimo įėjimu, U1V11A arba lygiavertis „Pololu“produkto puslapis

Didelės galios baltas arba RGB šviesos diodas su radiatoriumi, bendru anodu, „Adafruit 2524“arba lygiaverčiu „Adafruit“produkto puslapiu

Mikroschema ATTiny85 8 kontaktų DIP pakuotėje, 2 „Mouser“produkto puslapis

8 kontaktų DIP IC lizdai, 2

Didmeninės talpos kondensatorius, 16 v 220 uF

Išėjimo kondensatorius, 6.3v 47uF

Srovės ribojimo rezistoriai, 50 omų 1/4 vatų

i2c traukiamieji rezistoriai, 4.7k, 2

Skydo įtampos jutiklio rezistoriai, 1/4 vatai, 100k, 470k

Srovės jutimo rezistorius, 10 omų 1⁄2 vatų 1% tolerancija

Apėjimo kondensatoriai, 0,1uF keramika, 2

2 3,7 v 100 mAh įkraunama ličio jonų baterija, PKCELL LP401 arba lygiavertė

Plokštės kištuko įvesties lizdas, 1

Mini gnybtų blokai 3 x 3 colių lydmetalio plokštė ir plona vientiso laido jungtis

Bandymams beveik tikrai reikės osciloskopo, multimetro ir maitinimo šaltinio

2 veiksmas: aplinkos sąranka

Aplinkos sąranka
Aplinkos sąranka

„XOD“aplinka nepalaiko „ATTiny“procesorių serijos, tačiau naudojant kelias trečiųjų šalių bibliotekas iš „Arduino“visatos yra paprasta pridėti šios serijos AVR palaikymą. Pirmasis žingsnis yra įdiegti biblioteką „ATTinyCore“iš „Arduino IDE“išskleidžiamojo meniu „Įrankiai → Lenta → Lentos tvarkyklė“. Įsitikinkite, kad nustatymai, kaip parodyta pridėtame paveikslėlyje, yra teisingi - nepamirškite, kad prieš įkeldami bet kokį kodą turite paspausti „Burn bootloader“, kad pakeistumėte išjungimo įtampos ir laikrodžio greičio nustatymo saugiklius!

Šios bibliotekos šaltinio kodą galite rasti adresu

Kita naudinga saugyklos biblioteka yra „FixedPoints“, kuri yra kompiliavimo metu įdiegta fiksuoto taško matematika, skirta „Arduino“palaikomiems procesoriams. „ATTiny“turi ribotą SRAM ir programos atmintį, o tai labai padeda mažinant galutinį eskizo dydį, kad bendram duomenų saugojimui būtų naudojamas 2 baitų sveikasis skaičius, o ne slankiojo kablelio tipas, kuriam reikia 4 baitų AVR. Vykdymo greitis taip pat turėtų būti pagerintas, nes „ATTiny“neturi aparatinės įrangos dauginimo įrenginio, o juo labiau aparatūros slankiojo kablelio!

Šaltinio kodą galite rasti čia:

Pamoka apie tai, kaip sukurti, perkelti ir įdiegti XOD grafinius eskizus adresu: https://github.com/Pharap/FixedPointsArduino, labai padės suprasti, kaip buvo sukurti įtraukti šaltinio failai.

3 žingsnis: dizaino apžvalga

Dizaino apžvalga
Dizaino apžvalga
Dizaino apžvalga
Dizaino apžvalga

Plokštėje du „ATTiny85“procesoriai yra sujungti per „i2c“sąsają ir yra naudojami kartu, kad būtų galima valdyti saulės kolektoriaus įtampą, srovę, tekančią į akumuliatorių iš stiprintuvo keitiklio, kai skydas šviečia, akumuliatoriaus įtampą ir akumuliatorių. temperatūra.

„Boost“keitiklis yra „off-the-shelf“modulis, pagrįstas „Texas Instruments TPS6120 IC“, kuris gali sumažinti 0,5 volto įėjimo įtampą ir padidinti ją nuo 2 iki 5 voltų. Jutiklio šerdį sudaro keli funkciniai blokai. Pagrindinis laikrodis pradeda veikti, kai tik iš saulės kolektoriaus įvesties įjungiamas stiprumo keitiklio maitinimas. Pradedamas eskizo vykdymas, ir pirmiausia reikia nustatyti, ar skydelis pakankamai apšviestas, kad akumuliatorius gautų įkrovimo srovę.

Saulės skydelio įtampa perduodama per du skaitmeninius filtrus, o jei ji viršija tam tikrą slenkstį, sistema nustato, kad skydelis yra apšviestas, ir nukreipia pagrindinį laikrodį į srovės jutiklio monitorių. Tai yra skirtingai sukonfigūruotas mikroschemos analogas į skaitmeninį keitiklio kanalą, kuris nustato įtampą per 10 omų 1% tolerancijos rezistorių, sujungtą nuosekliai tarp padidinimo keitiklio išėjimo ir akumuliatoriaus įvesties. Kai skydelis nėra apšviestas, šis „ATTiny“siunčia signalą antrajam „ATTiny“, nurodydamas, kad jis stebėtų LED maitinimą, o ne įkrovimo galią, ir išjunkite padidinimo keitiklį bei izoliuokite įvestį, kad akumuliatorius nesiųstų srovės atgal per skydelį.

Antrasis „ATTiny“branduolys yra tas, kuriame veikia LED valdiklis ir akumuliatoriaus įkrovos stebėjimo sistema. Skydelio įtampos, akumuliatoriaus įtampos ir akumuliatoriaus įkrovimo srovės duomenys siunčiami į šį branduolį apdoroti per miglotos logikos tinklą, kuris bando generuoti tinkamą PWM signalą, kuris būtų taikomas SHTDN kaiščiui, taip kontroliuojant į akumuliatorių siunčiamos srovės kiekį. įkrauti jį šviečiant-pagrindinė maksimalios galios taško stebėjimo (MPPT) forma. Jis taip pat gauna signalą iš jutiklio šerdies, nurodantį, ar jis turėtų įjungti ar išjungti šviesos diodą, priklausomai nuo jutiklio šerdies dienos išėjimo/ naktinis šnipštas.

Kai šviesos diodas yra aktyvus naktį, šis „ATTiny“stebi akumuliatoriaus įtampos duomenis, atsiųstus iš jo bičiulio, ir savo lusto temperatūros jutiklį, kad būtų galima apytiksliai įvertinti, kiek energijos įstumiama į šviesos diodą (akumuliatoriaus įtampa mažėja) ir lusto temperatūra pakyla, kai srovė ištraukiama iš kaiščių.) Neaiškios logikos tinklas, susietas su LED PWM pleistru, bando nuspręsti, kiek akumuliatoriaus energijos dar yra, ir sumažinti šviesos diodų intensyvumą, kai baterija išsikrauna.

4 veiksmas: pasirinktinių pataisų kūrimas iš XOD pagrindinės bibliotekos

Tinkintų pataisų kūrimas iš XOD pagrindinės bibliotekos
Tinkintų pataisų kūrimas iš XOD pagrindinės bibliotekos
Tinkintų pataisų kūrimas iš XOD pagrindinės bibliotekos
Tinkintų pataisų kūrimas iš XOD pagrindinės bibliotekos

Šiam dizainui buvo naudojami keli pasirinktiniai pataisos mazgai, kai kurie iš jų gali būti lengvai sukurti iš įtrauktų XOD mazgų, o kai kurie buvo įdiegti naudojant C ++.

Pirmasis iš dviejų pasirinktinių pataisos mazgų nuotraukose yra eksponentinio slankiojo vidurkio filtro įgyvendinimas. Tai eskizuose nuosekliai naudojamas žemų dažnių žemų dažnių skaitmeninis filtras, kuris vieną kartą filtruoja gaunamą saulės kolektoriaus įtampą loginei šerdžiai ir dar kartą maitina trigerį, kuris lemia ilgalaikį aplinkos apšvietimą. Žiūrėkite Vikipedijos įrašą apie eksponentinį išlyginimą.

Mazgo struktūra paveikslėlyje yra tiesiog tiesioginis grafinis straipsnio perdavimo funkcijos vaizdas, sujungtas naudojant nuorodas iš atitinkamų įėjimų į išvestis. Bibliotekoje yra atidėjimo mazgas, leidžiantis sukurti grįžtamojo ryšio kilpą (XOD įspės jus, jei sukursite grįžtamojo ryšio ciklą neįterpdami ciklo vėlavimo, kaip aprašyta XOD vykdymo modelyje.) pleistras veikia gerai, tai paprasta.

Antrasis pasirinktinis pataisos mazgas yra „XOD“komplektuojamos atsarginės šlepetės variantas, kuris tiekiamas filtruoto skydo įtampa. Jis užsifiksuoja aukštai arba žemai, priklausomai nuo to, ar įvesties signalas yra didesnis ar mažesnis už tam tikrą slenkstį. „Cast“mazgai naudojami konvertuoti „Boolean“išvesties vertes į impulsų duomenų tipą, kad būtų suaktyvinta klaida, kai būsena pereina iš žemos į aukštą. Tikimasi, kad šio pataisos mazgo dizainas turėtų būti šiek tiek savaime suprantamas iš ekrano kopijos.

5 veiksmas: pasirinktinių pataisų kūrimas naudojant „C ++“

Tinkintų pataisų kūrimas naudojant C ++
Tinkintų pataisų kūrimas naudojant C ++

Taikant specialius reikalavimus, kai reikalingos mazgo funkcijos būtų per daug sudėtingos, kad būtų galima lengvai pavaizduoti grafiškai, arba kurios priklauso nuo „Arduino“bibliotekų, kurios nėra vietinės „Arduino“aplinkos, XOD leidžia tiems, kurie turi tam tikrų C/C ++ žinių, parašyti kąsnio dydžio gabaliukus. kodą, kurį vėliau galima integruoti į pataisą, kaip ir bet kurį kitą vartotojo sukurtą ar atsarginį mazgą. Failų meniu pasirinkus „sukurti naują pataisą“sukuriamas tuščias lapas, su kuriuo galima dirbti, o įvesties ir išvesties mazgus galima vilkti iš pagrindinės bibliotekos skyriaus „mazgai“. Tada mazgas „neįdiegtas-in-xod“gali būti įtrauktas, o spustelėjus jis atvers teksto rengyklę, kurioje reikiamas funkcijas galima įdiegti C ++. Čia aprašoma, kaip valdyti vidinę būseną ir prieigą prie įvesties ir išvesties prievadų iš C ++ kodo.

Kaip pavyzdys, kaip įdiegti pasirinktinius pleistrus C ++, dar du pasirinktiniai tvarkyklės šerdies pataisymai naudojami norint apskaičiuoti vairuotojo šerdies maitinimo įtampą ir šerdies temperatūrą. Kartu su neryškiu tinklu tai leidžia apytiksliai apskaičiuoti likusią akumuliatoriaus energiją, kad būtų galima maitinti šviesos diodus tamsoje.

Temperatūros jutiklio pleistras taip pat tiekiamas su maitinimo įtampos jutiklio išėjimu, kad būtų galima geriau įvertinti - jutiklio šerdies temperatūra leidžia apytiksliai įvertinti, kiek šviesos dega šviesos diodai, ir kartu su maitinimo įtampos rodmenimis, kai išsikrovus akumuliatoriui, dar apytiksliai apskaičiuojama, kiek akumuliatoriaus energijos liko. Jis neturi būti itin tikslus; jei šerdis „žino“, kad šviesos diodai naudoja daug srovės, tačiau akumuliatoriaus įtampa sparčiai krenta, tikriausiai galima teigti, kad akumuliatoriaus energija truks ne taip ilgai, ir laikas lempą išjungti.

6 žingsnis: Statyba

Statyba
Statyba
Statyba
Statyba
Statyba
Statyba

Projektą sukūriau ant nedidelio prototipų plokštės gabalo su varinėmis trinkelėmis skylių dalims. Lizdų naudojimas IC labai padeda programuoti/modifikuoti/išbandyti; „Sparkfun“„USBTiny“IPT plokštėje yra panašus lizdas, todėl dviejų lustų programavimas apima tik programuotojo prijungimą prie kompiuterio USB prievado, įkelto XOD kodo įkėlimą iš pridėtų „Arduino.ino“failų su atitinkamais plokštės ir programuotojo nustatymais, ir tada švelniai ištraukite drožles iš programuotojo lizdo ir įkiškite jas į protoboard lizdus.

„Pololu TPS6120“pagrindu pagamintas padidinimo keitiklio modulis yra ant stovo plokštės, prilituotos prie protobooto ant kaiščių antgalių, todėl galima sutaupyti vietos montuojant kai kuriuos komponentus po apačia. Ant savo prototipo aš įdėjau du 4,7 k ištraukimo rezistorius. Jie reikalingi, kad „i2c“magistralė tarp lustų tinkamai veiktų - be jų ryšys neveiks! Dešinėje plokštės pusėje yra saulės kolektoriaus kištuko įvesties lizdas ir įvesties laikymo kondensatorius. Geriausia pabandyti prijungti lizdą ir šį dangtelį tiesiogiai kartu su lydmetaliu, o ne prijungti laidą, kad būtų pasiektas kuo mažesnis pasipriešinimo kelias. Tuomet naudojamas kietas lydmetalis, skirtas teigiamam saugojimo kondensatoriaus gnybtui prijungti tiesiai prie padidinimo modulio įėjimo įtampos gnybto, o padidinimo modulio įžeminimo kaištį - tiesiai prie lizdo įžeminimo kaiščio.

Abiejų ATTinys lizdų dešinėje ir kairėje yra 0,1uF nusileidimo/išjungimo kondensatoriai. Šių komponentų taip pat svarbu nepalikti, ir jie turėtų būti prijungti prie IC maitinimo ir įžeminimo kaiščių kuo trumpesniu ir tiesesniu keliu. 10 omų srovės jutiklis yra kairėje, jis yra prijungtas prie išėjimo iš stiprintuvo keitiklio ir kiekviena pusė yra prijungta prie jutiklio šerdies įvesties kaiščio - šie kaiščiai yra nustatyti kaip diferencinis ADC, kad netiesiogiai išmatuotų srovė į akumuliatorių. Jungtis tarp „i2c“magistralės IC kaiščių ir stiprintuvo keitiklio išjungimo kaiščio ir pan. Gali būti atliekama naudojant prijungimo laidą, esantį apatinėje plokštės pusėje, tam labai tinka labai plona tvirtos vielos jungiamoji viela. Tai palengvina pakeitimus ir taip pat atrodo daug tvarkingiau nei bėgioti džemperiai tarp skylių viršuje.

Mano naudojamas LED modulis buvo trijų spalvų RGB blokas, mano planas buvo, kad visi trys šviesos diodai būtų aktyvūs, kad baltos spalvos išgautų, kai akumuliatorius buvo beveik visiškai įkrautas, ir lėtai išnyks mėlynas šviesos diodas į geltoną, kai išsikrovė akumuliatorius. Tačiau ši funkcija dar turi būti įgyvendinta. Vienas baltas šviesos diodas su vienu srovės ribojimo rezistoriumi taip pat veiks gerai.

7 žingsnis: bandymas, 1 dalis

Bandymas, 1 dalis
Bandymas, 1 dalis

Užprogramavus abu „ATTiny IC“su pridedamais eskizų failais per USB programuotoją iš „Arduino“aplinkos, prieš bandant įkrauti akumuliatorių iš saulės kolektoriaus, galima patikrinti, ar du prototipo branduoliai veikia tinkamai. Idealiu atveju tam reikia pagrindinio osciloskopo, multimetro ir maitinimo šaltinio.

Pirmas dalykas, kurį reikia patikrinti, yra tai, kad bet kurioje plokštės vietoje nėra trumpojo jungimo, prieš prijungdami IC, akumuliatorių ir skydelį į lizdus, kad išvengtumėte galimos žalos! Lengviausias būdas tai padaryti yra naudoti stendo maitinimo šaltinį, kuris tokiu atveju gali apriboti jo išėjimo srovę iki saugios vertės. Aš naudoju savo maitinimo šaltinį, esant 3 voltų ir 100 mA ribai, prijungtą prie saulės kolektorių įvesties lizdo gnybtų prie teigiamo ir neigiamo maitinimo laidų. Jei nėra nieko, išskyrus pasyvius komponentus, iš esmės neturėtų būti užregistruota srovės įtampa maitinimo šaltinio dabartiniame monitoriuje. Jei yra didelis srovės srautas arba maitinimas riboja srovę, kažkas negerai ir plokštę reikia patikrinti, ar nėra klaidingai prijungtų jungčių ar kondensatorių su atvirkštiniu poliškumu.

Kitas žingsnis yra užtikrinti, kad padidinimo keitiklis veiktų tinkamai. Plokštėje yra sraigtinis potenciometras, kai maitinimo šaltinis vis dar prijungtas ir keturi keitiklio kaiščiai yra tinkamai prijungti, potenciometrą reikia pasukti mažu atsuktuvo antgaliu, kol įtampa modulio išėjimo gnybte bus apie 3,8–3,9 volto. Ši nuolatinės srovės vertė veikimo metu nesikeis, vairuotojo šerdis valdys vidutinę išėjimo įtampą pulsuodama modulio išjungimo kaištį.

8 žingsnis: bandymas, 2 dalis

Bandymas, 2 dalis
Bandymas, 2 dalis
Bandymas, 2 dalis
Bandymas, 2 dalis

Kitas dalykas, kurį reikia patikrinti, yra tai, kad „i2c“komunikacija veikia gerai, o plokštės maitinimo šaltinis gali būti sumontuotas. Osciloskopu turi būti pulsuojantys signalai tiek fizinio lusto 5, tiek 7 smeigtukuose, o ši „i2c“tvarkyklė bando nusiųsti duomenis savo bičiuliui. Išjungus vairuotojo šerdį galima įdiegti ir dar kartą patikrinti ryšį osciloskopu, abiejose linijose turėtų būti matoma didesnė impulsų seka. Tai reiškia, kad lustai tinkamai bendrauja.

Tai padeda šiek tiek įkrauti akumuliatorių paskutiniam visam bandymui. Šiam tikslui taip pat galima naudoti maitinimą ant stendo, kai srovės riba nustatyta apie 50 mA, o įtampa vis dar išlieka 3,8 volto, todėl „LiPo“akumuliatorius kelias minutes bus prijungtas tiesiogiai.

Paskutinis žingsnis yra išbandyti visą sistemą - kai viskas yra prijungta, jei skydas yra uždengtas dešimt ar 15 sekundžių, šviesa turėtų užsidegti, valdant per vairuotojo šerdies PWM išvestį. Kai skydas yra ryškioje saulės šviesoje, akumuliatorius turėtų krautis iš padidinimo keitiklio išvesties. Apytikslį logikos tinklą galima netiesiogiai patikrinti, ar jis veikia tinkamai, pažvelgus į PWM liniją, varančią padidinimo keitiklio išjungimo kaištį; didėjant apšvietimui, kai akumuliatorius yra žemos įkrovos būsenos, impulsų plotis turėtų padidėti, o tai rodo, kad saulės šviesai gaunant daugiau energijos, vairuotojo šerdis signalizuoja, kad į akumuliatorių reikia siųsti daugiau energijos!

9 žingsnis: Priedas apie miglotą logiką

Priedas apie miglotą logiką
Priedas apie miglotą logiką

Neaiški logika yra mašininio mokymosi technika, kurią galima naudoti valdant aparatinės įrangos sistemas, kai daugelis valdomos sistemos parametrų yra neaiškūs, todėl aiškiai įvedamas išvesties valdymo sprendimas siekiant tikslo, kurį sunku užrašyti matematiškai. Tai pasiekiama naudojant logines vertes, kurios yra kažkur tarp 0 (klaidinga) ir 1 (tiesa), išreiškiant neapibrėžtumą vertėje, kuri labiau panaši į žmogaus („dažniausiai tiesa“arba „nelabai tiesa“), ir leidžiant pilką zoną tarp teiginių, kurie yra 100% teisingi ir 100% klaidingi. Tai pasiekiama pirmiausia paėmus įvesties kintamųjų, pagal kuriuos reikia priimti sprendimą, pavyzdžius ir juos „neryškinant“.

Bet kurios neryškios loginės sistemos esmė yra „neaiški asociatyvi atmintis“. Tai primena matricą, kur akumuliatoriaus įkrovimo grandinės atveju išsaugomas 3x3 verčių rinkinys, svyruojantis nuo 0 iki 1. Matricos reikšmes galima apytiksliai susieti su tuo, kaip žmogus samprotautų apie tai, koks turėtų būti PWM koeficientas, valdantis padidinimo keitiklio SHTDN kaištį, atsižvelgiant į tai, kaip aukščiau pateikta narystės funkcija atitinka tam tikrą įvesties rinkinį. Pavyzdžiui, jei skydelio įėjimo įtampa yra aukšta, tačiau į akumuliatorių įtraukiama srovė yra maža, tai tikriausiai reiškia, kad galima suvartoti daugiau energijos, o PWM nustatymas nėra optimalus ir turėtų būti padidintas. Ir atvirkščiai, jei skydelio įtampa sumažėja, bet įkroviklis vis dar bando į akumuliatorių įjungti didelę srovę, taip pat bus švaistoma, todėl geriausia būtų sumažinti PWM signalą į stiprinimo keitiklį. Kai įvesties signalai yra „suskaidyti“į neaiškų rinkinį, jie padauginami iš šių verčių, panašiai kaip vektorius padauginamas iš matricos, kad būtų sukurtas transformuotas rinkinys, atspindintis, kiek „žinios“turi ląstelę matricos dalis turėtų būti įtraukta į galutinio derinio funkciją.

Naudojant mazgą „neįdiegtas xod“, kuris leidžia XOD mazgams, įgyvendinantiems pasirinktines funkcijas, yra pernelyg sudėtingi, kad juos būtų galima pagrįstai padaryti iš atsarginių dalių, ir šiek tiek „Arduino“stiliaus C ++, asocijuotos atminties, svorio funkcijos ir „fuzzifier“, panašus į šioje nuorodoje aprašytus blokus: https://www.drdobbs.com/cpp/fuzzy-logic-in-c/184408940, juos lengva padaryti ir daug lengviau eksperimentuoti.

Rekomenduojamas: