PWM: మీ Arduino బోర్డుతో అనలాగ్ పిన్‌లను ఎమ్యులేట్ చేయడం

పిడబ్ల్యుఎం సిగ్నల్స్

మీరు మీ ఆర్డునో బోర్డులో ఉపయోగించగల డిజిటల్ మరియు అనలాగ్ పిన్‌లతో, మీ ఎలక్ట్రానిక్ ప్రాజెక్టుల నుండి డేటాను నియంత్రించడానికి లేదా పొందటానికి విద్యుత్ సంకేతాలను స్వీకరించవచ్చు లేదా పంపవచ్చు. అదనంగా, ఈ రకమైన ప్లేట్‌లో ఇతర ఆసక్తికరమైన సంకేతాలు కూడా ఉన్నాయి, మరియు అవి పిడబ్ల్యుఎం, వాస్తవానికి అనలాగ్ లేకుండా అనలాగ్ సిగ్నల్ను అనుకరించగలదు. అంటే, అవి అనలాగ్ సిగ్నల్ వలె (అదే విధంగా కాదు) పనిచేయగల డిజిటల్ పిన్స్.

మీరు డిజిటల్ హై మరియు తక్కువ సిగ్నల్స్, అంటే 1 లేదా 0, ఆన్ మరియు ఆఫ్ ఉపయోగించాలనుకున్నప్పుడు మాత్రమే ఈ రకమైన సిగ్నల్స్ చాలా ఆచరణాత్మకమైనవి, కానీ మీరు మరింత వెళ్లి వివరించాలనుకుంటున్నారు కొంత క్లిష్టమైన సంకేతాలు. ఉదాహరణకు, a యొక్క వేగాన్ని మాడ్యులేట్ చేయడం సాధ్యపడుతుంది DC మోటార్, లేదా కాంతి యొక్క కాంతి తీవ్రత, సోలేనోయిడ్ మొదలైనవి.

అనలాగ్ vs డిజిటల్ సిస్టమ్

అనలాగ్ vs డిజిటల్ సిగ్నల్

ఎలక్ట్రానిక్ సర్క్యూట్లను రెండు పెద్ద కుటుంబాలు లేదా వర్గాలుగా విభజించవచ్చు: డిజిటల్ మరియు అనలాగ్. డిజిటల్ ఎలక్ట్రానిక్స్ గురించి మాట్లాడేటప్పుడు, మేము వివిక్త విలువలతో పరిమాణాలను ఉపయోగిస్తున్నాము, అనగా, తక్కువ లేదా అధిక వోల్టేజ్ యొక్క విద్యుత్ సంకేతాల ద్వారా ప్రాతినిధ్యం వహించే బైనరీ వ్యవస్థ, ఆ బిట్ల యొక్క స్థితిని అర్థం చేసుకోవడానికి. మరోవైపు, అనలాగ్ సర్క్యూట్ విషయానికి వస్తే, నిరంతర విలువలతో పరిమాణాలు ఉపయోగించబడుతున్నాయి.

డిజిటల్ వ్యవస్థలలో క్రమంగా చూడవచ్చు కాంబినేషన్ రకం మరియు వరుస రకం. అంటే, పూర్వం వ్యవస్థ యొక్క అవుట్పుట్ ఇన్పుట్ల స్థితిపై మాత్రమే ఆధారపడి ఉంటుంది. మరోవైపు, సీక్వెన్షియల్ వాటిలో, మెమరీ ఎలిమెంట్స్ చేర్చబడతాయి మరియు అవుట్పుట్ ఇన్పుట్ల ప్రస్తుత స్థితి మరియు నిల్వ చేసిన మునుపటి స్థితిపై ఆధారపడి ఉంటుంది.

