Kazalo:

Raspberry Pi-Arduino-SignalR vozlišče za avtomatizacijo doma: 11 korakov (s slikami)
Raspberry Pi-Arduino-SignalR vozlišče za avtomatizacijo doma: 11 korakov (s slikami)

Video: Raspberry Pi-Arduino-SignalR vozlišče za avtomatizacijo doma: 11 korakov (s slikami)

Video: Raspberry Pi-Arduino-SignalR vozlišče za avtomatizacijo doma: 11 korakov (s slikami)
Video: Building a Raspberry Pi Robot Arm with .NET 5 , Blazor and SignalR with Peter Gallagher (2021-07) 2024, Julij
Anonim
Raspberry Pi-Arduino-SignalR Središče za avtomatizacijo doma
Raspberry Pi-Arduino-SignalR Središče za avtomatizacijo doma

Po nekaj mojih uvodnih IBLE -jih, objavljenih tukaj in tukaj, ta projekt naredi prvi korak k izgradnji osnovne različice funkcionalnega vozlišča za avtomatizacijo doma.

Uporabil sem več različnih tehnologij, da bi razumel, kako bom lahko uporabil vse stvari, ki sem se jih naučil v preteklosti, in nove stvari, ki se jih naučim z napredovanjem dni.

Zato je to avtomatizacijsko vozlišče sestavljeno iz naslednjih komponent:

Baza podatkov SQL Server 2012, ki:

  • shrani seznam vnaprej določenih infrardečih (IR) kod v tabelo skupaj z edinstvenim "kodnim ključem"
  • kodne ključe intuitivno poimenuje (uporabnik), tako da ugotovi namen povezanih IR kod

Spletna aplikacija ASP. NET SignalR Hub v realnem času, ki:

  • čaka in prejme "kodne ključe" kot ukaze od uporabnika, ki se sooči s odjemalcem HTML
  • ob prejemu se poveže z bazo podatkov SQL in s pomočjo priloženega kodnega ključa pridobi IR kodo
  • posreduje pridobljeno IR kodo odjemalcu Python SignalR

Uporabnik, ki se sooča s odjemalcem nadzorne plošče HTML SignalR, ki:

  • posreduje edinstven kodni ključ vozlišču prek API -jev odjemalca jQuery SignalR
  • vsak gumb na nadzorni plošči bo predstavljal edinstven kodni ključ, zabeležen v tabeli baze podatkov SQL

Aplikacija storitve v ozadju Python SignalR, ki se izvaja na Raspberry Pi 2.0 in ki:

  • sprejema IR kode kot ukaze od zvezdišča
  • išče razmejevalce v kodi IR in zelo dolgo kodo razdeli na segmente
  • preko serijskih vrat komunicira z Arduinom in zaporedno izpiše vsak segment

Skica Arduino IR oddajnika, ki:

  • čaka in sprejme vsakega od segmentov kode IR prek zaporednih vrat
  • sestavlja kodne segmente v niz vmesnega pomnilnika IR Code
  • zapakira medpomnilnik v ukaz IR Transmit z uporabo knjižnice IRLib Arduino

Če je ciljna naprava v bližini IR oddajnika, se naprava (lahko) odzove na IR signal, ki ga oddaja Arduino

OPOMBA

Čeprav ciljna naprava, ki jo uporabljam v tej predstavitvi, reagira na IR signale, boste morda želeli prebrati ta razdelek mojega drugega IBLE iz razlogov, zakaj pravim, da se naprava (lahko) odzove na IR signal.

Čas je za valjanje.

1. korak: Kaj potrebujete, pred tem, kar potrebujete

Kaj potrebujete, preden tisto, kar potrebujete
Kaj potrebujete, preden tisto, kar potrebujete
Kaj potrebujete, pred tem, kar potrebujete
Kaj potrebujete, pred tem, kar potrebujete
Kaj potrebujete, pred tem, kar potrebujete
Kaj potrebujete, pred tem, kar potrebujete

Ta pouk se vzpenja z delom že opravljenega dela, ki je povzročilo tudi moj zadnji IBLE.

Torej, preden se lotimo tega, kar potrebujemo za ta IBLE, je priporočljivo, da preberete ta navodila za nekaj ozadja o tem, kako:

  1. Nastavljena je infrardeča knjižnica Arduino IRLib
  2. Kako so bile IR kode, uporabljene v tem IBLE, zajete z IR sprejemnikom
  3. Kako so bile zajete IR kode uporabljene za upravljanje ciljne naprave prek IR oddajnika

