- పదార్థాలు అవసరం
- రాస్ప్బెర్రీ పై పై Node.js ని ఇన్స్టాల్ చేస్తోంది
- Node.js ఉపయోగించి LED ని మెరిసేటట్లు
- Node.js LED బ్లింక్ స్క్రిప్ట్ మరియు వివరణ
- Node.js ఉపయోగించి LED ని మెరిసే సర్క్యూట్ రేఖాచిత్రం
- రాస్ప్బెర్రీ పై
మునుపటి రాస్ప్బెర్రీ పై ట్యుటోరియల్లో, పైథాన్, ఎంబెడెడ్ సి, ఫ్లాస్క్ మొదలైన వాటితో సహా రాస్ప్బెర్రీ పైని నియంత్రించడానికి మేము చాలా విభిన్న ప్రోగ్రామింగ్ భాషలు మరియు సాఫ్ట్వేర్లను ఉపయోగించాము. శక్తివంతమైన రాస్ప్బెర్రీ పై బోర్డు యొక్క హోరిజోన్ను విస్తరించడానికి, ఈ రోజు మనం చాలా ప్రాచుర్యం పొందిన జావాస్క్రిప్ట్ ఆధారిత వాతావరణాన్ని ఉపయోగిస్తాము (నోడ్.js) రాస్ప్బెర్రీ పై GPIO లను వెబ్ సర్వర్గా ఏర్పాటు చేయడం ద్వారా స్థానికంగా మరియు ప్రపంచవ్యాప్తంగా నియంత్రించడానికి. ప్రారంభంలో, గూగుల్ క్రోమ్ కోసం నోడ్.జెస్ అభివృద్ధి చేయబడింది, కాని తరువాత దీనిని గూగుల్ ఓపెన్ సోర్స్ చేసింది.
ఈ ట్యుటోరియల్లో, మేము రెండు పద్ధతులను ఉపయోగించి రాస్ప్బెర్రీ పైకి అనుసంధానించబడిన LED ని నియంత్రిస్తాము
- మొదట మనం LED ని బ్లింక్ చేయడానికి Node.js ఉపయోగించి జావాస్క్రిప్ట్ కోడ్ వ్రాస్తాము
- రెండవ పద్ధతిలో, LED ని ఆన్ మరియు ఆఫ్ చేయడానికి రెండు బటన్లతో ఒక HTML పేజీని సృష్టిస్తాము. ఈ HTML వెబ్ పేజీ కోరిందకాయ పైలో హోస్ట్ చేయబడుతుంది మరియు ఏదైనా వెబ్ బ్రౌజర్లో తెరవబడుతుంది. కాబట్టి ఇక్కడ రాస్ప్బెర్రీ పై వెబ్ సర్వర్ గా పనిచేస్తుంది
పదార్థాలు అవసరం
- రాస్ప్బెర్యన్ పై రాస్ప్బెర్రీ పై బోర్డు వ్యవస్థాపించబడింది
- LED
ఈ ట్యుటోరియల్లో నేను రాస్ప్బెర్రీ పైతో కనెక్ట్ అవ్వడానికి HDMI కేబుల్ ఉపయోగించి బాహ్య మానిటర్ను ఉపయోగిస్తున్నాను. మీకు మానిటర్ లేకపోతే, ల్యాప్టాప్ లేదా కంప్యూటర్ను ఉపయోగించి రాస్ప్బెర్రీ పైకి కనెక్ట్ చేయడానికి మీరు SSH క్లయింట్ (పుట్టీ) లేదా VNC సర్వర్ని ఉపయోగించవచ్చు. మీకు ఏమైనా ఇబ్బంది ఉంటే, రాస్ప్బెర్రీ పై గైడ్ తో చూస్తూ ఉండండి.
రాస్ప్బెర్రీ పై పై Node.js ని ఇన్స్టాల్ చేస్తోంది
మేము ఈ క్రింది ఆదేశాలను ఉపయోగించి మా బోర్డులో Node.js ని ఇన్స్టాల్ చేస్తాము.
దశ 1: - మొదట ఈ ఆదేశాన్ని ఉపయోగించి మీ కోరిందకాయ పై బోర్డు యొక్క ఆర్మ్ వెర్షన్ కోసం తనిఖీ చేయండి.
uname -m
నా విషయంలో, వెర్షన్ 7.
దశ 2: - టెర్మినల్లో ఈ లింక్ను కాపీ చేయడం ద్వారా ఇన్స్టాలర్ను డౌన్లోడ్ చేయండి. క్రింద ఇచ్చిన లింక్లో సంస్కరణను మార్చడం మర్చిపోవద్దు.
wget https://nodejs.org/dist/v4.6.1/node-v4.6.1-linux-armvl.tar.gz
దశ 3: - దిగువ ఆదేశాన్ని ఉపయోగించి ఫైళ్ళను సంగ్రహించండి
tar -xvf node-v4.6.1-linux-armvl.tar.gz
దశ 4: - చివరగా, స్థానిక డైరెక్టరీలకు కూడా ముఖ్యమైన ఫైళ్ళను జోడించడానికి ఈ ఆదేశాలను అమలు చేయండి.
cd node-v4.3.1-linux-armvl sudo cp -R * / usr / local /
Node.js ఇప్పుడు మీ రాస్ప్బెర్రీ పైలో ఇన్స్టాల్ చేయబడింది. ఈ ఆదేశాన్ని ఉపయోగించి నిర్ధారణ కోసం నోడ్ యొక్క సంస్కరణను తనిఖీ చేయండి.
నోడ్ -వర్షన్
Node.js సర్వర్ చేయడానికి ముందు, మొదట node.js (npm onoff ప్యాకేజీ) ఉపయోగించి LED ని రెప్ప వేయడానికి స్క్రిప్ట్ ఎలా రాయాలో చూద్దాం.
Node.js ఉపయోగించి LED ని మెరిసేటట్లు
Node.js ను ఉపయోగించి రాస్ప్బెర్రీ పై పై GPIO ని నియంత్రించడానికి, మేము ఆన్ఆఫ్ మాడ్యూల్ ఉపయోగిస్తాము.
దిగువ ఆదేశాన్ని ఉపయోగించి ఆన్ఆఫ్ మాడ్యూల్ను ఇన్స్టాల్ చేయడానికి మేము npm ప్యాకేజీ నిర్వాహికిని ఉపయోగిస్తాము
npm ఇన్స్టాల్ ఆన్
ఇప్పుడు, మేము లెడ్ బ్లింక్ కోసం స్క్రిప్ట్ వ్రాస్తాము. నానో ఎడిటర్ తెరిచి, కమాండ్ ఉపయోగించి ఫైల్ చేయడానికి పేరు ఇవ్వండి
నానో బ్లింక్_లెడ్.జెస్
మీరు Node.js లో ఒక అనుభవశూన్యుడు మరియు అది ప్యాకేజీలు అయితే, స్క్రిప్ట్ను బాగా అర్థం చేసుకోవడానికి మీరు npm యొక్క డాక్యుమెంటేషన్ చేయవచ్చు.
Node.js LED బ్లింక్ స్క్రిప్ట్ మరియు వివరణ
మొదట, లీడ్, ఆలస్యం మరియు GPIO కోసం వేరియబుల్స్ ప్రకటించండి. LED ని కనెక్ట్ చేయడానికి నేను రాస్ప్బెర్రీ పై GPIO 4 ని ఉపయోగిస్తున్నాను.
var Gpio = అవసరం ('onoff'). Gpio; var LED = కొత్త Gpio (4, 'out'); var blinkInterval = setInterval (blinkLED, 500);
ఇప్పుడు, బ్లింక్ ప్రారంభించడానికి మేము ఒక ఫంక్షన్ చేస్తాము.
ఫంక్షన్ blinkLED () {if (LED.readSync () === 0) {LED.writeSync (1); // output ట్పుట్ను 1 కి సెట్ చేయండి, అంటే} else {LED.writeSync (0); // అవుట్పుట్ను 0 కి సెట్ చేయండి, అంటే టర్న్ లీడ్ ఆఫ్ }}
అదేవిధంగా, మెరిసేటట్లు ఆపడానికి ఒక ఫంక్షన్ చేయండి
ఫంక్షన్ ఎండ్బ్లింక్ () {క్లియర్ఇంటర్వల్ (బ్లింక్ ఇంటర్వెల్); LED.writeSync (0); LED.unexport (); // ఉచిత వనరులకు GPIO ని ఎగుమతి చేయండి} setTimeout (ఎండ్బ్లింక్, 10000);
ఈ ట్యుటోరియల్ చివరిలో మెరిసే LED కోసం పూర్తి Node.js కోడ్ ఇవ్వబడింది. కాబట్టి మేము గతంలో నానో కమాండ్ ఉపయోగించి సృష్టించిన led_blink.js ఫైల్లో కోడ్ను కాపీ చేసి పేస్ట్ చేయండి, Ctrl + x ఉపయోగించి ఫైల్ను సేవ్ చేసి, ఆపై Y నొక్కండి మరియు ఎంటర్ నొక్కండి.
స్క్రిప్ట్ను అమలు చేయడానికి, టెర్మినల్ను తెరిచి, క్రింది ఆదేశాన్ని టైప్ చేయండి:
నోడ్ blink_led.js
LED 10 సెకన్ల పాటు మెరిసిపోతుందని మీరు చూస్తారు మరియు ఆ తర్వాత అది మెరిసేటప్పుడు ఆగిపోతుంది. ఈ ట్యుటోరియల్ ముగింపులో ఇచ్చిన వీడియోలో పూర్తి పనిని తనిఖీ చేయండి.
Node.js ఉపయోగించి LED ని మెరిసే సర్క్యూట్ రేఖాచిత్రం
రాస్ప్బెర్రీ పై
ఇప్పుడు, ఆసక్తికరమైన భాగానికి రండి, ఇక్కడ మేము మా స్వంత వెబ్ సర్వర్ను తయారు చేయబోతున్నాము, దీని నుండి వెబ్పేజీని ఉపయోగించి రాస్ప్బెర్రీ పై యొక్క GPIO ని నియంత్రించవచ్చు.
దీని కోసం, మొదట మనం ఒక HTML పేజీని తయారు చేసి, బ్యాక్ ఎండ్ పనిని నిర్వహించడానికి స్క్రిప్ట్ రాయాలి, అంటే RPi GPIO ని నియంత్రించడానికి.
దశ 1: - అన్ని ఫైళ్ళను ఒకే చోట నిల్వ చేయడానికి డైరెక్టరీని తయారు చేయండి.
mkdir nodejs_server
దశ 2: - నోడ్జ్_సర్వర్ ఫోల్డర్ లోపల HTML ఫైల్ను సేవ్ చేయడానికి మరో ఫోల్డర్ను తయారు చేయండి.
cd nodejs_server mkdir వీక్షణలు
దశ 3: - మీరు మీ html పేజీకి చిత్రాలను జోడించాలనుకుంటే, మీరు ప్రధాన డైరెక్టరీ లోపల నోడ్జ్_సర్వర్ ఫోల్డర్లో పబ్లిక్ అనే మరో ఫోల్డర్ను పబ్లిక్ చేయాలి. పబ్లిక్ ఫోల్డర్లో, ఇమేజ్ ఫోల్డర్ను తయారు చేసి, అన్ని చిత్రాలను ఈ ఫోల్డర్లో నిల్వ చేయండి.
దశ 4: - ఇప్పుడు, మేము HTML పేజీని చేస్తాము. దీని కోసం, వీక్షణల డైరెక్టరీకి వెళ్లి, ఫైల్ పేరు ఇండెక్స్.ఇజ్స్తో నానో టెక్స్ట్ ఎడిటర్ను తెరవండి
స్క్రిప్ట్లో ఫాన్సీ ఏమీ లేదు. ఆన్ మరియు ఆఫ్ బటన్ చేయడానికి ఇది కేవలం ఒక HTML ఫైల్.
నానో టెక్స్ట్ ఎడిటర్లో ఈ క్రింది HTML కోడ్ను కాపీ చేసి సేవ్ చేయండి.
నోడెజ్ సర్వర్కు స్వాగతం
నేతృత్వ స్థితి: <% = స్థితి%>దశ 5: - ఇప్పుడు, మేము జావాస్క్రిప్ట్ కోడ్ రాయాలి. వినియోగదారు ప్రదర్శించిన http అభ్యర్థనలకు ప్రతిస్పందించడానికి మేము నోడ్ ఎక్స్ప్రెస్ ఫ్రేమ్వర్క్ను ఉపయోగిస్తున్నాము.
నోడ్ ఎక్స్ప్రెస్ గురించి మరింత తెలుసుకోవడానికి మీరు లింక్ను అనుసరించవచ్చు.
నోడ్జ్_సర్వర్ ఫోల్డర్లో index.js ఫైల్ పేరుతో టెర్మినల్ తెరిచి, నానో టెక్స్ట్ ఎడిటర్ను తెరిచి, ఆపై క్రింది జావా స్క్రిప్ట్ కోడ్ మరియు ఈ ఫైల్ను కాపీ చేసి పేస్ట్ చేయండి.
var ఎక్స్ప్రెస్ = అవసరం ('ఎక్స్ప్రెస్'); var అనువర్తనం = ఎక్స్ప్రెస్ (); var మార్గం = అవసరం ('మార్గం'); var gpio = అవసరం ('rpi-gpio'); gpio.setup (7, gpio.DIR_OUT); app.set ('వ్యూ ఇంజిన్', 'ejs'); app.use (express.static (path.join (__ dirname, 'public'))); console.log (path.join (__ dirname, 'public')); app.get ('/', ఫంక్షన్ (req, res) { res.render ('index', {status: "బటన్ నొక్కండి"}); }); app.post ('/ led / on', ఫంక్షన్ (req, res) { gpio.write (7, true, function (err ) { if (err) తప్పుడు తప్పు; console.log ('పిన్ చేయడానికి వ్రాసిన ట్రూ'); console.log (path.join (__ dirname, 'public')); రిటర్న్ res.render ('index',{స్థితి: "లెడ్ ఆన్ ఆన్"}); }); }); app.post ('/ led / off', ఫంక్షన్ (req, res) { gpio.write (7, తప్పుడు, ఫంక్షన్ (తప్పు) { if (err) త్రో తప్పు; console.log ('పిన్ చేయడానికి వ్రాసిన తప్పు'); console.log (path.join (__ dirname, 'public')); రిటర్న్ res.render ('index', {status: "Led is Off"}); }); }); app.listen (3000, ఫంక్షన్ () so console.log ('పోర్ట్లో సర్వర్ ప్రారంభమైంది: 3000!') })
దశ 6: - nodejs_server డైరెక్టరీ లోపల, node.js యొక్క లైబ్రరీలను వ్యవస్థాపించడానికి మేము ఈ క్రింది ఆదేశాన్ని అమలు చేయాలి.
npm ఇన్స్టాల్
దశ 7: - ఇప్పుడు, మీ సర్వర్ పని చేయడానికి సిద్ధంగా ఉంది. స్థానిక సర్వర్ను ప్రారంభించడానికి, nodejs_server డైరెక్టరీలో కింది ఆదేశాన్ని అమలు చేయండి
నోడ్ index.js
మీ సర్వర్ నిర్వచించిన పోర్టులో ప్రారంభించబడిందని మీరు టెర్మినల్లో సందేశాన్ని చూస్తారు.
దశ 8: - ఇప్పుడు మీ బ్రౌజర్ను తెరిచి, రాస్ప్బెర్రీ పై URL ను పోర్ట్ నంబర్తో తెరవండి, అంటే కోరిందకాయ: 3000
మీరు బ్రౌజర్ను తెరుస్తున్న మీ కోరిందకాయ పై మరియు ల్యాప్టాప్ ఒకే నెట్వర్క్తో అనుసంధానించబడి ఉన్నాయని నిర్ధారించుకోండి.
మీరు బ్రౌజర్లో క్రింది పేజీని చూస్తారు.
ఇప్పుడు, LED ని ఆపివేయడానికి LED ఆన్ బటన్ నొక్కండి మరియు LED ని ఆపివేయడానికి LED ఆఫ్ బటన్ నొక్కండి.