అనలాగ్ల విషయంలో ఈ రెండు పెద్ద సమూహాలు లేదా వైవిధ్యాలు లేవు, ఎందుకంటే ఇక్కడ అవి నిరంతర సంకేతాలు, ఇవి ఎల్లప్పుడూ ఆధారపడి ఉంటాయి సిగ్నల్ ప్రస్తుత వ్యవస్థ. ఉదాహరణకు, లౌడ్‌స్పీకర్‌లో, మీరు సరఫరా చేసే సిగ్నల్ మీరు పునరుత్పత్తి చేయదలిచిన ధ్వనిపై ఆధారపడి ఉంటుంది. మైక్రోఫోన్‌తో సమానం, ఇది స్వీకరిస్తున్న ధ్వనిని బట్టి అనలాగ్ సిగ్నల్‌ను ఉత్పత్తి చేస్తుంది. ఈ బ్లాగులో మేము వివరించిన అనేక ఇతర సెన్సార్‌లతో కూడా మీరు దీన్ని చూశారు మరియు అనలాగ్ సిగ్నల్‌లతో పని చేస్తారు (అందువల్ల, ఒక ఫార్ములాను సృష్టించాల్సి ఉంది, తద్వారా తరువాత విలువలను ఆర్డునో IDE స్కెచ్‌లలో లెక్కించవచ్చు లేదా షరతులు చేయవచ్చు. ) ...

ఒకటి మరియు మరొకటి యొక్క ఈ లక్షణాలు కొన్నింటిని కలిగి ఉంటాయి ప్రయోజనాలు మరియు అప్రయోజనాలు, దాదాపు అన్నిటిలో సాధారణం. ఉదాహరణకు, డిజిటల్ వాటిని చౌకగా, వేగంగా, అభివృద్ధి చేయడానికి సులువుగా ఉంటాయి, సమాచారాన్ని మరింత సులభంగా నిల్వ చేయవచ్చు, వాటికి ఎక్కువ ఖచ్చితత్వం ఉంటుంది, వాటిని ప్రోగ్రామ్ చేయవచ్చు, అవి శబ్దం యొక్క ప్రభావాలకు హాని కలిగించవు. కానీ అనలాగ్‌లతో మీరు మరింత క్లిష్టమైన సంకేతాలతో పనిచేయగలరన్నది కూడా నిజం.

por ejemplo, డిజిటల్ రకం హాల్ ఎఫెక్ట్ సెన్సార్ సమీప అయస్కాంత క్షేత్రం యొక్క ఉనికిని లేదా లేకపోవడాన్ని మాత్రమే గుర్తించగలదు. బదులుగా, ఒక అనలాగ్ హాల్ ఎఫెక్ట్ సెన్సార్ అలా చేయగలదు మరియు అయస్కాంత క్షేత్రం యొక్క సాంద్రతను దాని ఉత్పత్తి వద్ద ఉత్పత్తి చేసే అనలాగ్ సిగ్నల్‌కు కృతజ్ఞతలు తెలుపుతుంది. ఎక్కువ లేదా తక్కువ వోల్టేజ్ యొక్క సిగ్నల్ను ఎలా బాగా అర్థం చేసుకోవాలో తెలుసుకోవడం, మీరు ఆ పరిమాణాన్ని సులభంగా తెలుసుకోవచ్చు. ఉష్ణోగ్రత, సమయం, పీడనం, దూరం, ధ్వని మొదలైన అనలాగ్ వ్యవస్థతో మీరు పరిమాణాత్మకంగా కొలవగల ప్రకృతి పరిమాణంలో మీకు ఉన్న ఇతర ఉదాహరణలు.

అనలాగ్ vs డిజిటల్ సిగ్నల్

చెప్పబడుతున్నది, a అనలాగ్ సిగ్నల్ ఇది వోల్టేజ్ లేదా విద్యుత్ ప్రవాహం అవుతుంది, ఇది సమయం మరియు నిరంతరం మారుతుంది. గ్రాఫ్ చేస్తే, అనలాగ్ సిగ్నల్ సింగిల్ ఫ్రీక్వెన్సీ సైన్ వేవ్ అవుతుంది.

