Inhaltsverzeichnis:
- Schritt 1: Drucktaste zu Arduino
- Schritt 2: Arduino zu Himbeere
- Schritt 3: Serverseitiger Code
- Schritt 4: Website konfigurieren
Video: Rufen Sie das Web an!: 4 Schritte
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Ring the Web ist für die Beeinflussung von Websites von lokalen/realen Orten.
Mehr Infos dazu:
makker.hu/RingTheWeb/
Du brauchst:
- 1 Taster
- 10k Widerstand
- Arduino (jeder Typ)
- Kabel
- kleiner, stromsparender Computer - in diesem Fall ein RPi
- Zugriff auf einen Server oder Computer mit öffentlicher IP mit node.js
- Webseite
Schritte:
- Drucktaste zu arduino
- Arduino zu Himbeere
- Himbeere zum Server
- Website zum Server
Schritt 1: Drucktaste zu Arduino
Zuerst brauchst du einen Arduino und einen Taster!
Jede Art von ihnen ist möglich, es liegt an Ihnen, zu wählen.
Um sie zu verbinden, folgen Sie bitte dem offiziellen Button-Tutorial von Arduino.
Hier ist der Arduino-Code:
// Arduino-Code zum Lesen eines digitalen Pins und Senden des Werts an den seriellen Port
// Balázs Kovács, 2018. Void setup () { Serial.begin (9600); // seriellen Port öffnen PinMode (8, INPUT); // Taster mit Pin 8 verbinden} Int Counter = 0; // etwas später verwendetes Void loop () {if (digitalRead (8) == 1) {// überprüfe den Status von Pin 8 Serial.write ("8"); } Verzögerung (100); Zähler++; if(counter=20) {// alle 20x100=2000ms -> counter = 0; Serial.write("0"); // sendet eine "i'm exist"-Nachricht an den Server } } // das ist alles!
Schritt 2: Arduino zu Himbeere
Jetzt können wir Arduino mit einem Computer verbinden. In diesem Fall verwenden wir einen Raspberry wegen seines geringen Stromverbrauchs.
Verbinden Sie es über USB oder direkt mit den hier beschriebenen RX-TX-Pins.
Installieren Sie dann node.js und npm wie hier beschrieben. Die Stichworte sind:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
und dann
sudo apt-get install -y nodejs
Npm (der Paketmanager von Node.js) benötigt die Module socket.io-client und serialport, also installiere sie:
npm install socket.io-client
npm Serialport installieren
Öffnen und speichern Sie eine Datei "thing.js" mit dem folgenden Code:
// initialisiere die socket.io-Verbindung:
Var-Buchse; var io = require('socket.io-client'); socket = io("https://yourserver.com:port"); // wenn die Verbindung zum Server erfolgreich ist: socket.on('connect', function(){ socket.send("i'm here!"); console.log("connected to the server"); }); // Initialisieren der seriellen Port-Kommunikation, NB /dev=ttyACM0 kann geändert werden: var SerialPort = require('serialport'); var serialPort = new SerialPort('/dev/ttyACM0', {baudRate: 9600}); // Wenn etwas vom Arduino kommt, sendet es verschiedene // Nachrichten an den Server 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. send('/client1 1'); } }); // Daten lesen, die verfügbar sind - ich denke, es ist nicht notwendig serialPort.on('readable', function () { console.log('Data:', port.read()); });
Nun sollten Sie auch den serverseitigen node.js-Code einrichten, bis Sie das Skript starten und testen können
Knoten./etwas.js
Wenn etwas nicht stimmt, lass es mich wissen!
Schritt 3: Serverseitiger Code
Auf der Serverseite benötigen wir node.js mit socket.io Server.
Also füge es hinzu mit:
npm install socket-io
Dann benötigen Sie ein ähnliches Skript wie der Code im 2. Schritt, mit dem Unterschied, dass es auf Verbindungen wartet, und wenn diese vorhanden sind, sendet es alle vom Client gesendeten Nachrichten an alle Clients Fall, an die Website-Benutzer…
Öffnen Sie also eine serverscript.js mit den folgenden Elementen:
var http = erfordern('http'), io = erfordern('socket.io'); // einen minimalen http-Server öffnen. socket.io braucht es. var server = http.createServer(function(req, res) { res.writeHead(200, { 'Content-Type': 'text/html'}); res.end('hello'); }); // schalte den TCP-Socket ein - setze deinen Port! server.listen(7004, function() { console.log("TCP-Server läuft auf Port 7004"); }); // TCP-Nachrichten analysieren var socket=io.listen(server); socket.on('connection', function(client, rinfo) { client.broadcast.emit('system', 'somebody connected…'); client.on('message', function(event){ console.log(event); // jede Nachricht an alle verbundenen Benutzer senden! socket.emit('message', event); }); client.on('everybody', function(event){ }); client.on('disconnect', function(){ socket.emit('message', 'jemand disconnected…'); }); });
Probieren Sie es aus mit
Knoten./serverscript.js
Wenn auch der Client ausgeführt wird, sollten Sie ihre Kommunikation auf beiden Konsolen sehen. Zumindest diese:
Daten: 0
- teilt dem System regelmäßig mit, dass die Arduino->Raspberry->Server-Kommunikation funktioniert.
und
Daten: 8
- sagt, dass die Schaltfläche eingeschaltet ist.
Schritt 4: Website konfigurieren
Jetzt sind wir mit den 75% fertig!
Beenden Sie die harte Arbeit, indem Sie den Code für die Website einfügen.
Es ist einfach.
Fügen Sie zunächst den socket.io-Client hinzu:
Erstellen Sie dann das Message-Analyzer-System:
Var-Buchse;
socket = io("yourserver.com:port"); socket.on('connect', function () { socket.send('anonymer Client - ein Website-Benutzer - ist verbunden!'); socket.on('message', function (msg) { // if You want to see jede Nachricht auskommentieren, einfach auskommentieren: // console.log(msg); if (msg == "/RingTheBell 1") // hier kommt der Code zum Ausdrücken des Pushbutton-Ereignisses: { document.body.style.background = "#ccc"; setTimeout(function() { document.body.style.background = "#000"; }, 1000); }; if (msg == "/client1 1") { // hier kannst du etwas platzieren die auf den Status des verbundenen Clients reagiert }; });
Voilá!
bereit.
Empfohlen:
So rufen Sie Daten aus einer Firebase-Datenbank auf NodeMCU ab – wikiHow
So rufen Sie Daten aus einer Firebase-Datenbank auf NodeMCU ab: Für dieses anweisbare holen wir Daten aus einer Datenbank in Google Firebase und holen sie mit einer NodeMCU zur weiteren Analyse ab. PROJEKTANFORDERUNGEN: 1) NodeMCU oder ESP8266 Controller2) G-Mail Konto zum Erstellen einer Firebase-Datenbank.3) Laden Sie die
Wir stellen vor: 'Deodorino' - das Infrarot-gesteuerte Arduino in einem leeren Deodorant-Stick. Klicken Sie auf das 1. Foto: 7 Schritte
Wir stellen vor: 'Deodorino' - das Infrarot-gesteuerte Arduino in einem leeren Deodorant-Stick. Klicken Sie auf das 1. Foto: Jetzt zum Detail
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Hinzugefügte Informationen: 4 Schritte
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen … Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Zusätzliche Informationen: Wenn Sie jemals auf eine Website gehen und ein Lied abspielen, das Sie mögen und es wollen, dann ist hier das anweisbare für Sie, nicht meine Schuld, wenn Sie etwas durcheinander bringen (nur so wird es passieren, wenn Sie ohne Grund anfangen, Dinge zu löschen) ) Ich konnte Musik für
So beheben Sie Probleme mit der Pionner-Lenkradfernbedienung - Erhöhen Sie das IR-Signal und beheben Sie das kleine Schloss. - Gunook
So beheben Sie Probleme mit der Pionner-Lenkradfernbedienung - Erhöhen Sie das IR-Signal und beheben Sie das kleine Schloss.: Diese Fernbedienung ist sehr schön und praktisch, funktioniert jedoch manchmal nicht richtig Einige Faktoren dafür: Armaturenbrettdesign, Lenkraddesign und IR-Signale Projekt ist kein Beispiel für Effizienz. Ich komme aus Brasilien und habe diesen Tipp bei Amaz gefunden
So führen Sie die Eingabeaufforderung auf einem gesperrten Computer aus und rufen das Administratorkennwort auf - Gunook
So führen Sie die Eingabeaufforderung auf einem gesperrten Computer aus und rufen das Administratorkennwort auf: Der Name sagt alles. Diese Anleitung erklärt Ihnen, wie Sie CMD (Eingabeaufforderung) ausführen und das Passwort ändern