Po zaključku tega IBLE sem uvedel spletno aplikacijo ASP. NET IR Code Recorder, ki bi:

  • Sprejmite zajeto kodo IR skupaj z intuitivno poimenovanim kodnim ključem kot vnose prek spletnega obrazca
  • IR kodo zelo dolge razdelite na segmente, krajše od 64 znakov, da ostanejo pod omejitvijo zaporednega vmesnega pomnilnika Arduino Uno.
  • Zadnji segment kod bi bil vnaprej določen z "E", ki označuje Arduino, da je prejel zadnji segment kode
  • Vsak segment bi bil ločen z ločevalnikom cevi, preden bi bil sestavljen nazaj v dolg niz
  • Končno je bila segmentirana koda IR skupaj s kodnim ključem shranjena v zbirki podatkov SQL Server 2012

Ta zbirka podatkov SQL tvori eno od komponent središča za domačo avtomatizacijo, razvito v tem IBLE.

OPOMBA

Spletna aplikacija IR Code Recorder ni del razprave iz naslednjih razlogov:

  • Kode lahko ročno zajamete s programom Arduino Sketch, jih razdelite na odseke, ločene s cevmi, in jih shranite v bazo podatkov, ne da bi morali izdelati izdelano spletno aplikacijo
  • Za razliko od tega IBLE se IR snemalnik osredotoča na povratno komunikacijo od Arduina do Raspberry Pi

Zato bi bile podrobnosti o tem projektu tema za drugo IBLE

2. korak: Kaj potrebujete - strojna oprema

Kaj potrebujete - strojna oprema
Kaj potrebujete - strojna oprema
Kaj potrebujete - strojna oprema
Kaj potrebujete - strojna oprema

Delujoči Raspberry Pi 2.0 - priporočam namestitev Ubuntu Mateja, saj ima bogatejši nabor funkcij, vključno z OpenLibre Office, ki je bila mimogrede nepogrešljiva pri dokumentiranju tega navodila, kar na Raspberry Pi.

Poleg tega boste za Pi potrebovali naslednje zunanje elemente:

  • Platforma za izdelavo prototipov Arduino Uno ali klon
  • LED oddajnik LED - uporabil sem blagovno znamko Three Legs z Amazon.com
  • 330 ali 220 ohmski upori-uporabil sem 220 (barvna oznaka rdeča-rdeča-rjava), ker sem imel pri roki več
  • Običajna plošča za kruh, priključki in računalnik z nameščenim okoljem Arduino
  • Testni kandidat - na primer vseprisotni Samsungov LED monitor z daljinskim upravljalnikom

3. korak: Kaj potrebujete - programska oprema

Če želite sestaviti vse dele, morate namestiti in zagnati naslednjo nastavitev programske opreme:

Na Raspberry Pi boste morali namestiti naslednje:

  • Arduino IDE - uporablja se za izdelavo skice in njeno bliskanje v UNO
  • Modul Python za Arduino - za serijsko komunikacijo med UNO in Pi
  • Knjižnica odjemalca Python SignalR - Lahko se sklicujete na priložena navodila

Stroj Windows z nameščenim naslednjim razvojnim okoljem:

  • Brezplačna izdaja Microsoft Visual Studio Express 2013 za izdelavo odjemalca SignalR Hub in Web
  • Brezplačna izdaja SQL Server 2012 Express za oblikovanje in izdelavo zaledne baze podatkov

Okolje gostovanja Windows Internet Information Server (IIS):

  • Ko je signalno vozlišče in spletni odjemalec SignalR sestavljeno in preizkušeno, ga bo treba razmestiti na lokalni strežnik IIS
  • V mojem primeru nameravam v svojem domačem omrežju uporabiti star prenosnik z operacijskim sistemom Windows 7 z IIS

OPOMBA

Vsa navodila veljajo za različico Python 2.7.x. Različica 3.0 lahko zahteva prepis

4. korak: Baza podatkov strežnika SQL Server

Baza podatkov SQL Server
Baza podatkov SQL Server

Priložena shema prikazuje strukturo osnovne baze podatkov SQL Server, ki se uporablja v tej aplikaciji, in vsebuje samo dve tabeli.

Tabela AutoHubCode

Dva pomembna stolpca v tej tabeli sta:

AutoCodeKey - shrani uporabniku prijazno ime ključa Code

Vsak od kodnih ključev posreduje odjemalec za avtomatizacijo - v našem primeru gumb HTML s spletne strani