కోసం డిజిటల్ సిగ్నల్, ఒక వోల్టేజ్, ఇది సమయానికి సంబంధించి దశలవారీగా మారుతుంది. అంటే, ఇది గ్రాఫ్‌లో ప్రాతినిధ్యం వహిస్తే, ఇది నిరంతరం మారని స్టెప్ సిగ్నల్ అవుతుంది, కానీ దశల్లో మార్పులు లేదా వివిక్త ఇంక్రిమెంట్.

అనలాగ్ సిగ్నల్ నుండి డిజిటల్ ఒకటి లేదా దీనికి విరుద్ధంగా వెళ్ళడానికి సర్క్యూట్లు ఉన్నాయని మీరు తెలుసుకోవాలి. ఇవి కన్వర్టర్లు వాటిని DAC (డిజిటల్-టు-అనలాగ్ కన్వర్టర్) మరియు ADC (అనలాగ్-టు-డిజిటల్ కన్వర్టర్) అని పిలుస్తారు. ఈ రోజు మనం టీవీ, కంప్యూటర్లు మొదలైన అనేక పరికరాల్లో ఇవి చాలా సాధారణం. వారితో మీరు ఈ పరికరాలు ఉపయోగించే డిజిటల్ సిగ్నల్‌లను ఎలక్ట్రానిక్ స్థాయికి మార్చవచ్చు, ఇతర పెరిఫెరల్స్ లేదా అనలాగ్‌లో పనిచేసే భాగాలతో పని చేయవచ్చు.

por ejemplo, సౌండ్ కార్డుతో పనిచేసే అనలాగ్ సిగ్నల్‌లతో కూడిన స్పీకర్ లేదా మైక్రోఫోన్ లేదా అనలాగ్ మానిటర్ పోర్ట్‌ల కోసం ప్రసిద్ధ రామ్‌డాక్ చిప్ ఉన్న డిజిటల్ గ్రాఫిక్స్ కార్డులు ... ఆర్డునోలో ఈ రకమైన కన్వర్టర్లు బహుళ ప్రాజెక్టులకు కూడా ఉపయోగించబడతాయి, ఎందుకంటే మనం చూస్తాము ...

పిడబ్ల్యుఎం అంటే ఏమిటి?

గ్రాఫిక్ డ్యూటీ చక్రం

అయితే PWM (పల్స్-వెడల్పు మాడ్యులేషన్), లేదా పల్స్ వెడల్పు మాడ్యులేషన్, డిజిటల్ బేస్ ఉంది, దాని సిగ్నల్ ఆకారం కొంతవరకు "చదరపు" అనలాగ్ సిగ్నల్‌ను పోలి ఉంటుంది. నేను ఇంతకుముందు వ్యాఖ్యానించినట్లుగా అనలాగ్ వ్యవస్థను అనుకరించడానికి సిగ్నల్‌ను మార్చడానికి డిజిటల్ పప్పుల ద్వారా ఇది అనుమతిస్తుంది. వాస్తవానికి, మీరు పేరును పరిశీలిస్తే, డిజిటల్ పప్పుల వెడల్పు ద్వారా ఇది ఏమి చేస్తుందో మీకు ఇప్పటికే ఆధారాలు ఇస్తుంది.

ఇది ప్రయోజనకరంగా ఉంటుంది Arduino మీ ప్రాజెక్టులకు మీరు జోడించగల అనేక ఆటోమాటిజమ్స్ లేదా ఎలక్ట్రానిక్ భాగాలు ఉన్నందున నిజమైన అనలాగ్ సిగ్నల్‌ను అందించగల సామర్థ్యం లేదు, కానీ వారు పనిచేయడానికి ఈ PWM ని ఉపయోగిస్తారు. అలాగే వారు వివేచన లేని అనలాగ్ సిగ్నల్‌ను ఉపయోగించలేరు, అనగా డిజిటల్ మాదిరిగానే ఉండేలా వోల్టేజ్ జంప్‌లకు వెళుతుంది. వారు చేయగలిగేది ఈ విచిత్రమైన సిగ్నల్‌ను రూపొందించడానికి డిజిటల్ అవుట్పుట్ -విసిసి లేదా డిజిటల్ రకానికి చెందిన విసిసిని ఉపయోగించడం ...

