Բովանդակություն:
- Քայլ 1. Կտտացրեք Arduino- ին
- Քայլ 2. Arduino- ից ազնվամորի
- Քայլ 3: Սերվերի կողային ծածկագիր
- Քայլ 4: Կարգավորեք կայքը
Video: Rանգահարեք համացանցում: 4 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Համացանցին զանգելը տեղական/իրական վայրերից վեբ կայքերի վրա ազդելու համար է:
Լրացուցիչ տեղեկություններ դրա մասին.
makker.hu/RingTheWeb/
Ձեզ անհրաժեշտ կլինի.
- 1 կոճակ
- 10k դիմադրություն
- Arduino (ցանկացած տեսակի)
- մալուխներ
- փոքր, ցածր էներգիայի համակարգիչ `այս դեպքում RPi
- մուտք դեպի սերվեր կամ համակարգիչ ՝ հանրային IP- ով ՝ node.js- ով
- կայքը
Քայլեր.
- Pushbutton arduino- ին
- Արդուինո ազնվամորի
- Ազնվամորի սերվերին
- Կայքը սերվերին
Քայլ 1. Կտտացրեք Arduino- ին
Նախ անհրաժեշտ է Arduino և սեղմիչ:
Դրանց ցանկացած տեսակ հնարավոր է, ընտրությունը ձեզնից է:
Նրանց միացնելու համար հետևեք Arduino- ի պաշտոնական կոճակների ձեռնարկին:
Ահա Arduino ծածկագիրը.
// Arduino կոդ ՝ թվային փին կարդալու և սերիական պորտին արժեք ուղարկելու համար
// Balázs Kovács, 2018. void setup () {Serial.begin (9600); // բացել սերիական պորտի pinMode (8, INPUT); // միացնել կոճակը Pin 8} int հաշվիչ = 0; // ինչ -որ բան օգտագործվեց ավելի ուշ void loop () {if (digitalRead (8) == 1) {// ստուգեք PIN 8 կարգավիճակը Serial.write ("8"); } ուշացում (100); հաշվիչ ++; եթե (հաշվիչ = 20) {// յուրաքանչյուր 20x100 = 2000ms -> հաշվիչ = 0; Serial.write ("0"); // սերվերին ուղարկում է «ես գոյություն ունեմ» հաղորդագրությունը}} // վերջ:
Քայլ 2. Arduino- ից ազնվամորի
Այժմ մենք կարող ենք Arduino- ն միացնել համակարգչին: Այս դեպքում մենք օգտագործում ենք ազնվամորի ՝ էներգիայի ցածր սպառման պատճառով:
Միացրեք այն USB- ով կամ ուղղակիորեն այստեղ նկարագրված RX-TX կապումներով:
Այնուհետև տեղադրեք node.js և npm, ինչպես նկարագրված է այստեղ: Հիմնաբառերն են.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
եւ հետո
sudo apt -get install -y nodejs
Npm- ին (Node.js- ի փաթեթի կառավարիչ) անհրաժեշտ են socket.io-client և serialport մոդուլներ, այնպես որ տեղադրեք դրանք.
npm տեղադրել socket.io-client
npm տեղադրել սերիալային պորտ
Բացեք և պահեք something.js ֆայլը հետևյալ կոդով.
// սկզբնականացնել socket.io կապը.
var վարդակից; var io = պահանջում ('socket.io-client'); socket = io ("https://yourserver.com:port"); // եթե սերվերի հետ կապը հաջողված է.; // նախաստորագրել սերիական նավահանգստի հաղորդակցությունը, NB /dev = ttyACM0- ը կարող է փոխվել. var serialPort = նոր SerialPort ('/dev/ttyACM0', {baudRate: 9600}); // Եթե ինչ -որ բան գալիս է Arduino- ից, այն ուղարկում է տարբեր հաղորդագրություններ // ըստ սերվերի 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) {վարդակ ուղարկել ('/client1 1');}}); // Կարդացեք առկա տվյալները - կարծում եմ, որ դա անհրաժեշտ չէ serialPort.on ('readable', function () {console.log ('Data:', port.read ());});
Այժմ դուք նույնպես պետք է կարգավորեք սերվերի կողմից գտնվող node.js ծածկագիրը, մինչ այդ կարող եք սկսել և փորձարկել սցենարը ըստ
հանգույց./ինչ -որ բան. js
Եթե ինչ -որ բան այն չէ, խնդրում եմ ինձ տեղյակ պահեք:
Քայլ 3: Սերվերի կողային ծածկագիր
Սերվերի կողմից մեզ անհրաժեշտ են node.js socket.io սերվերով:
Այսպիսով, ավելացրեք այն հետևյալով.
npm տեղադրել socket-io
Այնուհետև 2 -րդ քայլի համար ձեզ հարկավոր կլինի ծածկագրի նմանատիպ սցենար, այն տարբերությամբ, որ այն սպասում է միացումներին, և եթե դրանք ներկա են, ապա այն կհեռարձակի հաճախորդից ուղարկված ցանկացած հաղորդագրություն բոլոր հաճախորդներին: դեպքում, կայքի օգտվողներին…
Այսպիսով, բացեք serverscript.js հետևյալը.
var http = պահանջում ('http'), io = պահանջել ('socket.io'); // բացել նվազագույն http սերվեր: socket.io- ին դա պետք է: var server = http.createServer (գործառույթ (պահանջ, res) {res.writeHead (200, {'Content-Type': 'text/html'}); res.end ('բարև');}); // միացրեք tcp վարդակից - սահմանեք ձեր նավահանգիստը: server.listen (7004, գործառույթ () {console.log («TCP սերվեր, որն աշխատում է 7004 նավահանգստում»);}); // վերլուծել tcp հաղորդագրությունները var socket = io.listen (սերվեր); socket.on («կապ», գործառույթ (հաճախորդ, rinfo) {client.broadcast.emit («համակարգ», «ինչ -որ մեկը միացված է …»); client.on («հաղորդագրություն», գործառույթ (իրադարձություն) {console.log (իրադարձություն); // ցանկացած հաղորդագրություն հեռարձակել յուրաքանչյուր միացված օգտվողի! socket.emit («հաղորդագրություն», իրադարձություն);}); client.on («բոլորը», գործառույթը (իրադարձություն) {}); գործառույթը () {socket.emit ('հաղորդագրություն', 'ինչ -որ մեկը անջատված է…');});});
Փորձեք փորձարկել այն
հանգույց./serverscript.js
Եթե հաճախորդը նույնպես աշխատում է, դուք պետք է տեսնեք նրանց հաղորդակցությունը երկու վահանակների վրա: Առնվազն սրանք.
Տվյալներ `0
-պարբերաբար պատմում է համակարգին, որ Arduino-> Raspberry-> սերվերային հաղորդակցությունն աշխատում է:
եւ
Տվյալներ `8
- ասում է, որ կոճակը միացված է:
Քայլ 4: Կարգավորեք կայքը
Այժմ մենք պատրաստ ենք 75% -ով:
Ավարտեք քրտնաջան աշխատանքը ՝ ներառելով վեբ կայքի ծածկագիրը:
Հեշտ է:
նախ, ներառեք socket.io հաճախորդը.
ապա ստեղծեք հաղորդագրությունների անալիզատոր համակարգ.
var վարդակից;
socket = io ("yourserver.com:port"); socket.on ('Connect', function () {socket.send ('anonym client - a website user - is connected!'); socket.on ('message', function (msg) {// if you want to see յուրաքանչյուր հաղորդագրություն, պարզապես մեկնաբանություն արեք այն. "#ccc"; setTimeout (function () {document.body.style.background = "#000";}, 1000);}; if (msg == "/client1 1") {// այստեղ կարող եք ինչ -որ բան տեղադրել որն արձագանքում է կապված հաճախորդի կարգավիճակին};});
Voilá!
պատրաստ է:
Խորհուրդ ենք տալիս:
Arduino մեքենայի հետադարձ կայանման ահազանգման համակարգ - Քայլ առ քայլ: 4 քայլ
Arduino մեքենայի հետադարձ կայանման ահազանգման համակարգ | Քայլ առ քայլ. Այս նախագծում ես նախագծելու եմ մի պարզ Arduino մեքենայի հետադարձ կայանման սենսորային միացում ՝ օգտագործելով Arduino UNO և HC-SR04 ուլտրաձայնային տվիչ: Այս Arduino- ի վրա հիմնված Car Reverse ազդանշանային համակարգը կարող է օգտագործվել ինքնավար նավարկության, ռոբոտների ռանգի և այլ տեսականու համար
Քայլ առ քայլ համակարգչային շենք. 9 քայլ
Քայլ առ քայլ համակարգչի կառուցում. Պարագաներ. Սարքավորումներ. Մայրական համակարգիչ CPU coolerPSU (Էներգամատակարարման միավոր) Պահեստավորում (HDD/SSD) RAMGPU (պարտադիր չէ) Գործ CaseTools: Պտուտակահան ESD ապարանջան/matsthermal paste w/aplikator
Երեք բարձրախոս շղթա -- Քայլ առ քայլ ձեռնարկ ՝ 3 քայլ
Երեք բարձրախոս շղթա || Քայլ առ քայլ ձեռնարկ. Բարձրախոսների սխեման ուժեղացնում է շրջակա միջավայրից ստացված աուդիո ազդանշանները MIC- ում և այն ուղարկում է խոսնակին, որտեղից արտադրվում է ուժեղացված ձայնը:
Ձայնային թռիչք Arduino Uno- ի հետ Քայլ առ քայլ (8 քայլ) `8 քայլ
Ձայնային թռիչք Arduino Uno- ի հետ Քայլ առ քայլ (8 քայլ). Ուլտրաձայնային ձայնային փոխարկիչներ L298N Dc կանացի ադապտեր էներգիայի մատակարարում արական dc pin Arduino UNOBreadboard և անալոգային նավահանգիստներ ՝ կոդը փոխարկելու համար (C ++)
NODEMCU 1.0 (ESP8266) ԿԱՌԱՎԱՐՎԱ ՀԵՌՈՍՏԱԳՈՐՈԹՅՈՆ ՝ BLYNK- ի օգտագործմամբ (համացանցում) ՝ 5 քայլ (նկարներով)
NODEMCU 1.0 (ESP8266) ԿԱՌԱՎԱՐՎԱEL ՀԵՌՈՍՏԱԳՈՐՈԹՅՈՆ ՝ BLYNK- ի օգտագործմամբ (WEB ցանցի վրայով). Տղերք, իմ անունն է P STEVEN LYLE JYOTHI, և սա իմ առաջին հրահանգն է, թե ինչպես կարելի է վերահսկել ռելեները ՝ ԻՄ ՎԱՏ Անգլերեն