Sisukord:
- Samm: tarvikud/tööriistad
- 2. samm: skeemid ja planeerimine
- 3. samm: SQL -andmebaas
- Samm: riistvara
- Samm: tarkvara
Video: Digimale - jälgige oma malemängu võrgus: 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Olen noorest saati mänginud palju malet ja kuna veebis on tohutul hulgal veebisaite, kus arvutitega või vastastega malet mängida, pole ma kunagi leidnud veebisaiti, mis jälgib teie malemängu tegelikult päriselus mängides. Nii et selle projektiga loodan seda mõista!
Ma loodan:
- Oskab jälgida malendite liikumist
- Vaadake mõnda edetabelit eelmiste mängude kohta.
- Jälgige aega ja mängige kiiresti nagu professionaalne mäng.
See on väga keeruline projekt, kuna selle valmimine nõuaks lugemiseks 64 valgusandurit ja 8 kiipi. Mis on juba suur ülesanne ja me isegi ei loe ühtegi teist andurit.
Minu kolledž andis meile suure nimekirja asjadest, mida teha:
- Looge meie projekti jaoks skeem
- Looge andmebaas andmete salvestamiseks ja hankimiseks.
- Kujundage veebisait Adobe XD abil
- Looge see veebisait uuesti CSS -i ja HTML -iga
- Lugege andureid pythoniga
- Näidake anduri andmeid veebisaidil kolbi abil.
Selles õpetlikus juhendis juhendan teid oma teekonnal ning kõiki neid probleeme ja päästmishetki, mida olen viimase paari nädala jooksul läbi elanud.
Samm: tarvikud/tööriistad
Tarvikud, materjalid ja tööriistad on esimene samm eduka projekti jaoks!
Tööriistad:
- Jootekolb
- Tina jootmine
- Tangid
- Puurimismasin
- Lint
Tarvikud:
- Vaarika Pi koos micro SD -kaardiga (4 GB peaks piisama)
- Rasberry Pi T-cobbler
- Malelaud koos tükkidega
- 7 segmendi ekraan (TM 1637)
- 2 puuteandurit (TTP223B)
- RFID -lugeja kaartidega (MFRC522)
- MCP3008 (sõltuvalt sellest, kui kaugele soovite minna, saate iga MCP kohta lugeda 8 malekoordinaati)
- Valgusõltuv takisti tüüp 5288 (8 iga MCP kohta)
- Päised (meestelt meestele ja naissoost meestele)
Kui teil on vaja kõike osta, peaks eeldatav omahind olema umbes 125 eurot koos saatekuludega (ainult tarvikud)!
Lisatud on Exceli fail koos linkide ja hindadega kõigele, mida vajate!
2. samm: skeemid ja planeerimine
Selle projekti järgmine samm on skeemi loomine. Tegin 2: ühe leivaplaadil ja ühe puhtalt elektroonilise. Me vajame seda skeemi, et hoida kõik puhtana ja veenduda, et me ei ühenda mittevajalikke asju!
Kasutasin nende skeemide loomiseks programmi "Fritzing", kui kedagi huvitab.
Värvikood:
- Punane = toide
- Roheline = ühendus
- Sinine = maapind
Vaarika Pi ühendused:
- 3V3 => VC liin leivaplaadil, mis toidab kõike
- 5V => 7 segmendi kuva VCC
-
GND:
- Leivaplaadil jahvatatud
- Seitsme segmendi ekraani alus
- GPIO4 => Kell Valige MCP3008 tihvt
- GPIO10 => MCP3008 MOSI -tihvt
- GPIO9 => MCP3008 MISO tihvt
- GPIO11 => MCP3008 CLK -tihvt
- GPIO7 => MFRC522 SDA tihvt
- GPIO19 => Esimese puuteanduri DIG -tihvt
- GPIO26 => Teise puuteanduri DIG -tihvt
- GPIO20 => Seitsme segmendi kuva CLK -tihvt
- GPIO21 = seitsme segmendi kuva DIO -tihvt
Paar märkust skeemi kohta:
- See skeem sisaldab ainult 1 MCP -d, see tähendab, et ainult 8 koordinaati saab täielikult lugeda.
- Kasutan oma kiibivalikuna GPIO tihvte. Kuna potentsiaalselt 8 MCP -ga on saadaval ainult 2 kiibi valimise tihvti.
- Seitsme segmendi ekraan on õpetaja soovitatud, vaja on ainult 4 juhtmest, kuna see töötab oma protokolli alusel.
- Puuteandurite digitaalse tihvti takistid pole täielikult vajalikud, kuid neid soovitatakse.
Komponentide selgitamine:
-
MCP valgusanduritega:
-
MCP3008 on 8 -kanaliline 10 -bitine ADC:
- MCP3008 loeb valgussensorite analoogväärtust, see väärtus sõltub sellest, kui palju valgust anduril praegu paistab.
- Oma Pythoni koodis saan selle analoogväärtuse ja teisendan selle 1 või 0 -ks
-
- Kasutab installitud paketiga spetsiaalset protokolli (SPI).
- Installitud paketiga pole keeruline kodeerida
- Loeb silti ja tagastab sildi väärtuse
- Märgendile saate kirjutada ka väärtuse, nii et kuueteistkümnendsüsteemi väärtuse tagastamise asemel tagastab see näiteks nime
- Kasutab ka kodeerimise hõlbustamiseks installitud paketti
- Looge muutuja täisarvulise väärtusega, seejärel jagage see neljaks tähemärgiks ja näidake neid märke
Puuteandurid:
Töötab nagu nupp, ma kasutan selle jaoks klassi tagasihelistamismeetodiga. Sellest lähemalt hiljem
RFID -lugeja (MFRC 522):
7 segment (TM1637)
3. samm: SQL -andmebaas
Kolmas samm selle projekti suunas on 3NF normaliseeritud SQL -andmebaasi loomine!
Meil läheb seda vaja:
- Andmete sisestamine
- Andmete hankimine ja nende kuvamine meie veebisaidil
- Võimalus täpselt näha, kui palju pöördeid on praeguses malemängus läinud!
Tabelid on selgitatud:
-
Mängud
- See jälgib, kes võitis kindla mängu ja millal mängu mängiti
- Esmane võti on siin GameID
- Kuupäeval on praeguse kuupäeva standardväärtus
- Võitja ja skoor lisatakse hiljem, pärast mängu lõppu!
-
Mängijad (hollandi keeles kõnelejad)
- Need sisestatakse käsitsi, kuid neid saab sisestada ka RFID -kaardisüsteemi abil.
- Kirjutage oma kaardile nimi, lugege kaart ja sisestage nimi sellesse tabelisse
- Samuti jälgib see iga mängija võitude / kaotuste rekordit, mis kuvatakse veebisaidil
-
Ajaloo (ajalugu)
- See on pöörde ajalugu
- kui maletükki teisaldatakse, värskendatakse seda siin
- Sellel on 3 välisvõti, mängija, mäng ja malend
- lugemiskuupäev (InleesDatum) on kuupäev, millal andur loeti
- ReadTime on sama mis ReadDate, kuid ajatempliga
- LocationID (LocatieID) on koordinaadi nimi, kuhu see on paigutatud. näiteks "a3"
-
Maletükid (Schaakstukken hollandi keeles)
- Igal malendil on ID, meeskond, nimi ja olek
- Meeskond on kas 1 või 2, must või valge;
- Iga tüki nimi oleks st "Pant 1"
- Staatus tähendab, et tükk on elus või surnud!
Samm: riistvara
Nüüd, kui meil on kõik õiged tükid paigas, saame hakata midagi looma!
Jagame selle osa alametappideks, sest seda on lihtsam selgitada:
-
Samm 1: Kui soovite puurida auku oma malelaua igasse koordinaati, nagu on näidatud esimesel pildil, puurige ka auk, kuhu soovite puuteandurid, RFID -lugeja ja 7 segmendi ekraani paigutada.
Ärge unustage puurida plaadi küljele mõned augud, need on tahvli peal olevate erinevate komponentide juhtmete jaoks. Palju puurimist, ma tean
- Samm: proovige juhtmega Raspberry Pi ühendada üks või kaks andurit, kontrollige, kas need töötavad. Soovite need ühendada MCP analooglugejaga, nagu on kirjeldatud 2. sammus (skeemid).
- 3. samm: see võib olla keeruline ja väga närvesööv, kuna hüppajate päised ei ole väga paigas, võiksite need kõik plaadile kleepida, üksikult või mitu korraga. Peate veenduma, et need jäävad malelauale kinni, vastasel juhul ei saa te andureid edukalt lugeda
NÕUANNE! Kui see teie jaoks lihtsamaks teeb, võib mõni liim tegelikult aidata andureid lindistamise ajal rohkem paigal hoida, avastasin selle raske tee
Samm: tarkvara
Pärast riistvara loomist, mida saate testida, proovime selle jaoks mõne koodi kirjutada! Kui soovite minu koodi vaadata, minge palun minu githubi.
Kõigepealt vajame installimiseks paari paketti, tegin teile nimekirja:
-
kolb
See on see, mida teie püütoni kood töötab
-
KolbipesaIO
Ees- ja tagaosa vaheliseks suhtlemiseks
-
numpy
Kasulik valgusandurite lugemiseks, töötab maatriksitega
-
netiface
Oma IP -aadressi printimiseks 7 segmendi ekraanile
-
Kolb-CORS
Päritoluülese pöördumise jagamine võimaldab pakette jagada erinevates domeenides
Selle kõrval olen kirjutanud paar klassi ja saate neid vabalt kasutada.
Esiots
Veebisaidi kood on saadaval ka minu githubi lehel!
Esiotsa kasutan Chessboard.js. See lisab hõlpsasti kasutatava malelaua koos kergesti teisaldatavate tükkidega!
Kõik tahvlil on kohandatav, nii et nautige! Pärast uusima versiooni allalaadimist peate lohistama failid oma projekti ja linkima need lehele, kus soovite maletahvlit näidata!
Pärast seda proovime tahvlit luua, see ei tundu liiga raske:
Esiteks oma html -is:
Teiseks, oma JavaScripti failis:
board1 = ChessBoard ('board1', 'start');
ja seal see on, peaksite nüüd malelauda nägema! Kohandage julgelt CSS -failide tahvlit!
Nüüd tahame näha malelaual mõningaid liigutusi, mitte liiga raskeid. Kuid me peame seda kohandama, nii et käsk teisaldatakse taustast. Ma ei hakka liiga detailidesse laskuma, kuid me tahame teha midagi sellist:
new_lijst = [Data.data [0], Data.data [1]; commando = new_lijst [0].concat ('-', new_lijst [1]); board1.move (komando);
Saame oma taustaprogrammilt loendi ja paneme kahe koordinaadi vahele kriipsu, seejärel kasutage käiku board.move, et liikuda.
See on minu selgitus selle kohta, mida vajame pistikprogrammi chessboard.js, minge minu githubi, et ise koodi vaadata
Soovitan:
Kuidas oma muusikat oma iPodist tagasi saada .. TASUTA!: 7 sammu
Kuidas oma muusikat oma iPodist tagasi saada .. TASUTA!: Põhimõtteliselt ei lase iPodid muusikat sealt uuesti importida, vaid ainult kustutada. Näiteks kui soovite oma lemmiklaule panna oma iPodis, kuid kustutage need kogemata arvutist välja. Nii et sa istusid seal halvas moos
Sissejuhatus ja konto loomine asjade võrgus IoT LoRaWAN: 6 sammu
Sissejuhatus ja konto loomine asjade võrgustikus IoT LoRaWAN: Selle võimaluse korral loome konto platvormil The Things Network ja teeme lühikese sissejuhatuse, TTN on hea algatus asjade interneti võrgu loomiseks või " IoT ". Asjade võrgustik on loR -i rakendanud
Udusensor - osakeste footon - andmete salvestamine võrgus: 5 sammu (piltidega)
Udusensor - osakeste footon - Salvesta andmed võrgus: Udu või suitsu koguse mõõtmiseks õhus tegime selle udusensori. See mõõdab valguse hulka, mida LDR laserilt saab, ja võrdleb seda ümbritseva valguse hulgaga. See postitab andmed IFTTT kaudu reaalajas Google'i lehele
Flash-mängude allalaadimine ja mängimine võrgus või väljaspool seda: 5 sammu
Flash-mängude allalaadimine ja mängimine võrguühenduseta või võrguühenduseta: selles juhendis õpetan teile flash-mängude allalaadimist. See on suurepärane reisidel ja mujal mängimiseks, kui te ei saaks WiFi-ühendust
Varundamine võrgus Gmaili konto abil: 4 sammu
Veebipõhine varundamine oma Gmaili konto abil: http://www.softpedia.com/progDownload/GMail-Drive-shell-extension-Download-15944.htmlGmaili draiv on väike Windowsi operatsioonisüsteemi programm, mis muudab teie Gmaili konto võrgus? varukoopia ?. Saate oma Gmaili kontot kasutada failide salvestamiseks, mis