అందువల్ల, పిడబ్ల్యుఎమ్ ఒక రకమైన "ట్రిక్", దీనితో ఆర్డునో మరియు ఇతర వ్యవస్థలు ఈ రకమైన సంకేతాలతో పరస్పరం పనిచేయగలవు అవి చాలా అనలాగ్ కాదు లేదా సాంప్రదాయ డిజిటల్ కాదు. ఇది సాధ్యమయ్యేలా, వారు ఎప్పుడైనా డిజిటల్ ఆసక్తిని నిర్దిష్ట సమయం లేదా ఆఫ్ కోసం చురుకుగా ఉంచుతారు. ఇది డిజిటల్ గడియారం లేదా బైనరీ కోడ్ సిగ్నల్ నుండి చాలా దూరంగా ఉంటుంది, దీని పప్పులు ఒకే వెడల్పు కలిగి ఉంటాయి.

Arduino తో మీ ప్రాజెక్ట్‌లలో మీరు ఈ రకమైన PWM సిగ్నల్‌లను తనిఖీ చేయవచ్చు, దీనిలో పల్స్ ట్రిగ్గర్‌ల యొక్క స్థిరమైన పౌన frequency పున్యం కాలక్రమేణా నిర్వహించబడుతుంది, కానీ ఈ పప్పుల వెడల్పు వైవిధ్యంగా ఉంటుంది. వాస్తవానికి, చక్రం మొత్తానికి సంబంధించి సిగ్నల్ అధికంగా ఉంచినప్పుడు దీనిని డ్యూటీ సైకిల్ అంటారు. కాబట్టి, డ్యూటీ సైకిల్% లో ఇవ్వబడింది.

ఒక PWM లో మీరు అనలాగ్ సిగ్నల్‌లో, అనేక వోల్టేజ్ విలువల మధ్య పనిచేయరని గుర్తుంచుకోండి మరియు అది వాటి మధ్య హెచ్చుతగ్గులకు లోనవుతుంది. పిడబ్ల్యుఎం విషయంలో ఇది డిజిటల్ శైలిలో చదరపు సిగ్నల్ మరియు దీని గరిష్ట విలువ Vcc. ఉదాహరణకు, మీరు 3V విద్యుత్ సరఫరాతో పనిచేస్తే, మీరు 3V లేదా 0V పప్పులను ఇవ్వవచ్చు, కాని 1V లేదా నిజమైన అనలాగ్‌లో సంభవించే ఇతర ఇంటర్మీడియట్ విలువ కాదు. ఆ సందర్భంలో తేడా ఏమిటంటే పల్స్ యొక్క వెడల్పు, ఇది మేము అధిక VCC విలువ వద్ద 30% లేదా ఎక్కువ శక్తిని ఇవ్వడానికి 60% ఉంచవచ్చు.

అయితే జాగ్రత్తగా ఉండండి, ఎందుకంటే ఒక పరికరం Vcc పరిమితిని సమర్థిస్తే మరియు PWM తో మించి ఉంటే, అది దెబ్బతింటుంది. కాబట్టి తయారీదారులు అందించే డేటాషీట్ల విలువలను గౌరవించడం ఎల్లప్పుడూ అవసరం. అలాగే, DC మోటార్లు వంటి కొన్ని పరికరాల్లో, రిలేలు, విద్యుదయస్కాంతాలు మొదలైనవి, డ్యూటీ సైకిల్ తర్వాత వోల్టేజ్ ఉపసంహరణ అంటే ప్రేరక లోడ్లు దెబ్బతింటాయని అర్థం. అందుకే రక్షణలు సకాలంలో.