AutoCodeVal - shrani surovo zaporedje IR kode

To je dejanska koda IR, ki jo odzivnik posreduje nazaj odjemalcu SignalR Hub

V tem primeru odjemalec Python, ki je v stalni komunikaciji s središčem, prejme zaporedje kode IR in ga posreduje prek serijskih vrat v Arduino UNO

Tabela AutoHubLog

  • Zabeleži kodo, ki jo zahteva odjemalec za avtomatizacijo.
  • To je merilo za sledenje, kdo in kdaj je uporabljal sistem ter kakšno kodo je zahteval

Kot že omenjeno, sem SQL Server 2012 uporabil kot svojo izbrano platformo baze podatkov. To preprosto zasnovo lahko znova ustvarite na drugi platformi baze podatkov, kot so MySQL, Oracle itd.

Kljub temu je bil tukaj priložen skript SQL za ustvarjanje te baze podatkov

OPOMBA

  1. Koda za središče SignalR je zasnovana za povezavo z bazo podatkov SQL Server 2012
  2. Delo z drugo zbirko podatkov bi pomenilo spremembo vozlišča v uporabi drugega gonilnika zbirke podatkov

5. korak: Spletna aplikacija ASP. NET SignalR Hub

Spletna aplikacija ASP. NET SignalR Hub
Spletna aplikacija ASP. NET SignalR Hub
Spletna aplikacija ASP. NET SignalR Hub
Spletna aplikacija ASP. NET SignalR Hub

Spletno aplikacijo ASP. NET SignalR Hub skupaj sestavljajo naslednje komponente, kot je prikazano na priloženi shemi:

Oddelek 1 - Središče SignalR, ki sprejema zahteve od odjemalca in se nanj odziva

Oddelki 2, 4 - Spletna stran odjemalca HTML in njen slogovni list, ki skupaj tvorita sprednji del sistema avtomatizacije in izdaja ukaze središču za avtomatizacijo

Oddelek 3 - API -ji jQuery SignalR, ki jih odjemalec HTML uporablja za komunikacijo s središčem za avtomatizacijo

Oddelek 5 - Središče SignalR ne komunicira neposredno z bazo podatkov. To počne prek vmesnih razredov, ustvarjenih z uporabo Entity Framework

Ti razredi povzamejo podrobnosti zbirke podatkov iz vmesne aplikacije

Oddelek 6 - Razred storitve Database, ki pomaga izvajati operacije branja in pisanja v zbirki podatkov SQL (opisano prej) z uporabo razredov Entity Framework

ASP. NET in SignalR sta Microsoftovi tehnologiji in ta vadnica vas bo seznanila s tem, kako je zgrajena in nameščena preprosta aplikacija SignalR.

Kar sem zgradil tukaj, temelji na osnovah, pridobljenih v tej vadnici. Ko je aplikacija nameščena, mora biti podobna spletni strani, prikazani na drugi sliki

OPOMBA KODE

Priložena je datoteka ZIP, ki vsebuje odstranjeno različico kode

Struktura map je prikazana na sliki - vendar so bili vsi okvirni razredi in skripti jQuery odstranjeni, da bi zmanjšali velikost priloge

Priporočilo je, da se ta koda uporabi kot priročnik, kajti ko ustvarite novo spletno aplikacijo SignalR po zgornji povezavi z vajami, bodo samodejno dodane najnovejše knjižnice jQuery in okvirni razredi ASP. NET

Prav tako bo treba spremeniti sklice na skripte jQuery na strani index.html, da bodo odražali najnovejšo različico odjemalskih knjižnic jQuery SignalR, ki bodo samodejno dodane pri izdelavi spletne aplikacije.

Končno bo treba spremeniti niz povezav, da se bo ujemal z vašo bazo podatkov v datotekah, imenovanih Web.config*

6. korak: Odjemalec storitev Python SignalR Service

Odjemalec storitev Python SignalR
Odjemalec storitev Python SignalR

Medtem ko je odjemalec HTML SignalR prednji uporabniški vmesnik, je odjemalec Python zaledna storitev, katere glavna funkcija je sprejemanje kode IR, ki jo posreduje vozlišče, in jo po serijski komunikaciji usmeriti v Arduino UNO.

Priložena koda je samoumevna in je dovolj dokumentirana, da opiše njeno delovanje

