- ఆర్డునో కోసం అడాఫ్రూట్ 5 ఎక్స్ 8 నియోపిక్సెల్ షీల్డ్
- బ్లిన్క్ అనువర్తనం మరియు ఆర్డునో మధ్య కమ్యూనికేషన్ ప్రక్రియను అర్థం చేసుకోవడం
- భాగాలు అవసరం
- అడాఫ్రూట్ RGB LED షీల్డ్ మరియు Arduino - హార్డ్వేర్ కనెక్షన్
- బ్లింక్ అప్లికేషన్ను కాన్ఫిగర్ చేస్తోంది
- ఆర్డునో కోడ్ అడాఫ్రూట్ WS2812B RGB LED షీల్డ్ను నియంత్రిస్తుంది
- Arduino బోర్డుకు కోడ్ను అప్లోడ్ చేస్తోంది
కొన్ని సంవత్సరాల కాలంలో, RGB LED లు దాని అందమైన రంగు, ప్రకాశం మరియు మనోహరమైన లైటింగ్ ప్రభావాల వల్ల రోజు రోజుకు ప్రాచుర్యం పొందుతున్నాయి. అందుకే ఇది చాలా చోట్ల అలంకార వస్తువుగా ఉపయోగించబడుతుంది, ఉదాహరణ ఇల్లు లేదా కార్యాలయ స్థలం కావచ్చు. అలాగే, మేము వంటగదిలో మరియు గేమింగ్ కన్సోల్లో కూడా RGB లైట్లను ఉపయోగించవచ్చు. మూడ్ లైటింగ్ పరంగా వారు పిల్లల ఆట గదిలో లేదా బెడ్ రూములలో కూడా గొప్పవారు. ఇంతకుముందు, మ్యూజిక్ స్పెక్ట్రమ్ విజువలైజర్ను నిర్మించడానికి మేము WS2812B నియోపిక్సెల్ LED లను మరియు ARM మైక్రోకంట్రోలర్ను ఉపయోగించాము, కనుక ఇది మీకు ఆసక్తికరంగా ఉందో లేదో తనిఖీ చేయండి.
అందుకే ఈ ప్రాజెక్ట్లో మేము బ్లింక్ అనువర్తనంతో నియంత్రించగలిగే అనేక మనోహరమైన యానిమేషన్ ప్రభావాలను మరియు రంగులను ఉత్పత్తి చేయడానికి నియోపిక్సెల్ బేస్డ్ RGB LED మ్యాట్రిక్స్ షీల్డ్, ఆర్డునో మరియు బ్లింక్ అప్లికేషన్ను ఉపయోగించబోతున్నాము. కాబట్టి ప్రారంభిద్దాం !!!
ఆర్డునో కోసం అడాఫ్రూట్ 5 ఎక్స్ 8 నియోపిక్సెల్ షీల్డ్
ఆర్డునో అనుకూలమైన నియోపిక్సెల్ షీల్డ్లో ఒక్కొక్కటి నలభై వ్యక్తిగతంగా అడ్రస్ చేయగల RGB LED లను కలిగి ఉంది, వీటిలో ప్రతి ఒక్కటి WS2812b డ్రైవర్ అంతర్నిర్మితాన్ని కలిగి ఉంది, ఈ నియోపిక్సెల్ షీల్డ్ను రూపొందించడానికి 5 × 8 మాతృకలో ఏర్పాటు చేయబడింది. అవసరమైతే పెద్ద షీల్డ్ను రూపొందించడానికి బహుళ నియోపిక్సెల్ షీల్డ్లను కూడా అనుసంధానించవచ్చు. RGB LED లను నియంత్రించడానికి, ఒకే Arduino పిన్ అవసరం, కాబట్టి ఈ ట్యుటోరియల్లో, Arduino యొక్క పిన్ 6 ను ఉపయోగించాలని మేము నిర్ణయించుకున్నాము.
మా విషయంలో, LED లు ఆర్డునో యొక్క అంతర్నిర్మిత 5V పిన్ నుండి శక్తిని పొందుతాయి, ఇది పూర్తి ప్రకాశంతో “LED లలో మూడవ వంతు” గురించి శక్తినివ్వడానికి సరిపోతుంది. మీరు ఎక్కువ ఎల్ఈడీలకు శక్తినివ్వాలంటే, మీరు ఇన్బిల్ట్ ట్రేస్ని కత్తిరించవచ్చు మరియు బాహ్య 5 వి టెర్మినల్ను ఉపయోగించి షీల్డ్కు శక్తినిచ్చే బాహ్య 5 వి సరఫరాను ఉపయోగించవచ్చు.
బ్లిన్క్ అనువర్తనం మరియు ఆర్డునో మధ్య కమ్యూనికేషన్ ప్రక్రియను అర్థం చేసుకోవడం
ఇక్కడ ఉపయోగించబడే 8 * 5 RGB LED మ్యాట్రిక్స్ WS2812B డ్రైవర్ ఆధారంగా నలభై వ్యక్తిగతంగా అడ్రస్ చేయగల RGB LED లను కలిగి ఉంది. ఇది 24-బిట్ కలర్ కంట్రోల్ మరియు పిక్సెల్కు 16.8 మిలియన్ కలర్స్ కలిగి ఉంది. దీనిని “వన్ వైర్ కంట్రోల్” పద్దతితో నియంత్రించవచ్చు. అంటే సింగిల్ కంట్రోల్ పిన్ ఉపయోగించి మొత్తం ఎల్ఈడి పిక్సెల్ ను మనం నియంత్రించవచ్చు. LED లతో పనిచేసేటప్పుడు, నేను ఈ LED ల యొక్క డేటాషీట్ ద్వారా వెళ్ళాను, అక్కడ షీల్డ్ యొక్క ఆపరేటింగ్ వోల్టేజ్ పరిధి 4 V నుండి 6 V గా ఉందని మరియు ప్రస్తుత వినియోగం 5 V వద్ద LED కి 50 mA ఎరుపు, ఆకుపచ్చ, మరియు పూర్తి ప్రకాశం వద్ద నీలం. ఇది బాహ్య శక్తి పిన్లపై రివర్స్-వోల్టేజ్ రక్షణను కలిగి ఉంది మరియు ఆర్డునోను రీసెట్ చేయడానికి షీల్డ్పై రీసెట్ బటన్ను కలిగి ఉంది. అంతర్గత సర్క్యూట్రీ ద్వారా తగినంత శక్తి లభించకపోతే ఇది LED లకు బాహ్య శక్తి ఇన్పుట్ పిన్ను కలిగి ఉంటుంది.
పై స్కీమాటిక్ రేఖాచిత్రంలో చూపినట్లుగా, మేము బ్లింక్ అప్లికేషన్ను డౌన్లోడ్ చేసి ఇన్స్టాల్ చేయాలిరంగు, ప్రకాశం వంటి పారామితులను నియంత్రించగల మా స్మార్ట్ఫోన్లో. పారామితులను సెటప్ చేసిన తర్వాత, అనువర్తనంలో ఏవైనా మార్పులు జరిగితే, అది మా PC కూడా కనెక్ట్ చేయబడిన బ్లింక్ క్లౌడ్కు మరియు నవీకరించబడిన డేటాను స్వీకరించడానికి సిద్ధంగా ఉంది. ఆర్డునో యునో మా పోర్ట్కు యుఎస్బి కేబుల్ ద్వారా కమ్యూనికేషన్ పోర్ట్ తెరిచి ఉంది, ఈ కమ్యూనికేషన్ పోర్ట్ (కామ్ పోర్ట్) తో, బ్లింక్ క్లౌడ్ మరియు ఆర్డునో యుఎన్ఓల మధ్య డేటాను మార్పిడి చేయవచ్చు. పిసి స్థిరమైన సమయ వ్యవధిలో బ్లింక్ క్లౌడ్ నుండి డేటాను అభ్యర్థిస్తోంది మరియు నవీకరించబడిన డేటా అందుకున్నప్పుడు, అది ఆర్డునోకు బదిలీ చేస్తుంది మరియు RGB నేతృత్వంలోని ప్రకాశం మరియు రంగులను నియంత్రించడం వంటి వినియోగదారు నిర్వచించిన నిర్ణయాలు తీసుకుంటుంది. RGB LED షీల్డ్ Arduino LED లో ఉంచబడుతుంది మరియు కమ్యూనికేషన్ కోసం ఒకే డేటా పిన్ ద్వారా అనుసంధానించబడుతుంది, అప్రమేయంగా ఇది Arduino యొక్క D6 పిన్ ద్వారా అనుసంధానించబడుతుంది.Arduino UNO నుండి పంపిన సీరియల్ డేటా నియోపిక్సెల్ షైడ్కు పంపబడుతుంది, అది LED మాతృకపై ప్రతిబింబిస్తుంది.
భాగాలు అవసరం
- ఆర్డునో UNO
- 8 * 5 RGB LED మ్యాట్రిక్స్ షీల్డ్
- Arduino UNO కోసం USB A / B కేబుల్
- ల్యాప్టాప్ / పిసి
అడాఫ్రూట్ RGB LED షీల్డ్ మరియు Arduino - హార్డ్వేర్ కనెక్షన్
WS2812B నియోపిక్సెల్ LED లకు మూడు పిన్స్ ఉన్నాయి, ఒకటి డేటా కోసం మరియు మరొకటి శక్తి కోసం ఉపయోగించబడుతుంది, అయితే ఈ నిర్దిష్ట Arduino షీల్డ్ హార్డ్వేర్ కనెక్షన్ను చాలా సరళంగా చేస్తుంది, మనం చేయాల్సిందల్లా నియోపిక్సెల్ LED మాతృకను Arduino UNO పైన ఉంచండి. మా విషయంలో, LED డిఫాల్ట్ Arduino 5V Rail నుండి శక్తిని పొందుతుంది. నియోపిక్సెల్ షీల్డ్ ఉంచిన తరువాత, సెటప్ క్రింద కనిపిస్తుంది:
బ్లింక్ అప్లికేషన్ను కాన్ఫిగర్ చేస్తోంది
బ్లింక్ అనేది మా స్మార్ట్ఫోన్లను ఉపయోగించి ఏదైనా IoT పరికరాలను మరియు ఉపకరణాలను నియంత్రించడానికి Android మరియు IOS పరికరాల్లో అమలు చేయగల అనువర్తనం. అన్నింటిలో మొదటిది, RGB LED మాతృకను నియంత్రించడానికి గ్రాఫికల్ యూజర్ ఇంటర్ఫేస్ (GUI) ను సృష్టించాలి. అప్లికేషన్ GUI నుండి ఎంచుకున్న అన్ని పారామితులను బ్లింక్ క్లౌడ్కు పంపుతుంది. రిసీవర్ విభాగంలో, మేము ఆర్డినోను సీరియల్ కమ్యూనికేషన్ కేబుల్ ద్వారా PC కి కనెక్ట్ చేసాము. అందువల్ల, పిసి బ్లింక్ క్లౌడ్ నుండి డేటాను అభ్యర్థిస్తుంది మరియు ఈ డేటా అవసరమైన ప్రాసెసింగ్ కోసం ఆర్డునోకు పంపబడుతుంది. కాబట్టి, బ్లింక్ అప్లికేషన్ సెటప్తో ప్రారంభిద్దాం.
సెటప్ చేయడానికి ముందు, గూగుల్ ప్లే స్టోర్ నుండి బ్లింక్ అప్లికేషన్ను డౌన్లోడ్ చేసుకోండి (IOS వినియోగదారులు యాప్ స్టోర్ నుండి డౌన్లోడ్ చేసుకోవచ్చు). సంస్థాపన తరువాత, మీ ఇమెయిల్ ఐడి మరియు పాస్వర్డ్ ఉపయోగించి సైన్-అప్ చేయండి.
క్రొత్త ప్రాజెక్ట్ను సృష్టిస్తోంది:
విజయవంతమైన సంస్థాపన తరువాత, అనువర్తనాన్ని తెరవండి, అక్కడ మనకు “ క్రొత్త ప్రాజెక్ట్ ” ఎంపికతో స్క్రీన్ లభిస్తుంది. దానిపై క్లిక్ చేయండి మరియు ఇది క్రొత్త స్క్రీన్ను పాపప్ చేస్తుంది, ఇక్కడ మేము ప్రాజెక్ట్ పేరు, బోర్డు మరియు కనెక్షన్ రకం వంటి పారామితులను సెట్ చేయాలి. మా ప్రాజెక్ట్లో, పరికరాన్ని “ Arduino UNO ” గా మరియు కనెక్షన్ రకాన్ని “ USB ” గా ఎంచుకుని “ సృష్టించు” పై క్లిక్ చేయండి.
ప్రాజెక్ట్ విజయవంతంగా సృష్టించిన తరువాత, మా రిజిస్టర్డ్ మెయిల్లో ప్రామాణీకరణ ఐడిని పొందుతాము. భవిష్యత్ సూచన కోసం ప్రామాణీకరణ ID ని సేవ్ చేయండి.
గ్రాఫిక్ యూజర్ ఇంటర్ఫేస్ (GUI) ను సృష్టిస్తోంది:
ప్రాజెక్ట్ను బ్లిన్క్లో తెరవండి, “+” గుర్తుపై క్లిక్ చేయండి, అక్కడ మన ప్రాజెక్ట్లో మనం ఉపయోగించగల విడ్జెట్లను పొందుతాము. మా విషయంలో, క్రింద చూపిన విధంగా “zeRGBa” గా జాబితా చేయబడిన RGB కలర్ పికర్ మాకు అవసరం.
విడ్జెట్లను అమర్చుట:
మా ప్రాజెక్ట్కు విడ్జెట్లను లాగిన తరువాత, ఇప్పుడు మేము దాని పారామితులను సెట్ చేయాలి, ఇవి రంగు RGB విలువలను Arduino UNO కి పంపడానికి ఉపయోగిస్తారు.
ZeRGBa పై క్లిక్ చేయండి, అప్పుడు మనకు ZeRGBa సెట్టింగ్ అనే స్క్రీన్ లభిస్తుంది. అప్పుడు అవుట్పుట్ ఎంపికను “ విలీనం ” గా సెట్ చేసి, పిన్ను “V2” కు సెట్ చేయండి, ఇది క్రింది చిత్రంలో చూపబడుతుంది.
ఆర్డునో కోడ్ అడాఫ్రూట్ WS2812B RGB LED షీల్డ్ను నియంత్రిస్తుంది
హార్డ్వేర్ కనెక్షన్ పూర్తయిన తర్వాత, కోడ్ను ఆర్డునోకు అప్లోడ్ చేయాలి. కోడ్ యొక్క దశల వారీ వివరణ క్రింద చూపబడింది.
మొదట, అవసరమైన అన్ని లైబ్రరీలను చేర్చండి. Arduino IDE ని తెరిచి, ఆపై టాబ్ స్కెచ్కు వెళ్లి లైబ్రరీ-> లైబ్రరీలను నిర్వహించు అనే ఎంపికపై క్లిక్ చేయండి . సెర్చ్ బాక్స్లో బ్లింక్ కోసం శోధించి, ఆపై ఆర్డునో యుఎన్ఓ కోసం బ్లిన్క్ ప్యాకేజీని డౌన్లోడ్ చేసి ఇన్స్టాల్ చేయండి.
RGB LED మ్యాట్రిక్స్ను నియంత్రించడానికి ఇక్కడ “ Adafruit_NeoPixel.h ” లైబ్రరీ ఉపయోగించబడుతుంది. దీన్ని చేర్చడానికి, మీరు ఇచ్చిన లింక్ నుండి Adafruit_NeoPixel లైబ్రరీని డౌన్లోడ్ చేసుకోవచ్చు. మీరు దాన్ని పొందిన తర్వాత, మీరు దాన్ని చేర్చండి జిప్ లైబ్రరీ ఎంపికతో చేర్చవచ్చు.
# BLYNK_PRINT డీబగ్సెరియల్ను నిర్వచించండి # చేర్చండి # చేర్చండి
అప్పుడు మేము LED ల సంఖ్యను నిర్వచిస్తాము, ఇది మా LED మాతృకకు అవసరం, LED పారామితులను నియంత్రించడానికి ఉపయోగించే పిన్-నంబర్ను కూడా మేము నిర్వచిస్తాము.
# పిన్ 6 ని నిర్వచించండి # NUM_PIXELS 40 ని నిర్వచించండి
అప్పుడు, మేము ఒక మా బ్లింక్ ప్రమాణీకరణ ID ఉంచాలి auth మేము ముందుగా సేవ్ చేసిన యెరే.
char auth = "HoLYSq-SGJAafQUQXXXXXXXX";
ఇక్కడ సాఫ్ట్వేర్ సీరియల్ పిన్లను డీబగ్ కన్సోల్గా ఉపయోగిస్తారు. కాబట్టి, ఆర్డునో పిన్స్ క్రింద డీబగ్ సీరియల్గా నిర్వచించబడ్డాయి.
# చేర్చండి
సెటప్ లోపల, సీరియల్ కమ్యూనికేషన్ను ఉపయోగించి సీరియల్ కమ్యూనికేషన్ ప్రారంభించబడుతుంది, బ్లిన్క్ బ్లిన్క్.బెగిన్ ఉపయోగించి కనెక్ట్ చేయబడింది మరియు పిక్సెల్స్.బెగిన్ () ఉపయోగించి, LED మ్యాట్రిక్స్ ప్రారంభించబడుతుంది.
void setup () { DebugSerial.begin (9600); pixels.begin (); సీరియల్.బెగిన్ (9600); Blynk.begin (సీరియల్, auth); }
లూప్ () లోపల, మేము Blynk.run () ను ఉపయోగించాము , ఇది బ్లిన్క్ GUI నుండి వచ్చే ఆదేశాలను తనిఖీ చేస్తుంది మరియు తదనుగుణంగా ఆపరేషన్లను అమలు చేస్తుంది.
void loop () { Blynk.run (); }
చివరి దశలో, బ్లిన్క్ అప్లికేషన్ నుండి పంపిన పారామితులను స్వీకరించి ప్రాసెస్ చేయాలి. ఈ సందర్భంలో, సెటప్ విభాగంలో ముందు చర్చించినట్లుగా పారామితులను వర్చువల్ పిన్ “V2” కు కేటాయించారు. BLYNK_WRITE ఫంక్షన్ అనేది అంతర్నిర్మిత ఫంక్షన్, ఇది అనుబంధ వర్చువల్ పిన్ యొక్క స్థితి / విలువ మారినప్పుడల్లా పిలువబడుతుంది. ఏ ఇతర ఆర్డునో ఫంక్షన్ మాదిరిగానే మేము ఈ ఫంక్షన్ లోపల కోడ్ను రన్ చేయవచ్చు.
వర్చువల్ పిన్ V2 వద్ద ఇన్కమింగ్ డేటాను తనిఖీ చేయడానికి ఇక్కడ BLYNK_WRITE ఫంక్షన్ వ్రాయబడింది. బ్లింక్ సెటప్ విభాగంలో చూపినట్లుగా, కలర్ పిక్సెల్ డేటా విలీనం చేయబడింది మరియు V2 పిన్కు కేటాయించబడింది. కాబట్టి మనం కూడా డీకోడింగ్ చేసిన తర్వాత మళ్ళీ డి-విలీనం చేయాలి. LED పిక్సెల్ మాతృకను నియంత్రించడానికి, మాకు ఎరుపు, ఆకుపచ్చ మరియు నీలం వంటి 3 వ్యక్తిగత రంగు పిక్సెల్ డేటా అవసరం. దిగువ కోడ్లో చూపినట్లుగా , ఎరుపు రంగు విలువను పొందడానికి మాతృక యొక్క మూడు సూచికలు param.asInt () లాగా చదవబడ్డాయి . అదేవిధంగా, మిగతా రెండు విలువలు 3 వ్యక్తిగత వేరియబుల్స్లో స్వీకరించబడ్డాయి మరియు నిల్వ చేయబడ్డాయి. ఈ విలువలు దిగువ కోడ్లో చూపిన విధంగా pixels.setPixelColor ఫంక్షన్ను ఉపయోగించి పిక్సెల్ మ్యాట్రిక్స్కు కేటాయించబడతాయి.
ఇక్కడ, pixels.setBrightness () ఫంక్షన్ ప్రకాశం మరియు నియంత్రించడానికి ఉపయోగిస్తారు pixels.show () ఫంక్షన్ మాట్రిక్స్ లో సెట్ రంగును ప్రదర్శించడానికి ఉపయోగిస్తారు.
BLYNK_WRITE (V2) { int r = param.asInt (); int g = param.asInt (); int b = param.asInt (); pixels.clear (); pixels.setBrightness (20); (int i = 0; i <= NUM_PIXELS; i ++) { pixels.setPixelColor (i, pixels.Color (r, g, b)); } pixels.show (); }
Arduino బోర్డుకు కోడ్ను అప్లోడ్ చేస్తోంది
మొదట, మేము Arduino IDE లోపల Arduino యొక్క PORT ని ఎంచుకోవాలి, తరువాత మనం కోడ్ Arduino UNO లోకి అప్లోడ్ చేయాలి. విజయవంతమైన అప్లోడ్ చేసిన తర్వాత, మా సీరియల్ కమ్యూనికేషన్ సెటప్ కోసం ఉపయోగించబడే పోర్ట్-నంబర్ను గమనించండి.
దీని తరువాత, మీ PC లో బ్లిన్క్ లైబ్రరీ యొక్క స్క్రిప్ట్ ఫోల్డర్ను కనుగొనండి. మీరు లైబ్రరీని ఇన్స్టాల్ చేసినప్పుడు ఇది ఇన్స్టాల్ అవుతుంది, గని ఉంది, “సి: ers యూజర్లు \ పిసి_నేమ్ \ పత్రాలు \ ఆర్డునో \ లైబ్రరీలు \ బ్లిన్క్ \ స్క్రిప్ట్స్”
స్క్రిప్ట్ ఫోల్డర్లో, “బ్లింక్-సెర్.బాట్” అనే ఫైల్ ఉండాలి, ఇది సీరియల్ కమ్యూనికేషన్ కోసం ఉపయోగించే బ్యాచ్ ఫైల్, ఇది మేము నోట్ప్యాడ్తో సవరించాలి. నోట్ప్యాడ్తో ఫైల్ను తెరిచి, చివరి దశలో మీరు గుర్తించిన పోర్ట్ నంబర్ను మీ ఆర్డునో పోర్ట్ నంబర్కు మార్చండి.
సవరించిన తరువాత, ఫైల్ను సేవ్ చేసి, బ్యాచ్ ఫైల్పై డబుల్ క్లిక్ చేయడం ద్వారా దాన్ని అమలు చేయండి. అప్పుడు, మీరు క్రింద చూపిన విధంగా ఒక విండోను తప్పక చూడాలి:
గమనిక: మీరు పైన చూపిన ఈ విండోను చూడలేకపోతే మరియు అది తిరిగి కనెక్ట్ చేయమని ప్రాంప్ట్ చేయబడితే, అది ఆర్డునో షీల్డ్తో PC కి అనుసంధానంలో లోపం వల్ల కావచ్చు. అలాంటప్పుడు, PC తో మీ Arduino కనెక్షన్ను తనిఖీ చేయండి. ఆ తరువాత, ఆర్డునో IDE లో COM పోర్ట్ నంబర్ చూపిస్తుందో లేదో తనిఖీ చేయండి. ఇది చెల్లుబాటు అయ్యే COM పోర్ట్ను చూపిస్తుంటే, అది కొనసాగడానికి సిద్ధంగా ఉంది. మీరు మళ్ళీ బ్యాచ్ ఫైల్ను అమలు చేయాలి.
తుది ప్రదర్శన:
ఇప్పుడు, సర్క్యూట్ మరియు దాని కార్యాచరణను పరీక్షించడానికి ఇది సమయం. బ్లింక్ అప్లికేషన్ తెరిచి GUI ని తెరిచి ప్లే బటన్ పై క్లిక్ చేయండి. ఆ తరువాత, మీరు LED మ్యాట్రిక్స్లో ప్రతిబింబించేలా మీకు కావలసిన రంగులను ఎంచుకోవచ్చు. క్రింద చూపిన విధంగా, నా విషయంలో నేను ఎరుపు మరియు నీలం రంగును ఎంచుకున్నాను, ఇది మ్యాట్రిక్స్లో ప్రదర్శించబడుతుంది.
అదేవిధంగా, మీరు కోడింగ్ను కొంచెం అనుకూలీకరించడం ద్వారా ఈ LED మాత్రికలను ఉపయోగించి విభిన్న యానిమేషన్లు చేయడానికి కూడా ప్రయత్నించవచ్చు.