ఆర్డునోపై పిడబ్ల్యుఎం

ఆర్డునో ఐ 2 సి బస్సు

ఇది ఎలా పనిచేస్తుందో ఇప్పుడు మీకు తెలుసు, ఆర్డునో ప్రపంచంలో PWM యొక్క నిర్దిష్ట కేసును చూద్దాం ...

పిడబ్ల్యుఎం: ఆర్డునోపై పిన్‌అవుట్

Arduino బోర్డులలో మీరు హార్డ్‌వేర్ PWM ను అమలు చేసే అనేక పిన్‌లను కనుగొనవచ్చు. మీరు వాటిని కలిగి ఉన్నందున మీరు వాటిని పిసిబిలోనే గుర్తించవచ్చు గుర్తు ~ (చిన్న తల) పిన్ నంబరింగ్‌తో పాటు. ఇది ఆర్డునో కోడ్‌లోని సాఫ్ట్‌వేర్ ద్వారా కూడా చేయవచ్చు, కాని ఇది మైక్రోకంట్రోలర్‌ను పనితో ఓవర్‌లోడ్ చేస్తుంది, ఇది స్థానికంగా మరియు హార్డ్‌వేర్ ద్వారా చేయగలిగినప్పుడు అసంబద్ధమైనది ...

  • Arduino UNO, మినీ మరియు నానో- మీకు పిన్స్ 6, 8, 3, 5, 6, మరియు 9 లలో 10 11-బిట్ పిడబ్ల్యుఎం అవుట్‌పుట్‌లు ఉన్నాయి, అవి ఆ సంఖ్యకు ముందు ఉంటాయి.
  • ఆర్డునో మెగా- ఈ అత్యంత శక్తివంతమైన ఆర్డునో బోర్డులో మీకు 15 8-బిట్ పిడబ్ల్యుఎం అవుట్‌పుట్‌లు ఉన్నాయి. అవి పిన్స్ 2 నుండి 13 వరకు మరియు 44 నుండి 46 వరకు ఉన్నాయి.
  • ఆర్డునో డ్యూ: ఈ సందర్భంలో 13 8-బిట్ PWM అవుట్‌పుట్‌లు ఉన్నాయి. అవి పిన్స్ 2 నుండి 13 వరకు ఉన్నాయి, ఇంకా రెండు ఇతర అనలాగ్ అవుట్‌పుట్‌లు 12-బిట్ రిజల్యూషన్‌తో DAC చేత విడదీయబడ్డాయి.

ఈ రకమైన పిడబ్ల్యుఎం అవుట్‌పుట్‌లలో మీరు 8-బిట్ లేదా 12-బిట్ రిజల్యూషన్ మొదలైన వాటి గురించి మాట్లాడేటప్పుడు, మీరు మీ వద్ద ఉన్న యుక్తి కోసం గదిని సూచిస్తున్నారు. తో 8 బిట్స్ 256 స్థాయిలను కలిగి ఉంటాయి వీటి మధ్య మీరు మారవచ్చు మరియు 12 బిట్స్ 4096 స్థాయిలకు పెరుగుతాయి.

టైమర్‌లతో నియంత్రణ