Kot je prikazano na sestavljenem posnetku zaslona, odjemalec HTML in odjemalec storitve Python komunicirata prek vozlišča SignalR na naslednji način:

  1. Uporabnik sistema za avtomatizacijo s klikom gumba izda ukaz vozlišču
  2. Vsak gumb je povezan s kodo IR ključa in ko se klikne, se ta koda prenese v zvezdišče
  3. Središče prejme to kodo, se poveže z bazo podatkov in pridobi surovo kodo IR signala ter jo pošlje nazaj vsem povezanim odjemalcem

    Hub hkrati zabeleži vnos v tabelo zbirke podatkov AutoHubLog, ki beleži kodo ter datum in čas, ki so ga zahtevali oddaljeni odjemalci

  4. Odjemalec storitve Python prejme kodo IR in jo posreduje v Arduino UNO za nadaljnjo obdelavo

7. korak: Skica in koda za prenos IR Arduino UNO IR

Skica in koda za prenos IR Arduino UNO IR
Skica in koda za prenos IR Arduino UNO IR
Skica in koda za prenos IR Arduino UNO IR
Skica in koda za prenos IR Arduino UNO IR
Skica in koda za prenos IR Arduino UNO IR
Skica in koda za prenos IR Arduino UNO IR

Arduino vezje, kot je prikazano v slikah, je za ta sistem precej preprosto in je zato na kratko opisano:

  • Brezbarvna IR LED mora biti priključena na digitalni PIN 3 na UNO - to je zahteva knjižnice IRLib Arduino
  • Razlogi so opisani v mojem prejšnjem IBLE o kloniranju daljinskega upravljalnika v razdelku, ki se nanaša na knjižnico IRLib
  • Zelena LED, priključena na digitalni PIN 4, je vizualni indikator, ki zasveti, ko UNO prejme vse odseke kode IR od odjemalca Python, ki deluje na Raspberry Pi.
  • Ta lučka LED bo potrdila, da serijska komunikacija med Raspberry Pi in UNO deluje
  • Za omogočanje serijske komunikacije je UNO povezan z Raspberry Pi prek vrat USB
  • Priložena skica Arduino je dovolj komentirana, da opiše njeno funkcijo
  • Komentarji na vrhu kode opisujejo tudi, kako je treba ožičiti vezje

OPOMBA

V praksi bi lahko Arduino in Pi skupaj povezali z napajanim USB -zvezdiščem, ki je dovolj močno, da poganja Pi, Arduino in tudi prenaša močan signal prek IR LED

8. korak: Priključitev in testiranje sistema

Priključitev in testiranje sistema
Priključitev in testiranje sistema
Priključitev in testiranje sistema
Priključitev in testiranje sistema
Priključitev in testiranje sistema
Priključitev in testiranje sistema
  1. Zgradite in razmestite ASP. NET SignalR Hub, odjemalca HTML skupaj z bazo podatkov SQL Server 2012 na internetni strežnik informacij (IIS) v svojem lokalnem domačem omrežju
  2. Do spletne aplikacije dostopate tako, da odprete odjemalca HTML SignalR prek

    URL te strani je običajno https:// yourComputer: port_number/

  3. Kliknite gumb na nadzorni plošči in če je aplikacija pravilno nameščena, se bo vozlišče odzvalo tako, da bo vrnilo kodo IR in jo prikazalo na sivi plošči, ki meji na nadzorno ploščo

    Zapomni si! Kode boste morali naložiti v svojo bazo podatkov tako, da nastavite knjižnico IR sprejemnika in zajamete kode, kot je opisano v mojem prejšnjem IBLE

  4. Priključite Arduino na Raspberry Pi prek USB - odprite Arduino IDE na Pi in se prepričajte, da lahko UNO vzpostavi povezavo s Pi

    ti članki o vadnicah Arduino bi vam morali pomagati pri tem precej hitro

  5. Odprite kodo Python in naredite naslednje spremembe glede na vaše okolje

    • naslov serijskega vhoda vašega UNO, pridobljen iz 4. koraka
    • URL zvezdišča SignalR, ki se ujema z vašim lokalnim URL -jem iz 2. koraka - v tem primeru bi bil to https:// yourComputer: port_number/signalr
  6. Nazadnje odprite Arduino Sketch v Arduino IDE na Raspberry Pi in ga prenesite v UNO
  7. Desko za kruh, ki drži vezje, postavite v bližino naprave, ki jo želite upravljati - IR LED mora imeti jasno vidno linijo z vmesnikom IR sprejemnika aparata
  8. Zaženite program Python na Raspberry Pi s pritiskom na gumb F5 v orodni vrstici Python IDLE
  9. Vrnite se na nadzorno ploščo odjemalskega programa HTML (2. korak) in kliknite gumb (na primer vklop ali povečanje glasnosti)

