![Soita verkkoon!: 4 vaihetta Soita verkkoon!: 4 vaihetta](https://i.howwhatproduce.com/images/001/image-2697-136-j.webp)
Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-23 14:44
![Image Image](https://i.howwhatproduce.com/images/001/image-2697-138-j.webp)
![](https://i.ytimg.com/vi/9Jq9KA99mws/hqdefault.jpg)
![Painike Arduinolle Painike Arduinolle](https://i.howwhatproduce.com/images/001/image-2697-139-j.webp)
Ring the Web on tarkoitettu vaikuttamaan verkkosivustoihin paikallisista/todellisista paikoista.
Lisätietoja siitä:
makker.hu/RingTheWeb/
Sinä tulet tarvitsemaan:
- 1 painike
- 10k vastus
- Arduino (mikä tahansa)
- kaapelit
- pieni, pienitehoinen tietokone - tässä tapauksessa RPi
- pääsy palvelimelle tai tietokoneelle, jolla on julkinen IP ja node.js
- verkkosivusto
Askeleet:
- Painike arduinoon
- Arduinosta vadelmaan
- Vadelma palvelimelle
- Verkkosivusto palvelimelle
Vaihe 1: Paina painiketta Arduinolle
Ensin tarvitset Arduinon ja painikkeen!
Mikä tahansa niistä on mahdollista, voit valita.
Liitä ne noudattamalla Arduinon virallista painikeopetusta.
Tässä on Arduino -koodi:
// Arduino -koodi digitaalisen nastan lukemiseen ja arvon lähettämiseen sarjaporttiin
// Balázs Kovács, 2018. void setup () {Serial.begin (9600); // avaa sarjaportti pinMode (8, INPUT); // liitä painike nastaan 8} int counter = 0; // jotain käytetty myöhemmin void loop () {if (digitalRead (8) == 1) {// tarkista nastan 8 tila Serial.write ("8"); } viive (100); laskuri ++; if (laskuri = 20) {// joka 20x100 = 2000ms -> laskuri = 0; Serial.write ("0"); // lähettää "olen olemassa" -viestin palvelimelle}} // siinä kaikki!
Vaihe 2: Arduino vadelmaan
![Arduinosta vadelmaan Arduinosta vadelmaan](https://i.howwhatproduce.com/images/001/image-2697-140-j.webp)
Nyt voimme yhdistää Arduinon tietokoneeseen. Tässä tapauksessa käytämme vadelmaa sen alhaisen virrankulutuksen vuoksi.
Liitä se USB: n kautta tai suoraan tässä kuvattuihin RX-TX-nastoihin.
Asenna sitten node.js ja npm tässä kuvatulla tavalla. Avainsanat ovat:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
ja sitten
sudo apt -get install -y nodejs
Npm (Node.js: n paketinhallinta) tarvitsee socket.io-client- ja serialport-moduuleja, joten asenna ne:
npm asenna socket.io-client
npm asenna sarjaportti
Avaa ja tallenna jotain.js -tiedosto seuraavalla koodilla:
// alustetaan socket.io -yhteys:
var -pistorasia; var io = vaatia ('socket.io-client'); pistorasia = io ("https://yourserver.com:port"); // jos yhteys palvelimeen onnistuu: socket.on ('connect', function () {socket.send ("olen täällä!"); console.log ("yhdistetty palvelimeen");}); // alustetaan sarjaporttiviestintä, NB /dev = ttyACM0 voidaan muuttaa: var SerialPort = need ('serialport'); var serialPort = uusi SerialPort ('/dev/ttyACM0', {baudRate: 9600}); // Jos jotain tulee Arduinosta, lähettää erilaisia viestejä // palvelimelle sen mukaan serialPort.on ('data', function (data) {console.log ('Data:', data.toString ('ascii')); if (data.indexOf ('8')! ==-1) {socket.send ('/RingTheBell 1');} if (data.indexOf ('0')! ==-1) {socket. lähetä ('/client1 1');}}); // Lue käytettävissä olevat tiedot - mielestäni se ei ole välttämätöntä serialPort.on ('luettavissa', function () {console.log ('Data:', port.read ());});
Nyt sinun on myös määritettävä palvelinpuolen node.js -koodi, kunnes voit aloittaa ja testata komentosarjaa
solmu./jotain.js
Jos jotain on pielessä, kerro siitä minulle!
Vaihe 3: Palvelinpuolen koodi
![Palvelinpuolen koodi Palvelinpuolen koodi](https://i.howwhatproduce.com/images/001/image-2697-141-j.webp)
Palvelinpuolella tarvitsemme node.js ja socket.io -palvelin.
Joten lisää se:
npm asenna socket-io
Sitten tarvitset samanlaisen komentosarjan 2. vaiheen koodiin sillä erolla, että se odottaa yhteyksiä ja jos ne ovat läsnä, se lähettää kaikki asiakkaalta lähetetyt viestit kaikille asiakkaille tässä tapaus, sivuston käyttäjille …
Avaa siis servercript.js, jossa on seuraavat tiedot:
var http = vaatia ('http'), io = vaatia ('socket.io'); // avaa minimaalinen http -palvelin. socket.io tarvitsee sitä. var palvelin = http.createServer (function (req, res) {res.writeHead (200, {'Content-Type': 'text/html'}); res.end ('hei');}); // kytke tcp -pistorasia päälle - aseta portti! server.listen (7004, function () {console.log ("TCP -palvelin, joka toimii portissa 7004");}); // analysoi tcp -viestit var socket = io.listen (palvelin); socket.on ('yhteys', toiminto (asiakas, rinfo) {client.broadcast.emit ('järjestelmä', 'joku yhdistetty …')); client.on ('viesti', toiminto (tapahtuma) {console.log (event); // lähettää minkä tahansa viestin kaikille yhdistetyille käyttäjille! socket.emit ('viesti', tapahtuma);}); client.on ('kaikki', toiminto (tapahtuma) {}); client.on ('katkaise yhteys', function () {socket.emit ('viesti', 'joku irrotettu …');});});
Kokeile testata sitä
solmu./serverscript.js
Jos myös asiakas on käynnissä, sinun pitäisi nähdä heidän viestinnänsä molemmilla konsoleilla. Ainakin nämä:
Tiedot: 0
-ilmoittaa järjestelmälle säännöllisesti, että Arduino-> Vadelma-> palvelinyhteys toimii.
ja
Tiedot: 8
- kertoo, että painike on päällä.
Vaihe 4: Määritä verkkosivusto
![Määritä verkkosivusto Määritä verkkosivusto](https://i.howwhatproduce.com/images/001/image-2697-142-j.webp)
Nyt olemme valmiita 75%: lla!
Lopeta kova työ sisällyttämällä verkkosivuston koodi.
Se on helppoa.
Sisällytä ensin socket.io -asiakas:
Luo sitten viesti-analysaattorijärjestelmä:
var -pistorasia;
pistorasia = io ("sinun palvelin.com:portti"); socket.on ('connect', function () {socket.send ('anonyymi asiakas - verkkosivuston käyttäjä - on yhdistetty!')); socket.on ('message', function (msg) {// jos haluat nähdä jokainen viesti, vain kommentoi sitä: // console.log (msg); if (msg == "/RingTheBell 1") // tässä tulee koodi, jota käytetään painiketapahtuman ilmaisemiseen: {document.body.style.background = "#ccc"; setTimeout (function () {document.body.style.background = "#000";}, 1000);}; if (msg == "/client1 1") {// tähän voit sijoittaa jotain joka reagoi yhdistetyn asiakkaan tilaan};});
Voilá!
valmis.
Suositeltava:
Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: 11 vaihetta (kuvilla)
![Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: 11 vaihetta (kuvilla) Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: 11 vaihetta (kuvilla)](https://i.howwhatproduce.com/images/004/image-10449-j.webp)
Kuinka tehdä oma WIFI -yhdyskäytävä Arduinon liittämiseksi IP -verkkoon?: Kuten niin monet ihmiset, Arduino on mielestäsi erittäin hyvä ratkaisu kotiautomaation ja robotin tekemiseen! Mutta viestinnän kannalta Arduinot sisältävät vain sarjaliitännät. Työskentelen robotin parissa, joka on yhdistettävä pysyvästi palvelimeen, joka toimii
Raspberry Pi -laitteen yhdistäminen verkkoon: 9 vaihetta
![Raspberry Pi -laitteen yhdistäminen verkkoon: 9 vaihetta Raspberry Pi -laitteen yhdistäminen verkkoon: 9 vaihetta](https://i.howwhatproduce.com/images/008/image-21648-j.webp)
Raspberry Pi -laitteen yhdistäminen verkkoon: Tässä oppitunnissa opit luomaan verkkosivun, keräämään tietoja maailmanlaajuisen verkon avulla ja käyttämään sovellusliittymiä kuvien lähettämiseen Tumblriin ja Twitteriin
Soita pietsosummeri Blynkin ja XinaBoxin kanssa: 9 vaihetta
![Soita pietsosummeri Blynkin ja XinaBoxin kanssa: 9 vaihetta Soita pietsosummeri Blynkin ja XinaBoxin kanssa: 9 vaihetta](https://i.howwhatproduce.com/images/005/image-14518-7-j.webp)
Soita pietsosummeri Blynkin ja XinaBoxin avulla: Ohjaa mitä tahansa 5 V: n elementtiä Blynkin ja xChipien avulla. Tämä projekti kuulostaa pietsosummerilta puhelimestani
Soita musiikkia Arduinolla!: 5 vaihetta (kuvilla)
![Soita musiikkia Arduinolla!: 5 vaihetta (kuvilla) Soita musiikkia Arduinolla!: 5 vaihetta (kuvilla)](https://i.howwhatproduce.com/images/002/image-4622-44-j.webp)
Soita musiikkia Arduinolla!: Tässä ohjeessa näytän sinulle, kuinka soitan musiikkia Arduino UNO: n ja SD -korttimoduulin avulla. Käytämme SPI -tiedonsiirtoa
Soita MATLAB -skripti ja -toiminto Pythonista: 5 vaihetta
![Soita MATLAB -skripti ja -toiminto Pythonista: 5 vaihetta Soita MATLAB -skripti ja -toiminto Pythonista: 5 vaihetta](https://i.howwhatproduce.com/images/004/image-11864-17-j.webp)
Soita MATLAB -skriptille ja toiminnolle Pythonilta: Hei ystävät. Tässä ohjeessa näytän sinulle kuinka ajaa MATLAB -skriptejä ja kutsua MATLAB -toimintoja python -koodista