హార్డ్వేర్ PWM నియంత్రణ కోసం, Arduino టైమర్‌లను ఉపయోగిస్తుంది దానికోసం. ప్రతి ప్రస్తుత టైమర్ 2 లేదా 3 పిడబ్ల్యుఎం అవుట్‌పుట్‌లను అందించగలదు. ప్రతి అవుట్పుట్ కోసం ఒక పోలిక రిజిస్టర్ ఈ వ్యవస్థను పూర్తి చేస్తుంది, తద్వారా సమయం రిజిస్టర్ విలువకు చేరుకున్నప్పుడు, ఆ డ్యూటీ సైకిళ్లను ఆపడానికి అవుట్పుట్ యొక్క స్థితి లేదా విలువ మార్చబడుతుంది. ఒకే టైమర్ చేత నియంత్రించబడే రెండు అవుట్‌పుట్‌లు ఉన్నప్పటికీ, రెండూ వేర్వేరు డ్యూటీ సైకిల్‌లను కలిగి ఉంటాయి, అయినప్పటికీ అవి ఒకే ఫ్రీక్వెన్సీని పంచుకుంటాయి.

ప్రతి PWM పిన్‌తో అనుబంధించబడిన టైమర్‌ల విషయంలో, ఇది మారుతుంది Arduino బోర్డు రకాన్ని బట్టి మీరు కలిగి:

  • Arduino UNO, మినీ మరియు నానో:
    • టైమర్ 0 - 5 మరియు 6
    • టైమర్ 1 - 9 మరియు 10
    • టైమర్ 2 - 3 మరియు 11
  • ఆర్డునో మెగా:
    • టైమర్ 0 - 4 మరియు 13
    • టైమర్ 1 - 11 మరియు 12
    • టైమర్ 2 - 9 మరియు 10
    • టైమర్ 3 - 2, 3 మరియు 5
    • టైమర్ 4 - 6, 7 మరియు 8
    • టైమర్ 5 - 44, 45 మరియు 46

ప్రీస్కేల్డ్ రిజిస్టర్ సమయాన్ని పూర్ణాంకం ద్వారా విభజిస్తుంది మరియు టైమర్ మిగిలిన ప్రతి PWM అవుట్‌పుట్‌లను నియంత్రించడానికి చేస్తుంది. రిజిస్ట్రీ విలువను సవరించడం ఫ్రీక్వెన్సీని మార్చగలదు. ది ఫ్రీక్వెన్సీ టైమర్ మరియు ప్లేట్‌ను బట్టి అవి కూడా భిన్నంగా ఉంటాయి:

  • Arduino UNO, మినీ మరియు నానో:
    • టైమర్ 0: 1, 8, 64, 256 మరియు 1024 యొక్క ప్రీస్కేలింగ్‌ను అనుమతిస్తుంది. ఫ్రీక్వెన్సీ 62.5 ఖ్జ్.
    • టైమర్ 1: 1, 8, 64, 256 మరియు 1024 యొక్క ప్రీసెట్లతో. 31.25 Khz పౌన frequency పున్యంతో.
    • టైమర్ 2: టైమర్ 1 కు సమానం, ఇది మునుపటి వాటికి అదనంగా 32 మరియు 128 యొక్క ప్రిస్కలింగ్‌ను మాత్రమే జతచేస్తుంది.
  • ఆర్డునో మెగా:
    • టైమర్ 0, 1, 2: పైన చెప్పినట్లే.
    • టైమర్ 3, 4, మరియు 5: 31.25 Khz పౌన frequency పున్యంతో మరియు 1, 8, 64, 256 మరియు 1024 యొక్క ప్రీస్కేల్డ్.

అననుకూలతలు మరియు విభేదాలు

టైమర్ అవుట్‌పుట్‌లతో అనుబంధించబడినది ఆ ఫంక్షన్ కోసం మాత్రమే కాదు, ఇతరులు కూడా ఉపయోగిస్తారు. అందువల్ల, అవి మరొక ఫంక్షన్ ద్వారా ఉపయోగించబడుతుంటే, మీరు ఒకటి లేదా మరొకటి మధ్య ఎంచుకోవాలి, మీరు రెండింటినీ ఒకే సమయంలో ఉపయోగించలేరు. ఉదాహరణకు, ఇవి మీ ప్రాజెక్టులలో మీరు కనుగొనగలిగే కొన్ని అననుకూలతలు:

  • సర్వో లైబ్రరీ: మీరు సర్వో మోటార్లు ఉపయోగించినప్పుడు, ఇది టైమర్‌లను తీవ్రంగా ఉపయోగించుకుంటుంది, కాబట్టి ఇది విభేదాలను సృష్టించగలదు. UNO, నానో మరియు మినీ కోసం ప్రత్యేకంగా టైమర్ 1 ను ఉపయోగించండి, అంటే, మీరు ఆ లైబ్రరీతో స్కెచ్ ఉపయోగిస్తున్నప్పుడు పిన్స్ 9 మరియు 10 లను ఉపయోగించలేరు. మెగాలో ఇది సర్వోల సంఖ్యపై ఆధారపడి ఉంటుంది ...
  • SPI: ఆర్డునో బోర్డులో SPI కమ్యూనికేషన్ ఉపయోగించబడితే, MOSI ఫంక్షన్ కోసం పిన్ 11 ఉపయోగించబడుతోంది. అందుకే ఆ పిడబ్ల్యుఎం పిన్ను ఉపయోగించలేము.
  • టోన్: ఈ ఫంక్షన్ పనిచేయడానికి టైమర్ 2 ని ఉపయోగిస్తుంది. కనుక ఇది ఉపయోగించినట్లయితే, మీరు పిన్స్ 3 మరియు 11 (లేదా మెగా కోసం 9 మరియు 10) నిరుపయోగంగా చేస్తున్నారు.

Arduino తో హ్యాండ్-ఆన్ పరీక్ష

LED తో Arduino PWM స్కీమాటిక్

ఆర్డునోలో పిడబ్ల్యుఎం ఎలా పనిచేస్తుందో మీరు చూడాలనుకుంటే, మీరు చేయగలిగే గొప్పదనం ఏమిటంటే కొలత లీడ్స్‌ను కనెక్ట్ చేయడం వోల్టమీటర్ లేదా మల్టీమీటర్ (వోల్టేజ్ కొలిచే పనిలో) మీరు ఉపయోగించడానికి ఎంచుకున్న PWM పిన్ మరియు Arduino బోర్డు యొక్క గ్రౌండ్ పిన్ లేదా GND మధ్య. ఈ విధంగా, కొలిచే పరికరం యొక్క తెరపై మీరు ఈ PWM ట్రిక్‌కు డిజిటల్ కృతజ్ఞతలు చెప్పే అవుట్‌పుట్‌తో వోల్టేజ్ ఎలా మారుతుందో చూడగలరు.

DC మోటారుతో లేదా మీకు కావలసిన ఇతర మూలకాలతో కాంతి యొక్క తీవ్రత ఎలా మారుతుందో చూడటానికి మీరు వోల్టమీటర్ / మల్టీమీటర్‌ను LED తో భర్తీ చేయవచ్చు. రేఖాచిత్రంలో ఫ్రిట్జింగ్‌తో ఎల్‌ఈడీతో ఎక్కువ లేకుండా సరళీకృతం చేశాను, అయితే ఇది మల్టీమీటర్ యొక్క చిట్కాలను కూడా సూచిస్తుందని మీకు తెలుసు ...

మీరు LED ని ఉపయోగిస్తే, కాథోడ్ మరియు GND వద్ద ఉన్న ప్రతిఘటనను గుర్తుంచుకోండి.

పారా సోర్స్ కోడ్ ప్రతిదీ పని చేయడానికి Arduino బోర్డు మైక్రోకంట్రోలర్‌ను నియంత్రించడానికి, మీరు దీన్ని Arduino IDE లోకి చేర్చాలి (ఈ సందర్భంలో నేను PWM పిన్ 6 ని ఉపయోగించాను Arduino UNO):

const int analogOutPin = 6;
byte outputValue = 0;  
 
void setup()
{  
   Serial.begin(9600);        
   pinMode(ledPIN , OUTPUT); 
 
   bitSet(DDRB, 5);       // LED o voltímetro
   bitSet(PCICR, PCIE0);       
   bitSet(PCMSK0, PCINT3);     
}
 
void loop() 
{
   if (Serial.available()>0)  
   {
      if(outputValue >= '0' && outputValue <= '9')
      {
         outputValue = Serial.read();   // Leemos la opción
         outputValue -= '0';      // Restamos '0' para convertir a un número
         outputValue *= 25;      // Multiplicamos x25 para pasar a una escala 0 a 250
         analogWrite(ledPIN , outputValue);
      }
   }
}  
 
ISR(PCINT0_vect)
{
   if(bitRead(PINB, 3))
   { 
      bitSet(PORTB, 5);   // LED on 
   }
   else
   { 
      bitClear(PORTB, 5); // LED off  
   } 
} 
విలువలతో ఆడుకోవాలని నేను మీకు సలహా ఇస్తున్నాను కాంతి లేదా వోల్టమీటర్ పై ఫలితాలు. ప్రోగ్రామ్ 0 నుండి 9 వరకు విలువలను అందుకోగలదు కాబట్టి ప్రతిదీ ఎలా మారుతుందో మీరు చూడవచ్చు. మరింత సమాచారం కోసం, నేను మీకు సలహా ఇస్తున్నాను arduino కోర్సు మాకు ఉచిత డౌన్‌లోడ్ ఉంది ...

ఒక వ్యాఖ్య, మీదే

మీ వ్యాఖ్యను ఇవ్వండి

మీ ఇమెయిల్ చిరునామా ప్రచురితమైన కాదు. లు గుర్తించబడతాయి గుర్తించబడతాయి *

*

*

  1. డేటాకు బాధ్యత: మిగ్యుల్ ఏంజెల్ గాటన్
  2. డేటా యొక్క ఉద్దేశ్యం: కంట్రోల్ స్పామ్, వ్యాఖ్య నిర్వహణ.
  3. చట్టబద్ధత: మీ సమ్మతి
  4. డేటా యొక్క కమ్యూనికేషన్: డేటా చట్టపరమైన బాధ్యత ద్వారా తప్ప మూడవ పార్టీలకు తెలియజేయబడదు.
  5. డేటా నిల్వ: ఆక్సెంటస్ నెట్‌వర్క్స్ (EU) హోస్ట్ చేసిన డేటాబేస్
  6. హక్కులు: ఎప్పుడైనా మీరు మీ సమాచారాన్ని పరిమితం చేయవచ్చు, తిరిగి పొందవచ్చు మరియు తొలగించవచ్చు.

  1.   జోస్ అతను చెప్పాడు

    హలో మంచి రోజు. క్రొత్తదానికి ఈ వివరణకు కేటాయించిన సమయానికి మొదట నేను మీకు ధన్యవాదాలు చెప్పాలనుకుంటున్నాను.
    నేను మిమ్మల్ని ప్రశ్న చేయాలనుకుంటున్నాను. నేను అర్గునో మెగా కోసం ప్రోటీస్ 8 ఎమెల్యూటరుపై కోడ్‌ను అమలు చేయడానికి ప్రయత్నిస్తున్నాను. నేను వోల్టమీటర్‌ను పిన్ 6 కి కనెక్ట్ చేస్తాను, ప్రోటీస్ ఒక సీరియల్ పోర్ట్‌కు అనుసంధానించబడి ఉంది, కానీ ఎలా లేదా ఏమి మారాలో నాకు తెలియదు కాబట్టి వేర్వేరు వోల్టేజీలు అవుట్‌పుట్ అవుతాయి. కోడ్‌ను కంపైల్ చేయడానికి నేను చిన్న సర్దుబాట్లు చేయాల్సి వచ్చింది. మీ సహాయానికి చాలా ధన్యవాదాలు