Če je sistem pravilno nastavljen, bi morali imeti možnost, da na telefonu ali tabličnem računalniku odprete stran odjemalca HTML in napravo upravljate z gumbi na strani odjemalca HTML.

9. korak: Sistem v akciji

Sistem v akciji
Sistem v akciji
Sistem v akciji
Sistem v akciji
Sistem v akciji
Sistem v akciji
Sistem v akciji
Sistem v akciji

Zgornje slike prikazujejo delovanje sistema za avtomatizacijo doma, ko je nastavljen.

Od objave tega IBLE sem razširil vmesnik tako, da sem zajel nekaj IR kod s svojega LED televizorja VIZIO

Kot je prikazano ob tovarniškem tovarniškem daljinskem upravljalniku na prvi sliki, je v spletni uporabniški vmesnik, do katerega dostopate prek tabličnega računalnika, vgrajenih nekaj bistvenih funkcij tega daljinskega upravljalnika

Naslednji posnetki prikazujejo tablični računalnik v ospredju s televizorjem zadaj, ki se odziva na ukaze, izdane s spletnega vmesnika:

  1. Ukaz za izklop - televizor se izklopi
  2. Ukaz za vklop - televizor se vklopi in ob vklopu zaslona se prikaže logotip "V"
  3. Ukaz za izklop zvoka - pri izklopu zvočnika se prikaže vodoravna vrstica

V vseh preskusih sivo območje poleg armaturne plošče na zaslonu tabličnega računalnika prikazuje ukaz, ki ga je izdal odjemalec, in odgovor, ki ga pošlje oddaljeno središče SignalR

10. korak: Izboljšanje sistema avtomatizacije in s tem povezani popravki

Ta sistem je mogoče razširiti z dodajanjem več kod, zajetih iz različnih sistemov. Čeprav je ta del enostaven, morate upoštevati še dva dejavnika.

Izboljšanje 1 (hitro): Delo z IR -signali različnih dolžin

  1. IR kode različnih sistemov imajo različne dolžine, tudi med dvema izdelkoma istega proizvajalca.

    Na primer, v tem primeru je dolžina niza IR kod za LED televizor 67, medtem ko je dolžina Samsung Sound Bar okoli 87

  2. Kar pomeni, da če bi najprej vklopil Sound Bar, bi bil niz IR vmesnika v skici Arduino napolnjen z zaporedjem IR kode, ki vsebuje 87 kod
  3. Po tem, če bi vklopil LED televizor, bi napolnil niz vmesnega vmesnika IR s samo 67 kodami, preostalih 20 kod iz prejšnje operacije pa bi bilo še vedno okoli

Rezultat? LED -televizor se ne vklopi, ker je vmesnik IR kod poškodovan zaradi dodatnih 20 kod, ki niso bile očiščene iz prejšnje operacije!

Popravi 1 (enostaven izhod, ni priporočljivo)

Arduino skico spremenite na naslednji način:

V funkciji loop () {} spremenite naslednje klice funkcij

transmitIRCode ();

za prenos kodeIRC (c);

Spremenite podpis zgornje funkcije:

void transmitIRCode (int codeLen) {// konstanta RAWBUF zamenjana z codeLen IRTransmitter. IRSendRaw:: send (IRCodeBuffer, codeLen, 38); }

Čeprav je to enostavno, matrika v resnici nikoli ni popolnoma izbrisana, zato to ni zelo čista rešitev

Popravi 2 (ni težko, priporočljivo)

Razglasite dodatno spremenljivko na samem vrhu Arduino skice, po razdelku s komentarji:

nepodpisana int EMPTY_INT_VALUE;

Dodajte to na vrh funkcije setup ():

// zajem naravnega stanja prazne nepodpisane celoštevilske spremenljivkeEMPTY_INT_VALUE = IRCodeBuffer [0];

Pomaknite se navzdol in dodajte novo funkcijo v skico takoj za funkcijo transmitIRCode ():

void clearIRCodeBuffer (int codeLen) {// Počisti vse kode iz matrike // OPOMBA: nastavitev elementov matrike na 0 ni rešitev! for (int i = 1; i <= codeLen; i ++) {IRCodeBuffer [i-1] = EMPTY_INT_VALUE;}}

Končno pokličite novo funkcijo zgoraj na naslednji lokaciji v funkciji loop ():

// Ponastavi - Nadaljujte z branjem Serial PortclearIRCodeBuffer (c);…

To je čistejši pristop, saj dejansko ponastavi vse lokacije v nizu vmesnih vmesnikov IR, ki so bile poseljene z najnovejšim signalom IR kode, ne da bi pri tem karkoli ostalo naključju.

Izboljšanje 2 (bolj vključeno): ponavljajoč se prenos IR signala za določene naprave

Nekatere naprave zahtevajo večkratni prenos istega signala, da se odzovejo. Primer: V tem primeru Samsung Sound Bar zahteva, da se ista koda pošlje dvakrat z zamikom v 1 sekundi

Tukaj je bilo govora o popravku v konceptu, saj je nekoliko bolj zapleten in ga bo treba preizkusiti

Če dodate funkcijo ponovitve v Ardunio Sketch, boste morali skico utripati vsakič, ko v sistem za avtomatizacijo doma dodate novo napravo.

Namesto tega dodajanje tega popravka odjemalcu HTML SignalR in aplikaciji storitve Python SignalR naredi rešitev veliko bolj prilagodljivo. To bi načeloma lahko dosegli na naslednji način:

Spremenite odjemalca SignalR HTML za prenos ponavljajočih se informacij v vozlišče

Odprite index.html in vnesite vrednost ponavljanja v gumb HTML tako:

value = "SMSNG-SB-PWR-ON" bi postal value = "SMSNG-SB-PWR-ON_2_1000"

Kjer je 2 vrednost ponovitve in 1000 vrednost zakasnitve v milisekundah med dvema signaloma ponovitve

Ko kliknete ta gumb, bo zvezdišče SignalR prejelo kodo ključa+Repeat_Spec

Spremenite metode na strani strežnika SignalR, da razčlenite samo kodo ključa:

  • Kodo ključa za običajno pridobivanje kode IR iz baze podatkov
  • Kodo ključev+Repeat_Spec in kodo IRC prenesite odjemalcem SingalR kot običajno

Spremenite aplikacijo storitve Python SignalR za prenos signalov z uporabo vrednosti Repeat:

Odprite odjemalca Python in spremenite naslednje dve funkciji:

def print_command_from_hub (buttonId, cmdSrc):

# razčlenite kodo za ponavljanje iz vrednosti buttonId

def transmitToArduino (IRSignalCode, delim, endPrefix):

# nastavite zanko nekaj časa ali for za prenos signala na želeni frekvenci

  • Na ta način ni treba večkrat utripati Arduina
  • V ta sistem je mogoče vgraditi poljubno število ponavljajočih se frekvenc
  • Poleg tega, če uporabljate UNO, obstaja omejitev velikosti, do katere lahko raste vaša skica!

11. korak: Znane težave in varnostni pomisleki

Tako kot pri prvih sistemih, ki so bili zgrajeni prvič, ima tudi ta nekaj težav, ki so se pojavile med testiranjem.

1. težava: Hitri zaporedni ukazi z zamiki, manjšimi od sekunde med kliki gumba, so povzročili, da se sistem po prvih nekajkratnih odzivih ne odziva.

  • Ponovni zagon odjemalca Python SignalR sistem povrne v normalno delovanje
  • Takojšnja rešitev je lahko odstraniti neželene izhode za odpravljanje napak v obeh odjemalcih Python SignalR in tudi Arduino Sketch ter ponoviti te teste
  • Drug kraj za proučitev bi bila sama serijska komunikacija - bi bilo mogoče dodati kodo za hitro izpraznitev vmesnika?

Opazil sem, da se moj televizor ne odziva dobro na tovarniški daljinec - zato je lahko tudi sama narava IR komunikacije mojega televizorja prispevajoč dejavnik.

2. vprašanje: Zaslon HTML se po dolgem neaktivnosti neha odzivati na klike gumbov

Običajno osvežitev strani odpravi to vedenje - vzrok za to vedenje pa še vedno ni jasen

VARNOSTNI ZAVISI

Ta sistem je bil zasnovan samo za uporabo v lokalnem (domačem) omrežju in nima potrebnih varnostnih ukrepov za uporabo po internetu

Zato je priporočljivo, da SignalR Hub namestite na lokalni stroj v vašem lokalnem/domačem omrežju

Hvala, ker ste prebrali moj IBLE in upam, da se boste zabavali!

Priporočena: